diff --git a/.gitignore b/.gitignore index a026d3e6e..c266e8cfb 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,5 @@ injected-client/src/main/java client/src/main/resources/injected-client.jar cache/scripts cache/cache -wix311 \ No newline at end of file +wix311 +/packet-deob/ diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSBuffer.java b/api-rs/src/main/java/net/runelite/rs/api/RSBuffer.java index 67df6bd26..a0f75ae6d 100644 --- a/api-rs/src/main/java/net/runelite/rs/api/RSBuffer.java +++ b/api-rs/src/main/java/net/runelite/rs/api/RSBuffer.java @@ -8,151 +8,196 @@ public interface RSBuffer extends Buffer, RSNode @Import("array") byte[] getPayload(); + @Import("offset") int getOffset(); @Import("offset") void setOffset(int offset); -@Import("readUnsignedByteAdd") -@Override -int readUnsignedByteAdd$api(); - -@Import("readUnsignedByteNeg") -@Override -int readUnsignedByteNeg$api(); - - - -@Import("method2432") -@Override -byte readByteAdd(); - -@Import("method2396") -@Override -byte readByteNeg(); - -@Import("readUnsignedByteSub") -@Override -int readUnsignedByteSub$api(); - -@Import("readUnsignedByte") -@Override -int readUnsignedByte$api(); - -@Import("readByte") -@Override -byte readByte$api(); - -@Import("readUnsignedShort") -@Override -int readUnsignedShort$api(); - -@Import("readShort") -@Override -int readShort$api(); @Import("readStringCp1252NullTerminated") -@Override String readString(); -@Import("readShortSmart") -@Override -int readShortSmart$api(); - -@Import("readUShortSmart") -@Override -int readUShortSmart$api(); - -@Import("writeByte") -@Override -void writeByte$api(int i); - -@Import("writeInt") -@Override -void writeInt$api(int i); - -@Import("writeIntLE") -@Override -void writeIntLE$api(int i); - -@Import("writeIntIME") -@Override -void writeIntIME$api(int i); - -@Import("writeIntME") -@Override -void writeIntME$api(int i); - -@Import("writeShortLE") -@Override -void writeShortLE$api(int i); - -@Import("writeShortAdd") -@Override -void writeShortAdd$api(int i); - -@Import("writeShortAddLE") -@Override -void writeShortAddLE$api(int i); - -@Import("readUnsignedShortLE") -@Override -int readUnsignedShortLE$api(); - -@Import("readUnsignedShortAdd") -@Override -int readUnsignedShortAdd$api(); - -@Import("readUnsignedShortAddLE") -@Override -int readUnsignedShortAddLE$api(); - -@Import("readSignedShortAddLE") -@Override -int readSignedShortAddLE$api(); - -@Import("readInt") -@Override -int readInt$api(); - -@Import("readIntLE") -@Override -int readIntLE$api(); - -@Import("readUnsignedByteS") -@Override -int readIntIME(); - -@Import("method2447") -@Override -int readIntME(); - -@Import("writeLong") -@Override -void writeLong$api(long l); - -@Import("writeLongMedium") -@Override -void writeLongMedium$api(long l); - -@Import("writeShort") -@Override -void writeShort$api(int i); - -@Import("writeByteAdd") -@Override -void writeByteAdd$api(int i); - -@Import("writeByteSub") -@Override -void writeByteSub$api(int i); - -@Import("writeByteNeg") -@Override -void writeByteNeg$api(int i); -@Import("writeStringCp1252NullTerminated") -@Override -void writeString(String s); -} \ No newline at end of file + @Import("writeByte") + @Override + void writeByte$api(int p0); + @Import("writeShort") + @Override + void writeShort$api(int p0); + @Import("writeMedium") + @Override + void writeMedium$api(int p0); + @Import("writeInt") + @Override + void writeInt$api(int p0); + @Import("writeLongMedium") + @Override + void writeLongMedium$api(long p0); + @Import("writeLong") + @Override + void writeLong$api(long p0); + @Import("writeBoolean") + @Override + void writeBoolean$api(boolean p0); + @Import("writeStringCp1252NullTerminated") + @Override + void writeStringCp1252NullTerminated$api(String p0); + @Import("writeStringCp1252NullCircumfixed") + @Override + void writeStringCp1252NullCircumfixed$api(String p0); + @Import("writeCESU8") + @Override + void writeCESU8$api(CharSequence p0); + @Import("writeBytes") + @Override + void writeBytes$api(byte[] p0, int p1, int p2); + @Import("writeBuffer") + @Override + void writeBuffer$api(Buffer p0); + @Import("writeLengthInt") + @Override + void writeLengthInt$api(int p0); + @Import("writeLengthShort") + @Override + void writeLengthShort$api(int p0); + @Import("writeLengthByte") + @Override + void writeLengthByte$api(int p0); + @Import("writeSmartByteShort") + @Override + void writeSmartByteShort$api(int p0); + @Import("writeVarInt") + @Override + void writeVarInt$api(int p0); + @Import("readUnsignedByte") + @Override + int readUnsignedByte$api(); + @Import("readByte") + @Override + byte readByte$api(); + @Import("readUnsignedShort") + @Override + int readUnsignedShort$api(); + @Import("readShort") + @Override + int readShort$api(); + @Import("readMedium") + @Override + int readMedium$api(); + @Import("readInt") + @Override + int readInt$api(); + @Import("readLong") + @Override + long readLong$api(); + @Import("readBoolean") + @Override + boolean readBoolean$api(); + @Import("readStringCp1252NullTerminatedOrNull") + @Override + String readStringCp1252NullTerminatedOrNull$api(); + @Import("readStringCp1252NullCircumfixed") + @Override + String readStringCp1252NullCircumfixed$api(); + @Import("readCESUB") + @Override + String readCESUB$api(); + @Import("readBytes") + @Override + void readBytes$api(byte[] p0, int p1, int p2); + @Import("readShortSmart") + @Override + int readShortSmart$api(); + @Import("readUShortSmart") + @Override + int readUShortSmart$api(); + @Import("readShortSmartSub") + @Override + int readShortSmartSub$api(); + @Import("readIncrSmallSmart") + @Override + int readIncrSmallSmart$api(); + @Import("readLargeSmart") + @Override + int readLargeSmart$api(); + @Import("readNullableLargeSmart") + @Override + int readNullableLargeSmart$api(); + @Import("readVarInt") + @Override + int readVarInt$api(); + @Import("writeCrc") + @Override + int writeCrc$api(int p0); + @Import("writeByteAdd") + @Override + void writeByteAdd$api(int p0); + @Import("writeByteNeg") + @Override + void writeByteNeg$api(int p0); + @Import("writeByteSub") + @Override + void writeByteSub$api(int p0); + @Import("readUnsignedByteAdd") + @Override + int readUnsignedByteAdd$api(); + @Import("readUnsignedByteSub") + @Override + int readUnsignedByteSub$api(); + @Import("readUnsignedByteNeg") + @Override + int readUnsignedByteNeg$api(); + @Import("readByteAdd") + @Override + byte readByteAdd$api(); + @Import("readByteNeg") + @Override + byte readByteNeg$api(); + @Import("readByteSub") + @Override + byte readByteSub$api(); + @Import("writeShortAdd") + @Override + void writeShortAdd$api(int p0); + @Import("writeIntME") + @Override + void writeIntME$api(int p0); + @Import("writeShortLE") + @Override + void writeShortLE$api(int p0); + @Import("readUnsignedShortLE") + @Override + int readUnsignedShortLE$api(); + @Import("readUnsignedShortAdd") + @Override + int readUnsignedShortAdd$api(); + @Import("readUnsignedShortAddLE") + @Override + int readUnsignedShortAddLE$api(); + @Import("readShortLE") + @Override + int readShortLE$api(); + @Import("readShortAdd") + @Override + int readShortAdd$api(); + @Import("readShortAddLE") + @Override + int readShortAddLE$api(); + @Import("writeIntIME") + @Override + void writeIntIME$api(int p0); + @Import("writeIntLE") + @Override + void writeIntLE$api(int p0); + @Import("readIntME") + @Override + int readIntME$api(); + @Import("readUnsignedIntIME") + @Override + int readUnsignedIntIME$api(); + @Import("readUnsignedIntME") + @Override + int readUnsignedIntME$api(); +} diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSClient.java b/api-rs/src/main/java/net/runelite/rs/api/RSClient.java index fa05809ca..9f2b7336f 100644 --- a/api-rs/src/main/java/net/runelite/rs/api/RSClient.java +++ b/api-rs/src/main/java/net/runelite/rs/api/RSClient.java @@ -26,9 +26,11 @@ import java.math.BigInteger; import java.util.ArrayList; +import java.util.List; import java.util.Map; import net.runelite.api.*; +import net.runelite.api.mixins.Inject; import net.runelite.api.packets.ClientPacket; import net.runelite.api.packets.IsaacCipher; import net.runelite.api.clan.ClanRank; @@ -197,8 +199,7 @@ public interface RSClient extends RSGameEngine, Client @Override int getDragTime(); - @Import("Widget_interfaceComponents") - RSWidget[][] getWidgets(); + /** * Gets an array of widgets that correspond to the passed group ID. @@ -854,7 +855,7 @@ public interface RSClient extends RSGameEngine, Client @Import("compass") void setCompass(SpritePixels spritePixels); - @Import("Widget_cachedSprites") + //@Import("Widget_cachedSprites") @Override RSEvictingDualNodeHashTable getWidgetSpriteCache(); @@ -1502,15 +1503,15 @@ public interface RSClient extends RSGameEngine, Client @Import("Widget_cachedModels") RSEvictingDualNodeHashTable getModelsCache(); - +/* @Import("Widget_cachedFonts") - RSEvictingDualNodeHashTable getFontsCache(); + RSEvictingDualNodeHashTable getFontsCache();*/ @Import("Widget_cachedSpriteMasks") RSEvictingDualNodeHashTable getSpriteMasksCache(); - @Import("WorldMapElement_cachedSprites") - RSEvictingDualNodeHashTable getSpritesCache(); + //@Import("WorldMapElement_cachedSprites") + //RSEvictingDualNodeHashTable getSpritesCache(); @Construct RSIterableNodeHashTable createIterableNodeHashTable(int size); @@ -1531,6 +1532,10 @@ public interface RSClient extends RSGameEngine, Client Unethical */ +/* + @Import("runScriptLogic") + void runScriptLogic(RSScriptEvent ev, RSScript s, int ex, int var2);*/ + @Import("Login_response0") String getLoginResponse0(); @@ -1644,7 +1649,8 @@ public interface RSClient extends RSGameEngine, Client @Import("widgetDefaultMenuAction") void invokeWidgetAction(int identifier, int param1, int param0, int itemId, String target); - + @Import("widgetDefinition") + RSWidgetDefinition getWidgetDefinition(); // Kris changes @Override @@ -1724,4 +1730,42 @@ public interface RSClient extends RSGameEngine, Client @Import("musicSongs") ArrayList getMusicSongs(); + + @Import("openInterface") + WidgetNode openRSInterface(int componentId, int interfaceId, int modalMode); + @Import("closeInterface") + void closeRSInterface(WidgetNode interfaceNode, boolean unload); + @Construct + RSInterfaceParent newInterfaceParent(); + @Import("runComponentCloseListeners") + void runComponentCloseListeners(Widget[] var0, int var1); + + @Import("e1") + RSEvictingDualNodeHashTable getE1(); + @Import("e2") + RSEvictingDualNodeHashTable getE2(); + @Import("e3") + RSEvictingDualNodeHashTable getE3(); + @Import("e4") + RSEvictingDualNodeHashTable getE4(); + @Import("e5") + RSEvictingDualNodeHashTable getE5(); + @Import("e6") + RSEvictingDualNodeHashTable getE6(); + @Import("e7") + RSEvictingDualNodeHashTable getE7(); + @Import("e8") + RSEvictingDualNodeHashTable getE8(); + @Import("archive4") + RSEvictingDualNodeHashTable getArchive4(); + @Import("archive5") + RSEvictingDualNodeHashTable getArchive5(); + @Import("archive7") + RSEvictingDualNodeHashTable getArchive7(); + @Import("archive11") + RSEvictingDualNodeHashTable getArchive11(); + @Import("getDbTable") + RSDbTable getDbTable(int var0); + + } diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSDbTable.java b/api-rs/src/main/java/net/runelite/rs/api/RSDbTable.java new file mode 100644 index 000000000..dfe8df482 --- /dev/null +++ b/api-rs/src/main/java/net/runelite/rs/api/RSDbTable.java @@ -0,0 +1,10 @@ +package net.runelite.rs.api; + +import java.util.List; +import net.runelite.mapping.Import; + +public interface RSDbTable +{ + @Import("columns") + List getColumns(); +} diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSInterfaceParent.java b/api-rs/src/main/java/net/runelite/rs/api/RSInterfaceParent.java index 76d7909db..e39c38153 100644 --- a/api-rs/src/main/java/net/runelite/rs/api/RSInterfaceParent.java +++ b/api-rs/src/main/java/net/runelite/rs/api/RSInterfaceParent.java @@ -9,7 +9,13 @@ public interface RSInterfaceParent extends RSNode, WidgetNode @Override int getId(); + @Import("group") + void setId(int id); + @Import("type") @Override int getModalMode(); + + @Import("type") + void setModalMode(int modalMode); } diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSNodeHashTable.java b/api-rs/src/main/java/net/runelite/rs/api/RSNodeHashTable.java index e93b47853..0e05ea3bc 100644 --- a/api-rs/src/main/java/net/runelite/rs/api/RSNodeHashTable.java +++ b/api-rs/src/main/java/net/runelite/rs/api/RSNodeHashTable.java @@ -14,4 +14,6 @@ public interface RSNodeHashTable extends HashTable @Import("buckets") RSNode[] getBuckets(); + @Import("put") + void put(RSNode var1, long var2); } diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSWidget.java b/api-rs/src/main/java/net/runelite/rs/api/RSWidget.java index 9ee74abca..06d6903d2 100644 --- a/api-rs/src/main/java/net/runelite/rs/api/RSWidget.java +++ b/api-rs/src/main/java/net/runelite/rs/api/RSWidget.java @@ -488,8 +488,7 @@ public interface RSWidget extends Widget RSWidget setHeightMode(int heightMode); @Import("getFont") - @Override - RSFont getFont(); + RSFont getRSFont(RSWidgetDefinition var1); @Import("fill") @Override @@ -534,7 +533,7 @@ public interface RSWidget extends Widget Object[] getOnInvTransmitListener(); @Import("getSprite") - RSSpritePixels getSprite(boolean b, RSUrlRequester urlRequester); + RSSpritePixels getSprite(RSWidgetDefinition widgetDefinition,boolean b, RSUrlRequester urlRequester); @Import("onRelease") @Override diff --git a/api-rs/src/main/java/net/runelite/rs/api/RSWidgetDefinition.java b/api-rs/src/main/java/net/runelite/rs/api/RSWidgetDefinition.java new file mode 100644 index 000000000..e126a2301 --- /dev/null +++ b/api-rs/src/main/java/net/runelite/rs/api/RSWidgetDefinition.java @@ -0,0 +1,28 @@ +package net.runelite.rs.api; + +import net.runelite.mapping.Import; + +public interface RSWidgetDefinition +{ + @Import("Widget_interfaceComponents") + RSWidget[][] getWidgets(); + + @Import("loadInterface") + boolean loadInterface$api(int interfaceId); + + @Import("Widget_cachedSprites") + RSEvictingDualNodeHashTable getWidgetSpriteCache(); + + @Import("Widget_cachedModels") + RSEvictingDualNodeHashTable getModelsCache(); + + + @Import("Widget_cachedSpriteMasks") + RSEvictingDualNodeHashTable getSpriteMasksCache(); + + @Import("widgetArchive") + RSAbstractArchive getWidgetArchive(); + + @Import("getWidgetChild") + RSWidget getWidgetChild(int parent, int child); +} \ No newline at end of file diff --git a/api/src/main/java/net/runelite/api/Buffer.java b/api/src/main/java/net/runelite/api/Buffer.java index 0ada0b905..b858475cd 100644 --- a/api/src/main/java/net/runelite/api/Buffer.java +++ b/api/src/main/java/net/runelite/api/Buffer.java @@ -2,44 +2,71 @@ public interface Buffer extends Node { - byte[] getPayload(); - int getOffset(); - void writeMediumMiddle$api(int i); - int readUnsignedByteAdd$api(); - int readUnsignedByteNeg$api(); - byte readByteAdd(); - byte readByteNeg(); - int readUnsignedByteSub$api(); + byte[] getPayload(); + int getOffset(); + void setOffset(int offset); + String readString(); + void writeByte$api(int p0); + void writeShort$api(int p0); + void writeMedium$api(int p0); + void writeInt$api(int p0); + void writeLongMedium$api(long p0); + void writeLong$api(long p0); + void writeBoolean$api(boolean p0); + void writeStringCp1252NullTerminated$api(String p0); + void writeStringCp1252NullCircumfixed$api(String p0); + void writeCESU8$api(CharSequence p0); + void writeBytes$api(byte[] p0, int p1, int p2); + void writeBuffer$api(Buffer p0); + void writeLengthInt$api(int p0); + void writeLengthShort$api(int p0); + void writeLengthByte$api(int p0); + void writeSmartByteShort$api(int p0); + void writeVarInt$api(int p0); int readUnsignedByte$api(); byte readByte$api(); int readUnsignedShort$api(); int readShort$api(); - String readString(); - int readSignedShortAddLE$api(); + int readMedium$api(); + int readInt$api(); + long readLong$api(); + boolean readBoolean$api(); + String readStringCp1252NullTerminatedOrNull$api(); + String readStringCp1252NullCircumfixed$api(); + String readCESUB$api(); + void readBytes$api(byte[] p0, int p1, int p2); int readShortSmart$api(); int readUShortSmart$api(); - void writeByte$api(int i); - void writeInt$api(int i); - void writeIntLE$api(int i); - void writeIntIME$api(int i); - void writeIntME$api(int i); - int readInt$api(); - int readIntLE$api(); - int readIntIME(); - int readIntME(); - void writeShortLE$api(int i); - void writeShortAdd$api(int i); - void writeShortAddLE$api(int i); - int readUnsignedShortLE$api(); - int readUnsignedShortAdd$api(); - int readUnsignedShortAddLE$api(); - void writeLong$api(long l); - void writeLongMedium$api(long l); - void writeShort$api(int i); - void writeByteAdd$api(int i); - void writeByteSub$api(int i); - void writeByteNeg$api(int i); - void writeString(String s); -} \ No newline at end of file + int readShortSmartSub$api(); + int readIncrSmallSmart$api(); + int readLargeSmart$api(); + int readNullableLargeSmart$api(); + int readVarInt$api(); + int writeCrc$api(int p0); + void writeByteAdd$api(int p0); + void writeByteNeg$api(int p0); + void writeByteSub$api(int p0); + int readUnsignedByteAdd$api(); + int readUnsignedByteSub$api(); + int readUnsignedByteNeg$api(); + byte readByteAdd$api(); + byte readByteNeg$api(); + byte readByteSub$api(); + void writeShortAdd$api(int p0); + void writeShortAddLE$api(int p0); + void writeShortLE$api(int p0); + int readUnsignedShortLE$api(); + int readUnsignedShortAdd$api(); + int readUnsignedShortAddLE$api(); + int readShortLE$api(); + int readShortAdd$api(); + int readShortAddLE$api(); + void writeIntLE$api(int p0); + void writeIntME$api(int p0); + void writeIntIME$api(int p0); + int readIntME$api(); + int readUnsignedIntIME$api(); + int readUnsignedIntME$api(); +} diff --git a/api/src/main/java/net/runelite/api/Client.java b/api/src/main/java/net/runelite/api/Client.java index 34f7034e0..596991e5b 100644 --- a/api/src/main/java/net/runelite/api/Client.java +++ b/api/src/main/java/net/runelite/api/Client.java @@ -37,6 +37,7 @@ import meteor.Logger; import net.runelite.api.annotations.VarCInt; import net.runelite.api.annotations.Varbit; +import net.runelite.api.mixins.Inject; import net.runelite.api.packets.ClientPacket; import net.runelite.api.packets.IsaacCipher; import net.runelite.api.packets.PacketBufferNode; @@ -53,6 +54,7 @@ import net.runelite.api.widgets.ItemQuantityMode; import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.WidgetInfo; +import net.runelite.api.widgets.WidgetModalMode; import org.intellij.lang.annotations.MagicConstant; /** @@ -2544,8 +2546,9 @@ default void interact(int identifier, int opcode, int param0, int param1, int cl /** * Gets a entry out of a DBTable Row */ - Object getDBTableField(int rowID, int column, int tupleIndex, int fieldIndex); + Object[] getDBTableField(int rowID, int column, int tupleIndex); + List getDBRowsByValue(int rowID, int column, int tupleIndex, Object value); void sendClickPacket(java.awt.Point clickPoint); Boolean getPendingClickPacketOverride(); @@ -2557,4 +2560,7 @@ default void interact(int identifier, int opcode, int param0, int param1, int cl void setPacketOverride(PacketBufferNode packetOverride); void setHost(String host); + void closeInterface(WidgetNode interfaceNode, boolean unload); + WidgetNode openInterface(int componentId, int interfaceId, @MagicConstant(valuesFromClass = WidgetModalMode.class) int modalMode); + } diff --git a/api/src/main/java/net/runelite/api/Item.kt b/api/src/main/java/net/runelite/api/Item.kt index ac8042d57..38ff20a66 100644 --- a/api/src/main/java/net/runelite/api/Item.kt +++ b/api/src/main/java/net/runelite/api/Item.kt @@ -414,6 +414,15 @@ open class Item(private val id : Int = 0, val quantity: Int = 0) : Identifiable, infix fun interact(idx: Int) { invoke(idx) } + // interact predicate based on the args and what arg is on the item + // if the item has the arg, then it will invoke the action + // check if it has action + fun interact(vararg args: String) { + if (hasAction(*args)) { + this.interact(args[0]) + } + } + fun invoke(index: Int) { client.callbacks.post(Events.INTERACT, getMenu(index)?.let { Interact(it) }) diff --git a/api/src/main/java/net/runelite/api/WorldType.java b/api/src/main/java/net/runelite/api/WorldType.java index 8104b2d00..9df5b822c 100644 --- a/api/src/main/java/net/runelite/api/WorldType.java +++ b/api/src/main/java/net/runelite/api/WorldType.java @@ -24,9 +24,10 @@ */ package net.runelite.api; +import lombok.AllArgsConstructor; + import java.util.Collection; import java.util.EnumSet; -import lombok.AllArgsConstructor; /** * An enumeration of possible world types. @@ -66,6 +67,10 @@ public enum WorldType * Last man standing world type. */ LAST_MAN_STANDING(1 << 14), + /** + * Beta world. + */ + BETA_WORLD(1 << 16), /** * Beta worlds without profiles that are saved. */ @@ -90,34 +95,34 @@ public enum WorldType private final int mask; private static final EnumSet PVP_WORLD_TYPES = EnumSet.of( - DEADMAN, // dmmt worlds are also flaged as DEADMAN - PVP + DEADMAN, // dmmt worlds are also flaged as DEADMAN + PVP ); private static final EnumSet DEADMAN_WORLD_TYPES = EnumSet.of( - DEADMAN + DEADMAN ); private static final EnumSet HIGHRISK_WORLD_TYPES = EnumSet.of( - HIGH_RISK + HIGH_RISK ); private static final EnumSet ALL_HIGHRISK_WORLD_TYPES = EnumSet.of( - HIGH_RISK, - DEADMAN + HIGH_RISK, + DEADMAN ); private static final EnumSet ALL_PVP_WORLD_TYPES = EnumSet.of( - HIGH_RISK, - DEADMAN, - PVP + HIGH_RISK, + DEADMAN, + PVP ); private static final EnumSet ALL_PK_WORLD_TYPES = EnumSet.of( - HIGH_RISK, - DEADMAN, - PVP, - BOUNTY + HIGH_RISK, + DEADMAN, + PVP, + BOUNTY ); /** diff --git a/api/src/main/kotlin/eventbus/events/IfOpenSubEvent.kt b/api/src/main/kotlin/eventbus/events/IfOpenSubEvent.kt index 7c1c0c7ca..af5aca161 100644 --- a/api/src/main/kotlin/eventbus/events/IfOpenSubEvent.kt +++ b/api/src/main/kotlin/eventbus/events/IfOpenSubEvent.kt @@ -5,7 +5,7 @@ import meteor.Event /** * @author Kris | 24/10/2021 */ -data class IfOpenSubEvent( +data class openInterfaceEvent( val targetComponent: Int, val interfaceId: Int, val walkType: Int diff --git a/api/src/main/kotlin/eventbus/events/ScriptPreFired.kt b/api/src/main/kotlin/eventbus/events/ScriptPreFired.kt index 8e23757a7..695559600 100644 --- a/api/src/main/kotlin/eventbus/events/ScriptPreFired.kt +++ b/api/src/main/kotlin/eventbus/events/ScriptPreFired.kt @@ -30,4 +30,4 @@ import net.runelite.api.ScriptEvent /** * An event that is fired before the designated script is ran */ -class ScriptPreFired(val scriptId: Int, val scriptEvent: ScriptEvent? = null) : Event() \ No newline at end of file +data class ScriptPreFired(val scriptId: Int, val scriptEvent: ScriptEvent? = null) : Event() \ No newline at end of file diff --git a/deobfuscator/build.gradle.kts b/asm/build.gradle.kts similarity index 50% rename from deobfuscator/build.gradle.kts rename to asm/build.gradle.kts index 3f649795c..b19b3eafa 100644 --- a/deobfuscator/build.gradle.kts +++ b/asm/build.gradle.kts @@ -1,5 +1,8 @@ +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + plugins { java + kotlin("jvm") } group = "org.meteorlite" @@ -8,30 +11,38 @@ version = "1.0-SNAPSHOT" repositories { mavenCentral() maven { url = uri("https://raw.githubusercontent.com/MeteorLite/hosting/main/repo/") } + maven { url = uri("https://jitpack.io") } +} +tasks.withType(){ + duplicatesStrategy = DuplicatesStrategy.EXCLUDE } - dependencies { - with(projects) { - implementation(annotations) - implementation(api) + + + + // implementation("com.github.JagexCompliant:meteor-api:1.0.4") + with(projects){ implementation(apiRs) - implementation(logger) implementation(cache) + implementation(logger) + implementation(annotations) + implementation(api) } - + implementation(projects.logger) with(libs) { + // implementation(projects.common) annotationProcessor(lombok) - implementation(annotations) + implementation(group = "org.jetbrains", name = "annotations", version = "_") implementation(asm) implementation(asm.util) - implementation(fernflower) - implementation(gson) + implementation(group = "com.google.code.gson", name = "gson", version = "_") implementation(guava) compileOnly(lombok) } + implementation(kotlin("stdlib-jdk8")) } tasks.test { useJUnitPlatform() -} \ No newline at end of file +} diff --git a/deobfuscator/src/main/java/net/runelite/asm/Annotation.java b/asm/src/main/java/asm/Annotation.java similarity index 99% rename from deobfuscator/src/main/java/net/runelite/asm/Annotation.java rename to asm/src/main/java/asm/Annotation.java index b3cafb0ab..dc4b65428 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Annotation.java +++ b/asm/src/main/java/asm/Annotation.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.ArrayList; import java.util.List; diff --git a/deobfuscator/src/main/java/net/runelite/asm/ClassFile.java b/asm/src/main/java/asm/ClassFile.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/ClassFile.java rename to asm/src/main/java/asm/ClassFile.java index fdcf163ff..e8d0bb37b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/ClassFile.java +++ b/asm/src/main/java/asm/ClassFile.java @@ -22,22 +22,25 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import lombok.Getter; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; -import static net.runelite.deob.DeobAnnotations.*; +import asm.attributes.Annotated; +import asm.pool.Class; +import asm.signature.Signature; + import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.FieldVisitor; import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; +import static asm.DeobAnnotations.getObfuscatedName; +import static asm.DeobAnnotations.getObfuscatedSignature; + public class ClassFile implements Annotated, Named { private ClassGroup group; diff --git a/deobfuscator/src/main/java/net/runelite/asm/ClassGroup.java b/asm/src/main/java/asm/ClassGroup.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/ClassGroup.java rename to asm/src/main/java/asm/ClassGroup.java index 3b29c295b..08c6f5e4e 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/ClassGroup.java +++ b/asm/src/main/java/asm/ClassGroup.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.ArrayList; import java.util.Collections; @@ -31,11 +31,12 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.signature.Signature; -import static net.runelite.deob.DeobAnnotations.*; +import asm.attributes.Code; +import asm.signature.Signature; import org.jetbrains.annotations.NotNull; +import static asm.DeobAnnotations.getObfuscatedName; + public class ClassGroup implements Iterable { private final List classes = new ArrayList<>(); // to keep order diff --git a/deobfuscator/src/main/java/net/runelite/deob/DeobAnnotations.java b/asm/src/main/java/asm/DeobAnnotations.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/deob/DeobAnnotations.java rename to asm/src/main/java/asm/DeobAnnotations.java index b751a95af..d0494965d 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/DeobAnnotations.java +++ b/asm/src/main/java/asm/DeobAnnotations.java @@ -22,18 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob; +package asm; -import javax.annotation.Nullable; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.Annotation; -import net.runelite.asm.signature.Signature; +import asm.attributes.Annotated; +import asm.signature.Signature; import org.jetbrains.annotations.NotNull; +import javax.annotation.Nullable; + public class DeobAnnotations { public static final Type OBFUSCATED_NAME = new Type("Lnet/runelite/mapping/ObfuscatedName;"); diff --git a/deobfuscator/src/main/java/net/runelite/asm/Field.java b/asm/src/main/java/asm/Field.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/asm/Field.java rename to asm/src/main/java/asm/Field.java index 33c4f8448..178c41b18 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Field.java +++ b/asm/src/main/java/asm/Field.java @@ -22,13 +22,12 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.LinkedHashMap; import java.util.Map; import lombok.Getter; -import net.runelite.asm.attributes.Annotated; -import net.runelite.deob.DeobAnnotations; +import asm.attributes.Annotated; import org.objectweb.asm.FieldVisitor; import org.objectweb.asm.Opcodes; import static org.objectweb.asm.Opcodes.ACC_PRIVATE; @@ -151,9 +150,9 @@ public void setValue(Object value) this.value = value; } - public net.runelite.asm.pool.Field getPoolField() + public asm.pool.Field getPoolField() { - return new net.runelite.asm.pool.Field( + return new asm.pool.Field( classFile.getPoolClass(), this.getName(), this.getType() diff --git a/deobfuscator/src/main/java/net/runelite/asm/Interfaces.java b/asm/src/main/java/asm/Interfaces.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/Interfaces.java rename to asm/src/main/java/asm/Interfaces.java index ce8925af1..2a436ec44 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Interfaces.java +++ b/asm/src/main/java/asm/Interfaces.java @@ -22,14 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.pool.Class; -import net.runelite.deob.DeobAnnotations; +import asm.pool.Class; import org.jetbrains.annotations.NotNull; public class Interfaces implements Iterable diff --git a/deobfuscator/src/main/java/net/runelite/asm/Method.java b/asm/src/main/java/asm/Method.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/Method.java rename to asm/src/main/java/asm/Method.java index e1c711fdf..a86fdc141 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Method.java +++ b/asm/src/main/java/asm/Method.java @@ -22,22 +22,21 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import lombok.Getter; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.Exceptions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.LocalVariable; -import net.runelite.asm.attributes.code.Parameter; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.DeobAnnotations; +import asm.attributes.Annotated; +import asm.attributes.Code; +import asm.attributes.Exceptions; +import asm.attributes.code.Instruction; +import asm.attributes.code.LocalVariable; +import asm.attributes.code.Parameter; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.signature.Signature; import org.objectweb.asm.Label; import org.objectweb.asm.MethodVisitor; import static org.objectweb.asm.Opcodes.ACC_FINAL; @@ -102,8 +101,8 @@ public void accept(MethodVisitor visitor) visitor.visitCode(); - net.runelite.asm.attributes.code.Exceptions exceptions = code.getExceptions(); - for (net.runelite.asm.attributes.code.Exception exception : exceptions.getExceptions()) + asm.attributes.code.Exceptions exceptions = code.getExceptions(); + for (asm.attributes.code.Exception exception : exceptions.getExceptions()) { assert exception.getStart().getLabel() != null; assert exception.getEnd().getLabel() != null; @@ -138,13 +137,13 @@ public void accept(MethodVisitor visitor) Label endLabel = null; for (Instruction i : code.getInstructions().getInstructions()) { - if (i instanceof net.runelite.asm.attributes.code.Label) + if (i instanceof asm.attributes.code.Label) { if (startLabel == null) { - startLabel = ((net.runelite.asm.attributes.code.Label) i).getLabel(); + startLabel = ((asm.attributes.code.Label) i).getLabel(); } - endLabel = ((net.runelite.asm.attributes.code.Label) i).getLabel(); + endLabel = ((asm.attributes.code.Label) i).getLabel(); } } @@ -307,9 +306,9 @@ public List findLVTInstructionsForVa return list; } - public net.runelite.asm.pool.Method getPoolMethod() + public asm.pool.Method getPoolMethod() { - return new net.runelite.asm.pool.Method( + return new asm.pool.Method( classFile.getPoolClass(), name, arguments diff --git a/deobfuscator/src/main/java/net/runelite/asm/Named.java b/asm/src/main/java/asm/Named.java similarity index 64% rename from deobfuscator/src/main/java/net/runelite/asm/Named.java rename to asm/src/main/java/asm/Named.java index ec2bc0b6a..81e206ad9 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Named.java +++ b/asm/src/main/java/asm/Named.java @@ -1,4 +1,4 @@ -package net.runelite.asm; +package asm; public interface Named { diff --git a/deobfuscator/src/main/java/net/runelite/asm/Type.java b/asm/src/main/java/asm/Type.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/asm/Type.java rename to asm/src/main/java/asm/Type.java index 89eb3b302..f7ce79741 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/Type.java +++ b/asm/src/main/java/asm/Type.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm; +package asm; -import net.runelite.asm.pool.Class; +import asm.pool.Class; /** * Created by Kyle Fricilone on 8/20/2017 diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/Annotated.java b/asm/src/main/java/asm/attributes/Annotated.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/Annotated.java rename to asm/src/main/java/asm/attributes/Annotated.java index bb4336104..d98469c4c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/Annotated.java +++ b/asm/src/main/java/asm/attributes/Annotated.java @@ -1,8 +1,9 @@ -package net.runelite.asm.attributes; +package asm.attributes; + +import asm.Annotation; +import asm.Type; import java.util.Map; -import net.runelite.asm.Annotation; -import net.runelite.asm.Type; /** * Objects implementing this only have to implement getAnnotations. diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/Code.java b/asm/src/main/java/asm/attributes/Code.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/Code.java rename to asm/src/main/java/asm/attributes/Code.java index 58c759844..ddfad755b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/Code.java +++ b/asm/src/main/java/asm/attributes/Code.java @@ -23,24 +23,25 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes; +package asm.attributes; + +import asm.Method; +import asm.attributes.code.Exceptions; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.signature.Signature; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Exceptions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.signature.Signature; public class Code { private Method method; private int maxStack; private Instructions instructions; - private final Exceptions exceptions; + private final asm.attributes.code.Exceptions exceptions; public Code(Method method) { @@ -103,7 +104,7 @@ public int getMaxLocals() return max; } - public Exceptions getExceptions() + public asm.attributes.code.Exceptions getExceptions() { return exceptions; } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/Exceptions.java b/asm/src/main/java/asm/attributes/Exceptions.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/Exceptions.java rename to asm/src/main/java/asm/attributes/Exceptions.java index 0b12c513f..706ba98bc 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/Exceptions.java +++ b/asm/src/main/java/asm/attributes/Exceptions.java @@ -23,12 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes; +package asm.attributes; + +import asm.ClassFile; +import asm.pool.Class; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.pool.Class; public class Exceptions { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exception.java b/asm/src/main/java/asm/attributes/code/Exception.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exception.java rename to asm/src/main/java/asm/attributes/code/Exception.java index b1209a663..5042ab2b7 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exception.java +++ b/asm/src/main/java/asm/attributes/code/Exception.java @@ -23,10 +23,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; -import net.runelite.asm.ClassFile; -import net.runelite.asm.pool.Class; +import asm.ClassFile; +import asm.pool.Class; public class Exception implements Cloneable { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exceptions.java b/asm/src/main/java/asm/attributes/code/Exceptions.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exceptions.java rename to asm/src/main/java/asm/attributes/code/Exceptions.java index 30b00a011..3fd63e1bc 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Exceptions.java +++ b/asm/src/main/java/asm/attributes/code/Exceptions.java @@ -23,12 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; + +import asm.ClassFile; +import asm.attributes.Code; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.attributes.Code; public class Exceptions { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instruction.java b/asm/src/main/java/asm/attributes/code/Instruction.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instruction.java rename to asm/src/main/java/asm/attributes/code/Instruction.java index bf8e64535..c9463b82f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instruction.java +++ b/asm/src/main/java/asm/attributes/code/Instruction.java @@ -22,11 +22,11 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; -import net.runelite.asm.Method; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; +import asm.Method; +import asm.execution.Frame; +import asm.execution.InstructionContext; import org.objectweb.asm.MethodVisitor; public abstract class Instruction implements Cloneable diff --git a/asm/src/main/java/asm/attributes/code/InstructionType.java b/asm/src/main/java/asm/attributes/code/InstructionType.java new file mode 100644 index 000000000..770bb98fe --- /dev/null +++ b/asm/src/main/java/asm/attributes/code/InstructionType.java @@ -0,0 +1,211 @@ +/* + * Copyright (c) 2016-2017, Adam + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package asm.attributes.code; + +import asm.attributes.code.instructions.*; + +public enum InstructionType +{ + NOP(0x00, "nop", NOP.class), + ACONST_NULL(0x01, "aconst_null", AConstNull.class), + BIPUSH(0x10, "bipush", BiPush.class), + SIPUSH(0x11, "sipush", SiPush.class), + LDC(-1, "ldc", LDC.class), + ILOAD(0x15, "iload", ILoad.class), + LLOAD(0x16, "lload", LLoad.class), + FLOAD(0x17, "fload", FLoad.class), + DLOAD(0x18, "dload", DLoad.class), + ALOAD(0x19, "aload", ALoad.class), + IALOAD(0x2e, "iaload", IALoad.class), + LALOAD(0x2f, "laload", LALoad.class), + FALOAD(0x30, "faload", FALoad.class), + DALOAD(0x31, "daload", DALoad.class), + AALOAD(0x32, "aaload", AALoad.class), + BALOAD(0x33, "baload", BALoad.class), + CALOAD(0x34, "caload", CALoad.class), + SALOAD(0x35, "saload", SALoad.class), + ISTORE(0x36, "istore", IStore.class), + LSTORE(0x37, "lstore", LStore.class), + FSTORE(0x38, "fstore", FStore.class), + DSTORE(0x39, "dstore", DStore.class), + ASTORE(0x3a, "astore", AStore.class), + IASTORE(0x4f, "iastore", IAStore.class), + LASTORE(0x50, "lastore", LAStore.class), + FASTORE(0x51, "fastore", FAStore.class), + DASTORE(0x52, "dastore", DAStore.class), + AASTORE(0x53, "aastore", AAStore.class), + BASTORE(0x54, "bastore", BAStore.class), + CASTORE(0x55, "castore", CAStore.class), + SASTORE(0x56, "sastore", SAStore.class), + POP(0x57, "pop", Pop.class), + POP2(0x58, "pop2", Pop2.class), + DUP(0x59, "dup", Dup.class), + DUP_X1(0x5a, "dup_x1", Dup_X1.class), + DUP_X2(0x5b, "dup_x2", Dup_X2.class), + DUP2(0x5c, "dup2", Dup2.class), + DUP2_X1(0x5d, "dup2_x1", Dup2_X1.class), + DUP2_X2(0x5e, "dup2_x2", Dup2_X2.class), + SWAP(0x5f, "swap", Swap.class), + IADD(0x60, "iadd", IAdd.class), + LADD(0x61, "ladd", LAdd.class), + FADD(0x62, "fadd", FAdd.class), + DADD(0x63, "dadd", DAdd.class), + ISUB(0x64, "isub", ISub.class), + LSUB(0x65, "lsub", LSub.class), + FSUB(0x66, "fsub", FSub.class), + DSUB(0x67, "dsub", DSub.class), + IMUL(0x68, "imul", IMul.class), + LMUL(0x69, "lmul", LMul.class), + FMUL(0x6a, "fmul", FMul.class), + DMUL(0x6b, "dmul", DMul.class), + IDIV(0x6c, "idiv", IDiv.class), + LDIV(0x6d, "ldiv", LDiv.class), + FDIV(0x6e, "fdiv", FDiv.class), + DDIV(0x6f, "ddiv", DDiv.class), + IREM(0x70, "irem", IRem.class), + LREM(0x71, "lrem", LRem.class), + FREM(0x72, "frem", FRem.class), + DREM(0x73, "drem", DRem.class), + INEG(0x74, "ineg", INeg.class), + LNEG(0x75, "lneg", LNeg.class), + FNEG(0x76, "fneg", FNeg.class), + DNEG(0x77, "dneg", DNeg.class), + ISHL(0x78, "ishl", IShL.class), + LSHL(0x79, "lshl", LShL.class), + ISHR(0x7a, "ishr", IShR.class), + LSHR(0x7b, "lshr", LShR.class), + IUSHR(0x7c, "iushr", IUShR.class), + LUSHR(0x7d, "lushr", LUShR.class), + IAND(0x7e, "iand", IAnd.class), + LAND(0x7f, "land", LAnd.class), + IOR(0x80, "ior", IOr.class), + LOR(0x81, "lor", LOr.class), + IXOR(0x82, "ixor", IXor.class), + LXOR(0x83, "lxor", LXor.class), + IINC(0x84, "iinc", IInc.class), + I2L(0x85, "i2l", I2L.class), + I2F(0x86, "i2f", I2F.class), + I2D(0x87, "i2d", I2D.class), + L2I(0x88, "l2i", L2I.class), + L2F(0x89, "l2f", L2F.class), + L2D(0x8a, "l2d", L2D.class), + F2I(0x8b, "f2i", F2I.class), + F2L(0x8c, "f2l", F2L.class), + F2D(0x8d, "f2d", F2D.class), + D2I(0x8e, "d2i", D2I.class), + D2L(0x8f, "d2l", D2L.class), + D2F(0x90, "d2f", D2F.class), + I2B(0x91, "i2b", I2B.class), + I2C(0x92, "i2c", I2C.class), + I2S(0x93, "i2s", I2S.class), + LCMP(0x94, "lcmp", LCmp.class), + FCMPL(0x95, "fcmpl", FCmpL.class), + FCMPG(0x96, "fcmpg", FCmpG.class), + DCMPL(0x97, "dcmpl", DCmpL.class), + DCMPG(0x98, "dcmpg", DCmpG.class), + IFEQ(0x99, "ifeq", IfEq.class), + IFNE(0x9a, "ifne", IfNe.class), + IFLT(0x9b, "iflt", IfLt.class), + IFGE(0x9c, "ifge", IfGe.class), + IFGT(0x9d, "ifgt", IfGt.class), + IFLE(0x9e, "ifle", IfLe.class), + IF_ICMPEQ(0x9f, "if_icmpeq", IfICmpEq.class), + IF_ICMPNE(0xa0, "if_icmpne", IfICmpNe.class), + IF_ICMPLT(0xa1, "if_cmplt", IfCmpLt.class), + IF_ICMPGE(0xa2, "if_icmpge", IfCmpGe.class), + IF_ICMPGT(0xa3, "if_icmpgt", IfCmpGt.class), + IF_ICMPLE(0xa4, "if_icmple", IfCmpLe.class), + IF_ACMPEQ(0xa5, "if_acmpeq", IfACmpEq.class), + IF_ACMPNE(0xa6, "if_acmpne", IfACmpNe.class), + GOTO(0xa7, "goto", Goto.class), + TABLESWITCH(0xaa, "tableswitch", TableSwitch.class), + LOOKUPSWITCH(0xab, "lookupswitch", LookupSwitch.class), + IRETURN(0xac, "ireturn", Return.class), + LRETURN(0xad, "lreturn", Return.class), + FRETURN(0xae, "freturn", Return.class), + DRETURN(0xaf, "dreturn", Return.class), + ARETURN(0xb0, "areturn", Return.class), + RETURN(0xb1, "return", VReturn.class), + GETSTATIC(0xb2, "getstatic", GetStatic.class), + PUTSTATIC(0xb3, "putstatic", PutStatic.class), + GETFIELD(0xb4, "getfield", GetField.class), + PUTFIELD(0xb5, "putfield", PutField.class), + INVOKEVIRTUAL(0xb6, "invokevirtual", InvokeVirtual.class), + INVOKESPECIAL(0xb7, "invokespecial", InvokeSpecial.class), + INVOKESTATIC(0xb8, "invokestatic", InvokeStatic.class), + INVOKEINTERFACE(0xb9, "invokeinterface", InvokeInterface.class), + INVOKEDYNAMIC(0xba, "invokedynamic", InvokeDynamic.class), + NEW(0xbb, "new", New.class), + NEWARRAY(0xbc, "newarray", NewArray.class), + ANEWARRAY(0xbd, "anewarray", ANewArray.class), + ARRAYLENGTH(0xbe, "arraylength", ArrayLength.class), + ATHROW(0xbf, "athrow", AThrow.class), + CHECKCAST(0xc0, "checkcast", CheckCast.class), + INSTANCEOf(0xc1, "instanceof", InstanceOf.class), + MONITORENTER(0xc2, "monitorenter", MonitorEnter.class), + MONITOREXIT(0xc3, "monitorexit", MonitorExit.class), + MULTIANEWARRAY(0xc5, "multianewarray", MultiANewArray.class), + IFNULL(0xc6, "ifnull", IfNull.class), + IFNONNULL(0xc7, "ifnonnull", IfNonNull.class), + GOTO_W(0xc8, "goto_w", GotoW.class); + + private final int code; + private final String name; + private final Class clazz; + + InstructionType(int op, String name, Class clazz) + { + this.code = op; + this.name = name; + this.clazz = clazz; + } + + public int getCode() + { + return code; + } + + public String getName() + { + return name; + } + + public Class getInstructionClass() + { + return clazz; + } + + public static InstructionType findInstructionFromCode(int code) + { + for (InstructionType t : InstructionType.values()) + { + if (t.getCode() == code) + { + return t; + } + } + return null; + } +} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instructions.java b/asm/src/main/java/asm/attributes/code/Instructions.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instructions.java rename to asm/src/main/java/asm/attributes/code/Instructions.java index 212c16899..bc86d63c5 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Instructions.java +++ b/asm/src/main/java/asm/attributes/code/Instructions.java @@ -22,17 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.ListIterator; -import java.util.Map; -import net.runelite.asm.attributes.Code; +package asm.attributes.code; + +import asm.attributes.Code; import org.jetbrains.annotations.NotNull; +import java.util.*; + public class Instructions implements Iterable { private final Code code; diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Label.java b/asm/src/main/java/asm/attributes/code/Label.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Label.java rename to asm/src/main/java/asm/attributes/code/Label.java index 4dcc55a01..a84248182 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Label.java +++ b/asm/src/main/java/asm/attributes/code/Label.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; -import net.runelite.asm.attributes.code.instructions.NOP; +import asm.attributes.code.instructions.NOP; import org.objectweb.asm.MethodVisitor; public class Label extends NOP diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/LocalVariable.java b/asm/src/main/java/asm/attributes/code/LocalVariable.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/LocalVariable.java rename to asm/src/main/java/asm/attributes/code/LocalVariable.java index 3956b453d..41accca3e 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/LocalVariable.java +++ b/asm/src/main/java/asm/attributes/code/LocalVariable.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; import org.objectweb.asm.Label; diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Parameter.java b/asm/src/main/java/asm/attributes/code/Parameter.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/Parameter.java rename to asm/src/main/java/asm/attributes/code/Parameter.java index b42a41a4b..fd736c460 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/Parameter.java +++ b/asm/src/main/java/asm/attributes/code/Parameter.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code; +package asm.attributes.code; public class Parameter { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/AdditionInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/AdditionInstruction.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/AdditionInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/AdditionInstruction.java index 0fbb69ab1..7173b8533 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/AdditionInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/AdditionInstruction.java @@ -22,14 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; - -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.attributes.code.instruction.types; + +import asm.Field; +import asm.attributes.code.Instruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public interface AdditionInstruction extends MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayLoad.java b/asm/src/main/java/asm/attributes/code/instruction/types/ArrayLoad.java similarity index 90% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayLoad.java rename to asm/src/main/java/asm/attributes/code/instruction/types/ArrayLoad.java index da196f005..c78b7a3d2 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayLoad.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/ArrayLoad.java @@ -22,13 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.Instruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public interface ArrayLoad extends MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayStoreInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/ArrayStoreInstruction.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayStoreInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/ArrayStoreInstruction.java index cf00821d1..5a067fbf0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ArrayStoreInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/ArrayStoreInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface ArrayStoreInstruction extends MappableInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ComparisonInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/ComparisonInstruction.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ComparisonInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/ComparisonInstruction.java index 2076baead..7b931c1ad 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ComparisonInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/ComparisonInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface ComparisonInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ConversionInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/ConversionInstruction.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ConversionInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/ConversionInstruction.java index 22b4977b7..c6bd32072 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ConversionInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/ConversionInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface ConversionInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DivisionInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/DivisionInstruction.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DivisionInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/DivisionInstruction.java index f682748a6..ef2d421ba 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DivisionInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/DivisionInstruction.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public interface DivisionInstruction extends MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DupInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/DupInstruction.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DupInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/DupInstruction.java index 93ccb70e4..8e10386ed 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/DupInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/DupInstruction.java @@ -23,11 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; + +import asm.execution.InstructionContext; +import asm.execution.StackContext; import java.util.List; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; public interface DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/FieldInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/FieldInstruction.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/FieldInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/FieldInstruction.java index e9ed4999f..aee6baa5c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/FieldInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/FieldInstruction.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.pool.Field; +import asm.pool.Field; public interface FieldInstruction { @@ -32,5 +32,5 @@ public interface FieldInstruction void setField(Field field); - net.runelite.asm.Field getMyField(); + asm.Field getMyField(); } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/GetFieldInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/GetFieldInstruction.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/GetFieldInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/GetFieldInstruction.java index a9b7ab3cf..cb457e456 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/GetFieldInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/GetFieldInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface GetFieldInstruction extends FieldInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/IntInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/IntInstruction.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/IntInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/IntInstruction.java index 2bc361ef4..81cd42115 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/IntInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/IntInstruction.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface IntInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/InvokeInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/InvokeInstruction.java similarity index 89% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/InvokeInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/InvokeInstruction.java index 9396f974d..2a15d7dcf 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/InvokeInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/InvokeInstruction.java @@ -22,18 +22,19 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; + +import asm.Method; import java.util.List; -import net.runelite.asm.Method; public interface InvokeInstruction extends MappableInstruction { void removeParameter(int idx); - net.runelite.asm.pool.Method getMethod(); + asm.pool.Method getMethod(); - void setMethod(net.runelite.asm.pool.Method method); + void setMethod(asm.pool.Method method); List getMethods(); } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/JumpingInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/JumpingInstruction.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/JumpingInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/JumpingInstruction.java index fc1dda4b3..3b57e61d4 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/JumpingInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/JumpingInstruction.java @@ -22,10 +22,11 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; + +import asm.attributes.code.Label; import java.util.List; -import net.runelite.asm.attributes.code.Label; public interface JumpingInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/LVTInstruction.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/LVTInstruction.java index 3710c1c38..88e08833a 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/LVTInstruction.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.attributes.code.Instruction; +import asm.attributes.code.Instruction; public interface LVTInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstructionType.java b/asm/src/main/java/asm/attributes/code/instruction/types/LVTInstructionType.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstructionType.java rename to asm/src/main/java/asm/attributes/code/instruction/types/LVTInstructionType.java index 07c5f17d9..4e297e5b1 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/LVTInstructionType.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/LVTInstructionType.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public enum LVTInstructionType { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/MappableInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/MappableInstruction.java similarity index 89% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/MappableInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/MappableInstruction.java index e86faf24d..e91439776 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/MappableInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/MappableInstruction.java @@ -23,10 +23,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public interface MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/PushConstantInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/PushConstantInstruction.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/PushConstantInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/PushConstantInstruction.java index 06da5c52f..0ee242193 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/PushConstantInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/PushConstantInstruction.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.attributes.code.Instruction; +import asm.attributes.code.Instruction; public interface PushConstantInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ReturnInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/ReturnInstruction.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ReturnInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/ReturnInstruction.java index ce9a7e7d3..9f882d1ea 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/ReturnInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/ReturnInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface ReturnInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SetFieldInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/SetFieldInstruction.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SetFieldInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/SetFieldInstruction.java index 0e645b01e..8a7e49d77 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SetFieldInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/SetFieldInstruction.java @@ -23,6 +23,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; public interface SetFieldInstruction extends FieldInstruction, MappableInstruction {} diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SubtractionInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/SubtractionInstruction.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SubtractionInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/SubtractionInstruction.java index a31eb33df..3d480630a 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/SubtractionInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/SubtractionInstruction.java @@ -22,14 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; - -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.attributes.code.instruction.types; + +import asm.Field; +import asm.attributes.code.Instruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public interface SubtractionInstruction extends MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/TypeInstruction.java b/asm/src/main/java/asm/attributes/code/instruction/types/TypeInstruction.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/TypeInstruction.java rename to asm/src/main/java/asm/attributes/code/instruction/types/TypeInstruction.java index d4ffb5619..3c814de1f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instruction/types/TypeInstruction.java +++ b/asm/src/main/java/asm/attributes/code/instruction/types/TypeInstruction.java @@ -22,9 +22,9 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instruction.types; +package asm.attributes.code.instruction.types; -import net.runelite.asm.Type; +import asm.Type; public interface TypeInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AALoad.java b/asm/src/main/java/asm/attributes/code/instructions/AALoad.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/AALoad.java index 287c85ba1..b5e4f84d0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/AALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class AALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AAStore.java b/asm/src/main/java/asm/attributes/code/instructions/AAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/AAStore.java index 768fe4ba6..9bdc1419d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/AAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class AAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AConstNull.java b/asm/src/main/java/asm/attributes/code/instructions/AConstNull.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AConstNull.java rename to asm/src/main/java/asm/attributes/code/instructions/AConstNull.java index 88154c647..f09cd3a70 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AConstNull.java +++ b/asm/src/main/java/asm/attributes/code/instructions/AConstNull.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class AConstNull extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ALoad.java b/asm/src/main/java/asm/attributes/code/instructions/ALoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/ALoad.java index c8a062341..b56b43c98 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ALoad.java @@ -23,19 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class ALoad extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ANewArray.java b/asm/src/main/java/asm/attributes/code/instructions/ANewArray.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ANewArray.java rename to asm/src/main/java/asm/attributes/code/instructions/ANewArray.java index f1b6378a2..ef4bda130 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ANewArray.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ANewArray.java @@ -22,20 +22,16 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.TypeInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.TypeInstruction; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class ANewArray extends Instruction implements TypeInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AStore.java b/asm/src/main/java/asm/attributes/code/instructions/AStore.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AStore.java rename to asm/src/main/java/asm/attributes/code/instructions/AStore.java index dd5436bf8..5c17ef474 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/AStore.java @@ -23,19 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class AStore extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AThrow.java b/asm/src/main/java/asm/attributes/code/instructions/AThrow.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AThrow.java rename to asm/src/main/java/asm/attributes/code/instructions/AThrow.java index b4cf2f17f..3d489b4de 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/AThrow.java +++ b/asm/src/main/java/asm/attributes/code/instructions/AThrow.java @@ -23,15 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class AThrow extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayLength.java b/asm/src/main/java/asm/attributes/code/instructions/ArrayLength.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayLength.java rename to asm/src/main/java/asm/attributes/code/instructions/ArrayLength.java index d0e5e65ee..d0896ec74 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayLength.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ArrayLength.java @@ -23,16 +23,16 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class ArrayLength extends Instruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayStore.java b/asm/src/main/java/asm/attributes/code/instructions/ArrayStore.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayStore.java rename to asm/src/main/java/asm/attributes/code/instructions/ArrayStore.java index 7acb82c1e..2da5b65c3 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ArrayStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ArrayStore.java @@ -22,18 +22,18 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayStoreInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.attributes.code.instructions; + +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayStoreInstruction; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public abstract class ArrayStore extends Instruction implements ArrayStoreInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BALoad.java b/asm/src/main/java/asm/attributes/code/instructions/BALoad.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/BALoad.java index b8d7e7a20..41d24ee24 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/BALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class BALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BAStore.java b/asm/src/main/java/asm/attributes/code/instructions/BAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/BAStore.java index e5b2dd468..3147bf70d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/BAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class BAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BiPush.java b/asm/src/main/java/asm/attributes/code/instructions/BiPush.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BiPush.java rename to asm/src/main/java/asm/attributes/code/instructions/BiPush.java index 97643bd54..3eb919390 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/BiPush.java +++ b/asm/src/main/java/asm/attributes/code/instructions/BiPush.java @@ -23,19 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.IntInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.IntInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class BiPush extends Instruction implements PushConstantInstruction, IntInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CALoad.java b/asm/src/main/java/asm/attributes/code/instructions/CALoad.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/CALoad.java index a26ff32cb..120557c2b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/CALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class CALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CAStore.java b/asm/src/main/java/asm/attributes/code/instructions/CAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/CAStore.java index 6a39e1132..bd1f5c641 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/CAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class CAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CheckCast.java b/asm/src/main/java/asm/attributes/code/instructions/CheckCast.java similarity index 83% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CheckCast.java rename to asm/src/main/java/asm/attributes/code/instructions/CheckCast.java index 4fc7513a6..e0e6361f3 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/CheckCast.java +++ b/asm/src/main/java/asm/attributes/code/instructions/CheckCast.java @@ -22,19 +22,19 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.TypeInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.TypeInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import org.objectweb.asm.MethodVisitor; public class CheckCast extends Instruction implements TypeInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2F.java b/asm/src/main/java/asm/attributes/code/instructions/D2F.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2F.java rename to asm/src/main/java/asm/attributes/code/instructions/D2F.java index e593be8b0..2ea260ad1 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2F.java +++ b/asm/src/main/java/asm/attributes/code/instructions/D2F.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class D2F extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2I.java b/asm/src/main/java/asm/attributes/code/instructions/D2I.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2I.java rename to asm/src/main/java/asm/attributes/code/instructions/D2I.java index 02116f2c7..966f709ee 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2I.java +++ b/asm/src/main/java/asm/attributes/code/instructions/D2I.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class D2I extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2L.java b/asm/src/main/java/asm/attributes/code/instructions/D2L.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2L.java rename to asm/src/main/java/asm/attributes/code/instructions/D2L.java index 2ef335766..a752fa391 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/D2L.java +++ b/asm/src/main/java/asm/attributes/code/instructions/D2L.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class D2L extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DALoad.java b/asm/src/main/java/asm/attributes/code/instructions/DALoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/DALoad.java index 01632358c..2454355c6 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class DALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAStore.java b/asm/src/main/java/asm/attributes/code/instructions/DAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/DAStore.java index a7ec03fde..025e868af 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class DAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAdd.java b/asm/src/main/java/asm/attributes/code/instructions/DAdd.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAdd.java rename to asm/src/main/java/asm/attributes/code/instructions/DAdd.java index 85e51efaa..0e1ef4d08 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DAdd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DAdd.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.AdditionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.AdditionInstruction; +import asm.execution.*; public class DAdd extends Instruction implements AdditionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpG.java b/asm/src/main/java/asm/attributes/code/instructions/DCmpG.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpG.java rename to asm/src/main/java/asm/attributes/code/instructions/DCmpG.java index 4847ed75c..e7acfc220 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpG.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DCmpG.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class DCmpG extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpL.java b/asm/src/main/java/asm/attributes/code/instructions/DCmpL.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpL.java rename to asm/src/main/java/asm/attributes/code/instructions/DCmpL.java index 51c518441..ed122ab93 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DCmpL.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DCmpL.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class DCmpL extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DDiv.java b/asm/src/main/java/asm/attributes/code/instructions/DDiv.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DDiv.java rename to asm/src/main/java/asm/attributes/code/instructions/DDiv.java index 1965b8c2d..bc73b0d02 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DDiv.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DDiv.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DivisionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DivisionInstruction; +import asm.execution.*; public class DDiv extends Instruction implements DivisionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DLoad.java b/asm/src/main/java/asm/attributes/code/instructions/DLoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DLoad.java rename to asm/src/main/java/asm/attributes/code/instructions/DLoad.java index 14c336bc0..ea99326c9 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DLoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DLoad.java @@ -23,20 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class DLoad extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DMul.java b/asm/src/main/java/asm/attributes/code/instructions/DMul.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DMul.java rename to asm/src/main/java/asm/attributes/code/instructions/DMul.java index d75f9596b..0fc55ad4d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DMul.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DMul.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class DMul extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DNeg.java b/asm/src/main/java/asm/attributes/code/instructions/DNeg.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DNeg.java rename to asm/src/main/java/asm/attributes/code/instructions/DNeg.java index bb8cef042..2044a79c6 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DNeg.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DNeg.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class DNeg extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DRem.java b/asm/src/main/java/asm/attributes/code/instructions/DRem.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DRem.java rename to asm/src/main/java/asm/attributes/code/instructions/DRem.java index 1d8b9d3b9..4d79449bc 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DRem.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DRem.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class DRem extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DStore.java b/asm/src/main/java/asm/attributes/code/instructions/DStore.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DStore.java rename to asm/src/main/java/asm/attributes/code/instructions/DStore.java index 737ae1b73..ad329ba14 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DStore.java @@ -23,19 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class DStore extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DSub.java b/asm/src/main/java/asm/attributes/code/instructions/DSub.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DSub.java rename to asm/src/main/java/asm/attributes/code/instructions/DSub.java index ef71a1ee8..3aced2498 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/DSub.java +++ b/asm/src/main/java/asm/attributes/code/instructions/DSub.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.SubtractionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.SubtractionInstruction; +import asm.execution.*; public class DSub extends Instruction implements SubtractionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup.java b/asm/src/main/java/asm/attributes/code/instructions/Dup.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup.java index 8281ab838..e589ce039 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup.java @@ -23,18 +23,19 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2.java b/asm/src/main/java/asm/attributes/code/instructions/Dup2.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup2.java index bbfde95d3..307ebe881 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup2.java @@ -23,18 +23,19 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup2 extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X1.java b/asm/src/main/java/asm/attributes/code/instructions/Dup2_X1.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X1.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup2_X1.java index 22c5c31d8..98e7dabbc 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X1.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup2_X1.java @@ -23,18 +23,19 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.Arrays; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup2_X1 extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X2.java b/asm/src/main/java/asm/attributes/code/instructions/Dup2_X2.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X2.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup2_X2.java index 2f4e5ec2e..4d0c38ea7 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup2_X2.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup2_X2.java @@ -23,17 +23,18 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup2_X2 extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X1.java b/asm/src/main/java/asm/attributes/code/instructions/Dup_X1.java similarity index 89% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X1.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup_X1.java index 1efb44232..1c86462a5 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X1.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup_X1.java @@ -23,18 +23,19 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.Arrays; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup_X1 extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X2.java b/asm/src/main/java/asm/attributes/code/instructions/Dup_X2.java similarity index 89% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X2.java rename to asm/src/main/java/asm/attributes/code/instructions/Dup_X2.java index 7d9a18122..a969052b9 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Dup_X2.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Dup_X2.java @@ -23,18 +23,19 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; import java.util.Arrays; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; public class Dup_X2 extends Instruction implements DupInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2D.java b/asm/src/main/java/asm/attributes/code/instructions/F2D.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2D.java rename to asm/src/main/java/asm/attributes/code/instructions/F2D.java index 68b4fb294..a17bc972b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2D.java +++ b/asm/src/main/java/asm/attributes/code/instructions/F2D.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class F2D extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2I.java b/asm/src/main/java/asm/attributes/code/instructions/F2I.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2I.java rename to asm/src/main/java/asm/attributes/code/instructions/F2I.java index 69eed60b6..b4c49ffe0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2I.java +++ b/asm/src/main/java/asm/attributes/code/instructions/F2I.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class F2I extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2L.java b/asm/src/main/java/asm/attributes/code/instructions/F2L.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2L.java rename to asm/src/main/java/asm/attributes/code/instructions/F2L.java index 5a78a80e5..f9afd48d2 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/F2L.java +++ b/asm/src/main/java/asm/attributes/code/instructions/F2L.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class F2L extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FALoad.java b/asm/src/main/java/asm/attributes/code/instructions/FALoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/FALoad.java index 84f7ebe0e..5efb6c3fb 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class FALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAStore.java b/asm/src/main/java/asm/attributes/code/instructions/FAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/FAStore.java index b11cd04cc..718717552 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class FAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAdd.java b/asm/src/main/java/asm/attributes/code/instructions/FAdd.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAdd.java rename to asm/src/main/java/asm/attributes/code/instructions/FAdd.java index d258b20ea..458fbd6c1 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FAdd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FAdd.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.AdditionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.AdditionInstruction; +import asm.execution.*; public class FAdd extends Instruction implements AdditionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpG.java b/asm/src/main/java/asm/attributes/code/instructions/FCmpG.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpG.java rename to asm/src/main/java/asm/attributes/code/instructions/FCmpG.java index 2ca663cf7..16a17603f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpG.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FCmpG.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class FCmpG extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpL.java b/asm/src/main/java/asm/attributes/code/instructions/FCmpL.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpL.java rename to asm/src/main/java/asm/attributes/code/instructions/FCmpL.java index e4432ede6..9432b764d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FCmpL.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FCmpL.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class FCmpL extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FDiv.java b/asm/src/main/java/asm/attributes/code/instructions/FDiv.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FDiv.java rename to asm/src/main/java/asm/attributes/code/instructions/FDiv.java index de0e368dd..bab60e7fe 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FDiv.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FDiv.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DivisionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DivisionInstruction; +import asm.execution.*; public class FDiv extends Instruction implements DivisionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FLoad.java b/asm/src/main/java/asm/attributes/code/instructions/FLoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FLoad.java rename to asm/src/main/java/asm/attributes/code/instructions/FLoad.java index 708b06554..6a56c3b67 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FLoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FLoad.java @@ -23,20 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class FLoad extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FMul.java b/asm/src/main/java/asm/attributes/code/instructions/FMul.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FMul.java rename to asm/src/main/java/asm/attributes/code/instructions/FMul.java index 532c6fca8..46460026e 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FMul.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FMul.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class FMul extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FNeg.java b/asm/src/main/java/asm/attributes/code/instructions/FNeg.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FNeg.java rename to asm/src/main/java/asm/attributes/code/instructions/FNeg.java index f1aec63df..1a1dd8e3f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FNeg.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FNeg.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class FNeg extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FRem.java b/asm/src/main/java/asm/attributes/code/instructions/FRem.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FRem.java rename to asm/src/main/java/asm/attributes/code/instructions/FRem.java index 61c769809..32573402c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FRem.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FRem.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class FRem extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FStore.java b/asm/src/main/java/asm/attributes/code/instructions/FStore.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FStore.java rename to asm/src/main/java/asm/attributes/code/instructions/FStore.java index 5d7b35a4a..ea8fcdf36 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FStore.java @@ -23,19 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class FStore extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FSub.java b/asm/src/main/java/asm/attributes/code/instructions/FSub.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FSub.java rename to asm/src/main/java/asm/attributes/code/instructions/FSub.java index 33f467ed1..5ea0f693f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/FSub.java +++ b/asm/src/main/java/asm/attributes/code/instructions/FSub.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.SubtractionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.SubtractionInstruction; +import asm.execution.*; public class FSub extends Instruction implements SubtractionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetField.java b/asm/src/main/java/asm/attributes/code/instructions/GetField.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetField.java rename to asm/src/main/java/asm/attributes/code/instructions/GetField.java index 183159844..25fb3a484 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetField.java +++ b/asm/src/main/java/asm/attributes/code/instructions/GetField.java @@ -22,27 +22,23 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.execution.*; +import asm.pool.Class; +import asm.pool.Field; import org.objectweb.asm.MethodVisitor; public class GetField extends Instruction implements GetFieldInstruction { private Field field; - private net.runelite.asm.Field myField; + private asm.Field myField; public GetField(Instructions instructions, InstructionType type) { @@ -56,7 +52,7 @@ public GetField(Instructions instructions, Field field) this.field = field; } - public GetField(Instructions instructions, net.runelite.asm.Field field) + public GetField(Instructions instructions, asm.Field field) { super(instructions, InstructionType.GETFIELD); this.field = field.getPoolField(); @@ -109,9 +105,9 @@ public Field getField() } @Override - public net.runelite.asm.Field getMyField() + public asm.Field getMyField() { - Class clazz = field.getClazz(); + asm.pool.Class clazz = field.getClazz(); ClassFile cf = this.getInstructions().getCode().getMethod().getClassFile().getGroup().findClass(clazz.getName()); if (cf == null) @@ -119,7 +115,7 @@ public net.runelite.asm.Field getMyField() return null; } - net.runelite.asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); + asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); return f2; } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetStatic.java b/asm/src/main/java/asm/attributes/code/instructions/GetStatic.java similarity index 77% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetStatic.java rename to asm/src/main/java/asm/attributes/code/instructions/GetStatic.java index 4224223a5..d77d5c32f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GetStatic.java +++ b/asm/src/main/java/asm/attributes/code/instructions/GetStatic.java @@ -22,27 +22,23 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.execution.*; +import asm.pool.Class; +import asm.pool.Field; import org.objectweb.asm.MethodVisitor; public class GetStatic extends Instruction implements GetFieldInstruction { private Field field; - private net.runelite.asm.Field myField; + private asm.Field myField; public GetStatic(Instructions instructions, InstructionType type) { @@ -56,7 +52,7 @@ public GetStatic(Instructions instructions, Field field) this.field = field; } - public GetStatic(Instructions instructions, net.runelite.asm.Field field) + public GetStatic(Instructions instructions, asm.Field field) { super(instructions, InstructionType.GETSTATIC); this.field = field.getPoolField(); @@ -106,9 +102,9 @@ public Field getField() } @Override - public net.runelite.asm.Field getMyField() + public asm.Field getMyField() { - Class clazz = field.getClazz(); + asm.pool.Class clazz = field.getClazz(); ClassFile cf = this.getInstructions().getCode().getMethod().getClassFile().getGroup().findClass(clazz.getName()); if (cf == null) @@ -116,7 +112,7 @@ public net.runelite.asm.Field getMyField() return null; } - net.runelite.asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); + asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); return f2; } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Goto.java b/asm/src/main/java/asm/attributes/code/instructions/Goto.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Goto.java rename to asm/src/main/java/asm/attributes/code/instructions/Goto.java index f0db491ba..36912b666 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Goto.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Goto.java @@ -22,18 +22,19 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import org.objectweb.asm.MethodVisitor; import java.util.Collections; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import org.objectweb.asm.MethodVisitor; public class Goto extends Instruction implements JumpingInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GotoW.java b/asm/src/main/java/asm/attributes/code/instructions/GotoW.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GotoW.java rename to asm/src/main/java/asm/attributes/code/instructions/GotoW.java index ed2d590aa..68affe25d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/GotoW.java +++ b/asm/src/main/java/asm/attributes/code/instructions/GotoW.java @@ -22,18 +22,19 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import org.objectweb.asm.MethodVisitor; import java.util.Collections; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import org.objectweb.asm.MethodVisitor; public class GotoW extends Instruction implements JumpingInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2B.java b/asm/src/main/java/asm/attributes/code/instructions/I2B.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2B.java rename to asm/src/main/java/asm/attributes/code/instructions/I2B.java index 64c5e1f4d..8e299bd7c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2B.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2B.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2B extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2C.java b/asm/src/main/java/asm/attributes/code/instructions/I2C.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2C.java rename to asm/src/main/java/asm/attributes/code/instructions/I2C.java index 5549b52ff..2ea618cdd 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2C.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2C.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2C extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2D.java b/asm/src/main/java/asm/attributes/code/instructions/I2D.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2D.java rename to asm/src/main/java/asm/attributes/code/instructions/I2D.java index 042b21477..6ca2fb111 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2D.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2D.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2D extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2F.java b/asm/src/main/java/asm/attributes/code/instructions/I2F.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2F.java rename to asm/src/main/java/asm/attributes/code/instructions/I2F.java index 435c30e52..18b2ad237 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2F.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2F.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2F extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2L.java b/asm/src/main/java/asm/attributes/code/instructions/I2L.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2L.java rename to asm/src/main/java/asm/attributes/code/instructions/I2L.java index adfdf52fe..c84f47df8 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2L.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2L.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2L extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2S.java b/asm/src/main/java/asm/attributes/code/instructions/I2S.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2S.java rename to asm/src/main/java/asm/attributes/code/instructions/I2S.java index 930631d08..c8b77aded 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/I2S.java +++ b/asm/src/main/java/asm/attributes/code/instructions/I2S.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class I2S extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IALoad.java b/asm/src/main/java/asm/attributes/code/instructions/IALoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/IALoad.java index 5c4cf2807..739075459 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class IALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAStore.java b/asm/src/main/java/asm/attributes/code/instructions/IAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/IAStore.java index d23dd4d2b..06436ca78 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class IAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAdd.java b/asm/src/main/java/asm/attributes/code/instructions/IAdd.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAdd.java rename to asm/src/main/java/asm/attributes/code/instructions/IAdd.java index ac497bf93..ab8635aad 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAdd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IAdd.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.AdditionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.AdditionInstruction; +import asm.execution.*; public class IAdd extends Instruction implements AdditionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAnd.java b/asm/src/main/java/asm/attributes/code/instructions/IAnd.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAnd.java rename to asm/src/main/java/asm/attributes/code/instructions/IAnd.java index 6fc645a99..5a9ce7189 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IAnd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IAnd.java @@ -23,18 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import static net.runelite.asm.attributes.code.InstructionType.IAND; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; + +import static asm.attributes.code.InstructionType.IAND; public class IAnd extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IDiv.java b/asm/src/main/java/asm/attributes/code/instructions/IDiv.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IDiv.java rename to asm/src/main/java/asm/attributes/code/instructions/IDiv.java index 2248c23c9..37f009e26 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IDiv.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IDiv.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DivisionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DivisionInstruction; +import asm.execution.*; public class IDiv extends Instruction implements DivisionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IInc.java b/asm/src/main/java/asm/attributes/code/instructions/IInc.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IInc.java rename to asm/src/main/java/asm/attributes/code/instructions/IInc.java index a423effac..364571f87 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IInc.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IInc.java @@ -23,19 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class IInc extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ILoad.java b/asm/src/main/java/asm/attributes/code/instructions/ILoad.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ILoad.java rename to asm/src/main/java/asm/attributes/code/instructions/ILoad.java index 80305f4e0..8240c5de0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ILoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ILoad.java @@ -22,20 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +package asm.attributes.code.instructions; + +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class ILoad extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IMul.java b/asm/src/main/java/asm/attributes/code/instructions/IMul.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IMul.java rename to asm/src/main/java/asm/attributes/code/instructions/IMul.java index fbdba4dd2..7c1a5914f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IMul.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IMul.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IMul extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/INeg.java b/asm/src/main/java/asm/attributes/code/instructions/INeg.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/INeg.java rename to asm/src/main/java/asm/attributes/code/instructions/INeg.java index 58b597e42..e11c60b60 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/INeg.java +++ b/asm/src/main/java/asm/attributes/code/instructions/INeg.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class INeg extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IOr.java b/asm/src/main/java/asm/attributes/code/instructions/IOr.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IOr.java rename to asm/src/main/java/asm/attributes/code/instructions/IOr.java index 535cc0341..c56d35703 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IOr.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IOr.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IOr extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IRem.java b/asm/src/main/java/asm/attributes/code/instructions/IRem.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IRem.java rename to asm/src/main/java/asm/attributes/code/instructions/IRem.java index 6ad180a78..99286cdc7 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IRem.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IRem.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IRem extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShL.java b/asm/src/main/java/asm/attributes/code/instructions/IShL.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShL.java rename to asm/src/main/java/asm/attributes/code/instructions/IShL.java index 99ffbe9e0..b2c4b2ab5 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShL.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IShL.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IShL extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShR.java b/asm/src/main/java/asm/attributes/code/instructions/IShR.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShR.java rename to asm/src/main/java/asm/attributes/code/instructions/IShR.java index 72a41eefe..9e59ead08 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IShR.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IShR.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IShR extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IStore.java b/asm/src/main/java/asm/attributes/code/instructions/IStore.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IStore.java rename to asm/src/main/java/asm/attributes/code/instructions/IStore.java index 1e164f071..10482a0cb 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IStore.java @@ -22,19 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class IStore extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ISub.java b/asm/src/main/java/asm/attributes/code/instructions/ISub.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ISub.java rename to asm/src/main/java/asm/attributes/code/instructions/ISub.java index 8956c0da5..429ae1cbb 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/ISub.java +++ b/asm/src/main/java/asm/attributes/code/instructions/ISub.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.SubtractionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.SubtractionInstruction; +import asm.execution.*; public class ISub extends Instruction implements SubtractionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IUShR.java b/asm/src/main/java/asm/attributes/code/instructions/IUShR.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IUShR.java rename to asm/src/main/java/asm/attributes/code/instructions/IUShR.java index a70c062c2..e3413bc16 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IUShR.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IUShR.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IUShR extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IXor.java b/asm/src/main/java/asm/attributes/code/instructions/IXor.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IXor.java rename to asm/src/main/java/asm/attributes/code/instructions/IXor.java index fe976ae54..70735c957 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IXor.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IXor.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class IXor extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If.java b/asm/src/main/java/asm/attributes/code/instructions/If.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If.java rename to asm/src/main/java/asm/attributes/code/instructions/If.java index 483f9ef27..39a912c1b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If.java +++ b/asm/src/main/java/asm/attributes/code/instructions/If.java @@ -22,28 +22,25 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.*; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public abstract class If extends Instruction implements JumpingInstruction, ComparisonInstruction, MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If0.java b/asm/src/main/java/asm/attributes/code/instructions/If0.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If0.java rename to asm/src/main/java/asm/attributes/code/instructions/If0.java index d723d70fb..43b0f1b5c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/If0.java +++ b/asm/src/main/java/asm/attributes/code/instructions/If0.java @@ -23,26 +23,27 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.ComparisonInstruction; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.Collections; import java.util.List; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public abstract class If0 extends Instruction implements JumpingInstruction, ComparisonInstruction, MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpEq.java b/asm/src/main/java/asm/attributes/code/instructions/IfACmpEq.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpEq.java rename to asm/src/main/java/asm/attributes/code/instructions/IfACmpEq.java index b3dcfc92d..43c9cb6ca 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpEq.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfACmpEq.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; public class IfACmpEq extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpNe.java b/asm/src/main/java/asm/attributes/code/instructions/IfACmpNe.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpNe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfACmpNe.java index e84a9cb48..a48a0ed9b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfACmpNe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfACmpNe.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; public class IfACmpNe extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGe.java b/asm/src/main/java/asm/attributes/code/instructions/IfCmpGe.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfCmpGe.java index e95fc6371..7cd848ded 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfCmpGe.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfCmpGe extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGt.java b/asm/src/main/java/asm/attributes/code/instructions/IfCmpGt.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGt.java rename to asm/src/main/java/asm/attributes/code/instructions/IfCmpGt.java index 71ba0f154..2736630db 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpGt.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfCmpGt.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfCmpGt extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLe.java b/asm/src/main/java/asm/attributes/code/instructions/IfCmpLe.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfCmpLe.java index 42656a948..2ea93c910 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfCmpLe.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfCmpLe extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLt.java b/asm/src/main/java/asm/attributes/code/instructions/IfCmpLt.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLt.java rename to asm/src/main/java/asm/attributes/code/instructions/IfCmpLt.java index 9e0b6ae55..47bd7a892 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfCmpLt.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfCmpLt.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfCmpLt extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfEq.java b/asm/src/main/java/asm/attributes/code/instructions/IfEq.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfEq.java rename to asm/src/main/java/asm/attributes/code/instructions/IfEq.java index 928180fce..f1bcbe8cf 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfEq.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfEq.java @@ -23,16 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isOne; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isZero; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; + +import static asm.attributes.code.instructions.IfICmpEq.isOne; +import static asm.attributes.code.instructions.IfICmpEq.isZero; public class IfEq extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGe.java b/asm/src/main/java/asm/attributes/code/instructions/IfGe.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfGe.java index bde0d29c9..5e6f4fa0e 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfGe.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfGe extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGt.java b/asm/src/main/java/asm/attributes/code/instructions/IfGt.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGt.java rename to asm/src/main/java/asm/attributes/code/instructions/IfGt.java index a44d0acef..f571037f4 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfGt.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfGt.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfGt extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpEq.java b/asm/src/main/java/asm/attributes/code/instructions/IfICmpEq.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpEq.java rename to asm/src/main/java/asm/attributes/code/instructions/IfICmpEq.java index 8c76ab358..da29f0cce 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpEq.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfICmpEq.java @@ -22,16 +22,16 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.ComparisonInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; public class IfICmpEq extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpNe.java b/asm/src/main/java/asm/attributes/code/instructions/IfICmpNe.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpNe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfICmpNe.java index 2b45dbd4d..b5a98da29 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfICmpNe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfICmpNe.java @@ -22,17 +22,18 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isOne; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isZero; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.ComparisonInstruction; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; + +import static asm.attributes.code.instructions.IfICmpEq.isOne; +import static asm.attributes.code.instructions.IfICmpEq.isZero; public class IfICmpNe extends If { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLe.java b/asm/src/main/java/asm/attributes/code/instructions/IfLe.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfLe.java index dbe64c910..838a1d7e9 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfLe.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfLe extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLt.java b/asm/src/main/java/asm/attributes/code/instructions/IfLt.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLt.java rename to asm/src/main/java/asm/attributes/code/instructions/IfLt.java index d1c6c90fa..735bd5acd 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfLt.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfLt.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.mapping.ParallelExecutorMapping; public class IfLt extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNe.java b/asm/src/main/java/asm/attributes/code/instructions/IfNe.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNe.java rename to asm/src/main/java/asm/attributes/code/instructions/IfNe.java index 9001b554b..aa978ab30 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNe.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfNe.java @@ -23,16 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isOne; -import static net.runelite.asm.attributes.code.instructions.IfICmpEq.isZero; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; + +import static asm.attributes.code.instructions.IfICmpEq.isOne; +import static asm.attributes.code.instructions.IfICmpEq.isZero; public class IfNe extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNonNull.java b/asm/src/main/java/asm/attributes/code/instructions/IfNonNull.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNonNull.java rename to asm/src/main/java/asm/attributes/code/instructions/IfNonNull.java index 7f47d550e..1b7dbc42c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNonNull.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfNonNull.java @@ -23,13 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; public class IfNonNull extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNull.java b/asm/src/main/java/asm/attributes/code/instructions/IfNull.java similarity index 88% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNull.java rename to asm/src/main/java/asm/attributes/code/instructions/IfNull.java index 92f48ec4b..6d07a6498 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/IfNull.java +++ b/asm/src/main/java/asm/attributes/code/instructions/IfNull.java @@ -23,13 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; public class IfNull extends If0 { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InstanceOf.java b/asm/src/main/java/asm/attributes/code/instructions/InstanceOf.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InstanceOf.java rename to asm/src/main/java/asm/attributes/code/instructions/InstanceOf.java index a7053b68a..d7b3452f2 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InstanceOf.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InstanceOf.java @@ -22,20 +22,16 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.TypeInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.TypeInstruction; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class InstanceOf extends Instruction implements TypeInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeDynamic.java b/asm/src/main/java/asm/attributes/code/instructions/InvokeDynamic.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeDynamic.java rename to asm/src/main/java/asm/attributes/code/instructions/InvokeDynamic.java index d191be179..94a581d1f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeDynamic.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InvokeDynamic.java @@ -22,21 +22,22 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import java.util.Collections; -import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.pool.Method; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.pool.Method; +import asm.mapping.ParallelExecutorMapping; import org.objectweb.asm.Handle; import org.objectweb.asm.MethodVisitor; +import java.util.Collections; +import java.util.List; + public class InvokeDynamic extends Instruction implements InvokeInstruction { private String name; @@ -67,7 +68,7 @@ public void accept(MethodVisitor visitor) @Override @SuppressWarnings("unchecked") - public List getMethods() + public List getMethods() { return Collections.EMPTY_LIST; } diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeInterface.java b/asm/src/main/java/asm/attributes/code/instructions/InvokeInterface.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeInterface.java rename to asm/src/main/java/asm/attributes/code/instructions/InvokeInterface.java index 3383653de..1f93fab17 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeInterface.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InvokeInterface.java @@ -22,35 +22,31 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.execution.*; +import asm.pool.Method; +import asm.signature.Signature; +import asm.signature.util.VirtualMethods; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.Arrays; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.asm.signature.util.VirtualMethods; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public class InvokeInterface extends Instruction implements InvokeInstruction { private Method method; - private List myMethods; + private List myMethods; public InvokeInterface(Instructions instructions, InstructionType type) { @@ -80,7 +76,7 @@ public void accept(MethodVisitor visitor) } @Override - public List getMethods() + public List getMethods() { return myMethods != null ? myMethods : Arrays.asList(); } @@ -113,7 +109,7 @@ public InstructionContext execute(Frame frame) ins.push(ctx); } - for (net.runelite.asm.Method method : getMethods()) + for (asm.Method method : getMethods()) { ins.invoke(method); @@ -129,7 +125,7 @@ public InstructionContext execute(Frame frame) if (myMethods != null) { - for (net.runelite.asm.Method method : myMethods) + for (asm.Method method : myMethods) { frame.getExecution().order(frame, method); } @@ -141,7 +137,7 @@ public InstructionContext execute(Frame frame) @Override public void removeParameter(int idx) { - net.runelite.asm.pool.Class clazz = method.getClazz(); + asm.pool.Class clazz = method.getClazz(); // create new signature Signature sig = new Signature(method.getType()); @@ -157,7 +153,7 @@ public Method getMethod() return method; } - private List lookupMethods() + private List lookupMethods() { ClassGroup group = this.getInstructions().getCode().getMethod().getClassFile().getGroup(); @@ -166,7 +162,7 @@ private List lookupMethods() { return null; // not our class } - net.runelite.asm.Method m = otherClass.findMethod(method.getName(), method.getType()); + asm.Method m = otherClass.findMethod(method.getName(), method.getType()); if (m == null) { return null; @@ -198,14 +194,14 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc { InvokeInterface otherIv = (InvokeInterface) other.getInstruction(); - List myMethods = this.getMethods(), + List myMethods = this.getMethods(), otherMethods = otherIv.getMethods(); assert myMethods.size() == otherMethods.size(); for (int i = 0; i < myMethods.size(); ++i) { - net.runelite.asm.Method m1 = myMethods.get(i), otherMethod = null; + asm.Method m1 = myMethods.get(i), otherMethod = null; ClassFile c1 = m1.getClassFile(); if (myMethods.size() == 1) @@ -216,7 +212,7 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc { for (int j = 0; j < myMethods.size(); ++j) { - net.runelite.asm.Method m2 = otherMethods.get(j); + asm.Method m2 = otherMethods.get(j); ClassFile c2 = m2.getClassFile(); if (MappingExecutorUtil.isMaybeEqual(c1, c2)) @@ -299,7 +295,7 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) return false; } - List thisMethods = thisIi.getMethods(), + List thisMethods = thisIi.getMethods(), otherMethods = otherIi.getMethods(); if (thisMethods.size() != otherMethods.size()) @@ -309,8 +305,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) for (int i = 0; i < thisMethods.size(); ++i) { - net.runelite.asm.Method m1 = thisMethods.get(i); - net.runelite.asm.Method m2 = otherMethods.get(i); + asm.Method m1 = thisMethods.get(i); + asm.Method m2 = otherMethods.get(i); if (!MappingExecutorUtil.isMaybeEqual(m1.getDescriptor(), m2.getDescriptor())) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeSpecial.java b/asm/src/main/java/asm/attributes/code/instructions/InvokeSpecial.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeSpecial.java rename to asm/src/main/java/asm/attributes/code/instructions/InvokeSpecial.java index 76c7c6bcf..d089930f3 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeSpecial.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InvokeSpecial.java @@ -22,35 +22,31 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.execution.*; +import asm.pool.Method; +import asm.signature.Signature; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.Arrays; import java.util.Collections; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public class InvokeSpecial extends Instruction implements InvokeInstruction { private Method method; - private net.runelite.asm.Method myMethod; + private asm.Method myMethod; public InvokeSpecial(Instructions instructions, InstructionType type) { @@ -64,7 +60,7 @@ public InvokeSpecial(Instructions instructions, Method method) this.method = method; } - public InvokeSpecial(Instructions instructions, net.runelite.asm.Method method) + public InvokeSpecial(Instructions instructions, asm.Method method) { super(instructions, InstructionType.INVOKESPECIAL); this.method = method.getPoolMethod(); @@ -83,7 +79,7 @@ public void accept(MethodVisitor visitor) @Override @SuppressWarnings("unchecked") - public List getMethods() + public List getMethods() { return myMethod != null ? Arrays.asList(myMethod) : Collections.EMPTY_LIST; } @@ -141,7 +137,7 @@ public String toString() @Override public void removeParameter(int idx) { - net.runelite.asm.pool.Class clazz = method.getClazz(); + asm.pool.Class clazz = method.getClazz(); // create new signature Signature sig = new Signature(method.getType()); @@ -175,7 +171,7 @@ public void lookup() return; // not our class } - net.runelite.asm.Method other = otherClass.findMethod(method.getName(), method.getType()); + asm.Method other = otherClass.findMethod(method.getName(), method.getType()); if (other == null) { return; @@ -198,7 +194,7 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc { InvokeSpecial otherIv = (InvokeSpecial) other.getInstruction(); - List myMethods = this.getMethods(), + List myMethods = this.getMethods(), otherMethods = otherIv.getMethods(); assert myMethods.size() == otherMethods.size(); @@ -269,7 +265,7 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) return false; } - List thisMethods = thisIi.getMethods(), + List thisMethods = thisIi.getMethods(), otherMethods = otherIi.getMethods(); if (thisMethods.size() != otherMethods.size()) @@ -279,8 +275,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) for (int i = 0; i < thisMethods.size(); ++i) { - net.runelite.asm.Method m1 = thisMethods.get(i); - net.runelite.asm.Method m2 = otherMethods.get(i); + asm.Method m1 = thisMethods.get(i); + asm.Method m2 = otherMethods.get(i); if (!MappingExecutorUtil.isMaybeEqual(m1.getClassFile(), m2.getClassFile())) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeStatic.java b/asm/src/main/java/asm/attributes/code/instructions/InvokeStatic.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeStatic.java rename to asm/src/main/java/asm/attributes/code/instructions/InvokeStatic.java index 60e824c6a..8d02e903f 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeStatic.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InvokeStatic.java @@ -22,35 +22,32 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.execution.*; +import asm.pool.Method; +import asm.signature.Signature; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.Collections; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import static net.runelite.asm.execution.StaticStep.stepInto; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; + +import static asm.execution.StaticStep.stepInto; public class InvokeStatic extends Instruction implements InvokeInstruction { private Method method; - private net.runelite.asm.Method myMethod; + private asm.Method myMethod; public InvokeStatic(Instructions instructions, InstructionType type) { @@ -64,7 +61,7 @@ public InvokeStatic(Instructions instructions, Method method) this.method = method; } - public InvokeStatic(Instructions instructions, net.runelite.asm.Method method) + public InvokeStatic(Instructions instructions, asm.Method method) { super(instructions, InstructionType.INVOKESTATIC); this.method = method.getPoolMethod(); @@ -89,7 +86,7 @@ public String toString() @Override @SuppressWarnings("unchecked") - public List getMethods() + public List getMethods() { return myMethod != null ? Collections.singletonList(myMethod) : Collections.EMPTY_LIST; } @@ -158,7 +155,7 @@ public InstructionContext execute(Frame frame) @Override public void removeParameter(int idx) { - net.runelite.asm.pool.Class clazz = method.getClazz(); + asm.pool.Class clazz = method.getClazz(); // create new signature Signature sig = new Signature(method.getType()); @@ -174,7 +171,7 @@ public Method getMethod() return method; } - private net.runelite.asm.Method lookupMethod() + private asm.Method lookupMethod() { ClassGroup group = this.getInstructions().getCode().getMethod().getClassFile().getGroup(); @@ -183,7 +180,7 @@ private net.runelite.asm.Method lookupMethod() { return null; // not our class } - net.runelite.asm.Method other = otherClass.findMethodDeepStatic(method.getName(), method.getType()); + asm.Method other = otherClass.findMethodDeepStatic(method.getName(), method.getType()); if (other == null) { return null; // when regenerating the pool after renaming the method this can be null. @@ -212,7 +209,7 @@ public void regeneratePool() @Override public void map(ParallelExecutorMapping mapping, InstructionContext ctx, InstructionContext other) { - List myMethods = this.getMethods(), + List myMethods = this.getMethods(), otherMethods = ((InvokeStatic) other.getInstruction()).getMethods(); assert myMethods.size() == otherMethods.size(); @@ -262,7 +259,7 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) return false; } - List thisMethods = thisIi.getMethods(), + List thisMethods = thisIi.getMethods(), otherMethods = otherIi.getMethods(); if (thisMethods.size() != otherMethods.size()) @@ -272,8 +269,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) for (int i = 0; i < thisMethods.size(); ++i) { - net.runelite.asm.Method m1 = thisMethods.get(i); - net.runelite.asm.Method m2 = otherMethods.get(i); + asm.Method m1 = thisMethods.get(i); + asm.Method m2 = otherMethods.get(i); /* The class names are random */ if (!MappingExecutorUtil.isMaybeEqual(m1.getDescriptor(), m2.getDescriptor())) diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeVirtual.java b/asm/src/main/java/asm/attributes/code/instructions/InvokeVirtual.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeVirtual.java rename to asm/src/main/java/asm/attributes/code/instructions/InvokeVirtual.java index 7cae2483f..8088a4d6a 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/InvokeVirtual.java +++ b/asm/src/main/java/asm/attributes/code/instructions/InvokeVirtual.java @@ -22,37 +22,33 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.execution.*; +import asm.pool.Class; +import asm.pool.Method; +import asm.signature.Signature; +import asm.signature.util.VirtualMethods; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.Arrays; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.asm.signature.util.VirtualMethods; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public class InvokeVirtual extends Instruction implements InvokeInstruction { private Method method; - private net.runelite.asm.Method myMethod; - private List myMethods; + private asm.Method myMethod; + private List myMethods; public InvokeVirtual(Instructions instructions, InstructionType type) { @@ -66,7 +62,7 @@ public InvokeVirtual(Instructions instructions, Method method) this.method = method; } - public InvokeVirtual(Instructions instructions, net.runelite.asm.Method method) + public InvokeVirtual(Instructions instructions, asm.Method method) { super(instructions, InstructionType.INVOKEVIRTUAL); this.method = method.getPoolMethod(); @@ -117,7 +113,7 @@ public InstructionContext execute(Frame frame) ins.push(ctx); } - for (net.runelite.asm.Method method : getMethods()) + for (asm.Method method : getMethods()) { ins.invoke(method); @@ -133,7 +129,7 @@ public InstructionContext execute(Frame frame) if (myMethods != null) { - for (net.runelite.asm.Method method : myMethods) + for (asm.Method method : myMethods) { frame.getExecution().order(frame, method); } @@ -143,7 +139,7 @@ public InstructionContext execute(Frame frame) } @Override - public List getMethods() + public List getMethods() { return myMethods != null ? myMethods : Arrays.asList(); } @@ -151,7 +147,7 @@ public List getMethods() @Override public void removeParameter(int idx) { - net.runelite.asm.pool.Class clazz = method.getClazz(); + asm.pool.Class clazz = method.getClazz(); // create new signature Signature sig = new Signature(method.getType()); @@ -167,9 +163,9 @@ public Method getMethod() return method; } - private List lookupMethods() + private List lookupMethods() { - net.runelite.asm.Method m = lookupMethod(); + asm.Method m = lookupMethod(); if (m == null) { return null; @@ -178,7 +174,7 @@ private List lookupMethods() return VirtualMethods.getVirtualMethods(m); } - private net.runelite.asm.Method lookupMethod() + private asm.Method lookupMethod() { ClassGroup group = this.getInstructions().getCode().getMethod().getClassFile().getGroup(); @@ -188,7 +184,7 @@ private net.runelite.asm.Method lookupMethod() return null; // not our class } - net.runelite.asm.Method m = otherClass.findMethodDeep(method.getName(), method.getType()); + asm.Method m = otherClass.findMethodDeep(method.getName(), method.getType()); return m; } @@ -215,7 +211,7 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc { InvokeVirtual otherIv = (InvokeVirtual) other.getInstruction(); - List myMethods = this.getMethods(), + List myMethods = this.getMethods(), otherMethods = otherIv.getMethods(); assert MappingExecutorUtil.isMaybeEqual(method.getType(), otherIv.method.getType()); @@ -223,7 +219,7 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc for (int i = 0; i < myMethods.size(); ++i) { - net.runelite.asm.Method m1 = myMethods.get(i), otherMethod = null; + asm.Method m1 = myMethods.get(i), otherMethod = null; ClassFile c1 = m1.getClassFile(); if (myMethods.size() == 1) @@ -234,7 +230,7 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc { for (int j = 0; j < myMethods.size(); ++j) { - net.runelite.asm.Method m2 = otherMethods.get(j); + asm.Method m2 = otherMethods.get(j); ClassFile c2 = m2.getClassFile(); if (MappingExecutorUtil.isMaybeEqual(c1, c2)) @@ -320,7 +316,7 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) return false; } - List thisMethods = thisIi.getMethods(), + List thisMethods = thisIi.getMethods(), otherMethods = otherIi.getMethods(); if (thisMethods.size() != otherMethods.size()) @@ -330,8 +326,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) for (int i = 0; i < thisMethods.size(); ++i) { - net.runelite.asm.Method m1 = thisMethods.get(i); - net.runelite.asm.Method m2 = otherMethods.get(i); + asm.Method m1 = thisMethods.get(i); + asm.Method m2 = otherMethods.get(i); // order of methods in thisMethods/otherMethods depends on order classes // were loaded, which might not be the same diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2D.java b/asm/src/main/java/asm/attributes/code/instructions/L2D.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2D.java rename to asm/src/main/java/asm/attributes/code/instructions/L2D.java index 6a7d554f9..41a98e782 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2D.java +++ b/asm/src/main/java/asm/attributes/code/instructions/L2D.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class L2D extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2F.java b/asm/src/main/java/asm/attributes/code/instructions/L2F.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2F.java rename to asm/src/main/java/asm/attributes/code/instructions/L2F.java index aaa1f3434..88ba40e55 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2F.java +++ b/asm/src/main/java/asm/attributes/code/instructions/L2F.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class L2F extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2I.java b/asm/src/main/java/asm/attributes/code/instructions/L2I.java similarity index 78% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2I.java rename to asm/src/main/java/asm/attributes/code/instructions/L2I.java index 1997e8ab1..fc8324882 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/L2I.java +++ b/asm/src/main/java/asm/attributes/code/instructions/L2I.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class L2I extends Instruction implements ConversionInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LALoad.java b/asm/src/main/java/asm/attributes/code/instructions/LALoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/LALoad.java index db031f271..a41bca7ac 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class LALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAStore.java b/asm/src/main/java/asm/attributes/code/instructions/LAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/LAStore.java index 827255575..79d3fde29 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class LAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAdd.java b/asm/src/main/java/asm/attributes/code/instructions/LAdd.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAdd.java rename to asm/src/main/java/asm/attributes/code/instructions/LAdd.java index cf00f99b2..40e135e03 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAdd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LAdd.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.AdditionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.AdditionInstruction; +import asm.execution.*; public class LAdd extends Instruction implements AdditionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAnd.java b/asm/src/main/java/asm/attributes/code/instructions/LAnd.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAnd.java rename to asm/src/main/java/asm/attributes/code/instructions/LAnd.java index aae069eb7..5ad1ec745 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LAnd.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LAnd.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LAnd extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LCmp.java b/asm/src/main/java/asm/attributes/code/instructions/LCmp.java similarity index 83% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LCmp.java rename to asm/src/main/java/asm/attributes/code/instructions/LCmp.java index 8b03ef6f1..6f5ac3a11 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LCmp.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LCmp.java @@ -22,24 +22,21 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.Field; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.execution.*; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.Field; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; public class LCmp extends Instruction implements MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDC.java b/asm/src/main/java/asm/attributes/code/instructions/LDC.java similarity index 72% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDC.java rename to asm/src/main/java/asm/attributes/code/instructions/LDC.java index 151f3c18e..c67355383 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDC.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LDC.java @@ -22,34 +22,18 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Class; +package asm.attributes.code.instructions; + +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.execution.*; +import asm.pool.Class; import org.objectweb.asm.MethodVisitor; -import static org.objectweb.asm.Opcodes.DCONST_0; -import static org.objectweb.asm.Opcodes.DCONST_1; -import static org.objectweb.asm.Opcodes.FCONST_0; -import static org.objectweb.asm.Opcodes.FCONST_1; -import static org.objectweb.asm.Opcodes.FCONST_2; -import static org.objectweb.asm.Opcodes.ICONST_0; -import static org.objectweb.asm.Opcodes.ICONST_1; -import static org.objectweb.asm.Opcodes.ICONST_2; -import static org.objectweb.asm.Opcodes.ICONST_3; -import static org.objectweb.asm.Opcodes.ICONST_4; -import static org.objectweb.asm.Opcodes.ICONST_5; -import static org.objectweb.asm.Opcodes.ICONST_M1; -import static org.objectweb.asm.Opcodes.LCONST_0; -import static org.objectweb.asm.Opcodes.LCONST_1; + +import static org.objectweb.asm.Opcodes.*; public class LDC extends Instruction implements PushConstantInstruction { @@ -66,9 +50,9 @@ public LDC(Instructions instructions, Object value) public void accept(MethodVisitor visitor) { Object object = getConstant(); - if (object instanceof net.runelite.asm.pool.Class) + if (object instanceof asm.pool.Class) { - net.runelite.asm.pool.Class cl = (net.runelite.asm.pool.Class) object; + asm.pool.Class cl = (asm.pool.Class) object; org.objectweb.asm.Type type = org.objectweb.asm.Type.getType("L" + cl.getName() + ";"); visitor.visitLdcInsn(type); } @@ -187,7 +171,7 @@ public Number getNumber() public void renameClass(String oldName, String newName) { Object object = getConstant(); - if (object instanceof net.runelite.asm.pool.Class) + if (object instanceof asm.pool.Class) { if (((Class) object).getName().equals(oldName)) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDiv.java b/asm/src/main/java/asm/attributes/code/instructions/LDiv.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDiv.java rename to asm/src/main/java/asm/attributes/code/instructions/LDiv.java index 29008a9a1..4705b374c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LDiv.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LDiv.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DivisionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DivisionInstruction; +import asm.execution.*; public class LDiv extends Instruction implements DivisionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LLoad.java b/asm/src/main/java/asm/attributes/code/instructions/LLoad.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LLoad.java rename to asm/src/main/java/asm/attributes/code/instructions/LLoad.java index 4b665705c..e3d0637f5 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LLoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LLoad.java @@ -23,20 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class LLoad extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LMul.java b/asm/src/main/java/asm/attributes/code/instructions/LMul.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LMul.java rename to asm/src/main/java/asm/attributes/code/instructions/LMul.java index 676b1bd0a..2df26ffe4 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LMul.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LMul.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LMul extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LNeg.java b/asm/src/main/java/asm/attributes/code/instructions/LNeg.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LNeg.java rename to asm/src/main/java/asm/attributes/code/instructions/LNeg.java index 7e5f68eaf..59c7b9dec 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LNeg.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LNeg.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LNeg extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LOr.java b/asm/src/main/java/asm/attributes/code/instructions/LOr.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LOr.java rename to asm/src/main/java/asm/attributes/code/instructions/LOr.java index d4e304f85..5846b2b31 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LOr.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LOr.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LOr extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LRem.java b/asm/src/main/java/asm/attributes/code/instructions/LRem.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LRem.java rename to asm/src/main/java/asm/attributes/code/instructions/LRem.java index a99bdf4ba..6296b95ff 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LRem.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LRem.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LRem extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShL.java b/asm/src/main/java/asm/attributes/code/instructions/LShL.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShL.java rename to asm/src/main/java/asm/attributes/code/instructions/LShL.java index 5246f9512..7f491726e 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShL.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LShL.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LShL extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShR.java b/asm/src/main/java/asm/attributes/code/instructions/LShR.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShR.java rename to asm/src/main/java/asm/attributes/code/instructions/LShR.java index 67dc075dd..7474909ea 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LShR.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LShR.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LShR extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LStore.java b/asm/src/main/java/asm/attributes/code/instructions/LStore.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LStore.java rename to asm/src/main/java/asm/attributes/code/instructions/LStore.java index 41df1f245..11f56ae56 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LStore.java @@ -23,20 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.LVTInstructionType; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class LStore extends Instruction implements LVTInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LSub.java b/asm/src/main/java/asm/attributes/code/instructions/LSub.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LSub.java rename to asm/src/main/java/asm/attributes/code/instructions/LSub.java index 1ff4db85d..c3c959bf8 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LSub.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LSub.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.SubtractionInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.SubtractionInstruction; +import asm.execution.*; public class LSub extends Instruction implements SubtractionInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LUShR.java b/asm/src/main/java/asm/attributes/code/instructions/LUShR.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LUShR.java rename to asm/src/main/java/asm/attributes/code/instructions/LUShR.java index 97a1132b4..90062dcc3 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LUShR.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LUShR.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LUShR extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LXor.java b/asm/src/main/java/asm/attributes/code/instructions/LXor.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LXor.java rename to asm/src/main/java/asm/attributes/code/instructions/LXor.java index c6a131720..4dafa352b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LXor.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LXor.java @@ -23,17 +23,13 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; public class LXor extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LookupSwitch.java b/asm/src/main/java/asm/attributes/code/instructions/LookupSwitch.java similarity index 87% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LookupSwitch.java rename to asm/src/main/java/asm/attributes/code/instructions/LookupSwitch.java index 4a5300a57..9320a4da6 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/LookupSwitch.java +++ b/asm/src/main/java/asm/attributes/code/instructions/LookupSwitch.java @@ -22,21 +22,22 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import org.objectweb.asm.MethodVisitor; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import org.objectweb.asm.MethodVisitor; public class LookupSwitch extends Instruction implements JumpingInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorEnter.java b/asm/src/main/java/asm/attributes/code/instructions/MonitorEnter.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorEnter.java rename to asm/src/main/java/asm/attributes/code/instructions/MonitorEnter.java index 999b31432..15c050fae 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorEnter.java +++ b/asm/src/main/java/asm/attributes/code/instructions/MonitorEnter.java @@ -23,15 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class MonitorEnter extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorExit.java b/asm/src/main/java/asm/attributes/code/instructions/MonitorExit.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorExit.java rename to asm/src/main/java/asm/attributes/code/instructions/MonitorExit.java index 4ead4595d..b159fdbe2 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MonitorExit.java +++ b/asm/src/main/java/asm/attributes/code/instructions/MonitorExit.java @@ -23,15 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class MonitorExit extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MultiANewArray.java b/asm/src/main/java/asm/attributes/code/instructions/MultiANewArray.java similarity index 83% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MultiANewArray.java rename to asm/src/main/java/asm/attributes/code/instructions/MultiANewArray.java index 4ab071c5b..238db4b47 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/MultiANewArray.java +++ b/asm/src/main/java/asm/attributes/code/instructions/MultiANewArray.java @@ -22,19 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class MultiANewArray extends Instruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NOP.java b/asm/src/main/java/asm/attributes/code/instructions/NOP.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NOP.java rename to asm/src/main/java/asm/attributes/code/instructions/NOP.java index 21fa7e6fe..a6c9390ab 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NOP.java +++ b/asm/src/main/java/asm/attributes/code/instructions/NOP.java @@ -22,13 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; import org.objectweb.asm.MethodVisitor; public class NOP extends Instruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/New.java b/asm/src/main/java/asm/attributes/code/instructions/New.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/New.java rename to asm/src/main/java/asm/attributes/code/instructions/New.java index 5a0284ea2..00225f6d0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/New.java +++ b/asm/src/main/java/asm/attributes/code/instructions/New.java @@ -23,21 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.TypeInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; -import net.runelite.asm.pool.Class; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.TypeInstruction; +import asm.execution.*; +import asm.pool.Class; import org.objectweb.asm.MethodVisitor; public class New extends Instruction implements TypeInstruction @@ -56,7 +52,7 @@ public New(Instructions instructions, Class clazz) this.clazz = clazz; } - public New(Instructions instructions, net.runelite.asm.ClassFile classFile) + public New(Instructions instructions, asm.ClassFile classFile) { super(instructions, InstructionType.NEW); this.clazz = classFile.getPoolClass(); diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NewArray.java b/asm/src/main/java/asm/attributes/code/instructions/NewArray.java similarity index 83% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NewArray.java rename to asm/src/main/java/asm/attributes/code/instructions/NewArray.java index eb227d923..cd9b132d1 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/NewArray.java +++ b/asm/src/main/java/asm/attributes/code/instructions/NewArray.java @@ -23,18 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.IntInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.IntInstruction; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class NewArray extends Instruction implements IntInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop.java b/asm/src/main/java/asm/attributes/code/instructions/Pop.java similarity index 83% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop.java rename to asm/src/main/java/asm/attributes/code/instructions/Pop.java index 0b5e1fbec..02820ffa0 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Pop.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.StackContext; public class Pop extends Instruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop2.java b/asm/src/main/java/asm/attributes/code/instructions/Pop2.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop2.java rename to asm/src/main/java/asm/attributes/code/instructions/Pop2.java index 66556a5d1..31021ecdc 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Pop2.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Pop2.java @@ -23,15 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class Pop2 extends Instruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutField.java b/asm/src/main/java/asm/attributes/code/instructions/PutField.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutField.java rename to asm/src/main/java/asm/attributes/code/instructions/PutField.java index e548cfe1d..8aa0f7f9b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutField.java +++ b/asm/src/main/java/asm/attributes/code/instructions/PutField.java @@ -22,31 +22,31 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.pool.Class; +import asm.pool.Field; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; import org.objectweb.asm.MethodVisitor; public class PutField extends Instruction implements SetFieldInstruction { private Field field; - private net.runelite.asm.Field myField; + private asm.Field myField; public PutField(Instructions instructions, InstructionType type) { @@ -59,7 +59,7 @@ public PutField(Instructions instructions, Field field) this.field = field; } - public PutField(Instructions instructions, net.runelite.asm.Field field) + public PutField(Instructions instructions, asm.Field field) { super(instructions, InstructionType.PUTFIELD); this.field = field.getPoolField(); @@ -107,9 +107,9 @@ public Field getField() } @Override - public net.runelite.asm.Field getMyField() + public asm.Field getMyField() { - Class clazz = field.getClazz(); + asm.pool.Class clazz = field.getClazz(); ClassGroup group = this.getInstructions().getCode().getMethod().getClassFile().getGroup(); ClassFile cf = group.findClass(clazz.getName()); @@ -118,7 +118,7 @@ public net.runelite.asm.Field getMyField() return null; } - net.runelite.asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); + asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); return f2; } @@ -143,8 +143,8 @@ public void regeneratePool() @Override public void map(ParallelExecutorMapping mapping, InstructionContext ctx, InstructionContext other) { - net.runelite.asm.Field myField = this.getMyField(); - net.runelite.asm.Field otherField = ((PutField) other.getInstruction()).getMyField(); + asm.Field myField = this.getMyField(); + asm.Field otherField = ((PutField) other.getInstruction()).getMyField(); assert MappingExecutorUtil.isMaybeEqual(myField.getType(), otherField.getType()); @@ -176,8 +176,8 @@ private void mapGetFieldInstructrions(ParallelExecutorMapping mapping, Instructi GetFieldInstruction gf1 = (GetFieldInstruction) base1.getInstruction(), gf2 = (GetFieldInstruction) base2.getInstruction(); - net.runelite.asm.Field f1 = gf1.getMyField(); - net.runelite.asm.Field f2 = gf2.getMyField(); + asm.Field f1 = gf1.getMyField(); + asm.Field f2 = gf2.getMyField(); if (f1 != null && f2 != null) { @@ -193,8 +193,8 @@ private boolean isMaybeEqual(InstructionContext base1, InstructionContext base2) GetFieldInstruction gf1 = (GetFieldInstruction) base1.getInstruction(), gf2 = (GetFieldInstruction) base2.getInstruction(); - net.runelite.asm.Field f1 = gf1.getMyField(); - net.runelite.asm.Field f2 = gf2.getMyField(); + asm.Field f1 = gf1.getMyField(); + asm.Field f2 = gf2.getMyField(); return MappingExecutorUtil.isMaybeEqual(f1, f2); } @@ -213,8 +213,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) PutField thisPf = (PutField) thisIc.getInstruction(), otherPf = (PutField) otherIc.getInstruction(); - net.runelite.asm.Field f1 = thisPf.getMyField(); - net.runelite.asm.Field f2 = otherPf.getMyField(); + asm.Field f1 = thisPf.getMyField(); + asm.Field f2 = otherPf.getMyField(); if ((f1 != null) != (f2 != null)) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutStatic.java b/asm/src/main/java/asm/attributes/code/instructions/PutStatic.java similarity index 75% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutStatic.java rename to asm/src/main/java/asm/attributes/code/instructions/PutStatic.java index 9588db5b2..780904ffd 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/PutStatic.java +++ b/asm/src/main/java/asm/attributes/code/instructions/PutStatic.java @@ -22,30 +22,29 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.attributes.code.instructions; + +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.pool.Field; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; import org.objectweb.asm.MethodVisitor; public class PutStatic extends Instruction implements SetFieldInstruction { private Field field; - private net.runelite.asm.Field myField; + private asm.Field myField; public PutStatic(Instructions instructions, InstructionType type) { @@ -58,7 +57,7 @@ public PutStatic(Instructions instructions, Field field) this.field = field; } - public PutStatic(Instructions instructions, net.runelite.asm.Field field) + public PutStatic(Instructions instructions, asm.Field field) { super(instructions, InstructionType.PUTSTATIC); this.field = field.getPoolField(); @@ -105,9 +104,9 @@ public Field getField() } @Override - public net.runelite.asm.Field getMyField() + public asm.Field getMyField() { - Class clazz = field.getClazz(); + asm.pool.Class clazz = field.getClazz(); ClassGroup group = this.getInstructions().getCode().getMethod().getClassFile().getGroup(); ClassFile cf = group.findClass(clazz.getName()); @@ -116,7 +115,7 @@ public net.runelite.asm.Field getMyField() return null; } - net.runelite.asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); + asm.Field f2 = cf.findFieldDeep(field.getName(), field.getType()); return f2; } @@ -141,8 +140,8 @@ public void regeneratePool() @Override public void map(ParallelExecutorMapping mapping, InstructionContext ctx, InstructionContext other) { - net.runelite.asm.Field myField = this.getMyField(); - net.runelite.asm.Field otherField = ((PutStatic) other.getInstruction()).getMyField(); + asm.Field myField = this.getMyField(); + asm.Field otherField = ((PutStatic) other.getInstruction()).getMyField(); assert MappingExecutorUtil.isMaybeEqual(myField.getType(), otherField.getType()); @@ -159,8 +158,8 @@ public void map(ParallelExecutorMapping mapping, InstructionContext ctx, Instruc GetFieldInstruction gf1 = (GetFieldInstruction) base1.getInstruction(), gf2 = (GetFieldInstruction) base2.getInstruction(); - net.runelite.asm.Field f1 = gf1.getMyField(); - net.runelite.asm.Field f2 = gf2.getMyField(); + asm.Field f1 = gf1.getMyField(); + asm.Field f2 = gf2.getMyField(); if (f1 != null && f2 != null) { @@ -180,8 +179,8 @@ public boolean isSame(InstructionContext thisIc, InstructionContext otherIc) PutStatic thisPf = (PutStatic) thisIc.getInstruction(), otherPf = (PutStatic) otherIc.getInstruction(); - net.runelite.asm.Field f1 = thisPf.getMyField(); - net.runelite.asm.Field f2 = otherPf.getMyField(); + asm.Field f1 = thisPf.getMyField(); + asm.Field f2 = otherPf.getMyField(); if ((f1 != null) != (f2 != null)) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Return.java b/asm/src/main/java/asm/attributes/code/instructions/Return.java similarity index 79% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Return.java rename to asm/src/main/java/asm/attributes/code/instructions/Return.java index 691b5ae3f..37c46d64d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Return.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Return.java @@ -22,21 +22,21 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +import asm.Field; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public class Return extends Instruction implements ReturnInstruction, MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SALoad.java b/asm/src/main/java/asm/attributes/code/instructions/SALoad.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SALoad.java rename to asm/src/main/java/asm/attributes/code/instructions/SALoad.java index da488dfc8..a42950486 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SALoad.java +++ b/asm/src/main/java/asm/attributes/code/instructions/SALoad.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class SALoad extends Instruction implements ArrayLoad { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SAStore.java b/asm/src/main/java/asm/attributes/code/instructions/SAStore.java similarity index 84% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SAStore.java rename to asm/src/main/java/asm/attributes/code/instructions/SAStore.java index af38f46b0..05d8b0bd8 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SAStore.java +++ b/asm/src/main/java/asm/attributes/code/instructions/SAStore.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class SAStore extends ArrayStore { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SiPush.java b/asm/src/main/java/asm/attributes/code/instructions/SiPush.java similarity index 80% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SiPush.java rename to asm/src/main/java/asm/attributes/code/instructions/SiPush.java index 7ac80f1d9..8a75b8924 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/SiPush.java +++ b/asm/src/main/java/asm/attributes/code/instructions/SiPush.java @@ -23,19 +23,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.IntInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.Value; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.IntInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.execution.*; import org.objectweb.asm.MethodVisitor; public class SiPush extends Instruction implements PushConstantInstruction, IntInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Swap.java b/asm/src/main/java/asm/attributes/code/instructions/Swap.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Swap.java rename to asm/src/main/java/asm/attributes/code/instructions/Swap.java index 1db76f5bc..6ad2aa311 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/Swap.java +++ b/asm/src/main/java/asm/attributes/code/instructions/Swap.java @@ -22,15 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; - -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; +package asm.attributes.code.instructions; + +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; public class Swap extends Instruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/TableSwitch.java b/asm/src/main/java/asm/attributes/code/instructions/TableSwitch.java similarity index 86% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/TableSwitch.java rename to asm/src/main/java/asm/attributes/code/instructions/TableSwitch.java index 681409cc6..a6fa29e3d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/TableSwitch.java +++ b/asm/src/main/java/asm/attributes/code/instructions/TableSwitch.java @@ -22,24 +22,25 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; + +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.Stack; +import asm.execution.StackContext; +import asm.mapping.ParallelExecutorMapping; +import org.objectweb.asm.MethodVisitor; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.Stack; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import org.objectweb.asm.MethodVisitor; public class TableSwitch extends Instruction implements JumpingInstruction, MappableInstruction { diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/VReturn.java b/asm/src/main/java/asm/attributes/code/instructions/VReturn.java similarity index 82% rename from deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/VReturn.java rename to asm/src/main/java/asm/attributes/code/instructions/VReturn.java index 9b57fa240..9f21d754c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/instructions/VReturn.java +++ b/asm/src/main/java/asm/attributes/code/instructions/VReturn.java @@ -23,14 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.attributes.code.instructions; +package asm.attributes.code.instructions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.execution.Frame; +import asm.execution.InstructionContext; public class VReturn extends Instruction implements ReturnInstruction diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/Execution.java b/asm/src/main/java/asm/execution/Execution.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/asm/execution/Execution.java rename to asm/src/main/java/asm/execution/Execution.java index 3a02c0ea8..d124ca89d 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/Execution.java +++ b/asm/src/main/java/asm/execution/Execution.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; @@ -34,13 +34,12 @@ import java.util.Map; import java.util.Set; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import static net.runelite.asm.execution.StaticStep.popStack; -import net.runelite.deob.Deob; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.attributes.code.Instruction; +import static asm.execution.StaticStep.popStack; public class Execution { @@ -79,7 +78,7 @@ public List getInitialMethods() for (Method m : cf.getMethods()) { - if (!Deob.isObfuscated(m.getName()) && !m.getName().equals("")) + if (!isObfuscated(m.getName()) && !m.getName().equals("")) { if (m.getCode() == null) { @@ -99,7 +98,18 @@ public List getInitialMethods() return methods; } - + public static boolean isObfuscated(String name) + { + if (name.length() <= 3) + { + return !name.equals("run") && !name.equals("add"); + } + return name.startsWith("method") + || name.startsWith("vmethod") + || name.startsWith("field") + || name.startsWith("class") + || name.startsWith("__"); + } private static boolean extendsApplet(ClassFile cf) { if (cf.getParent() != null) diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/ExecutionVisitor.java b/asm/src/main/java/asm/execution/ExecutionVisitor.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/ExecutionVisitor.java rename to asm/src/main/java/asm/execution/ExecutionVisitor.java index 22452bf3e..a4f1e43c5 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/ExecutionVisitor.java +++ b/asm/src/main/java/asm/execution/ExecutionVisitor.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; public interface ExecutionVisitor { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/Frame.java b/asm/src/main/java/asm/execution/Frame.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/execution/Frame.java rename to asm/src/main/java/asm/execution/Frame.java index 68757ca6e..46c522838 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/Frame.java +++ b/asm/src/main/java/asm/execution/Frame.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import com.google.common.collect.HashMultimap; import com.google.common.collect.Lists; @@ -31,19 +31,19 @@ import java.util.List; import meteor.Logger; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Exception; -import net.runelite.asm.attributes.code.Exceptions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.attributes.code.instructions.InvokeDynamic; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.signature.Signature; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Exception; +import asm.attributes.code.Exceptions; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.attributes.code.instructions.InvokeDynamic; +import asm.attributes.code.instructions.InvokeStatic; +import asm.signature.Signature; public class Frame { private static final Logger logger = new Logger("deob"); @@ -58,7 +58,7 @@ public class Frame private List instructions = new ArrayList<>(); // instructions executed in this frame private MethodContext ctx; protected Method nonStatic; // next non static method up the stack - public Frame other; // in the other execution for mapping + public Frame other; // in the other asm.execution for mapping public Frame returnTo; // is this the same as caller? public Frame otherStatic; private int order; @@ -262,6 +262,7 @@ public void execute() InstructionContext pushed = stacki.getPushed(); Frame frame = pushed.getFrame(); + System.err.println(pushed.getInstruction()); } System.err.println("end of stack"); ex.printStackTrace(); diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/FrameVisitor.java b/asm/src/main/java/asm/execution/FrameVisitor.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/FrameVisitor.java rename to asm/src/main/java/asm/execution/FrameVisitor.java index e5d59cfba..45ee29b46 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/FrameVisitor.java +++ b/asm/src/main/java/asm/execution/FrameVisitor.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; public interface FrameVisitor { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/InstructionContext.java b/asm/src/main/java/asm/execution/InstructionContext.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/asm/execution/InstructionContext.java rename to asm/src/main/java/asm/execution/InstructionContext.java index 1b44ad19b..65e0de1d4 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/InstructionContext.java +++ b/asm/src/main/java/asm/execution/InstructionContext.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.ArrayList; import java.util.List; import java.util.Objects; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.Swap; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.attributes.code.instructions.Swap; public class InstructionContext { @@ -41,8 +41,8 @@ public class InstructionContext private Frame frame; private Stack stack; // stack at time ins was executed private Variables variables; // variables at time ins was executed - private List pops = new ArrayList<>(); // stack contexts popped by instruction execution - private List pushes = new ArrayList<>(); // stack contexts pushed by instruction execution + private List pops = new ArrayList<>(); // stack contexts popped by instruction asm.execution + private List pushes = new ArrayList<>(); // stack contexts pushed by instruction asm.execution private List reads = new ArrayList<>(); // lvt reads private List invokes = new ArrayList<>(); // invokes private List branches = new ArrayList<>(); @@ -155,7 +155,7 @@ public boolean equals(Object other) if (ins != ic.ins) return false; - // check if stack at time of execution is equal + // check if stack at time of asm.execution is equal Stack ours = new Stack(this.getStack()), // copy stacks since we destroy them theirs = new Stack(ic.getStack()); diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/MethodContext.java b/asm/src/main/java/asm/execution/MethodContext.java similarity index 95% rename from deobfuscator/src/main/java/net/runelite/asm/execution/MethodContext.java rename to asm/src/main/java/asm/execution/MethodContext.java index 4615200f7..12cae3531 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/MethodContext.java +++ b/asm/src/main/java/asm/execution/MethodContext.java @@ -22,13 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; import java.util.Collection; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; +import asm.Method; +import asm.attributes.code.Instruction; public class MethodContext { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/MethodContextVisitor.java b/asm/src/main/java/asm/execution/MethodContextVisitor.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/MethodContextVisitor.java rename to asm/src/main/java/asm/execution/MethodContextVisitor.java index d7a9480a6..6e9d83908 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/MethodContextVisitor.java +++ b/asm/src/main/java/asm/execution/MethodContextVisitor.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; public interface MethodContextVisitor { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/ParallellMappingExecutor.java b/asm/src/main/java/asm/execution/ParallellMappingExecutor.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/asm/execution/ParallellMappingExecutor.java rename to asm/src/main/java/asm/execution/ParallellMappingExecutor.java index d88179ef1..32a62a852 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/ParallellMappingExecutor.java +++ b/asm/src/main/java/asm/execution/ParallellMappingExecutor.java @@ -22,14 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; - -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.attributes.code.instructions.Return; -import static net.runelite.asm.execution.StaticStep.popStack; -import static net.runelite.asm.execution.StaticStep.stepInto; -import net.runelite.deob.deobfuscators.mapping.MappingExecutorUtil; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; +package asm.execution; + +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.attributes.code.instructions.Return; +import static asm.execution.StaticStep.popStack; +import static asm.execution.StaticStep.stepInto; +import asm.mapping.MappingExecutorUtil; +import asm.mapping.ParallelExecutorMapping; public class ParallellMappingExecutor { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/Stack.java b/asm/src/main/java/asm/execution/Stack.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/execution/Stack.java rename to asm/src/main/java/asm/execution/Stack.java index fb01c7463..a8840d6b1 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/Stack.java +++ b/asm/src/main/java/asm/execution/Stack.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.Arrays; import java.util.List; -import net.runelite.asm.Method; -import net.runelite.asm.Type; +import asm.Method; +import asm.Type; public class Stack { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/StackContext.java b/asm/src/main/java/asm/execution/StackContext.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/StackContext.java rename to asm/src/main/java/asm/execution/StackContext.java index fa0d1a9e0..92d8a7d2c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/StackContext.java +++ b/asm/src/main/java/asm/execution/StackContext.java @@ -23,11 +23,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.Type; +import asm.Type; public class StackContext { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/StaticStep.java b/asm/src/main/java/asm/execution/StaticStep.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/asm/execution/StaticStep.java rename to asm/src/main/java/asm/execution/StaticStep.java index 1a70eb285..1fac4ea33 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/StaticStep.java +++ b/asm/src/main/java/asm/execution/StaticStep.java @@ -22,15 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.HashSet; import java.util.List; import java.util.Set; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.Return; +import asm.Method; +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.Return; public class StaticStep { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/Value.java b/asm/src/main/java/asm/execution/Value.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/Value.java rename to asm/src/main/java/asm/execution/Value.java index c5ad7ea53..033b9ef85 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/Value.java +++ b/asm/src/main/java/asm/execution/Value.java @@ -23,11 +23,14 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; + + +import asm.util.PrimitiveUtils; import java.lang.reflect.Array; import java.util.Arrays; -import net.runelite.deob.util.PrimitiveUtils; + public class Value { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/VariableContext.java b/asm/src/main/java/asm/execution/VariableContext.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/execution/VariableContext.java rename to asm/src/main/java/asm/execution/VariableContext.java index 56eabd397..85207c570 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/VariableContext.java +++ b/asm/src/main/java/asm/execution/VariableContext.java @@ -23,11 +23,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.Type; +import asm.Type; public class VariableContext { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/Variables.java b/asm/src/main/java/asm/execution/Variables.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/asm/execution/Variables.java rename to asm/src/main/java/asm/execution/Variables.java index 1650493ab..6bbe5bbfb 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/Variables.java +++ b/asm/src/main/java/asm/execution/Variables.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; public class Variables { diff --git a/deobfuscator/src/main/java/net/runelite/asm/execution/WeakInstructionContext.java b/asm/src/main/java/asm/execution/WeakInstructionContext.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/execution/WeakInstructionContext.java rename to asm/src/main/java/asm/execution/WeakInstructionContext.java index e8a4b67dc..ef145430b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/execution/WeakInstructionContext.java +++ b/asm/src/main/java/asm/execution/WeakInstructionContext.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.execution; +package asm.execution; import java.util.ArrayList; import java.util.List; import java.util.Objects; -import net.runelite.asm.attributes.code.Instruction; +import asm.attributes.code.Instruction; public class WeakInstructionContext { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationIntegrityChecker.java b/asm/src/main/java/asm/mapping/AnnotationIntegrityChecker.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationIntegrityChecker.java rename to asm/src/main/java/asm/mapping/AnnotationIntegrityChecker.java index 321bd9d4f..9fc8070b3 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationIntegrityChecker.java +++ b/asm/src/main/java/asm/mapping/AnnotationIntegrityChecker.java @@ -22,15 +22,14 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.deob.DeobAnnotations; + +import asm.*; + +// net.runelite.mapping.Import; import net.runelite.mapping.Import; import net.runelite.rs.api.RSClient; diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationMapper.java b/asm/src/main/java/asm/mapping/AnnotationMapper.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationMapper.java rename to asm/src/main/java/asm/mapping/AnnotationMapper.java index 4d5a4d6ee..070c80fd4 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/AnnotationMapper.java +++ b/asm/src/main/java/asm/mapping/AnnotationMapper.java @@ -23,15 +23,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Annotation; -import net.runelite.asm.attributes.Annotated; -import net.runelite.deob.DeobAnnotations; +package asm.mapping; + +import asm.*; +import asm.attributes.Annotated; + public class AnnotationMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassGroupMapper.java b/asm/src/main/java/asm/mapping/ClassGroupMapper.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassGroupMapper.java rename to asm/src/main/java/asm/mapping/ClassGroupMapper.java index 414217ad1..7ff45c27f 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassGroupMapper.java +++ b/asm/src/main/java/asm/mapping/ClassGroupMapper.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.HashMap; import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; +import asm.ClassFile; +import asm.ClassGroup; public class ClassGroupMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassMapper.java b/asm/src/main/java/asm/mapping/ClassMapper.java similarity index 94% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassMapper.java rename to asm/src/main/java/asm/mapping/ClassMapper.java index b195bfa19..32d47a89c 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ClassMapper.java +++ b/asm/src/main/java/asm/mapping/ClassMapper.java @@ -22,15 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import com.google.common.collect.ImmutableMultiset; import com.google.common.collect.Multiset; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Type; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Type; +import asm.signature.Signature; public class ClassMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ConstructorMapper.java b/asm/src/main/java/asm/mapping/ConstructorMapper.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ConstructorMapper.java rename to asm/src/main/java/asm/mapping/ConstructorMapper.java index 26b9a1459..1ba503624 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ConstructorMapper.java +++ b/asm/src/main/java/asm/mapping/ConstructorMapper.java @@ -22,13 +22,13 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; +import asm.Type; +import asm.signature.Signature; public class ConstructorMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ExecutionMapper.java b/asm/src/main/java/asm/mapping/ExecutionMapper.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ExecutionMapper.java rename to asm/src/main/java/asm/mapping/ExecutionMapper.java index b367d2623..6df1a12ee 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ExecutionMapper.java +++ b/asm/src/main/java/asm/mapping/ExecutionMapper.java @@ -23,10 +23,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.Collection; -import net.runelite.asm.Method; +import asm.Method; public class ExecutionMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapper.java b/asm/src/main/java/asm/mapping/Mapper.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapper.java rename to asm/src/main/java/asm/mapping/Mapper.java index 25326c8c5..46b4e6cc6 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapper.java +++ b/asm/src/main/java/asm/mapping/Mapper.java @@ -22,15 +22,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; public class Mapper { @@ -183,7 +183,7 @@ private void mapMemberMethods(ParallelExecutorMapping mapping) .filter(m -> MappingExecutorUtil.isMaybeEqual(m.getDescriptor(), method.getDescriptor())) .collect(Collectors.toList()); - // Run over execution mapper + // Run over asm.execution mapper ExecutionMapper em = new ExecutionMapper(method, possible); ParallelExecutorMapping map = em.run(); if (map == null) diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapping.java b/asm/src/main/java/asm/mapping/Mapping.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapping.java rename to asm/src/main/java/asm/mapping/Mapping.java index 73c842ae4..dfa6f5e9f 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/Mapping.java +++ b/asm/src/main/java/asm/mapping/Mapping.java @@ -22,11 +22,11 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.ArrayList; import java.util.List; -import net.runelite.asm.attributes.code.Instruction; +import asm.attributes.code.Instruction; public class Mapping { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MappingExecutorUtil.java b/asm/src/main/java/asm/mapping/MappingExecutorUtil.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MappingExecutorUtil.java rename to asm/src/main/java/asm/mapping/MappingExecutorUtil.java index 23e9899db..78fb481be 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MappingExecutorUtil.java +++ b/asm/src/main/java/asm/mapping/MappingExecutorUtil.java @@ -23,31 +23,31 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Interfaces; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.attributes.code.instruction.types.ConversionInstruction; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.ParallellMappingExecutor; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Interfaces; +import asm.Method; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.instruction.types.ArrayLoad; +import asm.attributes.code.instruction.types.ConversionInstruction; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.MappableInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.attributes.code.instructions.InvokeStatic; +import asm.execution.Execution; +import asm.execution.Frame; +import asm.execution.InstructionContext; +import asm.execution.ParallellMappingExecutor; +import asm.execution.StackContext; +import asm.execution.VariableContext; +import asm.execution.Variables; +import asm.signature.Signature; public class MappingExecutorUtil { @@ -117,7 +117,7 @@ public static boolean isMappable(InvokeInstruction ii) { String className; - net.runelite.asm.pool.Method m = ii.getMethod(); + asm.pool.Method m = ii.getMethod(); className = m.getClazz().getName(); if (className.startsWith("java/lang/reflect/") || className.startsWith("java/io/") || className.startsWith("java/util/")) @@ -136,7 +136,7 @@ public static boolean isInlineable(Instruction i) ClassGroup group = i.getInstructions().getCode().getMethod().getClassFile().getGroup(); InvokeStatic is = (InvokeStatic) i; - net.runelite.asm.pool.Method m = is.getMethod(); + asm.pool.Method m = is.getMethod(); return group.findClass(m.getClazz().getName()) != null; } @@ -202,7 +202,7 @@ public static InstructionContext resolve( assert storedCtx.getInstruction() instanceof InvokeStatic; // Figure out parameter index from variable index. - Signature sig = ctx.getFrame().getMethod().getDescriptor(); // signature of current method + Signature sig = ctx.getFrame().getMethod().getDescriptor(); // asm.signature of current method int paramIndex = 0; for (int lvtIndex = 0 /* static */; paramIndex < sig.size(); diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MethodSignatureMapper.java b/asm/src/main/java/asm/mapping/MethodSignatureMapper.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MethodSignatureMapper.java rename to asm/src/main/java/asm/mapping/MethodSignatureMapper.java index a5128f00c..7ee1e4902 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/MethodSignatureMapper.java +++ b/asm/src/main/java/asm/mapping/MethodSignatureMapper.java @@ -23,17 +23,17 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import com.google.common.collect.LinkedHashMultimap; import com.google.common.collect.Multimap; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; +import asm.signature.Signature; public class MethodSignatureMapper { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ParallelExecutorMapping.java b/asm/src/main/java/asm/mapping/ParallelExecutorMapping.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ParallelExecutorMapping.java rename to asm/src/main/java/asm/mapping/ParallelExecutorMapping.java index 89cde47f6..c12f0d593 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/ParallelExecutorMapping.java +++ b/asm/src/main/java/asm/mapping/ParallelExecutorMapping.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; @@ -34,11 +34,11 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.attributes.code.Instruction; public class ParallelExecutorMapping { diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticInitializerIndexer.java b/asm/src/main/java/asm/mapping/StaticInitializerIndexer.java similarity index 85% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticInitializerIndexer.java rename to asm/src/main/java/asm/mapping/StaticInitializerIndexer.java index 04f841203..5dfd602c0 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticInitializerIndexer.java +++ b/asm/src/main/java/asm/mapping/StaticInitializerIndexer.java @@ -22,18 +22,18 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import java.util.HashSet; import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.PutStatic; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.PutStatic; /** * Finds fields which are initialized in clinit diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticMethodSignatureMapper.java b/asm/src/main/java/asm/mapping/StaticMethodSignatureMapper.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticMethodSignatureMapper.java rename to asm/src/main/java/asm/mapping/StaticMethodSignatureMapper.java index 4ec9aaec8..39e018b28 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/mapping/StaticMethodSignatureMapper.java +++ b/asm/src/main/java/asm/mapping/StaticMethodSignatureMapper.java @@ -22,17 +22,17 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.mapping; +package asm.mapping; import com.google.common.collect.LinkedHashMultimap; import com.google.common.collect.Multimap; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Method; +import asm.signature.Signature; public class StaticMethodSignatureMapper { @@ -54,7 +54,7 @@ private List getStaticMethods(ClassGroup group) // this used to check the method wasnt , // but fernflower was modified to not remove code // in clinit and place into ConstantValue attriutes - // on fields, so the execution order of clinit no longer + // on fields, so the asm.execution order of clinit no longer // depends on field order if (m.isStatic()) { diff --git a/deobfuscator/src/main/java/net/runelite/asm/objectwebasm/NonloadingClassWriter.java b/asm/src/main/java/asm/objectwebasm/NonloadingClassWriter.java similarity index 96% rename from deobfuscator/src/main/java/net/runelite/asm/objectwebasm/NonloadingClassWriter.java rename to asm/src/main/java/asm/objectwebasm/NonloadingClassWriter.java index c22b2e9f4..3b5a318ab 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/objectwebasm/NonloadingClassWriter.java +++ b/asm/src/main/java/asm/objectwebasm/NonloadingClassWriter.java @@ -23,10 +23,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.objectwebasm; +package asm.objectwebasm; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; +import asm.ClassFile; +import asm.ClassGroup; import org.objectweb.asm.ClassWriter; public class NonloadingClassWriter extends ClassWriter diff --git a/deobfuscator/src/main/java/net/runelite/asm/pool/Class.java b/asm/src/main/java/asm/pool/Class.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/asm/pool/Class.java rename to asm/src/main/java/asm/pool/Class.java index ef0ea642b..b8ad6cc76 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/pool/Class.java +++ b/asm/src/main/java/asm/pool/Class.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.pool; +package asm.pool; public class Class { diff --git a/deobfuscator/src/main/java/net/runelite/asm/pool/Field.java b/asm/src/main/java/asm/pool/Field.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/pool/Field.java rename to asm/src/main/java/asm/pool/Field.java index 7211b2029..7b2a1a0f2 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/pool/Field.java +++ b/asm/src/main/java/asm/pool/Field.java @@ -23,10 +23,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.pool; +package asm.pool; import java.util.Objects; -import net.runelite.asm.Type; +import asm.Type; public class Field { diff --git a/deobfuscator/src/main/java/net/runelite/asm/pool/Method.java b/asm/src/main/java/asm/pool/Method.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/asm/pool/Method.java rename to asm/src/main/java/asm/pool/Method.java index 53d538888..1be8ca959 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/pool/Method.java +++ b/asm/src/main/java/asm/pool/Method.java @@ -22,10 +22,10 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.pool; +package asm.pool; import java.util.Objects; -import net.runelite.asm.signature.Signature; +import asm.signature.Signature; public class Method { diff --git a/asm/src/main/java/asm/signature/Signature.kt b/asm/src/main/java/asm/signature/Signature.kt new file mode 100644 index 000000000..049f8e5f9 --- /dev/null +++ b/asm/src/main/java/asm/signature/Signature.kt @@ -0,0 +1,136 @@ +/* + * Copyright (c) 2016-2017, Adam + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package asm.signature + +import asm.Type +import java.util.* +import java.util.regex.Pattern + +class Signature { + private val argument: MutableList + + var returnValue: Type + + constructor(arguments: List, rv: Type) { + this.argument = ArrayList(arguments) + returnValue = rv + } + + constructor(str: String) { + val rvStart = str.indexOf(')') + require(rvStart != -1) { "Descriptor has no return value!" } + returnValue = Type(str.substring(rvStart + 1)) + argument = findArgs(str, ArrayList(), str.indexOf('(') + 1, rvStart).toMutableList() + } + + constructor(other: Signature) { + argument = ArrayList(other.argument) + returnValue = other.returnValue + } + + override fun equals(other: Any?): Boolean { + return if (other !is Signature) { + false + } else this.toString() == other.toString() + } + + override fun hashCode(): Int { + return this.toString().hashCode() + } + + override fun toString(): String { + val sb = StringBuilder() + sb.append('(') + for (a in argument) { + sb.append(a) + } + sb.append(')') + sb.append(returnValue) + return sb.toString() + } + + fun size(): Int { + return argument.size + } + + fun remove(i: Int) { + argument.removeAt(i) + } + + fun getTypeOfArg(i: Int): Type { + return argument[i] + } + + fun getArguments(): List { + return Collections.unmodifiableList(argument) + } + + val isVoid: Boolean + get() = returnValue == Type.VOID + + class Builder { + private val arguments: MutableList = ArrayList() + lateinit var rv: Type + fun setReturnType(type: Type): Builder { + rv = type + return this + } + + fun addArgument(type: Type): Builder { + arguments.add(type) + return this + } + + fun addArgument(idx: Int, type: Type): Builder { + arguments.add(idx, type) + return this + } + + fun addArguments(types: Collection?): Builder { + arguments.addAll(types!!) + return this + } + + fun build(): Signature { + return Signature(arguments, rv) + } + } + + fun rsApiToRsClient(): Signature { + return Signature(RLAPITORSAPI.matcher(this.toString()).replaceAll("")) + } + + companion object { + private val RLAPITORSAPI = Pattern.compile("net/runelite/(rs/)?api/(RS)?") + private fun findArgs(str: String, ret: MutableList, from: Int, to: Int): List { + if (from >= to) return ret + var i = from + while (str[i] == '[') ++i + if (str[i] == 'L') i = str.indexOf(';', i) + ret.add(Type(str.substring(from, ++i))) + return findArgs(str, ret, i, to) + } + } +} diff --git a/asm/src/main/java/asm/signature/util/VirtualMethods.kt b/asm/src/main/java/asm/signature/util/VirtualMethods.kt new file mode 100644 index 000000000..24ede5b16 --- /dev/null +++ b/asm/src/main/java/asm/signature/util/VirtualMethods.kt @@ -0,0 +1,84 @@ +/* + * Copyright (c) 2016-2017, Adam + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package asm.signature.util + +import asm.ClassFile +import asm.Method +import asm.signature.Signature + +object VirtualMethods { + // find the base methods for a method. search goes up from there to see if two + // different methods can be invoked with the same instruction. + private fun findBaseMethods( + methods: MutableList, + cf: ClassFile?, + name: String, + type: Signature + ): MutableList { + if (cf == null) return methods + val m = cf.findMethod(name, type) + if (m != null && !m.isStatic) methods.add(m) + val parentMethods = findBaseMethods(ArrayList(), cf.parent, name, type) + for (inter in cf.interfaces.myInterfaces) parentMethods.addAll(findBaseMethods(ArrayList(), inter, name, type)) + + // parentMethods take precedence over our methods + return if (parentMethods.isEmpty()) methods else parentMethods + } + + private fun findBaseMethods(method: Method): List { + return findBaseMethods(ArrayList(), method.classFile, method.name, method.descriptor) + } + + private fun findMethodUp( + methods: MutableList, + visited: MutableSet, + cf: ClassFile?, + name: String, + type: Signature + ) { + if (cf == null || visited.contains(cf)) return + visited.add(cf) // can do diamond inheritance with interfaces + val m = cf.findMethod(name, type) + if (m != null && !m.isStatic) methods.add(m) + for (child in cf.children) findMethodUp(methods, visited, child, name, type) + } + + @JvmStatic + fun getVirtualMethods(method: Method): List { + val list: MutableList = ArrayList() + if (method.isStatic) { + list.add(method) + return list + } + val bases = findBaseMethods(method) // base methods method overrides + assert( + bases.isNotEmpty() // must contain at least a method + ) + + // now search up from bases, appending to list. + for (m in bases) findMethodUp(list, HashSet(), m.classFile, m.name, m.descriptor) + return list + } +} diff --git a/deobfuscator/src/main/java/net/runelite/deob/util/IdGen.java b/asm/src/main/java/asm/util/IdGen.java similarity index 97% rename from deobfuscator/src/main/java/net/runelite/deob/util/IdGen.java rename to asm/src/main/java/asm/util/IdGen.java index 2f1d1b2b9..7dd5f9c29 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/util/IdGen.java +++ b/asm/src/main/java/asm/util/IdGen.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.util; +package asm.util; public class IdGen { diff --git a/deobfuscator/src/main/java/net/runelite/deob/util/JarUtil.java b/asm/src/main/java/asm/util/JarUtil.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/deob/util/JarUtil.java rename to asm/src/main/java/asm/util/JarUtil.java index cdc5f769b..ce044b9b7 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/util/JarUtil.java +++ b/asm/src/main/java/asm/util/JarUtil.java @@ -22,26 +22,23 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.util; +package asm.util; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; +import asm.ClassFile; +import asm.ClassGroup; +import asm.objectwebasm.NonloadingClassWriter; +import asm.visitors.ClassFileVisitor; +import org.objectweb.asm.ClassReader; +import org.objectweb.asm.ClassVisitor; +import org.objectweb.asm.ClassWriter; +import org.objectweb.asm.util.CheckClassAdapter; + +import java.io.*; import java.util.Collection; import java.util.Enumeration; import java.util.jar.JarEntry; import java.util.jar.JarFile; import java.util.jar.JarOutputStream; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.objectwebasm.NonloadingClassWriter; -import net.runelite.asm.visitors.ClassFileVisitor; -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.util.CheckClassAdapter; public class JarUtil { @@ -66,6 +63,7 @@ public static ClassGroup load(File jarfile, boolean skip) continue; } + System.out.println(entry.getName()); InputStream is = jar.getInputStream(entry); diff --git a/deobfuscator/src/main/java/net/runelite/deob/util/NameMappings.java b/asm/src/main/java/asm/util/NameMappings.java similarity index 93% rename from deobfuscator/src/main/java/net/runelite/deob/util/NameMappings.java rename to asm/src/main/java/asm/util/NameMappings.java index b1dea2b93..6fc8bbc9e 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/util/NameMappings.java +++ b/asm/src/main/java/asm/util/NameMappings.java @@ -23,15 +23,16 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.util; +package asm.util; -import java.util.HashMap; -import java.util.Map; +import asm.pool.Class; +import asm.pool.Field; +import asm.pool.Method; import lombok.Getter; import lombok.Setter; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; -import net.runelite.asm.pool.Method; + +import java.util.HashMap; +import java.util.Map; public class NameMappings { diff --git a/deobfuscator/src/main/java/net/runelite/deob/util/PrimitiveUtils.java b/asm/src/main/java/asm/util/PrimitiveUtils.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/deob/util/PrimitiveUtils.java rename to asm/src/main/java/asm/util/PrimitiveUtils.java index e8317c5d2..01385d094 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/util/PrimitiveUtils.java +++ b/asm/src/main/java/asm/util/PrimitiveUtils.java @@ -23,7 +23,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.util; +package asm.util; public class PrimitiveUtils { diff --git a/deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFieldVisitor.java b/asm/src/main/java/asm/visitors/ClassFieldVisitor.java similarity index 92% rename from deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFieldVisitor.java rename to asm/src/main/java/asm/visitors/ClassFieldVisitor.java index ff44bca66..f6d09552b 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFieldVisitor.java +++ b/asm/src/main/java/asm/visitors/ClassFieldVisitor.java @@ -22,12 +22,12 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.visitors; +package asm.visitors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Type; -import net.runelite.asm.Annotation; +import asm.ClassFile; +import asm.Field; +import asm.Type; +import asm.Annotation; import org.objectweb.asm.AnnotationVisitor; import org.objectweb.asm.Attribute; import org.objectweb.asm.FieldVisitor; diff --git a/deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFileVisitor.java b/asm/src/main/java/asm/visitors/ClassFileVisitor.java similarity index 91% rename from deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFileVisitor.java rename to asm/src/main/java/asm/visitors/ClassFileVisitor.java index a7efe37fb..7b9de27ac 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/visitors/ClassFileVisitor.java +++ b/asm/src/main/java/asm/visitors/ClassFileVisitor.java @@ -23,12 +23,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.visitors; +package asm.visitors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Type; -import net.runelite.asm.Annotation; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Type; +import asm.Annotation; +import asm.signature.Signature; import org.objectweb.asm.AnnotationVisitor; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.FieldVisitor; @@ -58,7 +58,7 @@ public void visit(int version, int access, String name, String signature, String classFile.setAccess(access); for (String inter : interfaces) - classFile.getInterfaces().addInterface(new net.runelite.asm.pool.Class(inter)); + classFile.getInterfaces().addInterface(new asm.pool.Class(inter)); } @Override diff --git a/deobfuscator/src/main/java/net/runelite/asm/visitors/CodeVisitor.java b/asm/src/main/java/asm/visitors/CodeVisitor.java similarity index 81% rename from deobfuscator/src/main/java/net/runelite/asm/visitors/CodeVisitor.java rename to asm/src/main/java/asm/visitors/CodeVisitor.java index f4846facf..78d20a07c 100644 --- a/deobfuscator/src/main/java/net/runelite/asm/visitors/CodeVisitor.java +++ b/asm/src/main/java/asm/visitors/CodeVisitor.java @@ -22,38 +22,38 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.asm.visitors; +package asm.visitors; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.util.Arrays; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.Annotation; -import net.runelite.asm.attributes.code.Exceptions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.LocalVariable; -import net.runelite.asm.attributes.code.Parameter; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.IntInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.TypeInstruction; -import net.runelite.asm.attributes.code.instructions.IInc; -import net.runelite.asm.attributes.code.instructions.InvokeDynamic; -import net.runelite.asm.attributes.code.instructions.InvokeInterface; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LookupSwitch; -import net.runelite.asm.attributes.code.instructions.MultiANewArray; -import net.runelite.asm.attributes.code.instructions.TableSwitch; -import net.runelite.asm.pool.Field; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.Annotation; +import asm.attributes.code.Exceptions; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.LocalVariable; +import asm.attributes.code.Parameter; +import asm.attributes.code.instruction.types.FieldInstruction; +import asm.attributes.code.instruction.types.IntInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.TypeInstruction; +import asm.attributes.code.instructions.IInc; +import asm.attributes.code.instructions.InvokeDynamic; +import asm.attributes.code.instructions.InvokeInterface; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.LookupSwitch; +import asm.attributes.code.instructions.MultiANewArray; +import asm.attributes.code.instructions.TableSwitch; +import asm.pool.Field; +import asm.signature.Signature; import org.objectweb.asm.AnnotationVisitor; import org.objectweb.asm.Handle; import org.objectweb.asm.Label; @@ -89,12 +89,12 @@ public class CodeVisitor extends MethodVisitor method = new Method(classFile, name, signature); method.setAccessFlags(access); - net.runelite.asm.attributes.Exceptions exceptions = method.getExceptions(); + asm.attributes.Exceptions exceptions = method.getExceptions(); if (sexceptions != null) { for (String e : sexceptions) { - exceptions.addException(new net.runelite.asm.pool.Class(e)); + exceptions.addException(new asm.pool.Class(e)); } } } @@ -262,7 +262,7 @@ public void visitFieldInsn(int opcode, String owner, String name, String desc) { FieldInstruction i = (FieldInstruction) createInstructionFromOpcode(opcode); Field field = new Field( - new net.runelite.asm.pool.Class(owner), + new asm.pool.Class(owner), name, new Type(desc) ); @@ -278,8 +278,8 @@ public void visitMethodInsn(int opcode, String owner, String name, String desc, Type type = new Type(owner); - net.runelite.asm.pool.Method entry = new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(type.getInternalName()), + asm.pool.Method entry = new asm.pool.Method( + new asm.pool.Class(type.getInternalName()), name, new Signature(desc) ); @@ -331,7 +331,7 @@ public void visitLdcInsn(Object cst) if (cst instanceof org.objectweb.asm.Type) { org.objectweb.asm.Type t = (org.objectweb.asm.Type) cst; - entry = new net.runelite.asm.pool.Class(t.getClassName()); + entry = new asm.pool.Class(t.getClassName()); } LDC ldc = new LDC(code.getInstructions(), entry); @@ -389,13 +389,13 @@ public void visitMultiANewArrayInsn(String desc, int dims) public void visitTryCatchBlock(Label start, Label end, Label handler, String type) { Exceptions exceptions = code.getExceptions(); - net.runelite.asm.attributes.code.Exception e = new net.runelite.asm.attributes.code.Exception(exceptions); + asm.attributes.code.Exception e = new asm.attributes.code.Exception(exceptions); Instructions ins = code.getInstructions(); - net.runelite.asm.attributes.code.Label startL = ins.findOrCreateLabel(start); - net.runelite.asm.attributes.code.Label endL = ins.findOrCreateLabel(end); - net.runelite.asm.attributes.code.Label handlerL = ins.findOrCreateLabel(handler); + asm.attributes.code.Label startL = ins.findOrCreateLabel(start); + asm.attributes.code.Label endL = ins.findOrCreateLabel(end); + asm.attributes.code.Label handlerL = ins.findOrCreateLabel(handler); assert startL != null; assert endL != null; @@ -406,7 +406,7 @@ public void visitTryCatchBlock(Label start, Label end, Label handler, String typ e.setHandler(handlerL); if (type != null) { - e.setCatchType(new net.runelite.asm.pool.Class(type)); + e.setCatchType(new asm.pool.Class(type)); } exceptions.add(e); @@ -415,7 +415,7 @@ public void visitTryCatchBlock(Label start, Label end, Label handler, String typ @Override public void visitLineNumber(int line, Label start) { - net.runelite.asm.attributes.code.Label label = code.getInstructions().findLabel(start); + asm.attributes.code.Label label = code.getInstructions().findLabel(start); if (label != null) { diff --git a/cache/build.gradle.kts b/cache/build.gradle.kts index f85fa06c9..b963da9ad 100644 --- a/cache/build.gradle.kts +++ b/cache/build.gradle.kts @@ -38,6 +38,7 @@ dependencies { compileOnly(projects.http) with(libs) { + implementation(jna) annotationProcessor(lombok) compileOnly(lombok) implementation(gson) diff --git a/cache/src/main/java/net/runelite/cache/AreaManager.java b/cache/src/main/java/net/runelite/cache/AreaManager.java index 96967b84b..fc9abd8fe 100644 --- a/cache/src/main/java/net/runelite/cache/AreaManager.java +++ b/cache/src/main/java/net/runelite/cache/AreaManager.java @@ -24,19 +24,15 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.AreaDefinition; +import net.runelite.cache.definitions.loaders.AreaLoader; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.AreaDefinition; -import net.runelite.cache.definitions.loaders.AreaLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class AreaManager { diff --git a/cache/src/main/java/net/runelite/cache/Cache.java b/cache/src/main/java/net/runelite/cache/Cache.java index 96e9b6bc7..5b109006e 100644 --- a/cache/src/main/java/net/runelite/cache/Cache.java +++ b/cache/src/main/java/net/runelite/cache/Cache.java @@ -24,14 +24,11 @@ */ package net.runelite.cache; +import net.runelite.cache.fs.Store; +import org.apache.commons.cli.*; + import java.io.File; import java.io.IOException; -import net.runelite.cache.fs.Store; -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.CommandLineParser; -import org.apache.commons.cli.DefaultParser; -import org.apache.commons.cli.Options; -import org.apache.commons.cli.ParseException; public class Cache { diff --git a/cache/src/main/java/net/runelite/cache/DBRowManager.java b/cache/src/main/java/net/runelite/cache/DBRowManager.java index 22c577f0c..749f7baa1 100644 --- a/cache/src/main/java/net/runelite/cache/DBRowManager.java +++ b/cache/src/main/java/net/runelite/cache/DBRowManager.java @@ -24,19 +24,15 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.DBRowDefinition; +import net.runelite.cache.definitions.loaders.DBRowLoader; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.DBRowDefinition; -import net.runelite.cache.definitions.loaders.DBRowLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class DBRowManager { diff --git a/cache/src/main/java/net/runelite/cache/DBTableIndexManager.java b/cache/src/main/java/net/runelite/cache/DBTableIndexManager.java index f78dfab0c..5287b8e6e 100644 --- a/cache/src/main/java/net/runelite/cache/DBTableIndexManager.java +++ b/cache/src/main/java/net/runelite/cache/DBTableIndexManager.java @@ -24,19 +24,15 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.DBTableIndex; +import net.runelite.cache.definitions.loaders.DBTableIndexLoader; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.DBTableIndex; -import net.runelite.cache.definitions.loaders.DBTableIndexLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class DBTableIndexManager { diff --git a/cache/src/main/java/net/runelite/cache/DBTableManager.java b/cache/src/main/java/net/runelite/cache/DBTableManager.java index ecf4dd478..b4e004d54 100644 --- a/cache/src/main/java/net/runelite/cache/DBTableManager.java +++ b/cache/src/main/java/net/runelite/cache/DBTableManager.java @@ -24,19 +24,15 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.DBTableDefinition; +import net.runelite.cache.definitions.loaders.DBTableLoader; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.DBTableDefinition; -import net.runelite.cache.definitions.loaders.DBTableLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class DBTableManager { diff --git a/cache/src/main/java/net/runelite/cache/HeightMapDumper.java b/cache/src/main/java/net/runelite/cache/HeightMapDumper.java index 1e855754e..d65ca1d5f 100644 --- a/cache/src/main/java/net/runelite/cache/HeightMapDumper.java +++ b/cache/src/main/java/net/runelite/cache/HeightMapDumper.java @@ -24,9 +24,6 @@ */ package net.runelite.cache; -import java.awt.Color; -import java.awt.image.BufferedImage; -import java.io.IOException; import net.runelite.cache.fs.Store; import net.runelite.cache.region.Region; import net.runelite.cache.region.RegionLoader; @@ -34,6 +31,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.awt.*; +import java.awt.image.BufferedImage; +import java.io.IOException; + public class HeightMapDumper { private static final Logger logger = LoggerFactory.getLogger(HeightMapDumper.class); diff --git a/cache/src/main/java/net/runelite/cache/InterfaceManager.java b/cache/src/main/java/net/runelite/cache/InterfaceManager.java index ccfcfedd3..bfb9da798 100644 --- a/cache/src/main/java/net/runelite/cache/InterfaceManager.java +++ b/cache/src/main/java/net/runelite/cache/InterfaceManager.java @@ -24,20 +24,16 @@ */ package net.runelite.cache; -import java.io.File; -import java.io.IOException; -import java.io.PrintWriter; import net.runelite.cache.definitions.InterfaceDefinition; import net.runelite.cache.definitions.exporters.InterfaceExporter; import net.runelite.cache.definitions.loaders.InterfaceLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; +import net.runelite.cache.fs.*; import net.runelite.cache.util.Namer; +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; + public class InterfaceManager { private final Store store; diff --git a/cache/src/main/java/net/runelite/cache/InventoryManager.java b/cache/src/main/java/net/runelite/cache/InventoryManager.java index 772d48b1a..588272e7b 100644 --- a/cache/src/main/java/net/runelite/cache/InventoryManager.java +++ b/cache/src/main/java/net/runelite/cache/InventoryManager.java @@ -24,18 +24,14 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.InventoryDefinition; +import net.runelite.cache.definitions.loaders.InventoryLoader; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import net.runelite.cache.definitions.InventoryDefinition; -import net.runelite.cache.definitions.loaders.InventoryLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class InventoryManager { diff --git a/cache/src/main/java/net/runelite/cache/ItemManager.java b/cache/src/main/java/net/runelite/cache/ItemManager.java index 8e05bc80e..e54d3f209 100644 --- a/cache/src/main/java/net/runelite/cache/ItemManager.java +++ b/cache/src/main/java/net/runelite/cache/ItemManager.java @@ -24,23 +24,19 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.ItemDefinition; +import net.runelite.cache.definitions.exporters.ItemExporter; +import net.runelite.cache.definitions.loaders.ItemLoader; +import net.runelite.cache.definitions.providers.ItemProvider; +import net.runelite.cache.fs.*; +import net.runelite.cache.util.IDClass; + import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.ItemDefinition; -import net.runelite.cache.definitions.exporters.ItemExporter; -import net.runelite.cache.definitions.loaders.ItemLoader; -import net.runelite.cache.definitions.providers.ItemProvider; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; -import net.runelite.cache.util.IDClass; public class ItemManager implements ItemProvider { diff --git a/cache/src/main/java/net/runelite/cache/MapImageDumper.java b/cache/src/main/java/net/runelite/cache/MapImageDumper.java index 83b7d5a42..7b52b1d09 100644 --- a/cache/src/main/java/net/runelite/cache/MapImageDumper.java +++ b/cache/src/main/java/net/runelite/cache/MapImageDumper.java @@ -24,36 +24,15 @@ */ package net.runelite.cache; -import java.awt.Color; -import java.awt.Graphics2D; -import java.awt.image.BufferedImage; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.imageio.ImageIO; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import lombok.extern.slf4j.Slf4j; -import net.runelite.cache.definitions.AreaDefinition; -import net.runelite.cache.definitions.ObjectDefinition; -import net.runelite.cache.definitions.OverlayDefinition; -import net.runelite.cache.definitions.SpriteDefinition; -import net.runelite.cache.definitions.UnderlayDefinition; +import net.runelite.cache.definitions.*; import net.runelite.cache.definitions.loaders.OverlayLoader; import net.runelite.cache.definitions.loaders.SpriteLoader; import net.runelite.cache.definitions.loaders.UnderlayLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; +import net.runelite.cache.fs.*; import net.runelite.cache.item.RSTextureProvider; import net.runelite.cache.models.JagexColor; import net.runelite.cache.region.Location; @@ -63,12 +42,16 @@ import net.runelite.cache.util.BigBufferedImage; import net.runelite.cache.util.KeyProvider; import net.runelite.cache.util.XteaKeyManager; -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.CommandLineParser; -import org.apache.commons.cli.DefaultParser; -import org.apache.commons.cli.Option; -import org.apache.commons.cli.Options; -import org.apache.commons.cli.ParseException; +import org.apache.commons.cli.*; + +import javax.imageio.ImageIO; +import java.awt.*; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.List; +import java.util.*; @Slf4j @Accessors(chain = true) diff --git a/cache/src/main/java/net/runelite/cache/NpcManager.java b/cache/src/main/java/net/runelite/cache/NpcManager.java index b59c533b5..151ae6661 100644 --- a/cache/src/main/java/net/runelite/cache/NpcManager.java +++ b/cache/src/main/java/net/runelite/cache/NpcManager.java @@ -24,22 +24,18 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.NpcDefinition; +import net.runelite.cache.definitions.exporters.NpcExporter; +import net.runelite.cache.definitions.loaders.NpcLoader; +import net.runelite.cache.fs.*; +import net.runelite.cache.util.IDClass; + import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.NpcDefinition; -import net.runelite.cache.definitions.exporters.NpcExporter; -import net.runelite.cache.definitions.loaders.NpcLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; -import net.runelite.cache.util.IDClass; public class NpcManager { diff --git a/cache/src/main/java/net/runelite/cache/ObjectManager.java b/cache/src/main/java/net/runelite/cache/ObjectManager.java index ba39ae923..9504cd877 100644 --- a/cache/src/main/java/net/runelite/cache/ObjectManager.java +++ b/cache/src/main/java/net/runelite/cache/ObjectManager.java @@ -24,22 +24,18 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.ObjectDefinition; +import net.runelite.cache.definitions.exporters.ObjectExporter; +import net.runelite.cache.definitions.loaders.ObjectLoader; +import net.runelite.cache.fs.*; +import net.runelite.cache.util.IDClass; + import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.ObjectDefinition; -import net.runelite.cache.definitions.exporters.ObjectExporter; -import net.runelite.cache.definitions.loaders.ObjectLoader; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; -import net.runelite.cache.util.IDClass; public class ObjectManager { diff --git a/cache/src/main/java/net/runelite/cache/OverlayManager.java b/cache/src/main/java/net/runelite/cache/OverlayManager.java index 6940227c0..c0b3f6d79 100644 --- a/cache/src/main/java/net/runelite/cache/OverlayManager.java +++ b/cache/src/main/java/net/runelite/cache/OverlayManager.java @@ -24,20 +24,16 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.OverlayDefinition; +import net.runelite.cache.definitions.loaders.OverlayLoader; +import net.runelite.cache.definitions.providers.OverlayProvider; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.OverlayDefinition; -import net.runelite.cache.definitions.loaders.OverlayLoader; -import net.runelite.cache.definitions.providers.OverlayProvider; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class OverlayManager implements OverlayProvider { diff --git a/cache/src/main/java/net/runelite/cache/SpriteManager.java b/cache/src/main/java/net/runelite/cache/SpriteManager.java index a18dd4f6b..a5b854da7 100644 --- a/cache/src/main/java/net/runelite/cache/SpriteManager.java +++ b/cache/src/main/java/net/runelite/cache/SpriteManager.java @@ -26,11 +26,6 @@ import com.google.common.collect.LinkedListMultimap; import com.google.common.collect.Multimap; -import java.awt.image.BufferedImage; -import java.io.File; -import java.io.IOException; -import java.util.Collection; -import java.util.Collections; import net.runelite.cache.definitions.SpriteDefinition; import net.runelite.cache.definitions.exporters.SpriteExporter; import net.runelite.cache.definitions.loaders.SpriteLoader; @@ -40,6 +35,12 @@ import net.runelite.cache.fs.Storage; import net.runelite.cache.fs.Store; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.util.Collection; +import java.util.Collections; + public class SpriteManager implements SpriteProvider { private final Store store; diff --git a/cache/src/main/java/net/runelite/cache/StructManager.java b/cache/src/main/java/net/runelite/cache/StructManager.java index bd816a4ab..77e2894da 100644 --- a/cache/src/main/java/net/runelite/cache/StructManager.java +++ b/cache/src/main/java/net/runelite/cache/StructManager.java @@ -24,19 +24,15 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.StructDefinition; +import net.runelite.cache.definitions.loaders.StructLoader; +import net.runelite.cache.definitions.providers.StructProvider; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.StructDefinition; -import net.runelite.cache.definitions.loaders.StructLoader; -import net.runelite.cache.definitions.providers.StructProvider; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class StructManager implements StructProvider { diff --git a/cache/src/main/java/net/runelite/cache/TextureManager.java b/cache/src/main/java/net/runelite/cache/TextureManager.java index 9eeb3504f..0b01d4753 100644 --- a/cache/src/main/java/net/runelite/cache/TextureManager.java +++ b/cache/src/main/java/net/runelite/cache/TextureManager.java @@ -24,18 +24,14 @@ */ package net.runelite.cache; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; import net.runelite.cache.definitions.TextureDefinition; import net.runelite.cache.definitions.loaders.TextureLoader; import net.runelite.cache.definitions.providers.TextureProvider; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; +import net.runelite.cache.fs.*; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; public class TextureManager implements TextureProvider { diff --git a/cache/src/main/java/net/runelite/cache/UnderlayManager.java b/cache/src/main/java/net/runelite/cache/UnderlayManager.java index 3bba2230a..64d39cc3b 100644 --- a/cache/src/main/java/net/runelite/cache/UnderlayManager.java +++ b/cache/src/main/java/net/runelite/cache/UnderlayManager.java @@ -24,20 +24,16 @@ */ package net.runelite.cache; +import net.runelite.cache.definitions.UnderlayDefinition; +import net.runelite.cache.definitions.loaders.UnderlayLoader; +import net.runelite.cache.definitions.providers.UnderlayProvider; +import net.runelite.cache.fs.*; + import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.runelite.cache.definitions.UnderlayDefinition; -import net.runelite.cache.definitions.loaders.UnderlayLoader; -import net.runelite.cache.definitions.providers.UnderlayProvider; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.ArchiveFiles; -import net.runelite.cache.fs.FSFile; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; public class UnderlayManager implements UnderlayProvider { diff --git a/cache/src/main/java/net/runelite/cache/definitions/DBTableIndex.java b/cache/src/main/java/net/runelite/cache/definitions/DBTableIndex.java index c0afdedfe..d36002e26 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/DBTableIndex.java +++ b/cache/src/main/java/net/runelite/cache/definitions/DBTableIndex.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.definitions; -import java.util.List; -import java.util.Map; import lombok.Data; import net.runelite.cache.util.BaseVarType; +import java.util.List; +import java.util.Map; + @Data public class DBTableIndex { diff --git a/cache/src/main/java/net/runelite/cache/definitions/ItemDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/ItemDefinition.java index 11eb6bef2..2ace7c46d 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/ItemDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/ItemDefinition.java @@ -24,9 +24,10 @@ */ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class ItemDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/LocationsDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/LocationsDefinition.java index 435cdd474..c84cf5f35 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/LocationsDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/LocationsDefinition.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.definitions; -import java.util.ArrayList; -import java.util.List; import lombok.Data; import net.runelite.cache.region.Location; +import java.util.ArrayList; +import java.util.List; + @Data public class LocationsDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/ModelDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/ModelDefinition.java index 939fdf90d..5ba4c115b 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/ModelDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/ModelDefinition.java @@ -1,11 +1,12 @@ package net.runelite.cache.definitions; -import java.util.Arrays; import lombok.Data; import net.runelite.cache.models.CircularAngle; import net.runelite.cache.models.FaceNormal; import net.runelite.cache.models.VertexNormal; +import java.util.Arrays; + @Data public class ModelDefinition { @@ -151,119 +152,133 @@ else if (var15 == 1) } } - /** - * Computes the UV coordinates for every three-vertex face that has a - * texture. - */ public void computeTextureUVCoordinates() { this.faceTextureUCoordinates = new float[faceCount][]; this.faceTextureVCoordinates = new float[faceCount][]; + if (faceTextures == null) + { + return; + } + for (int i = 0; i < faceCount; i++) { - int textureCoordinate; - if (textureCoords == null) + if (faceTextures[i] == -1) { - textureCoordinate = -1; - } - else - { - textureCoordinate = textureCoords[i]; + continue; } - int textureIdx; - if (faceTextures == null) + float u0, u1, u2, v0, v1, v2; + + if (textureCoords != null && textureCoords[i] != -1) { - textureIdx = -1; + int tfaceIdx = textureCoords[i] & 0xff; + int triangleA = faceIndices1[i]; + int triangleB = faceIndices2[i]; + int triangleC = faceIndices3[i]; + int texA = texIndices1[tfaceIdx]; + int texB = texIndices2[tfaceIdx]; + int texC = texIndices3[tfaceIdx]; + + // v1 = vertex[texA] + float v1x = (float) vertexX[texA]; + float v1y = (float) vertexY[texA]; + float v1z = (float) vertexZ[texA]; + // v2 = vertex[texB] - v1 + float v2x = (float) vertexX[texB] - v1x; + float v2y = (float) vertexY[texB] - v1y; + float v2z = (float) vertexZ[texB] - v1z; + // v3 = vertex[texC] - v1 + float v3x = (float) vertexX[texC] - v1x; + float v3y = (float) vertexY[texC] - v1y; + float v3z = (float) vertexZ[texC] - v1z; + + // v4 = vertex[triangleA] - v1 + float v4x = (float) vertexX[triangleA] - v1x; + float v4y = (float) vertexY[triangleA] - v1y; + float v4z = (float) vertexZ[triangleA] - v1z; + // v5 = vertex[triangleB] - v1 + float v5x = (float) vertexX[triangleB] - v1x; + float v5y = (float) vertexY[triangleB] - v1y; + float v5z = (float) vertexZ[triangleB] - v1z; + // v6 = vertex[triangleC] - v1 + float v6x = (float) vertexX[triangleC] - v1x; + float v6y = (float) vertexY[triangleC] - v1y; + float v6z = (float) vertexZ[triangleC] - v1z; + + // v7 = v2 x v3 + float v7x = v2y * v3z - v2z * v3y; + float v7y = v2z * v3x - v2x * v3z; + float v7z = v2x * v3y - v2y * v3x; + + // v8 = v3 x v7 + float v8x = v3y * v7z - v3z * v7y; + float v8y = v3z * v7x - v3x * v7z; + float v8z = v3x * v7y - v3y * v7x; + + // f = 1 / (v8 â‹… v2) + float f = 1.0F / (v8x * v2x + v8y * v2y + v8z * v2z); + + // u0 = (v8 â‹… v4) * f + u0 = (v8x * v4x + v8y * v4y + v8z * v4z) * f; + // u1 = (v8 â‹… v5) * f + u1 = (v8x * v5x + v8y * v5y + v8z * v5z) * f; + // u2 = (v8 â‹… v6) * f + u2 = (v8x * v6x + v8y * v6y + v8z * v6z) * f; + + // v8 = v2 x v7 + v8x = v2y * v7z - v2z * v7y; + v8y = v2z * v7x - v2x * v7z; + v8z = v2x * v7y - v2y * v7x; + + // f = 1 / (v8 â‹… v3) + f = 1.0F / (v8x * v3x + v8y * v3y + v8z * v3z); + + // v0 = (v8 â‹… v4) * f + v0 = (v8x * v4x + v8y * v4y + v8z * v4z) * f; + // v1 = (v8 â‹… v5) * f + v1 = (v8x * v5x + v8y * v5y + v8z * v5z) * f; + // v2 = (v8 â‹… v6) * f + v2 = (v8x * v6x + v8y * v6y + v8z * v6z) * f; } else { - textureIdx = faceTextures[i] & 0xFFFF; + // Without a texture face, the client assigns tex = triangle, but the resulting + // calculations can be reduced: + // + // v1 = vertex[texA] + // v2 = vertex[texB] - v1 + // v3 = vertex[texC] - v1 + // + // v4 = 0 + // v5 = v2 + // v6 = v3 + // + // v7 = v2 x v3 + // + // v8 = v3 x v7 + // u0 = (v8 . v4) / (v8 . v2) // 0 because v4 is 0 + // u1 = (v8 . v5) / (v8 . v2) // 1 because v5=v2 + // u2 = (v8 . v6) / (v8 . v2) // 0 because v8 is perpendicular to v3/v6 + // + // v8 = v2 x v7 + // v0 = (v8 . v4) / (v8 â‹… v3) // 0 because v4 is 0 + // v1 = (v8 . v5) / (v8 â‹… v3) // 0 because v8 is perpendicular to v5/v2 + // v2 = (v8 . v6) / (v8 â‹… v3) // 1 because v6=v3 + + u0 = 0f; + v0 = 0f; + + u1 = 1f; + v1 = 0f; + + u2 = 0f; + v2 = 1f; } - if (textureIdx != -1) - { - float[] u = new float[3]; - float[] v = new float[3]; - - if (textureCoordinate == -1) - { - u[0] = 0.0F; - v[0] = 1.0F; - - u[1] = 1.0F; - v[1] = 1.0F; - - u[2] = 0.0F; - v[2] = 0.0F; - } - else - { - textureCoordinate &= 0xFF; - - byte textureRenderType = 0; - if (textureRenderTypes != null) - { - textureRenderType = textureRenderTypes[textureCoordinate]; - } - - if (textureRenderType == 0) - { - int faceVertexIdx1 = faceIndices1[i]; - int faceVertexIdx2 = faceIndices2[i]; - int faceVertexIdx3 = faceIndices3[i]; - - short triangleVertexIdx1 = texIndices1[textureCoordinate]; - short triangleVertexIdx2 = texIndices2[textureCoordinate]; - short triangleVertexIdx3 = texIndices3[textureCoordinate]; - - float triangleX = (float) vertexX[triangleVertexIdx1]; - float triangleY = (float) vertexY[triangleVertexIdx1]; - float triangleZ = (float) vertexZ[triangleVertexIdx1]; - - float f_882_ = (float) vertexX[triangleVertexIdx2] - triangleX; - float f_883_ = (float) vertexY[triangleVertexIdx2] - triangleY; - float f_884_ = (float) vertexZ[triangleVertexIdx2] - triangleZ; - float f_885_ = (float) vertexX[triangleVertexIdx3] - triangleX; - float f_886_ = (float) vertexY[triangleVertexIdx3] - triangleY; - float f_887_ = (float) vertexZ[triangleVertexIdx3] - triangleZ; - float f_888_ = (float) vertexX[faceVertexIdx1] - triangleX; - float f_889_ = (float) vertexY[faceVertexIdx1] - triangleY; - float f_890_ = (float) vertexZ[faceVertexIdx1] - triangleZ; - float f_891_ = (float) vertexX[faceVertexIdx2] - triangleX; - float f_892_ = (float) vertexY[faceVertexIdx2] - triangleY; - float f_893_ = (float) vertexZ[faceVertexIdx2] - triangleZ; - float f_894_ = (float) vertexX[faceVertexIdx3] - triangleX; - float f_895_ = (float) vertexY[faceVertexIdx3] - triangleY; - float f_896_ = (float) vertexZ[faceVertexIdx3] - triangleZ; - - float f_897_ = f_883_ * f_887_ - f_884_ * f_886_; - float f_898_ = f_884_ * f_885_ - f_882_ * f_887_; - float f_899_ = f_882_ * f_886_ - f_883_ * f_885_; - float f_900_ = f_886_ * f_899_ - f_887_ * f_898_; - float f_901_ = f_887_ * f_897_ - f_885_ * f_899_; - float f_902_ = f_885_ * f_898_ - f_886_ * f_897_; - float f_903_ = 1.0F / (f_900_ * f_882_ + f_901_ * f_883_ + f_902_ * f_884_); - - u[0] = (f_900_ * f_888_ + f_901_ * f_889_ + f_902_ * f_890_) * f_903_; - u[1] = (f_900_ * f_891_ + f_901_ * f_892_ + f_902_ * f_893_) * f_903_; - u[2] = (f_900_ * f_894_ + f_901_ * f_895_ + f_902_ * f_896_) * f_903_; - - f_900_ = f_883_ * f_899_ - f_884_ * f_898_; - f_901_ = f_884_ * f_897_ - f_882_ * f_899_; - f_902_ = f_882_ * f_898_ - f_883_ * f_897_; - f_903_ = 1.0F / (f_900_ * f_885_ + f_901_ * f_886_ + f_902_ * f_887_); - - v[0] = (f_900_ * f_888_ + f_901_ * f_889_ + f_902_ * f_890_) * f_903_; - v[1] = (f_900_ * f_891_ + f_901_ * f_892_ + f_902_ * f_893_) * f_903_; - v[2] = (f_900_ * f_894_ + f_901_ * f_895_ + f_902_ * f_896_) * f_903_; - } - } - - this.faceTextureUCoordinates[i] = u; - this.faceTextureVCoordinates[i] = v; - } + this.faceTextureUCoordinates[i] = new float[]{u0, u1, u2}; + this.faceTextureVCoordinates[i] = new float[]{v0, v1, v2}; } } diff --git a/cache/src/main/java/net/runelite/cache/definitions/NpcDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/NpcDefinition.java index c700a64f4..14c552aa0 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/NpcDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/NpcDefinition.java @@ -25,9 +25,10 @@ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class NpcDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/ObjectDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/ObjectDefinition.java index 0bea8f3ed..4ec875bfd 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/ObjectDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/ObjectDefinition.java @@ -25,9 +25,10 @@ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class ObjectDefinition { @@ -43,7 +44,7 @@ public class ObjectDefinition private short[] textureToReplace; private int sizeX = 1; private int sizeY = 1; - private int anInt2083 = 0; + private int ambientSoundDistance = 0; private int[] ambientSoundIds; private int offsetX = 0; private boolean mergeNormals = false; @@ -73,8 +74,8 @@ public class ObjectDefinition private int varpID = -1; private int ambientSoundId = -1; private boolean aBool2111 = false; - private int anInt2112 = 0; - private int anInt2113 = 0; + private int ambientSoundChangeTicksMin = 0; + private int ambientSoundChangeTicksMax = 0; private boolean blocksProjectile = true; private boolean randomizeAnimStart; private Map params = null; diff --git a/cache/src/main/java/net/runelite/cache/definitions/ScriptDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/ScriptDefinition.java index cb57851b8..241ba0755 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/ScriptDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/ScriptDefinition.java @@ -24,9 +24,10 @@ */ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class ScriptDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/SequenceDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/SequenceDefinition.java index ff97ae6c6..ec66a9524 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/SequenceDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/SequenceDefinition.java @@ -24,9 +24,10 @@ */ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class SequenceDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/StructDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/StructDefinition.java index 455ce9ea5..c94bda2e6 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/StructDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/StructDefinition.java @@ -24,9 +24,10 @@ */ package net.runelite.cache.definitions; -import java.util.Map; import lombok.Data; +import java.util.Map; + @Data public class StructDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/WorldMapDefinition.java b/cache/src/main/java/net/runelite/cache/definitions/WorldMapDefinition.java index 30c61f73b..2a0aee3e4 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/WorldMapDefinition.java +++ b/cache/src/main/java/net/runelite/cache/definitions/WorldMapDefinition.java @@ -24,10 +24,11 @@ */ package net.runelite.cache.definitions; -import java.util.List; import lombok.Data; import net.runelite.cache.region.Position; +import java.util.List; + @Data public class WorldMapDefinition { diff --git a/cache/src/main/java/net/runelite/cache/definitions/exporters/InterfaceExporter.java b/cache/src/main/java/net/runelite/cache/definitions/exporters/InterfaceExporter.java index b1020b9a5..06ad2bd53 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/exporters/InterfaceExporter.java +++ b/cache/src/main/java/net/runelite/cache/definitions/exporters/InterfaceExporter.java @@ -26,10 +26,11 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import net.runelite.cache.definitions.InterfaceDefinition; + import java.io.File; import java.io.FileWriter; import java.io.IOException; -import net.runelite.cache.definitions.InterfaceDefinition; public class InterfaceExporter { diff --git a/cache/src/main/java/net/runelite/cache/definitions/exporters/ItemExporter.java b/cache/src/main/java/net/runelite/cache/definitions/exporters/ItemExporter.java index 5dddff97e..b6a61e4f7 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/exporters/ItemExporter.java +++ b/cache/src/main/java/net/runelite/cache/definitions/exporters/ItemExporter.java @@ -26,10 +26,11 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import net.runelite.cache.definitions.ItemDefinition; + import java.io.File; import java.io.FileWriter; import java.io.IOException; -import net.runelite.cache.definitions.ItemDefinition; public class ItemExporter { diff --git a/cache/src/main/java/net/runelite/cache/definitions/exporters/NpcExporter.java b/cache/src/main/java/net/runelite/cache/definitions/exporters/NpcExporter.java index eec1be340..fa39c69dd 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/exporters/NpcExporter.java +++ b/cache/src/main/java/net/runelite/cache/definitions/exporters/NpcExporter.java @@ -26,10 +26,11 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import net.runelite.cache.definitions.NpcDefinition; + import java.io.File; import java.io.FileWriter; import java.io.IOException; -import net.runelite.cache.definitions.NpcDefinition; public class NpcExporter { diff --git a/cache/src/main/java/net/runelite/cache/definitions/exporters/ObjectExporter.java b/cache/src/main/java/net/runelite/cache/definitions/exporters/ObjectExporter.java index 994bff625..c29d8b35a 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/exporters/ObjectExporter.java +++ b/cache/src/main/java/net/runelite/cache/definitions/exporters/ObjectExporter.java @@ -26,10 +26,11 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import net.runelite.cache.definitions.ObjectDefinition; + import java.io.File; import java.io.FileWriter; import java.io.IOException; -import net.runelite.cache.definitions.ObjectDefinition; public class ObjectExporter { diff --git a/cache/src/main/java/net/runelite/cache/definitions/exporters/SpriteExporter.java b/cache/src/main/java/net/runelite/cache/definitions/exporters/SpriteExporter.java index 9c073d5e3..143085d63 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/exporters/SpriteExporter.java +++ b/cache/src/main/java/net/runelite/cache/definitions/exporters/SpriteExporter.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.definitions.exporters; +import net.runelite.cache.definitions.SpriteDefinition; + +import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; -import javax.imageio.ImageIO; -import net.runelite.cache.definitions.SpriteDefinition; public class SpriteExporter { diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/DBTableIndexLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/DBTableIndexLoader.java index ba1ff1749..a016996fa 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/DBTableIndexLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/DBTableIndexLoader.java @@ -24,13 +24,14 @@ */ package net.runelite.cache.definitions.loaders; +import net.runelite.cache.definitions.DBTableIndex; +import net.runelite.cache.io.InputStream; +import net.runelite.cache.util.BaseVarType; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import net.runelite.cache.definitions.DBTableIndex; -import net.runelite.cache.io.InputStream; -import net.runelite.cache.util.BaseVarType; public class DBTableIndexLoader { diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/InterfaceLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/InterfaceLoader.java index 69db420f9..aaadcb576 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/InterfaceLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/InterfaceLoader.java @@ -24,13 +24,14 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; import net.runelite.cache.definitions.ClientScript1Instruction; import net.runelite.cache.definitions.InterfaceDefinition; import net.runelite.cache.io.InputStream; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + public class InterfaceLoader { public InterfaceDefinition load(int id, byte[] b) diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java index 3eedd23ba..a11447131 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java @@ -25,12 +25,13 @@ package net.runelite.cache.definitions.loaders; -import java.util.HashMap; import net.runelite.cache.definitions.ItemDefinition; import net.runelite.cache.io.InputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.HashMap; + public class ItemLoader { private static final Logger logger = LoggerFactory.getLogger(ItemLoader.class); diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/MapLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/MapLoader.java index 340b9bd39..eb0034881 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/MapLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/MapLoader.java @@ -27,9 +27,8 @@ import net.runelite.cache.definitions.MapDefinition; import net.runelite.cache.definitions.MapDefinition.Tile; import net.runelite.cache.io.InputStream; -import static net.runelite.cache.region.Region.X; -import static net.runelite.cache.region.Region.Y; -import static net.runelite.cache.region.Region.Z; + +import static net.runelite.cache.region.Region.*; public class MapLoader { diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java index 62016b852..16f36c6d1 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java @@ -24,13 +24,14 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.HashMap; import lombok.Data; import lombok.experimental.Accessors; import lombok.extern.slf4j.Slf4j; import net.runelite.cache.definitions.NpcDefinition; import net.runelite.cache.io.InputStream; +import java.util.HashMap; + @Accessors(chain = true) @Data @Slf4j diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/ObjectLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/ObjectLoader.java index 157234e01..fbaafd1c0 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/ObjectLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/ObjectLoader.java @@ -24,13 +24,14 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.HashMap; -import java.util.Map; import net.runelite.cache.definitions.ObjectDefinition; import net.runelite.cache.io.InputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.HashMap; +import java.util.Map; + public class ObjectLoader { private static final Logger logger = LoggerFactory.getLogger(ObjectLoader.class); @@ -285,22 +286,22 @@ else if (opcode == 77) else if (opcode == 78) { def.setAmbientSoundId(is.readUnsignedShort()); - def.setAnInt2083(is.readUnsignedByte()); + def.setAmbientSoundDistance(is.readUnsignedByte()); } else if (opcode == 79) { - def.setAnInt2112(is.readUnsignedShort()); - def.setAnInt2113(is.readUnsignedShort()); - def.setAnInt2083(is.readUnsignedByte()); + def.setAmbientSoundChangeTicksMin(is.readUnsignedShort()); + def.setAmbientSoundChangeTicksMax(is.readUnsignedShort()); + def.setAmbientSoundDistance(is.readUnsignedByte()); int length = is.readUnsignedByte(); - int[] anIntArray2084 = new int[length]; + int[] ambientSoundIds = new int[length]; for (int index = 0; index < length; ++index) { - anIntArray2084[index] = is.readUnsignedShort(); + ambientSoundIds[index] = is.readUnsignedShort(); } - def.setAmbientSoundIds(anIntArray2084); + def.setAmbientSoundIds(ambientSoundIds); } else if (opcode == 81) { diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/ScriptLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/ScriptLoader.java index 0762bdfff..82fbcbca5 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/ScriptLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/ScriptLoader.java @@ -24,14 +24,13 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.LinkedHashMap; -import java.util.Map; import net.runelite.cache.definitions.ScriptDefinition; import net.runelite.cache.io.InputStream; -import static net.runelite.cache.script.Opcodes.SCONST; -import static net.runelite.cache.script.Opcodes.POP_INT; -import static net.runelite.cache.script.Opcodes.POP_STRING; -import static net.runelite.cache.script.Opcodes.RETURN; + +import java.util.LinkedHashMap; +import java.util.Map; + +import static net.runelite.cache.script.Opcodes.*; public class ScriptLoader { diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/SequenceLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/SequenceLoader.java index 41e218b4d..9dd1c7e07 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/SequenceLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/SequenceLoader.java @@ -24,10 +24,11 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.HashMap; import net.runelite.cache.definitions.SequenceDefinition; import net.runelite.cache.io.InputStream; +import java.util.HashMap; + public class SequenceLoader { public SequenceDefinition load(int id, byte[] b) diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/StructLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/StructLoader.java index 4137da8f3..e0873ba3a 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/StructLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/StructLoader.java @@ -24,10 +24,11 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.HashMap; import net.runelite.cache.definitions.StructDefinition; import net.runelite.cache.io.InputStream; +import java.util.HashMap; + public class StructLoader { public StructDefinition load(int id, byte[] b) diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapLoader.java index 371b6491c..a6f3f41da 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapLoader.java @@ -24,16 +24,12 @@ */ package net.runelite.cache.definitions.loaders; -import java.util.LinkedList; -import net.runelite.cache.definitions.WorldMapDefinition; -import net.runelite.cache.definitions.WorldMapType0; -import net.runelite.cache.definitions.WorldMapType1; -import net.runelite.cache.definitions.WorldMapType2; -import net.runelite.cache.definitions.WorldMapType3; -import net.runelite.cache.definitions.WorldMapTypeBase; +import net.runelite.cache.definitions.*; import net.runelite.cache.io.InputStream; import net.runelite.cache.region.Position; +import java.util.LinkedList; + public class WorldMapLoader { @SuppressWarnings("unchecked") diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/InstrumentLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/InstrumentLoader.java index f3d232676..d0b9db097 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/InstrumentLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/InstrumentLoader.java @@ -24,8 +24,8 @@ */ package net.runelite.cache.definitions.loaders.sound; -import net.runelite.cache.definitions.sound.InstrumentDefinition; import net.runelite.cache.definitions.sound.AudioEnvelopeDefinition; +import net.runelite.cache.definitions.sound.InstrumentDefinition; import net.runelite.cache.io.InputStream; public class InstrumentLoader diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/SoundEffectTrackLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/SoundEffectTrackLoader.java index 3b991fdc7..40abce43a 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/SoundEffectTrackLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/sound/SoundEffectTrackLoader.java @@ -24,8 +24,8 @@ */ package net.runelite.cache.definitions.loaders.sound; -import net.runelite.cache.definitions.sound.SoundEffectTrackDefinition; import net.runelite.cache.definitions.sound.InstrumentDefinition; +import net.runelite.cache.definitions.sound.SoundEffectTrackDefinition; import net.runelite.cache.io.InputStream; public class SoundEffectTrackLoader diff --git a/cache/src/main/java/net/runelite/cache/definitions/providers/ModelProvider.java b/cache/src/main/java/net/runelite/cache/definitions/providers/ModelProvider.java index 36a8412b8..0fd731520 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/providers/ModelProvider.java +++ b/cache/src/main/java/net/runelite/cache/definitions/providers/ModelProvider.java @@ -24,9 +24,10 @@ */ package net.runelite.cache.definitions.providers; -import java.io.IOException; import net.runelite.cache.definitions.ModelDefinition; +import java.io.IOException; + public interface ModelProvider { ModelDefinition provide(int modelId) throws IOException; diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/InterfaceSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/InterfaceSaver.java deleted file mode 100644 index 61151a415..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/InterfaceSaver.java +++ /dev/null @@ -1,226 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import net.runelite.cache.definitions.ClientScript1Instruction; -import net.runelite.cache.definitions.InterfaceDefinition; -import net.runelite.cache.io.OutputStream; - -public class InterfaceSaver -{ - public byte[] save(InterfaceDefinition def) - { - if (def.isIf3) - { - return saveIf3(def); - } - else - { - return saveIf1(def); - } - } - - private byte[] saveIf3(InterfaceDefinition def) - { - throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. - } - - private byte[] saveIf1(InterfaceDefinition def) - { - OutputStream out = new OutputStream(); - out.writeByte(def.type); - out.writeByte(def.menuType); - out.writeShort(def.contentType); - out.writeShort(def.originalX); - out.writeShort(def.originalY); - out.writeShort(def.originalWidth); - out.writeShort(def.originalHeight); - out.writeByte(def.opacity); - out.writeShort(def.parentId); - out.writeShort(def.hoveredSiblingId); - if (def.alternateOperators != null) - { - out.writeByte(def.alternateOperators.length); - for (int i = 0; i < def.alternateOperators.length; ++i) - { - out.writeByte(def.alternateOperators[i]); - out.writeShort(def.alternateRhs[i]); - } - } - else - { - out.writeByte(0); - } - if (def.clientScripts != null) - { - out.writeByte(def.clientScripts.length); - for (int i = 0; i < def.clientScripts.length; ++i) - { - int len = 0; - for (int j = 0; j < def.clientScripts[i].length; ++j) - { - ClientScript1Instruction ins = def.clientScripts[i][j]; - len++; - if (ins.operands != null) - { - len += ins.operands.length; - } - } - out.writeShort(len); - for (int j = 0; j < def.clientScripts[i].length; ++j) - { - ClientScript1Instruction ins = def.clientScripts[i][j]; - out.writeShort(ins.opcode.ordinal()); - if (ins.operands != null) - { - for (int op : ins.operands) - { - out.writeShort(op); - } - } - } - } - } - else - { - out.writeByte(0); - } - if (def.type == 0) - { - out.writeShort(def.scrollHeight); - out.writeByte(def.isHidden ? 1 : 0); - } - if (def.type == 1) - { - out.writeShort(0); - out.writeByte(0); - } - if (def.type == 2) - { - out.writeByte((def.clickMask & 268435456) != 0 ? 1 : 0); - out.writeByte((def.clickMask & 1073741824) != 0 ? 1 : 0); - out.writeByte((def.clickMask & Integer.MIN_VALUE) != 0 ? 1 : 0); - out.writeByte((def.clickMask & 536870912) != 0 ? 1 : 0); - out.writeByte(def.xPitch); - out.writeByte(def.yPitch); - for (int i = 0; i < 20; ++i) - { - if (def.sprites[i] != -1) - { - out.writeByte(1); - out.writeShort(def.xOffsets[i]); - out.writeShort(def.yOffsets[i]); - out.writeShort(def.sprites[i]); - } - else - { - out.writeByte(0); - } - } - for (int i = 0; i < 5; ++i) - { - if (def.configActions[i] != null) - { - out.writeString(def.configActions[i]); - } - else - { - out.writeString(""); - } - } - } - if (def.type == 3) - { - out.writeByte(def.filled ? 1 : 0); - } - if (def.type == 4 || def.type == 1) - { - out.writeByte(def.xTextAlignment); - out.writeByte(def.yTextAlignment); - out.writeByte(def.lineHeight); - out.writeShort(def.fontId); - out.writeByte(def.textShadowed ? 1 : 0); - } - if (def.type == 4) - { - out.writeString(def.text); - out.writeString(def.alternateText); - } - if (def.type == 1 || def.type == 3 || def.type == 4) - { - out.writeInt(def.textColor); - } - if (def.type == 3 || def.type == 4) - { - out.writeInt(def.alternateTextColor); - out.writeInt(def.hoveredTextColor); - out.writeInt(def.alternateHoveredTextColor); - } - if (def.type == 5) - { - out.writeInt(def.spriteId); - out.writeInt(def.alternateSpriteId); - } - if (def.type == 6) - { - out.writeShort(def.modelId); - out.writeShort(def.alternateModelId); - out.writeShort(def.animation); - out.writeShort(def.alternateAnimation); - out.writeShort(def.modelZoom); - out.writeShort(def.rotationX); - out.writeShort(def.rotationZ); - } - if (def.type == 7) - { - out.writeByte(def.xTextAlignment); - out.writeShort(def.fontId); - out.writeByte(def.textShadowed ? 1 : 0); - out.writeInt(def.textColor); - out.writeShort(def.xPitch); - out.writeShort(def.yPitch); - out.writeByte((def.clickMask & 1073741824) != 0 ? 1 : 0); - for (int i = 0; i < 5; ++i) - { - out.writeString(def.configActions[i]); - } - } - if (def.type == 8) - { - out.writeString(def.text); - } - if (def.menuType == 2 || def.type == 2) - { - out.writeString(def.targetVerb); - out.writeString(def.spellName); - out.writeShort((def.clickMask >>> 11) & 63); - } - if (def.menuType == 1 || def.menuType == 4 || def.menuType == 5 || def.menuType == 6) - { - out.writeString(def.tooltip); - } - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/ItemSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/ItemSaver.java deleted file mode 100644 index baa9af3be..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/ItemSaver.java +++ /dev/null @@ -1,235 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import java.util.Map.Entry; -import net.runelite.cache.definitions.ItemDefinition; -import net.runelite.cache.io.OutputStream; - -public class ItemSaver -{ - public byte[] save(ItemDefinition item) - { - OutputStream out = new OutputStream(); - if (item.inventoryModel != 0) - { - out.writeByte(1); - out.writeShort(item.inventoryModel); - } - if (item.name != null) - { - out.writeByte(2); - out.writeString(item.name); - } - out.writeByte(4); - out.writeShort(item.zoom2d); - out.writeByte(5); - out.writeShort(item.xan2d); - out.writeByte(6); - out.writeShort(item.yan2d); - out.writeByte(7); - out.writeShort(item.xOffset2d); - out.writeByte(8); - out.writeShort(item.yOffset2d); - if (item.stackable != 0) - { - out.writeByte(11); - } - out.writeByte(12); - out.writeInt(item.cost); - if (item.members) - { - out.writeByte(16); - } - if (item.maleModel0 != -1 || item.maleOffset != 0) - { - out.writeByte(23); - out.writeShort(item.maleModel0); - out.writeByte(item.maleOffset); - } - if (item.maleModel1 != -1) - { - out.writeByte(24); - out.writeShort(item.maleModel1); - } - if (item.femaleModel0 != -1 || item.femaleOffset != 0) - { - out.writeByte(25); - out.writeShort(item.femaleModel0); - out.writeByte(item.femaleOffset); - } - if (item.femaleModel1 != -1) - { - out.writeByte(26); - out.writeShort(item.femaleModel1); - } - for (int i = 0; i < 5; ++i) - { - if (item.options[i] != null) - { - out.writeByte(30 + i); - out.writeString(item.options[i]); - } - } - for (int i = 0; i < 5; ++i) - { - if (item.interfaceOptions[i] != null) - { - out.writeByte(35 + i); - out.writeString(item.interfaceOptions[i]); - } - } - if (item.colorFind != null && item.colorReplace != null) - { - out.writeByte(40); - out.writeByte(item.colorFind.length); - for (int i = 0; i < item.colorFind.length; ++i) - { - out.writeShort(item.colorFind[i]); - out.writeShort(item.colorReplace[i]); - } - } - if (item.textureFind != null && item.textureReplace != null) - { - out.writeByte(41); - out.writeByte(item.textureFind.length); - for (int i = 0; i < item.textureFind.length; ++i) - { - out.writeShort(item.textureFind[i]); - out.writeShort(item.textureReplace[i]); - } - } - out.writeByte(42); - out.writeByte(item.shiftClickDropIndex); - if (item.isTradeable) - { - out.writeByte(65); - } - if (item.maleModel2 != -1) - { - out.writeByte(78); - out.writeShort(item.maleModel2); - } - if (item.femaleModel2 != -1) - { - out.writeByte(79); - out.writeShort(item.femaleModel2); - } - if (item.maleHeadModel != -1) - { - out.writeByte(90); - out.writeShort(item.maleHeadModel); - } - if (item.femaleHeadModel != -1) - { - out.writeByte(91); - out.writeShort(item.femaleHeadModel); - } - if (item.maleHeadModel2 != -1) - { - out.writeByte(92); - out.writeShort(item.maleHeadModel2); - } - if (item.femaleHeadModel2 != -1) - { - out.writeByte(93); - out.writeShort(item.femaleHeadModel2); - } - out.writeByte(95); - out.writeShort(item.zan2d); - if (item.notedID != -1) - { - out.writeByte(97); - out.writeShort(item.notedID); - } - if (item.notedTemplate != -1) - { - out.writeByte(98); - out.writeShort(item.notedTemplate); - } - if (item.countObj != null) - { - for (int i = 0; i < 10; ++i) - { - out.writeByte(100 + i); - out.writeShort(item.countObj[i]); - out.writeShort(item.countCo[i]); - } - } - out.writeByte(110); - out.writeShort(item.resizeX); - out.writeByte(111); - out.writeShort(item.resizeY); - out.writeByte(112); - out.writeShort(item.resizeZ); - out.writeByte(113); - out.writeByte(item.ambient); - out.writeByte(114); - out.writeByte(item.contrast); - out.writeByte(115); - out.writeByte(item.team); - if (item.boughtId != -1) - { - out.writeByte(139); - out.writeShort(item.boughtId); - } - if (item.boughtTemplateId != -1) - { - out.writeByte(140); - out.writeShort(item.boughtTemplateId); - } - if (item.placeholderId != -1) - { - out.writeByte(148); - out.writeShort(item.placeholderId); - } - if (item.placeholderTemplateId != -1) - { - out.writeByte(149); - out.writeShort(item.placeholderTemplateId); - } - if (item.params != null) - { - out.writeByte(249); - out.writeByte(item.params.size()); - for (Entry entry : item.params.entrySet()) - { - out.writeByte(entry.getValue() instanceof String ? 1 : 0); - out.write24BitInt(entry.getKey()); - if (entry.getValue() instanceof String) - { - out.writeString((String) entry.getValue()); - } - else - { - out.writeInt((Integer) entry.getValue()); - } - } - } - out.writeByte(0); - - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/LocationSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/LocationSaver.java deleted file mode 100644 index 2086bd7e7..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/LocationSaver.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import com.google.common.collect.LinkedListMultimap; -import com.google.common.collect.Multimap; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import net.runelite.cache.definitions.LocationsDefinition; -import net.runelite.cache.io.OutputStream; -import net.runelite.cache.region.Location; - -public class LocationSaver -{ - public byte[] save(LocationsDefinition locs) - { - Multimap locById = LinkedListMultimap.create(); - List sortedLocs = new ArrayList<>(locs.getLocations()); - sortedLocs.sort((l1, l2) -> Integer.compare(l1.getId(), l2.getId())); - for (Location loc : sortedLocs) - { - locById.put(loc.getId(), loc); - } - OutputStream out = new OutputStream(); - int prevId = -1; - for (Integer id : locById.keySet()) - { - int diffId = id - prevId; - prevId = id; - - out.writeShortSmart(diffId); - - Collection locations = locById.get(id); - int position = 0; - for (Location loc : locations) - { - int packedPosition = (loc.getPosition().getZ() << 12) - | (loc.getPosition().getX() << 6) - | (loc.getPosition().getY()); - - int diffPos = packedPosition - position; - position = packedPosition; - - out.writeShortSmart(diffPos + 1); - - int packedAttributes = (loc.getType() << 2) | loc.getOrientation(); - out.writeByte(packedAttributes); - } - - out.writeShortSmart(0); - } - out.writeShortSmart(0); - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/MapSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/MapSaver.java deleted file mode 100644 index 855ccd413..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/MapSaver.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import net.runelite.cache.definitions.MapDefinition; -import net.runelite.cache.definitions.MapDefinition.Tile; -import net.runelite.cache.io.OutputStream; -import static net.runelite.cache.region.Region.X; -import static net.runelite.cache.region.Region.Y; -import static net.runelite.cache.region.Region.Z; - -public class MapSaver -{ - public byte[] save(MapDefinition map) - { - Tile[][][] tiles = map.getTiles(); - OutputStream out = new OutputStream(); - for (int z = 0; z < Z; z++) - { - for (int x = 0; x < X; x++) - { - for (int y = 0; y < Y; y++) - { - Tile tile = tiles[z][x][y]; - if (tile.attrOpcode != 0) - { - out.writeByte(tile.attrOpcode); - out.writeByte(tile.overlayId); - } - if (tile.settings != 0) - { - out.writeByte(tile.settings + 49); - } - if (tile.underlayId != 0) - { - out.writeByte(tile.underlayId + 81); - } - if (tile.height == null) - { - out.writeByte(0); - } - else - { - out.writeByte(1); - out.writeByte(tile.height); - } - } - } - } - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/NpcSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/NpcSaver.java deleted file mode 100644 index cf65b016b..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/NpcSaver.java +++ /dev/null @@ -1,190 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import java.util.Map; -import net.runelite.cache.definitions.NpcDefinition; -import net.runelite.cache.io.OutputStream; - -public class NpcSaver -{ - public byte[] save(NpcDefinition npc) - { - OutputStream out = new OutputStream(); - if (npc.models != null) - { - out.writeByte(1); - out.writeByte(npc.models.length); - for (int modelId : npc.models) - { - out.writeShort(modelId); - } - } - if (npc.name != null) - { - out.writeByte(2); - out.writeString(npc.name); - } - if (npc.size != 1) - { - out.writeByte(12); - out.writeByte(npc.size); - } - if (npc.standingAnimation != -1) - { - out.writeByte(13); - out.writeShort(npc.standingAnimation); - } - if (npc.walkingAnimation != -1) - { - out.writeByte(14); - out.writeShort(npc.walkingAnimation); - } - if (npc.idleRotateLeftAnimation != -1) - { - out.writeByte(15); - out.writeShort(npc.idleRotateLeftAnimation); - } - if (npc.idleRotateRightAnimation != -1) - { - out.writeByte(16); - out.writeShort(npc.idleRotateRightAnimation); - } - if (npc.rotate180Animation != -1 || npc.rotateLeftAnimation != -1 || npc.rotateRightAnimation != -1) - { - out.writeByte(17); - out.writeShort(npc.walkingAnimation); - out.writeShort(npc.rotate180Animation); - out.writeShort(npc.rotateLeftAnimation); - out.writeShort(npc.rotateRightAnimation); - } - for (int i = 0; i < 5; ++i) - { - if (npc.actions[i] != null) - { - out.writeByte(30 + i); - out.writeString(npc.actions[i]); - } - } - if (npc.recolorToFind != null && npc.recolorToReplace != null) - { - out.writeByte(40); - out.writeByte(npc.recolorToFind.length); - for (int i = 0; i < npc.recolorToFind.length; ++i) - { - out.writeShort(npc.recolorToFind[i]); - out.writeShort(npc.recolorToReplace[i]); - } - } - if (npc.retextureToFind != null && npc.retextureToReplace != null) - { - out.writeByte(41); - out.writeByte(npc.retextureToFind.length); - for (int i = 0; i < npc.retextureToFind.length; ++i) - { - out.writeShort(npc.retextureToFind[i]); - out.writeShort(npc.retextureToReplace[i]); - } - } - if (npc.chatheadModels != null) - { - out.writeByte(60); - out.writeByte(npc.chatheadModels.length); - for (int modelId : npc.chatheadModels) - { - out.writeShort(modelId); - } - } - if (!npc.isMinimapVisible) - { - out.writeByte(93); - } - if (npc.combatLevel != -1) - { - out.writeByte(95); - out.writeShort(npc.combatLevel); - } - out.writeByte(97); - out.writeShort(npc.widthScale); - out.writeByte(98); - out.writeShort(npc.heightScale); - if (npc.hasRenderPriority) - { - out.writeByte(99); - } - out.writeByte(100); - out.writeByte(npc.ambient); - out.writeByte(101); - out.writeByte(npc.contrast); - out.writeByte(103); - out.writeShort(npc.rotationSpeed); - if (!npc.isInteractable) - { - out.writeByte(107); - } - if (!npc.rotationFlag) - { - out.writeByte(109); - } - if (npc.isPet) - { - out.writeByte(111); - } - if (npc.configs != null) - { - out.writeByte(118); - out.writeShort(npc.varbitId); - out.writeShort(npc.varpIndex); - - int[] c = npc.configs; - out.writeShort(c[c.length - 1]); - out.writeByte(c.length - 2); - for (int i = 0; i <= c.length - 2; ++i) - { - out.writeShort(c[i]); - } - } - if (npc.params != null) - { - out.writeByte(249); - out.writeByte(npc.params.size()); - for (Map.Entry entry : npc.params.entrySet()) - { - out.writeByte(entry.getValue() instanceof String ? 1 : 0); - out.write24BitInt(entry.getKey()); - if (entry.getValue() instanceof String) - { - out.writeString((String) entry.getValue()); - } - else - { - out.writeInt((Integer) entry.getValue()); - } - } - } - out.writeByte(0); - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/ObjectSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/ObjectSaver.java deleted file mode 100644 index 666c9e50f..000000000 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/ObjectSaver.java +++ /dev/null @@ -1,236 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.cache.definitions.savers; - -import java.util.Map; -import net.runelite.cache.definitions.ObjectDefinition; -import net.runelite.cache.io.OutputStream; - -public class ObjectSaver -{ - public byte[] save(ObjectDefinition obj) - { - OutputStream out = new OutputStream(); - if (obj.getObjectTypes() != null && obj.getObjectModels() != null) - { - out.writeByte(1); - out.writeByte(obj.getObjectTypes().length); - for (int i = 0; i < obj.getObjectTypes().length; ++i) - { - out.writeShort(obj.getObjectModels()[i]); - out.writeByte(obj.getObjectTypes()[i]); - } - } - if (obj.getName() != null) - { - out.writeByte(2); - out.writeString(obj.getName()); - } - if (obj.getObjectTypes() == null && obj.getObjectModels() != null) - { - out.writeByte(5); - out.writeByte(obj.getObjectModels().length); - for (int i = 0; i < obj.getObjectModels().length; ++i) - { - out.writeShort(obj.getObjectModels()[i]); - } - } - out.writeByte(14); - out.writeByte(obj.getSizeX()); - out.writeByte(15); - out.writeByte(obj.getSizeY()); - if (obj.getInteractType() == 0 && !obj.isBlocksProjectile()) - { - out.writeByte(17); - } - else if (!obj.isBlocksProjectile()) - { - out.writeByte(18); - } - if (obj.getWallOrDoor() != -1) - { - out.writeByte(19); - out.writeByte(obj.getWallOrDoor()); - } - if (obj.getContouredGround() == 0) - { - out.writeByte(21); - } - if (!obj.isMergeNormals()) - { - out.writeByte(22); - } - if (obj.isABool2111()) - { - out.writeByte(23); - } - if (obj.getAnimationID() != -1) - { - out.writeByte(24); - out.writeShort(obj.getAnimationID()); - } - if (obj.getInteractType() == 1) - { - out.writeByte(27); - } - out.writeByte(28); - out.writeByte(obj.getDecorDisplacement()); - out.writeByte(29); - out.writeByte(obj.getAmbient()); - out.writeByte(39); - out.writeByte(obj.getContrast() / 25); - for (int i = 0; i < 5; ++i) - { - out.writeByte(30 + i); - String action = obj.getActions()[i]; - out.writeString(action != null ? action : "Hidden"); - } - if (obj.getRecolorToFind() != null && obj.getRecolorToReplace() != null) - { - out.writeByte(40); - out.writeByte(obj.getRecolorToFind().length); - for (int i = 0; i < obj.getRecolorToFind().length; ++i) - { - out.writeShort(obj.getRecolorToFind()[i]); - out.writeShort(obj.getRecolorToReplace()[i]); - } - } - if (obj.getRetextureToFind() != null && obj.getTextureToReplace() != null) - { - out.writeByte(41); - out.writeByte(obj.getRetextureToFind().length); - for (int i = 0; i < obj.getRetextureToFind().length; ++i) - { - out.writeShort(obj.getRetextureToFind()[i]); - out.writeShort(obj.getTextureToReplace()[i]); - } - } - if (obj.isRotated()) - { - out.writeByte(62); - } - if (!obj.isShadow()) - { - out.writeByte(64); - } - out.writeByte(65); - out.writeShort(obj.getModelSizeX()); - out.writeByte(66); - out.writeShort(obj.getModelSizeHeight()); - out.writeByte(67); - out.writeShort(obj.getModelSizeY()); - if (obj.getMapSceneID() != -1) - { - out.writeByte(68); - out.writeShort(obj.getMapSceneID()); - } - if (obj.getBlockingMask() != 0) - { - out.writeByte(69); - out.writeByte(obj.getBlockingMask()); - } - out.writeByte(70); - out.writeShort(obj.getOffsetX()); - out.writeByte(71); - out.writeShort(obj.getOffsetHeight()); - out.writeByte(72); - out.writeShort(obj.getOffsetY()); - if (obj.isObstructsGround()) - { - out.writeByte(73); - } - if (obj.isHollow()) - { - out.writeByte(74); - } - if (obj.getSupportsItems() != -1) - { - out.writeByte(75); - out.writeByte(obj.getSupportsItems()); - } - if (obj.getAmbientSoundId() != -1) - { - out.writeByte(78); - out.writeShort(obj.getAmbientSoundId()); - out.writeByte(obj.getAnInt2083()); - } - if (obj.getAmbientSoundIds() != null) - { - out.writeByte(79); - out.writeShort(obj.getAnInt2112()); - out.writeShort(obj.getAnInt2113()); - out.writeByte(obj.getAnInt2083()); - out.writeByte(obj.getAmbientSoundIds().length); - for (int i : obj.getAmbientSoundIds()) - { - out.writeShort(i); - } - } - if (obj.getContouredGround() != -1) - { - out.writeByte(81); - out.writeByte(obj.getContouredGround() / 256); - } - if (obj.getMapAreaId() != -1) - { - out.writeByte(82); - out.writeShort(obj.getMapAreaId()); - } - if (obj.getConfigChangeDest() != null) - { - out.writeByte(92); - out.writeShort(obj.getVarbitID()); - out.writeShort(obj.getVarpID()); - - int[] c = obj.getConfigChangeDest(); - out.writeShort(c[c.length - 1]); - out.writeByte(c.length - 2); - for (int i = 0; i <= c.length - 2; ++i) - { - out.writeShort(c[i]); - } - } - if (obj.getParams() != null) - { - out.writeByte(249); - out.writeByte(obj.getParams().size()); - for (Map.Entry entry : obj.getParams().entrySet()) - { - out.writeByte(entry.getValue() instanceof String ? 1 : 0); - out.write24BitInt(entry.getKey()); - if (entry.getValue() instanceof String) - { - out.writeString((String) entry.getValue()); - } - else - { - out.writeInt((Integer) entry.getValue()); - } - } - } - out.writeByte(0); - return out.flip(); - } -} diff --git a/cache/src/main/java/net/runelite/cache/definitions/savers/ScriptSaver.java b/cache/src/main/java/net/runelite/cache/definitions/savers/ScriptSaver.java index 3b130c4c5..6bdb30b7f 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/savers/ScriptSaver.java +++ b/cache/src/main/java/net/runelite/cache/definitions/savers/ScriptSaver.java @@ -24,14 +24,13 @@ */ package net.runelite.cache.definitions.savers; -import java.util.Map; -import java.util.Map.Entry; import net.runelite.cache.definitions.ScriptDefinition; import net.runelite.cache.io.OutputStream; -import static net.runelite.cache.script.Opcodes.SCONST; -import static net.runelite.cache.script.Opcodes.POP_INT; -import static net.runelite.cache.script.Opcodes.POP_STRING; -import static net.runelite.cache.script.Opcodes.RETURN; + +import java.util.Map; +import java.util.Map.Entry; + +import static net.runelite.cache.script.Opcodes.*; public class ScriptSaver { diff --git a/cache/src/main/java/net/runelite/cache/fs/Archive.java b/cache/src/main/java/net/runelite/cache/fs/Archive.java index d7b8435f3..27b146edc 100644 --- a/cache/src/main/java/net/runelite/cache/fs/Archive.java +++ b/cache/src/main/java/net/runelite/cache/fs/Archive.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.fs; -import java.io.IOException; import net.runelite.cache.index.FileData; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.IOException; + public class Archive { private static final Logger logger = LoggerFactory.getLogger(Archive.class); @@ -41,7 +42,6 @@ public class Archive private int revision; private int compression; private FileData[] fileData; - private byte[] hash; // used by webservice, sha256 hash of content public Archive(Index index, int id) { @@ -211,14 +211,4 @@ public void setFileData(FileData[] fileData) { this.fileData = fileData; } - - public byte[] getHash() - { - return hash; - } - - public void setHash(byte[] hash) - { - this.hash = hash; - } } diff --git a/cache/src/main/java/net/runelite/cache/fs/ArchiveFiles.java b/cache/src/main/java/net/runelite/cache/fs/ArchiveFiles.java index 2642b1fbb..812e31206 100644 --- a/cache/src/main/java/net/runelite/cache/fs/ArchiveFiles.java +++ b/cache/src/main/java/net/runelite/cache/fs/ArchiveFiles.java @@ -25,17 +25,13 @@ package net.runelite.cache.fs; import com.google.common.base.Preconditions; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; import net.runelite.cache.io.InputStream; import net.runelite.cache.io.OutputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.*; + public class ArchiveFiles { private static final Logger logger = LoggerFactory.getLogger(ArchiveFiles.class); diff --git a/cache/src/main/java/net/runelite/cache/fs/Container.java b/cache/src/main/java/net/runelite/cache/fs/Container.java index 9d57264bc..de2da5fa8 100644 --- a/cache/src/main/java/net/runelite/cache/fs/Container.java +++ b/cache/src/main/java/net/runelite/cache/fs/Container.java @@ -24,9 +24,7 @@ */ package net.runelite.cache.fs; -import static com.google.common.primitives.Bytes.concat; import com.google.common.primitives.Ints; -import java.io.IOException; import net.runelite.cache.fs.jagex.CompressionType; import net.runelite.cache.io.InputStream; import net.runelite.cache.io.OutputStream; @@ -37,6 +35,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.IOException; + +import static com.google.common.primitives.Bytes.concat; + public class Container { private static final Logger logger = LoggerFactory.getLogger(Container.class); @@ -88,6 +90,10 @@ public void compress(byte[] data, int[] keys) throws IOException } this.data = stream.flip(); + + Crc32 crc32 = new Crc32(); + crc32.update(this.data, 0, this.data.length - (revision != -1 ? 2 : 0)); + this.crc = crc32.getHash(); } public static Container decompress(byte[] b, int[] keys) throws IOException @@ -144,12 +150,6 @@ public static Container decompress(byte[] b, int[] keys) throws IOException int decompressedLength = stream.readInt(); data = BZip2.decompress(stream.getRemaining(), compressedLength); - - if (data == null) - { - return null; - } - assert data.length == decompressedLength; break; @@ -172,12 +172,6 @@ public static Container decompress(byte[] b, int[] keys) throws IOException int decompressedLength = stream.readInt(); data = GZip.decompress(stream.getRemaining(), compressedLength); - - if (data == null) - { - return null; - } - assert data.length == decompressedLength; break; diff --git a/cache/src/main/java/net/runelite/cache/fs/Index.java b/cache/src/main/java/net/runelite/cache/fs/Index.java index 6e915f933..0d3ebab12 100644 --- a/cache/src/main/java/net/runelite/cache/fs/Index.java +++ b/cache/src/main/java/net/runelite/cache/fs/Index.java @@ -24,9 +24,6 @@ */ package net.runelite.cache.fs; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; import net.runelite.cache.index.ArchiveData; import net.runelite.cache.index.FileData; import net.runelite.cache.index.IndexData; @@ -34,6 +31,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + public class Index { private static final Logger logger = LoggerFactory.getLogger(Index.class); diff --git a/cache/src/main/java/net/runelite/cache/fs/Storage.java b/cache/src/main/java/net/runelite/cache/fs/Storage.java index 6bcdb8881..aa43ff23f 100644 --- a/cache/src/main/java/net/runelite/cache/fs/Storage.java +++ b/cache/src/main/java/net/runelite/cache/fs/Storage.java @@ -37,7 +37,17 @@ public interface Storage extends AutoCloseable void save(Store store) throws IOException; - byte[] loadArchive(Archive archive) throws IOException; + byte[] load(int index, int archive) throws IOException; - void saveArchive(Archive archive, byte[] data) throws IOException; + void store(int index, int archive, byte[] data) throws IOException; + + default byte[] loadArchive(Archive archive) throws IOException + { + return load(archive.getIndex().getId(), archive.getArchiveId()); + } + + default void saveArchive(Archive archive, byte[] data) throws IOException + { + store(archive.getIndex().getId(), archive.getArchiveId(), data); + } } diff --git a/cache/src/main/java/net/runelite/cache/fs/Store.java b/cache/src/main/java/net/runelite/cache/fs/Store.java index 6423a8039..2b660726e 100644 --- a/cache/src/main/java/net/runelite/cache/fs/Store.java +++ b/cache/src/main/java/net/runelite/cache/fs/Store.java @@ -24,17 +24,17 @@ */ package net.runelite.cache.fs; +import net.runelite.cache.IndexType; +import net.runelite.cache.fs.jagex.DiskStorage; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.Closeable; import java.io.File; -import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Objects; -import net.runelite.cache.IndexType; -import net.runelite.cache.fs.jagex.DiskStorage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public final class Store implements Closeable { @@ -94,7 +94,7 @@ public boolean equals(Object obj) return true; } - public final Index addIndex(int id) throws FileNotFoundException + public final Index addIndex(int id) { for (Index i : indexes) { diff --git a/cache/src/main/java/net/runelite/cache/fs/flat/FlatStorage.java b/cache/src/main/java/net/runelite/cache/fs/flat/FlatStorage.java index 9afe72785..a9ad83afc 100644 --- a/cache/src/main/java/net/runelite/cache/fs/flat/FlatStorage.java +++ b/cache/src/main/java/net/runelite/cache/fs/flat/FlatStorage.java @@ -24,28 +24,16 @@ */ package net.runelite.cache.fs.flat; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.io.PrintStream; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Base64; -import java.util.Comparator; -import java.util.HashMap; -import java.util.List; -import java.util.Map; import net.runelite.cache.fs.Archive; import net.runelite.cache.fs.Index; import net.runelite.cache.fs.Storage; import net.runelite.cache.fs.Store; import net.runelite.cache.index.FileData; +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.util.*; + /** * A Storage that stores the cache as a series of flat files, designed * to be git revisioned. @@ -179,9 +167,6 @@ else if (fileData != null) case "crc": archive.setCrc(Integer.parseInt(value)); continue; - case "hash": - archive.setHash(Base64.getDecoder().decode(value)); - continue; case "compression": archive.setCompression(Integer.parseInt(value)); continue; @@ -230,13 +215,6 @@ public void save(Store store) throws IOException br.printf("revision=%d\n", archive.getRevision()); br.printf("crc=%d\n", archive.getCrc()); - if (archive.getHash() != null) - { - br.append("hash="); - br.write(Base64.getEncoder().encode(archive.getHash())); - br.append("\n"); - } - byte[] contents = store.getStorage().loadArchive(archive); if (contents != null) { @@ -256,14 +234,14 @@ public void save(Store store) throws IOException } @Override - public byte[] loadArchive(Archive archive) throws IOException + public byte[] load(int index, int archive) { - return data.get((long) archive.getIndex().getId() << 32 | archive.getArchiveId()); + return data.get((long) index << 32 | archive); } @Override - public void saveArchive(Archive archive, byte[] bytes) throws IOException + public void store(int index, int archive, byte[] bytes) { - data.put((long) archive.getIndex().getId() << 32 | archive.getArchiveId(), bytes); + data.put((long) index << 32 | archive, bytes); } } diff --git a/cache/src/main/java/net/runelite/cache/fs/jagex/DataFile.java b/cache/src/main/java/net/runelite/cache/fs/jagex/DataFile.java index 7b79f8b4f..94c56afb2 100644 --- a/cache/src/main/java/net/runelite/cache/fs/jagex/DataFile.java +++ b/cache/src/main/java/net/runelite/cache/fs/jagex/DataFile.java @@ -24,15 +24,12 @@ */ package net.runelite.cache.fs.jagex; -import java.io.Closeable; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.RandomAccessFile; -import java.nio.ByteBuffer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.*; +import java.nio.ByteBuffer; + public class DataFile implements Closeable { private static final Logger logger = LoggerFactory.getLogger(DataFile.class); diff --git a/cache/src/main/java/net/runelite/cache/fs/jagex/DiskStorage.java b/cache/src/main/java/net/runelite/cache/fs/jagex/DiskStorage.java index 0e1353706..19f81c144 100644 --- a/cache/src/main/java/net/runelite/cache/fs/jagex/DiskStorage.java +++ b/cache/src/main/java/net/runelite/cache/fs/jagex/DiskStorage.java @@ -24,22 +24,17 @@ */ package net.runelite.cache.fs.jagex; -import com.google.common.primitives.Ints; +import net.runelite.cache.fs.*; +import net.runelite.cache.index.ArchiveData; +import net.runelite.cache.index.IndexData; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; import java.util.List; -import net.runelite.cache.fs.Archive; -import net.runelite.cache.fs.Container; -import net.runelite.cache.fs.Index; -import net.runelite.cache.fs.Storage; -import net.runelite.cache.fs.Store; -import net.runelite.cache.index.ArchiveData; -import net.runelite.cache.index.IndexData; -import net.runelite.cache.util.Crc32; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class DiskStorage implements Storage { @@ -87,6 +82,11 @@ public void close() throws IOException private IndexFile getIndex(int i) throws FileNotFoundException { + if (i == 255) + { + return index255; + } + for (IndexFile indexFile : indexFiles) { if (indexFile.getIndexFileId() == i) @@ -157,30 +157,6 @@ private void loadIndex(Index index) throws IOException assert res.revision == -1; } - @Override - public byte[] loadArchive(Archive archive) throws IOException - { - Index index = archive.getIndex(); - IndexFile indexFile = getIndex(index.getId()); - - assert indexFile.getIndexFileId() == index.getId(); - - IndexEntry entry = indexFile.read(archive.getArchiveId()); - if (entry == null) - { - logger.debug("can't read archive " + archive.getArchiveId() + " from index " + index.getId()); - return null; - } - - assert entry.getId() == archive.getArchiveId(); - - logger.trace("Loading archive {} for index {} from sector {} length {}", - archive.getArchiveId(), index.getId(), entry.getSector(), entry.getLength()); - - byte[] archiveData = data.read(index.getId(), entry.getId(), entry.getSector(), entry.getLength()); - return archiveData; - } - @Override public void save(Store store) throws IOException { @@ -200,40 +176,45 @@ private void saveIndex(Index index) throws IOException Container container = new Container(index.getCompression(), -1); // index data revision is always -1 container.compress(data, null); byte[] compressedData = container.data; - DataFileWriteResult res = this.data.write(index255.getIndexFileId(), index.getId(), compressedData); - index255.write(new IndexEntry(index255, index.getId(), res.sector, res.compressedLength)); + store(255, index.getId(), compressedData); - Crc32 crc = new Crc32(); - crc.update(compressedData, 0, compressedData.length); - index.setCrc(crc.getHash()); + index.setCrc(container.crc); } @Override - public void saveArchive(Archive a, byte[] archiveData) throws IOException + public byte[] load(int index, int archive) throws IOException { - Index index = a.getIndex(); - IndexFile indexFile = getIndex(index.getId()); - assert indexFile.getIndexFileId() == index.getId(); + IndexFile indexFile = getIndex(index); - DataFileWriteResult res = data.write(index.getId(), a.getArchiveId(), archiveData); - indexFile.write(new IndexEntry(indexFile, a.getArchiveId(), res.sector, res.compressedLength)); + assert indexFile.getIndexFileId() == index; - byte compression = archiveData[0]; - int compressedSize = Ints.fromBytes(archiveData[1], archiveData[2], - archiveData[3], archiveData[4]); + IndexEntry entry = indexFile.read(archive); + if (entry == null) + { + logger.debug("can't read archive {} from index {}", archive, index); + return null; + } + + assert entry.getId() == archive; - // don't crc the appended revision, if it is there - int length = 1 // compression type - + 4 // compressed size - + compressedSize - + (compression != CompressionType.NONE ? 4 : 0); + logger.trace("Loading archive {} for index {} from sector {} length {}", + archive, index, entry.getSector(), entry.getLength()); + + byte[] archiveData = data.read(index, entry.getId(), entry.getSector(), entry.getLength()); + return archiveData; + } + + @Override + public void store(int index, int archive, byte[] archiveData) throws IOException + { + IndexFile indexFile = getIndex(index); + assert indexFile.getIndexFileId() == index; - Crc32 crc = new Crc32(); - crc.update(archiveData, 0, length); - a.setCrc(crc.getHash()); + DataFileWriteResult res = data.write(index, archive, archiveData); + indexFile.write(new IndexEntry(indexFile, archive, res.sector, res.compressedLength)); logger.trace("Saved archive {}/{} at sector {}, compressed length {}", - index.getId(), a.getArchiveId(), res.sector, res.compressedLength); + index, archive, res.sector, res.compressedLength); } } diff --git a/cache/src/main/java/net/runelite/cache/fs/jagex/IndexFile.java b/cache/src/main/java/net/runelite/cache/fs/jagex/IndexFile.java index b95ae70e3..3987509f4 100644 --- a/cache/src/main/java/net/runelite/cache/fs/jagex/IndexFile.java +++ b/cache/src/main/java/net/runelite/cache/fs/jagex/IndexFile.java @@ -24,15 +24,12 @@ */ package net.runelite.cache.fs.jagex; -import java.io.Closeable; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.RandomAccessFile; -import java.util.Objects; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.*; +import java.util.Objects; + public class IndexFile implements Closeable { private static final Logger logger = LoggerFactory.getLogger(IndexFile.class); diff --git a/cache/src/main/java/net/runelite/cache/index/IndexData.java b/cache/src/main/java/net/runelite/cache/index/IndexData.java index 38747bd45..d644eaae2 100644 --- a/cache/src/main/java/net/runelite/cache/index/IndexData.java +++ b/cache/src/main/java/net/runelite/cache/index/IndexData.java @@ -54,7 +54,6 @@ public void load(byte[] data) { throw new IllegalArgumentException("Unknown flags"); } - assert (hash & ~3) == 0; int validArchivesCount = protocol >= 7 ? stream.readBigSmart() : stream.readUnsignedShort(); int lastArchiveId = 0; diff --git a/cache/src/main/java/net/runelite/cache/io/OutputStream.java b/cache/src/main/java/net/runelite/cache/io/OutputStream.java index fd31d1b96..30ac256ab 100644 --- a/cache/src/main/java/net/runelite/cache/io/OutputStream.java +++ b/cache/src/main/java/net/runelite/cache/io/OutputStream.java @@ -25,6 +25,7 @@ package net.runelite.cache.io; import com.google.common.base.Preconditions; + import java.io.IOException; import java.nio.ByteBuffer; import java.nio.charset.StandardCharsets; diff --git a/cache/src/main/java/net/runelite/cache/item/Graphics3D.java b/cache/src/main/java/net/runelite/cache/item/Graphics3D.java index 85e599fe5..5745dcb40 100644 --- a/cache/src/main/java/net/runelite/cache/item/Graphics3D.java +++ b/cache/src/main/java/net/runelite/cache/item/Graphics3D.java @@ -33,9 +33,6 @@ class Graphics3D extends Rasterizer2D public static final int[] SINE = new int[2048]; // sine angles for each of the 2048 units, * 65536 and stored as an int public static final int[] COSINE = new int[2048]; // cosine - private static int[] field1932 = new int[512]; - static int[] field1933 = new int[2048]; - static { for (int i = 0; i < 2048; ++i) @@ -43,17 +40,6 @@ class Graphics3D extends Rasterizer2D SINE[i] = (int) (65536.0D * Math.sin((double) i * UNIT)); COSINE[i] = (int) (65536.0D * Math.cos((double) i * UNIT)); } - - int var0; - for (var0 = 1; var0 < 512; ++var0) - { - field1932[var0] = 32768 / var0; - } - - for (var0 = 1; var0 < 2048; ++var0) - { - field1933[var0] = 65536 / var0; - } } private final RSTextureProvider textureProvider; diff --git a/cache/src/main/java/net/runelite/cache/item/ItemSpriteFactory.java b/cache/src/main/java/net/runelite/cache/item/ItemSpriteFactory.java index b2f643f02..13b732bf3 100644 --- a/cache/src/main/java/net/runelite/cache/item/ItemSpriteFactory.java +++ b/cache/src/main/java/net/runelite/cache/item/ItemSpriteFactory.java @@ -24,8 +24,6 @@ */ package net.runelite.cache.item; -import java.awt.image.BufferedImage; -import java.io.IOException; import net.runelite.cache.definitions.ItemDefinition; import net.runelite.cache.definitions.ModelDefinition; import net.runelite.cache.definitions.providers.ItemProvider; @@ -36,22 +34,25 @@ import net.runelite.cache.models.JagexColor; import net.runelite.cache.models.VertexNormal; +import java.awt.image.BufferedImage; +import java.io.IOException; + public class ItemSpriteFactory { - public static final BufferedImage createSprite(ItemProvider itemProvider, ModelProvider modelProvider, - SpriteProvider spriteProvider, TextureProvider textureProvider, - int itemId, int quantity, int border, int shadowColor, - boolean noted) throws IOException + public static BufferedImage createSprite(ItemProvider itemProvider, ModelProvider modelProvider, + SpriteProvider spriteProvider, TextureProvider textureProvider, + int itemId, int quantity, int border, int shadowColor, + boolean noted) throws IOException { - Sprite spritePixels = createSpritePixels(itemProvider, modelProvider, spriteProvider, textureProvider, - itemId, quantity, border, shadowColor, noted); + SpritePixels spritePixels = createSpritePixels(itemProvider, modelProvider, spriteProvider, textureProvider, + itemId, quantity, border, shadowColor, noted); return spritePixels == null ? null : spritePixels.toBufferedImage(); } - private static final Sprite createSpritePixels(ItemProvider itemProvider, ModelProvider modelProvider, - SpriteProvider spriteProvider, TextureProvider textureProvider, - int itemId, int quantity, int border, int shadowColor, - boolean noted) throws IOException + private static SpritePixels createSpritePixels(ItemProvider itemProvider, ModelProvider modelProvider, + SpriteProvider spriteProvider, TextureProvider textureProvider, + int itemId, int quantity, int border, int shadowColor, + boolean noted) throws IOException { ItemDefinition item = itemProvider.provide(itemId); @@ -79,11 +80,11 @@ private static final Sprite createSpritePixels(ItemProvider itemProvider, ModelP return null; } - Sprite auxSpritePixels = null; + SpritePixels auxSpritePixels = null; if (item.notedTemplate != -1) { auxSpritePixels = createSpritePixels(itemProvider, modelProvider, spriteProvider, textureProvider, - item.notedID, 10, 1, 0, true); + item.notedID, 10, 1, 0, true); if (auxSpritePixels == null) { return null; @@ -101,7 +102,7 @@ else if (item.boughtTemplateId != -1) else if (item.placeholderTemplateId != -1) { auxSpritePixels = createSpritePixels(itemProvider, modelProvider, spriteProvider, textureProvider, - item.placeholderId, quantity, 0, 0, false); + item.placeholderId, quantity, 0, 0, false); if (auxSpritePixels == null) { return null; @@ -109,8 +110,9 @@ else if (item.placeholderTemplateId != -1) } RSTextureProvider rsTextureProvider = new RSTextureProvider(textureProvider, spriteProvider); + rsTextureProvider.brightness = JagexColor.BRIGHTNESS_MAX; - Sprite spritePixels = new Sprite(36, 32); + SpritePixels spritePixels = new SpritePixels(36, 32); Graphics3D graphics = new Graphics3D(rsTextureProvider); graphics.setBrightness(JagexColor.BRIGHTNESS_MAX); graphics.setRasterBuffer(spritePixels.pixels, 36, 32); @@ -137,13 +139,13 @@ else if (border == 2) int var18 = zoom2d * Graphics3D.COSINE[item.xan2d] >> 16; itemModel.calculateBoundsCylinder(); - itemModel.rotateAndProject(graphics, 0, - item.yan2d, - item.zan2d, - item.xan2d, - item.xOffset2d, - itemModel.modelHeight / 2 + var17 + item.yOffset2d, - var18 + item.yOffset2d); + itemModel.projectAndDraw(graphics, 0, + item.yan2d, + item.zan2d, + item.xan2d, + item.xOffset2d, + itemModel.modelHeight / 2 + var17 + item.yOffset2d, + var18 + item.yOffset2d); if (item.boughtTemplateId != -1) { auxSpritePixels.drawAtOn(graphics, 0, 0); @@ -171,8 +173,8 @@ else if (border == 2) } graphics.setRasterBuffer(graphics.graphicsPixels, - graphics.graphicsPixelsWidth, - graphics.graphicsPixelsHeight); + graphics.graphicsPixelsWidth, + graphics.graphicsPixelsHeight); graphics.setRasterClipping(); graphics.rasterGouraudLowRes = true; @@ -210,7 +212,6 @@ private static Model getModel(ModelProvider modelProvider, ItemDefinition item) } itemModel = light(inventoryModel, item.ambient + 64, item.contrast + 768, -50, -10, -50); - itemModel.isItemModel = true; return itemModel; } @@ -220,9 +221,9 @@ private static Model light(ModelDefinition def, int ambient, int contrast, int x int somethingMagnitude = (int) Math.sqrt((double) (z * z + x * x + y * y)); int var7 = somethingMagnitude * contrast >> 8; Model litModel = new Model(); - litModel.field1856 = new int[def.faceCount]; - litModel.field1854 = new int[def.faceCount]; - litModel.field1823 = new int[def.faceCount]; + litModel.faceColors1 = new int[def.faceCount]; + litModel.faceColors2 = new int[def.faceCount]; + litModel.faceColors3 = new int[def.faceCount]; if (def.numTextureFaces > 0 && def.textureCoords != null) { int[] var9 = new int[def.numTextureFaces]; @@ -236,19 +237,19 @@ private static Model light(ModelDefinition def, int ambient, int contrast, int x } } - litModel.field1852 = 0; + litModel.numTextureFaces = 0; for (var10 = 0; var10 < def.numTextureFaces; ++var10) { if (var9[var10] > 0 && def.textureRenderTypes[var10] == 0) { - ++litModel.field1852; + ++litModel.numTextureFaces; } } - litModel.field1844 = new int[litModel.field1852]; - litModel.field1865 = new int[litModel.field1852]; - litModel.field1846 = new int[litModel.field1852]; + litModel.texIndices1 = new int[litModel.numTextureFaces]; + litModel.texIndices2 = new int[litModel.numTextureFaces]; + litModel.texIndices3 = new int[litModel.numTextureFaces]; var10 = 0; @@ -256,9 +257,9 @@ private static Model light(ModelDefinition def, int ambient, int contrast, int x { if (var9[i] > 0 && def.textureRenderTypes[i] == 0) { - litModel.field1844[var10] = def.texIndices1[i] & '\uffff'; - litModel.field1865[var10] = def.texIndices2[i] & '\uffff'; - litModel.field1846[var10] = def.texIndices3[i] & '\uffff'; + litModel.texIndices1[var10] = def.texIndices1[i] & '\uffff'; + litModel.texIndices2[var10] = def.texIndices2[i] & '\uffff'; + litModel.texIndices3[var10] = def.texIndices3[i] & '\uffff'; var9[i] = var10++; } else @@ -267,17 +268,17 @@ private static Model light(ModelDefinition def, int ambient, int contrast, int x } } - litModel.field1840 = new byte[def.faceCount]; + litModel.textureCoords = new byte[def.faceCount]; for (int i = 0; i < def.faceCount; ++i) { if (def.textureCoords[i] != -1) { - litModel.field1840[i] = (byte) var9[def.textureCoords[i] & 255]; + litModel.textureCoords[i] = (byte) var9[def.textureCoords[i] & 255]; } else { - litModel.field1840[i] = -1; + litModel.textureCoords[i] = -1; } } } @@ -335,17 +336,17 @@ private static Model light(ModelDefinition def, int ambient, int contrast, int x { faceNormal = def.faceNormals[faceIdx]; tmp = (y * faceNormal.y + z * faceNormal.z + x * faceNormal.x) / (var7 / 2 + var7) + ambient; - litModel.field1856[faceIdx] = method2608(def.faceColors[faceIdx] & '\uffff', tmp); - litModel.field1823[faceIdx] = -1; + litModel.faceColors1[faceIdx] = method2608(def.faceColors[faceIdx] & '\uffff', tmp); + litModel.faceColors3[faceIdx] = -1; } else if (faceType == 3) { - litModel.field1856[faceIdx] = 128; - litModel.field1823[faceIdx] = -1; + litModel.faceColors1[faceIdx] = 128; + litModel.faceColors3[faceIdx] = -1; } else { - litModel.field1823[faceIdx] = -2; + litModel.faceColors3[faceIdx] = -2; } } else @@ -354,15 +355,15 @@ else if (faceType == 3) vertexNormal = def.vertexNormals[def.faceIndices1[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1856[faceIdx] = method2608(var15, tmp); + litModel.faceColors1[faceIdx] = method2608(var15, tmp); vertexNormal = def.vertexNormals[def.faceIndices2[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1854[faceIdx] = method2608(var15, tmp); + litModel.faceColors2[faceIdx] = method2608(var15, tmp); vertexNormal = def.vertexNormals[def.faceIndices3[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1823[faceIdx] = method2608(var15, tmp); + litModel.faceColors3[faceIdx] = method2608(var15, tmp); } } else if (faceType != 0) @@ -371,12 +372,12 @@ else if (faceType != 0) { faceNormal = def.faceNormals[faceIdx]; tmp = (y * faceNormal.y + z * faceNormal.z + x * faceNormal.x) / (var7 / 2 + var7) + ambient; - litModel.field1856[faceIdx] = bound2to126(tmp); - litModel.field1823[faceIdx] = -1; + litModel.faceColors1[faceIdx] = bound2to126(tmp); + litModel.faceColors3[faceIdx] = -1; } else { - litModel.field1823[faceIdx] = -2; + litModel.faceColors3[faceIdx] = -2; } } else @@ -384,15 +385,15 @@ else if (faceType != 0) vertexNormal = def.vertexNormals[def.faceIndices1[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1856[faceIdx] = bound2to126(tmp); + litModel.faceColors1[faceIdx] = bound2to126(tmp); vertexNormal = def.vertexNormals[def.faceIndices2[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1854[faceIdx] = bound2to126(tmp); + litModel.faceColors2[faceIdx] = bound2to126(tmp); vertexNormal = def.vertexNormals[def.faceIndices3[faceIdx]]; tmp = (y * vertexNormal.y + z * vertexNormal.z + x * vertexNormal.x) / (var7 * vertexNormal.magnitude) + ambient; - litModel.field1823[faceIdx] = bound2to126(tmp); + litModel.faceColors3[faceIdx] = bound2to126(tmp); } } @@ -404,14 +405,13 @@ else if (faceType != 0) litModel.indices1 = def.faceIndices1; litModel.indices2 = def.faceIndices2; litModel.indices3 = def.faceIndices3; - litModel.field1838 = def.faceRenderPriorities; - litModel.field1882 = def.faceTransparencies; - litModel.field1842 = def.priority; - litModel.field1841 = def.faceTextures; + litModel.facePriorities = def.faceRenderPriorities; + litModel.faceTransparencies = def.faceTransparencies; + litModel.faceTextures = def.faceTextures; return litModel; } - static final int method2608(int var0, int var1) + static int method2608(int var0, int var1) { var1 = ((var0 & 127) * var1) >> 7; var1 = bound2to126(var1); @@ -419,7 +419,7 @@ static final int method2608(int var0, int var1) return (var0 & 65408) + var1; } - static final int bound2to126(int var0) + static int bound2to126(int var0) { if (var0 < 2) { diff --git a/cache/src/main/java/net/runelite/cache/item/Model.java b/cache/src/main/java/net/runelite/cache/item/Model.java index e35943acf..41ad14673 100644 --- a/cache/src/main/java/net/runelite/cache/item/Model.java +++ b/cache/src/main/java/net/runelite/cache/item/Model.java @@ -26,27 +26,22 @@ class Model extends Renderable { - boolean[] field1887 = new boolean[4700]; - boolean[] field1885 = new boolean[4700]; - int[] modelViewportYs = new int[4700]; - int[] modelViewportXs = new int[4700]; - int[] modelViewportZs = new int[4700]; - int[] yViewportBuffer = new int[4700]; - int[] field1839 = new int[4700]; - int[] field1869 = new int[4700]; - int[] field1871 = new int[1600]; - int[][] field1868 = new int[1600][512]; - int[] field1872 = new int[12]; - int[][] field1874 = new int[12][2000]; - int[] field1857 = new int[2000]; - int[] field1863 = new int[2000]; - int[] field1877 = new int[12]; - int[] field1831 = new int[10]; - int[] field1837 = new int[10]; - int[] xViewportBuffer = new int[10]; + boolean[] faceClipped = new boolean[6500]; + int[] modelViewportYs = new int[6500]; + int[] modelViewportXs = new int[6500]; + int[] modelViewportZs = new int[6500]; + int[] modelLocalX = new int[6500]; + int[] modelLocalY = new int[6500]; + int[] modelLocalZ = new int[6500]; + int[] distanceFaceCount = new int[6000]; + int[][] facesByDistance = new int[6000][512]; + int[] numOfPriority = new int[12]; + int[][] orderedFaces = new int[12][2000]; + int[] eq10 = new int[2000]; + int[] eq11 = new int[2000]; + int[] lt10 = new int[12]; static int[] Model_sine; static int[] Model_cosine; - static int[] field1890; int verticesCount; int[] verticesX; int[] verticesY; @@ -55,19 +50,17 @@ class Model extends Renderable int[] indices1; int[] indices2; int[] indices3; - int[] field1856; - int[] field1854; - int[] field1823; - byte[] field1838; - byte[] field1882; - byte[] field1840; - short[] field1841; - byte field1842; - int field1852; - int[] field1844; - int[] field1865; - int[] field1846; - public boolean isItemModel; + int[] faceColors1; + int[] faceColors2; + int[] faceColors3; + byte[] facePriorities; + byte[] faceTransparencies; + byte[] textureCoords; + short[] faceTextures; + int numTextureFaces; + int[] texIndices1; + int[] texIndices2; + int[] texIndices3; int boundsType; int bottomY; int XYZMag; @@ -81,16 +74,13 @@ class Model extends Renderable { Model_sine = Graphics3D.SINE; Model_cosine = Graphics3D.COSINE; - field1890 = Graphics3D.field1933; } Model() { this.verticesCount = 0; this.indicesCount = 0; - this.field1842 = 0; - this.field1852 = 0; - this.isItemModel = false; + this.numTextureFaces = 0; this.extremeX = -1; this.extremeY = -1; this.extremeZ = -1; @@ -133,9 +123,9 @@ public void calculateBoundsCylinder() } } - public final void rotateAndProject(Graphics3D graphics, int rotation_1, int yRotation, int zRotation, int xRotation, int xOffset, int yOffset, int zOffset) + public final void projectAndDraw(Graphics3D graphics, int yzRotation, int xzRotation, int xyRotation, int orientation, int xOffset, int yOffset, int zOffset) { - field1871[0] = -1; + distanceFaceCount[0] = -1; // (re?)Calculate magnitude as necessary if (this.boundsType != 2 && this.boundsType != 1) { @@ -160,8 +150,8 @@ public final void rotateAndProject(Graphics3D graphics, int rotation_1, int yRot } // rotate + perspective transform - int sinX = Model_sine[xRotation]; - int cosX = Model_cosine[xRotation]; + int sinX = Model_sine[orientation]; + int cosX = Model_cosine[orientation]; int zRelatedVariable = sinX * yOffset + cosX * zOffset >> 16; for (int i = 0; i < this.verticesCount; ++i) @@ -169,30 +159,30 @@ public final void rotateAndProject(Graphics3D graphics, int rotation_1, int yRot int x = this.verticesX[i]; int y = this.verticesY[i]; int z = this.verticesZ[i]; - if (zRotation != 0) + if (xyRotation != 0) { - int sinZ = Model_sine[zRotation]; - int cosZ = Model_cosine[zRotation]; + int sinZ = Model_sine[xyRotation]; + int cosZ = Model_cosine[xyRotation]; int tmp; tmp = y * sinZ + x * cosZ >> 16; y = y * cosZ - x * sinZ >> 16; x = tmp; } - if (rotation_1 != 0) + if (yzRotation != 0) { - int sinR1 = Model_sine[rotation_1]; - int cosR1 = Model_cosine[rotation_1]; + int sinR1 = Model_sine[yzRotation]; + int cosR1 = Model_cosine[yzRotation]; int tmp; tmp = y * cosR1 - z * sinR1 >> 16; z = y * sinR1 + z * cosR1 >> 16; y = tmp; } - if (yRotation != 0) + if (xzRotation != 0) { - int sinY = Model_sine[yRotation]; - int cosY = Model_cosine[yRotation]; + int sinY = Model_sine[xzRotation]; + int cosY = Model_cosine[xzRotation]; int tmp; tmp = z * sinY + x * cosY >> 16; z = z * cosY - x * sinY >> 16; @@ -207,25 +197,24 @@ public final void rotateAndProject(Graphics3D graphics, int rotation_1, int yRot modelViewportZs[i] = z - zRelatedVariable; modelViewportYs[i] = x * graphics.Rasterizer3D_zoom / z + graphics.centerX; modelViewportXs[i] = tmp * graphics.Rasterizer3D_zoom / z + graphics.centerY; - if (this.field1852 > 0) + if (faceTextures != null) { - yViewportBuffer[i] = x; - field1839[i] = tmp; - field1869[i] = z; + modelLocalX[i] = x; + modelLocalY[i] = tmp; + modelLocalZ[i] = z; } } - this.method0(graphics, false, false, 0); + this.draw(graphics); } - - private void method0(Graphics3D graphics, boolean var1, boolean var3, int var4) + private void draw(Graphics3D graphics) { - if (this.diameter < 1600) + if (this.diameter < 6000) { for (int var5 = 0; var5 < this.diameter; ++var5) { - field1871[var5] = 0; + distanceFaceCount[var5] = 0; } int var7; @@ -236,17 +225,13 @@ private void method0(Graphics3D graphics, boolean var1, boolean var3, int var4) int var13; int var14; int var15; - int var16; int var17; - int var18; - int var19; - int var20; int var27; int var26; for (var26 = 0; var26 < this.indicesCount; ++var26) { - if (this.field1823[var26] != -2) + if (this.faceColors3[var26] != -2) { var7 = this.indices1[var26]; var27 = this.indices2[var26]; @@ -254,67 +239,37 @@ private void method0(Graphics3D graphics, boolean var1, boolean var3, int var4) var10 = modelViewportYs[var7]; var11 = modelViewportYs[var27]; var12 = modelViewportYs[var9]; - if (var1 && (var10 == -5000 || var11 == -5000 || var12 == -5000)) + + if ((var10 - var11) * (modelViewportXs[var9] - modelViewportXs[var27]) - (var12 - var11) * (modelViewportXs[var7] - modelViewportXs[var27]) > 0) { - var13 = yViewportBuffer[var7]; - var14 = yViewportBuffer[var27]; - var15 = yViewportBuffer[var9]; - var16 = field1839[var7]; - var17 = field1839[var27]; - var18 = field1839[var9]; - var19 = field1869[var7]; - var20 = field1869[var27]; - int var21 = field1869[var9]; - var13 -= var14; - var15 -= var14; - var16 -= var17; - var18 -= var17; - var19 -= var20; - var21 -= var20; - int var22 = var16 * var21 - var19 * var18; - int var23 = var19 * var15 - var13 * var21; - int var24 = var13 * var18 - var16 * var15; - if (var14 * var22 + var17 * var23 + var20 * var24 > 0) + if (var10 >= 0 && var11 >= 0 && var12 >= 0 && var10 <= graphics.rasterClipX && var11 <= graphics.rasterClipX && var12 <= graphics.rasterClipX) { - field1885[var26] = true; - int var25 = (modelViewportZs[var7] + modelViewportZs[var27] + modelViewportZs[var9]) / 3 + this.radius; - field1868[var25][field1871[var25]++] = var26; + faceClipped[var26] = false; } - } - else - { - if ((var10 - var11) * (modelViewportXs[var9] - modelViewportXs[var27]) - (var12 - var11) * (modelViewportXs[var7] - modelViewportXs[var27]) > 0) + else { - field1885[var26] = false; - if (var10 >= 0 && var11 >= 0 && var12 >= 0 && var10 <= graphics.rasterClipX && var11 <= graphics.rasterClipX && var12 <= graphics.rasterClipX) - { - field1887[var26] = false; - } - else - { - field1887[var26] = true; - } - - var13 = (modelViewportZs[var7] + modelViewportZs[var27] + modelViewportZs[var9]) / 3 + this.radius; - field1868[var13][field1871[var13]++] = var26; + faceClipped[var26] = true; } + + var13 = (modelViewportZs[var7] + modelViewportZs[var27] + modelViewportZs[var9]) / 3 + this.radius; + facesByDistance[var13][distanceFaceCount[var13]++] = var26; } } } int[] var8; - if (this.field1838 == null) + if (this.facePriorities == null) { for (var26 = this.diameter - 1; var26 >= 0; --var26) { - var7 = field1871[var26]; + var7 = distanceFaceCount[var26]; if (var7 > 0) { - var8 = field1868[var26]; + var8 = facesByDistance[var26]; for (var9 = 0; var9 < var7; ++var9) { - this.method2706(graphics, var8[var9]); + this.rasterFace(graphics, var8[var9]); } } } @@ -324,67 +279,67 @@ private void method0(Graphics3D graphics, boolean var1, boolean var3, int var4) { for (var26 = 0; var26 < 12; ++var26) { - field1872[var26] = 0; - field1877[var26] = 0; + numOfPriority[var26] = 0; + lt10[var26] = 0; } for (var26 = this.diameter - 1; var26 >= 0; --var26) { - var7 = field1871[var26]; + var7 = distanceFaceCount[var26]; if (var7 > 0) { - var8 = field1868[var26]; + var8 = facesByDistance[var26]; for (var9 = 0; var9 < var7; ++var9) { var10 = var8[var9]; - byte var31 = this.field1838[var10]; - var12 = field1872[var31]++; - field1874[var31][var12] = var10; + byte var31 = this.facePriorities[var10]; + var12 = numOfPriority[var31]++; + orderedFaces[var31][var12] = var10; if (var31 < 10) { - field1877[var31] += var26; + lt10[var31] += var26; } else if (var31 == 10) { - field1857[var12] = var26; + eq10[var12] = var26; } else { - field1863[var12] = var26; + eq11[var12] = var26; } } } } var26 = 0; - if (field1872[1] > 0 || field1872[2] > 0) + if (numOfPriority[1] > 0 || numOfPriority[2] > 0) { - var26 = (field1877[1] + field1877[2]) / (field1872[1] + field1872[2]); + var26 = (lt10[1] + lt10[2]) / (numOfPriority[1] + numOfPriority[2]); } var7 = 0; - if (field1872[3] > 0 || field1872[4] > 0) + if (numOfPriority[3] > 0 || numOfPriority[4] > 0) { - var7 = (field1877[3] + field1877[4]) / (field1872[3] + field1872[4]); + var7 = (lt10[3] + lt10[4]) / (numOfPriority[3] + numOfPriority[4]); } var27 = 0; - if (field1872[6] > 0 || field1872[8] > 0) + if (numOfPriority[6] > 0 || numOfPriority[8] > 0) { - var27 = (field1877[8] + field1877[6]) / (field1872[8] + field1872[6]); + var27 = (lt10[8] + lt10[6]) / (numOfPriority[8] + numOfPriority[6]); } var10 = 0; - var11 = field1872[10]; - int[] var28 = field1874[10]; - int[] var29 = field1857; + var11 = numOfPriority[10]; + int[] var28 = orderedFaces[10]; + int[] var29 = eq10; if (var10 == var11) { var10 = 0; - var11 = field1872[11]; - var28 = field1874[11]; - var29 = field1863; + var11 = numOfPriority[11]; + var28 = orderedFaces[11]; + var29 = eq11; } if (var10 < var11) @@ -400,13 +355,13 @@ else if (var31 == 10) { while (var14 == 0 && var9 > var26) { - this.method2706(graphics, var28[var10++]); - if (var10 == var11 && var28 != field1874[11]) + this.rasterFace(graphics, var28[var10++]); + if (var10 == var11 && var28 != orderedFaces[11]) { var10 = 0; - var11 = field1872[11]; - var28 = field1874[11]; - var29 = field1863; + var11 = numOfPriority[11]; + var28 = orderedFaces[11]; + var29 = eq11; } if (var10 < var11) @@ -421,13 +376,13 @@ else if (var31 == 10) while (var14 == 3 && var9 > var7) { - this.method2706(graphics, var28[var10++]); - if (var10 == var11 && var28 != field1874[11]) + this.rasterFace(graphics, var28[var10++]); + if (var10 == var11 && var28 != orderedFaces[11]) { var10 = 0; - var11 = field1872[11]; - var28 = field1874[11]; - var29 = field1863; + var11 = numOfPriority[11]; + var28 = orderedFaces[11]; + var29 = eq11; } if (var10 < var11) @@ -442,13 +397,13 @@ else if (var31 == 10) while (var14 == 5 && var9 > var27) { - this.method2706(graphics, var28[var10++]); - if (var10 == var11 && var28 != field1874[11]) + this.rasterFace(graphics, var28[var10++]); + if (var10 == var11 && var28 != orderedFaces[11]) { var10 = 0; - var11 = field1872[11]; - var28 = field1874[11]; - var29 = field1863; + var11 = numOfPriority[11]; + var28 = orderedFaces[11]; + var29 = eq11; } if (var10 < var11) @@ -461,24 +416,24 @@ else if (var31 == 10) } } - var15 = field1872[var14]; - int[] var30 = field1874[var14]; + var15 = numOfPriority[var14]; + int[] var30 = orderedFaces[var14]; for (var17 = 0; var17 < var15; ++var17) { - this.method2706(graphics, var30[var17]); + this.rasterFace(graphics, var30[var17]); } } while (var9 != -1000) { - this.method2706(graphics, var28[var10++]); - if (var10 == var11 && var28 != field1874[11]) + this.rasterFace(graphics, var28[var10++]); + if (var10 == var11 && var28 != orderedFaces[11]) { var10 = 0; - var28 = field1874[11]; - var11 = field1872[11]; - var29 = field1863; + var28 = orderedFaces[11]; + var11 = numOfPriority[11]; + var29 = eq11; } if (var10 < var11) @@ -495,279 +450,57 @@ else if (var31 == 10) } } - private void method2706(Graphics3D graphics, int var1) - { - if (field1885[var1]) - { - this.method2707(graphics, var1); - } - else - { - int var2 = this.indices1[var1]; - int var3 = this.indices2[var1]; - int var4 = this.indices3[var1]; - graphics.rasterClipEnable = field1887[var1]; - if (this.field1882 == null) - { - graphics.rasterAlpha = 0; - } - else - { - graphics.rasterAlpha = this.field1882[var1] & 255; - } - - if (this.field1841 != null && this.field1841[var1] != -1) - { - int var5; - int var6; - int var7; - if (this.field1840 != null && this.field1840[var1] != -1) - { - int var8 = this.field1840[var1] & 255; - var5 = this.field1844[var8]; - var6 = this.field1865[var8]; - var7 = this.field1846[var8]; - } - else - { - var5 = var2; - var6 = var3; - var7 = var4; - } - - if (this.field1823[var1] == -1) - { - graphics.rasterTextureAffine(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.field1856[var1], this.field1856[var1], this.field1856[var1], yViewportBuffer[var5], yViewportBuffer[var6], yViewportBuffer[var7], field1839[var5], field1839[var6], field1839[var7], field1869[var5], field1869[var6], field1869[var7], this.field1841[var1]); - } - else - { - graphics.rasterTextureAffine(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.field1856[var1], this.field1854[var1], this.field1823[var1], yViewportBuffer[var5], yViewportBuffer[var6], yViewportBuffer[var7], field1839[var5], field1839[var6], field1839[var7], field1869[var5], field1869[var6], field1869[var7], this.field1841[var1]); - } - } - else if (this.field1823[var1] == -1) - { - int[] field1889 = graphics.colorPalette; - graphics.rasterFlat(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], field1889[this.field1856[var1]]); - } - else - { - graphics.rasterGouraud(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.field1856[var1], this.field1854[var1], this.field1823[var1]); - } - - } - } - - - private void method2707(Graphics3D graphics, int var1) + private void rasterFace(Graphics3D graphics, int face) { - int var2 = graphics.centerX; - int var3 = graphics.centerY; - int var4 = 0; - int var5 = this.indices1[var1]; - int var6 = this.indices2[var1]; - int var7 = this.indices3[var1]; - int var8 = field1869[var5]; - int var9 = field1869[var6]; - int var10 = field1869[var7]; - if (this.field1882 == null) + int var2 = this.indices1[face]; + int var3 = this.indices2[face]; + int var4 = this.indices3[face]; + graphics.rasterClipEnable = faceClipped[face]; + if (this.faceTransparencies == null) { graphics.rasterAlpha = 0; } else { - graphics.rasterAlpha = this.field1882[var1] & 255; + graphics.rasterAlpha = this.faceTransparencies[face] & 255; } - int var11; - int var12; - int var13; - int var14; - if (var8 >= 50) + if (this.faceTextures != null && this.faceTextures[face] != -1) { - field1831[var4] = modelViewportYs[var5]; - field1837[var4] = modelViewportXs[var5]; - xViewportBuffer[var4++] = this.field1856[var1]; - } - else - { - var11 = yViewportBuffer[var5]; - var12 = field1839[var5]; - var13 = this.field1856[var1]; - if (var10 >= 50) + int var5; + int var6; + int var7; + if (this.textureCoords != null && this.textureCoords[face] != -1) { - var14 = field1890[var10 - var8] * (50 - var8); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var7] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var7] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1823[var1] - var13) * var14 >> 16); + int var8 = this.textureCoords[face] & 255; + var5 = this.texIndices1[var8]; + var6 = this.texIndices2[var8]; + var7 = this.texIndices3[var8]; } - - if (var9 >= 50) + else { - var14 = field1890[var9 - var8] * (50 - var8); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var6] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var6] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1854[var1] - var13) * var14 >> 16); + var5 = var2; + var6 = var3; + var7 = var4; } - } - if (var9 >= 50) - { - field1831[var4] = modelViewportYs[var6]; - field1837[var4] = modelViewportXs[var6]; - xViewportBuffer[var4++] = this.field1854[var1]; - } - else - { - var11 = yViewportBuffer[var6]; - var12 = field1839[var6]; - var13 = this.field1854[var1]; - if (var8 >= 50) + if (this.faceColors3[face] == -1) { - var14 = field1890[var8 - var9] * (50 - var9); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var5] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var5] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1856[var1] - var13) * var14 >> 16); + graphics.rasterTextureAffine(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.faceColors1[face], this.faceColors1[face], this.faceColors1[face], modelLocalX[var5], modelLocalX[var6], modelLocalX[var7], modelLocalY[var5], modelLocalY[var6], modelLocalY[var7], modelLocalZ[var5], modelLocalZ[var6], modelLocalZ[var7], this.faceTextures[face]); } - - if (var10 >= 50) + else { - var14 = field1890[var10 - var9] * (50 - var9); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var7] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var7] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1823[var1] - var13) * var14 >> 16); + graphics.rasterTextureAffine(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.faceColors1[face], this.faceColors2[face], this.faceColors3[face], modelLocalX[var5], modelLocalX[var6], modelLocalX[var7], modelLocalY[var5], modelLocalY[var6], modelLocalY[var7], modelLocalZ[var5], modelLocalZ[var6], modelLocalZ[var7], this.faceTextures[face]); } } - - if (var10 >= 50) + else if (this.faceColors3[face] == -1) { - field1831[var4] = modelViewportYs[var7]; - field1837[var4] = modelViewportXs[var7]; - xViewportBuffer[var4++] = this.field1823[var1]; + int[] field1889 = graphics.colorPalette; + graphics.rasterFlat(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], field1889[this.faceColors1[face]]); } else { - var11 = yViewportBuffer[var7]; - var12 = field1839[var7]; - var13 = this.field1823[var1]; - if (var9 >= 50) - { - var14 = field1890[var9 - var10] * (50 - var10); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var6] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var6] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1854[var1] - var13) * var14 >> 16); - } - - if (var8 >= 50) - { - var14 = field1890[var8 - var10] * (50 - var10); - field1831[var4] = var2 + graphics.Rasterizer3D_zoom * (var11 + ((yViewportBuffer[var5] - var11) * var14 >> 16)) / 50; - field1837[var4] = var3 + graphics.Rasterizer3D_zoom * (var12 + ((field1839[var5] - var12) * var14 >> 16)) / 50; - xViewportBuffer[var4++] = var13 + ((this.field1856[var1] - var13) * var14 >> 16); - } + graphics.rasterGouraud(modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], this.faceColors1[face], this.faceColors2[face], this.faceColors3[face]); } - - var11 = field1831[0]; - var12 = field1831[1]; - var13 = field1831[2]; - var14 = field1837[0]; - int var15 = field1837[1]; - int var16 = field1837[2]; - graphics.rasterClipEnable = false; - int var17; - int var18; - int var19; - int var20; - if (var4 == 3) - { - if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > graphics.rasterClipX || var12 > graphics.rasterClipX || var13 > graphics.rasterClipX) - { - graphics.rasterClipEnable = true; - } - - if (this.field1841 != null && this.field1841[var1] != -1) - { - if (this.field1840 != null && this.field1840[var1] != -1) - { - var20 = this.field1840[var1] & 255; - var17 = this.field1844[var20]; - var18 = this.field1865[var20]; - var19 = this.field1846[var20]; - } - else - { - var17 = var5; - var18 = var6; - var19 = var7; - } - - if (this.field1823[var1] == -1) - { - graphics.rasterTextureAffine(var14, var15, var16, var11, var12, var13, this.field1856[var1], this.field1856[var1], this.field1856[var1], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], this.field1841[var1]); - } - else - { - graphics.rasterTextureAffine(var14, var15, var16, var11, var12, var13, xViewportBuffer[0], xViewportBuffer[1], xViewportBuffer[2], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], this.field1841[var1]); - } - } - else if (this.field1823[var1] == -1) - { - int[] field1889 = graphics.colorPalette; - graphics.rasterFlat(var14, var15, var16, var11, var12, var13, field1889[this.field1856[var1]]); - } - else - { - graphics.rasterGouraud(var14, var15, var16, var11, var12, var13, xViewportBuffer[0], xViewportBuffer[1], xViewportBuffer[2]); - } - } - - if (var4 == 4) - { - if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > graphics.rasterClipX || var12 > graphics.rasterClipX || var13 > graphics.rasterClipX || field1831[3] < 0 || field1831[3] > graphics.rasterClipX) - { - graphics.rasterClipEnable = true; - } - - if (this.field1841 != null && this.field1841[var1] != -1) - { - if (this.field1840 != null && this.field1840[var1] != -1) - { - var20 = this.field1840[var1] & 255; - var17 = this.field1844[var20]; - var18 = this.field1865[var20]; - var19 = this.field1846[var20]; - } - else - { - var17 = var5; - var18 = var6; - var19 = var7; - } - - short var21 = this.field1841[var1]; - if (this.field1823[var1] == -1) - { - graphics.rasterTextureAffine(var14, var15, var16, var11, var12, var13, this.field1856[var1], this.field1856[var1], this.field1856[var1], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], var21); - graphics.rasterTextureAffine(var14, var16, field1837[3], var11, var13, field1831[3], this.field1856[var1], this.field1856[var1], this.field1856[var1], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], var21); - } - else - { - graphics.rasterTextureAffine(var14, var15, var16, var11, var12, var13, xViewportBuffer[0], xViewportBuffer[1], xViewportBuffer[2], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], var21); - graphics.rasterTextureAffine(var14, var16, field1837[3], var11, var13, field1831[3], xViewportBuffer[0], xViewportBuffer[2], xViewportBuffer[3], yViewportBuffer[var17], yViewportBuffer[var18], yViewportBuffer[var19], field1839[var17], field1839[var18], field1839[var19], field1869[var17], field1869[var18], field1869[var19], var21); - } - } - else if (this.field1823[var1] == -1) - { - int[] field1889 = graphics.colorPalette; - var17 = field1889[this.field1856[var1]]; - graphics.rasterFlat(var14, var15, var16, var11, var12, var13, var17); - graphics.rasterFlat(var14, var16, field1837[3], var11, var13, field1831[3], var17); - } - else - { - graphics.rasterGouraud(var14, var15, var16, var11, var12, var13, xViewportBuffer[0], xViewportBuffer[1], xViewportBuffer[2]); - graphics.rasterGouraud(var14, var16, field1837[3], var11, var13, field1831[3], xViewportBuffer[0], xViewportBuffer[2], xViewportBuffer[3]); - } - } - } } \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/item/SpritePixels.java b/cache/src/main/java/net/runelite/cache/item/SpritePixels.java index ed8be85a1..8bfada5bc 100644 --- a/cache/src/main/java/net/runelite/cache/item/SpritePixels.java +++ b/cache/src/main/java/net/runelite/cache/item/SpritePixels.java @@ -26,7 +26,7 @@ import java.awt.image.BufferedImage; -class Sprite +class SpritePixels { public int[] pixels; public int width; @@ -34,7 +34,7 @@ class Sprite public int offsetX; int offsetY; - public Sprite(int[] var1, int var2, int var3) + public SpritePixels(int[] var1, int var2, int var3) { this.pixels = var1; this.width = var2; @@ -43,7 +43,7 @@ public Sprite(int[] var1, int var2, int var3) this.offsetX = 0; } - public Sprite(int var1, int var2) + public SpritePixels(int var1, int var2) { this(new int[var2 * var1], var1, var2); } @@ -108,7 +108,7 @@ public void drawShadow(int color) } - public void drawAtOn(Rasterizer2D graphics, int x, int y) + public void drawAtOn(Rasterizer2D graphics, int x, int y) { x += this.offsetX; y += this.offsetY; diff --git a/cache/src/main/java/net/runelite/cache/models/ObjExporter.java b/cache/src/main/java/net/runelite/cache/models/ObjExporter.java index c2f141b60..d9bc254c6 100644 --- a/cache/src/main/java/net/runelite/cache/models/ObjExporter.java +++ b/cache/src/main/java/net/runelite/cache/models/ObjExporter.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.models; -import java.io.PrintWriter; import net.runelite.cache.TextureManager; import net.runelite.cache.definitions.ModelDefinition; import net.runelite.cache.definitions.TextureDefinition; +import java.io.PrintWriter; + public class ObjExporter { private static final double BRIGHTNESS = JagexColor.BRIGHTNESS_MIN; diff --git a/cache/src/main/java/net/runelite/cache/region/Region.java b/cache/src/main/java/net/runelite/cache/region/Region.java index 17ecddce2..92b7a1f8c 100644 --- a/cache/src/main/java/net/runelite/cache/region/Region.java +++ b/cache/src/main/java/net/runelite/cache/region/Region.java @@ -24,12 +24,13 @@ */ package net.runelite.cache.region; -import java.util.ArrayList; -import java.util.List; import net.runelite.cache.definitions.LocationsDefinition; import net.runelite.cache.definitions.MapDefinition; import net.runelite.cache.definitions.MapDefinition.Tile; +import java.util.ArrayList; +import java.util.List; + public class Region { diff --git a/cache/src/main/java/net/runelite/cache/region/RegionLoader.java b/cache/src/main/java/net/runelite/cache/region/RegionLoader.java index a0085f09b..534b6442d 100644 --- a/cache/src/main/java/net/runelite/cache/region/RegionLoader.java +++ b/cache/src/main/java/net/runelite/cache/region/RegionLoader.java @@ -24,10 +24,6 @@ */ package net.runelite.cache.region; -import java.io.IOException; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; import lombok.extern.slf4j.Slf4j; import net.runelite.cache.IndexType; import net.runelite.cache.definitions.LocationsDefinition; @@ -40,6 +36,11 @@ import net.runelite.cache.fs.Store; import net.runelite.cache.util.KeyProvider; +import java.io.IOException; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; + @Slf4j public class RegionLoader { diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/Assembler.java b/cache/src/main/java/net/runelite/cache/script/assembler/Assembler.java index 73251e5a7..8fdad0d43 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/Assembler.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/Assembler.java @@ -24,10 +24,6 @@ */ package net.runelite.cache.script.assembler; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.nio.charset.StandardCharsets; import net.runelite.cache.definitions.ScriptDefinition; import net.runelite.cache.script.Instructions; import net.runelite.cache.script.assembler.rs2asmParser.ProgContext; @@ -35,6 +31,11 @@ import org.antlr.v4.runtime.CommonTokenStream; import org.antlr.v4.runtime.tree.ParseTreeWalker; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; + public class Assembler { private final Instructions instructions; diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/LabelVisitor.java b/cache/src/main/java/net/runelite/cache/script/assembler/LabelVisitor.java index b78cfd652..8f510eeba 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/LabelVisitor.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/LabelVisitor.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.script.assembler; -import java.util.HashMap; -import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.HashMap; +import java.util.Map; + public class LabelVisitor extends rs2asmBaseListener { private static final Logger logger = LoggerFactory.getLogger(LabelVisitor.class); diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/ScriptWriter.java b/cache/src/main/java/net/runelite/cache/script/assembler/ScriptWriter.java index 739769c21..95b748be5 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/ScriptWriter.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/ScriptWriter.java @@ -24,11 +24,6 @@ */ package net.runelite.cache.script.assembler; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; import net.runelite.cache.definitions.ScriptDefinition; import net.runelite.cache.script.Instruction; import net.runelite.cache.script.Instructions; @@ -36,6 +31,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.*; + public class ScriptWriter extends rs2asmBaseListener { private static final Logger logger = LoggerFactory.getLogger(ScriptWriter.class); diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asm.interp b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asm.interp new file mode 100644 index 000000000..3bc045e60 --- /dev/null +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asm.interp @@ -0,0 +1,60 @@ +token literal names: +null +'.id ' +'.int_stack_count ' +'.string_stack_count ' +'.int_var_count ' +'.string_var_count ' +':' +null +null +null +null +null +null + +token symbolic names: +null +null +null +null +null +null +null +NEWLINE +INT +QSTRING +IDENTIFIER +COMMENT +WS + +rule names: +prog +header +id +int_stack_count +string_stack_count +int_var_count +string_var_count +id_value +int_stack_value +string_stack_value +int_var_value +string_var_value +line +instruction +label +instruction_name +name_string +name_opcode +instruction_operand +operand_int +operand_qstring +operand_label +switch_lookup +switch_key +switch_value + + +atn: +[4, 1, 12, 149, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 1, 0, 5, 0, 52, 8, 0, 10, 0, 12, 0, 55, 9, 0, 1, 0, 1, 0, 4, 0, 59, 8, 0, 11, 0, 12, 0, 60, 5, 0, 63, 8, 0, 10, 0, 12, 0, 66, 9, 0, 1, 0, 1, 0, 4, 0, 70, 8, 0, 11, 0, 12, 0, 71, 4, 0, 74, 8, 0, 11, 0, 12, 0, 75, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 83, 8, 1, 1, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 10, 1, 10, 1, 11, 1, 11, 1, 12, 1, 12, 1, 12, 3, 12, 113, 8, 12, 1, 13, 1, 13, 1, 13, 1, 14, 1, 14, 1, 14, 1, 15, 1, 15, 3, 15, 123, 8, 15, 1, 16, 1, 16, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 1, 18, 3, 18, 133, 8, 18, 1, 19, 1, 19, 1, 20, 1, 20, 1, 21, 1, 21, 1, 22, 1, 22, 1, 22, 1, 22, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 0, 0, 25, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 0, 0, 138, 0, 53, 1, 0, 0, 0, 2, 82, 1, 0, 0, 0, 4, 84, 1, 0, 0, 0, 6, 87, 1, 0, 0, 0, 8, 90, 1, 0, 0, 0, 10, 93, 1, 0, 0, 0, 12, 96, 1, 0, 0, 0, 14, 99, 1, 0, 0, 0, 16, 101, 1, 0, 0, 0, 18, 103, 1, 0, 0, 0, 20, 105, 1, 0, 0, 0, 22, 107, 1, 0, 0, 0, 24, 112, 1, 0, 0, 0, 26, 114, 1, 0, 0, 0, 28, 117, 1, 0, 0, 0, 30, 122, 1, 0, 0, 0, 32, 124, 1, 0, 0, 0, 34, 126, 1, 0, 0, 0, 36, 132, 1, 0, 0, 0, 38, 134, 1, 0, 0, 0, 40, 136, 1, 0, 0, 0, 42, 138, 1, 0, 0, 0, 44, 140, 1, 0, 0, 0, 46, 144, 1, 0, 0, 0, 48, 146, 1, 0, 0, 0, 50, 52, 5, 7, 0, 0, 51, 50, 1, 0, 0, 0, 52, 55, 1, 0, 0, 0, 53, 51, 1, 0, 0, 0, 53, 54, 1, 0, 0, 0, 54, 64, 1, 0, 0, 0, 55, 53, 1, 0, 0, 0, 56, 58, 3, 2, 1, 0, 57, 59, 5, 7, 0, 0, 58, 57, 1, 0, 0, 0, 59, 60, 1, 0, 0, 0, 60, 58, 1, 0, 0, 0, 60, 61, 1, 0, 0, 0, 61, 63, 1, 0, 0, 0, 62, 56, 1, 0, 0, 0, 63, 66, 1, 0, 0, 0, 64, 62, 1, 0, 0, 0, 64, 65, 1, 0, 0, 0, 65, 73, 1, 0, 0, 0, 66, 64, 1, 0, 0, 0, 67, 69, 3, 24, 12, 0, 68, 70, 5, 7, 0, 0, 69, 68, 1, 0, 0, 0, 70, 71, 1, 0, 0, 0, 71, 69, 1, 0, 0, 0, 71, 72, 1, 0, 0, 0, 72, 74, 1, 0, 0, 0, 73, 67, 1, 0, 0, 0, 74, 75, 1, 0, 0, 0, 75, 73, 1, 0, 0, 0, 75, 76, 1, 0, 0, 0, 76, 1, 1, 0, 0, 0, 77, 83, 3, 4, 2, 0, 78, 83, 3, 6, 3, 0, 79, 83, 3, 8, 4, 0, 80, 83, 3, 10, 5, 0, 81, 83, 3, 12, 6, 0, 82, 77, 1, 0, 0, 0, 82, 78, 1, 0, 0, 0, 82, 79, 1, 0, 0, 0, 82, 80, 1, 0, 0, 0, 82, 81, 1, 0, 0, 0, 83, 3, 1, 0, 0, 0, 84, 85, 5, 1, 0, 0, 85, 86, 3, 14, 7, 0, 86, 5, 1, 0, 0, 0, 87, 88, 5, 2, 0, 0, 88, 89, 3, 16, 8, 0, 89, 7, 1, 0, 0, 0, 90, 91, 5, 3, 0, 0, 91, 92, 3, 18, 9, 0, 92, 9, 1, 0, 0, 0, 93, 94, 5, 4, 0, 0, 94, 95, 3, 20, 10, 0, 95, 11, 1, 0, 0, 0, 96, 97, 5, 5, 0, 0, 97, 98, 3, 22, 11, 0, 98, 13, 1, 0, 0, 0, 99, 100, 5, 8, 0, 0, 100, 15, 1, 0, 0, 0, 101, 102, 5, 8, 0, 0, 102, 17, 1, 0, 0, 0, 103, 104, 5, 8, 0, 0, 104, 19, 1, 0, 0, 0, 105, 106, 5, 8, 0, 0, 106, 21, 1, 0, 0, 0, 107, 108, 5, 8, 0, 0, 108, 23, 1, 0, 0, 0, 109, 113, 3, 26, 13, 0, 110, 113, 3, 28, 14, 0, 111, 113, 3, 44, 22, 0, 112, 109, 1, 0, 0, 0, 112, 110, 1, 0, 0, 0, 112, 111, 1, 0, 0, 0, 113, 25, 1, 0, 0, 0, 114, 115, 3, 30, 15, 0, 115, 116, 3, 36, 18, 0, 116, 27, 1, 0, 0, 0, 117, 118, 5, 10, 0, 0, 118, 119, 5, 6, 0, 0, 119, 29, 1, 0, 0, 0, 120, 123, 3, 32, 16, 0, 121, 123, 3, 34, 17, 0, 122, 120, 1, 0, 0, 0, 122, 121, 1, 0, 0, 0, 123, 31, 1, 0, 0, 0, 124, 125, 5, 10, 0, 0, 125, 33, 1, 0, 0, 0, 126, 127, 5, 8, 0, 0, 127, 35, 1, 0, 0, 0, 128, 133, 3, 38, 19, 0, 129, 133, 3, 40, 20, 0, 130, 133, 3, 42, 21, 0, 131, 133, 1, 0, 0, 0, 132, 128, 1, 0, 0, 0, 132, 129, 1, 0, 0, 0, 132, 130, 1, 0, 0, 0, 132, 131, 1, 0, 0, 0, 133, 37, 1, 0, 0, 0, 134, 135, 5, 8, 0, 0, 135, 39, 1, 0, 0, 0, 136, 137, 5, 9, 0, 0, 137, 41, 1, 0, 0, 0, 138, 139, 5, 10, 0, 0, 139, 43, 1, 0, 0, 0, 140, 141, 3, 46, 23, 0, 141, 142, 5, 6, 0, 0, 142, 143, 3, 48, 24, 0, 143, 45, 1, 0, 0, 0, 144, 145, 5, 8, 0, 0, 145, 47, 1, 0, 0, 0, 146, 147, 5, 10, 0, 0, 147, 49, 1, 0, 0, 0, 9, 53, 60, 64, 71, 75, 82, 112, 122, 132] \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java index b793e66c6..2639079d1 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java @@ -1,4 +1,4 @@ -// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6 +// Generated from net/runelite/cache/script/assembler/rs2asm.g4 by ANTLR 4.13.1 package net.runelite.cache.script.assembler; import org.antlr.v4.runtime.ParserRuleContext; @@ -10,6 +10,7 @@ * which can be extended to create a listener which only needs to handle a subset * of the available methods. */ +@SuppressWarnings("CheckReturnValue") public class rs2asmBaseListener implements rs2asmListener { /** @@ -518,7 +519,7 @@ public void exitSwitch_value(rs2asmParser.Switch_valueContext ctx) *

The default implementation does nothing.

*/ @Override - public void visitTerminal(TerminalNode node) + public void enterEveryRule(ParserRuleContext ctx) { } @@ -528,7 +529,7 @@ public void visitTerminal(TerminalNode node) *

The default implementation does nothing.

*/ @Override - public void visitErrorNode(ErrorNode node) + public void exitEveryRule(ParserRuleContext ctx) { } @@ -538,7 +539,7 @@ public void visitErrorNode(ErrorNode node) *

The default implementation does nothing.

*/ @Override - public void enterEveryRule(ParserRuleContext ctx) + public void visitTerminal(TerminalNode node) { } @@ -548,7 +549,7 @@ public void enterEveryRule(ParserRuleContext ctx) *

The default implementation does nothing.

*/ @Override - public void exitEveryRule(ParserRuleContext ctx) + public void visitErrorNode(ErrorNode node) { } } \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.interp b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.interp new file mode 100644 index 000000000..0b1fbfa63 --- /dev/null +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.interp @@ -0,0 +1,53 @@ +token literal names: +null +'.id ' +'.int_stack_count ' +'.string_stack_count ' +'.int_var_count ' +'.string_var_count ' +':' +null +null +null +null +null +null + +token symbolic names: +null +null +null +null +null +null +null +NEWLINE +INT +QSTRING +IDENTIFIER +COMMENT +WS + +rule names: +T__0 +T__1 +T__2 +T__3 +T__4 +T__5 +NEWLINE +INT +QSTRING +IDENTIFIER +COMMENT +WS + +channel names: +DEFAULT_TOKEN_CHANNEL +HIDDEN + +mode names: +DEFAULT_MODE + +atn: +[4, 0, 12, 151, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 6, 4, 6, 108, 8, 6, 11, 6, 12, 6, 109, 1, 7, 3, 7, 113, 8, 7, 1, 7, 4, 7, 116, 8, 7, 11, 7, 12, 7, 117, 1, 8, 1, 8, 1, 8, 1, 8, 5, 8, 124, 8, 8, 10, 8, 12, 8, 127, 9, 8, 1, 8, 1, 8, 1, 9, 4, 9, 132, 8, 9, 11, 9, 12, 9, 133, 1, 10, 1, 10, 5, 10, 138, 8, 10, 10, 10, 12, 10, 141, 9, 10, 1, 10, 1, 10, 1, 11, 4, 11, 146, 8, 11, 11, 11, 12, 11, 147, 1, 11, 1, 11, 0, 0, 12, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 1, 0, 6, 2, 0, 10, 10, 13, 13, 1, 0, 48, 57, 4, 0, 10, 10, 13, 13, 34, 34, 92, 92, 2, 0, 34, 34, 92, 92, 4, 0, 48, 57, 65, 90, 95, 95, 97, 122, 2, 0, 9, 9, 32, 32, 158, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 1, 25, 1, 0, 0, 0, 3, 30, 1, 0, 0, 0, 5, 48, 1, 0, 0, 0, 7, 69, 1, 0, 0, 0, 9, 85, 1, 0, 0, 0, 11, 104, 1, 0, 0, 0, 13, 107, 1, 0, 0, 0, 15, 112, 1, 0, 0, 0, 17, 119, 1, 0, 0, 0, 19, 131, 1, 0, 0, 0, 21, 135, 1, 0, 0, 0, 23, 145, 1, 0, 0, 0, 25, 26, 5, 46, 0, 0, 26, 27, 5, 105, 0, 0, 27, 28, 5, 100, 0, 0, 28, 29, 5, 32, 0, 0, 29, 2, 1, 0, 0, 0, 30, 31, 5, 46, 0, 0, 31, 32, 5, 105, 0, 0, 32, 33, 5, 110, 0, 0, 33, 34, 5, 116, 0, 0, 34, 35, 5, 95, 0, 0, 35, 36, 5, 115, 0, 0, 36, 37, 5, 116, 0, 0, 37, 38, 5, 97, 0, 0, 38, 39, 5, 99, 0, 0, 39, 40, 5, 107, 0, 0, 40, 41, 5, 95, 0, 0, 41, 42, 5, 99, 0, 0, 42, 43, 5, 111, 0, 0, 43, 44, 5, 117, 0, 0, 44, 45, 5, 110, 0, 0, 45, 46, 5, 116, 0, 0, 46, 47, 5, 32, 0, 0, 47, 4, 1, 0, 0, 0, 48, 49, 5, 46, 0, 0, 49, 50, 5, 115, 0, 0, 50, 51, 5, 116, 0, 0, 51, 52, 5, 114, 0, 0, 52, 53, 5, 105, 0, 0, 53, 54, 5, 110, 0, 0, 54, 55, 5, 103, 0, 0, 55, 56, 5, 95, 0, 0, 56, 57, 5, 115, 0, 0, 57, 58, 5, 116, 0, 0, 58, 59, 5, 97, 0, 0, 59, 60, 5, 99, 0, 0, 60, 61, 5, 107, 0, 0, 61, 62, 5, 95, 0, 0, 62, 63, 5, 99, 0, 0, 63, 64, 5, 111, 0, 0, 64, 65, 5, 117, 0, 0, 65, 66, 5, 110, 0, 0, 66, 67, 5, 116, 0, 0, 67, 68, 5, 32, 0, 0, 68, 6, 1, 0, 0, 0, 69, 70, 5, 46, 0, 0, 70, 71, 5, 105, 0, 0, 71, 72, 5, 110, 0, 0, 72, 73, 5, 116, 0, 0, 73, 74, 5, 95, 0, 0, 74, 75, 5, 118, 0, 0, 75, 76, 5, 97, 0, 0, 76, 77, 5, 114, 0, 0, 77, 78, 5, 95, 0, 0, 78, 79, 5, 99, 0, 0, 79, 80, 5, 111, 0, 0, 80, 81, 5, 117, 0, 0, 81, 82, 5, 110, 0, 0, 82, 83, 5, 116, 0, 0, 83, 84, 5, 32, 0, 0, 84, 8, 1, 0, 0, 0, 85, 86, 5, 46, 0, 0, 86, 87, 5, 115, 0, 0, 87, 88, 5, 116, 0, 0, 88, 89, 5, 114, 0, 0, 89, 90, 5, 105, 0, 0, 90, 91, 5, 110, 0, 0, 91, 92, 5, 103, 0, 0, 92, 93, 5, 95, 0, 0, 93, 94, 5, 118, 0, 0, 94, 95, 5, 97, 0, 0, 95, 96, 5, 114, 0, 0, 96, 97, 5, 95, 0, 0, 97, 98, 5, 99, 0, 0, 98, 99, 5, 111, 0, 0, 99, 100, 5, 117, 0, 0, 100, 101, 5, 110, 0, 0, 101, 102, 5, 116, 0, 0, 102, 103, 5, 32, 0, 0, 103, 10, 1, 0, 0, 0, 104, 105, 5, 58, 0, 0, 105, 12, 1, 0, 0, 0, 106, 108, 7, 0, 0, 0, 107, 106, 1, 0, 0, 0, 108, 109, 1, 0, 0, 0, 109, 107, 1, 0, 0, 0, 109, 110, 1, 0, 0, 0, 110, 14, 1, 0, 0, 0, 111, 113, 5, 45, 0, 0, 112, 111, 1, 0, 0, 0, 112, 113, 1, 0, 0, 0, 113, 115, 1, 0, 0, 0, 114, 116, 7, 1, 0, 0, 115, 114, 1, 0, 0, 0, 116, 117, 1, 0, 0, 0, 117, 115, 1, 0, 0, 0, 117, 118, 1, 0, 0, 0, 118, 16, 1, 0, 0, 0, 119, 125, 5, 34, 0, 0, 120, 124, 8, 2, 0, 0, 121, 122, 5, 92, 0, 0, 122, 124, 7, 3, 0, 0, 123, 120, 1, 0, 0, 0, 123, 121, 1, 0, 0, 0, 124, 127, 1, 0, 0, 0, 125, 123, 1, 0, 0, 0, 125, 126, 1, 0, 0, 0, 126, 128, 1, 0, 0, 0, 127, 125, 1, 0, 0, 0, 128, 129, 5, 34, 0, 0, 129, 18, 1, 0, 0, 0, 130, 132, 7, 4, 0, 0, 131, 130, 1, 0, 0, 0, 132, 133, 1, 0, 0, 0, 133, 131, 1, 0, 0, 0, 133, 134, 1, 0, 0, 0, 134, 20, 1, 0, 0, 0, 135, 139, 5, 59, 0, 0, 136, 138, 8, 0, 0, 0, 137, 136, 1, 0, 0, 0, 138, 141, 1, 0, 0, 0, 139, 137, 1, 0, 0, 0, 139, 140, 1, 0, 0, 0, 140, 142, 1, 0, 0, 0, 141, 139, 1, 0, 0, 0, 142, 143, 6, 10, 0, 0, 143, 22, 1, 0, 0, 0, 144, 146, 7, 5, 0, 0, 145, 144, 1, 0, 0, 0, 146, 147, 1, 0, 0, 0, 147, 145, 1, 0, 0, 0, 147, 148, 1, 0, 0, 0, 148, 149, 1, 0, 0, 0, 149, 150, 6, 11, 0, 0, 150, 24, 1, 0, 0, 0, 9, 0, 109, 112, 117, 123, 125, 133, 139, 147, 1, 0, 1, 0] \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java index 0328da7ae..8a317951a 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java @@ -1,91 +1,71 @@ -// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6 +// Generated from net/runelite/cache/script/assembler/rs2asm.g4 by ANTLR 4.13.1 package net.runelite.cache.script.assembler; -import org.antlr.v4.runtime.CharStream; -import org.antlr.v4.runtime.Lexer; -import org.antlr.v4.runtime.RuntimeMetaData; -import org.antlr.v4.runtime.Vocabulary; -import org.antlr.v4.runtime.VocabularyImpl; +import org.antlr.v4.runtime.*; import org.antlr.v4.runtime.atn.ATN; import org.antlr.v4.runtime.atn.ATNDeserializer; import org.antlr.v4.runtime.atn.LexerATNSimulator; import org.antlr.v4.runtime.atn.PredictionContextCache; import org.antlr.v4.runtime.dfa.DFA; -@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue", "this-escape"}) public class rs2asmLexer extends Lexer { + static + { + RuntimeMetaData.checkVersion("4.13.1", RuntimeMetaData.VERSION); + } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int T__0 = 1, T__1 = 2, T__2 = 3, T__3 = 4, T__4 = 5, T__5 = 6, NEWLINE = 7, INT = 8, QSTRING = 9, IDENTIFIER = 10, COMMENT = 11, WS = 12; - public static final String[] ruleNames = { - "T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "NEWLINE", "INT", "QSTRING", - "IDENTIFIER", "COMMENT", "WS" + public static String[] channelNames = { + "DEFAULT_TOKEN_CHANNEL", "HIDDEN" + }; + + public static String[] modeNames = { + "DEFAULT_MODE" }; + + private static String[] makeRuleNames() + { + return new String[]{ + "T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "NEWLINE", "INT", "QSTRING", + "IDENTIFIER", "COMMENT", "WS" + }; + } + + public static final String[] ruleNames = makeRuleNames(); + + private static String[] makeLiteralNames() + { + return new String[]{ + null, "'.id '", "'.int_stack_count '", "'.string_stack_count '", "'.int_var_count '", + "'.string_var_count '", "':'" + }; + } + + private static final String[] _LITERAL_NAMES = makeLiteralNames(); + + private static String[] makeSymbolicNames() + { + return new String[]{ + null, null, null, null, null, null, null, "NEWLINE", "INT", "QSTRING", + "IDENTIFIER", "COMMENT", "WS" + }; + } + + private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + /** * @deprecated Use {@link #VOCABULARY} instead. */ @Deprecated public static final String[] tokenNames; - public static final String _serializedATN = - "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2\16\u0099\b\1\4\2" + - "\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4" + - "\13\t\13\4\f\t\f\4\r\t\r\3\2\3\2\3\2\3\2\3\2\3\3\3\3\3\3\3\3\3\3\3\3\3" + - "\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\4" + - "\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3" + - "\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\6\3\6\3\6\3\6" + - "\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\7\3\7\3" + - "\b\6\bn\n\b\r\b\16\bo\3\t\5\ts\n\t\3\t\6\tv\n\t\r\t\16\tw\3\n\3\n\3\n" + - "\3\n\7\n~\n\n\f\n\16\n\u0081\13\n\3\n\3\n\3\13\6\13\u0086\n\13\r\13\16" + - "\13\u0087\3\f\3\f\7\f\u008c\n\f\f\f\16\f\u008f\13\f\3\f\3\f\3\r\6\r\u0094" + - "\n\r\r\r\16\r\u0095\3\r\3\r\2\2\16\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n" + - "\23\13\25\f\27\r\31\16\3\2\b\4\2\f\f\17\17\3\2\62;\6\2\f\f\17\17$$^^\4" + - "\2$$^^\6\2\62;C\\aac|\4\2\13\13\"\"\u00a0\2\3\3\2\2\2\2\5\3\2\2\2\2\7" + - "\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2" + - "\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\3\33\3\2\2\2\5" + - " \3\2\2\2\7\62\3\2\2\2\tG\3\2\2\2\13W\3\2\2\2\rj\3\2\2\2\17m\3\2\2\2\21" + - "r\3\2\2\2\23y\3\2\2\2\25\u0085\3\2\2\2\27\u0089\3\2\2\2\31\u0093\3\2\2" + - "\2\33\34\7\60\2\2\34\35\7k\2\2\35\36\7f\2\2\36\37\7\"\2\2\37\4\3\2\2\2" + - " !\7\60\2\2!\"\7k\2\2\"#\7p\2\2#$\7v\2\2$%\7a\2\2%&\7u\2\2&\'\7v\2\2\'" + - "(\7c\2\2()\7e\2\2)*\7m\2\2*+\7a\2\2+,\7e\2\2,-\7q\2\2-.\7w\2\2./\7p\2" + - "\2/\60\7v\2\2\60\61\7\"\2\2\61\6\3\2\2\2\62\63\7\60\2\2\63\64\7u\2\2\64" + - "\65\7v\2\2\65\66\7t\2\2\66\67\7k\2\2\678\7p\2\289\7i\2\29:\7a\2\2:;\7" + - "u\2\2;<\7v\2\2<=\7c\2\2=>\7e\2\2>?\7m\2\2?@\7a\2\2@A\7e\2\2AB\7q\2\2B" + - "C\7w\2\2CD\7p\2\2DE\7v\2\2EF\7\"\2\2F\b\3\2\2\2GH\7\60\2\2HI\7k\2\2IJ" + - "\7p\2\2JK\7v\2\2KL\7a\2\2LM\7x\2\2MN\7c\2\2NO\7t\2\2OP\7a\2\2PQ\7e\2\2" + - "QR\7q\2\2RS\7w\2\2ST\7p\2\2TU\7v\2\2UV\7\"\2\2V\n\3\2\2\2WX\7\60\2\2X" + - "Y\7u\2\2YZ\7v\2\2Z[\7t\2\2[\\\7k\2\2\\]\7p\2\2]^\7i\2\2^_\7a\2\2_`\7x" + - "\2\2`a\7c\2\2ab\7t\2\2bc\7a\2\2cd\7e\2\2de\7q\2\2ef\7w\2\2fg\7p\2\2gh" + - "\7v\2\2hi\7\"\2\2i\f\3\2\2\2jk\7<\2\2k\16\3\2\2\2ln\t\2\2\2ml\3\2\2\2" + - "no\3\2\2\2om\3\2\2\2op\3\2\2\2p\20\3\2\2\2qs\7/\2\2rq\3\2\2\2rs\3\2\2" + - "\2su\3\2\2\2tv\t\3\2\2ut\3\2\2\2vw\3\2\2\2wu\3\2\2\2wx\3\2\2\2x\22\3\2" + - "\2\2y\177\7$\2\2z~\n\4\2\2{|\7^\2\2|~\t\5\2\2}z\3\2\2\2}{\3\2\2\2~\u0081" + - "\3\2\2\2\177}\3\2\2\2\177\u0080\3\2\2\2\u0080\u0082\3\2\2\2\u0081\177" + - "\3\2\2\2\u0082\u0083\7$\2\2\u0083\24\3\2\2\2\u0084\u0086\t\6\2\2\u0085" + - "\u0084\3\2\2\2\u0086\u0087\3\2\2\2\u0087\u0085\3\2\2\2\u0087\u0088\3\2" + - "\2\2\u0088\26\3\2\2\2\u0089\u008d\7=\2\2\u008a\u008c\n\2\2\2\u008b\u008a" + - "\3\2\2\2\u008c\u008f\3\2\2\2\u008d\u008b\3\2\2\2\u008d\u008e\3\2\2\2\u008e" + - "\u0090\3\2\2\2\u008f\u008d\3\2\2\2\u0090\u0091\b\f\2\2\u0091\30\3\2\2" + - "\2\u0092\u0094\t\7\2\2\u0093\u0092\3\2\2\2\u0094\u0095\3\2\2\2\u0095\u0093" + - "\3\2\2\2\u0095\u0096\3\2\2\2\u0096\u0097\3\2\2\2\u0097\u0098\b\r\2\2\u0098" + - "\32\3\2\2\2\13\2orw}\177\u0087\u008d\u0095\3\2\3\2"; - public static final ATN _ATN = - new ATNDeserializer().deserialize(_serializedATN.toCharArray()); - protected static final DFA[] _decisionToDFA; - protected static final PredictionContextCache _sharedContextCache = - new PredictionContextCache(); - private static final String[] _LITERAL_NAMES = { - null, "'.id '", "'.int_stack_count '", "'.string_stack_count '", "'.int_var_count '", - "'.string_var_count '", "':'" - }; - private static final String[] _SYMBOLIC_NAMES = { - null, null, null, null, null, null, null, "NEWLINE", "INT", "QSTRING", - "IDENTIFIER", "COMMENT", "WS" - }; - public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); - public static String[] modeNames = { - "DEFAULT_MODE" - }; static { @@ -105,13 +85,18 @@ public class rs2asmLexer extends Lexer } } - static + @Override + @Deprecated + public String[] getTokenNames() { - _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; - for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) - { - _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); - } + return tokenNames; + } + + @Override + + public Vocabulary getVocabulary() + { + return VOCABULARY; } public rs2asmLexer(CharStream input) @@ -121,16 +106,15 @@ public rs2asmLexer(CharStream input) } @Override - public String[] getRuleNames() + public String getGrammarFileName() { - return ruleNames; + return "rs2asm.g4"; } @Override - - public Vocabulary getVocabulary() + public String[] getRuleNames() { - return VOCABULARY; + return ruleNames; } @Override @@ -140,27 +124,121 @@ public String getSerializedATN() } @Override - public String getGrammarFileName() + public String[] getChannelNames() { - return "rs2asm.g4"; + return channelNames; } @Override - public ATN getATN() + public String[] getModeNames() { - return _ATN; + return modeNames; } @Override - public String[] getModeNames() + public ATN getATN() { - return modeNames; + return _ATN; } - @Override - @Deprecated - public String[] getTokenNames() + public static final String _serializedATN = + "\u0004\u0000\f\u0097\u0006\uffff\uffff\u0002\u0000\u0007\u0000\u0002\u0001" + + "\u0007\u0001\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004" + + "\u0007\u0004\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007" + + "\u0007\u0007\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b" + + "\u0007\u000b\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000" + + "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001" + + "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001" + + "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001" + + "\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002" + + "\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002" + + "\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0002" + + "\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0003\u0001\u0003\u0001\u0003" + + "\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003" + + "\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003\u0001\u0003" + + "\u0001\u0003\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004" + + "\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004" + + "\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0004" + + "\u0001\u0004\u0001\u0004\u0001\u0005\u0001\u0005\u0001\u0006\u0004\u0006" + + "l\b\u0006\u000b\u0006\f\u0006m\u0001\u0007\u0003\u0007q\b\u0007\u0001" + + "\u0007\u0004\u0007t\b\u0007\u000b\u0007\f\u0007u\u0001\b\u0001\b\u0001" + + "\b\u0001\b\u0005\b|\b\b\n\b\f\b\u007f\t\b\u0001\b\u0001\b\u0001\t\u0004" + + "\t\u0084\b\t\u000b\t\f\t\u0085\u0001\n\u0001\n\u0005\n\u008a\b\n\n\n\f" + + "\n\u008d\t\n\u0001\n\u0001\n\u0001\u000b\u0004\u000b\u0092\b\u000b\u000b" + + "\u000b\f\u000b\u0093\u0001\u000b\u0001\u000b\u0000\u0000\f\u0001\u0001" + + "\u0003\u0002\u0005\u0003\u0007\u0004\t\u0005\u000b\u0006\r\u0007\u000f" + + "\b\u0011\t\u0013\n\u0015\u000b\u0017\f\u0001\u0000\u0006\u0002\u0000\n" + + "\n\r\r\u0001\u000009\u0004\u0000\n\n\r\r\"\"\\\\\u0002\u0000\"\"\\\\\u0004" + + "\u000009AZ__az\u0002\u0000\t\t \u009e\u0000\u0001\u0001\u0000\u0000\u0000" + + "\u0000\u0003\u0001\u0000\u0000\u0000\u0000\u0005\u0001\u0000\u0000\u0000" + + "\u0000\u0007\u0001\u0000\u0000\u0000\u0000\t\u0001\u0000\u0000\u0000\u0000" + + "\u000b\u0001\u0000\u0000\u0000\u0000\r\u0001\u0000\u0000\u0000\u0000\u000f" + + "\u0001\u0000\u0000\u0000\u0000\u0011\u0001\u0000\u0000\u0000\u0000\u0013" + + "\u0001\u0000\u0000\u0000\u0000\u0015\u0001\u0000\u0000\u0000\u0000\u0017" + + "\u0001\u0000\u0000\u0000\u0001\u0019\u0001\u0000\u0000\u0000\u0003\u001e" + + "\u0001\u0000\u0000\u0000\u00050\u0001\u0000\u0000\u0000\u0007E\u0001\u0000" + + "\u0000\u0000\tU\u0001\u0000\u0000\u0000\u000bh\u0001\u0000\u0000\u0000" + + "\rk\u0001\u0000\u0000\u0000\u000fp\u0001\u0000\u0000\u0000\u0011w\u0001" + + "\u0000\u0000\u0000\u0013\u0083\u0001\u0000\u0000\u0000\u0015\u0087\u0001" + + "\u0000\u0000\u0000\u0017\u0091\u0001\u0000\u0000\u0000\u0019\u001a\u0005" + + ".\u0000\u0000\u001a\u001b\u0005i\u0000\u0000\u001b\u001c\u0005d\u0000" + + "\u0000\u001c\u001d\u0005 \u0000\u0000\u001d\u0002\u0001\u0000\u0000\u0000" + + "\u001e\u001f\u0005.\u0000\u0000\u001f \u0005i\u0000\u0000 !\u0005n\u0000" + + "\u0000!\"\u0005t\u0000\u0000\"#\u0005_\u0000\u0000#$\u0005s\u0000\u0000" + + "$%\u0005t\u0000\u0000%&\u0005a\u0000\u0000&\'\u0005c\u0000\u0000\'(\u0005" + + "k\u0000\u0000()\u0005_\u0000\u0000)*\u0005c\u0000\u0000*+\u0005o\u0000" + + "\u0000+,\u0005u\u0000\u0000,-\u0005n\u0000\u0000-.\u0005t\u0000\u0000" + + "./\u0005 \u0000\u0000/\u0004\u0001\u0000\u0000\u000001\u0005.\u0000\u0000" + + "12\u0005s\u0000\u000023\u0005t\u0000\u000034\u0005r\u0000\u000045\u0005" + + "i\u0000\u000056\u0005n\u0000\u000067\u0005g\u0000\u000078\u0005_\u0000" + + "\u000089\u0005s\u0000\u00009:\u0005t\u0000\u0000:;\u0005a\u0000\u0000" + + ";<\u0005c\u0000\u0000<=\u0005k\u0000\u0000=>\u0005_\u0000\u0000>?\u0005" + + "c\u0000\u0000?@\u0005o\u0000\u0000@A\u0005u\u0000\u0000AB\u0005n\u0000" + + "\u0000BC\u0005t\u0000\u0000CD\u0005 \u0000\u0000D\u0006\u0001\u0000\u0000" + + "\u0000EF\u0005.\u0000\u0000FG\u0005i\u0000\u0000GH\u0005n\u0000\u0000" + + "HI\u0005t\u0000\u0000IJ\u0005_\u0000\u0000JK\u0005v\u0000\u0000KL\u0005" + + "a\u0000\u0000LM\u0005r\u0000\u0000MN\u0005_\u0000\u0000NO\u0005c\u0000" + + "\u0000OP\u0005o\u0000\u0000PQ\u0005u\u0000\u0000QR\u0005n\u0000\u0000" + + "RS\u0005t\u0000\u0000ST\u0005 \u0000\u0000T\b\u0001\u0000\u0000\u0000" + + "UV\u0005.\u0000\u0000VW\u0005s\u0000\u0000WX\u0005t\u0000\u0000XY\u0005" + + "r\u0000\u0000YZ\u0005i\u0000\u0000Z[\u0005n\u0000\u0000[\\\u0005g\u0000" + + "\u0000\\]\u0005_\u0000\u0000]^\u0005v\u0000\u0000^_\u0005a\u0000\u0000" + + "_`\u0005r\u0000\u0000`a\u0005_\u0000\u0000ab\u0005c\u0000\u0000bc\u0005" + + "o\u0000\u0000cd\u0005u\u0000\u0000de\u0005n\u0000\u0000ef\u0005t\u0000" + + "\u0000fg\u0005 \u0000\u0000g\n\u0001\u0000\u0000\u0000hi\u0005:\u0000" + + "\u0000i\f\u0001\u0000\u0000\u0000jl\u0007\u0000\u0000\u0000kj\u0001\u0000" + + "\u0000\u0000lm\u0001\u0000\u0000\u0000mk\u0001\u0000\u0000\u0000mn\u0001" + + "\u0000\u0000\u0000n\u000e\u0001\u0000\u0000\u0000oq\u0005-\u0000\u0000" + + "po\u0001\u0000\u0000\u0000pq\u0001\u0000\u0000\u0000qs\u0001\u0000\u0000" + + "\u0000rt\u0007\u0001\u0000\u0000sr\u0001\u0000\u0000\u0000tu\u0001\u0000" + + "\u0000\u0000us\u0001\u0000\u0000\u0000uv\u0001\u0000\u0000\u0000v\u0010" + + "\u0001\u0000\u0000\u0000w}\u0005\"\u0000\u0000x|\b\u0002\u0000\u0000y" + + "z\u0005\\\u0000\u0000z|\u0007\u0003\u0000\u0000{x\u0001\u0000\u0000\u0000" + + "{y\u0001\u0000\u0000\u0000|\u007f\u0001\u0000\u0000\u0000}{\u0001\u0000" + + "\u0000\u0000}~\u0001\u0000\u0000\u0000~\u0080\u0001\u0000\u0000\u0000" + + "\u007f}\u0001\u0000\u0000\u0000\u0080\u0081\u0005\"\u0000\u0000\u0081" + + "\u0012\u0001\u0000\u0000\u0000\u0082\u0084\u0007\u0004\u0000\u0000\u0083" + + "\u0082\u0001\u0000\u0000\u0000\u0084\u0085\u0001\u0000\u0000\u0000\u0085" + + "\u0083\u0001\u0000\u0000\u0000\u0085\u0086\u0001\u0000\u0000\u0000\u0086" + + "\u0014\u0001\u0000\u0000\u0000\u0087\u008b\u0005;\u0000\u0000\u0088\u008a" + + "\b\u0000\u0000\u0000\u0089\u0088\u0001\u0000\u0000\u0000\u008a\u008d\u0001" + + "\u0000\u0000\u0000\u008b\u0089\u0001\u0000\u0000\u0000\u008b\u008c\u0001" + + "\u0000\u0000\u0000\u008c\u008e\u0001\u0000\u0000\u0000\u008d\u008b\u0001" + + "\u0000\u0000\u0000\u008e\u008f\u0006\n\u0000\u0000\u008f\u0016\u0001\u0000" + + "\u0000\u0000\u0090\u0092\u0007\u0005\u0000\u0000\u0091\u0090\u0001\u0000" + + "\u0000\u0000\u0092\u0093\u0001\u0000\u0000\u0000\u0093\u0091\u0001\u0000" + + "\u0000\u0000\u0093\u0094\u0001\u0000\u0000\u0000\u0094\u0095\u0001\u0000" + + "\u0000\u0000\u0095\u0096\u0006\u000b\u0000\u0000\u0096\u0018\u0001\u0000" + + "\u0000\u0000\t\u0000mpu{}\u0085\u008b\u0093\u0001\u0000\u0001\u0000"; + public static final ATN _ATN = + new ATNDeserializer().deserialize(_serializedATN.toCharArray()); + + static { - return tokenNames; + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) + { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } } \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java index d4d8e39ab..ef024bf19 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java @@ -1,4 +1,4 @@ -// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6 +// Generated from net/runelite/cache/script/assembler/rs2asm.g4 by ANTLR 4.13.1 package net.runelite.cache.script.assembler; import org.antlr.v4.runtime.tree.ParseTreeListener; diff --git a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java index c07fa7c79..81d7d1e61 100644 --- a/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java +++ b/cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java @@ -1,15 +1,7 @@ -// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6 +// Generated from net/runelite/cache/script/assembler/rs2asm.g4 by ANTLR 4.13.1 package net.runelite.cache.script.assembler; -import java.util.List; -import org.antlr.v4.runtime.NoViableAltException; -import org.antlr.v4.runtime.Parser; -import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.RecognitionException; -import org.antlr.v4.runtime.RuntimeMetaData; -import org.antlr.v4.runtime.TokenStream; -import org.antlr.v4.runtime.Vocabulary; -import org.antlr.v4.runtime.VocabularyImpl; +import org.antlr.v4.runtime.*; import org.antlr.v4.runtime.atn.ATN; import org.antlr.v4.runtime.atn.ATNDeserializer; import org.antlr.v4.runtime.atn.ParserATNSimulator; @@ -18,9 +10,19 @@ import org.antlr.v4.runtime.tree.ParseTreeListener; import org.antlr.v4.runtime.tree.TerminalNode; -@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) +import java.util.List; + +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast", "CheckReturnValue"}) public class rs2asmParser extends Parser { + static + { + RuntimeMetaData.checkVersion("4.13.1", RuntimeMetaData.VERSION); + } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int T__0 = 1, T__1 = 2, T__2 = 3, T__3 = 4, T__4 = 5, T__5 = 6, NEWLINE = 7, INT = 8, QSTRING = 9, IDENTIFIER = 10, COMMENT = 11, WS = 12; @@ -33,70 +35,47 @@ public class rs2asmParser extends Parser RULE_instruction_operand = 18, RULE_operand_int = 19, RULE_operand_qstring = 20, RULE_operand_label = 21, RULE_switch_lookup = 22, RULE_switch_key = 23, RULE_switch_value = 24; - public static final String[] ruleNames = { - "prog", "header", "id", "int_stack_count", "string_stack_count", "int_var_count", - "string_var_count", "id_value", "int_stack_value", "string_stack_value", - "int_var_value", "string_var_value", "line", "instruction", "label", "instruction_name", - "name_string", "name_opcode", "instruction_operand", "operand_int", "operand_qstring", - "operand_label", "switch_lookup", "switch_key", "switch_value" - }; + + private static String[] makeRuleNames() + { + return new String[]{ + "prog", "header", "id", "int_stack_count", "string_stack_count", "int_var_count", + "string_var_count", "id_value", "int_stack_value", "string_stack_value", + "int_var_value", "string_var_value", "line", "instruction", "label", + "instruction_name", "name_string", "name_opcode", "instruction_operand", + "operand_int", "operand_qstring", "operand_label", "switch_lookup", "switch_key", + "switch_value" + }; + } + + public static final String[] ruleNames = makeRuleNames(); + + private static String[] makeLiteralNames() + { + return new String[]{ + null, "'.id '", "'.int_stack_count '", "'.string_stack_count '", "'.int_var_count '", + "'.string_var_count '", "':'" + }; + } + + private static final String[] _LITERAL_NAMES = makeLiteralNames(); + + private static String[] makeSymbolicNames() + { + return new String[]{ + null, null, null, null, null, null, null, "NEWLINE", "INT", "QSTRING", + "IDENTIFIER", "COMMENT", "WS" + }; + } + + private static final String[] _SYMBOLIC_NAMES = makeSymbolicNames(); + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + /** * @deprecated Use {@link #VOCABULARY} instead. */ @Deprecated public static final String[] tokenNames; - public static final String _serializedATN = - "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\3\16\u0097\4\2\t\2" + - "\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13" + - "\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22" + - "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31" + - "\4\32\t\32\3\2\7\2\66\n\2\f\2\16\29\13\2\3\2\3\2\6\2=\n\2\r\2\16\2>\7" + - "\2A\n\2\f\2\16\2D\13\2\3\2\3\2\6\2H\n\2\r\2\16\2I\6\2L\n\2\r\2\16\2M\3" + - "\3\3\3\3\3\3\3\3\3\5\3U\n\3\3\4\3\4\3\4\3\5\3\5\3\5\3\6\3\6\3\6\3\7\3" + - "\7\3\7\3\b\3\b\3\b\3\t\3\t\3\n\3\n\3\13\3\13\3\f\3\f\3\r\3\r\3\16\3\16" + - "\3\16\5\16s\n\16\3\17\3\17\3\17\3\20\3\20\3\20\3\21\3\21\5\21}\n\21\3" + - "\22\3\22\3\23\3\23\3\24\3\24\3\24\3\24\5\24\u0087\n\24\3\25\3\25\3\26" + - "\3\26\3\27\3\27\3\30\3\30\3\30\3\30\3\31\3\31\3\32\3\32\3\32\2\2\33\2" + - "\4\6\b\n\f\16\20\22\24\26\30\32\34\36 \"$&(*,.\60\62\2\2\u008c\2\67\3" + - "\2\2\2\4T\3\2\2\2\6V\3\2\2\2\bY\3\2\2\2\n\\\3\2\2\2\f_\3\2\2\2\16b\3\2" + - "\2\2\20e\3\2\2\2\22g\3\2\2\2\24i\3\2\2\2\26k\3\2\2\2\30m\3\2\2\2\32r\3" + - "\2\2\2\34t\3\2\2\2\36w\3\2\2\2 |\3\2\2\2\"~\3\2\2\2$\u0080\3\2\2\2&\u0086" + - "\3\2\2\2(\u0088\3\2\2\2*\u008a\3\2\2\2,\u008c\3\2\2\2.\u008e\3\2\2\2\60" + - "\u0092\3\2\2\2\62\u0094\3\2\2\2\64\66\7\t\2\2\65\64\3\2\2\2\669\3\2\2" + - "\2\67\65\3\2\2\2\678\3\2\2\28B\3\2\2\29\67\3\2\2\2:<\5\4\3\2;=\7\t\2\2" + - "<;\3\2\2\2=>\3\2\2\2><\3\2\2\2>?\3\2\2\2?A\3\2\2\2@:\3\2\2\2AD\3\2\2\2" + - "B@\3\2\2\2BC\3\2\2\2CK\3\2\2\2DB\3\2\2\2EG\5\32\16\2FH\7\t\2\2GF\3\2\2" + - "\2HI\3\2\2\2IG\3\2\2\2IJ\3\2\2\2JL\3\2\2\2KE\3\2\2\2LM\3\2\2\2MK\3\2\2" + - "\2MN\3\2\2\2N\3\3\2\2\2OU\5\6\4\2PU\5\b\5\2QU\5\n\6\2RU\5\f\7\2SU\5\16" + - "\b\2TO\3\2\2\2TP\3\2\2\2TQ\3\2\2\2TR\3\2\2\2TS\3\2\2\2U\5\3\2\2\2VW\7" + - "\3\2\2WX\5\20\t\2X\7\3\2\2\2YZ\7\4\2\2Z[\5\22\n\2[\t\3\2\2\2\\]\7\5\2" + - "\2]^\5\24\13\2^\13\3\2\2\2_`\7\6\2\2`a\5\26\f\2a\r\3\2\2\2bc\7\7\2\2c" + - "d\5\30\r\2d\17\3\2\2\2ef\7\n\2\2f\21\3\2\2\2gh\7\n\2\2h\23\3\2\2\2ij\7" + - "\n\2\2j\25\3\2\2\2kl\7\n\2\2l\27\3\2\2\2mn\7\n\2\2n\31\3\2\2\2os\5\34" + - "\17\2ps\5\36\20\2qs\5.\30\2ro\3\2\2\2rp\3\2\2\2rq\3\2\2\2s\33\3\2\2\2" + - "tu\5 \21\2uv\5&\24\2v\35\3\2\2\2wx\7\f\2\2xy\7\b\2\2y\37\3\2\2\2z}\5\"" + - "\22\2{}\5$\23\2|z\3\2\2\2|{\3\2\2\2}!\3\2\2\2~\177\7\f\2\2\177#\3\2\2" + - "\2\u0080\u0081\7\n\2\2\u0081%\3\2\2\2\u0082\u0087\5(\25\2\u0083\u0087" + - "\5*\26\2\u0084\u0087\5,\27\2\u0085\u0087\3\2\2\2\u0086\u0082\3\2\2\2\u0086" + - "\u0083\3\2\2\2\u0086\u0084\3\2\2\2\u0086\u0085\3\2\2\2\u0087\'\3\2\2\2" + - "\u0088\u0089\7\n\2\2\u0089)\3\2\2\2\u008a\u008b\7\13\2\2\u008b+\3\2\2" + - "\2\u008c\u008d\7\f\2\2\u008d-\3\2\2\2\u008e\u008f\5\60\31\2\u008f\u0090" + - "\7\b\2\2\u0090\u0091\5\62\32\2\u0091/\3\2\2\2\u0092\u0093\7\n\2\2\u0093" + - "\61\3\2\2\2\u0094\u0095\7\f\2\2\u0095\63\3\2\2\2\13\67>BIMTr|\u0086"; - public static final ATN _ATN = - new ATNDeserializer().deserialize(_serializedATN.toCharArray()); - protected static final DFA[] _decisionToDFA; - protected static final PredictionContextCache _sharedContextCache = - new PredictionContextCache(); - private static final String[] _LITERAL_NAMES = { - null, "'.id '", "'.int_stack_count '", "'.string_stack_count '", "'.int_var_count '", - "'.string_var_count '", "':'" - }; - private static final String[] _SYMBOLIC_NAMES = { - null, null, null, null, null, null, null, "NEWLINE", "INT", "QSTRING", - "IDENTIFIER", "COMMENT", "WS" - }; - public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); static { @@ -116,26 +95,24 @@ public class rs2asmParser extends Parser } } - static + @Override + @Deprecated + public String[] getTokenNames() { - _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; - for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) - { - _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); - } + return tokenNames; } - public rs2asmParser(TokenStream input) + @Override + + public Vocabulary getVocabulary() { - super(input); - _interp = new ParserATNSimulator(this, _ATN, _decisionToDFA, _sharedContextCache); + return VOCABULARY; } @Override - @Deprecated - public String[] getTokenNames() + public String getGrammarFileName() { - return tokenNames; + return "rs2asm.g4"; } @Override @@ -145,28 +122,78 @@ public String[] getRuleNames() } @Override - - public Vocabulary getVocabulary() + public String getSerializedATN() { - return VOCABULARY; + return _serializedATN; } @Override - public String getSerializedATN() + public ATN getATN() { - return _serializedATN; + return _ATN; } - @Override - public String getGrammarFileName() + public rs2asmParser(TokenStream input) { - return "rs2asm.g4"; + super(input); + _interp = new ParserATNSimulator(this, _ATN, _decisionToDFA, _sharedContextCache); } - @Override - public ATN getATN() + @SuppressWarnings("CheckReturnValue") + public static class ProgContext extends ParserRuleContext { - return _ATN; + public List NEWLINE() + { + return getTokens(rs2asmParser.NEWLINE); + } + + public TerminalNode NEWLINE(int i) + { + return getToken(rs2asmParser.NEWLINE, i); + } + + public List header() + { + return getRuleContexts(HeaderContext.class); + } + + public HeaderContext header(int i) + { + return getRuleContext(HeaderContext.class, i); + } + + public List line() + { + return getRuleContexts(LineContext.class); + } + + public LineContext line(int i) + { + return getRuleContext(LineContext.class, i); + } + + public ProgContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_prog; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterProg(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitProg(this); + } } public final ProgContext prog() throws RecognitionException @@ -196,7 +223,7 @@ public final ProgContext prog() throws RecognitionException setState(64); _errHandler.sync(this); _la = _input.LA(1); - while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__0) | (1L << T__1) | (1L << T__2) | (1L << T__3) | (1L << T__4))) != 0)) + while ((((_la) & ~0x3f) == 0 && ((1L << _la) & 62L) != 0)) { { { @@ -216,7 +243,8 @@ public final ProgContext prog() throws RecognitionException setState(60); _errHandler.sync(this); _la = _input.LA(1); - } while (_la == NEWLINE); + } + while (_la == NEWLINE); } } setState(66); @@ -246,13 +274,15 @@ public final ProgContext prog() throws RecognitionException setState(71); _errHandler.sync(this); _la = _input.LA(1); - } while (_la == NEWLINE); + } + while (_la == NEWLINE); } } setState(75); _errHandler.sync(this); _la = _input.LA(1); - } while (_la == INT || _la == IDENTIFIER); + } + while (_la == INT || _la == IDENTIFIER); } } catch (RecognitionException re) @@ -268,6 +298,58 @@ public final ProgContext prog() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class HeaderContext extends ParserRuleContext + { + public IdContext id() + { + return getRuleContext(IdContext.class, 0); + } + + public Int_stack_countContext int_stack_count() + { + return getRuleContext(Int_stack_countContext.class, 0); + } + + public String_stack_countContext string_stack_count() + { + return getRuleContext(String_stack_countContext.class, 0); + } + + public Int_var_countContext int_var_count() + { + return getRuleContext(Int_var_countContext.class, 0); + } + + public String_var_countContext string_var_count() + { + return getRuleContext(String_var_countContext.class, 0); + } + + public HeaderContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_header; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterHeader(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitHeader(this); + } + } + public final HeaderContext header() throws RecognitionException { HeaderContext _localctx = new HeaderContext(_ctx, getState()); @@ -330,6 +412,38 @@ public final HeaderContext header() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class IdContext extends ParserRuleContext + { + public Id_valueContext id_value() + { + return getRuleContext(Id_valueContext.class, 0); + } + + public IdContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_id; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterId(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitId(this); + } + } + public final IdContext id() throws RecognitionException { IdContext _localctx = new IdContext(_ctx, getState()); @@ -357,6 +471,38 @@ public final IdContext id() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Int_stack_countContext extends ParserRuleContext + { + public Int_stack_valueContext int_stack_value() + { + return getRuleContext(Int_stack_valueContext.class, 0); + } + + public Int_stack_countContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_int_stack_count; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInt_stack_count(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInt_stack_count(this); + } + } + public final Int_stack_countContext int_stack_count() throws RecognitionException { Int_stack_countContext _localctx = new Int_stack_countContext(_ctx, getState()); @@ -384,33 +530,99 @@ public final Int_stack_countContext int_stack_count() throws RecognitionExceptio return _localctx; } - public final String_stack_countContext string_stack_count() throws RecognitionException + @SuppressWarnings("CheckReturnValue") + public static class String_stack_countContext extends ParserRuleContext { - String_stack_countContext _localctx = new String_stack_countContext(_ctx, getState()); - enterRule(_localctx, 8, RULE_string_stack_count); - try + public String_stack_valueContext string_stack_value() { - enterOuterAlt(_localctx, 1); - { - setState(90); - match(T__2); - setState(91); - string_stack_value(); - } + return getRuleContext(String_stack_valueContext.class, 0); } - catch (RecognitionException re) + + public String_stack_countContext(ParserRuleContext parent, int invokingState) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); + super(parent, invokingState); } - finally + + @Override + public int getRuleIndex() { - exitRule(); + return RULE_string_stack_count; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).enterString_stack_count(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).exitString_stack_count(this); + } + } + + public final String_stack_countContext string_stack_count() throws RecognitionException + { + String_stack_countContext _localctx = new String_stack_countContext(_ctx, getState()); + enterRule(_localctx, 8, RULE_string_stack_count); + try + { + enterOuterAlt(_localctx, 1); + { + setState(90); + match(T__2); + setState(91); + string_stack_value(); + } + } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); } return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Int_var_countContext extends ParserRuleContext + { + public Int_var_valueContext int_var_value() + { + return getRuleContext(Int_var_valueContext.class, 0); + } + + public Int_var_countContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_int_var_count; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInt_var_count(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInt_var_count(this); + } + } + public final Int_var_countContext int_var_count() throws RecognitionException { Int_var_countContext _localctx = new Int_var_countContext(_ctx, getState()); @@ -438,6 +650,38 @@ public final Int_var_countContext int_var_count() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class String_var_countContext extends ParserRuleContext + { + public String_var_valueContext string_var_value() + { + return getRuleContext(String_var_valueContext.class, 0); + } + + public String_var_countContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_string_var_count; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterString_var_count(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitString_var_count(this); + } + } + public final String_var_countContext string_var_count() throws RecognitionException { String_var_countContext _localctx = new String_var_countContext(_ctx, getState()); @@ -465,6 +709,38 @@ public final String_var_countContext string_var_count() throws RecognitionExcept return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Id_valueContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public Id_valueContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_id_value; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterId_value(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitId_value(this); + } + } + public final Id_valueContext id_value() throws RecognitionException { Id_valueContext _localctx = new Id_valueContext(_ctx, getState()); @@ -490,6 +766,38 @@ public final Id_valueContext id_value() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Int_stack_valueContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public Int_stack_valueContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_int_stack_value; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInt_stack_value(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInt_stack_value(this); + } + } + public final Int_stack_valueContext int_stack_value() throws RecognitionException { Int_stack_valueContext _localctx = new Int_stack_valueContext(_ctx, getState()); @@ -515,6 +823,40 @@ public final Int_stack_valueContext int_stack_value() throws RecognitionExceptio return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class String_stack_valueContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public String_stack_valueContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_string_stack_value; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).enterString_stack_value(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).exitString_stack_value(this); + } + } + public final String_stack_valueContext string_stack_value() throws RecognitionException { String_stack_valueContext _localctx = new String_stack_valueContext(_ctx, getState()); @@ -540,6 +882,38 @@ public final String_stack_valueContext string_stack_value() throws RecognitionEx return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Int_var_valueContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public Int_var_valueContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_int_var_value; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInt_var_value(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInt_var_value(this); + } + } + public final Int_var_valueContext int_var_value() throws RecognitionException { Int_var_valueContext _localctx = new Int_var_valueContext(_ctx, getState()); @@ -565,6 +939,38 @@ public final Int_var_valueContext int_var_value() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class String_var_valueContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public String_var_valueContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_string_var_value; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterString_var_value(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitString_var_value(this); + } + } + public final String_var_valueContext string_var_value() throws RecognitionException { String_var_valueContext _localctx = new String_var_valueContext(_ctx, getState()); @@ -590,14 +996,56 @@ public final String_var_valueContext string_var_value() throws RecognitionExcept return _localctx; } - public final LineContext line() throws RecognitionException + @SuppressWarnings("CheckReturnValue") + public static class LineContext extends ParserRuleContext { - LineContext _localctx = new LineContext(_ctx, getState()); - enterRule(_localctx, 24, RULE_line); - try + public InstructionContext instruction() { - setState(112); - _errHandler.sync(this); + return getRuleContext(InstructionContext.class, 0); + } + + public LabelContext label() + { + return getRuleContext(LabelContext.class, 0); + } + + public Switch_lookupContext switch_lookup() + { + return getRuleContext(Switch_lookupContext.class, 0); + } + + public LineContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_line; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterLine(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitLine(this); + } + } + + public final LineContext line() throws RecognitionException + { + LineContext _localctx = new LineContext(_ctx, getState()); + enterRule(_localctx, 24, RULE_line); + try + { + setState(112); + _errHandler.sync(this); switch (getInterpreter().adaptivePredict(_input, 6, _ctx)) { case 1: @@ -636,6 +1084,43 @@ public final LineContext line() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class InstructionContext extends ParserRuleContext + { + public Instruction_nameContext instruction_name() + { + return getRuleContext(Instruction_nameContext.class, 0); + } + + public Instruction_operandContext instruction_operand() + { + return getRuleContext(Instruction_operandContext.class, 0); + } + + public InstructionContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_instruction; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInstruction(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInstruction(this); + } + } + public final InstructionContext instruction() throws RecognitionException { InstructionContext _localctx = new InstructionContext(_ctx, getState()); @@ -663,6 +1148,38 @@ public final InstructionContext instruction() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class LabelContext extends ParserRuleContext + { + public TerminalNode IDENTIFIER() + { + return getToken(rs2asmParser.IDENTIFIER, 0); + } + + public LabelContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_label; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterLabel(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitLabel(this); + } + } + public final LabelContext label() throws RecognitionException { LabelContext _localctx = new LabelContext(_ctx, getState()); @@ -690,6 +1207,43 @@ public final LabelContext label() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Instruction_nameContext extends ParserRuleContext + { + public Name_stringContext name_string() + { + return getRuleContext(Name_stringContext.class, 0); + } + + public Name_opcodeContext name_opcode() + { + return getRuleContext(Name_opcodeContext.class, 0); + } + + public Instruction_nameContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_instruction_name; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterInstruction_name(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitInstruction_name(this); + } + } + public final Instruction_nameContext instruction_name() throws RecognitionException { Instruction_nameContext _localctx = new Instruction_nameContext(_ctx, getState()); @@ -731,6 +1285,38 @@ public final Instruction_nameContext instruction_name() throws RecognitionExcept return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Name_stringContext extends ParserRuleContext + { + public TerminalNode IDENTIFIER() + { + return getToken(rs2asmParser.IDENTIFIER, 0); + } + + public Name_stringContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_name_string; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterName_string(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitName_string(this); + } + } + public final Name_stringContext name_string() throws RecognitionException { Name_stringContext _localctx = new Name_stringContext(_ctx, getState()); @@ -756,6 +1342,38 @@ public final Name_stringContext name_string() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Name_opcodeContext extends ParserRuleContext + { + public TerminalNode INT() + { + return getToken(rs2asmParser.INT, 0); + } + + public Name_opcodeContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_name_opcode; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterName_opcode(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitName_opcode(this); + } + } + public final Name_opcodeContext name_opcode() throws RecognitionException { Name_opcodeContext _localctx = new Name_opcodeContext(_ctx, getState()); @@ -781,6 +1399,50 @@ public final Name_opcodeContext name_opcode() throws RecognitionException return _localctx; } + @SuppressWarnings("CheckReturnValue") + public static class Instruction_operandContext extends ParserRuleContext + { + public Operand_intContext operand_int() + { + return getRuleContext(Operand_intContext.class, 0); + } + + public Operand_qstringContext operand_qstring() + { + return getRuleContext(Operand_qstringContext.class, 0); + } + + public Operand_labelContext operand_label() + { + return getRuleContext(Operand_labelContext.class, 0); + } + + public Instruction_operandContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + + @Override + public int getRuleIndex() + { + return RULE_instruction_operand; + } + + @Override + public void enterRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).enterInstruction_operand(this); + } + + @Override + public void exitRule(ParseTreeListener listener) + { + if (listener instanceof rs2asmListener) + ((rs2asmListener) listener).exitInstruction_operand(this); + } + } + public final Instruction_operandContext instruction_operand() throws RecognitionException { Instruction_operandContext _localctx = new Instruction_operandContext(_ctx, getState()); @@ -834,985 +1496,74 @@ public final Instruction_operandContext instruction_operand() throws Recognition return _localctx; } - public final Operand_intContext operand_int() throws RecognitionException + @SuppressWarnings("CheckReturnValue") + public static class Operand_intContext extends ParserRuleContext { - Operand_intContext _localctx = new Operand_intContext(_ctx, getState()); - enterRule(_localctx, 38, RULE_operand_int); - try + public TerminalNode INT() { - enterOuterAlt(_localctx, 1); - { - setState(134); - match(INT); - } + return getToken(rs2asmParser.INT, 0); } - catch (RecognitionException re) + + public Operand_intContext(ParserRuleContext parent, int invokingState) { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public final Operand_qstringContext operand_qstring() throws RecognitionException - { - Operand_qstringContext _localctx = new Operand_qstringContext(_ctx, getState()); - enterRule(_localctx, 40, RULE_operand_qstring); - try - { - enterOuterAlt(_localctx, 1); - { - setState(136); - match(QSTRING); - } - } - catch (RecognitionException re) - { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public final Operand_labelContext operand_label() throws RecognitionException - { - Operand_labelContext _localctx = new Operand_labelContext(_ctx, getState()); - enterRule(_localctx, 42, RULE_operand_label); - try - { - enterOuterAlt(_localctx, 1); - { - setState(138); - match(IDENTIFIER); - } - } - catch (RecognitionException re) - { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public final Switch_lookupContext switch_lookup() throws RecognitionException - { - Switch_lookupContext _localctx = new Switch_lookupContext(_ctx, getState()); - enterRule(_localctx, 44, RULE_switch_lookup); - try - { - enterOuterAlt(_localctx, 1); - { - setState(140); - switch_key(); - setState(141); - match(T__5); - setState(142); - switch_value(); - } - } - catch (RecognitionException re) - { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public final Switch_keyContext switch_key() throws RecognitionException - { - Switch_keyContext _localctx = new Switch_keyContext(_ctx, getState()); - enterRule(_localctx, 46, RULE_switch_key); - try - { - enterOuterAlt(_localctx, 1); - { - setState(144); - match(INT); - } - } - catch (RecognitionException re) - { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public final Switch_valueContext switch_value() throws RecognitionException - { - Switch_valueContext _localctx = new Switch_valueContext(_ctx, getState()); - enterRule(_localctx, 48, RULE_switch_value); - try - { - enterOuterAlt(_localctx, 1); - { - setState(146); - match(IDENTIFIER); - } - } - catch (RecognitionException re) - { - _localctx.exception = re; - _errHandler.reportError(this, re); - _errHandler.recover(this, re); - } - finally - { - exitRule(); - } - return _localctx; - } - - public static class ProgContext extends ParserRuleContext - { - public ProgContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public List NEWLINE() - { - return getTokens(rs2asmParser.NEWLINE); - } - - public TerminalNode NEWLINE(int i) - { - return getToken(rs2asmParser.NEWLINE, i); - } - - public List header() - { - return getRuleContexts(HeaderContext.class); - } - - public HeaderContext header(int i) - { - return getRuleContext(HeaderContext.class, i); - } - - public List line() - { - return getRuleContexts(LineContext.class); - } - - public LineContext line(int i) - { - return getRuleContext(LineContext.class, i); - } - - @Override - public int getRuleIndex() - { - return RULE_prog; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterProg(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitProg(this); - } - } - } - - public static class HeaderContext extends ParserRuleContext - { - public HeaderContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public IdContext id() - { - return getRuleContext(IdContext.class, 0); - } - - public Int_stack_countContext int_stack_count() - { - return getRuleContext(Int_stack_countContext.class, 0); - } - - public String_stack_countContext string_stack_count() - { - return getRuleContext(String_stack_countContext.class, 0); - } - - public Int_var_countContext int_var_count() - { - return getRuleContext(Int_var_countContext.class, 0); - } - - public String_var_countContext string_var_count() - { - return getRuleContext(String_var_countContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_header; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterHeader(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitHeader(this); - } - } - } - - public static class IdContext extends ParserRuleContext - { - public IdContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Id_valueContext id_value() - { - return getRuleContext(Id_valueContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_id; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterId(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitId(this); - } - } - } - - public static class Int_stack_countContext extends ParserRuleContext - { - public Int_stack_countContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Int_stack_valueContext int_stack_value() - { - return getRuleContext(Int_stack_valueContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_int_stack_count; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInt_stack_count(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInt_stack_count(this); - } - } - } - - public static class String_stack_countContext extends ParserRuleContext - { - public String_stack_countContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public String_stack_valueContext string_stack_value() - { - return getRuleContext(String_stack_valueContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_string_stack_count; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterString_stack_count(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitString_stack_count(this); - } - } - } - - public static class Int_var_countContext extends ParserRuleContext - { - public Int_var_countContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Int_var_valueContext int_var_value() - { - return getRuleContext(Int_var_valueContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_int_var_count; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInt_var_count(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInt_var_count(this); - } - } - } - - public static class String_var_countContext extends ParserRuleContext - { - public String_var_countContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public String_var_valueContext string_var_value() - { - return getRuleContext(String_var_valueContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_string_var_count; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterString_var_count(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitString_var_count(this); - } - } - } - - public static class Id_valueContext extends ParserRuleContext - { - public Id_valueContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_id_value; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterId_value(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitId_value(this); - } - } - } - - public static class Int_stack_valueContext extends ParserRuleContext - { - public Int_stack_valueContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_int_stack_value; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInt_stack_value(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInt_stack_value(this); - } - } - } - - public static class String_stack_valueContext extends ParserRuleContext - { - public String_stack_valueContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_string_stack_value; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterString_stack_value(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitString_stack_value(this); - } - } - } - - public static class Int_var_valueContext extends ParserRuleContext - { - public Int_var_valueContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_int_var_value; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInt_var_value(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInt_var_value(this); - } - } - } - - public static class String_var_valueContext extends ParserRuleContext - { - public String_var_valueContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_string_var_value; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterString_var_value(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitString_var_value(this); - } - } - } - - public static class LineContext extends ParserRuleContext - { - public LineContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public InstructionContext instruction() - { - return getRuleContext(InstructionContext.class, 0); - } - - public LabelContext label() - { - return getRuleContext(LabelContext.class, 0); - } - - public Switch_lookupContext switch_lookup() - { - return getRuleContext(Switch_lookupContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_line; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterLine(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitLine(this); - } - } - } - - public static class InstructionContext extends ParserRuleContext - { - public InstructionContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Instruction_nameContext instruction_name() - { - return getRuleContext(Instruction_nameContext.class, 0); - } - - public Instruction_operandContext instruction_operand() - { - return getRuleContext(Instruction_operandContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_instruction; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInstruction(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInstruction(this); - } - } - } - - public static class LabelContext extends ParserRuleContext - { - public LabelContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode IDENTIFIER() - { - return getToken(rs2asmParser.IDENTIFIER, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_label; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterLabel(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitLabel(this); - } - } - } - - public static class Instruction_nameContext extends ParserRuleContext - { - public Instruction_nameContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Name_stringContext name_string() - { - return getRuleContext(Name_stringContext.class, 0); - } - - public Name_opcodeContext name_opcode() - { - return getRuleContext(Name_opcodeContext.class, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_instruction_name; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInstruction_name(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInstruction_name(this); - } - } - } - - public static class Name_stringContext extends ParserRuleContext - { - public Name_stringContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode IDENTIFIER() - { - return getToken(rs2asmParser.IDENTIFIER, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_name_string; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterName_string(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitName_string(this); - } - } - } - - public static class Name_opcodeContext extends ParserRuleContext - { - public Name_opcodeContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_name_opcode; - } - - @Override - public void enterRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterName_opcode(this); - } - } - - @Override - public void exitRule(ParseTreeListener listener) - { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitName_opcode(this); - } - } - } - - public static class Instruction_operandContext extends ParserRuleContext - { - public Instruction_operandContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public Operand_intContext operand_int() - { - return getRuleContext(Operand_intContext.class, 0); - } - - public Operand_qstringContext operand_qstring() - { - return getRuleContext(Operand_qstringContext.class, 0); - } - - public Operand_labelContext operand_label() - { - return getRuleContext(Operand_labelContext.class, 0); + super(parent, invokingState); } @Override public int getRuleIndex() { - return RULE_instruction_operand; + return RULE_operand_int; } @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterInstruction_operand(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterOperand_int(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitInstruction_operand(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitOperand_int(this); } } - public static class Operand_intContext extends ParserRuleContext + public final Operand_intContext operand_int() throws RecognitionException { - public Operand_intContext(ParserRuleContext parent, int invokingState) - { - super(parent, invokingState); - } - - public TerminalNode INT() - { - return getToken(rs2asmParser.INT, 0); - } - - @Override - public int getRuleIndex() - { - return RULE_operand_int; - } - - @Override - public void enterRule(ParseTreeListener listener) + Operand_intContext _localctx = new Operand_intContext(_ctx, getState()); + enterRule(_localctx, 38, RULE_operand_int); + try { - if (listener instanceof rs2asmListener) + enterOuterAlt(_localctx, 1); { - ((rs2asmListener) listener).enterOperand_int(this); + setState(134); + match(INT); } } - - @Override - public void exitRule(ParseTreeListener listener) + catch (RecognitionException re) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitOperand_int(this); - } + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); } + return _localctx; } + @SuppressWarnings("CheckReturnValue") public static class Operand_qstringContext extends ParserRuleContext { - public Operand_qstringContext(ParserRuleContext parent, int invokingState) + public TerminalNode QSTRING() { - super(parent, invokingState); + return getToken(rs2asmParser.QSTRING, 0); } - public TerminalNode QSTRING() + public Operand_qstringContext(ParserRuleContext parent, int invokingState) { - return getToken(rs2asmParser.QSTRING, 0); + super(parent, invokingState); } @Override @@ -1824,32 +1575,52 @@ public int getRuleIndex() @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterOperand_qstring(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterOperand_qstring(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitOperand_qstring(this); + } + } + + public final Operand_qstringContext operand_qstring() throws RecognitionException + { + Operand_qstringContext _localctx = new Operand_qstringContext(_ctx, getState()); + enterRule(_localctx, 40, RULE_operand_qstring); + try + { + enterOuterAlt(_localctx, 1); { - ((rs2asmListener) listener).exitOperand_qstring(this); + setState(136); + match(QSTRING); } } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); + } + return _localctx; } + @SuppressWarnings("CheckReturnValue") public static class Operand_labelContext extends ParserRuleContext { - public Operand_labelContext(ParserRuleContext parent, int invokingState) + public TerminalNode IDENTIFIER() { - super(parent, invokingState); + return getToken(rs2asmParser.IDENTIFIER, 0); } - public TerminalNode IDENTIFIER() + public Operand_labelContext(ParserRuleContext parent, int invokingState) { - return getToken(rs2asmParser.IDENTIFIER, 0); + super(parent, invokingState); } @Override @@ -1861,29 +1632,44 @@ public int getRuleIndex() @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterOperand_label(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterOperand_label(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).exitOperand_label(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitOperand_label(this); } } - public static class Switch_lookupContext extends ParserRuleContext + public final Operand_labelContext operand_label() throws RecognitionException { - public Switch_lookupContext(ParserRuleContext parent, int invokingState) + Operand_labelContext _localctx = new Operand_labelContext(_ctx, getState()); + enterRule(_localctx, 42, RULE_operand_label); + try { - super(parent, invokingState); + enterOuterAlt(_localctx, 1); + { + setState(138); + match(IDENTIFIER); + } + } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); } + return _localctx; + } + @SuppressWarnings("CheckReturnValue") + public static class Switch_lookupContext extends ParserRuleContext + { public Switch_keyContext switch_key() { return getRuleContext(Switch_keyContext.class, 0); @@ -1894,6 +1680,11 @@ public Switch_valueContext switch_value() return getRuleContext(Switch_valueContext.class, 0); } + public Switch_lookupContext(ParserRuleContext parent, int invokingState) + { + super(parent, invokingState); + } + @Override public int getRuleIndex() { @@ -1903,32 +1694,56 @@ public int getRuleIndex() @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterSwitch_lookup(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterSwitch_lookup(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitSwitch_lookup(this); + } + } + + public final Switch_lookupContext switch_lookup() throws RecognitionException + { + Switch_lookupContext _localctx = new Switch_lookupContext(_ctx, getState()); + enterRule(_localctx, 44, RULE_switch_lookup); + try + { + enterOuterAlt(_localctx, 1); { - ((rs2asmListener) listener).exitSwitch_lookup(this); + setState(140); + switch_key(); + setState(141); + match(T__5); + setState(142); + switch_value(); } } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); + } + return _localctx; } + @SuppressWarnings("CheckReturnValue") public static class Switch_keyContext extends ParserRuleContext { - public Switch_keyContext(ParserRuleContext parent, int invokingState) + public TerminalNode INT() { - super(parent, invokingState); + return getToken(rs2asmParser.INT, 0); } - public TerminalNode INT() + public Switch_keyContext(ParserRuleContext parent, int invokingState) { - return getToken(rs2asmParser.INT, 0); + super(parent, invokingState); } @Override @@ -1940,32 +1755,52 @@ public int getRuleIndex() @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterSwitch_key(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterSwitch_key(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitSwitch_key(this); + } + } + + public final Switch_keyContext switch_key() throws RecognitionException + { + Switch_keyContext _localctx = new Switch_keyContext(_ctx, getState()); + enterRule(_localctx, 46, RULE_switch_key); + try + { + enterOuterAlt(_localctx, 1); { - ((rs2asmListener) listener).exitSwitch_key(this); + setState(144); + match(INT); } } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); + } + return _localctx; } + @SuppressWarnings("CheckReturnValue") public static class Switch_valueContext extends ParserRuleContext { - public Switch_valueContext(ParserRuleContext parent, int invokingState) + public TerminalNode IDENTIFIER() { - super(parent, invokingState); + return getToken(rs2asmParser.IDENTIFIER, 0); } - public TerminalNode IDENTIFIER() + public Switch_valueContext(ParserRuleContext parent, int invokingState) { - return getToken(rs2asmParser.IDENTIFIER, 0); + super(parent, invokingState); } @Override @@ -1977,19 +1812,131 @@ public int getRuleIndex() @Override public void enterRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) - { - ((rs2asmListener) listener).enterSwitch_value(this); - } + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).enterSwitch_value(this); } @Override public void exitRule(ParseTreeListener listener) { - if (listener instanceof rs2asmListener) + if (listener instanceof rs2asmListener) ((rs2asmListener) listener).exitSwitch_value(this); + } + } + + public final Switch_valueContext switch_value() throws RecognitionException + { + Switch_valueContext _localctx = new Switch_valueContext(_ctx, getState()); + enterRule(_localctx, 48, RULE_switch_value); + try + { + enterOuterAlt(_localctx, 1); { - ((rs2asmListener) listener).exitSwitch_value(this); + setState(146); + match(IDENTIFIER); } } + catch (RecognitionException re) + { + _localctx.exception = re; + _errHandler.reportError(this, re); + _errHandler.recover(this, re); + } + finally + { + exitRule(); + } + return _localctx; + } + + public static final String _serializedATN = + "\u0004\u0001\f\u0095\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001\u0002" + + "\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004\u0002" + + "\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007\u0002" + + "\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002\u000b\u0007\u000b\u0002" + + "\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e\u0002\u000f\u0007\u000f" + + "\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011\u0002\u0012\u0007\u0012" + + "\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014\u0002\u0015\u0007\u0015" + + "\u0002\u0016\u0007\u0016\u0002\u0017\u0007\u0017\u0002\u0018\u0007\u0018" + + "\u0001\u0000\u0005\u00004\b\u0000\n\u0000\f\u00007\t\u0000\u0001\u0000" + + "\u0001\u0000\u0004\u0000;\b\u0000\u000b\u0000\f\u0000<\u0005\u0000?\b" + + "\u0000\n\u0000\f\u0000B\t\u0000\u0001\u0000\u0001\u0000\u0004\u0000F\b" + + "\u0000\u000b\u0000\f\u0000G\u0004\u0000J\b\u0000\u000b\u0000\f\u0000K" + + "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0003\u0001" + + "S\b\u0001\u0001\u0002\u0001\u0002\u0001\u0002\u0001\u0003\u0001\u0003" + + "\u0001\u0003\u0001\u0004\u0001\u0004\u0001\u0004\u0001\u0005\u0001\u0005" + + "\u0001\u0005\u0001\u0006\u0001\u0006\u0001\u0006\u0001\u0007\u0001\u0007" + + "\u0001\b\u0001\b\u0001\t\u0001\t\u0001\n\u0001\n\u0001\u000b\u0001\u000b" + + "\u0001\f\u0001\f\u0001\f\u0003\fq\b\f\u0001\r\u0001\r\u0001\r\u0001\u000e" + + "\u0001\u000e\u0001\u000e\u0001\u000f\u0001\u000f\u0003\u000f{\b\u000f" + + "\u0001\u0010\u0001\u0010\u0001\u0011\u0001\u0011\u0001\u0012\u0001\u0012" + + "\u0001\u0012\u0001\u0012\u0003\u0012\u0085\b\u0012\u0001\u0013\u0001\u0013" + + "\u0001\u0014\u0001\u0014\u0001\u0015\u0001\u0015\u0001\u0016\u0001\u0016" + + "\u0001\u0016\u0001\u0016\u0001\u0017\u0001\u0017\u0001\u0018\u0001\u0018" + + "\u0001\u0018\u0000\u0000\u0019\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010" + + "\u0012\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.0\u0000\u0000\u008a" + + "\u00005\u0001\u0000\u0000\u0000\u0002R\u0001\u0000\u0000\u0000\u0004T" + + "\u0001\u0000\u0000\u0000\u0006W\u0001\u0000\u0000\u0000\bZ\u0001\u0000" + + "\u0000\u0000\n]\u0001\u0000\u0000\u0000\f`\u0001\u0000\u0000\u0000\u000e" + + "c\u0001\u0000\u0000\u0000\u0010e\u0001\u0000\u0000\u0000\u0012g\u0001" + + "\u0000\u0000\u0000\u0014i\u0001\u0000\u0000\u0000\u0016k\u0001\u0000\u0000" + + "\u0000\u0018p\u0001\u0000\u0000\u0000\u001ar\u0001\u0000\u0000\u0000\u001c" + + "u\u0001\u0000\u0000\u0000\u001ez\u0001\u0000\u0000\u0000 |\u0001\u0000" + + "\u0000\u0000\"~\u0001\u0000\u0000\u0000$\u0084\u0001\u0000\u0000\u0000" + + "&\u0086\u0001\u0000\u0000\u0000(\u0088\u0001\u0000\u0000\u0000*\u008a" + + "\u0001\u0000\u0000\u0000,\u008c\u0001\u0000\u0000\u0000.\u0090\u0001\u0000" + + "\u0000\u00000\u0092\u0001\u0000\u0000\u000024\u0005\u0007\u0000\u0000" + + "32\u0001\u0000\u0000\u000047\u0001\u0000\u0000\u000053\u0001\u0000\u0000" + + "\u000056\u0001\u0000\u0000\u00006@\u0001\u0000\u0000\u000075\u0001\u0000" + + "\u0000\u00008:\u0003\u0002\u0001\u00009;\u0005\u0007\u0000\u0000:9\u0001" + + "\u0000\u0000\u0000;<\u0001\u0000\u0000\u0000<:\u0001\u0000\u0000\u0000" + + "<=\u0001\u0000\u0000\u0000=?\u0001\u0000\u0000\u0000>8\u0001\u0000\u0000" + + "\u0000?B\u0001\u0000\u0000\u0000@>\u0001\u0000\u0000\u0000@A\u0001\u0000" + + "\u0000\u0000AI\u0001\u0000\u0000\u0000B@\u0001\u0000\u0000\u0000CE\u0003" + + "\u0018\f\u0000DF\u0005\u0007\u0000\u0000ED\u0001\u0000\u0000\u0000FG\u0001" + + "\u0000\u0000\u0000GE\u0001\u0000\u0000\u0000GH\u0001\u0000\u0000\u0000" + + "HJ\u0001\u0000\u0000\u0000IC\u0001\u0000\u0000\u0000JK\u0001\u0000\u0000" + + "\u0000KI\u0001\u0000\u0000\u0000KL\u0001\u0000\u0000\u0000L\u0001\u0001" + + "\u0000\u0000\u0000MS\u0003\u0004\u0002\u0000NS\u0003\u0006\u0003\u0000" + + "OS\u0003\b\u0004\u0000PS\u0003\n\u0005\u0000QS\u0003\f\u0006\u0000RM\u0001" + + "\u0000\u0000\u0000RN\u0001\u0000\u0000\u0000RO\u0001\u0000\u0000\u0000" + + "RP\u0001\u0000\u0000\u0000RQ\u0001\u0000\u0000\u0000S\u0003\u0001\u0000" + + "\u0000\u0000TU\u0005\u0001\u0000\u0000UV\u0003\u000e\u0007\u0000V\u0005" + + "\u0001\u0000\u0000\u0000WX\u0005\u0002\u0000\u0000XY\u0003\u0010\b\u0000" + + "Y\u0007\u0001\u0000\u0000\u0000Z[\u0005\u0003\u0000\u0000[\\\u0003\u0012" + + "\t\u0000\\\t\u0001\u0000\u0000\u0000]^\u0005\u0004\u0000\u0000^_\u0003" + + "\u0014\n\u0000_\u000b\u0001\u0000\u0000\u0000`a\u0005\u0005\u0000\u0000" + + "ab\u0003\u0016\u000b\u0000b\r\u0001\u0000\u0000\u0000cd\u0005\b\u0000" + + "\u0000d\u000f\u0001\u0000\u0000\u0000ef\u0005\b\u0000\u0000f\u0011\u0001" + + "\u0000\u0000\u0000gh\u0005\b\u0000\u0000h\u0013\u0001\u0000\u0000\u0000" + + "ij\u0005\b\u0000\u0000j\u0015\u0001\u0000\u0000\u0000kl\u0005\b\u0000" + + "\u0000l\u0017\u0001\u0000\u0000\u0000mq\u0003\u001a\r\u0000nq\u0003\u001c" + + "\u000e\u0000oq\u0003,\u0016\u0000pm\u0001\u0000\u0000\u0000pn\u0001\u0000" + + "\u0000\u0000po\u0001\u0000\u0000\u0000q\u0019\u0001\u0000\u0000\u0000" + + "rs\u0003\u001e\u000f\u0000st\u0003$\u0012\u0000t\u001b\u0001\u0000\u0000" + + "\u0000uv\u0005\n\u0000\u0000vw\u0005\u0006\u0000\u0000w\u001d\u0001\u0000" + + "\u0000\u0000x{\u0003 \u0010\u0000y{\u0003\"\u0011\u0000zx\u0001\u0000" + + "\u0000\u0000zy\u0001\u0000\u0000\u0000{\u001f\u0001\u0000\u0000\u0000" + + "|}\u0005\n\u0000\u0000}!\u0001\u0000\u0000\u0000~\u007f\u0005\b\u0000" + + "\u0000\u007f#\u0001\u0000\u0000\u0000\u0080\u0085\u0003&\u0013\u0000\u0081" + + "\u0085\u0003(\u0014\u0000\u0082\u0085\u0003*\u0015\u0000\u0083\u0085\u0001" + + "\u0000\u0000\u0000\u0084\u0080\u0001\u0000\u0000\u0000\u0084\u0081\u0001" + + "\u0000\u0000\u0000\u0084\u0082\u0001\u0000\u0000\u0000\u0084\u0083\u0001" + + "\u0000\u0000\u0000\u0085%\u0001\u0000\u0000\u0000\u0086\u0087\u0005\b" + + "\u0000\u0000\u0087\'\u0001\u0000\u0000\u0000\u0088\u0089\u0005\t\u0000" + + "\u0000\u0089)\u0001\u0000\u0000\u0000\u008a\u008b\u0005\n\u0000\u0000" + + "\u008b+\u0001\u0000\u0000\u0000\u008c\u008d\u0003.\u0017\u0000\u008d\u008e" + + "\u0005\u0006\u0000\u0000\u008e\u008f\u00030\u0018\u0000\u008f-\u0001\u0000" + + "\u0000\u0000\u0090\u0091\u0005\b\u0000\u0000\u0091/\u0001\u0000\u0000" + + "\u0000\u0092\u0093\u0005\n\u0000\u0000\u00931\u0001\u0000\u0000\u0000" + + "\t5<@GKRpz\u0084"; + public static final ATN _ATN = + new ATNDeserializer().deserialize(_serializedATN.toCharArray()); + + static + { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) + { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } } \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/script/disassembler/Disassembler.java b/cache/src/main/java/net/runelite/cache/script/disassembler/Disassembler.java index 523796c49..c125ef858 100644 --- a/cache/src/main/java/net/runelite/cache/script/disassembler/Disassembler.java +++ b/cache/src/main/java/net/runelite/cache/script/disassembler/Disassembler.java @@ -26,9 +26,6 @@ import com.google.common.escape.Escaper; import com.google.common.escape.Escapers; -import java.io.IOException; -import java.util.Map; -import java.util.Map.Entry; import net.runelite.cache.definitions.ScriptDefinition; import net.runelite.cache.script.Instruction; import net.runelite.cache.script.Instructions; @@ -36,6 +33,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.IOException; +import java.util.Map; +import java.util.Map.Entry; + public class Disassembler { private static final Logger logger = LoggerFactory.getLogger(Disassembler.class); diff --git a/cache/src/main/java/net/runelite/cache/util/BZip2.java b/cache/src/main/java/net/runelite/cache/util/BZip2.java index cde6fc55d..0a1bdf6c9 100644 --- a/cache/src/main/java/net/runelite/cache/util/BZip2.java +++ b/cache/src/main/java/net/runelite/cache/util/BZip2.java @@ -24,21 +24,19 @@ */ package net.runelite.cache.util; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.Arrays; +import com.sun.jna.Memory; import org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream; import org.apache.commons.compress.compressors.bzip2.BZip2CompressorOutputStream; import org.apache.commons.compress.utils.IOUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; + +import java.io.*; +import java.util.Arrays; + +import static net.runelite.cache.util.LibBZip2.*; public class BZip2 { - private static final Logger logger = LoggerFactory.getLogger(BZip2.class); + private static final boolean USE_NATIVE_BZIP2 = "true".equalsIgnoreCase(System.getProperty("runelite.useNativeBzip")); private static final byte[] BZIP_HEADER = new byte[] { @@ -48,6 +46,11 @@ public class BZip2 }; public static byte[] compress(byte[] bytes) throws IOException + { + return USE_NATIVE_BZIP2 ? compressLibBZip2(bytes) : compressApache(bytes); + } + + public static byte[] compressApache(byte[] bytes) throws IOException { InputStream is = new ByteArrayInputStream(bytes); ByteArrayOutputStream bout = new ByteArrayOutputStream(); @@ -66,6 +69,59 @@ public static byte[] compress(byte[] bytes) throws IOException return Arrays.copyOfRange(out, BZIP_HEADER.length, out.length); // remove header.. } + // byte-for-byte compatability with Jagex's compression + public static byte[] compressLibBZip2(byte[] data) throws IOException + { + LibBZip2 libBZip2 = LibBZip2.INSTANCE; + + BzStream stream = new BzStream(); + stream.next_in = new Memory(data.length); + stream.avail_in = data.length; + stream.next_in.write(0, data, 0, data.length); + + int outsz = 65536; + Memory out = new Memory(outsz); + stream.next_out = out; + stream.avail_out = outsz; + + ByteArrayOutputStream buffer = new ByteArrayOutputStream(); + + if (libBZip2.BZ2_bzCompressInit(stream, 1, 0, 0) != BZ_OK) + { + throw new IOException("BZ2_bzCompressInit() error"); + } + try + { + int offset = BZIP_HEADER.length; + int i; + do + { + i = libBZip2.BZ2_bzCompress(stream, LibBZip2.BZ_FINISH); + if (i == BZ_FINISH_OK || i == BZ_STREAM_END) + { + int wrote = outsz - stream.avail_out; + buffer.write(out.getByteArray(offset, wrote - offset)); + offset = 0; + stream.next_out = out; + stream.avail_out = outsz; + } + else + { + throw new IOException("BZ2_bzCompress() error"); + } + } while (i != BZ_STREAM_END); + } + finally + { + if (libBZip2.BZ2_bzCompressEnd(stream) != BZ_OK) + { + throw new IOException("BZ2_bzCompressEnd() error"); + } + } + + return buffer.toByteArray(); + } + public static byte[] decompress(byte[] bytes, int len) throws IOException { byte[] data = new byte[len + BZIP_HEADER.length]; diff --git a/cache/src/main/java/net/runelite/cache/util/BigBufferedImage.java b/cache/src/main/java/net/runelite/cache/util/BigBufferedImage.java index 1579c9e74..3ed25269c 100644 --- a/cache/src/main/java/net/runelite/cache/util/BigBufferedImage.java +++ b/cache/src/main/java/net/runelite/cache/util/BigBufferedImage.java @@ -11,36 +11,25 @@ * http://nyomdmegteis.hu/en/ */ -import java.awt.Point; -import java.awt.Rectangle; +import lombok.extern.slf4j.Slf4j; + +import javax.imageio.ImageIO; +import javax.imageio.ImageReadParam; +import javax.imageio.ImageReader; +import javax.imageio.stream.ImageInputStream; +import java.awt.*; import java.awt.color.ColorSpace; -import java.awt.image.BandedSampleModel; -import java.awt.image.BufferedImage; -import java.awt.image.ColorModel; -import java.awt.image.ComponentColorModel; -import java.awt.image.DataBuffer; -import java.awt.image.Raster; -import java.awt.image.RenderedImage; -import java.awt.image.SampleModel; -import java.awt.image.WritableRaster; +import java.awt.image.*; import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.Hashtable; -import java.util.Iterator; import java.util.List; +import java.util.*; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import javax.imageio.ImageIO; -import javax.imageio.ImageReadParam; -import javax.imageio.ImageReader; -import javax.imageio.stream.ImageInputStream; -import lombok.extern.slf4j.Slf4j; @Slf4j public class BigBufferedImage extends BufferedImage @@ -97,7 +86,7 @@ public static BufferedImage create(File inputFile, int imageType) throws IOExcep } catch (InterruptedException ex) { - ex.printStackTrace(); + log.error(null, ex); } } } diff --git a/deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandlers.java b/cache/src/main/java/net/runelite/cache/util/BzStream.java similarity index 55% rename from deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandlers.java rename to cache/src/main/java/net/runelite/cache/util/BzStream.java index bb0cc3d72..6ff91fe46 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandlers.java +++ b/cache/src/main/java/net/runelite/cache/util/BzStream.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, Adam + * Copyright (c) 2023, Adam * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -22,49 +22,68 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.s2c; +package net.runelite.cache.util; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; + +import java.util.Arrays; import java.util.List; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -public class PacketHandlers +public class BzStream extends Structure { - private final ClassGroup group; - private final Field packetType; - private final List handlers; + /* + char *next_in; + unsigned int avail_in; + unsigned int total_in_lo32; + unsigned int total_in_hi32; - public PacketHandlers(ClassGroup group, Field packetType, List handlers) - { - this.group = group; - this.packetType = packetType; - this.handlers = handlers; - } + char *next_out; + unsigned int avail_out; + unsigned int total_out_lo32; + unsigned int total_out_hi32; - public PacketHandler find(int opcode) - { - for (PacketHandler handler : handlers) - { - if (handler.getOpcode() == opcode) - { - return handler; - } - } - return null; - } + void *state; - public ClassGroup getGroup() - { - return group; - } + void *(*bzalloc)(void *,int,int); + void (*bzfree)(void *,void *); + void *opaque; + */ + public Pointer next_in; + public int avail_in; + public int total_in_lo32; + public int total_in_hi32; - public Field getPacketType() - { - return packetType; - } + public Pointer next_out; + public int avail_out; + public int total_out_lo32; + public int total_out_hi32; + + public Pointer state; + + public Pointer bzalloc; + public Pointer bzfree; + public Pointer opaque; - public List getHandlers() + @Override + protected List getFieldOrder() { - return handlers; + return Arrays.asList( + "next_in", + "avail_in", + "total_in_lo32", + "total_in_hi32", + + "next_out", + "avail_out", + "total_out_lo32", + "total_out_hi32", + + "state", + + "bzalloc", + "bzfree", + "opaque" + ); } } diff --git a/cache/src/main/java/net/runelite/cache/util/Djb2Manager.java b/cache/src/main/java/net/runelite/cache/util/Djb2Manager.java index 5db676fd2..d1f8c0560 100644 --- a/cache/src/main/java/net/runelite/cache/util/Djb2Manager.java +++ b/cache/src/main/java/net/runelite/cache/util/Djb2Manager.java @@ -24,12 +24,13 @@ */ package net.runelite.cache.util; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Properties; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class Djb2Manager { diff --git a/cache/src/main/java/net/runelite/cache/util/GZip.java b/cache/src/main/java/net/runelite/cache/util/GZip.java index faae86eaa..fdb1496c5 100644 --- a/cache/src/main/java/net/runelite/cache/util/GZip.java +++ b/cache/src/main/java/net/runelite/cache/util/GZip.java @@ -25,17 +25,14 @@ package net.runelite.cache.util; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.zip.GZIPInputStream; -import java.util.zip.GZIPOutputStream; import org.apache.commons.compress.utils.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.*; +import java.util.zip.GZIPInputStream; +import java.util.zip.GZIPOutputStream; + public class GZip { private static final Logger logger = LoggerFactory.getLogger(GZip.class); diff --git a/deobfuscator/src/main/java/net/runelite/deob/clientver/VersionMethodVisitor.java b/cache/src/main/java/net/runelite/cache/util/LibBZip2.java similarity index 69% rename from deobfuscator/src/main/java/net/runelite/deob/clientver/VersionMethodVisitor.java rename to cache/src/main/java/net/runelite/cache/util/LibBZip2.java index a8f5c4dec..4d4c31f23 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/clientver/VersionMethodVisitor.java +++ b/cache/src/main/java/net/runelite/cache/util/LibBZip2.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2017, Adam + * Copyright (c) 2023, Adam * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -22,39 +22,26 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +package net.runelite.cache.util; -package net.runelite.deob.clientver; +import com.sun.jna.Library; +import com.sun.jna.Native; -import org.objectweb.asm.MethodVisitor; -import org.objectweb.asm.Opcodes; - -public class VersionMethodVisitor extends MethodVisitor +public interface LibBZip2 extends Library { - private int state = 0; - private int version = -1; - - VersionMethodVisitor() - { - super(Opcodes.ASM5); - } + LibBZip2 INSTANCE = Native.load("libbz2", LibBZip2.class); - @Override - public void visitIntInsn(int opcode, int operand) - { - if (state == 2) - { - version = operand; - ++state; - } + int BZ_OK = 0; + int BZ_RUN_OK = 1; + int BZ_FLUSH_OK = 2; + int BZ_FINISH_OK = 3; + int BZ_STREAM_END = 4; - if (operand == 765 || operand == 503) - { - ++state; - } - } + int BZ_RUN = 0; + int BZ_FLUSH = 1; + int BZ_FINISH = 2; - public int getVersion() - { - return version; - } -} + int BZ2_bzCompressInit(BzStream stream, int blockSize100k, int verbosity, int workFactor); + int BZ2_bzCompress(BzStream stream, int action); + int BZ2_bzCompressEnd(BzStream stream); +} \ No newline at end of file diff --git a/cache/src/main/java/net/runelite/cache/util/ScriptVarType.java b/cache/src/main/java/net/runelite/cache/util/ScriptVarType.java index f67cc0c09..d6644407a 100644 --- a/cache/src/main/java/net/runelite/cache/util/ScriptVarType.java +++ b/cache/src/main/java/net/runelite/cache/util/ScriptVarType.java @@ -24,11 +24,12 @@ */ package net.runelite.cache.util; -import java.util.HashMap; -import java.util.Map; import lombok.AllArgsConstructor; import lombok.Getter; +import java.util.HashMap; +import java.util.Map; + @AllArgsConstructor @Getter public enum ScriptVarType diff --git a/cache/src/main/java/net/runelite/cache/util/XteaKeyManager.java b/cache/src/main/java/net/runelite/cache/util/XteaKeyManager.java index 669bb6a02..9cfc57151 100644 --- a/cache/src/main/java/net/runelite/cache/util/XteaKeyManager.java +++ b/cache/src/main/java/net/runelite/cache/util/XteaKeyManager.java @@ -26,14 +26,15 @@ import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.InputStream; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.List; import java.util.Map; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class XteaKeyManager implements KeyProvider { diff --git a/cache/src/test/java/net/runelite/cache/script/disassembler/DisassemblerTest.java b/cache/src/test/java/net/runelite/cache/script/disassembler/DisassemblerTest.java index ba18683be..719723a07 100644 --- a/cache/src/test/java/net/runelite/cache/script/disassembler/DisassemblerTest.java +++ b/cache/src/test/java/net/runelite/cache/script/disassembler/DisassemblerTest.java @@ -45,6 +45,7 @@ import static net.runelite.cache.Cache.loadStore; + public class DisassemblerTest { private static final Logger logger = LoggerFactory.getLogger(DisassemblerTest.class); diff --git a/client/src/main/java/dev/hoot/api/magic/Magic.java b/client/src/main/java/dev/hoot/api/magic/Magic.java index f5dbcbeec..161cbd256 100644 --- a/client/src/main/java/dev/hoot/api/magic/Magic.java +++ b/client/src/main/java/dev/hoot/api/magic/Magic.java @@ -14,6 +14,8 @@ import java.util.Arrays; +import static meteor.api.ClientPacketManagerKt.queueClickPacket; + public class Magic { private static final int SPELLBOOK_VARBIT = 4070; @@ -71,7 +73,7 @@ public static void selectSpell(Spell spell) Widget widget = Widgets.get(spell.getWidget()); if (widget != null) { - ClientPackets.INSTANCE.queueClickPacket(widget.getClickPoint()); + queueClickPacket(widget.getClickPoint()); widget.interact(0); } } diff --git a/client/src/main/java/dev/hoot/api/packets/WidgetPackets.java b/client/src/main/java/dev/hoot/api/packets/WidgetPackets.java index bf53a66af..97beca4d6 100644 --- a/client/src/main/java/dev/hoot/api/packets/WidgetPackets.java +++ b/client/src/main/java/dev/hoot/api/packets/WidgetPackets.java @@ -184,7 +184,7 @@ public static void queueWidgetAction10Packet(int widgetId, int itemId, int child public static void queueResumePauseWidgetPacket(int widgetId, int childId) { - createContinuePacket(widgetId, childId).send(); + // createContinuePacket(widgetId, childId).send(); } public static void queueWidgetOnWidgetPacket(int sourceWidgetId, int sourceSlot, int sourceItemId, int destinationWidgetId, int destinationSlot, int destinationItemId) @@ -284,8 +284,8 @@ public static PacketBufferNode createWidgetOnWidget(int sourceWidgetId, int sour return ClientPackets.INSTANCE.createItemWidgetOnItemWidgetPacket(sourceWidgetId, sourceSlot, sourceItemId, destinationWidgetId, destinationSlot, destinationItemId); } - public static PacketBufferNode createContinuePacket(int widgetId, int childId) + public void createContinuePacket(int widgetId, int childId) { - return ClientPackets.INSTANCE.createContinuePacket(widgetId, childId); + //TODO } } \ No newline at end of file diff --git a/client/src/main/java/dev/hoot/api/widgets/Prayers.java b/client/src/main/java/dev/hoot/api/widgets/Prayers.java index a0ab3f209..6f30bc98f 100644 --- a/client/src/main/java/dev/hoot/api/widgets/Prayers.java +++ b/client/src/main/java/dev/hoot/api/widgets/Prayers.java @@ -9,6 +9,8 @@ import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.WidgetInfo; +import static meteor.api.ClientPacketManagerKt.queueClickPacket; + public class Prayers { public static boolean isEnabled(Prayer prayer) @@ -36,7 +38,7 @@ public static void toggleQuickPrayer(boolean enabled) Widget widget = Widgets.get(WidgetInfo.MINIMAP_QUICK_PRAYER_ORB); if (widget != null) { - ClientPackets.INSTANCE.queueClickPacket(widget.getClickPoint()); + queueClickPacket(widget.getClickPoint()); widget.interact(enabled ? "Activate" : "Deactivate"); } diff --git a/client/src/main/java/meteor/Main.kt b/client/src/main/java/meteor/Main.kt index 23c66a545..97b18ee5d 100644 --- a/client/src/main/java/meteor/Main.kt +++ b/client/src/main/java/meteor/Main.kt @@ -12,7 +12,6 @@ import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.LayoutDirection import androidx.compose.ui.unit.dp import androidx.compose.ui.window.* -import com.google.gson.Gson import dev.hoot.api.events.AutomatedMenu import dev.hoot.api.game.GameThread import eventbus.Events @@ -23,8 +22,12 @@ import eventbus.events.MenuOptionClicked import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.launch import meteor.Configuration.EXTERNALS_DIR -import meteor.api.loot.Interact import meteor.api.ClientPackets +import meteor.api.createClientPacket +import meteor.api.loot.Interact +import meteor.api.queueClickPacket +import meteor.chat.ChatCommandManager +import meteor.chat.ChatMessageManager import meteor.config.ConfigManager import meteor.dev.widgetinspector.WidgetInspector import meteor.game.* @@ -35,10 +38,13 @@ import meteor.menus.WidgetMenuOption import meteor.plugins.EventSubscriber import meteor.plugins.PluginManager import meteor.plugins.meteor.MeteorConfig +import meteor.plugins.privateserver.PrivateServerConfig import meteor.plugins.xptracker.XpTrackerService +import meteor.rmi.handshake.HandshakeClient +import meteor.rmi.handshake.HandshakeService import meteor.rs.Applet import meteor.rs.AppletConfiguration -import meteor.session.SessionManager +import meteor.ui.composables.preferences.uiColor import meteor.ui.composables.ui.windowContent import meteor.ui.overlay.OverlayManager import meteor.ui.overlay.OverlayRenderer @@ -53,17 +59,9 @@ import meteor.util.Proxy import meteor.util.RuntimeConfigLoader import net.runelite.api.* import net.runelite.api.hooks.Callbacks -import meteor.chat.ChatCommandManager -import meteor.chat.ChatMessageManager -import meteor.plugins.privateserver.PrivateServerConfig -import meteor.rmi.handshake.HandshakeService -import meteor.rmi.handshake.HandshakeClient -import meteor.ui.composables.preferences.uiColor -import net.runelite.api.packets.ClientPacket import net.runelite.client.plugins.gpu.GpuPlugin import net.runelite.http.api.chat.ChatClient import net.runelite.http.api.xp.XpClient -import net.runelite.rs.api.RSClient import okhttp3.OkHttpClient import org.apache.commons.lang3.time.StopWatch import org.jetbrains.skiko.OS @@ -296,10 +294,10 @@ object Main : ApplicationScope, EventSubscriber() { Player.client = client Tile.client = client KEVENT.subscribe(Events.INTERACT) { - GameThread.invoke { ClientPackets.createClientPacket(it.data.menu)!!.send() } + GameThread.invoke { createClientPacket(it.data.menu)!!.send() } } KEVENT.subscribe(Events.SEND_CLICK_PACKET) { - GameThread.invoke { ClientPackets.queueClickPacket(it.data.clickPoint) } + GameThread.invoke {queueClickPacket(it.data.clickPoint) } } KEVENT.subscribe(Events.MENU_OPTION_CLICKED) { //These are api onClicks (before client code is usable) diff --git a/client/src/main/java/meteor/api/ClientPacketManager.kt b/client/src/main/java/meteor/api/ClientPacketManager.kt new file mode 100644 index 000000000..d8cbdb2dc --- /dev/null +++ b/client/src/main/java/meteor/api/ClientPacketManager.kt @@ -0,0 +1,363 @@ +package meteor.api + +import ClientPacket +import dev.hoot.api.InteractionException +import dev.hoot.api.events.AutomatedMenu +import dev.hoot.api.packets.WidgetPackets +import dev.hoot.api.widgets.Widgets +import meteor.Main +import meteor.api.ClientPackets.createClickPacket +import meteor.api.ClientPackets.createGroundItemAction1Packet +import meteor.api.ClientPackets.createGroundItemAction2Packet +import meteor.api.ClientPackets.createGroundItemAction3Packet +import meteor.api.ClientPackets.createGroundItemAction4Packet +import meteor.api.ClientPackets.createGroundItemAction5Packet +import meteor.api.ClientPackets.createItemWidgetOnGameObjectPacket +import meteor.api.ClientPackets.createItemWidgetOnNPCPacket +import meteor.api.ClientPackets.createItemWidgetOnPlayerPacket +import meteor.api.ClientPackets.createNPCAction1Packet +import meteor.api.ClientPackets.createNPCAction2Packet +import meteor.api.ClientPackets.createNPCAction3Packet +import meteor.api.ClientPackets.createNPCAction4Packet +import meteor.api.ClientPackets.createNPCAction5Packet +import meteor.api.ClientPackets.createObjectAction1Packet +import meteor.api.ClientPackets.createObjectAction2Packet +import meteor.api.ClientPackets.createObjectAction3Packet +import meteor.api.ClientPackets.createObjectAction4Packet +import meteor.api.ClientPackets.createObjectAction5Packet +import meteor.api.ClientPackets.createPlayerAction1Packet +import meteor.api.ClientPackets.createPlayerAction2Packet +import meteor.api.ClientPackets.createPlayerAction3Packet +import meteor.api.ClientPackets.createPlayerAction4Packet +import meteor.api.ClientPackets.createPlayerAction5Packet +import meteor.api.ClientPackets.createPlayerAction6Packet +import meteor.api.ClientPackets.createPlayerAction7Packet +import meteor.api.ClientPackets.createPlayerAction8Packet +import meteor.plugins.meteor.AutoInteractOverlay +import meteor.rs.ClientThread +import net.runelite.api.MenuAction +import net.runelite.api.packets.PacketBufferNode +import net.runelite.api.widgets.Widget +import net.runelite.api.widgets.WidgetType +import java.awt.Point + +fun preparePacketBuffer(opcode: Int, size: Int): PacketBufferNode { + + val clientPacket = Main.client.createClientPacket(opcode, size) + return Main.client.preparePacket( + clientPacket, + Main.client.packetWriter.isaacCipher + ) +} +fun preparePacketBuffer(clientPacket: ClientPacket): PacketBufferNode { + val clientPacket = Main.client.createClientPacket(clientPacket.id, clientPacket.length) + return Main.client.preparePacket( + clientPacket, + Main.client.packetWriter.isaacCipher + ) +} +fun queueClickPacket(clickPoint: Point) { + AutoInteractOverlay.interactPoint = clickPoint + queueClickPacket(clickPoint.x, clickPoint.y) +} + + +fun queueClickPacket(mouseInfo: Int, x: Int, y: Int) { + ClientThread.invoke { createClickPacket(mouseInfo, x, y).send() } +} + +fun queueClickPacket(x: Int, y: Int) { + Main.client.mouseLastPressedMillis = System.currentTimeMillis() + var mousePressedTime = + Main.client.mouseLastPressedMillis - Main.client.clientMouseLastPressedMillis + if (mousePressedTime < 0) { + mousePressedTime = 0 + } + if (mousePressedTime > 32767) { + mousePressedTime = 32767 + } + Main.client.clientMouseLastPressedMillis = Main.client.mouseLastPressedMillis + val mouseInfo = (mousePressedTime shl 1) + 1 + queueClickPacket(mouseInfo.toInt(), x, y) + Main.logger.error("--Click-Packet-- $x.$y") +} + +fun createClickPacket(x: Int, y: Int, override: Boolean = false): PacketBufferNode { + Main.client.mouseLastPressedMillis = System.currentTimeMillis() + var mousePressedTime = + Main.client.mouseLastPressedMillis - Main.client.clientMouseLastPressedMillis + if (mousePressedTime < 0) { + mousePressedTime = 0 + } + if (mousePressedTime > 32767) { + mousePressedTime = 32767 + } + Main.client.clientMouseLastPressedMillis = Main.client.mouseLastPressedMillis + val mouseInfo = (mousePressedTime shl 1) + 1 + return createClickPacket(mouseInfo.toInt(), x, y) +} + + +/** + * attempts to create a client packet from the provided [menu] + * @param menu the menu we extract the information that we need to create the packet + */ + +//remake this function with named arguments + +fun createClientPacket(menu: AutomatedMenu): PacketBufferNode? { + val opcode = menu.opcode + val client = Main.client + val id = menu.identifier + val param0 = menu.param0 + val param1 = menu.param1 + var selectedWidgetItemId = client.selectedSpellItemId + var selectedWidgetSlot = client.selectedSpellChildIndex + val selectedWidget = client.selectedSpellWidget + var result: PacketBufferNode? = null + result = when (opcode) { + MenuAction.ITEM_USE_ON_GAME_OBJECT, MenuAction.WIDGET_TARGET_ON_GAME_OBJECT -> createItemWidgetOnGameObjectPacket( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + selectedSpellChildIndex = selectedWidgetSlot, + selectedSpellItemId = selectedWidgetItemId, + selectedSpellWidget = selectedWidget, + shiftPressed = false + ) + MenuAction.GAME_OBJECT_FIRST_OPTION -> createObjectAction1Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GAME_OBJECT_SECOND_OPTION -> createObjectAction2Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GAME_OBJECT_THIRD_OPTION -> createObjectAction3Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GAME_OBJECT_FOURTH_OPTION -> createObjectAction4Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GAME_OBJECT_FIFTH_OPTION -> createObjectAction5Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.ITEM_USE_ON_NPC, MenuAction.WIDGET_TARGET_ON_NPC -> createItemWidgetOnNPCPacket( + id = id, + selectedSpellWidget = selectedWidget, + selectedSpellItemId = selectedWidgetItemId, + selectedSpellChildIndex = selectedWidgetSlot, + shiftPressed = false + ) + MenuAction.NPC_FIRST_OPTION -> createNPCAction1Packet(id = id, shiftPressed = false) + MenuAction.NPC_SECOND_OPTION -> createNPCAction2Packet(id = id, shiftPressed = false) + MenuAction.NPC_THIRD_OPTION -> createNPCAction3Packet(id = id, shiftPressed = false) + MenuAction.NPC_FOURTH_OPTION -> createNPCAction4Packet(id = id, shiftPressed = false) + MenuAction.NPC_FIFTH_OPTION -> createNPCAction5Packet(id = id, shiftPressed = false) + MenuAction.ITEM_USE_ON_PLAYER, MenuAction.WIDGET_TARGET_ON_PLAYER -> createItemWidgetOnPlayerPacket( + id = id, + selectedSpellItemId = selectedWidgetItemId, + selectedSpellChildIndex = selectedWidgetSlot, + selectedSpellWidget = selectedWidget, + shiftPressed = false + ) + MenuAction.PLAYER_FIRST_OPTION -> createPlayerAction1Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_SECOND_OPTION -> createPlayerAction2Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_THIRD_OPTION -> createPlayerAction3Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_FOURTH_OPTION -> createPlayerAction4Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_FIFTH_OPTION -> createPlayerAction5Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_SIXTH_OPTION -> createPlayerAction6Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_SEVENTH_OPTION -> createPlayerAction7Packet(id = id, shiftPressed = false) + MenuAction.PLAYER_EIGTH_OPTION -> createPlayerAction8Packet(id = id, shiftPressed = false) +/* MenuAction.ITEM_USE_ON_GROUND_ITEM, MenuAction.WIDGET_TARGET_ON_GROUND_ITEM -> createItemWidgetOnGroundItemPacket( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + selectedSpellChildIndex = selectedWidgetSlot, + selectedWidgetItemId = selectedWidgetItemId, + selectedSpellWidget = selectedWidget, + shiftPressed = false + )*/ + MenuAction.GROUND_ITEM_FIRST_OPTION -> createGroundItemAction1Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GROUND_ITEM_SECOND_OPTION -> createGroundItemAction2Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GROUND_ITEM_THIRD_OPTION -> createGroundItemAction3Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GROUND_ITEM_FOURTH_OPTION -> createGroundItemAction4Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.GROUND_ITEM_FIFTH_OPTION -> createGroundItemAction5Packet( + id = id, + worldX = param0 + client.baseX, + worldY = param1 + client.baseY, + shiftPressed = false + ) + MenuAction.WIDGET_USE_ON_ITEM, MenuAction.ITEM_USE_ON_ITEM, MenuAction.WIDGET_TARGET_ON_WIDGET -> { + val targetParent: Widget? = Widgets.fromId(param1) + val targetChild: Widget? = targetParent?.getChild(param0) + var childItemId = -1 + if (targetChild != null) { + childItemId = targetChild.itemId + } + val source: Widget = client.getWidget(selectedWidget)!! + if (source.type == WidgetType.GRAPHIC) { + selectedWidgetSlot = -1 + selectedWidgetItemId = -1 + } + ClientPackets.createItemWidgetOnItemWidgetPacket( + widgetID = selectedWidget, + slot = selectedWidgetSlot, + selectedSpellItemId = selectedWidgetItemId, + id = param1, + itemId = param0, + selectedSpellChildIndex = childItemId + ) + } + MenuAction.WIDGET_FIRST_OPTION -> ClientPackets.createWidgetAction1Packet( + param1 = param1, + itemId = -1, + param0 = param0 + ) + MenuAction.WIDGET_SECOND_OPTION -> ClientPackets.createWidgetAction2Packet( + param1 = param1, + itemId = -1, + param0 = param0 + ) + MenuAction.WIDGET_THIRD_OPTION -> ClientPackets.createWidgetAction3Packet( + param1 = param1, + itemId = -1, + param0 = param0 + ) + MenuAction.WIDGET_FOURTH_OPTION -> ClientPackets.createWidgetAction4Packet( + param1 = param1, + itemId = -1, + param0 = param0 + ) + MenuAction.WIDGET_FIFTH_OPTION -> ClientPackets.createWidgetAction5Packet( + param1 = param1, + itemId = -1, + param0 = param0 + ) + MenuAction.WIDGET_TYPE_1 -> WidgetPackets.createType1Action(param1) + //MenuAction.WIDGET_CONTINUE -> WidgetPackets.createContinuePacket(parentId = param1, slotId = param0) + MenuAction.WALK -> { + + client.destinationX = param0 + client.destinationY = param1 + ClientPackets.createMovementPacket( + five = 5, + x = param0 + client.baseX, + y = param1 + client.baseY, + shiftPressed = false + ) + } + MenuAction.CC_OP_LOW_PRIORITY, + MenuAction.CC_OP -> { + + val widget = Widgets.fromId(param1) + var child: Widget? = null + if (param0 != -1) + child = widget?.getChild(param0) + createDefaultAction(id, param1, child?.itemId ?: -1, param0) + + } + else -> null + } + result?.let { + Main.logger.warn("--Auto-Packet-- ${opcode.name} id:$id :param0:$param0 param1: $param1") + return it + } + throw InteractionException("Couldn't parse packet from opcode: $opcode") + + + + +} +fun createDefaultAction(type: Int, widgetPackedId: Int, itemId: Int, itemSlot: Int): PacketBufferNode { + return when(type){ + 1 -> ClientPackets.createWidgetAction1Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 2 -> ClientPackets.createWidgetAction2Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 3 -> ClientPackets.createWidgetAction3Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 4 -> ClientPackets.createWidgetAction4Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 5 -> ClientPackets.createWidgetAction5Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 6 -> ClientPackets.createWidgetAction6Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 7 -> ClientPackets.createWidgetAction7Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 8 -> ClientPackets.createWidgetAction8Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 9 -> ClientPackets.createWidgetAction9Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + 10 -> ClientPackets.createWidgetAction10Packet( + param1 = widgetPackedId, + itemId = itemId, + param0 = itemSlot + ) + + else -> { + Main.logger.warn("Couldn't parse packet from type: $type") + throw InteractionException("Couldn't parse packet from type: $type") + } + } +} \ No newline at end of file diff --git a/client/src/main/java/meteor/api/ClientPackets.kt b/client/src/main/java/meteor/api/ClientPackets.kt index 2c52cdd3c..dea61c9f0 100644 --- a/client/src/main/java/meteor/api/ClientPackets.kt +++ b/client/src/main/java/meteor/api/ClientPackets.kt @@ -1,804 +1,484 @@ -@file:Suppress("DEPRECATION") package meteor.api import ClientPacket -import dev.hoot.api.InteractionException -import dev.hoot.api.events.AutomatedMenu -import dev.hoot.api.packets.WidgetPackets -import dev.hoot.api.widgets.Widgets -import meteor.Main -import meteor.plugins.meteor.AutoInteractOverlay -import meteor.rs.ClientThread.invoke -import net.runelite.api.MenuAction import net.runelite.api.packets.PacketBufferNode -import net.runelite.api.widgets.Widget -import net.runelite.api.widgets.WidgetType -import java.awt.Point - -/** - * an object for calling various Client Packets - * @author Null - */ -object ClientPackets { - // OPOBJ1 - // param0: worldX - // param1: worldY - fun createGroundItemAction1Packet(groundItemId: Int, worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON1) - bufferNode.packetBuffer.`writeShortAddLE$api`(groundItemId) - bufferNode.packetBuffer.`writeShort$api`(worldY) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortLE$api`(worldX) - return bufferNode - } - - // OPOBJ2 - // param0: worldX - // param1: worldY - fun createGroundItemAction2Packet(groundItemId: Int, worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON2) - bufferNode.packetBuffer.`writeShortAdd$api`(worldY) - bufferNode.packetBuffer.`writeShortAddLE$api`(groundItemId) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldX) - return bufferNode - } - - // OPOBJ3 - // param0: worldX - // param1: worldY - fun createGroundItemAction3Packet(groundItemId: Int, worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON3) - bufferNode.packetBuffer.`writeShortAdd$api`(worldX) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAddLE$api`(groundItemId) - bufferNode.packetBuffer.`writeShortAdd$api`(worldY) - return bufferNode - } - - // OPOBJ4 - // param0: worldX - // param1: worldY - fun createGroundItemAction4Packet(groundItemId: Int, worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ4) - bufferNode.packetBuffer.`writeShortAdd$api`(worldX) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) - bufferNode.packetBuffer.`writeShortLE$api`(groundItemId) - return bufferNode - } - - // OPOBJ5 - // param0: worldX - // param1: worldY - fun createGroundItemAction5Packet(groundItemId: Int, worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ5) - bufferNode.packetBuffer.`writeShortLE$api`(worldY) - bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShort$api`(worldX) - bufferNode.packetBuffer.`writeShortLE$api`(groundItemId) - return bufferNode - } - - // OPLOC1 - // param0: worldX - // param1: worldY - fun createObjectAction1Packet( - objectID: Int, - worldX: Int, - worldY: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOC1) - bufferNode.packetBuffer.`writeShort$api`(worldX) - bufferNode.packetBuffer.`writeIntME$api`(worldY) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAddLE$api`(objectID) - return bufferNode - } - - // OPLOC2 - // param0: worldX - // param1: worldY - fun createObjectAction2Packet( - objectID: Int, - worldX: Int, - worldY: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOC2) - bufferNode.packetBuffer.`writeShort$api`(worldX) - bufferNode.packetBuffer.`writeShort$api`(worldY) - bufferNode.packetBuffer.`writeIntME$api`(objectID) - bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - // OPLOC3 - // param0: worldX - // param1: worldY - fun createObjectAction3Packet( - objectID: Int, - worldX: Int, - worldY: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOC3) - bufferNode.packetBuffer.`writeShort$api`(objectID) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldX) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShort$api`(worldY) - return bufferNode - } - - // OPLOC4 - // param0: worldX - // param1: worldY - fun createObjectAction4Packet( - objectID: Int, - worldX: Int, - worldY: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOC4) - bufferNode.packetBuffer.`writeShortAdd$api`(objectID) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAdd$api`(worldY) - bufferNode.packetBuffer.`writeShortLE$api`(worldX) - return bufferNode - } - - // OPLOC5 - // param0: worldX - // param1: worldY - fun createObjectAction5Packet( - objectID: Int, - worldX: Int, - worldY: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOC5) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) - bufferNode.packetBuffer.`writeIntME$api`(worldX) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAdd$api`(objectID) - return bufferNode - } - - // OPLOCT - // param0: worldX - // param1: worldY - fun createItemWidgetOnGameObjectPacket( - objectID: Int, - worldX: Int, - worldY: Int, - itemSlot: Int, - itemId: Int, - itemWidgetID: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOCT) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortLE$api`(objectID) - bufferNode.packetBuffer.`writeShortLE$api`(itemId) - bufferNode.packetBuffer.`writeShortLE$api`(worldX) - bufferNode.packetBuffer.`writeShortAddLE$api`(itemSlot) - bufferNode.packetBuffer.`writeIntIME$api`(itemWidgetID) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) - return bufferNode - } - - //OPNPCT - fun createItemWidgetOnNPCPacket( - npcIdx: Int, - itemWidgetID: Int, - itemID: Int, - itemSlot: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPCT) - bufferNode.packetBuffer.`writeIntIME$api`(itemWidgetID) - bufferNode.packetBuffer.`writeShortLE$api`(itemSlot) - bufferNode.packetBuffer.`writeShortLE$api`(itemID) - bufferNode.packetBuffer.`writeShortLE$api`(npcIdx) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - //OPNPC1 - fun createNPCAction1Packet(npcIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPC1) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAdd$api`(npcIdx) - return bufferNode - } - - //OPNPC2 - fun createNPCAction2Packet(npcIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPC2) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeIntME$api`(npcIdx) - return bufferNode - } - - //OPNPC3 - fun createNPCAction3Packet(npcIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPC3) - bufferNode.packetBuffer.`writeShort$api`(npcIdx) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - //OPNPC4 - fun createNPCAction4Packet(npcIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPC4) - bufferNode.packetBuffer.`writeByteAdd$api`(npcIdx) - bufferNode.packetBuffer.`writeShort$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - //OPNPC5 - fun createNPCAction5Packet(npcIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPNPC5) - bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeIntME$api`(npcIdx) - return bufferNode - } - - //OPPLAYERT - fun createItemWidgetOnPlayerPacket( - playerIdx: Int, - itemId: Int, - itemSlot: Int, - itemWidgetID: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYERT) - bufferNode.packetBuffer.`writeShortAdd$api`(playerIdx) - bufferNode.packetBuffer.`writeIntME$api`(itemWidgetID) - bufferNode.packetBuffer.`writeIntIME$api`(itemSlot) - bufferNode.packetBuffer.`writeIntME$api`(itemId) - bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER1 - fun createPlayerAction1Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER1) - bufferNode.packetBuffer.`writeShortAddLE$api`(playerIdx) - bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER2 - fun createPlayerAction2Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER2) - bufferNode.packetBuffer.`writeShortAddLE$api`(playerIdx) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER3 - fun createPlayerAction3Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER3) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShort$api`(playerIdx) - return bufferNode - } - - ///OPPLAYER4 - fun createPlayerAction4Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER4) - bufferNode.packetBuffer.`writeShortAdd$api`(playerIdx) - bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER5 - fun createPlayerAction5Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER5) - bufferNode.packetBuffer.`writeShortAdd$api`(playerIdx) - bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER6 - fun createPlayerAction6Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER6) - bufferNode.packetBuffer.`writeShortAdd$api`(playerIdx) - bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER7 - fun createPlayerAction7Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER7) - bufferNode.packetBuffer.`writeIntME$api`(playerIdx) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - ///OPPLAYER8 - fun createPlayerAction8Packet(playerIdx: Int, shiftPressed: Boolean): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER8) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - bufferNode.packetBuffer.`writeShortAdd$api`(playerIdx) - return bufferNode - } - - //OPLOCT - fun createItemWidgetOnGroundItemPacket( - groundItemID: Int, - worldX: Int, - worldY: Int, - itemSlot: Int, - itemID: Int, - itemWidgetID: Int, - shiftPressed: Boolean - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.OPLOCT) - bufferNode.packetBuffer.`writeIntIME$api`(itemWidgetID) - bufferNode.packetBuffer.`writeShort$api`(groundItemID) - bufferNode.packetBuffer.`writeShort$api`(itemID) - bufferNode.packetBuffer.`writeShort$api`(worldY) - bufferNode.packetBuffer.`writeShortAdd$api`(worldX) - bufferNode.packetBuffer.`writeShortLE$api`(itemSlot) - bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - //IF_BUTTONT - // param0: destinationSlot - // param1: destinationWidgetId - fun createItemWidgetOnItemWidgetPacket( - sourceWidgetId: Int, - sourceSlot: Int, - sourceItemId: Int, - destinationWidgetId: Int, - destinationSlot: Int, - destinationItemId: Int - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTONT) - bufferNode.packetBuffer.`writeShort$api`(destinationItemId) - bufferNode.packetBuffer.`writeIntME$api`(sourceWidgetId) - bufferNode.packetBuffer.`writeShortLE$api`(destinationSlot) - bufferNode.packetBuffer.`writeShortAddLE$api`(sourceSlot) - bufferNode.packetBuffer.`writeIntIME$api`(destinationWidgetId) - bufferNode.packetBuffer.`writeShortAdd$api`(sourceItemId) - return bufferNode - } - - // IF_BUTTON1 - // param0: childId - // param1: widgetId - fun createWidgetAction1Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON1) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON2 - // param0: childId - // param1: widgetId - fun createWidgetAction2Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON2) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON3 - // param0: childId - // param1: widgetId - fun createWidgetAction3Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON3) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON4 - // param0: childId - // param1: widgetId - fun createWidgetAction4Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON4) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON5 - // param0: childId - // param1: widgetId - fun createWidgetAction5Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON5) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON6 - // param0: childId - // param1: widgetId - fun createWidgetAction6Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON6) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON7 - // param0: childId - // param1: widgetId - fun createWidgetAction7Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON7) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON8 - // param0: childId - // param1: widgetId - fun createWidgetAction8Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON8) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON9 - // param0: childId - // param1: widgetId - fun createWidgetAction9Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON9) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // IF_BUTTON10 - // param0: childId - // param1: widgetId - fun createWidgetAction10Packet( - widgetId: Int, - itemId: Int, - childId: Int, - ): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON10) - bufferNode.packetBuffer.`writeInt$api`(widgetId) - bufferNode.packetBuffer.`writeShort$api`(childId) - bufferNode.packetBuffer.`writeShort$api`(itemId) - return bufferNode - } - - // CLICK - fun createClickPacket(mouseInfo: Int, x: Int, y: Int): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.EVENT_MOUSE_CLICK) - bufferNode.packetBuffer.`writeShort$api`(mouseInfo) - bufferNode.packetBuffer.`writeShort$api`(y) - bufferNode.packetBuffer.`writeShort$api`(x) - return bufferNode - } - - // WALK - fun createMovementPacket(worldX: Int, worldY: Int, shiftPressed: Boolean): PacketBufferNode { - - val bufferNode = preparePacketBuffer(ClientPacket.MOVE_GAMECLICK) - bufferNode.packetBuffer.`writeByte$api`(5) - bufferNode.packetBuffer.`writeShortAddLE$api`(worldX) - bufferNode.packetBuffer.`writeShortAdd$api`(worldY) - bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) - return bufferNode - } - - // CONTINUE - fun createContinuePacket(widgetId: Int, childId: Int): PacketBufferNode { - val bufferNode = preparePacketBuffer(ClientPacket.CONTINUE) - bufferNode.packetBuffer.`writeIntME$api`(widgetId) - bufferNode.packetBuffer.`writeShortLE$api`(childId) - return bufferNode - } - - /** - * creates a new packetBuffer with the provided [opcode] and [size] - */ - fun preparePacketBuffer(opcode: Int, size: Int): PacketBufferNode { - - val clientPacket = Main.client.createClientPacket(opcode, size) - return Main.client.preparePacket( - clientPacket, - Main.client.packetWriter.isaacCipher - ) - } - fun preparePacketBuffer(clientPacket: ClientPacket): PacketBufferNode { - val clientPacket = Main.client.createClientPacket(clientPacket.id, clientPacket.length) - return Main.client.preparePacket( - clientPacket, - Main.client.packetWriter.isaacCipher - ) - } - fun queueClickPacket(clickPoint: Point) { - AutoInteractOverlay.interactPoint = clickPoint - queueClickPacket(clickPoint.x, clickPoint.y) - } - - fun queueClickPacket(mouseInfo: Int, x: Int, y: Int) { - invoke { createClickPacket(mouseInfo, x, y).send() } - } - - fun queueClickPacket(x: Int, y: Int) { - Main.client.mouseLastPressedMillis = System.currentTimeMillis() - var mousePressedTime = - Main.client.mouseLastPressedMillis - Main.client.clientMouseLastPressedMillis - if (mousePressedTime < 0) { - mousePressedTime = 0 - } - if (mousePressedTime > 32767) { - mousePressedTime = 32767 - } - Main.client.clientMouseLastPressedMillis = Main.client.mouseLastPressedMillis - val mouseInfo = (mousePressedTime shl 1) + 1 - queueClickPacket(mouseInfo.toInt(), x, y) - Main.logger.error("--Click-Packet-- $x.$y") - } - - fun createClickPacket(x: Int, y: Int, override: Boolean = false): PacketBufferNode { - Main.client.mouseLastPressedMillis = System.currentTimeMillis() - var mousePressedTime = - Main.client.mouseLastPressedMillis - Main.client.clientMouseLastPressedMillis - if (mousePressedTime < 0) { - mousePressedTime = 0 - } - if (mousePressedTime > 32767) { - mousePressedTime = 32767 - } - Main.client.clientMouseLastPressedMillis = Main.client.mouseLastPressedMillis - val mouseInfo = (mousePressedTime shl 1) + 1 - return createClickPacket(mouseInfo.toInt(), x, y) - } - - /** - * attempts to create a client packet from the provided [menu] - * @param menu the menu we extract the information that we need to create the packet - */ - fun createClientPacket(menu: AutomatedMenu): PacketBufferNode? { - val opcode = menu.opcode - val client = Main.client - val id = menu.identifier - val param0 = menu.param0 - val param1 = menu.param1 - var selectedWidgetItemId = client.selectedSpellItemId - var selectedWidgetSlot = client.selectedSpellChildIndex - // Yes, keeping both in case of a future fix in naming - val selectedWidget = client.selectedSpellWidget - var result : PacketBufferNode? = null - result = when (opcode) { - MenuAction.ITEM_USE_ON_GAME_OBJECT, MenuAction.WIDGET_TARGET_ON_GAME_OBJECT -> createItemWidgetOnGameObjectPacket( - id, - param0 + client.baseX, - param1 + client.baseY, - selectedWidgetSlot, - selectedWidgetItemId, - selectedWidget, - false - ) - MenuAction.GAME_OBJECT_FIRST_OPTION -> createObjectAction1Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GAME_OBJECT_SECOND_OPTION -> createObjectAction2Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GAME_OBJECT_THIRD_OPTION -> createObjectAction3Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GAME_OBJECT_FOURTH_OPTION -> createObjectAction4Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GAME_OBJECT_FIFTH_OPTION -> createObjectAction5Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.ITEM_USE_ON_NPC, MenuAction.WIDGET_TARGET_ON_NPC -> createItemWidgetOnNPCPacket( - id, - selectedWidget, - selectedWidgetItemId, - selectedWidgetSlot, - false) - MenuAction.NPC_FIRST_OPTION -> createNPCAction1Packet(id, false) - MenuAction.NPC_SECOND_OPTION -> createNPCAction2Packet(id, false) - MenuAction.NPC_THIRD_OPTION -> createNPCAction3Packet(id, false) - MenuAction.NPC_FOURTH_OPTION -> createNPCAction4Packet(id, false) - MenuAction.NPC_FIFTH_OPTION -> createNPCAction5Packet(id, false) - MenuAction.ITEM_USE_ON_PLAYER, MenuAction.WIDGET_TARGET_ON_PLAYER -> createItemWidgetOnPlayerPacket( - id, - selectedWidgetItemId, - selectedWidgetSlot, - selectedWidget, - false) - MenuAction.PLAYER_FIRST_OPTION -> createPlayerAction1Packet(id, false) - MenuAction.PLAYER_SECOND_OPTION -> createPlayerAction2Packet(id, false) - MenuAction.PLAYER_THIRD_OPTION -> createPlayerAction3Packet(id, false) - MenuAction.PLAYER_FOURTH_OPTION -> createPlayerAction4Packet(id, false) - MenuAction.PLAYER_FIFTH_OPTION -> createPlayerAction5Packet(id, false) - MenuAction.PLAYER_SIXTH_OPTION -> createPlayerAction6Packet(id, false) - MenuAction.PLAYER_SEVENTH_OPTION -> createPlayerAction7Packet(id, false) - MenuAction.PLAYER_EIGTH_OPTION -> createPlayerAction8Packet(id, false) - MenuAction.ITEM_USE_ON_GROUND_ITEM, MenuAction.WIDGET_TARGET_ON_GROUND_ITEM -> createItemWidgetOnGroundItemPacket( - id, - param0 + client.baseX, - param1 + client.baseY, - selectedWidgetSlot, - selectedWidgetItemId, - selectedWidget, - false - ) - MenuAction.GROUND_ITEM_FIRST_OPTION -> createGroundItemAction1Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GROUND_ITEM_SECOND_OPTION -> createGroundItemAction2Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GROUND_ITEM_THIRD_OPTION -> createGroundItemAction3Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GROUND_ITEM_FOURTH_OPTION -> createGroundItemAction4Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.GROUND_ITEM_FIFTH_OPTION -> createGroundItemAction5Packet( - id, - param0 + client.baseX, - param1 + client.baseY, - false - ) - MenuAction.WIDGET_USE_ON_ITEM, MenuAction.ITEM_USE_ON_ITEM, MenuAction.WIDGET_TARGET_ON_WIDGET -> { - val targetParent: Widget? = Widgets.fromId(param1) - val targetChild: Widget? = targetParent?.getChild(param0) - var childItemId = -1 - if (targetChild != null) { - childItemId = targetChild.itemId - } - val source: Widget = client.getWidget(selectedWidget)!! - if (source.type == WidgetType.GRAPHIC) { - selectedWidgetSlot = -1 - selectedWidgetItemId = -1 - } - createItemWidgetOnItemWidgetPacket( - selectedWidget, - selectedWidgetSlot, - selectedWidgetItemId, - param1, - param0, - childItemId) - } - MenuAction.WIDGET_FIRST_OPTION -> createWidgetAction1Packet( - param1, - -1, - param0 - ) - MenuAction.WIDGET_SECOND_OPTION -> createWidgetAction2Packet( - param1, - -1, - param0 - ) - MenuAction.WIDGET_THIRD_OPTION -> createWidgetAction3Packet( - param1, - -1, - param0 - ) - MenuAction.WIDGET_FOURTH_OPTION -> createWidgetAction4Packet( - param1, - -1, - param0 - ) - MenuAction.WIDGET_FIFTH_OPTION -> createWidgetAction5Packet( - param1, - -1, - param0 - ) - MenuAction.WIDGET_TYPE_1 -> WidgetPackets.createType1Action(param1) - MenuAction.WIDGET_CONTINUE -> WidgetPackets.createContinuePacket(param1, param0) - MenuAction.WALK -> { - client.destinationX = param0 - client.destinationY = param1 - createMovementPacket( - param0 + client.baseX, - param1 + client.baseY, - false - ) - } - MenuAction.CC_OP_LOW_PRIORITY, - MenuAction.CC_OP -> { - val widget = Widgets.fromId(param1) ?: null - var child: Widget? = null - if (param0 != -1) - child = widget!!.getChild(param0) - - if (child == null) - WidgetPackets.createDefaultAction(id, param1, -1, param0) - else - WidgetPackets.createDefaultAction(id, param1, child.itemId, param0) - } - else -> null - } - result?.let { - val packetType = opcode - Main.logger.warn("--Auto-Packet-- ${packetType.name} id:$id :param0:$param0 param1: $param1") - return it - } - throw InteractionException("Couldn't parse packet from opcode: $opcode") - } -} \ No newline at end of file + +object ClientPackets { +// OPNPC2 +// Size: 3 +// Deobfuscated Name: OPNPC2 +fun createNPCAction2Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPC2) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortLE$api`(id) + return bufferNode +} + + +// OPNPC3 +// Size: 3 +// Deobfuscated Name: OPNPC3 +fun createNPCAction3Packet(id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPC3) + bufferNode.packetBuffer.`writeShortAddLE$api`(id) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// IF_BUTTON10 +// Size: 8 +// Deobfuscated Name: IF_BUTTON10 +fun createWidgetAction10Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON10) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPPLAYERT +// Size: 11 +// Deobfuscated Name: OPPLAYERT +fun createItemWidgetOnPlayerPacket(shiftPressed: Boolean, selectedSpellItemId: Int, id: Int, selectedSpellChildIndex: Int, selectedSpellWidget: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYERT) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAddLE$api`(selectedSpellItemId) + bufferNode.packetBuffer.`writeShortLE$api`(id) + bufferNode.packetBuffer.`writeShortAdd$api`(selectedSpellChildIndex) + bufferNode.packetBuffer.`writeIntME$api`(selectedSpellWidget) + return bufferNode +} + + +// MOVE_GAMECLICK +// Size: -1 +// Deobfuscated Name: MOVE_GAMECLICK +fun createMovementPacket(five: Int, y: Int, x: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.MOVE_GAMECLICK) + bufferNode.packetBuffer.`writeByte$api`(five) + bufferNode.packetBuffer.`writeShort$api`(x) + bufferNode.packetBuffer.`writeShortAdd$api`(y) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPPLAYER1 +// Size: 3 +// Deobfuscated Name: OPPLAYER1 +fun createPlayerAction1Packet(id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER1) + bufferNode.packetBuffer.`writeShort$api`(id) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// IF_BUTTONT +// Size: 16 +// Deobfuscated Name: IF_BUTTONT +fun createItemWidgetOnItemWidgetPacket(id: Int, slot: Int, selectedSpellChildIndex: Int, widgetID: Int, itemId: Int, selectedSpellItemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTONT) + bufferNode.packetBuffer.`writeIntIME$api`(id) + bufferNode.packetBuffer.`writeShortAdd$api`(slot) + bufferNode.packetBuffer.`writeShortAdd$api`(selectedSpellChildIndex) + bufferNode.packetBuffer.`writeIntME$api`(widgetID) + bufferNode.packetBuffer.`writeShortAdd$api`(itemId) + bufferNode.packetBuffer.`writeShortAddLE$api`(selectedSpellItemId) + return bufferNode +} + + +// OPNPC1 +// Size: 3 +// Deobfuscated Name: OPNPC1 +fun createNPCAction1Packet(id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPC1) + bufferNode.packetBuffer.`writeShort$api`(id) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPNPCT +// Size: 11 +// Deobfuscated Name: OPNPCT +fun createItemWidgetOnNPCPacket(selectedSpellWidget: Int, id: Int, shiftPressed: Boolean, selectedSpellChildIndex: Int, selectedSpellItemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPCT) + bufferNode.packetBuffer.`writeInt$api`(selectedSpellWidget) + bufferNode.packetBuffer.`writeShortLE$api`(id) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(selectedSpellChildIndex) + bufferNode.packetBuffer.`writeShortAdd$api`(selectedSpellItemId) + return bufferNode +} + + +// IF_BUTTON2 +// Size: 8 +// Deobfuscated Name: IF_BUTTON2 +fun createWidgetAction2Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON2) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// IF_BUTTON4 +// Size: 8 +// Deobfuscated Name: IF_BUTTON4 +fun createWidgetAction4Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON4) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// IF_BUTTON5 +// Size: 8 +// Deobfuscated Name: IF_BUTTON5 +fun createWidgetAction5Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON5) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// IF_BUTTON9 +// Size: 8 +// Deobfuscated Name: IF_BUTTON9 +fun createWidgetAction9Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON9) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPOBJ2 +// Size: 7 +// Deobfuscated Name: OPOBJ2 +fun createGroundItemAction2Packet(shiftPressed: Boolean, worldX: Int, worldY: Int, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ2) + bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) + bufferNode.packetBuffer.`writeShortLE$api`(id) + return bufferNode +} + + +// OPPLAYER2 +// Size: 3 +// Deobfuscated Name: OPPLAYER2 +fun createPlayerAction2Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER2) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAdd$api`(id) + return bufferNode +} + + +// IF_BUTTON8 +// Size: 8 +// Deobfuscated Name: IF_BUTTON8 +fun createWidgetAction8Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON8) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPNPC5 +// Size: 3 +// Deobfuscated Name: OPNPC5 +fun createNPCAction5Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPC5) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// OPOBJ3 +// Size: 7 +// Deobfuscated Name: OPOBJ3 +fun createGroundItemAction3Packet(worldX: Int, worldY: Int, shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ3) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeShort$api`(worldY) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// IF_BUTTON3 +// Size: 8 +// Deobfuscated Name: IF_BUTTON3 +fun createWidgetAction3Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON3) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPPLAYER5 +// Size: 3 +// Deobfuscated Name: OPPLAYER5 +fun createPlayerAction5Packet(id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER5) + bufferNode.packetBuffer.`writeShortAddLE$api`(id) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPOBJ4 +// Size: 7 +// Deobfuscated Name: OPOBJ4 +fun createGroundItemAction4Packet(worldY: Int, id: Int, shiftPressed: Boolean, worldX: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ4) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) + bufferNode.packetBuffer.`writeShort$api`(id) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldX) + return bufferNode +} + + +// EVENT_MOUSE_CLICK +// Size: 6 +// Deobfuscated Name: EVENT_MOUSE_CLICK +fun createClickPacket(mouseData: Int, y: Int, x: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.EVENT_MOUSE_CLICK) + bufferNode.packetBuffer.`writeShort$api`(mouseData) + bufferNode.packetBuffer.`writeShort$api`(x) + bufferNode.packetBuffer.`writeShort$api`(y) + return bufferNode +} + + +// OPLOC3 +// Size: 7 +// Deobfuscated Name: OPLOC3 +fun createObjectAction3Packet(shiftPressed: Boolean, worldY: Int, worldX: Int, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOC3) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeShortAdd$api`(id) + return bufferNode +} + + +// OPPLAYER4 +// Size: 3 +// Deobfuscated Name: OPPLAYER4 +fun createPlayerAction4Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER4) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAddLE$api`(id) + return bufferNode +} + + +// IF_BUTTON7 +// Size: 8 +// Deobfuscated Name: IF_BUTTON7 +fun createWidgetAction7Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON7) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPOBJ1 +// Size: 7 +// Deobfuscated Name: OPOBJ1 +fun createGroundItemAction1Packet(worldY: Int, worldX: Int, id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ1) + bufferNode.packetBuffer.`writeShort$api`(worldY) + bufferNode.packetBuffer.`writeShort$api`(worldX) + bufferNode.packetBuffer.`writeShortLE$api`(id) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPPLAYER7 +// Size: 3 +// Deobfuscated Name: OPPLAYER7 +fun createPlayerAction7Packet(id: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER7) + bufferNode.packetBuffer.`writeShortLE$api`(id) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPNPC4 +// Size: 3 +// Deobfuscated Name: OPNPC4 +fun createNPCAction4Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPNPC4) + bufferNode.packetBuffer.`writeByteNeg$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// OPLOCT +// Size: 15 +// Deobfuscated Name: OPLOCT +fun createItemWidgetOnGameObjectPacket(id: Int, selectedSpellItemId: Int, selectedSpellChildIndex: Int, worldY: Int, worldX: Int, selectedSpellWidget: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOCT) + bufferNode.packetBuffer.`writeShortAdd$api`(id) + bufferNode.packetBuffer.`writeShortAddLE$api`(selectedSpellItemId) + bufferNode.packetBuffer.`writeShort$api`(selectedSpellChildIndex) + bufferNode.packetBuffer.`writeShortLE$api`(worldY) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeIntLE$api`(selectedSpellWidget) + bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + + +// OPLOC1 +// Size: 7 +// Deobfuscated Name: OPLOC1 +fun createObjectAction1Packet(shiftPressed: Boolean, worldY: Int, worldX: Int, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOC1) + bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortLE$api`(worldY) + bufferNode.packetBuffer.`writeShort$api`(worldX) + bufferNode.packetBuffer.`writeShortAdd$api`(id) + return bufferNode +} + + +// OPPLAYER6 +// Size: 3 +// Deobfuscated Name: OPPLAYER6 +fun createPlayerAction6Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER6) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// IF_BUTTON1 +// Size: 8 +// Deobfuscated Name: IF_BUTTON1 +fun createWidgetAction1Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON1) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// IF_BUTTON6 +// Size: 8 +// Deobfuscated Name: IF_BUTTON6 +fun createWidgetAction6Packet(param1: Int, param0: Int, itemId: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.IF_BUTTON6) + bufferNode.packetBuffer.`writeInt$api`(param1) + bufferNode.packetBuffer.`writeShort$api`(param0) + bufferNode.packetBuffer.`writeShort$api`(itemId) + return bufferNode +} + + +// OPLOC2 +// Size: 7 +// Deobfuscated Name: OPLOC2 +fun createObjectAction2Packet(worldY: Int, worldX: Int, shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOC2) + bufferNode.packetBuffer.`writeShort$api`(worldY) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// OPPLAYER3 +// Size: 3 +// Deobfuscated Name: OPPLAYER3 +fun createPlayerAction3Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER3) + bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShort$api`(id) + return bufferNode +} + + +// OPLOC5 +// Size: 7 +// Deobfuscated Name: OPLOC5 +fun createObjectAction5Packet(worldX: Int, worldY: Int, shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOC5) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + bufferNode.packetBuffer.`writeShortAdd$api`(worldY) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAdd$api`(id) + return bufferNode +} + + +// OPLOC4 +// Size: 7 +// Deobfuscated Name: OPLOC4 +fun createObjectAction4Packet(shiftPressed: Boolean, worldY: Int, id: Int, worldX: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPLOC4) + bufferNode.packetBuffer.`writeByteAdd$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) + bufferNode.packetBuffer.`writeShort$api`(id) + bufferNode.packetBuffer.`writeShortAdd$api`(worldX) + return bufferNode +} + + +// OPPLAYER8 +// Size: 3 +// Deobfuscated Name: OPPLAYER8 +fun createPlayerAction8Packet(shiftPressed: Boolean, id: Int): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPPLAYER8) + bufferNode.packetBuffer.`writeByte$api`(if (shiftPressed) 1 else 0) + bufferNode.packetBuffer.`writeShortLE$api`(id) + return bufferNode +} + + +// OPOBJ5 +// Size: 7 +// Deobfuscated Name: OPOBJ5 +fun createGroundItemAction5Packet(worldY: Int, id: Int, worldX: Int, shiftPressed: Boolean): PacketBufferNode { + val bufferNode = preparePacketBuffer(ClientPacket.OPOBJ5) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldY) + bufferNode.packetBuffer.`writeShortAddLE$api`(id) + bufferNode.packetBuffer.`writeShortAddLE$api`(worldX) + bufferNode.packetBuffer.`writeByteSub$api`(if (shiftPressed) 1 else 0) + return bufferNode +} + +} diff --git a/client/src/main/java/meteor/api/Items.kt b/client/src/main/java/meteor/api/Items.kt index 9f62cf64b..9a8ad0b90 100644 --- a/client/src/main/java/meteor/api/Items.kt +++ b/client/src/main/java/meteor/api/Items.kt @@ -429,7 +429,7 @@ object Items { } else { val menu = item.getMenu(withdrawOption.menuIndex + 1) menu?.let { - ClientPackets.createClientPacket(it)!!.send() + createClientPacket(it)!!.send() if (withdrawOption == Bank.WithdrawOption.X) { Dialog.enterInput(amount) Time.sleepUntil({ !Dialog.isOpen() }, 1200) diff --git a/client/src/main/java/meteor/launcher/CreateLauncherUpdate.kt b/client/src/main/java/meteor/launcher/CreateLauncherUpdate.kt index 47a39ea8d..d64294aed 100644 --- a/client/src/main/java/meteor/launcher/CreateLauncherUpdate.kt +++ b/client/src/main/java/meteor/launcher/CreateLauncherUpdate.kt @@ -9,7 +9,7 @@ import java.util.zip.CRC32 import kotlin.math.ceil object CreateLauncherUpdate { - private val releaseVersion = "292" + private val releaseVersion = "299" private val runtimeVersion = "17.0.2" private val release = LauncherUpdate() @@ -27,14 +27,16 @@ object CreateLauncherUpdate { releaseDir.deleteRecursively() releaseDir.mkdir() - if (!clientBat.exists()) clientBat.createNewFile() + clientBat.createNewFile() + if(clientBat.exists()) { clientBat.writeText("\"%USERPROFILE%\\.meteor\\launcher\\client.exe\"\n" + "pause") - crawlDirectory(java.io.File("./client/build/compose/binaries/main/app/client/")) + crawlDirectory(java.io.File("./client/build/compose/binaries/main/app/client/")) - java.io.File("./client/build/release/release.json").writeText(gson.toJson(release)) + java.io.File("./client/build/release/release.json").writeText(gson.toJson(release)) - java.io.File("./client/build/release/runtime.version").writeText(runtimeVersion) + java.io.File("./client/build/release/runtime.version").writeText(runtimeVersion) + } } diff --git a/client/src/main/java/meteor/plugins/alchemicalhydra/AlchemicalHydraPlugin.kt b/client/src/main/java/meteor/plugins/alchemicalhydra/AlchemicalHydraPlugin.kt index 17d54538b..096cab9e9 100644 --- a/client/src/main/java/meteor/plugins/alchemicalhydra/AlchemicalHydraPlugin.kt +++ b/client/src/main/java/meteor/plugins/alchemicalhydra/AlchemicalHydraPlugin.kt @@ -2,17 +2,18 @@ package meteor.plugins.alchemicalhydra import dev.hoot.api.events.AutomatedMenu import eventbus.events.* -import meteor.api.ClientPackets import meteor.api.NPCs +import meteor.api.createClientPacket +import meteor.api.queueClickPacket import meteor.game.NpcUtil import meteor.game.SpriteManager +import meteor.outline.ModelOutlineRenderer import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import meteor.rs.ClientThread import net.runelite.api.* import net.runelite.api.coords.LocalPoint import net.runelite.api.coords.WorldPoint -import meteor.outline.ModelOutlineRenderer import java.util.* @PluginDescriptor( @@ -331,8 +332,8 @@ class AlchemicalHydraPlugin : Plugin() { if (client.getBoostedSkillLevel(Skill.PRAYER) <= 0) { return } - ClientPackets.queueClickPacket(prayerWidget.clickPoint) - ClientPackets.createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() + queueClickPacket(prayerWidget.clickPoint) + createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() } private fun deactivatePrayer(prayer: Prayer?) { @@ -347,8 +348,8 @@ class AlchemicalHydraPlugin : Plugin() { if (client.getBoostedSkillLevel(Skill.PRAYER) <= 0) { return } - ClientPackets.queueClickPacket(prayerWidget.clickPoint) - ClientPackets.createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() + queueClickPacket(prayerWidget.clickPoint) + createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() } companion object { diff --git a/client/src/main/java/meteor/plugins/attackstyles/AttackStylesPlugin.kt b/client/src/main/java/meteor/plugins/attackstyles/AttackStylesPlugin.kt index 0ff619cb0..5e0c10687 100644 --- a/client/src/main/java/meteor/plugins/attackstyles/AttackStylesPlugin.kt +++ b/client/src/main/java/meteor/plugins/attackstyles/AttackStylesPlugin.kt @@ -111,7 +111,7 @@ class AttackStylesPlugin : Plugin() { val weaponSwitch = currentEquippedWeaponTypeVarbit != equippedWeaponTypeVarbit equippedWeaponTypeVarbit = currentEquippedWeaponTypeVarbit updateAttackStyle(equippedWeaponTypeVarbit, currentAttackStyleVarbit, - currentCastingModeVarbit) + currentCastingModeVarbit) updateWarning(weaponSwitch) // this isn't required, but will hide styles 1 tick earlier than the script event, which fires diff --git a/client/src/main/java/meteor/plugins/autoalch/AutoAlchPlugin.kt b/client/src/main/java/meteor/plugins/autoalch/AutoAlchPlugin.kt index 20e67f31e..75eaa612e 100644 --- a/client/src/main/java/meteor/plugins/autoalch/AutoAlchPlugin.kt +++ b/client/src/main/java/meteor/plugins/autoalch/AutoAlchPlugin.kt @@ -5,13 +5,12 @@ import dev.hoot.api.magic.Regular import eventbus.events.GameTick import eventbus.events.StatChanged import meteor.api.Items -import meteor.api.ClientPackets +import meteor.api.queueClickPacket import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import meteor.util.CalcUtils import net.runelite.api.Skill import java.util.* -import kotlin.math.roundToInt @PluginDescriptor( name = "Auto Alch", @@ -44,7 +43,7 @@ class AutoAlchPlugin : Plugin() { else Regular.LOW_LEVEL_ALCHEMY Items.getFirst(config.itemID())?.let{ - ClientPackets.queueClickPacket(it.clickPoint) + queueClickPacket(it.clickPoint) Magic.cast(spellToUse,it) } } diff --git a/client/src/main/java/meteor/plugins/autokraken/AutoKrakenPlugin.kt b/client/src/main/java/meteor/plugins/autokraken/AutoKrakenPlugin.kt index 9787cb451..11b9722e4 100644 --- a/client/src/main/java/meteor/plugins/autokraken/AutoKrakenPlugin.kt +++ b/client/src/main/java/meteor/plugins/autokraken/AutoKrakenPlugin.kt @@ -1,14 +1,13 @@ package meteor.plugins.autokraken import eventbus.events.GameTick -import meteor.api.ClientPackets import meteor.api.Items import meteor.api.Loots import meteor.api.NPCs +import meteor.api.queueClickPacket import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import net.runelite.api.Skill -import rs117.hd.data.NpcID import kotlin.random.Random @PluginDescriptor(name = "Auto Kraken", description = "Automatically triggers Kraken & focuses the Kraken boss.", enabledByDefault = false) @@ -111,7 +110,7 @@ class AutoKrakenPlugin: Plugin() { ) return if (edible != null) { - ClientPackets.queueClickPacket(edible.clickPoint) + queueClickPacket(edible.clickPoint) edible.interact("Eat") setRandomHealthThreshold() waitTicks = 3 diff --git a/client/src/main/java/meteor/plugins/autologhop/AutoLogHop.kt b/client/src/main/java/meteor/plugins/autologhop/AutoLogHop.kt index a3cd83512..334a90ef6 100644 --- a/client/src/main/java/meteor/plugins/autologhop/AutoLogHop.kt +++ b/client/src/main/java/meteor/plugins/autologhop/AutoLogHop.kt @@ -9,7 +9,7 @@ import meteor.Main import meteor.Main.executor import meteor.Main.worldService import meteor.api.Items -import meteor.api.ClientPackets +import meteor.api.queueClickPacket import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import meteor.rs.ClientThread @@ -130,7 +130,7 @@ class AutoLogHop : Plugin() { //client.invokeMenuAction("Grand Exchange", "Ring of wealth ( )", 3, MenuAction.CC_OP.getId(), -1, equipment.getId()); val ring: WidgetInfo = WidgetInfo.EQUIPMENT_RING val ringWidget: Widget = client.getWidget(ring)!! - ClientPackets.queueClickPacket(ringWidget.clickPoint) + queueClickPacket(ringWidget.clickPoint) WidgetPackets.widgetAction(ringWidget, "Grand Exchange") } diff --git a/client/src/main/java/meteor/plugins/bank/BankSearch.kt b/client/src/main/java/meteor/plugins/bank/BankSearch.kt index 980b82ff2..6e161548b 100644 --- a/client/src/main/java/meteor/plugins/bank/BankSearch.kt +++ b/client/src/main/java/meteor/plugins/bank/BankSearch.kt @@ -27,7 +27,6 @@ package meteor.plugins.bank import meteor.Main import meteor.rs.ClientThread -import net.runelite.api.Client import net.runelite.api.ScriptID import net.runelite.api.VarClientInt import net.runelite.api.VarClientStr diff --git a/client/src/main/java/meteor/plugins/banksetups/BankSetups.kt b/client/src/main/java/meteor/plugins/banksetups/BankSetups.kt index 97bf9175a..546b4afa6 100644 --- a/client/src/main/java/meteor/plugins/banksetups/BankSetups.kt +++ b/client/src/main/java/meteor/plugins/banksetups/BankSetups.kt @@ -8,8 +8,8 @@ import dev.hoot.api.packets.ItemPackets import eventbus.events.ClientTick import eventbus.events.GameTick import eventbus.events.MenuOptionClicked -import meteor.api.ClientPackets import meteor.api.Items +import meteor.api.queueClickPacket import meteor.game.ItemManager import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor @@ -171,7 +171,7 @@ class BankSetups : Plugin() { item.id, item.slot ) - ClientPackets.queueClickPacket(item.clickPoint) + queueClickPacket(item.clickPoint) } } state = 4 diff --git a/client/src/main/java/meteor/plugins/fighter/FighterPlugin.kt b/client/src/main/java/meteor/plugins/fighter/FighterPlugin.kt index 247818808..926525fea 100644 --- a/client/src/main/java/meteor/plugins/fighter/FighterPlugin.kt +++ b/client/src/main/java/meteor/plugins/fighter/FighterPlugin.kt @@ -12,10 +12,7 @@ import eventbus.events.ChatMessage import eventbus.events.GameTick import meteor.Logger import meteor.Main -import meteor.api.Items -import meteor.api.Loots -import meteor.api.NPCs -import meteor.api.ClientPackets +import meteor.api.* import meteor.game.ItemManager import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor @@ -111,7 +108,7 @@ class FighterPlugin : Plugin() { else Regular.LOW_LEVEL_ALCHEMY.widget.id alchItem?.forEach { - ClientPackets.queueClickPacket(it.clickPoint) + queueClickPacket(it.clickPoint) ItemPackets.queueSpellOnItemPacket(it.id, it.slot, spellToUse) return } diff --git a/client/src/main/java/meteor/plugins/jadautoprayer/JadAutoPrayerPlugin.kt b/client/src/main/java/meteor/plugins/jadautoprayer/JadAutoPrayerPlugin.kt index 3e3b3b763..4f8435e04 100644 --- a/client/src/main/java/meteor/plugins/jadautoprayer/JadAutoPrayerPlugin.kt +++ b/client/src/main/java/meteor/plugins/jadautoprayer/JadAutoPrayerPlugin.kt @@ -1,16 +1,13 @@ package meteor.plugins.jadautoprayer -import com.google.common.eventbus.Subscribe import dev.hoot.api.events.AutomatedMenu import eventbus.events.AnimationChanged -import meteor.api.ClientPackets +import meteor.api.createClientPacket +import meteor.api.queueClickPacket import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import meteor.rs.ClientThread import net.runelite.api.* -import net.runelite.api.mixins.Inject -import net.runelite.api.widgets.Widget -import net.runelite.api.widgets.WidgetInfo @PluginDescriptor( name = "Jad Auto Prayer", @@ -58,8 +55,8 @@ class JadAutoPrayerPlugin : Plugin() { if (client.getBoostedSkillLevel(Skill.PRAYER) <= 0) { return } - ClientPackets.queueClickPacket(prayerWidget.clickPoint) - ClientPackets.createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() + queueClickPacket(prayerWidget.clickPoint) + createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() } diff --git a/client/src/main/java/meteor/plugins/meteor/Meteor.kt b/client/src/main/java/meteor/plugins/meteor/Meteor.kt index 5d89d7675..9b0e00be0 100644 --- a/client/src/main/java/meteor/plugins/meteor/Meteor.kt +++ b/client/src/main/java/meteor/plugins/meteor/Meteor.kt @@ -17,10 +17,9 @@ import eventbus.events.MenuOptionClicked import meteor.Configuration import meteor.Logger import meteor.Main -import meteor.api.ClientPackets - +import meteor.api.createClientPacket +import meteor.api.queueClickPacket import meteor.config.ConfigManager - import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import meteor.rs.ClientThread @@ -53,13 +52,13 @@ class Meteor : Plugin(daemon = true) { try { if (config.mouseBehavior() != MouseBehavior.DISABLED) { ClientThread.invoke { - ClientPackets.queueClickPacket(clickPoint.x, clickPoint.y) + queueClickPacket(clickPoint.x, clickPoint.y) mouseHandler.sendMovement(clickPoint.x, clickPoint.y) } } GameThread.invoke { try { - val packetBufferNode = ClientPackets.createClientPacket(it) + val packetBufferNode = createClientPacket(it) if (packetBufferNode != null) packetBufferNode.send() else println("No valid packet to write") } catch (ex: InteractionException) { log.debug("{}, falling back to invoke", ex.message!!) diff --git a/client/src/main/java/meteor/plugins/muspahassist/MuspahAssist.kt b/client/src/main/java/meteor/plugins/muspahassist/MuspahAssist.kt index 6c848fd4a..8635acc4f 100644 --- a/client/src/main/java/meteor/plugins/muspahassist/MuspahAssist.kt +++ b/client/src/main/java/meteor/plugins/muspahassist/MuspahAssist.kt @@ -15,9 +15,7 @@ import dev.hoot.api.events.AutomatedMenu import dev.hoot.api.game.GameThread import dev.hoot.api.widgets.Prayers import eventbus.events.* -import meteor.api.ClientPackets -import meteor.api.Items -import meteor.api.NPCs +import meteor.api.* import meteor.config.ConfigManager import meteor.game.ItemVariationMapping import meteor.plugins.Plugin @@ -344,7 +342,7 @@ class MuspahAssist() : Plugin() { ClientThread.invokeLater { mageGear.forEach {id -> Items.getFirst(id)?.let { - ClientPackets.queueClickPacket(it.clickPoint) + queueClickPacket(it.clickPoint) it.interact(2) } } @@ -354,7 +352,7 @@ class MuspahAssist() : Plugin() { ClientThread.invokeLater { rangeGear.forEach {id -> Items.getFirst(id)?.let { - ClientPackets.queueClickPacket(it.clickPoint) + queueClickPacket(it.clickPoint) it.interact(2) } } @@ -364,7 +362,7 @@ class MuspahAssist() : Plugin() { ClientThread.invokeLater { shieldGear.forEach {id -> Items.getFirst(id)?.let { - ClientPackets.queueClickPacket(it.clickPoint) + queueClickPacket(it.clickPoint) it.interact(2) } } @@ -382,8 +380,8 @@ class MuspahAssist() : Plugin() { if (client.getBoostedSkillLevel(Skill.PRAYER) <= 0) { return } - ClientPackets.queueClickPacket(prayerWidget.clickPoint) - ClientPackets.createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() + queueClickPacket(prayerWidget.clickPoint) + createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() } fun getActivePrayers(): List { return Prayer.values().filter { Prayers.isEnabled(it) } @@ -400,7 +398,7 @@ class MuspahAssist() : Plugin() { if (client.getBoostedSkillLevel(Skill.PRAYER) <= 0) { return } - ClientPackets.queueClickPacket(prayerWidget.clickPoint) - ClientPackets.createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() + queueClickPacket(prayerWidget.clickPoint) + createClientPacket(AutomatedMenu(1, MenuAction.CC_OP.id, prayerWidget.itemId, prayerWidget.id))!!.send() } } \ No newline at end of file diff --git a/client/src/main/java/meteor/plugins/poison/PoisonPlugin.kt b/client/src/main/java/meteor/plugins/poison/PoisonPlugin.kt index 212c335cf..270516b46 100644 --- a/client/src/main/java/meteor/plugins/poison/PoisonPlugin.kt +++ b/client/src/main/java/meteor/plugins/poison/PoisonPlugin.kt @@ -31,7 +31,6 @@ import meteor.game.FontManager.runescapeSmallFont import meteor.game.SpriteManager import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor -import meteor.plugins.attackstyles.AttackStylesConfig import meteor.rs.ClientThread import meteor.ui.overlay.infobox.InfoBoxManager import meteor.util.ColorUtil.wrapWithColorTag diff --git a/client/src/main/java/meteor/plugins/prayerflicker/PrayerFlickerPlugin.kt b/client/src/main/java/meteor/plugins/prayerflicker/PrayerFlickerPlugin.kt index 610528f56..3fa884b05 100644 --- a/client/src/main/java/meteor/plugins/prayerflicker/PrayerFlickerPlugin.kt +++ b/client/src/main/java/meteor/plugins/prayerflicker/PrayerFlickerPlugin.kt @@ -7,7 +7,7 @@ import dev.hoot.api.widgets.Widgets import eventbus.events.ClientTick import eventbus.events.GameTick import eventbus.events.MenuOptionClicked -import meteor.api.ClientPackets +import meteor.api.queueClickPacket import meteor.input.KeyManager import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor @@ -35,9 +35,9 @@ class PrayerFlickerPlugin : Plugin() { val quickPrayerOrb = Widgets.get(quickPrayerWidgetID) if (!this::clickPoint.isInitialized) clickPoint = quickPrayerOrb.clickPoint - ClientPackets.queueClickPacket(clickPoint) + queueClickPacket(clickPoint) WidgetPackets.widgetAction(quickPrayerOrb, "Activate") - ClientPackets.queueClickPacket(clickPoint) + queueClickPacket(clickPoint) WidgetPackets.widgetAction(quickPrayerOrb, "Deactivate") } diff --git a/client/src/main/java/meteor/plugins/pvpkeys/PvPKeys.kt b/client/src/main/java/meteor/plugins/pvpkeys/PvPKeys.kt index 9f9dbd1de..fc1934e17 100644 --- a/client/src/main/java/meteor/plugins/pvpkeys/PvPKeys.kt +++ b/client/src/main/java/meteor/plugins/pvpkeys/PvPKeys.kt @@ -200,7 +200,7 @@ class PvPKeys : Plugin() { override fun hotkeyPressed() { ClientThread.invokeLater { meleeGear.forEach { - Items.getFirst(it)?.interact(2) + Items.getFirst(it)?.interact("Wield") } } } diff --git a/client/src/main/java/meteor/plugins/wintertodtfletcher/WintertodtHelper.kt b/client/src/main/java/meteor/plugins/wintertodtfletcher/WintertodtHelper.kt index 07265371b..98c918515 100644 --- a/client/src/main/java/meteor/plugins/wintertodtfletcher/WintertodtHelper.kt +++ b/client/src/main/java/meteor/plugins/wintertodtfletcher/WintertodtHelper.kt @@ -3,8 +3,8 @@ package meteor.plugins.wintertodtfletcher import dev.hoot.api.game.Skills import eventbus.events.GameTick import eventbus.events.HitsplatApplied -import meteor.api.ClientPackets import meteor.api.Items +import meteor.api.queueClickPacket import meteor.plugins.Plugin import meteor.plugins.PluginDescriptor import net.runelite.api.Item @@ -73,7 +73,7 @@ class WintertodtHelper : Plugin() { for (item in items) { if (item.actions?.contains("Eat") == true) { allowance++ - ClientPackets.queueClickPacket(item.clickPoint) + queueClickPacket(item.clickPoint) item.interact("Eat") return true } diff --git a/client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java b/client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java index c213df8d0..fb88419a5 100644 --- a/client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java +++ b/client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java @@ -191,7 +191,7 @@ public class CrypticClue extends ClueScroll implements TextClueScroll, NpcClueSc new CrypticClue("Ghostly bones.", null, "Kill an Ankou."), new CrypticClue("Search through chests found in the upstairs of houses in eastern Falador.", CLOSED_CHEST_375, new WorldPoint(3041, 3364, 1), "The house is located southwest of the Falador Party Room. There are two chests in the room, search the northern chest."), new CrypticClue("Let's hope you don't meet a watery death when you encounter this fiend.", null, "Kill a waterfiend."), - new CrypticClue("Reflection is the weakness for these eyes of evil.", null, "Kill a basilisk."), + new CrypticClue("net.runelite.rs.Reflection is the weakness for these eyes of evil.", null, "Kill a basilisk."), new CrypticClue("Search a bookcase in Lumbridge Swamp.", BOOKCASE_9523, new WorldPoint(3146, 3177, 0), "Located in Father Urhney's house in Lumbridge Swamp."), new CrypticClue("Surround my bones in fire, ontop the wooden pyre. Finally lay me to rest, before my one last test.", null, "Kill a confused/lost barbarian to receive mangled bones. Construct and burn a pyre ship. Kill the ferocious barbarian spirit that spawns to receive a clue casket."), new CrypticClue("Fiendish cooks probably won't dig the dirty dishes.", new WorldPoint(3043, 4974, 1), "Dig by the fire in the Rogues' Den."), diff --git a/client/src/main/java/net/runelite/client/plugins/devtools/EventInspector.java b/client/src/main/java/net/runelite/client/plugins/devtools/EventInspector.java index 3b5d0db2c..b367ccae1 100644 --- a/client/src/main/java/net/runelite/client/plugins/devtools/EventInspector.java +++ b/client/src/main/java/net/runelite/client/plugins/devtools/EventInspector.java @@ -157,7 +157,7 @@ public class EventInspector extends EventInspectorSubscriber { private final JCheckBox groundItemDel = new JCheckBox("Ground Item Del", false); private final JCheckBox groundItemUpdate = new JCheckBox("Ground Item Update", false); private final JCheckBox ifOpenTop = new JCheckBox("Top Interfaces", false); - private final JCheckBox ifOpenSub = new JCheckBox("Sub Interfaces", false); + private final JCheckBox openInterface = new JCheckBox("Sub Interfaces", false); private final JCheckBox ifCloseSub = new JCheckBox("Close Sub Interfaces", false); private final JCheckBox ifMoveSub = new JCheckBox("Move Sub Interfaces", false); private final JCheckBox miscInterfacePackets = new JCheckBox("Misc. Interface Packets", true); @@ -447,7 +447,7 @@ private void addInterfacesPanel(JPanel panel) { panel.add(clientScripts); panel.add(ifEvents); panel.add(ifOpenTop); - panel.add(ifOpenSub); + panel.add(openInterface); panel.add(ifCloseSub); panel.add(ifMoveSub); panel.add(miscInterfacePackets); @@ -1309,7 +1309,7 @@ public void onIfOpenTopEvent(IfOpenTopEvent event) { } @Override - public void onIfOpenSubEvent(IfOpenSubEvent event) { + public void onopenInterfaceEvent(openInterfaceEvent event) { resetTrackedVariables(); /* Because open sub and move sub are quite similar in nature, we have to keep track of its state to filter out moves. */ if (lastMoveSub != null) { @@ -1331,9 +1331,9 @@ public void onIfOpenSubEvent(IfOpenSubEvent event) { topId = "" + (event.getTargetComponent() >> 16); } addLine("Sub interface", - "IfOpenSub(" + id + ", topInterface = " + topId + "openInterface(" + id + ", topInterface = " + topId + ", topComponent = " + (event.getTargetComponent() & 0xFFFF) - + ", modal = " + (event.getWalkType() == WidgetModalMode.MODAL_NOCLICKTHROUGH) + ")", true, ifOpenSub); + + ", modal = " + (event.getWalkType() == WidgetModalMode.MODAL_NOCLICKTHROUGH) + ")", true, openInterface); } @Override @@ -1646,7 +1646,7 @@ public void onScriptPreFired(ScriptPreFired event) { resetTrackedVariables(); ScriptEvent scriptEvent = event.getScriptEvent(); /* Filter out the non-server created scripts. Do note that other plugins may call CS2s, such as the quest helper plugin. */ - if (scriptEvent == null || scriptEvent.getSource() != null || scriptEvent.type() != 76) return; + // if (scriptEvent == null || scriptEvent.getSource() != null /*|| scriptEvent.type() != 76*/) return; final Object[] arguments = scriptEvent.getArguments(); final int scriptId = Integer.parseInt(arguments[0].toString()); if (ignoredClientScripts.contains(scriptId)) return; diff --git a/client/src/main/java/net/runelite/client/plugins/devtools/EventInspectorSubscriber.kt b/client/src/main/java/net/runelite/client/plugins/devtools/EventInspectorSubscriber.kt index d5fa7269d..9fae61c91 100644 --- a/client/src/main/java/net/runelite/client/plugins/devtools/EventInspectorSubscriber.kt +++ b/client/src/main/java/net/runelite/client/plugins/devtools/EventInspectorSubscriber.kt @@ -117,7 +117,7 @@ open class EventInspectorSubscriber : DevToolsFrame(), KEventSubscriber { open fun onHashTableNodeGetCall(it: HashTableNodeGetCall) {} open fun onHashTableNodePut(it: HashTableNodePut) {} open fun onHintArrowEvent(it: HintArrowEvent) {} - open fun onIfOpenSubEvent(it: IfOpenSubEvent) {} + open fun onopenInterfaceEvent(it: openInterfaceEvent) {} open fun onIfOpenTopEvent(it: IfOpenTopEvent) {} open fun onJinglePlayed(it: JinglePlayed) {} open fun onMinimapStateChange(it: MinimapStateChange) {} @@ -449,7 +449,7 @@ open class EventInspectorSubscriber : DevToolsFrame(), KEventSubscriber { } subscribeEvent(Events.HASH_TABLE_NODE_PUT) { executeIfListening { onHashTableNodePut(it) } } subscribeEvent(Events.HINT_ARROW_EVENT) { executeIfListening { onHintArrowEvent(it) } } - subscribeEvent(Events.IF_OPEN_SUB_EVENT) { executeIfListening { onIfOpenSubEvent(it) } } + subscribeEvent(Events.IF_OPEN_SUB_EVENT) { executeIfListening { onopenInterfaceEvent(it) } } subscribeEvent(Events.IF_OPEN_TOP_EVENT) { executeIfListening { onIfOpenTopEvent(it) } } subscribeEvent(Events.INTERACTING_CHANGED) { executeIfListening { onInteractingChanged(it) } } subscribeEvent(Events.JINGLE_PLAYED) { executeIfListening { onJinglePlayed(it) } } diff --git a/client/src/main/java/net/runelite/client/plugins/questhelper/quests/templeoftheeye/TempleOfTheEye.java b/client/src/main/java/net/runelite/client/plugins/questhelper/quests/templeoftheeye/TempleOfTheEye.java index 52c466ec3..0c97ff4ab 100644 --- a/client/src/main/java/net/runelite/client/plugins/questhelper/quests/templeoftheeye/TempleOfTheEye.java +++ b/client/src/main/java/net/runelite/client/plugins/questhelper/quests/templeoftheeye/TempleOfTheEye.java @@ -74,8 +74,7 @@ 13742: Apprentice Tamara puzzle 13743: Apprentice Felix puzzle 13744: Apprentice Cordelia puzzle -13745: Quest offered -13747 - 13752: Energy orbs +13745: Quest offered: Energy orbs 13753: One-time Wizard's Tower teleport 13759: Guardians of the Rift Tutorial progress */ diff --git a/client/src/main/java/net/runelite/client/plugins/questhelper/steps/QuestSyncStep.java b/client/src/main/java/net/runelite/client/plugins/questhelper/steps/QuestSyncStep.java index ee7b22d07..f6d3a2d43 100644 --- a/client/src/main/java/net/runelite/client/plugins/questhelper/steps/QuestSyncStep.java +++ b/client/src/main/java/net/runelite/client/plugins/questhelper/steps/QuestSyncStep.java @@ -97,7 +97,6 @@ void scrollToWidget(Widget widget) final int newScroll = Math.max(0, Math.min(parent.getScrollHeight(), (widget.getRelativeY() / 2 + (widget.getHeight()) / 2) - parent.getHeight() / 2)); - client.runScript( ScriptID.UPDATE_SCROLLBAR, QuestWidgets.QUESTLIST_SCROLLBAR.getId(), diff --git a/client/src/main/resources/runelite/12/10003 b/client/src/main/resources/runelite/12/10003 deleted file mode 100644 index f6749c8db..000000000 Binary files a/client/src/main/resources/runelite/12/10003 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/10004 b/client/src/main/resources/runelite/12/10004 deleted file mode 100644 index cacd86703..000000000 Binary files a/client/src/main/resources/runelite/12/10004 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/1048 b/client/src/main/resources/runelite/12/1048 deleted file mode 100644 index d3d6649fc..000000000 Binary files a/client/src/main/resources/runelite/12/1048 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/1048.hash b/client/src/main/resources/runelite/12/1048.hash deleted file mode 100644 index fcfba2b68..000000000 --- a/client/src/main/resources/runelite/12/1048.hash +++ /dev/null @@ -1 +0,0 @@ -654085BE2DFBFB0D64DB0508B593E1640C32945E9ACB7999B04768E6BD497169 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/1049 b/client/src/main/resources/runelite/12/1049 deleted file mode 100644 index 0b32aa7fc..000000000 Binary files a/client/src/main/resources/runelite/12/1049 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/1049.hash b/client/src/main/resources/runelite/12/1049.hash deleted file mode 100644 index 1fe1c9f56..000000000 --- a/client/src/main/resources/runelite/12/1049.hash +++ /dev/null @@ -1 +0,0 @@ -50412AFEF99FE459B822400E7621F766E801EFCFCDBA8213E7F099C9E9D14890 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/1050 b/client/src/main/resources/runelite/12/1050 deleted file mode 100644 index 54f45e0e7..000000000 Binary files a/client/src/main/resources/runelite/12/1050 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/1050.hash b/client/src/main/resources/runelite/12/1050.hash deleted file mode 100644 index 2d66d7aca..000000000 --- a/client/src/main/resources/runelite/12/1050.hash +++ /dev/null @@ -1 +0,0 @@ -9365BC83CB2365C7BC3FBFC90C01232DD242740014E14D456BBAA0622D5570F0 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/125 b/client/src/main/resources/runelite/12/125 deleted file mode 100644 index 05f323ada..000000000 Binary files a/client/src/main/resources/runelite/12/125 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/125.hash b/client/src/main/resources/runelite/12/125.hash deleted file mode 100644 index 6027e16df..000000000 --- a/client/src/main/resources/runelite/12/125.hash +++ /dev/null @@ -1 +0,0 @@ -1493BFAD37FCE6E5EFDCF0C8C9000C1BEFD6954857F520D141CB7963BCAD9D29 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/129 b/client/src/main/resources/runelite/12/129 deleted file mode 100644 index 7c8bcd0c7..000000000 Binary files a/client/src/main/resources/runelite/12/129 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/129.hash b/client/src/main/resources/runelite/12/129.hash deleted file mode 100644 index 0ec5f1229..000000000 --- a/client/src/main/resources/runelite/12/129.hash +++ /dev/null @@ -1 +0,0 @@ -8FAD64F66E1F60651E501B731C7B3D97D0453A04EFDDBC9D820890263C00BD4B \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/1651 b/client/src/main/resources/runelite/12/1651 deleted file mode 100644 index 3fb2a0fb5..000000000 Binary files a/client/src/main/resources/runelite/12/1651 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/1651.hash b/client/src/main/resources/runelite/12/1651.hash deleted file mode 100644 index d52d81ffb..000000000 --- a/client/src/main/resources/runelite/12/1651.hash +++ /dev/null @@ -1 +0,0 @@ -DA7BFF3D4B1135F264904DDCED76BC0CD56CEF4B41E1D7852097E9EECC235B9A \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/2091 b/client/src/main/resources/runelite/12/2091 deleted file mode 100644 index f851fecc5..000000000 Binary files a/client/src/main/resources/runelite/12/2091 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/2091.hash b/client/src/main/resources/runelite/12/2091.hash deleted file mode 100644 index f39e7684c..000000000 --- a/client/src/main/resources/runelite/12/2091.hash +++ /dev/null @@ -1 +0,0 @@ -49856301491D162091426F3F788EA13FDBE3E5BE758471537F5E7AB7A588066B \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/223 b/client/src/main/resources/runelite/12/223 deleted file mode 100644 index fcac0b701..000000000 Binary files a/client/src/main/resources/runelite/12/223 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/223.hash b/client/src/main/resources/runelite/12/223.hash deleted file mode 100644 index 584255e5c..000000000 --- a/client/src/main/resources/runelite/12/223.hash +++ /dev/null @@ -1 +0,0 @@ -CC6B44F72A4F6314B7CB3EDF891CF7AAEAC91608423E01D57A8A7F3D30904200 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/276 b/client/src/main/resources/runelite/12/276 deleted file mode 100644 index 7fd623177..000000000 Binary files a/client/src/main/resources/runelite/12/276 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/276.hash b/client/src/main/resources/runelite/12/276.hash deleted file mode 100644 index e4d5241bf..000000000 --- a/client/src/main/resources/runelite/12/276.hash +++ /dev/null @@ -1 +0,0 @@ -DC2D875DFF91D7D0184670EC9CD4E5980C051D8D4BD0F591935FD603409A7369 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/277 b/client/src/main/resources/runelite/12/277 deleted file mode 100644 index 2ba5f883b..000000000 Binary files a/client/src/main/resources/runelite/12/277 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/277.hash b/client/src/main/resources/runelite/12/277.hash deleted file mode 100644 index 4ec16fdd5..000000000 --- a/client/src/main/resources/runelite/12/277.hash +++ /dev/null @@ -1 +0,0 @@ -BD7800759535B55460308E8C1224F7E662641E803F37C54231C8C8FC46F77AF4 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/279 b/client/src/main/resources/runelite/12/279 deleted file mode 100644 index e7ecc500d..000000000 Binary files a/client/src/main/resources/runelite/12/279 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/279.hash b/client/src/main/resources/runelite/12/279.hash deleted file mode 100644 index 7a7a40a9f..000000000 --- a/client/src/main/resources/runelite/12/279.hash +++ /dev/null @@ -1 +0,0 @@ -FD851583852C34596F250D63AEDB0A13B294129108A9DB52B6BDF2D51EDA0BFC \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/300 b/client/src/main/resources/runelite/12/300 deleted file mode 100644 index 858e8e4de..000000000 Binary files a/client/src/main/resources/runelite/12/300 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/300.hash b/client/src/main/resources/runelite/12/300.hash deleted file mode 100644 index 1e9b3ddc9..000000000 --- a/client/src/main/resources/runelite/12/300.hash +++ /dev/null @@ -1 +0,0 @@ -1DEBBDF2928F79FE6BDEC5FB3BBF52A18A111D16CF7E079F51B349C6F6DB654A \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/3238 b/client/src/main/resources/runelite/12/3238 deleted file mode 100644 index 7a2ce370c..000000000 Binary files a/client/src/main/resources/runelite/12/3238 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/3238.hash b/client/src/main/resources/runelite/12/3238.hash deleted file mode 100644 index ee74f9f6c..000000000 --- a/client/src/main/resources/runelite/12/3238.hash +++ /dev/null @@ -1 +0,0 @@ -E0D381F621CE48D26245E0E974C877FCFAD8AA369DB9B562E9A1B247D9A7D7EE \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/327 b/client/src/main/resources/runelite/12/327 deleted file mode 100644 index 38169ad33..000000000 Binary files a/client/src/main/resources/runelite/12/327 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/327.hash b/client/src/main/resources/runelite/12/327.hash deleted file mode 100644 index aac2533be..000000000 --- a/client/src/main/resources/runelite/12/327.hash +++ /dev/null @@ -1 +0,0 @@ -2FC8550899F90C47C4B86863A8287C1381FE594088C821EF32533D1F447C2372 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/3764 b/client/src/main/resources/runelite/12/3764 deleted file mode 100644 index 44cd3dd4c..000000000 Binary files a/client/src/main/resources/runelite/12/3764 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/3764.hash b/client/src/main/resources/runelite/12/3764.hash deleted file mode 100644 index d365cbedb..000000000 --- a/client/src/main/resources/runelite/12/3764.hash +++ /dev/null @@ -1 +0,0 @@ -2B0FFE1ECCE5F46FFA036D3BD2CEC46530410E5DE7B2F688A2C22D75706A7089 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/3898 b/client/src/main/resources/runelite/12/3898 deleted file mode 100644 index 3478c4edc..000000000 Binary files a/client/src/main/resources/runelite/12/3898 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/3898.hash b/client/src/main/resources/runelite/12/3898.hash deleted file mode 100644 index 83a3a4c58..000000000 --- a/client/src/main/resources/runelite/12/3898.hash +++ /dev/null @@ -1 +0,0 @@ -5464D17DCD348F352EFFE6AA6AEEC5A5609ECBA30EAC2CB2B3D479D2C0DDDA9A \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/3899 b/client/src/main/resources/runelite/12/3899 deleted file mode 100644 index ade0e02dd..000000000 Binary files a/client/src/main/resources/runelite/12/3899 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/3899.hash b/client/src/main/resources/runelite/12/3899.hash deleted file mode 100644 index e6ff467a7..000000000 --- a/client/src/main/resources/runelite/12/3899.hash +++ /dev/null @@ -1 +0,0 @@ -AA98471D04D9CB1172253D0B479EFD2D58394BDD2852F3AE8CD2B2D46FA826C3 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/39 b/client/src/main/resources/runelite/12/39 deleted file mode 100644 index f5b1d64e2..000000000 Binary files a/client/src/main/resources/runelite/12/39 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/39.hash b/client/src/main/resources/runelite/12/39.hash deleted file mode 100644 index 956b68168..000000000 --- a/client/src/main/resources/runelite/12/39.hash +++ /dev/null @@ -1 +0,0 @@ -8C1A010C661222FD0463C9B2B9F23630B0C51A9836C6D7A7E6ECED0D078637F8 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/3900 b/client/src/main/resources/runelite/12/3900 deleted file mode 100644 index bbb9a90d2..000000000 Binary files a/client/src/main/resources/runelite/12/3900 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/3900.hash b/client/src/main/resources/runelite/12/3900.hash deleted file mode 100644 index 6b984c313..000000000 --- a/client/src/main/resources/runelite/12/3900.hash +++ /dev/null @@ -1 +0,0 @@ -03D7F1AF9E8405CB4A74779254E8C65563123F865CC0181186238B038A740755 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/395 b/client/src/main/resources/runelite/12/395 deleted file mode 100644 index 70a3aeaee..000000000 Binary files a/client/src/main/resources/runelite/12/395 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/395.hash b/client/src/main/resources/runelite/12/395.hash deleted file mode 100644 index f9a788b0f..000000000 --- a/client/src/main/resources/runelite/12/395.hash +++ /dev/null @@ -1 +0,0 @@ -4FBD7B233290094750CBC41F83480BD07C834086262FA3B862C27ED3F4620771 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/396 b/client/src/main/resources/runelite/12/396 deleted file mode 100644 index 584e549a9..000000000 Binary files a/client/src/main/resources/runelite/12/396 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/396.hash b/client/src/main/resources/runelite/12/396.hash deleted file mode 100644 index ebf379aeb..000000000 --- a/client/src/main/resources/runelite/12/396.hash +++ /dev/null @@ -1 +0,0 @@ -B6196093530C36795254AA35C06E5DFB9B6D0280939FDFC05BE38B5752AAE758 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/42 b/client/src/main/resources/runelite/12/42 deleted file mode 100644 index 514d29ecd..000000000 Binary files a/client/src/main/resources/runelite/12/42 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/42.hash b/client/src/main/resources/runelite/12/42.hash deleted file mode 100644 index 408565f31..000000000 --- a/client/src/main/resources/runelite/12/42.hash +++ /dev/null @@ -1 +0,0 @@ -C59E7F42A1DBD7E7D130D9BFC470F3148D04ECE705CEF1E15BC2A84B63042989 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/4742 b/client/src/main/resources/runelite/12/4742 deleted file mode 100644 index dd3071be1..000000000 Binary files a/client/src/main/resources/runelite/12/4742 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/4742.hash b/client/src/main/resources/runelite/12/4742.hash deleted file mode 100644 index 0fca71cb4..000000000 --- a/client/src/main/resources/runelite/12/4742.hash +++ /dev/null @@ -1 +0,0 @@ -6943EE91A5B24C1E3C43274E34A6207A981EE9DDF1F8CBB2129666CF70DC955F \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/5517 b/client/src/main/resources/runelite/12/5517 deleted file mode 100644 index 53ff23aa9..000000000 Binary files a/client/src/main/resources/runelite/12/5517 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/5517.hash b/client/src/main/resources/runelite/12/5517.hash deleted file mode 100644 index 662e93513..000000000 --- a/client/src/main/resources/runelite/12/5517.hash +++ /dev/null @@ -1 +0,0 @@ -03F0602CC099FE01A79ABACACE87EDA07B9D5B4A91ECACB75D211BAC799C81E0 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/5730 b/client/src/main/resources/runelite/12/5730 deleted file mode 100644 index af3e09f0d..000000000 Binary files a/client/src/main/resources/runelite/12/5730 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/5730.hash b/client/src/main/resources/runelite/12/5730.hash deleted file mode 100644 index c7f6b62c3..000000000 --- a/client/src/main/resources/runelite/12/5730.hash +++ /dev/null @@ -1 +0,0 @@ -6956895280C02D72F53B8D5D6DD4DF69FE3EE565C9927023F8C6590F3FF65993 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/6004 b/client/src/main/resources/runelite/12/6004 deleted file mode 100644 index 09e6345eb..000000000 Binary files a/client/src/main/resources/runelite/12/6004 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/6004.hash b/client/src/main/resources/runelite/12/6004.hash deleted file mode 100644 index d85bef7f5..000000000 --- a/client/src/main/resources/runelite/12/6004.hash +++ /dev/null @@ -1 +0,0 @@ -DEC91CFC6FBA0B927EE291A372CFE618232170A27CF96EEADAD29D1D4B761A82 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/679 b/client/src/main/resources/runelite/12/679 deleted file mode 100644 index 6913cd0ca..000000000 Binary files a/client/src/main/resources/runelite/12/679 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/679.hash b/client/src/main/resources/runelite/12/679.hash deleted file mode 100644 index 7d72d3140..000000000 --- a/client/src/main/resources/runelite/12/679.hash +++ /dev/null @@ -1 +0,0 @@ -48C575A71CD8CDDBFC8A7C0D2F8915A5EE263731213FFC23BEFFF39B6441A9FF \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/681 b/client/src/main/resources/runelite/12/681 deleted file mode 100644 index 7a0123bd2..000000000 Binary files a/client/src/main/resources/runelite/12/681 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/681.hash b/client/src/main/resources/runelite/12/681.hash deleted file mode 100644 index df778a7ed..000000000 --- a/client/src/main/resources/runelite/12/681.hash +++ /dev/null @@ -1 +0,0 @@ -45CD86B7AE3F2B6ABA6376CDE986ADF1704E4B27B2608EDEC0AA706181BFC1DA \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/73 b/client/src/main/resources/runelite/12/73 deleted file mode 100644 index ca4864ebc..000000000 Binary files a/client/src/main/resources/runelite/12/73 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/73.hash b/client/src/main/resources/runelite/12/73.hash deleted file mode 100644 index 95b738283..000000000 --- a/client/src/main/resources/runelite/12/73.hash +++ /dev/null @@ -1 +0,0 @@ -2BCAAB2E9DD0FA4284107C7B73FE722A2B63F2024ADD4AD8430724078A2CC1FE \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/806 b/client/src/main/resources/runelite/12/806 deleted file mode 100644 index 653887b61..000000000 Binary files a/client/src/main/resources/runelite/12/806 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/806.hash b/client/src/main/resources/runelite/12/806.hash deleted file mode 100644 index 0417d1658..000000000 --- a/client/src/main/resources/runelite/12/806.hash +++ /dev/null @@ -1 +0,0 @@ -F24070EC29F94E90F83578CF29B242EB9F31D6255578C69F51814E9C199B6E8E \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/84 b/client/src/main/resources/runelite/12/84 deleted file mode 100644 index 64f18b334..000000000 Binary files a/client/src/main/resources/runelite/12/84 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/84.hash b/client/src/main/resources/runelite/12/84.hash deleted file mode 100644 index e9b9a443d..000000000 --- a/client/src/main/resources/runelite/12/84.hash +++ /dev/null @@ -1 +0,0 @@ -23A61A172C500DF4B0FB1500B2B833834BDB7D474D2A9D94548EBA838D0CE766 \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/89 b/client/src/main/resources/runelite/12/89 deleted file mode 100644 index 9b5804a65..000000000 Binary files a/client/src/main/resources/runelite/12/89 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/89.hash b/client/src/main/resources/runelite/12/89.hash deleted file mode 100644 index 70a2c96fa..000000000 --- a/client/src/main/resources/runelite/12/89.hash +++ /dev/null @@ -1 +0,0 @@ -34303A7EF0114BA722276D1F97A5C1E541B084697DCFB1EE251BEAE23CB850DA \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/909 b/client/src/main/resources/runelite/12/909 deleted file mode 100644 index 9db722a08..000000000 Binary files a/client/src/main/resources/runelite/12/909 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/909.hash b/client/src/main/resources/runelite/12/909.hash deleted file mode 100644 index a8b1bd2a5..000000000 --- a/client/src/main/resources/runelite/12/909.hash +++ /dev/null @@ -1 +0,0 @@ -AFE505CAB72304D58550DAD9CB244482089FFB49A4641630CEE2F483D0C224FB \ No newline at end of file diff --git a/client/src/main/resources/runelite/12/920 b/client/src/main/resources/runelite/12/920 deleted file mode 100644 index 07a55a8a4..000000000 Binary files a/client/src/main/resources/runelite/12/920 and /dev/null differ diff --git a/client/src/main/resources/runelite/12/920.hash b/client/src/main/resources/runelite/12/920.hash deleted file mode 100644 index 9a1829643..000000000 --- a/client/src/main/resources/runelite/12/920.hash +++ /dev/null @@ -1 +0,0 @@ -030CB9830EAD6F61CFC5ED1CA60AE3434900998EFB8237E9C750321775312072 \ No newline at end of file diff --git a/client/src/main/resources/runelite/index b/client/src/main/resources/runelite/index index 0c0846853..e856c72b3 100644 Binary files a/client/src/main/resources/runelite/index and b/client/src/main/resources/runelite/index differ diff --git a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/InstructionType.java b/deobfuscator/src/main/java/net/runelite/asm/attributes/code/InstructionType.java deleted file mode 100644 index 0c347d480..000000000 --- a/deobfuscator/src/main/java/net/runelite/asm/attributes/code/InstructionType.java +++ /dev/null @@ -1,348 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.asm.attributes.code; - -import net.runelite.asm.attributes.code.instructions.AALoad; -import net.runelite.asm.attributes.code.instructions.AAStore; -import net.runelite.asm.attributes.code.instructions.AConstNull; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.ANewArray; -import net.runelite.asm.attributes.code.instructions.AStore; -import net.runelite.asm.attributes.code.instructions.AThrow; -import net.runelite.asm.attributes.code.instructions.ArrayLength; -import net.runelite.asm.attributes.code.instructions.BALoad; -import net.runelite.asm.attributes.code.instructions.BAStore; -import net.runelite.asm.attributes.code.instructions.BiPush; -import net.runelite.asm.attributes.code.instructions.CALoad; -import net.runelite.asm.attributes.code.instructions.CAStore; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.D2F; -import net.runelite.asm.attributes.code.instructions.D2I; -import net.runelite.asm.attributes.code.instructions.D2L; -import net.runelite.asm.attributes.code.instructions.DALoad; -import net.runelite.asm.attributes.code.instructions.DAStore; -import net.runelite.asm.attributes.code.instructions.DAdd; -import net.runelite.asm.attributes.code.instructions.DCmpG; -import net.runelite.asm.attributes.code.instructions.DCmpL; -import net.runelite.asm.attributes.code.instructions.DDiv; -import net.runelite.asm.attributes.code.instructions.DLoad; -import net.runelite.asm.attributes.code.instructions.DMul; -import net.runelite.asm.attributes.code.instructions.DNeg; -import net.runelite.asm.attributes.code.instructions.DRem; -import net.runelite.asm.attributes.code.instructions.DStore; -import net.runelite.asm.attributes.code.instructions.DSub; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.Dup2; -import net.runelite.asm.attributes.code.instructions.Dup2_X1; -import net.runelite.asm.attributes.code.instructions.Dup2_X2; -import net.runelite.asm.attributes.code.instructions.Dup_X1; -import net.runelite.asm.attributes.code.instructions.Dup_X2; -import net.runelite.asm.attributes.code.instructions.F2D; -import net.runelite.asm.attributes.code.instructions.F2I; -import net.runelite.asm.attributes.code.instructions.F2L; -import net.runelite.asm.attributes.code.instructions.FALoad; -import net.runelite.asm.attributes.code.instructions.FAStore; -import net.runelite.asm.attributes.code.instructions.FAdd; -import net.runelite.asm.attributes.code.instructions.FCmpG; -import net.runelite.asm.attributes.code.instructions.FCmpL; -import net.runelite.asm.attributes.code.instructions.FDiv; -import net.runelite.asm.attributes.code.instructions.FLoad; -import net.runelite.asm.attributes.code.instructions.FMul; -import net.runelite.asm.attributes.code.instructions.FNeg; -import net.runelite.asm.attributes.code.instructions.FRem; -import net.runelite.asm.attributes.code.instructions.FStore; -import net.runelite.asm.attributes.code.instructions.FSub; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.GotoW; -import net.runelite.asm.attributes.code.instructions.I2B; -import net.runelite.asm.attributes.code.instructions.I2C; -import net.runelite.asm.attributes.code.instructions.I2D; -import net.runelite.asm.attributes.code.instructions.I2F; -import net.runelite.asm.attributes.code.instructions.I2L; -import net.runelite.asm.attributes.code.instructions.I2S; -import net.runelite.asm.attributes.code.instructions.IALoad; -import net.runelite.asm.attributes.code.instructions.IAStore; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.IAnd; -import net.runelite.asm.attributes.code.instructions.IDiv; -import net.runelite.asm.attributes.code.instructions.IInc; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.INeg; -import net.runelite.asm.attributes.code.instructions.IOr; -import net.runelite.asm.attributes.code.instructions.IRem; -import net.runelite.asm.attributes.code.instructions.IShL; -import net.runelite.asm.attributes.code.instructions.IShR; -import net.runelite.asm.attributes.code.instructions.IStore; -import net.runelite.asm.attributes.code.instructions.ISub; -import net.runelite.asm.attributes.code.instructions.IUShR; -import net.runelite.asm.attributes.code.instructions.IXor; -import net.runelite.asm.attributes.code.instructions.IfACmpEq; -import net.runelite.asm.attributes.code.instructions.IfACmpNe; -import net.runelite.asm.attributes.code.instructions.IfCmpGe; -import net.runelite.asm.attributes.code.instructions.IfCmpGt; -import net.runelite.asm.attributes.code.instructions.IfCmpLe; -import net.runelite.asm.attributes.code.instructions.IfCmpLt; -import net.runelite.asm.attributes.code.instructions.IfEq; -import net.runelite.asm.attributes.code.instructions.IfGe; -import net.runelite.asm.attributes.code.instructions.IfGt; -import net.runelite.asm.attributes.code.instructions.IfICmpEq; -import net.runelite.asm.attributes.code.instructions.IfICmpNe; -import net.runelite.asm.attributes.code.instructions.IfLe; -import net.runelite.asm.attributes.code.instructions.IfLt; -import net.runelite.asm.attributes.code.instructions.IfNe; -import net.runelite.asm.attributes.code.instructions.IfNonNull; -import net.runelite.asm.attributes.code.instructions.IfNull; -import net.runelite.asm.attributes.code.instructions.InstanceOf; -import net.runelite.asm.attributes.code.instructions.InvokeDynamic; -import net.runelite.asm.attributes.code.instructions.InvokeInterface; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.L2D; -import net.runelite.asm.attributes.code.instructions.L2F; -import net.runelite.asm.attributes.code.instructions.L2I; -import net.runelite.asm.attributes.code.instructions.LALoad; -import net.runelite.asm.attributes.code.instructions.LAStore; -import net.runelite.asm.attributes.code.instructions.LAdd; -import net.runelite.asm.attributes.code.instructions.LAnd; -import net.runelite.asm.attributes.code.instructions.LCmp; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LDiv; -import net.runelite.asm.attributes.code.instructions.LLoad; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.LNeg; -import net.runelite.asm.attributes.code.instructions.LOr; -import net.runelite.asm.attributes.code.instructions.LRem; -import net.runelite.asm.attributes.code.instructions.LShL; -import net.runelite.asm.attributes.code.instructions.LShR; -import net.runelite.asm.attributes.code.instructions.LStore; -import net.runelite.asm.attributes.code.instructions.LSub; -import net.runelite.asm.attributes.code.instructions.LUShR; -import net.runelite.asm.attributes.code.instructions.LXor; -import net.runelite.asm.attributes.code.instructions.LookupSwitch; -import net.runelite.asm.attributes.code.instructions.MonitorEnter; -import net.runelite.asm.attributes.code.instructions.MonitorExit; -import net.runelite.asm.attributes.code.instructions.MultiANewArray; -import net.runelite.asm.attributes.code.instructions.NOP; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.NewArray; -import net.runelite.asm.attributes.code.instructions.Pop; -import net.runelite.asm.attributes.code.instructions.Pop2; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.attributes.code.instructions.SALoad; -import net.runelite.asm.attributes.code.instructions.SAStore; -import net.runelite.asm.attributes.code.instructions.SiPush; -import net.runelite.asm.attributes.code.instructions.Swap; -import net.runelite.asm.attributes.code.instructions.TableSwitch; -import net.runelite.asm.attributes.code.instructions.VReturn; - -public enum InstructionType -{ - NOP(0x00, "nop", NOP.class), - ACONST_NULL(0x01, "aconst_null", AConstNull.class), - BIPUSH(0x10, "bipush", BiPush.class), - SIPUSH(0x11, "sipush", SiPush.class), - LDC(-1, "ldc", LDC.class), - ILOAD(0x15, "iload", ILoad.class), - LLOAD(0x16, "lload", LLoad.class), - FLOAD(0x17, "fload", FLoad.class), - DLOAD(0x18, "dload", DLoad.class), - ALOAD(0x19, "aload", ALoad.class), - IALOAD(0x2e, "iaload", IALoad.class), - LALOAD(0x2f, "laload", LALoad.class), - FALOAD(0x30, "faload", FALoad.class), - DALOAD(0x31, "daload", DALoad.class), - AALOAD(0x32, "aaload", AALoad.class), - BALOAD(0x33, "baload", BALoad.class), - CALOAD(0x34, "caload", CALoad.class), - SALOAD(0x35, "saload", SALoad.class), - ISTORE(0x36, "istore", IStore.class), - LSTORE(0x37, "lstore", LStore.class), - FSTORE(0x38, "fstore", FStore.class), - DSTORE(0x39, "dstore", DStore.class), - ASTORE(0x3a, "astore", AStore.class), - IASTORE(0x4f, "iastore", IAStore.class), - LASTORE(0x50, "lastore", LAStore.class), - FASTORE(0x51, "fastore", FAStore.class), - DASTORE(0x52, "dastore", DAStore.class), - AASTORE(0x53, "aastore", AAStore.class), - BASTORE(0x54, "bastore", BAStore.class), - CASTORE(0x55, "castore", CAStore.class), - SASTORE(0x56, "sastore", SAStore.class), - POP(0x57, "pop", Pop.class), - POP2(0x58, "pop2", Pop2.class), - DUP(0x59, "dup", Dup.class), - DUP_X1(0x5a, "dup_x1", Dup_X1.class), - DUP_X2(0x5b, "dup_x2", Dup_X2.class), - DUP2(0x5c, "dup2", Dup2.class), - DUP2_X1(0x5d, "dup2_x1", Dup2_X1.class), - DUP2_X2(0x5e, "dup2_x2", Dup2_X2.class), - SWAP(0x5f, "swap", Swap.class), - IADD(0x60, "iadd", IAdd.class), - LADD(0x61, "ladd", LAdd.class), - FADD(0x62, "fadd", FAdd.class), - DADD(0x63, "dadd", DAdd.class), - ISUB(0x64, "isub", ISub.class), - LSUB(0x65, "lsub", LSub.class), - FSUB(0x66, "fsub", FSub.class), - DSUB(0x67, "dsub", DSub.class), - IMUL(0x68, "imul", IMul.class), - LMUL(0x69, "lmul", LMul.class), - FMUL(0x6a, "fmul", FMul.class), - DMUL(0x6b, "dmul", DMul.class), - IDIV(0x6c, "idiv", IDiv.class), - LDIV(0x6d, "ldiv", LDiv.class), - FDIV(0x6e, "fdiv", FDiv.class), - DDIV(0x6f, "ddiv", DDiv.class), - IREM(0x70, "irem", IRem.class), - LREM(0x71, "lrem", LRem.class), - FREM(0x72, "frem", FRem.class), - DREM(0x73, "drem", DRem.class), - INEG(0x74, "ineg", INeg.class), - LNEG(0x75, "lneg", LNeg.class), - FNEG(0x76, "fneg", FNeg.class), - DNEG(0x77, "dneg", DNeg.class), - ISHL(0x78, "ishl", IShL.class), - LSHL(0x79, "lshl", LShL.class), - ISHR(0x7a, "ishr", IShR.class), - LSHR(0x7b, "lshr", LShR.class), - IUSHR(0x7c, "iushr", IUShR.class), - LUSHR(0x7d, "lushr", LUShR.class), - IAND(0x7e, "iand", IAnd.class), - LAND(0x7f, "land", LAnd.class), - IOR(0x80, "ior", IOr.class), - LOR(0x81, "lor", LOr.class), - IXOR(0x82, "ixor", IXor.class), - LXOR(0x83, "lxor", LXor.class), - IINC(0x84, "iinc", IInc.class), - I2L(0x85, "i2l", I2L.class), - I2F(0x86, "i2f", I2F.class), - I2D(0x87, "i2d", I2D.class), - L2I(0x88, "l2i", L2I.class), - L2F(0x89, "l2f", L2F.class), - L2D(0x8a, "l2d", L2D.class), - F2I(0x8b, "f2i", F2I.class), - F2L(0x8c, "f2l", F2L.class), - F2D(0x8d, "f2d", F2D.class), - D2I(0x8e, "d2i", D2I.class), - D2L(0x8f, "d2l", D2L.class), - D2F(0x90, "d2f", D2F.class), - I2B(0x91, "i2b", I2B.class), - I2C(0x92, "i2c", I2C.class), - I2S(0x93, "i2s", I2S.class), - LCMP(0x94, "lcmp", LCmp.class), - FCMPL(0x95, "fcmpl", FCmpL.class), - FCMPG(0x96, "fcmpg", FCmpG.class), - DCMPL(0x97, "dcmpl", DCmpL.class), - DCMPG(0x98, "dcmpg", DCmpG.class), - IFEQ(0x99, "ifeq", IfEq.class), - IFNE(0x9a, "ifne", IfNe.class), - IFLT(0x9b, "iflt", IfLt.class), - IFGE(0x9c, "ifge", IfGe.class), - IFGT(0x9d, "ifgt", IfGt.class), - IFLE(0x9e, "ifle", IfLe.class), - IF_ICMPEQ(0x9f, "if_icmpeq", IfICmpEq.class), - IF_ICMPNE(0xa0, "if_icmpne", IfICmpNe.class), - IF_ICMPLT(0xa1, "if_cmplt", IfCmpLt.class), - IF_ICMPGE(0xa2, "if_icmpge", IfCmpGe.class), - IF_ICMPGT(0xa3, "if_icmpgt", IfCmpGt.class), - IF_ICMPLE(0xa4, "if_icmple", IfCmpLe.class), - IF_ACMPEQ(0xa5, "if_acmpeq", IfACmpEq.class), - IF_ACMPNE(0xa6, "if_acmpne", IfACmpNe.class), - GOTO(0xa7, "goto", Goto.class), - TABLESWITCH(0xaa, "tableswitch", TableSwitch.class), - LOOKUPSWITCH(0xab, "lookupswitch", LookupSwitch.class), - IRETURN(0xac, "ireturn", Return.class), - LRETURN(0xad, "lreturn", Return.class), - FRETURN(0xae, "freturn", Return.class), - DRETURN(0xaf, "dreturn", Return.class), - ARETURN(0xb0, "areturn", Return.class), - RETURN(0xb1, "return", VReturn.class), - GETSTATIC(0xb2, "getstatic", GetStatic.class), - PUTSTATIC(0xb3, "putstatic", PutStatic.class), - GETFIELD(0xb4, "getfield", GetField.class), - PUTFIELD(0xb5, "putfield", PutField.class), - INVOKEVIRTUAL(0xb6, "invokevirtual", InvokeVirtual.class), - INVOKESPECIAL(0xb7, "invokespecial", InvokeSpecial.class), - INVOKESTATIC(0xb8, "invokestatic", InvokeStatic.class), - INVOKEINTERFACE(0xb9, "invokeinterface", InvokeInterface.class), - INVOKEDYNAMIC(0xba, "invokedynamic", InvokeDynamic.class), - NEW(0xbb, "new", New.class), - NEWARRAY(0xbc, "newarray", NewArray.class), - ANEWARRAY(0xbd, "anewarray", ANewArray.class), - ARRAYLENGTH(0xbe, "arraylength", ArrayLength.class), - ATHROW(0xbf, "athrow", AThrow.class), - CHECKCAST(0xc0, "checkcast", CheckCast.class), - INSTANCEOf(0xc1, "instanceof", InstanceOf.class), - MONITORENTER(0xc2, "monitorenter", MonitorEnter.class), - MONITOREXIT(0xc3, "monitorexit", MonitorExit.class), - MULTIANEWARRAY(0xc5, "multianewarray", MultiANewArray.class), - IFNULL(0xc6, "ifnull", IfNull.class), - IFNONNULL(0xc7, "ifnonnull", IfNonNull.class), - GOTO_W(0xc8, "goto_w", GotoW.class); - - private final int code; - private final String name; - private final Class clazz; - - InstructionType(int op, String name, Class clazz) - { - this.code = op; - this.name = name; - this.clazz = clazz; - } - - public int getCode() - { - return code; - } - - public String getName() - { - return name; - } - - public Class getInstructionClass() - { - return clazz; - } - - public static InstructionType findInstructionFromCode(int code) - { - for (InstructionType t : InstructionType.values()) - { - if (t.getCode() == code) - { - return t; - } - } - return null; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/asm/signature/Signature.java b/deobfuscator/src/main/java/net/runelite/asm/signature/Signature.java deleted file mode 100644 index 8fd9e8825..000000000 --- a/deobfuscator/src/main/java/net/runelite/asm/signature/Signature.java +++ /dev/null @@ -1,178 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.asm.signature; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import java.util.regex.Pattern; -import net.runelite.asm.Type; - -public class Signature -{ - private static final Pattern RLAPITORSAPI = Pattern.compile("net/runelite/(rs/)?api/(RS)?"); - - private final List arguments; - private final Type rv; - - public Signature(List arguments, Type rv) - { - this.arguments = new ArrayList<>(arguments); - this.rv = rv; - } - - public Signature(String str) - { - final int rvStart = str.indexOf(')'); - if (rvStart == -1) - throw new IllegalArgumentException("Descriptor has no return value!"); - - rv = new Type(str.substring(rvStart + 1)); - arguments = findArgs(str, new ArrayList<>(), str.indexOf('(') + 1, rvStart); - } - - public Signature(Signature other) - { - arguments = new ArrayList<>(other.arguments); - rv = other.rv; - } - - private static List findArgs(final String str, final List ret, final int from, final int to) - { - if (from >= to) return ret; - - int i = from; - while (str.charAt(i) == '[') ++i; - - if (str.charAt(i) == 'L') - i = str.indexOf(';', i); - - ret.add(new Type(str.substring(from, ++i))); - - return findArgs(str, ret, i, to); - } - - @Override - public boolean equals(Object other) - { - if (!(other instanceof Signature)) - { - return false; - } - - return this.toString().equals(other.toString()); - } - - @Override - public int hashCode() - { - return this.toString().hashCode(); - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(); - sb.append('('); - for (Type a : arguments) - { - sb.append(a); - } - sb.append(')'); - sb.append(rv); - return sb.toString(); - } - - public int size() - { - return arguments.size(); - } - - public void remove(int i) - { - arguments.remove(i); - } - - public Type getTypeOfArg(int i) - { - return arguments.get(i); - } - - public Type getReturnValue() - { - return rv; - } - - public List getArguments() - { - return Collections.unmodifiableList(arguments); - } - - public boolean isVoid() - { - return rv.equals(Type.VOID); - } - - public static class Builder - { - private final List arguments = new ArrayList<>(); - private Type rv; - - public Builder setReturnType(Type type) - { - rv = type; - return this; - } - - public Builder addArgument(Type type) - { - arguments.add(type); - return this; - } - - public Builder addArgument(int idx, Type type) - { - arguments.add(idx, type); - return this; - } - - public Builder addArguments(Collection types) - { - arguments.addAll(types); - return this; - } - - public Signature build() - { - return new Signature(arguments, rv); - } - } - - public Signature rsApiToRsClient() - { - return new Signature(RLAPITORSAPI.matcher(this.toString()).replaceAll("")); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/asm/signature/util/VirtualMethods.java b/deobfuscator/src/main/java/net/runelite/asm/signature/util/VirtualMethods.java deleted file mode 100644 index 41786e69d..000000000 --- a/deobfuscator/src/main/java/net/runelite/asm/signature/util/VirtualMethods.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.asm.signature.util; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.signature.Signature; - -public class VirtualMethods -{ - // find the base methods for a method. search goes up from there to see if two - // different methods can be invoked with the same instruction. - private static List findBaseMethods(List methods, ClassFile cf, String name, Signature type) - { - if (cf == null) - return methods; - - Method m = cf.findMethod(name, type); - if (m != null && !m.isStatic()) - methods.add(m); - - List parentMethods = findBaseMethods(new ArrayList<>(), cf.getParent(), name, type); - - for (ClassFile inter : cf.getInterfaces().getMyInterfaces()) - parentMethods.addAll(findBaseMethods(new ArrayList<>(), inter, name, type)); - - // parentMethods take precedence over our methods - return parentMethods.isEmpty() ? methods : parentMethods; - } - - private static List findBaseMethods(Method method) - { - return findBaseMethods(new ArrayList<>(), method.getClassFile(), method.getName(), method.getDescriptor()); - } - - private static void findMethodUp(List methods, Set visited, ClassFile cf, String name, Signature type) - { - if (cf == null || visited.contains(cf)) - return; - - visited.add(cf); // can do diamond inheritance with interfaces - - Method m = cf.findMethod(name, type); - if (m != null && !m.isStatic()) - methods.add(m); - - for (ClassFile child : cf.getChildren()) - findMethodUp(methods, visited, child, name, type); - } - - public static List getVirtualMethods(Method method) - { - List list = new ArrayList<>(); - - if (method.isStatic()) - { - list.add(method); - return list; - } - - List bases = findBaseMethods(method); // base methods method overrides - assert !bases.isEmpty(); // must contain at least a method - - // now search up from bases, appending to list. - for (Method m : bases) - findMethodUp(list, new HashSet<>(), m.getClassFile(), m.getName(), m.getDescriptor()); - - return list; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/CleanRuneLitePatch.java b/deobfuscator/src/main/java/net/runelite/deob/CleanRuneLitePatch.java deleted file mode 100644 index 4667831ed..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/CleanRuneLitePatch.java +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import com.google.common.base.Stopwatch; -import meteor.Logger; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.execution.Execution; -import net.runelite.deob.deobfuscators.*; -import net.runelite.deob.deobfuscators.arithmetic.ModArith; -import net.runelite.deob.deobfuscators.arithmetic.MultiplicationDeobfuscator; -import net.runelite.deob.deobfuscators.arithmetic.MultiplyOneDeobfuscator; -import net.runelite.deob.deobfuscators.arithmetic.MultiplyZeroDeobfuscator; -import net.runelite.deob.deobfuscators.cfg.ControlFlowDeobfuscator; -import net.runelite.deob.deobfuscators.constparam.ConstantParameter; -import net.runelite.deob.deobfuscators.exprargorder.ExprArgOrder; -import net.runelite.deob.deobfuscators.menuaction.MenuActionDeobfuscator; -import net.runelite.deob.deobfuscators.transformers.ClientErrorTransformer; -import net.runelite.deob.deobfuscators.transformers.GetPathTransformer; -import net.runelite.deob.deobfuscators.transformers.OpcodesTransformer; -import net.runelite.deob.deobfuscators.transformers.ReflectionTransformer; -import net.runelite.deob.util.JarUtil; - -import java.io.File; - -public class CleanRuneLitePatch -{ - private static final Logger logger = new Logger("deob"); - - public static final int OBFUSCATED_NAME_MAX_LEN = 3; - private static final boolean CHECK_EXEC = false; - - public static void main(String[] args) - { - Stopwatch stopwatch = Stopwatch.createStarted(); - - ClassGroup group1 = JarUtil.load(new File("./patch3.jar"), false); - ClassGroup group2 = JarUtil.load(new File("./patch4.jar"), false); - - RemoveNamedAnnotations.run(group1); - RemoveNamedAnnotations.run(group2); - - new Order().run(group1); - new Order().run(group2); - - SyncRuneLitePatches.run(group1, group2); - - JarUtil.save(group1, new File("./patch3-clean.jar")); - JarUtil.save(group2, new File("./patch4-clean.jar")); - - stopwatch.stop(); - logger.info("Done in {}", stopwatch); - } - - public static boolean isObfuscated(String name) - { - if (name.length() <= OBFUSCATED_NAME_MAX_LEN) - { - return !name.equals("run") && !name.equals("add"); - } - return name.startsWith("method") - || name.startsWith("vmethod") - || name.startsWith("field") - || name.startsWith("class") - || name.startsWith("__"); - } - - private static void runMath(ClassGroup group) - { - ModArith mod = new ModArith(); - mod.run(group); - - int last = -1, cur; - while ((cur = mod.runOnce()) > 0) - { - new MultiplicationDeobfuscator().run(group); - - // do not remove 1 * field so that ModArith can detect - // the change in guessDecreasesConstants() - new MultiplyOneDeobfuscator(true).run(group); - - new MultiplyZeroDeobfuscator().run(group); - - if (last == cur) - { - break; - } - - last = cur; - } - - // now that modarith is done, remove field * 1 - new MultiplyOneDeobfuscator(false).run(group); - - mod.annotateEncryption(); - } - - private static void run(ClassGroup group, Deobfuscator deob) - { - Stopwatch stopwatch = Stopwatch.createStarted(); - deob.run(group); - stopwatch.stop(); - - logger.info("{} took {}", deob.getClass().getSimpleName(), stopwatch); - - // check code is still correct - if (CHECK_EXEC) - { - Execution execution = new Execution(group); - execution.populateInitialMethods(); - execution.run(); - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/CreateAnnotations.java b/deobfuscator/src/main/java/net/runelite/deob/CreateAnnotations.java deleted file mode 100644 index 2fc33db3c..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/CreateAnnotations.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2019, Lucas - * All rights reserved. - * - * This code is licensed under GPL3, see the complete license in - * the LICENSE file in the root directory of this submodule. - * - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import net.runelite.asm.*; - -/* - * This handles creating "virtual" annotations to clean up rs-client in the main project - */ -public class CreateAnnotations -{ - - public static void run(ClassGroup classGroup) - { - for (final ClassFile deobClass : classGroup) - { - injectFields(deobClass); - injectMethods(deobClass); - - if (deobClass.getName().startsWith("class")) - { - continue; - } - - deobClass.addAnnotation(DeobAnnotations.IMPLEMENTS, deobClass.getName()); - } - } - - private static void injectFields(ClassFile deobClass) - { - for (Field deobField : deobClass.getFields()) - { - if (!deobField.getName().startsWith("field")) - deobField.addAnnotation(DeobAnnotations.EXPORT, deobField.getName()); - } - } - - private static void injectMethods(ClassFile deobClass) - { - for (Method deobMethod : deobClass.getMethods()) - { - if (!deobMethod.getName().startsWith("method") && !deobMethod.getName().contains("") && !deobMethod.getName().contains("")) - deobMethod.addAnnotation(DeobAnnotations.EXPORT, deobMethod.getName()); - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/Deob.java b/deobfuscator/src/main/java/net/runelite/deob/Deob.java deleted file mode 100644 index 15eb8eff0..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/Deob.java +++ /dev/null @@ -1,198 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import com.google.common.base.Stopwatch; -import java.io.File; -import java.io.IOException; - -import meteor.Logger; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.execution.Execution; -import net.runelite.deob.deobfuscators.CastNull; -import net.runelite.deob.deobfuscators.EnumDeobfuscator; -import net.runelite.deob.deobfuscators.FieldInliner; -import net.runelite.deob.deobfuscators.IllegalStateExceptions; -import net.runelite.deob.deobfuscators.Lvt; -import net.runelite.deob.deobfuscators.Order; -import net.runelite.deob.deobfuscators.RenameUnique; -import net.runelite.deob.deobfuscators.RuntimeExceptions; -import net.runelite.deob.deobfuscators.UnreachedCode; -import net.runelite.deob.deobfuscators.UnusedClass; -import net.runelite.deob.deobfuscators.UnusedFields; -import net.runelite.deob.deobfuscators.UnusedMethods; -import net.runelite.deob.deobfuscators.UnusedParameters; -import net.runelite.deob.deobfuscators.arithmetic.ModArith; -import net.runelite.deob.deobfuscators.arithmetic.MultiplicationDeobfuscator; -import net.runelite.deob.deobfuscators.arithmetic.MultiplyOneDeobfuscator; -import net.runelite.deob.deobfuscators.arithmetic.MultiplyZeroDeobfuscator; -import net.runelite.deob.deobfuscators.cfg.ControlFlowDeobfuscator; -import net.runelite.deob.deobfuscators.constparam.ConstantParameter; -import net.runelite.deob.deobfuscators.exprargorder.ExprArgOrder; -import net.runelite.deob.deobfuscators.menuaction.MenuActionDeobfuscator; -import net.runelite.deob.deobfuscators.transformers.ClientErrorTransformer; -import net.runelite.deob.deobfuscators.transformers.GetPathTransformer; -import net.runelite.deob.deobfuscators.transformers.OpcodesTransformer; -import net.runelite.deob.deobfuscators.transformers.ReflectionTransformer; -import net.runelite.deob.util.JarUtil; -public class Deob -{ - private static final Logger logger = new Logger("deob"); - - public static final int OBFUSCATED_NAME_MAX_LEN = 3; - private static final boolean CHECK_EXEC = false; - - public static void main(String[] args) - { - logger.info("Deobfuscator revision {}", DeobProperties.getRevision()); - - Stopwatch stopwatch = Stopwatch.createStarted(); - - ClassGroup group = JarUtil.load(new File("./deobfuscator/star-215.jar"), true); - - // remove except RuntimeException - run(group, new RuntimeExceptions()); - - run(group, new ControlFlowDeobfuscator()); - - run(group, new RenameUnique()); - - // remove unused methods - this leaves Code with no instructions, - // which is not valid, so unused methods is run after - run(group, new UnreachedCode()); - run(group, new UnusedMethods()); - - // remove illegal state exceptions, frees up some parameters - run(group, new IllegalStateExceptions()); - - // remove constant logically dead parameters - run(group, new ConstantParameter()); - - // remove unhit blocks - run(group, new UnreachedCode()); - run(group, new UnusedMethods()); - - // remove unused parameters - run(group, new UnusedParameters()); - - // remove unused fields - run(group, new UnusedFields()); - - run(group, new FieldInliner()); - - // order uses class name order for sorting fields/methods, - // so run it before removing classes below - run(group, new Order()); - - run(group, new UnusedClass()); - - //runMath(group); - - run(group, new ExprArgOrder()); - - run(group, new Lvt()); - - run(group, new CastNull()); - - run(group, new EnumDeobfuscator()); - - new OpcodesTransformer().transform(group); - //run(group, new PacketHandlerOrder()); - //run(group, new PacketWriteDeobfuscator()); - - run(group, new MenuActionDeobfuscator()); - - new GetPathTransformer().transform(group); - new ClientErrorTransformer().transform(group); - new ReflectionTransformer().transform(group); - //new MaxMemoryTransformer().transform(group); - //new RuneliteBufferTransformer().transform(group); - - JarUtil.save(group, new File("./deobfuscator/deob-215.jar")); - - stopwatch.stop(); - logger.info("Done in {}", stopwatch); - } - - public static boolean isObfuscated(String name) - { - if (name.length() <= OBFUSCATED_NAME_MAX_LEN) - { - return !name.equals("run") && !name.equals("add"); - } - return name.startsWith("method") - || name.startsWith("vmethod") - || name.startsWith("field") - || name.startsWith("class") - || name.startsWith("__"); - } - - private static void runMath(ClassGroup group) - { - ModArith mod = new ModArith(); - mod.run(group); - - int last = -1, cur; - while ((cur = mod.runOnce()) > 0) - { - new MultiplicationDeobfuscator().run(group); - - // do not remove 1 * field so that ModArith can detect - // the change in guessDecreasesConstants() - new MultiplyOneDeobfuscator(true).run(group); - - new MultiplyZeroDeobfuscator().run(group); - - if (last == cur) - { - break; - } - - last = cur; - } - - // now that modarith is done, remove field * 1 - new MultiplyOneDeobfuscator(false).run(group); - - mod.annotateEncryption(); - } - - private static void run(ClassGroup group, Deobfuscator deob) - { - Stopwatch stopwatch = Stopwatch.createStarted(); - deob.run(group); - stopwatch.stop(); - - logger.info("{} took {}", deob.getClass().getSimpleName(), stopwatch); - - // check code is still correct - if (CHECK_EXEC) - { - Execution execution = new Execution(group); - execution.populateInitialMethods(); - execution.run(); - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/DeobProperties.java b/deobfuscator/src/main/java/net/runelite/deob/DeobProperties.java deleted file mode 100644 index ba32f2fe4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/DeobProperties.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.util.Properties; - -public class DeobProperties -{ - - public static String getRevision() - { - return "207.4"; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/Deobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/Deobfuscator.java deleted file mode 100644 index 0471a24fe..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/Deobfuscator.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob; - -import net.runelite.asm.ClassGroup; - -public interface Deobfuscator -{ - void run(ClassGroup group); -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/RemoveNamedAnnotations.java b/deobfuscator/src/main/java/net/runelite/deob/RemoveNamedAnnotations.java deleted file mode 100644 index bbfe7ee71..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/RemoveNamedAnnotations.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2019, Lucas - * All rights reserved. - * - * This code is licensed under GPL3, see the complete license in - * the LICENSE file in the root directory of this submodule. - * - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import net.runelite.asm.*; - -public class RemoveNamedAnnotations -{ - - public static void run(ClassGroup classGroup) - { - for (final ClassFile deobClass : classGroup) - { - injectFields(deobClass); - injectMethods(deobClass); - - if (deobClass.getName().startsWith("class")) - { - continue; - } - - deobClass.addAnnotation(DeobAnnotations.IMPLEMENTS, deobClass.getName()); - } - } - - private static void injectFields(ClassFile deobClass) - { - for (Field deobField : deobClass.getFields()) - { - Type toRemove = null; - for (Annotation annotation : deobField.getAnnotations().values()) { - if (annotation.getType().getInternalName().contains("Named")) - toRemove = annotation.getType(); - } - if (toRemove != null) - deobField.getAnnotations().remove(toRemove); - } - } - - private static void injectMethods(ClassFile deobClass) - { - for (Method deobMethod : deobClass.getMethods()) - { - Type toRemove = null; - for (Annotation annotation : deobMethod.getAnnotations().values()) { - if (annotation.getType().getInternalName().contains("Named")) - toRemove = annotation.getType(); - } - if (toRemove != null) - deobMethod.getAnnotations().remove(toRemove); - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/SyncRuneLitePatches.java b/deobfuscator/src/main/java/net/runelite/deob/SyncRuneLitePatches.java deleted file mode 100644 index c9eff1612..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/SyncRuneLitePatches.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2019, Lucas - * All rights reserved. - * - * This code is licensed under GPL3, see the complete license in - * the LICENSE file in the root directory of this submodule. - * - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob; - -import net.runelite.asm.*; - -import java.util.ArrayList; -import java.util.List; - -public class SyncRuneLitePatches -{ - - public static void run(ClassGroup group1, ClassGroup group2) - { - for (final ClassFile classFile : group1) - { - ClassFile other = findMatchingClass(classFile, group2); - - if (other != null) { - List otherMethods = other.getMethods(); - ArrayList sortedMethods = new ArrayList<>(); - - for (Method method : classFile.getMethods()) { - for (Method otherMethod : otherMethods) { - if (method.getDescriptor().equals(otherMethod.getDescriptor())) { - sortedMethods.add(otherMethod); - break; - } - } - } - - other.setMethods(sortedMethods); - } - } - } - - private static ClassFile findMatchingClass(ClassFile cf, ClassGroup group2) { - for (ClassFile other : group2.getClasses()) { - if (other.getClassName().equals(cf.getClassName())) { - return other; - } - } - return null; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/Transformer.java b/deobfuscator/src/main/java/net/runelite/deob/Transformer.java deleted file mode 100644 index ae137e80b..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/Transformer.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob; - -import net.runelite.asm.ClassGroup; - -public interface Transformer -{ - void transform(ClassGroup group); -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/c2s/IsaacCipherFinder.java b/deobfuscator/src/main/java/net/runelite/deob/c2s/IsaacCipherFinder.java deleted file mode 100644 index a37d3f928..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/c2s/IsaacCipherFinder.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.c2s; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; - -public class IsaacCipherFinder -{ - - private static final int GOLDEN_RATIO = 0x9E3779B9; // 2^32 / phi - private final ClassGroup group; - - private ClassFile isaacCipher; - private Method getNext; - - public IsaacCipherFinder(ClassGroup group) - { - this.group = group; - } - - public ClassFile getIsaacCipher() - { - return isaacCipher; - } - - public Method getGetNext() - { - return getNext; - } - - public void find() - { - Method highest = null; - int count = 0; - - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - - int i = find(m, code); - if (i > count) - { - count = i; - highest = m; - } - } - } - - assert highest != null; - isaacCipher = highest.getClassFile(); - - // find nextInt - for (Method method : isaacCipher.getMethods()) - { - if (method.getDescriptor().size() == 0 && method.getDescriptor().getReturnValue().equals(Type.INT)) - { - getNext = method; - } - } - - } - - private int find(Method method, Code code) - { - if (code == null) - { - return 0; - } - - int gr = 0; - - for (Instruction i : code.getInstructions().getInstructions()) - { - if (i instanceof PushConstantInstruction) - { - PushConstantInstruction pci = (PushConstantInstruction) i; - - if (pci.getConstant().equals(GOLDEN_RATIO)) - { - ++gr; - } - } - } - - return gr; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/c2s/RWOpcodeFinder.java b/deobfuscator/src/main/java/net/runelite/deob/c2s/RWOpcodeFinder.java deleted file mode 100644 index 4d4fb5758..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/c2s/RWOpcodeFinder.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.c2s; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; - -public class RWOpcodeFinder -{ - - private final ClassGroup group; - - private Method readOpcode; - private Method writeOpcode; - - public RWOpcodeFinder(ClassGroup group) - { - this.group = group; - } - - public Method getReadOpcode() - { - return readOpcode; - } - - public Method getWriteOpcode() - { - return writeOpcode; - } - - public ClassFile getSecretBuffer() - { - assert writeOpcode.getClassFile() == readOpcode.getClassFile(); - return writeOpcode.getClassFile(); - } - - public ClassFile getBuffer() - { - return getSecretBuffer().getParent(); - } - - public void find() - { - IsaacCipherFinder ic = new IsaacCipherFinder(group); - ic.find(); - - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - - find(ic, m, code); - } - } - } - - private void find(IsaacCipherFinder ic, Method method, Code code) - { - if (code == null) - { - return; - } - - for (Instruction i : code.getInstructions().getInstructions()) - { - if (i instanceof InvokeInstruction) - { - if (((InvokeInstruction) i).getMethods().contains(ic.getGetNext())) - { - if (method.getDescriptor().size() == 0) - { - // read opcode - readOpcode = method; - } - else - { - // write opcode - writeOpcode = method; - } - } - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersion.java b/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersion.java deleted file mode 100644 index bbd66357e..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersion.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.clientver; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.util.Enumeration; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; -import org.objectweb.asm.ClassReader; - -public class ClientVersion -{ - private final File jar; - - public ClientVersion(File jar) - { - this.jar = jar; - } - - public int getVersion() throws IOException - { - try (JarFile jar = new JarFile(this.jar)) - { - for (Enumeration it = jar.entries(); it.hasMoreElements();) - { - JarEntry entry = it.nextElement(); - - if (!entry.getName().equals("client.class")) - continue; - - InputStream in = jar.getInputStream(entry); - - ClassReader reader = new ClassReader(in); - VersionClassVisitor v = new VersionClassVisitor(); - reader.accept(v, 0); - return v.getVersion(); - } - } - - return -1; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersionMain.java b/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersionMain.java deleted file mode 100644 index a354f6cce..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/clientver/ClientVersionMain.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.clientver; - -import com.google.common.io.Files; -import java.io.File; -import java.io.IOException; - -public class ClientVersionMain -{ - public static void main(String[] args) throws IOException - { - File jar = new File(args[0]); - ClientVersion cv = new ClientVersion(jar); - //System.out.println(cv.getVersion()); - } - - public static int version(String loc) - { - File jar = new File(loc); - ClientVersion cv = new ClientVersion(jar); - try - { - int version = cv.getVersion(); - - Files.move(jar, new File(loc.replace("gamepack.jar", "gamepack-" + version + ".jar"))); - - return version; - } - catch (IOException e) - { - e.printStackTrace(); - } - - return -1; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/clientver/VersionClassVisitor.java b/deobfuscator/src/main/java/net/runelite/deob/clientver/VersionClassVisitor.java deleted file mode 100644 index 3565794e8..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/clientver/VersionClassVisitor.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.clientver; - -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.MethodVisitor; -import org.objectweb.asm.Opcodes; - -public class VersionClassVisitor extends ClassVisitor -{ - private VersionMethodVisitor vmv = new VersionMethodVisitor(); - - public VersionClassVisitor() - { - super(Opcodes.ASM5); - } - - @Override - public MethodVisitor visitMethod(int access, - String name, - String desc, - String signature, - String[] exceptions) - { - if (!name.equals("init")) - return null; - - return vmv; - } - - public int getVersion() - { - return vmv.getVersion(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/CastNull.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/CastNull.java deleted file mode 100644 index 4e3df30b2..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/CastNull.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.List; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.AConstNull; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.Deobfuscator; - -public class CastNull implements Deobfuscator -{ - private int removed; - - private final List interesting = new ArrayList<>(); - private final List notInteresting = new ArrayList<>(); - - private void visit(InstructionContext ictx) - { - if (!(ictx.getInstruction() instanceof CheckCast)) - return; - - if (notInteresting.contains(ictx.getInstruction()) || interesting.contains(ictx.getInstruction())) - return; - - StackContext sctx = ictx.getPops().get(0); - if (sctx.getPushed().getInstruction() instanceof AConstNull) - { - interesting.add(ictx.getInstruction()); - } - else - { - interesting.remove(ictx.getInstruction()); - notInteresting.add(ictx.getInstruction()); - } - } - - private void visit(MethodContext ctx) - { - Instructions ins = ctx.getMethod().getCode().getInstructions(); - interesting.forEach(ins::remove); - removed += interesting.size(); - interesting.clear(); - notInteresting.clear(); - } - - @Override - public void run(ClassGroup group) - { - Execution execution = new Execution(group); - execution.addExecutionVisitor(i -> visit(i)); - execution.addMethodContextVisitor(i -> visit(i)); - execution.populateInitialMethods(); - execution.run(); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/EnumDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/EnumDeobfuscator.java deleted file mode 100644 index f55812a2a..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/EnumDeobfuscator.java +++ /dev/null @@ -1,257 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Deobfuscator; - -public class EnumDeobfuscator implements Deobfuscator -{ - private static final net.runelite.asm.pool.Method ENUM_INIT = new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("java/lang/Enum"), - "", - new Signature("(Ljava/lang/String;I)V") - ); - - @Override - public void run(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - if (!isEnum(cf) || cf.isEnum()) - { - continue; - } - - makeEnum(cf); - } - } - - private boolean isEnum(ClassFile cf) - { - if (cf.getInterfaces().getMyInterfaces().size() != 1 - || cf.getInterfaces().getInterfaces().size() != 1) - { - return false; - } - - if (!interfaceIsEnum(cf.getInterfaces().getMyInterfaces().get(0))) - { - return false; - } - - // number of non static methods should be 1 - long count = cf.getMethods() - .stream() - .filter(m -> !m.isStatic()) - .filter(m -> !m.getName().startsWith("<")) - .count(); - if (count != 1) - { - return false; - } - - return true; - } - - private boolean interfaceIsEnum(ClassFile cf) - { - assert cf.isInterface(); - - if (cf.getMethods().size() != 1) - { - return false; - } - - Method method = cf.getMethods().get(0); - return method.getDescriptor().toString().equals("()I"); // ordinal - } - - private void makeEnum(ClassFile cf) - { - cf.setEnum(); // make class an enum - - // enums super class is java/lang/Enum - assert cf.getParentClass().getName().equals("java/lang/Object"); - cf.setSuperName("java/lang/Enum"); - - // all static fields of the type of the class become enum members - for (Field field : cf.getFields()) - { - if (field.isStatic() && field.getType().equals(new Type("L" + cf.getName() + ";"))) - { - field.setEnum(); - } - } - - for (Method method : cf.getMethods()) - { - if (!method.getName().equals("")) - { - continue; - } - - // Add string as first argument, which is the field name, - // and ordinal as second argument - Signature descriptor = new Signature.Builder() - .setReturnType(method.getDescriptor().getReturnValue()) - .addArgument(Type.STRING) - .addArgument(Type.INT) - .addArguments(method.getDescriptor().getArguments()) - .build(); - - method.setDescriptor(descriptor); - - // Remove instructions up to invokespecial - Instructions ins = method.getCode().getInstructions(); - Instruction i; - do - { - i = ins.getInstructions().get(0); - ins.remove(i); - } - while (i.getType() != InstructionType.INVOKESPECIAL); - - ins.addInstruction(0, new ALoad(ins, 0)); // load this - ins.addInstruction(1, new ALoad(ins, 1)); // load constant name - ins.addInstruction(2, new ILoad(ins, 2)); // ordinal - ins.addInstruction(3, new InvokeSpecial(ins, ENUM_INIT)); // invoke enum constructor - - // Shift all indexes after this up +2 because of the new String and int argument - for (int j = 4; j < ins.getInstructions().size(); ++j) - { - i = ins.getInstructions().get(j); - - if (i instanceof LVTInstruction) - { - LVTInstruction lvt = ((LVTInstruction) i); - int idx = lvt.getVariableIndex(); - if (idx != 0) - { - lvt.setVariableIndex(idx + 2); - } - } - } - } - - // Order of fields being set in clinit, which is the order - // the enum fields are actually in - List order = new ArrayList<>(); - - for (Method method : cf.getMethods()) - { - if (!method.getName().equals("")) - { - continue; - } - - Instructions ins = method.getCode().getInstructions(); - - int count = 0; - // sometimes there is new new invokespecial invokespecial putfield - // for eg enum member field30(1, 2, String.class, new class5()); - boolean seenDup = false; - for (int j = 0; j < ins.getInstructions().size(); ++j) - { - Instruction i = ins.getInstructions().get(j); - - if (i.getType() == InstructionType.DUP && !seenDup) - { - // XXX this should actually be the field name, but it seems to have no effect on fernflower - ins.addInstruction(j + 1, new LDC(ins, "runelite")); - ins.addInstruction(j + 2, new LDC(ins, count++)); - seenDup = true; - } - else if (i.getType() == InstructionType.INVOKESPECIAL) - { - Instruction next = ins.getInstructions().get(j + 1); - - // check if this is the invokespecial on the enum, putstatic comes next - if (next.getType() == InstructionType.PUTSTATIC) - { - InvokeSpecial is = (InvokeSpecial) i; - PutStatic ps = (PutStatic) next; - - net.runelite.asm.pool.Method pmethod = new net.runelite.asm.pool.Method( - is.getMethod().getClazz(), - is.getMethod().getName(), - new Signature.Builder() - .setReturnType(is.getMethod().getType().getReturnValue()) - .addArgument(Type.STRING) - .addArgument(Type.INT) - .addArguments(is.getMethod().getType().getArguments()) - .build() - ); - - is.setMethod(pmethod); - - Field field = ps.getMyField(); - assert field != null; - order.add(field); - - seenDup = false; - } - } - } - } - - // Enum fields must be first. Also they are in order in clinit. - // Sort fields - Collections.sort(cf.getFields(), (f1, f2) -> - { - int idx1 = order.indexOf(f1); - int idx2 = order.indexOf(f2); - - if (idx1 == -1) - { - idx1 = Integer.MAX_VALUE; - } - if (idx2 == -1) - { - idx2 = Integer.MAX_VALUE; - } - - return Integer.compare(idx1, idx2); - }); - - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/FieldInliner.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/FieldInliner.java deleted file mode 100644 index 88e6a1496..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/FieldInliner.java +++ /dev/null @@ -1,174 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import com.google.common.collect.HashMultimap; -import com.google.common.collect.Multimap; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.deob.Deobfuscator; - -public class FieldInliner implements Deobfuscator -{ - - private ClassGroup group; - private Multimap fieldInstructions = HashMultimap.create(); - private List fields = new ArrayList<>(); - - private void findFieldIns() - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - - if (code == null) - continue; - - for (Instruction i : code.getInstructions().getInstructions()) - { - if (!(i instanceof FieldInstruction)) - continue; - - FieldInstruction sf = (FieldInstruction) i; - - if (sf.getMyField() == null) - continue; - - fieldInstructions.put(sf.getMyField(), sf); - } - } - } - } - - private void makeConstantValues() - { - for (ClassFile cf : group.getClasses()) - { - for (Field f : cf.getFields()) - { - if (!f.isStatic() || !f.getType().equals(Type.STRING)) - continue; - - Object constantValue = f.getValue(); - if (constantValue != null) - continue; - - List sfis = fieldInstructions.get(f).stream().filter(f2 -> f2 instanceof SetFieldInstruction).collect(Collectors.toList()); - if (sfis.size() != 1) - continue; - - SetFieldInstruction sfi = (SetFieldInstruction) sfis.get(0); - Instruction ins = (Instruction) sfi; - - Method mOfSet = ins.getInstructions().getCode().getMethod(); - if (!mOfSet.getName().equals("")) - continue; - - // get prev instruction and change to a constant value - Instructions instructions = mOfSet.getCode().getInstructions(); - int idx = instructions.getInstructions().indexOf(ins); - assert idx != -1; - - Instruction prev = instructions.getInstructions().get(idx - 1); - if (!(prev instanceof PushConstantInstruction)) - continue; - - PushConstantInstruction pci = (PushConstantInstruction) prev; - - constantValue = pci.getConstant(); - f.setValue(constantValue); - - fields.add(f); - - boolean b = instructions.getInstructions().remove(prev); - assert b; - b = instructions.getInstructions().remove(ins); - assert b; - } - } - } - - public int inlineUse() - { - int count = 0; - - for (Field f : fields) - { - // replace getfield with constant push - List fins = fieldInstructions.get(f).stream().filter(f2 -> f2 instanceof GetFieldInstruction).collect(Collectors.toList()); - Object value = f.getValue(); - - for (FieldInstruction fin : fins) - { - // remove fin, add push constant - Instruction i = (Instruction) fin; - - Instruction pushIns = new LDC(i.getInstructions(), value); - - List instructions = i.getInstructions().getInstructions(); - - int idx = instructions.indexOf(i); - assert idx != -1; - - i.getInstructions().remove(i); - instructions.add(idx, pushIns); - - ++count; - } - - f.getClassFile().removeField(f); - } - - return count; - } - - @Override - public void run(ClassGroup group) - { - this.group = group; - findFieldIns(); - makeConstantValues(); - int count = inlineUse(); - - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/IllegalStateExceptions.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/IllegalStateExceptions.java deleted file mode 100644 index 63b865c58..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/IllegalStateExceptions.java +++ /dev/null @@ -1,159 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instructions.AThrow; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.deob.Deobfuscator; - -public class IllegalStateExceptions implements Deobfuscator -{ - private int count; - private Set interesting = new HashSet<>(); - private List toRemove = new ArrayList<>(); - - /* find if, new, ..., athrow, replace with goto */ - private void findInteresting(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code c = m.getCode(); - if (c == null) - continue; - - Instructions instructions = c.getInstructions(); - - List ilist = instructions.getInstructions(); - for (int i = 0; i < ilist.size(); ++i) - { - Instruction ins = ilist.get(i); - - if (!(ins instanceof ComparisonInstruction)) // the if - continue; - - Instruction ins2 = ilist.get(i + 1); - if (!(ins2 instanceof New)) - continue; - - New new2 = (New) ins2; - net.runelite.asm.pool.Class clazz = new2.getNewClass(); - if (!clazz.getName().contains("java/lang/IllegalStateException")) - continue; - - interesting.add(ins); - } - } - } - } - - private void visit(InstructionContext ic) - { - if (interesting.contains(ic.getInstruction())) - { - toRemove.add(ic); - } - } - - private void visit(MethodContext ctx) - { - for (InstructionContext ictx : toRemove) - processOne(ictx); - toRemove.clear(); - } - - private void processOne(InstructionContext ic) - { - Instruction ins = ic.getInstruction(); - Instructions instructions = ins.getInstructions(); - - if (instructions == null) - return; - - List ilist = instructions.getInstructions(); - - JumpingInstruction jumpIns = (JumpingInstruction) ins; - assert jumpIns.getJumps().size() == 1; - Instruction to = jumpIns.getJumps().get(0); - - // remove stack of if. - if (ins instanceof If) - { - ic.removeStack(1); - } - ic.removeStack(0); - - int i = ilist.indexOf(ins); - assert i != -1; - - // remove up to athrow - while (!(ins instanceof AThrow)) - { - instructions.remove(ins); - ins = ilist.get(i); // don't need to ++i because - } - - // remove athrow - instructions.remove(ins); - - // insert goto - assert ilist.contains(to); - Goto g = new Goto(instructions, instructions.createLabelFor(to)); - ilist.add(i, g); - - ++count; - } - - @Override - public void run(ClassGroup group) - { - findInteresting(group); - - Execution execution = new Execution(group); - execution.addExecutionVisitor(i -> visit(i)); - execution.addMethodContextVisitor(i -> visit(i)); - execution.populateInitialMethods(); - execution.run(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Lvt.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Lvt.java deleted file mode 100644 index 1ccc574d5..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Lvt.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.deob.Deobfuscator; -import net.runelite.deob.deobfuscators.lvt.Mappings; - -/** - * This deobfuscator is only required for fernflower which has a difficult time - * when the same lvt index is used for variables of differing types (like object - * and int), see IDEABKL-7230. - * - * @author Adam - */ -public class Lvt implements Deobfuscator -{ - - private int count = 0; - - private void process(Method method) - { - Code code = method.getCode(); - if (code == null) - { - return; - } - - Mappings mappings = new Mappings(code.getMaxLocals()); - - for (Instruction ins : code.getInstructions().getInstructions()) - { - if (!(ins instanceof LVTInstruction)) - { - continue; - } - - LVTInstruction lv = (LVTInstruction) ins; - Integer newIdx = mappings.remap(lv.getVariableIndex(), lv.type()); - - if (newIdx == null) - { - continue; - } - - assert newIdx != lv.getVariableIndex(); - - Instruction newIns = lv.setVariableIndex(newIdx); - assert ins == newIns; - - ++count; - } - } - - @Override - public void run(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - process(m); - } - } - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Order.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Order.java deleted file mode 100644 index c1387cf39..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Order.java +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.execution.Execution; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.Deobfuscator; - -/** - * Sort fields and methods based first on the name order of the classes, and - * then based on the order the executor encounters them. - * - * @author Adam - */ -public class Order implements Deobfuscator -{ - - private Execution execution; - - private final Map nameIndices = new HashMap<>(); - - @Override - public void run(ClassGroup group) - { - execution = new Execution(group); - execution.staticStep = true; - execution.populateInitialMethods(); - execution.run(); - - for (int i = 0; i < group.getClasses().size(); i++) - { - ClassFile cf = group.getClasses().get(i); - String className = DeobAnnotations.getObfuscatedName(cf); - nameIndices.put(className, i); - } - - int sortedMethods = 0, sortedFields = 0; - - for (ClassFile cf : group.getClasses()) - { - List m = cf.getMethods(); - m.sort(this::compare); - - sortedMethods += m.size(); - - // field order of enums is mostly handled in EnumDeobfuscator - if (!cf.isEnum()) - { - List f = cf.getFields(); - f.sort(this::compare); - - sortedFields += f.size(); - } - } - } - - // static fields, member fields, clinit, init, methods, static methods - private int compare(Annotated a, Annotated b) - { - int i1 = getType(a), i2 = getType(b); - - if (i1 != i2) - { - return Integer.compare(i1, i2); - } - - int nameIdx1 = getNameIdx(a); - int nameIdx2 = getNameIdx(b); - - if (nameIdx1 != nameIdx2) - { - return Integer.compare(nameIdx1, nameIdx2); - } - - return compareOrder(a, b); - } - - private int getNameIdx(Annotated annotations) - { - String name = DeobAnnotations.getObfuscatedName(annotations); - - Integer nameIdx = nameIndices.get(name); - - return nameIdx != null ? nameIdx : -1; - } - - private int getType(Annotated a) - { - if (a instanceof Method) - return getType((Method) a); - else if (a instanceof Field) - return getType((Field) a); - throw new RuntimeException("kys"); - } - - private int getType(Method m) - { - if (m.getName().equals("")) - { - return 1; - } - if (m.getName().equals("")) - { - return 2; - } - if (!m.isStatic()) - { - return 3; - } - return 4; - } - - private int getType(Field f) - { - if (f.isStatic()) - { - return 1; - } - return 2; - } - - private int compareOrder(Object o1, Object o2) - { - Integer i1, i2; - - i1 = execution.getOrder(o1); - i2 = execution.getOrder(o2); - - if (i1 == null) - { - i1 = Integer.MAX_VALUE; - } - if (i2 == null) - { - i2 = Integer.MAX_VALUE; - } - - if (!i1.equals(i2)) - { - return Integer.compare(i1, i2); - } - - // Fall back to number of accesses - i1 = execution.getAccesses(o1); - i2 = execution.getAccesses(o2); - - if (i1 == null) - { - i1 = Integer.MAX_VALUE; - } - if (i2 == null) - { - i2 = Integer.MAX_VALUE; - } - - return Integer.compare(i1, i2); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/PacketHandlerOrder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/PacketHandlerOrder.java deleted file mode 100644 index 3f1f55d0c..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/PacketHandlerOrder.java +++ /dev/null @@ -1,671 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import com.google.common.primitives.Ints; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.MappableInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.IfEq; -import net.runelite.asm.attributes.code.instructions.IfICmpEq; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Deobfuscator; -import net.runelite.deob.deobfuscators.transformers.buffer.BufferFinder; -import net.runelite.deob.deobfuscators.packethandler.PacketLengthFinder; -import net.runelite.deob.deobfuscators.packethandler.PacketRead; -import net.runelite.deob.deobfuscators.packethandler.PacketTypeFinder; -import static net.runelite.deob.deobfuscators.transformers.OpcodesTransformer.RUNELITE_OPCODES; -import net.runelite.deob.s2c.HandlerFinder; -import net.runelite.deob.s2c.PacketHandler; -import net.runelite.deob.s2c.PacketHandlers; -import static org.objectweb.asm.Opcodes.ACC_PUBLIC; -import static org.objectweb.asm.Opcodes.ACC_STATIC; - -public class PacketHandlerOrder implements Deobfuscator -{ - - private static final String RUNELITE_PACKET = "RUNELITE_PACKET"; - - private static final MessageDigest sha256; - - static - { - try - { - sha256 = MessageDigest.getInstance("SHA-256"); - } - catch (NoSuchAlgorithmException ex) - { - throw new RuntimeException(ex); - } - } - - @Override - public void run(ClassGroup group) - { - // This is run on the deobfuscated jar, so there are no symbols yet... - // Find packetType and buffer classes - PacketTypeFinder ptf = new PacketTypeFinder(group); - ptf.find(); - - BufferFinder bf = new BufferFinder(group); - bf.find(); - - HandlerFinder hf = new HandlerFinder(group, ptf.getPacketType()); - PacketHandlers handlers = hf.findHandlers(); - - for (PacketHandler handler : handlers.getHandlers()) - { - Execution e = hf.getExecution(); - e.reset(); - - e.staticStep = true; - e.step = false; - e.noInvoke = true; - // exception processing won't do non-local jumps, so - // depending on whether methods are inlined or not - // it may jump completely out of the handler into the - // catch all for all packet handling - // just disable exception execution - e.noExceptions = true; - - assert e.frames.isEmpty(); - - Frame f = handler.jumpFrame.dup(); - assert f.isExecuting(); - f.getMethodCtx().reset(); - - e.clearExecutionVisitor(); - e.addExecutionVisitor(ictx -> - { - if (ictx.getInstruction() instanceof MappableInstruction) - { - if (ictx.getInstruction().getType() != InstructionType.INVOKESTATIC) - { - if (!handler.mappable.contains(ictx.getInstruction())) - { - handler.mappable.add(ictx.getInstruction()); - } - } - } - if (ictx.getInstruction().getType() == InstructionType.INVOKEVIRTUAL) - { - InvokeInstruction ii = (InvokeInstruction) ictx.getInstruction(); - - // check if the invoke is on buffer/packetbuffer classes - boolean matches = ii.getMethods().stream() - .filter(m -> m.getDescriptor().size() == 0) - .map(Method::getClassFile) - .anyMatch(cf -> cf == bf.getBuffer() || cf == bf.getPacketBuffer()); - if (matches) - { - Method method = ii.getMethods().get(0); - Signature descriptor = method.getDescriptor(); - Type returnValue = descriptor.getReturnValue(); - - assert ictx.getPops().size() == 1; // buffer reference - InstructionContext bufferCtx = ictx.getPops().get(0).getPushed(); - if (bufferCtx.getInstruction().getType() != InstructionType.GETSTATIC) - { - return; // sometimes buffer is passed to a function and then invoked. - } - PacketRead packetRead = new PacketRead(returnValue, bufferCtx.getInstruction(), ictx); - - if (!handler.reads.contains(packetRead)) - { - handler.reads.add(packetRead); - } - } - } - - if (ictx.getInstruction().getType() == InstructionType.INVOKEVIRTUAL - || ictx.getInstruction().getType() == InstructionType.INVOKESPECIAL - || ictx.getInstruction().getType() == InstructionType.INVOKEINTERFACE) - { - InvokeInstruction ii = (InvokeInstruction) ictx.getInstruction(); - // read methods are scrambled so cant count them - if (!handler.hasPacketRead(ictx.getInstruction())) - { - handler.methodInvokes.addAll(ii.getMethods()); - } - } - if (ictx.getInstruction() instanceof SetFieldInstruction) - { - SetFieldInstruction sfi = (SetFieldInstruction) ictx.getInstruction(); - Field field = sfi.getMyField(); - if (field != null) - { - handler.fieldWrite.add(field); - } - } - if (ictx.getInstruction() instanceof GetFieldInstruction) - { - GetFieldInstruction gfi = (GetFieldInstruction) ictx.getInstruction(); - Field field = gfi.getMyField(); - if (field != null) - { - handler.fieldRead.add(field); - } - } - if (ictx.getInstruction() instanceof LVTInstruction) - { - LVTInstruction lvt = (LVTInstruction) ictx.getInstruction(); - if (!lvt.store()) - { - // get lvt access order - Frame frame = ictx.getFrame(); - int order = frame.getNextOrder(); - if (!handler.lvtOrder.containsKey(lvt.getVariableIndex())) - { - handler.lvtOrder.put(lvt.getVariableIndex(), order); - } - } - } - if (ictx.getInstruction() instanceof PushConstantInstruction) - { - PushConstantInstruction pci = (PushConstantInstruction) ictx.getInstruction(); - handler.constants.add(pci.getConstant()); - } - }); - - e.run(); - - handler.findReorderableReads(); - } - - List unsortedHandlers = new ArrayList<>(handlers.getHandlers()); - List sortedHandlers = new ArrayList<>(handlers.getHandlers()).stream() - .sorted((PacketHandler p1, PacketHandler p2) -> - { - int c = compareReads(p1.reads, p2.reads); - if (c != 0) - { - return c; - } - if (p1.methodInvokes.size() != p2.methodInvokes.size()) - { - return Integer.compare(p1.methodInvokes.size(), p2.methodInvokes.size()); - } - if (p1.fieldRead.size() != p2.fieldRead.size()) - { - return Integer.compare(p1.fieldRead.size(), p2.fieldRead.size()); - } - if (p1.fieldWrite.size() != p2.fieldWrite.size()) - { - return Integer.compare(p1.fieldWrite.size(), p2.fieldWrite.size()); - } - int i = Integer.compare(p1.mappable.size(), p2.mappable.size()); - if (i != 0) - { - return i; - } - - int s1 = hashConstants(p1.constants), s2 = hashConstants(p2.constants); - if (s1 != s2) - { - return Integer.compare(s1, s2); - } - - return 0; - }) - .map(PacketHandler::clone) - .collect(Collectors.toList()); - - assert sortedHandlers.size() == handlers.getHandlers().size(); - - for (PacketHandler handler : sortedHandlers) - { - handler.sortedReads = new ArrayList<>(handler.reads); - handler.sortedReads.sort((PacketRead p1, PacketRead p2) -> - { - LVTInstruction l1 = (LVTInstruction) p1.getStore(); - LVTInstruction l2 = (LVTInstruction) p2.getStore(); - - if (l1 == null && l2 == null) - { - return 0; - } - if (l1 == null) - { - return 1; - } - if (l2 == null) - { - return -1; - } - - if (l1.getVariableIndex() == l2.getVariableIndex()) - { - return 0; - } - - Integer i1 = handler.lvtOrder.get(l1.getVariableIndex()); - Integer i2 = handler.lvtOrder.get(l2.getVariableIndex()); - assert i1 != null; - assert i2 != null; - int i = Integer.compare(i1, i2); - - - return i; - }); - Collections.reverse(handler.sortedReads); - } - - ClassFile runeliteOpcodes = group.findClass(RUNELITE_OPCODES); - assert runeliteOpcodes != null : "Opcodes class must exist"; - - for (PacketHandler handler : sortedHandlers) - { - final String fieldName = "PACKET_SERVER_" + handler.getOpcode(); - - // Add opcode fields - if (runeliteOpcodes.findField(fieldName) == null) - { - Field opField = new Field(runeliteOpcodes, fieldName, Type.INT); - // ACC_FINAL causes javac to inline the fields, which prevents - // the mapper from doing field mapping - opField.setAccessFlags(ACC_PUBLIC | ACC_STATIC); - // setting a non-final static field value - // doesn't work with fernflower - opField.setValue(handler.getOpcode()); - runeliteOpcodes.addField(opField); - - // add initialization - Method clinit = runeliteOpcodes.findMethod(""); - assert clinit != null; - Instructions instructions = clinit.getCode().getInstructions(); - instructions.addInstruction(0, new LDC(instructions, handler.getOpcode())); - instructions.addInstruction(1, new PutStatic(instructions, opField)); - } - } - - // Find unique methods - List methods = unsortedHandlers.stream() - .map(PacketHandler::getMethod) - .distinct() - .collect(Collectors.toList()); - - for (Method m : methods) - { - List unsortedMethodHandlers = unsortedHandlers.stream() - .filter(ph -> ph.getMethod() == m) - .collect(Collectors.toList()); - - List sortedMethodHandlers = sortedHandlers.stream() - .filter(ph -> ph.getMethod() == m) - .collect(Collectors.toList()); - - assert unsortedMethodHandlers.size() == sortedMethodHandlers.size(); - - for (int i = 0; i < sortedMethodHandlers.size(); ++i) - { - PacketHandler unsorted = unsortedMethodHandlers.get(i); - PacketHandler sortedh = sortedMethodHandlers.get(i); - - // Set opcode/jump from sorted -> unsorted - If jump = (If) unsorted.getJump(); - PushConstantInstruction pci = (PushConstantInstruction) unsorted.getPush(); - - assert unsorted.getOpcode() == ((Number) pci.getConstant()).intValue(); - - Instructions instructions = unsorted.getMethod().getCode().getInstructions(); - - final String fieldName = "PACKET_SERVER_" + sortedh.getOpcode(); - - net.runelite.asm.pool.Field field = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(RUNELITE_OPCODES), - fieldName, - Type.INT - ); - instructions.replace(unsorted.getPush(), new GetStatic(instructions, field)); - - assert jump.getType() == InstructionType.IF_ICMPEQ || jump.getType() == InstructionType.IF_ICMPNE; - - Label startLabel = instructions.createLabelFor(sortedh.getStart()); - - if (jump.getType() == InstructionType.IF_ICMPEQ) - { - instructions.replace(jump, new IfICmpEq(instructions, startLabel)); - } - else if (jump.getType() == InstructionType.IF_ICMPNE) - { - // insert a jump after to go to sortedh start - int idx = instructions.getInstructions().indexOf(jump); - assert idx != -1; - - instructions.addInstruction(idx + 1, new Goto(instructions, startLabel)); - } - else - { - throw new IllegalStateException(); - } - } - } - - insertSortedReads(group, sortedHandlers); - insertPacketLength(group, ptf); - } - - private void insertSortedReads(ClassGroup group, List handlers) - { - outer: - for (PacketHandler handler : handlers) - { - Method method = handler.getMethod(); - Instructions instructions = method.getCode().getInstructions(); - List ins = instructions.getInstructions(); - - Instruction afterRead = handler.getAfterRead(); - if (afterRead == null) - { - continue; - } - - for (PacketRead read : handler.reads) - { - if (read.getStore() == null) - { - continue outer; - } - } - - List follow = follow(instructions, handler.getStart(), afterRead); - - for (Instruction i : follow) - { - if (i instanceof ComparisonInstruction) - { - continue outer; - } - } - - Label afterReadLabel = instructions.createLabelFor(afterRead); - - int idx = ins.indexOf(handler.getStart()); - assert idx != -1; - - if (handler.getStart() instanceof Label) - { - ++idx; - } - - net.runelite.asm.pool.Field field = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(findClient(group).getName()), - RUNELITE_PACKET, - Type.BOOLEAN - ); - - instructions.addInstruction(idx, new GetStatic(instructions, field)); - ++idx; - - instructions.addInstruction(idx, new IfEq(instructions, instructions.createLabelFor(ins.get(idx)))); - ++idx; - - List toCopy = new ArrayList<>(); - for (Instruction i : follow) - { - assert !(i instanceof JumpingInstruction); - if (i instanceof Label) - { - continue; - } - - toCopy.add(i); - } - - // Remove getstatic/invoke/store for packet reads - for (PacketRead read : handler.reads) - { - boolean b = toCopy.remove(read.getGetBuffer()); - assert b; - b = toCopy.remove(read.getInvoke()); - assert b; - b = toCopy.remove(read.getStore()); - assert b; - } - - // Add sorted reads - for (PacketRead read : handler.sortedReads) - { - toCopy.add(0, read.getGetBuffer()); - - // replace invoke instruction with typed read - InvokeInstruction ii = (InvokeInstruction) read.getInvoke(); - net.runelite.asm.pool.Method invokeMethod; - if (read.getType().equals(Type.BYTE)) - { - invokeMethod = new net.runelite.asm.pool.Method( - ii.getMethod().getClazz(), - "runeliteReadByte", - new Signature("()B") - ); - } - else if (read.getType().equals(Type.SHORT)) - { - invokeMethod = new net.runelite.asm.pool.Method( - ii.getMethod().getClazz(), - "runeliteReadShort", - new Signature("()S") - ); - } - else if (read.getType().equals(Type.INT)) - { - invokeMethod = new net.runelite.asm.pool.Method( - ii.getMethod().getClazz(), - "runeliteReadInt", - new Signature("()I") - ); - } - else if (read.getType().equals(Type.STRING)) - { - invokeMethod = new net.runelite.asm.pool.Method( - ii.getMethod().getClazz(), - "runeliteReadString", - new Signature("()Ljava/lang/String;") - ); - } - else - { - throw new UnsupportedOperationException("Unknown type " + read.getType()); - } - toCopy.add(1, new InvokeVirtual(instructions, invokeMethod)); - - toCopy.add(2, read.getStore()); - } - - for (Instruction i : toCopy) - { - instructions.addInstruction(idx++, i.clone()); - } - - instructions.addInstruction(idx, new Goto(instructions, afterReadLabel)); - ++idx; - } - } - - private int compareReads(List r1, List r2) - { - List t1 = r1.stream() - .map(PacketRead::getType) - .sorted(this::compareType) - .collect(Collectors.toList()); - List t2 = r2.stream() - .map(PacketRead::getType) - .sorted(this::compareType) - .collect(Collectors.toList()); - if (t1.size() != t2.size()) - { - return Integer.compare(t1.size(), t2.size()); - } - - for (int i = 0; i < t1.size(); ++i) - { - Type type1 = t1.get(i), type2 = t2.get(i); - - int cmp = compareType(type1, type2); - if (cmp != 0) - { - return cmp; - } - } - - return 0; - } - - private int compareType(Type t1, Type t2) - { - if (t1.getDimensions() != t2.getDimensions()) - { - return Integer.compare(t1.getDimensions(), t2.getDimensions()); - } - return t1.toString().compareTo(t2.toString()); - } - - public static int hashConstants(List constants) - { - sha256.reset(); - for (Object o : constants) - { - if (o instanceof Number) - { - sha256.update(((Number) o).byteValue()); - } - else if (o instanceof String) - { - String s = (String) o; - sha256.update(s.getBytes()); - } - } - byte[] b = sha256.digest(); - return Ints.fromByteArray(b); - } - - private void insertPacketLength(ClassGroup group, PacketTypeFinder ptf) - { - PacketLengthFinder pfl = new PacketLengthFinder(group, ptf); - pfl.find(); - - GetStatic getArray = pfl.getGetArray(); - PutStatic ps = pfl.getStore(); // instruction to store packet length - - Instructions instructions = ps.getInstructions(); - List ins = instructions.getInstructions(); - - Label getArrayLabel = instructions.createLabelFor(getArray); - Label storeLabel = instructions.createLabelFor(ps); - - int idx = ins.indexOf(getArray); - assert idx != -1; - - --idx; // to go before label, which must exist - - net.runelite.asm.pool.Field field = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(findClient(group).getName()), - RUNELITE_PACKET, - Type.BOOLEAN - ); - - instructions.addInstruction(idx++, new GetStatic(instructions, field)); - instructions.addInstruction(idx++, new IfEq(instructions, getArrayLabel)); - instructions.addInstruction(idx++, new LDC(instructions, -2)); // 2 byte length - instructions.addInstruction(idx++, new Goto(instructions, storeLabel)); - } - - private ClassFile findClient(ClassGroup group) - { - // "client" in vainlla but "Client" in deob.. - ClassFile cf = group.findClass("client"); - return cf != null ? cf : group.findClass("Client"); - } - - private List follow(Instructions instructions, Instruction start, Instruction end) - { - List list = new ArrayList<>(); - - int idx = instructions.getInstructions().indexOf(start); - assert idx != -1; - - for (;;) - { - Instruction i = instructions.getInstructions().get(idx); - - // end is the following instruction post read.. not included - if (i == end) - { - break; - } - - if (i instanceof Goto) - { - Goto g = (Goto) i; - Label to = g.getTo(); - - idx = instructions.getInstructions().indexOf(to); - assert idx != -1; - continue; - } - - list.add(i); - - if (i instanceof ComparisonInstruction) - { - return list; - } - - ++idx; - } - - return list; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RenameUnique.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RenameUnique.java deleted file mode 100644 index ad792c557..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RenameUnique.java +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.signature.util.VirtualMethods; -import net.runelite.deob.Deob; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.Deobfuscator; -import net.runelite.deob.util.NameMappings; - -public class RenameUnique implements Deobfuscator -{ - private void generateClassNames(NameMappings map, ClassGroup group) - { - int i = 0; - for (ClassFile cf : group.getClasses()) - if (cf.getName().length() <= Deob.OBFUSCATED_NAME_MAX_LEN) - map.map(cf.getPoolClass(), "class" + i++); - map.setClasses(i); - } - - private void generateFieldNames(NameMappings map, ClassGroup group) - { - int i = 0; - for (ClassFile cf : group.getClasses()) - for (Field field : cf.getFields()) - if (Deob.isObfuscated(field.getName()) && !field.getName().equals(DeobAnnotations.getExportedName(field))) - map.map(field.getPoolField(), "field" + i++); - map.setFields(i); - } - - private void generateMethodNames(NameMappings map, ClassGroup group) - { - int i = 0; - for (ClassFile cf : group.getClasses()) - for (Method method : cf.getMethods()) - { - if (!Deob.isObfuscated(method.getName()) || method.getName().equals(DeobAnnotations.getExportedName(method))) - continue; - - List virtualMethods = VirtualMethods.getVirtualMethods(method); - assert !virtualMethods.isEmpty(); - - String name; - if (virtualMethods.size() == 1) - name = "method" + i++; - else - name = "vmethod" + i++; - - for (Method m : virtualMethods) - map.map(m.getPoolMethod(), name); - } - map.setMethods(i); - } - - @Override - public void run(ClassGroup group) - { - group.buildClassGraph(); - group.lookup(); - - NameMappings mappings = new NameMappings(); - - this.generateClassNames(mappings, group); - this.generateFieldNames(mappings, group); - this.generateMethodNames(mappings, group); - - Renamer renamer = new Renamer(mappings); - renamer.run(group); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Renamer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Renamer.java deleted file mode 100644 index 5a97e4b4c..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/Renamer.java +++ /dev/null @@ -1,295 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import com.google.common.base.Strings; -import java.util.List; - -import meteor.Logger; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Interfaces; -import net.runelite.asm.Method; -import net.runelite.asm.Named; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Exceptions; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.LocalVariable; -import net.runelite.asm.attributes.code.Parameter; -import net.runelite.asm.signature.Signature; -import net.runelite.asm.signature.util.VirtualMethods; -import net.runelite.deob.DeobAnnotations; -import static net.runelite.deob.DeobAnnotations.*; -import net.runelite.deob.Deobfuscator; -import net.runelite.deob.util.NameMappings; - -public class Renamer implements Deobfuscator -{ - private static final Logger logger = new Logger("deob"); - - private final NameMappings mappings; - - public Renamer(NameMappings mappings) - { - this.mappings = mappings; - } - - private void renameClass(ClassFile on, ClassFile old, String name) - { - if (on.getParentClass().getName().equals(old.getName())) - { - on.setParentClass(new net.runelite.asm.pool.Class(name)); - } - - Interfaces interfaces = on.getInterfaces(); - List interfaceList = interfaces.getInterfaces(); - for (net.runelite.asm.pool.Class inter : interfaceList) - { - if (inter.getName().equals(old.getName())) - { - int idx = interfaceList.indexOf(inter); - interfaceList.remove(idx); - interfaceList.add(idx, new net.runelite.asm.pool.Class(name)); - break; - } - } - } - - private void renameClass(ClassGroup group, ClassFile cf, String name) - { - for (ClassFile c : group.getClasses()) - { - // rename on child interfaces and classes - renameClass(c, cf, name); - - for (Method method : c.getMethods()) - { - // rename on instructions. this includes method calls and field accesses. - if (method.getCode() != null) - { - Code code = method.getCode(); - - // rename on instructions - for (Instruction i : code.getInstructions().getInstructions()) - { - i.renameClass(cf.getName(), name); - } - - // rename on exception handlers - Exceptions exceptions = code.getExceptions(); - exceptions.renameClass(cf, name); - } - - // rename on parameters - Signature.Builder builder = new Signature.Builder(); - Signature descriptor = method.getDescriptor(); - for (int i = 0; i < descriptor.size(); ++i) - { - Type type = descriptor.getTypeOfArg(i); - - if (type.getInternalName().equals(cf.getName())) - { - builder.addArgument(Type.getType("L" + name + ";", type.getDimensions())); - } - else - { - builder.addArgument(type); - } - } - - // rename return type - if (descriptor.getReturnValue().getInternalName().equals(cf.getName())) - { - builder.setReturnType(Type.getType("L" + name + ";", descriptor.getReturnValue().getDimensions())); - } - else - { - builder.setReturnType(descriptor.getReturnValue()); - } - - Signature newdescriptor = builder.build(); - - if (!method.getDescriptor().equals(newdescriptor)) - { - if (method.findAnnotation(OBFUSCATED_SIGNATURE) == null) - { - method.findAnnotation(OBFUSCATED_SIGNATURE, true).setElement("descriptor", method.getDescriptor().toString()); - } - } - - method.setDescriptor(newdescriptor); - - // rename on exceptions thrown - if (method.getExceptions() != null) - { - method.getExceptions().renameClass(cf, name); - } - } - - // rename on fields - for (Field field : c.getFields()) - { - if (field.getType().getInternalName().equals(cf.getName())) - { - if (field.findAnnotation(OBFUSCATED_SIGNATURE) == null) - { - field.findAnnotation(OBFUSCATED_SIGNATURE, true).setElement("descriptor", field.getType().toString()); - } - field.setType(Type.getType("L" + name + ";", field.getType().getDimensions())); - } - } - } - - addObfuscatedName(cf); - - group.renameClass(cf, name); - } - - private void regeneratePool(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - if (m.getCode() != null) - { - m.getCode().getInstructions() - .regeneratePool(); - } - } - } - } - - @Override - public void run(ClassGroup group) - { - group.buildClassGraph(); - group.lookup(); - - int classes = 0, fields = 0, methods = 0, parameters = 0; - - // rename fields - for (ClassFile cf : group.getClasses()) - { - for (Field field : cf.getFields()) - { - String newName = mappings.get(field.getPoolField()); - if (newName == null) - { - continue; - } - - addObfuscatedName(field); - - assert DeobAnnotations.getExportedName(field) == null || newName.equals(DeobAnnotations.getExportedName(field)) : "Tried changing field name to something other than the exported name!"; - - field.setName(newName); - ++fields; - } - } - - // rename methods - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - String newName = mappings.get(method.getPoolMethod()); - String[] newParams = mappings.getP(method.getPoolMethod()); - - if (newName == null) - { - continue; - } - - List virtualMethods = VirtualMethods.getVirtualMethods(method); - assert !virtualMethods.isEmpty(); - - for (Method m : virtualMethods) - { - List oldParams = method.getParameters(); - for (Parameter p : oldParams) - { - int index = oldParams.indexOf(p); - if (newParams == null) - { - break; - } - else if (newParams.length < 1 || index > newParams.length - 1 || Strings.isNullOrEmpty(newParams[index])) - { - break; - } - - LocalVariable oldVar = p.getLocalVariable(); - LocalVariable newVar = new LocalVariable( - newParams[index], - oldVar.getDesc(), - oldVar.getSignature(), - oldVar.getStart(), - oldVar.getEnd(), - oldVar.getIndex() - ); - - p.setLocalVariable(newVar); - - ++parameters; - } - - addObfuscatedName(m); - - m.setName(newName); - } - - methods += virtualMethods.size(); - } - } - - for (ClassFile cf : group.getClasses()) - { - String newName = mappings.get(cf.getPoolClass()); - if (newName == null) - { - continue; - } - - renameClass(group, cf, newName); - ++classes; - } - - this.regeneratePool(group); - - logger.info("Renamed {} classes, {} fields, {} methods, and {} parameters", classes, fields, methods, parameters); - } - - private static void addObfuscatedName(T object) - { - if (object.findAnnotation(OBFUSCATED_NAME) == null) - { - object.findAnnotation(OBFUSCATED_NAME, true).setElement(object.getName()); - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RuntimeExceptions.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RuntimeExceptions.java deleted file mode 100644 index 22d3cf2d9..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/RuntimeExceptions.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; - -import meteor.Logger; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.deob.Deobfuscator; - -public class RuntimeExceptions implements Deobfuscator -{ - private static final Logger logger = new Logger("deob"); - @Override - public void run(ClassGroup group) - { - boolean foundInit = false; - - int i = 0; - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code c = m.getCode(); - if (c == null) - continue; - - // Keep one handler in the client so the deobfuscator - // keeps the client error handling related methods - if (cf.getName().equals("client") && m.getName().equals("init")) - { - foundInit = true; - continue; - } - - for (net.runelite.asm.attributes.code.Exception e : new ArrayList<>(c.getExceptions().getExceptions())) - { - if (e.getCatchType() != null && e.getCatchType().getName().equals("java/lang/RuntimeException")) - { - c.getExceptions().remove(e); - ++i; - } - } - } - } - - if (!foundInit) - { - throw new IllegalStateException("client.init(...) method seems to be missing!"); - } - - logger.info("Remove {} exception handlers", i); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnreachedCode.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnreachedCode.java deleted file mode 100644 index 5b3969181..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnreachedCode.java +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.execution.Execution; -import net.runelite.deob.Deobfuscator; - -public class UnreachedCode implements Deobfuscator -{ - private Execution execution; - - private int removeUnused(Method m) - { - Instructions ins = m.getCode().getInstructions(); - - int count = 0; - List insCopy = new ArrayList<>(ins.getInstructions()); - - for (int j = 0; j < insCopy.size(); ++j) - { - Instruction i = insCopy.get(j); - - if (!execution.executed.contains(i)) - { - // if this is an exception handler, the exception handler is never used... - for (net.runelite.asm.attributes.code.Exception e : new ArrayList<>(m.getCode().getExceptions().getExceptions())) - { - if (e.getStart().next() == i) - { - e.setStart(ins.createLabelFor(insCopy.get(j + 1))); - - if (e.getStart().next() == e.getEnd().next()) - { - m.getCode().getExceptions().remove(e); - continue; - } - } - if (e.getHandler().next() == i) - { - m.getCode().getExceptions().remove(e); - } - } - - if (i instanceof Label) - continue; - - ins.remove(i); - ++count; - } - } - return count; - } - - @Override - public void run(ClassGroup group) - { - group.buildClassGraph(); - - execution = new Execution(group); - execution.populateInitialMethods(); - execution.run(); - - int count = 0; - - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - if (m.getCode() == null) - continue; - - count += removeUnused(m); - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedClass.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedClass.java deleted file mode 100644 index f6c28b451..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedClass.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.deob.Deobfuscator; - -public class UnusedClass implements Deobfuscator -{ - @Override - public void run(ClassGroup group) - { - int count = 0; - for (ClassFile cf : new ArrayList<>(group.getClasses())) - { - if (!cf.getFields().isEmpty()) - { - continue; - } - - if (!cf.getMethods().isEmpty()) - { - continue; - } - - if (isImplemented(group, cf)) - { - continue; - } - - group.removeClass(cf); - ++count; - } - } - - private boolean isImplemented(ClassGroup group, ClassFile iface) - { - for (ClassFile cf : group.getClasses()) - { - if (cf.getInterfaces().getMyInterfaces().contains(iface)) - { - return true; - } - } - return false; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedFields.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedFields.java deleted file mode 100644 index ae972f6d2..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedFields.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.deob.Deobfuscator; - -public class UnusedFields implements Deobfuscator -{ - private final Set used = new HashSet<>(); - - private void checkForFieldUsage(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - if (code == null) - continue; - - for (Instruction ins : code.getInstructions().getInstructions()) - { - if (ins instanceof FieldInstruction) - { - FieldInstruction fi = (FieldInstruction) ins; - - used.add(fi.getMyField()); - } - } - } - } - - @Override - public void run(ClassGroup group) - { - checkForFieldUsage(group); - - int count = 0; - for (ClassFile cf : group.getClasses()) - for (Field f : new ArrayList<>(cf.getFields())) - if (!used.contains(f)) - { - cf.removeField(f); - ++count; - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedMethods.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedMethods.java deleted file mode 100644 index b7e093d0a..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedMethods.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.deob.Deob; -import net.runelite.deob.Deobfuscator; - -public class UnusedMethods implements Deobfuscator -{ - - private final Set methods = new HashSet<>(); - - @Override - public void run(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - run(method); - } - } - - int count = 0; - for (ClassFile cf : group.getClasses()) - { - boolean extendsApplet = extendsApplet(cf); - - for (Method method : new ArrayList<>(cf.getMethods())) - { - // constructors can't be renamed, but are obfuscated - if (!Deob.isObfuscated(method.getName()) && !method.getName().equals("")) - { - continue; - } - - if (extendsApplet && method.getName().equals("")) - { - continue; - } - - if (!methods.contains(method)) - { - - cf.removeMethod(method); - ++count; - } - } - } - - } - - private void run(Method method) - { - Code code = method.getCode(); - - if (code == null) - { - return; - } - - for (Instruction i : code.getInstructions().getInstructions()) - { - if (!(i instanceof InvokeInstruction)) - { - continue; - } - - InvokeInstruction ii = (InvokeInstruction) i; - - methods.addAll(ii.getMethods()); - } - } - - private static boolean extendsApplet(ClassFile cf) - { - if (cf.getParent() != null) - { - return extendsApplet(cf.getParent()); - } - return cf.getSuperName().equals("java/applet/Applet"); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedParameters.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedParameters.java deleted file mode 100644 index fb741310f..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/UnusedParameters.java +++ /dev/null @@ -1,301 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators; - -import com.google.common.collect.HashMultimap; -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Multimap; -import com.google.common.collect.Sets; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.signature.Signature; -import net.runelite.asm.signature.util.VirtualMethods; -import net.runelite.deob.Deob; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.Deobfuscator; -public class UnusedParameters implements Deobfuscator -{ - private final Map, Collection> unused = new HashMap<>(); - private final Multimap invokes = HashMultimap.create(); - - private void visit(InstructionContext ictx) - { - Instruction i = ictx.getInstruction(); - - if (!(i instanceof InvokeInstruction)) - { - return; - } - - invokes.put(i, ictx); - } - - private void buildUnused(ClassGroup group) - { - unused.clear(); - - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - if (!Deob.isObfuscated(m.getName())) - { - continue; - } - - List ms = VirtualMethods.getVirtualMethods(m); - Collection u = this.findUnusedParameters(ms); - if (!u.isEmpty()) - { - unused.put(ms, u); - } - } - } - } - - private boolean shouldRemove(Method m, int parameter) - { - final var a = m.findAnnotation(DeobAnnotations.OBFUSCATED_SIGNATURE); - if (a == null) - return false; - final var str = a.get("descriptor"); - - return parameter + 1 == new Signature((String) str).size(); - } - - private int processUnused(Execution execution, ClassGroup group) - { - int count = 0; - - for (Map.Entry, Collection> entry : unused.entrySet()) - { - List m = entry.getKey(); - Collection u = entry.getValue(); - - int offset = m.size() == 1 && m.get(0).isStatic() ? 0 : 1; - - for (int unusedParameter : u) - { - if (!shouldRemove(m.get(0), unusedParameter)) - { - continue; - } - - Signature descriptor = m.get(0).getDescriptor(); - int lvtIndex = this.getLvtIndex(descriptor, offset, unusedParameter); - /* removing the parameter can't cause collisions on other (overloaded) methods because prior to this we rename - * all classes/fields/methods to have unique names. - */ - removeParameter(group, m, descriptor, execution, unusedParameter, lvtIndex); - break; - } - - ++count; - } - - return count; - } - - private Set findUnusedParameters(Method method) - { - int offset = method.isStatic() ? 0 : 1; - Signature descriptor = method.getDescriptor(); - List unusedParams = new ArrayList<>(); - - for (int variableIndex = 0, lvtIndex = offset; - variableIndex < descriptor.size(); - lvtIndex += descriptor.getTypeOfArg(variableIndex++).getSize()) - { - List lv = method.findLVTInstructionsForVariable(lvtIndex); - if (lv == null || lv.isEmpty()) - { - unusedParams.add(variableIndex); - } - } - - return ImmutableSet.copyOf(unusedParams); - } - - @SuppressWarnings("empty-statement") - private int getLvtIndex(Signature signature, int offset, int parameter) - { - // get lvt index for parameter - int lvtIndex = offset; - for (int variableIndex = 0; - variableIndex < parameter; - lvtIndex += signature.getTypeOfArg(variableIndex++).getSize()); - return lvtIndex; - } - - public Collection findUnusedParameters(Collection methods) - { - Set list = null; - - for (Method m : methods) - { - Set p = findUnusedParameters(m); - - if (list == null) - { - list = p; - } - else - { - list = Sets.intersection(list, p); - } - } - - List l = new ArrayList<>(list != null ? list : new ArrayList<>()); // i know - Collections.sort(l); - Collections.reverse(l); - return l; - } - - public void removeParameter(ClassGroup group, List methods, Signature signature, Execution execution, int paramIndex, int lvtIndex) - { - int slots = signature.getTypeOfArg(paramIndex).getSize(); - - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code c = m.getCode(); - - if (c == null) - { - continue; - } - - for (Instruction i : new ArrayList<>(c.getInstructions().getInstructions())) - { - if (!(i instanceof InvokeInstruction)) - { - continue; - } - - InvokeInstruction ii = (InvokeInstruction) i; - - if (ii.getMethods().stream().noneMatch(methods::contains)) - { - continue; - } - - ii.removeParameter(paramIndex); // remove parameter from instruction - - Collection ics = invokes.get(i); - assert ics != null; - for (InstructionContext ins : ics) - { - int pops = signature.size() - paramIndex - 1; // index from top of stack of parameter. 0 is the last parameter - - StackContext sctx = ins.getPops().get(pops); - if (sctx.getPushed().getInstruction().getInstructions() == null) - { - continue; - } - - ins.removeStack(pops); // remove parameter from stack - } - } - } - } - - for (Method method : methods) - { - if (method.getCode() != null) - // adjust lvt indexes to get rid of idx in the method - { - for (Instruction ins : method.getCode().getInstructions().getInstructions()) - { - if (ins instanceof LVTInstruction) - { - LVTInstruction lins = (LVTInstruction) ins; - - int i = lins.getVariableIndex(); - assert i != lvtIndex; // current unused variable detection just looks for no accesses - - // reassign - if (i > lvtIndex) - { - assert i > 0; - assert i >= lvtIndex + slots; - - Instruction newIns = lins.setVariableIndex(i - slots); - assert ins == newIns; - } - } - } - } - } - - for (Method method : methods) - { - method.getDescriptor().remove(paramIndex); - } - } - - private int count; - - @Override - public void run(ClassGroup group) - { - int i; - - group.buildClassGraph(); - - invokes.clear(); - this.buildUnused(group); - - Execution execution = new Execution(group); - execution.addExecutionVisitor(this::visit); - execution.populateInitialMethods(); - execution.run(); - - i = this.processUnused(execution, group); - - count += i; - - } - - public int getCount() - { - return count; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/AssociatedConstant.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/AssociatedConstant.java deleted file mode 100644 index 8ff20b435..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/AssociatedConstant.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.arithmetic; - -// a constant associated to a field -class AssociatedConstant -{ - Number value; - boolean other; // whether or not another field is involved - boolean constant; // whether or not the constant is a constant field assignment - boolean getter; // whether or not this is associated as a getter - boolean setter; // whether or not this is associated as a setter -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DupDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DupDeobfuscator.java deleted file mode 100644 index 7a9cc6b08..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DupDeobfuscator.java +++ /dev/null @@ -1,258 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.arithmetic; - -import com.google.common.collect.Lists; -import java.util.List; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.Dup2_X1; -import net.runelite.asm.attributes.code.instructions.Dup_X1; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.Pop; -import net.runelite.asm.attributes.code.instructions.Pop2; -import net.runelite.asm.attributes.code.instructions.Swap; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.Deobfuscator; - -/** - * Removes the duplication of multiplication instructions to make - * MultiplicationDeobfuscator easier - * - * @author Adam - */ -public class DupDeobfuscator implements Deobfuscator -{ - - private int count; - - private void visit(InstructionContext i) - { - if (!(i.getInstruction() instanceof DupInstruction)) - { - return; - } - - DupInstruction di = (DupInstruction) i.getInstruction(); - - List sctxs = di.getDuplicated(i); // stack values being duplicated - - for (StackContext sctx : sctxs) - { - InstructionContext ic = sctx.getPushed(); - - if (ic.getInstruction() instanceof IMul) - { - if (i.getInstruction() instanceof Dup) - { - - undup(i); - ++count; - return; - } - if (i.getInstruction() instanceof Dup_X1) - { - - undup_x1(i); - ++count; - return; - } - - } - else if (ic.getInstruction() instanceof LMul) - { - if (i.getInstruction() instanceof Dup2_X1) - { - - undup2_x1(i); - ++count; - return; - } - - } - } - - // find if mul pops anything duplicated - sctxs = di.getCopies(i); - - for (StackContext sctx : sctxs) - { - for (InstructionContext ic : sctx.getPopped()) - { - if (ic.getInstruction() instanceof IMul) - { - if (i.getInstruction() instanceof Dup) - { - - undup(i); - ++count; - return; - } - if (i.getInstruction() instanceof Dup_X1) - { - - undup_x1(i); - ++count; - return; - } - - } - else if (ic.getInstruction() instanceof LMul) - { - if (i.getInstruction() instanceof Dup2_X1) - { - - undup2_x1(i); - ++count; - return; - } - - } - } - } - } - - private void undup(InstructionContext ictx) - { - assert ictx.getInstruction() instanceof Dup; - - Instructions instructions = ictx.getInstruction().getInstructions(); - - StackContext duplicated = ictx.getPops().get(0); - - int idx = instructions.getInstructions().indexOf(ictx.getInstruction()); - assert idx != -1; - - // replace dup with duplicated instructions - instructions.remove(ictx.getInstruction()); - - // insert copy - copy(duplicated, instructions, idx); - } - - private void undup_x1(InstructionContext ictx) - { - assert ictx.getInstruction() instanceof Dup_X1; - - Instructions instructions = ictx.getInstruction().getInstructions(); - - StackContext duplicated = ictx.getPops().get(0); - - // replace dup_x1 with swap - int idx = instructions.replace(ictx.getInstruction(), new Swap(instructions)); - - // copy imul and insert after idx - copy(duplicated, instructions, idx + 1); - } - - private void undup2_x1(InstructionContext ictx) - { - assert ictx.getInstruction() instanceof Dup2_X1; - assert ictx.getPops().size() == 2; // only support this form - - // I L -> L I L - - Instructions instructions = ictx.getInstruction().getInstructions(); - - // can't swap a long on the stack, so - - int idx = instructions.getInstructions().indexOf(ictx.getInstruction()); - assert idx != -1; - - instructions.remove(ictx.getInstruction()); // remove dup2_x1 - instructions.addInstruction(idx++, new Pop2(instructions)); // pop long - instructions.addInstruction(idx++, new Pop(instructions)); // pop int - - // insert copy of long - idx = copy(ictx.getPops().get(0), instructions, idx); - // insert copy of int - idx = copy(ictx.getPops().get(1), instructions, idx); - // insert copy of long - /* idx = */ copy(ictx.getPops().get(0), instructions, idx); - } - - /** - * copy the instruction which pushed sctx and insert into instructions - * starting at index idx - */ - private int copy(StackContext sctx, Instructions instructions, int idx) - { - InstructionContext ictx = sctx.getPushed(); - - if (ictx.getInstruction() instanceof DupInstruction) - { - // we only care about one path - DupInstruction di = (DupInstruction) ictx.getInstruction(); - sctx = di.getOriginal(sctx); - ictx = sctx.getPushed(); - } - - // copy required instructions - // the first thing popped was pushed last, so reverse - for (StackContext s : Lists.reverse(ictx.getPops())) - { - idx = copy(s, instructions, idx); - } - - // copy instruction - Instruction i = ictx.getInstruction(); - - i = i.clone(); - - instructions.addInstruction(idx, i); - return idx + 1; // move on to next instruction - } - - private void visit(MethodContext mctx) - { - for (InstructionContext ictx : mctx.getInstructionContexts()) - { - if (ictx.getInstruction().getInstructions() == null) - { - // already removed? - continue; - } - - visit(ictx); - } - } - - @Override - public void run(ClassGroup group) - { - Execution e = new Execution(group); - e.addMethodContextVisitor(m -> visit(m)); - e.populateInitialMethods(); - e.run(); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Encryption.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Encryption.java deleted file mode 100644 index ca7a47c33..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Encryption.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators.arithmetic; - -import java.util.HashMap; -import java.util.Map; -import net.runelite.asm.pool.Field; - -class Encryption -{ - private final Map fields = new HashMap<>(); - - void addPair(Pair pair) - { - assert pair.field != null; - - Pair existing = fields.get(pair.field); - if (existing != null) - { - // if this is a subsequent guess, then the new guess - // is multiplied into the old guess - fields.put(pair.field, new Pair(pair, existing)); - } - else - { - fields.put(pair.field, pair); - } - } - - Pair getField(Field field) - { - return fields.get(field); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/FieldInfo.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/FieldInfo.java deleted file mode 100644 index 7f7f33db7..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/FieldInfo.java +++ /dev/null @@ -1,165 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.arithmetic; - -import static java.lang.Math.abs; -import java.util.Collection; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import java.util.stream.Collectors; -import static net.runelite.deob.deobfuscators.arithmetic.DMath.multiply; - -class FieldInfo -{ - public final Set getters = new HashSet<>(); - public final Set setters = new HashSet<>(); - public final Set constants = new HashSet<>(); - - boolean guessDecreasesConstants(Pair guess) - { - if (getters.isEmpty() && setters.isEmpty()) - { - return false; - } - - if (guess.getter.longValue() == -1 && guess.setter.longValue() == -1) - { - // special case - when guess is -1/-1, checking the abs(total) - // is not helpful. instead look for both: - // associated non-constant of value -1 - // no non-constant non-other values (indicative of field being - // obfuscated still since if it used elsewhere it would have - // an associated constant) - // - // this is really only her to fight: - // client.java: field975 = field974; - // client.java: field974 = field971; - // when field974 is only used in combination with field975 - // and is initialized to -1. This causes causes guess() - // to guess a negated getter which then causes - // client.java: field975 = field974 * -1; - // client.java: field974 = field971 * -1; - // And it becomes difficult to prevent both fields being - // multiplied by -1 on each round. field975 has some other - // uses. - - // only change if there is a -1 in the non constant - // and also there is a non constant non other too - List value2 = constants.stream() - .filter(i -> !i.constant) - .map(i -> i.value) - .collect(Collectors.toList()); - - List value = constants.stream() - .filter(i -> !i.other) - .filter(i -> !i.constant) - .map(i -> i.value) - .collect(Collectors.toList()); - return value.isEmpty() && value2.contains(-1); - } - - // remove possibe getters that are: - // - a constant - they don't necessarilly decrease when deobfuscated - // - are multiplied into another field - // - are both a getter and setter - Collection gettersFiltered = getters.stream() - .filter(number -> isOkay(number)) - .collect(Collectors.toSet()); - - Collection settersFiltered = setters.stream() - .filter(number -> isOkay(number)) - .collect(Collectors.toSet()); - - if (!gettersFiltered.isEmpty()) - { - long before = gettersFiltered.stream() - .mapToLong(number -> abs(downsample(number).longValue())) - .sum(); - long after = gettersFiltered.stream() - .mapToLong(number -> abs(downsample(multiply(number, guess.setter)).longValue())) - .sum(); - - assert before >= 0; - assert after >= 0; - - // If the total value of the getters is more, assume - // the guess is bad. Ideally the values go to 1, so - // 'after' will be small. - if (after > before) - { - return false; - } - } - - if (!settersFiltered.isEmpty()) - { - long beforeSetter = settersFiltered.stream() - .mapToLong(number -> abs(downsample(number).longValue())) - .sum(); - - long afterSetter = settersFiltered.stream() - .mapToLong(number -> abs(downsample(multiply(number, guess.getter)).longValue())) - .sum(); - - assert beforeSetter >= 0; - assert afterSetter >= 0; - - if (afterSetter > beforeSetter) - { - return false; - } - } - - return true; - } - - private boolean isOkay(Number number) - { - for (AssociatedConstant c : constants) - { - if (c.value.equals(number) - && !c.constant - && !c.other - && !(c.setter && c.getter)) - { - return true; - } - } - return false; - } - - // summation of longs probably overflows, - // so only use the most significant 32 bits - private Number downsample(Number number) - { - if (number instanceof Long) - { - long l = (Long) number; - return l >>> 32; - } - return number; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/ModArith.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/ModArith.java deleted file mode 100644 index bd6c694d3..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/ModArith.java +++ /dev/null @@ -1,795 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.arithmetic; - -import com.google.common.collect.ImmutableSet; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; - -import meteor.Logger; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ArrayLoad; -import net.runelite.asm.attributes.code.instruction.types.ArrayStoreInstruction; -import net.runelite.asm.attributes.code.instruction.types.DivisionInstruction; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.IShR; -import net.runelite.asm.attributes.code.instructions.ISub; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.If0; -import net.runelite.asm.attributes.code.instructions.LAdd; -import net.runelite.asm.attributes.code.instructions.LCmp; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.LSub; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.Deobfuscator; -import static net.runelite.deob.deobfuscators.arithmetic.DMath.modInverse; -import static net.runelite.deob.deobfuscators.arithmetic.DMath.multiply; - -public class ModArith implements Deobfuscator -{ - private static final Logger logger = new Logger("deob"); - - private ClassGroup group; - private Execution execution; - private final Map fieldInfo = new HashMap<>(); - private List pairs = new ArrayList<>(); - private Encryption encryption = new Encryption(); - - private FieldInfo getFieldInfo(Field field) - { - FieldInfo f = fieldInfo.get(field); - if (f == null) - { - f = new FieldInfo(); - fieldInfo.put(field, f); - } - return f; - } - - private static List getInsInExpr(InstructionContext ctx, Set set, boolean imul) - { - List l = new ArrayList<>(); - - if (ctx == null || set.contains(ctx.getInstruction())) - { - return l; - } - - set.add(ctx.getInstruction()); - - if (imul) - { - if (!(ctx.getInstruction() instanceof IMul) & !(ctx.getInstruction() instanceof LMul)) - { - l.add(ctx); - return l; - } - } - else - { - // invoke and array store pops are unrelated to each other - if (ctx.getInstruction() instanceof InvokeInstruction - || ctx.getInstruction() instanceof ArrayStoreInstruction - || ctx.getInstruction() instanceof ArrayLoad - || ctx.getInstruction() instanceof If - || ctx.getInstruction() instanceof If0 - || ctx.getInstruction() instanceof LCmp - || ctx.getInstruction() instanceof DivisionInstruction - || ctx.getInstruction() instanceof IShR) - { - return l; - } - - l.add(ctx); - } - - for (StackContext s : ctx.getPops()) - { - l.addAll(getInsInExpr(s.getPushed(), set, imul)); - } - for (StackContext s : ctx.getPushes()) - { - for (InstructionContext i : s.getPopped()) - { - l.addAll(getInsInExpr(i, set, imul)); - } - } - - return l; - } - - // find associated constants with each field - private void findConstants(MethodContext mctx) - { - for (InstructionContext ctx : mctx.getInstructionContexts()) - { - if (ctx.getInstruction() instanceof FieldInstruction) - { - FieldInstruction fi = (FieldInstruction) ctx.getInstruction(); - - if (fi.getMyField() == null) - { - continue; - } - - if ((!fi.getField().getType().equals(Type.INT) - && !fi.getField().getType().equals(Type.LONG)) - || fi.getField().getType().isArray()) - { - continue; - } - - FieldInfo fieldInfo = getFieldInfo(fi.getMyField()); - - @SuppressWarnings("unchecked") List l = getInsInExpr(ctx, new HashSet(), false); - boolean other = false; // check if this contains another field - boolean getter = false, setter = false; - for (InstructionContext i : l) - { - if (i.getInstruction() instanceof FieldInstruction) - { - FieldInstruction fi2 = (FieldInstruction) i.getInstruction(); - Field myField = fi2.getMyField(); - - if (myField != null && myField != fi.getMyField()) - { - Type t = myField.getType(); - if (t.equals(fi.getMyField().getType())) - { - other = true; - } - } - - else if (myField != null && myField == fi.getMyField()) - { - if (fi2 instanceof SetFieldInstruction) - { - setter = true; - } - else - { - getter = true; - } - } - } - } - - // check if this is a constant assignment - boolean constant = false; - if (fi instanceof SetFieldInstruction) - { - InstructionContext pushedsfi = ctx.getPops().get(0).getPushed(); // value being set - pushedsfi = pushedsfi.resolve(ctx.getPops().get(0)); - - if (pushedsfi.getInstruction() instanceof LDC) - { - constant = true; - } - } - - for (InstructionContext i : l) - { - if (i.getInstruction() instanceof LDC) - { - PushConstantInstruction w = (PushConstantInstruction) i.getInstruction(); - if (w.getConstant() instanceof Integer || w.getConstant() instanceof Long) - { - AssociatedConstant n = new AssociatedConstant(); - n.value = (Number) w.getConstant(); - n.other = other; - n.constant = constant; - n.getter = getter; - n.setter = setter; - fieldInfo.constants.add(n); - } - } - } - } - } - } - - // find potential getters/setters for each field - private void findUses(MethodContext mctx) - { - for (InstructionContext ctx : mctx.getInstructionContexts()) - { - if (ctx.getInstruction() instanceof IMul || ctx.getInstruction() instanceof LMul) - { - Instruction one = ctx.getPops().get(0).getPushed().getInstruction(); - Instruction two = ctx.getPops().get(1).getPushed().getInstruction(); - - PushConstantInstruction pc = null; - GetFieldInstruction gf = null; - if (one instanceof PushConstantInstruction && two instanceof GetFieldInstruction) - { - pc = (PushConstantInstruction) one; - gf = (GetFieldInstruction) two; - } - else if (two instanceof PushConstantInstruction && one instanceof GetFieldInstruction) - { - pc = (PushConstantInstruction) two; - gf = (GetFieldInstruction) one; - } - - if (pc == null) - { - continue; - } - - Field field = gf.getMyField(); - if (field == null) - { - continue; - } - - FieldInfo fieldInfo = getFieldInfo(field); - - // parse the full multiplication expression to - // get all associated constants - @SuppressWarnings("unchecked") List insInExpr = getInsInExpr(ctx, new HashSet(), true); - - for (InstructionContext ctx2 : insInExpr) - { - if (!(ctx2.getInstruction() instanceof PushConstantInstruction)) - { - continue; - } - - PushConstantInstruction pci3 = (PushConstantInstruction) ctx2.getInstruction(); - Number value = (Number) pci3.getConstant(); - - // field * constant - if (value instanceof Integer || value instanceof Long) - { - fieldInfo.getters.add(value); - } - } - } - else if (ctx.getInstruction() instanceof SetFieldInstruction) - { - SetFieldInstruction sf = (SetFieldInstruction) ctx.getInstruction(); - - Field field = sf.getMyField(); - if (field == null) - { - continue; - } - - FieldInfo fieldInfo = getFieldInfo(field); - - InstructionContext pushedsfi = ctx.getPops().get(0).getPushed(); // value being set - pushedsfi = pushedsfi.resolve(ctx.getPops().get(0)); - - if (!(pushedsfi.getInstruction() instanceof IMul) && !(pushedsfi.getInstruction() instanceof LMul) - && !(pushedsfi.getInstruction() instanceof IAdd) && !(pushedsfi.getInstruction() instanceof LAdd) - && !(pushedsfi.getInstruction() instanceof ISub) && !(pushedsfi.getInstruction() instanceof LSub)) - { - if (pushedsfi.getInstruction() instanceof LDC) - { - PushConstantInstruction ldc = (PushConstantInstruction) pushedsfi.getInstruction(); - - if (ldc.getConstant() instanceof Integer || ldc.getConstant() instanceof Long) - { - Number i = (Number) ldc.getConstant(); - - // field = constant - fieldInfo.setters.add(i); - } - } - continue; - } - - Instruction one = pushedsfi.getPops().get(0).getPushed().getInstruction(); - Instruction two = pushedsfi.getPops().get(1).getPushed().getInstruction(); - - // field = field + imul - if (pushedsfi.getInstruction() instanceof IAdd) - { - if (one instanceof IMul && two instanceof GetFieldInstruction) - { - one = pushedsfi.getPops().get(0).getPushed().getPops().get(0).getPushed().getInstruction(); - two = pushedsfi.getPops().get(0).getPushed().getPops().get(1).getPushed().getInstruction(); - } - } - - // if both one and two are constants then one of them must not be a setter - PushConstantInstruction pc = null; - if (one instanceof PushConstantInstruction - && !(two instanceof PushConstantInstruction)) - { - pc = (PushConstantInstruction) one; - } - else if (two instanceof PushConstantInstruction - && !(one instanceof PushConstantInstruction)) - { - pc = (PushConstantInstruction) two; - } - - if (pc == null) - { - continue; - } - - Number value2 = (Number) pc.getConstant(); - - // field = something * constant - if (value2 instanceof Integer || value2 instanceof Long) - { - fieldInfo.setters.add(value2); - } - } - } - } - - private Pair guess(Field field, Collection constants) - { - if (constants.isEmpty()) - { - return null; - } - - // multiply each by each, - // lowest number wins - Number s1 = 0, s2 = 0; - Number smallest = 0; - for (Number i : constants) - { - for (Number i2 : constants) - { - if (DMath.equals(i, 0) || DMath.equals(i2, 0) - || DMath.equals(i, 1) || DMath.equals(i2, 1)) - { - continue; - } - - if (i.equals(i2)) - { - // it is never i*i. if there is only one constant, - // prefer i*inverse(i) if possible by setting i2 - // to 1 - if (i2 instanceof Integer) - { - i2 = 1; - } - else if (i2 instanceof Long) - { - i2 = 1L; - } - } - - Number result = multiply(i, i2); - - if (DMath.equals(result, 0)) - { - continue; - } - - boolean smaller; - if (smallest.longValue() == 0L - // abs(MIN_VALUE) is MIN_VALUE - it is not the smallest - || (result instanceof Long && Long.MIN_VALUE == result.longValue()) - || (result instanceof Integer && Integer.MIN_VALUE == result.intValue())) - { - smaller = false; - } - else if (i instanceof Long) - { - smaller = Math.abs((long) result) < Math.abs((long) smallest); - } - else - { - smaller = Math.abs((int) result) < Math.abs((int) smallest); - } - - if (DMath.equals(smallest, 0) || DMath.equals(result, 1) || smaller) - { - s1 = i; - s2 = i2; - smallest = result; - } - } - } - - if (!DMath.equals(smallest, 1)) - { - // smallest s1*s2 is not 1 - if (DMath.isInversable(smallest)) - { - // s1*s2=smallest - // divide both sides by inverse(smallest) - // to make the right hand side 1 - - // pick s1/s2 depending on which one isn't inversible - if (DMath.isInversable(s1)) - { - s2 = multiply(s2, modInverse(smallest)); - smallest = 1; // rhs goes to one - assert multiply(s1, s2).intValue() == 1; - } - else if (DMath.isInversable(s2)) - { - s1 = multiply(s1, modInverse(smallest)); - smallest = 1; - assert multiply(s1, s2).intValue() == 1; - } - else - { - return null; - } - } - else - { - // s1*s2 is not 1 and smallest is not inversible - // calculate a new s1 or s2 if one is inversible - if (DMath.isInversable(s1)) - { - // assume this is s1 * (s2 * constant) = 1 * constant - Number newTwo = modInverse(s1); // we guess s2 is actually this - // check if s2 * constant = old value of s2 - if (multiply(newTwo, smallest).equals(s2)) - { - s2 = newTwo; // s2 changes to new value - smallest = 1; // rhs goes to 1 - assert multiply(s1, s2).intValue() == 1; - } - } - else if (DMath.isInversable(s2)) - { - Number newOne = modInverse(s2); - if (multiply(newOne, smallest).equals(s1)) - { - s1 = newOne; - smallest = 1; - assert multiply(s1, s2).intValue() == 1; - } - } - else - { - return null; - } - } - } - - // Now that we have two constants, figure out which one is - // the getter and which is the setter - boolean g = isGetterOrSetter(field, true, s1), - g2 = isGetterOrSetter(field, true, s2); - - boolean inverse = false; - if (g == g2) - { - // both are getters - inverse = true; - g = isGetterOrSetter(field, false, s1); - g2 = isGetterOrSetter(field, false, s2); - } - - if (g == g2) - { - // special case, when the guessted value is correct but - // negated, setters and getters will both contain -1, - // and the guess will be -1/-1. - if (s1.longValue() == -1L && s2.longValue() == -1L) - { - Pair p = new Pair(); - p.field = field.getPoolField(); - p.getter = s1; - p.setter = s2; - return p; - } - // both are also setters - } - else - { - Pair p = new Pair(); - p.field = field.getPoolField(); - if (g != inverse) - { - p.getter = s1; - p.setter = s2; - } - else - { - p.getter = s2; - p.setter = s1; - } - return p; - } - return null; - } - - // figure out if value is a getter or setter - private boolean isGetterOrSetter(Field field, boolean getter, Number value) - { - FieldInfo fieldInfo = getFieldInfo(field); - - Collection c; - if (getter) - { - c = fieldInfo.getters; - } - else - { - c = fieldInfo.setters; - } - if (c == null) - { - return false; - } - - if (c.contains(value)) - { - return true; - } - - return false; - } - - private void guess() - { - for (ClassFile cf : group.getClasses()) - { - for (Field f : cf.getFields()) - { - FieldInfo fieldInfo = getFieldInfo(f); - - Collection col = fieldInfo.constants; // all constants in instructions associated with the field - if (col.isEmpty()) - { - continue; - } - - Type type = f.getType(); - assert type.equals(Type.INT) || type.equals(Type.LONG); - - Class typeOfField = type.equals(Type.INT) ? Integer.class : Long.class; - - // filter collect constants of the correct type - Collection col2 = col.stream() - .filter(i -> i.value.getClass() == typeOfField) - .collect(Collectors.toList()); - - // filer out ones that have another field in the expression - List noOther = col2.stream() - .filter(i -> !i.other && !i.constant) - .map(i -> i.value) - .distinct() - .collect(Collectors.toList()); - List other = col2.stream() - .filter(i -> i.other || i.constant) - .map(i -> i.value) - .collect(Collectors.toList()); - other.addAll(noOther); - other = ImmutableSet.copyOf(other).asList(); - - // guess with constants not associated with other fields - Pair p = this.guess(f, noOther); - if (p == null) - { - p = this.guess(f, other); // fall back to all constants - } - - // check that this guess doesn't increase constants - if (p != null && !fieldInfo.guessDecreasesConstants(p)) - { - continue; - } - if (p != null) - { - pairs.add(p); - } - } - } - } - - @Override - public void run(ClassGroup group) - { - this.group = group; - } - - private void insertGetterSetterMuls(Encryption encr) - { - // after getfield insert imul * setter - // before setfield insert imul * getter - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - if (code == null) - { - continue; - } - - Instructions ins = code.getInstructions(); - List ilist = ins.getInstructions(); - - for (int i = 0; i < ilist.size(); ++i) - { - Instruction in = ilist.get(i); - - if (in instanceof SetFieldInstruction) - { - SetFieldInstruction sfi = (SetFieldInstruction) in; - Field f = sfi.getMyField(); - - if (f == null) - { - continue; - } - - Pair p = encr.getField(f.getPoolField()); - if (p == null) - { - continue; - } - - // insert push getter - // insert imul - if (p.getType() == Integer.class) - { - ilist.add(i++, new LDC(ins, (int) p.getter)); - ilist.add(i++, new IMul(ins)); - } - else if (p.getType() == Long.class) - { - ilist.add(i++, new LDC(ins, (long) p.getter)); - ilist.add(i++, new LMul(ins)); - } - else - { - throw new IllegalStateException(); - } - } - else if (in instanceof GetFieldInstruction) - { - GetFieldInstruction sfi = (GetFieldInstruction) in; - Field f = sfi.getMyField(); - - if (f == null) - { - continue; - } - - Pair p = encr.getField(f.getPoolField()); - if (p == null) - { - continue; - } - - // add after: - // push setter - // imul - if (p.getType() == Integer.class) - { - ilist.add(++i, new LDC(ins, (int) p.setter)); - ilist.add(++i, new IMul(ins)); - } - else if (p.getType() == Long.class) - { - ilist.add(++i, new LDC(ins, (long) p.setter)); - ilist.add(++i, new LMul(ins)); - } - else - { - throw new IllegalStateException(); - } - } - } - } - } - } - - public int runOnce() - { - group.buildClassGraph(); - - pairs.clear(); - fieldInfo.clear(); - - execution = new Execution(group); - execution.addMethodContextVisitor(i -> findUses(i)); - execution.addMethodContextVisitor(i -> findConstants(i)); - execution.populateInitialMethods(); - execution.run(); - - guess(); - - int i = 0; - Encryption encr = new Encryption(); - for (Pair pair : pairs) - { - logger.debug("Processing {} getter {} setter {}", pair.field.getName(), pair.getter, pair.setter); - - encr.addPair(pair); - encryption.addPair(pair); // sum total - ++i; - } - - logger.info("Done processing {}", i); - - if (i > 0) - { - insertGetterSetterMuls(encr); - } - - return i; - } - - public void annotateEncryption() - { - for (ClassFile cf : group.getClasses()) - { - for (Field f : cf.getFields()) - { - Pair pair = encryption.getField(f.getPoolField()); - if (pair == null) - { - continue; - } - - if (pair.getter.longValue() == 1L) - { - continue; - } - - String ename = pair.getType() == Long.class - ? "longValue" - : "intValue"; - f.addAnnotation(DeobAnnotations.OBFUSCATED_GETTER, ename, pair.getter); - } - } - } - - Encryption getEncryption() - { - return encryption; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationDeobfuscator.java deleted file mode 100644 index 4e00a8c18..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationDeobfuscator.java +++ /dev/null @@ -1,395 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators.arithmetic; - -import java.util.Collection; -import java.util.HashSet; -import java.util.Set; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.BiPush; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.IInc; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.ISub; -import net.runelite.asm.attributes.code.instructions.LAdd; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.LSub; -import net.runelite.asm.attributes.code.instructions.SiPush; -import net.runelite.asm.attributes.code.instructions.Swap; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.execution.Variables; -import net.runelite.deob.Deobfuscator; - -public class MultiplicationDeobfuscator implements Deobfuscator -{ - - private ClassGroup group; - - @Override - public void run(ClassGroup group) - { - this.group = group; - - int i; - int count = 0; - while ((i = runOnce()) > 0) - { - count += i; - } - } - - public static MultiplicationExpression parseExpression(InstructionContext ctx, Class want) - { - MultiplicationExpression me = new MultiplicationExpression(); - - if (ctx.getInstruction() instanceof LVTInstruction) - { - LVTInstruction lvt = (LVTInstruction) ctx.getInstruction(); - - // loading a variable - if (!lvt.store()) - { - int idx = lvt.getVariableIndex(); // var index - Variables vars = ctx.getVariables(); // variables at time of execution - - VariableContext vctx = vars.get(idx); // get the variable - - if (vctx.getRead().size() == 1) // ? - { - InstructionContext storeCtx = vctx.getInstructionWhichStored(); // this is an istore - if (storeCtx.getInstruction() instanceof LVTInstruction) - { - // invoking funcs can put stuff in lvt - - LVTInstruction storelvt = (LVTInstruction) storeCtx.getInstruction(); - - if (storelvt instanceof IInc) - throw new IllegalStateException(); - - assert storelvt.store(); - - InstructionContext pushed = storeCtx.getPops().get(0).getPushed(); - return parseExpression(pushed, want); - } - } - } - } - - if (ctx.getInstruction() instanceof PushConstantInstruction) - { - if (ctx.getInstruction() instanceof BiPush || ctx.getInstruction() instanceof SiPush) - { - throw new IllegalStateException(); - } - - me.instructions.add(ctx); - return me; - } - - for (StackContext sctx : ctx.getPops()) - { - if (ctx.getInstruction().getClass() == want) - { - if (!isOnlyPath(ctx, sctx)) - continue; - } - - InstructionContext i = sctx.getPushed(); - - // if this instruction is imul, look at pops - if (ctx.getInstruction().getClass() == want) - { - if (i.getInstruction() instanceof Swap) - { - - Swap swap = (Swap) i.getInstruction(); - sctx = swap.getOriginal(sctx); - i = sctx.getPushed(); - } - - if (i.getInstruction() instanceof PushConstantInstruction) - { - // bipush/sipush are always not obfuscated - if (i.getInstruction() instanceof BiPush || i.getInstruction() instanceof SiPush) - continue; - - // a constant of imul - me.instructions.add(i); - } - else if (i.getInstruction().getClass() == want) - { - // chained imul, append to me - try - { - MultiplicationExpression other = parseExpression(i, want); - if (other.dupmagic != null) - { - assert me.dupmagic == null; - me.dupmagic = other.dupmagic; - } - - me.instructions.addAll(other.instructions); - me.dupedInstructions.addAll(other.dupedInstructions); - me.subexpressions.addAll(other.subexpressions); - } - catch (IllegalStateException ex) - { - // this is ok? just don't include it? - } - } - else if (i.getInstruction() instanceof IAdd || i.getInstruction() instanceof ISub - || i.getInstruction() instanceof LAdd || i.getInstruction() instanceof LSub) - { - // imul using result of iadd or isub. evaluate expression - try - { - MultiplicationExpression other = parseExpression(i, want); - assert other.dupmagic == null; - - // subexpr - me.subexpressions.add(other); - } - catch (IllegalStateException ex) - { - assert me.subexpressions.isEmpty(); - // subexpression is too complex. we can still simplify the top level though - } - } - else if (i.getInstruction() instanceof DupInstruction) - { - DupInstruction dup = (DupInstruction) i.getInstruction(); - - // find other branch of the dup instruction - // sctx = what dup pushed, find other - StackContext otherCtx = dup.getOtherBranch(sctx); // other side of dup - InstructionContext otherCtxI = otherCtx.getPopped().get(0); // what popped other side of dup. is this right? - - if (otherCtxI.getInstruction().getClass() == want) - { - //assert otherCtxI.getInstruction() instanceof IMul; - - InstructionContext pushConstant = otherCtxI.getPops().get(0).getPushed(); // other side of that imul - assert pushConstant.getInstruction() instanceof LDC; - - me.dupmagic = pushConstant; - - StackContext orig = dup.getOriginal(sctx); // original - try - { - MultiplicationExpression other = parseExpression(orig.getPushed(), want); - // this expression is used elsewhere like 'pushConstant' so any changes - // done to it affect that, too. so multiply it by existing values? - if (orig.getPushed().getInstruction() instanceof IAdd || orig.getPushed().getInstruction() instanceof ISub - || orig.getPushed().getInstruction() instanceof LAdd || orig.getPushed().getInstruction() instanceof LSub) - { - me.subexpressions.add(other); - } - else - { - assert other.dupmagic == null; - me.instructions.addAll(other.instructions); - me.dupedInstructions.addAll(other.instructions); - me.subexpressions.addAll(other.subexpressions); - } - } - catch (IllegalStateException ex) - { - assert me.subexpressions.isEmpty(); - } - } - } - else if (i.getInstruction() instanceof GetFieldInstruction) - { - me.fieldInstructions.add(i); - // non constant, ignore - } - else - { - //System.out.println("imul pops something I don't know " + i.getInstruction()); - } - } - // this is an iadd/sub - else if (ctx.getInstruction() instanceof IAdd || ctx.getInstruction() instanceof ISub - || ctx.getInstruction() instanceof LAdd || ctx.getInstruction() instanceof LSub) - { - MultiplicationExpression other = parseExpression(i, want); // parse this side of the add/sub - - me.subexpressions.add(other); - } - else - { - //System.out.println(ctx.getInstruction() + " pops something I dont know " + i.getInstruction()); - } - } - - if (me.instructions.isEmpty() && me.subexpressions.isEmpty()) - throw new IllegalStateException(); - - return me; - } - - // one = imul, two = other executeion of instruction of one, sctx = popped by imul - private static boolean ictxEqualsDir(InstructionContext one, InstructionContext two, StackContext sctx) - { - assert one.getInstruction() == two.getInstruction(); - - if (one.getInstruction() != two.getInstruction()) - return false; - - assert one.getPops().contains(sctx); - int i = one.getPops().indexOf(sctx); - - StackContext theirsctx = two.getPops().get(i); - - if (sctx.getPushed().getInstruction() != theirsctx.getPushed().getInstruction()) - return false; - - return true; - } - - // ctx = imul, sctx = popped by imul - public static boolean isOnlyPath(InstructionContext ctx, StackContext sctx) - { - assert ctx.getInstruction() instanceof IMul || ctx.getInstruction() instanceof LMul; - - Collection ins = ctx.getFrame().getMethodCtx().getInstructonContexts(ctx.getInstruction()); - for (InstructionContext i : ins) - { - if (sctx == null) - { - if (!i.equals(ctx)) - { - return false; - } - - for (StackContext sctx2 : i.getPushes()) - { - if (sctx2.getPopped().size() > 1) - { - return false; - } - } - } - else - { - // everything which pushed the parameters must be the same - if (!ictxEqualsDir(ctx, i, sctx)) - { - return false; - } - - // everything which pops the result must be the same - Instruction poppedIns = null; - for (StackContext s : i.getPushes()) - for (InstructionContext i2 : s.getPopped()) - { - if (poppedIns == null) - poppedIns = i2.getInstruction(); - else if (poppedIns != i2.getInstruction()) - return false; - } - } - } - return true; - } - - private Set done = new HashSet<>(); - - private void visit(MethodContext ctx) - { - for (InstructionContext ictx : ctx.getInstructionContexts()) - { - Instruction instruction = ictx.getInstruction(); - - if (!(instruction instanceof IMul) && !(instruction instanceof LMul)) - { - continue; - } - - MultiplicationExpression expression; - try - { - expression = parseExpression(ictx, instruction.getClass()); - } - catch (IllegalStateException ex) - { - continue; - } - - if (expression == null) - { - continue; - } - - if (done.contains(instruction)) - { - continue; - } - done.add(instruction); - - assert instruction instanceof IMul || instruction instanceof LMul; - if (instruction instanceof IMul) - { - count += expression.simplify(1); - } - else if (instruction instanceof LMul) - { - count += expression.simplify(1L); - } - else - { - throw new IllegalStateException(); - } - } - } - - int count; - - private int runOnce() - { - group.buildClassGraph(); - - count = 0; - - Execution e = new Execution(group); - e.addMethodContextVisitor(m -> visit(m)); - e.populateInitialMethods(); - e.run(); - - return count; - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationExpression.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationExpression.java deleted file mode 100644 index 6386f228c..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplicationExpression.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators.arithmetic; - -import java.util.ArrayList; -import java.util.List; -import net.runelite.asm.Field; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.InstructionContext; - -public class MultiplicationExpression -{ - List instructions = new ArrayList<>(), // push constant instructions that are being multiplied - dupedInstructions = new ArrayList<>(), - fieldInstructions = new ArrayList<>(); - List subexpressions = new ArrayList<>(); // for distributing, each subexpr is * by this - InstructionContext dupmagic; // inverse of what is distributed to subexpressions gets set here - - int simplify(Number start) - { - int count = 0; - Number result = start; - - // calculate result - for (InstructionContext i : instructions) - { - PushConstantInstruction pci = (PushConstantInstruction) i.getInstruction(); - Number value = (Number) pci.getConstant(); - - result = DMath.multiply(result, value); - } - - if (dupmagic != null) - { - // mul dupmagic by result of dup ins? - - PushConstantInstruction pci = (PushConstantInstruction) dupmagic.getInstruction(); - Number value = (Number) pci.getConstant(); - - for (InstructionContext ic : dupedInstructions) - { - PushConstantInstruction pci2 = (PushConstantInstruction) ic.getInstruction(); - Number value2 = (Number) pci2.getConstant(); - - value = DMath.multiply(value, value2); - } - - Instruction newIns = pci.setConstant(value); - assert newIns == (Instruction) pci; - } - - // multiply subexpressions by result - if (!subexpressions.isEmpty()) - { - for (MultiplicationExpression me : subexpressions) - { - count += me.simplify(result); - } - - if (dupmagic != null) - { - PushConstantInstruction pci = (PushConstantInstruction) dupmagic.getInstruction(); - Number value = (Number) pci.getConstant(); - - value = DMath.multiply(value, DMath.modInverse(result)); - - pci.setConstant(value); - } - - // constant has been distributed, outer numbers all go to 1 - if (result instanceof Long) - result = 1L; - else - result = 1; - } - - // set result on ins - for (InstructionContext i : instructions) - { - PushConstantInstruction pci = (PushConstantInstruction) i.getInstruction(); - Instruction newIns = pci.setConstant(result); - ++count; - assert newIns == pci; - // rest of the results go to 1 - if (result instanceof Long) - result = 1L; - else - result = 1; - } - - return count; - } - - public boolean hasFieldOtherThan(Field field) - { - for (InstructionContext i : this.fieldInstructions) - { - FieldInstruction fi = (FieldInstruction) i.getInstruction(); - if (fi.getMyField() != null && fi.getMyField() != field) - return true; - } - - for (MultiplicationExpression ex : this.subexpressions) - if (ex.hasFieldOtherThan(field)) - return true; - - return false; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyOneDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyOneDeobfuscator.java deleted file mode 100644 index 121479889..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyOneDeobfuscator.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.arithmetic; - -import java.util.List; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.Deobfuscator; -public class MultiplyOneDeobfuscator implements Deobfuscator -{ - - private final boolean onlyConstants; - private int count; - - public MultiplyOneDeobfuscator(boolean onlyConstants) - { - this.onlyConstants = onlyConstants; - } - - private void visit(MethodContext mctx) - { - for (InstructionContext ictx : mctx.getInstructionContexts()) - { - Instruction instruction = ictx.getInstruction(); - - if (!(instruction instanceof IMul) && !(instruction instanceof LMul)) - { - continue; - } - - Instructions ins = ictx.getInstruction().getInstructions(); - if (ins == null) - { - continue; - } - - List ilist = ins.getInstructions(); - - if (!ilist.contains(ictx.getInstruction())) - { - continue; // already done - } - - StackContext one = ictx.getPops().get(0); - StackContext two = ictx.getPops().get(1); - - StackContext other = null; - int removeIdx = -1; - if (one.getPushed().getInstruction() instanceof PushConstantInstruction - && DMath.equals((Number) ((PushConstantInstruction) one.getPushed().getInstruction()).getConstant(), 1)) - { - removeIdx = 0; - other = two; - } - else if (two.getPushed().getInstruction() instanceof PushConstantInstruction - && DMath.equals((Number) ((PushConstantInstruction) two.getPushed().getInstruction()).getConstant(), 1)) - { - removeIdx = 1; - other = one; - } - - if (removeIdx == -1) - { - continue; - } - - if (onlyConstants && !(other.getPushed().getInstruction() instanceof PushConstantInstruction)) - { - continue; - } - - if (!MultiplicationDeobfuscator.isOnlyPath(ictx, removeIdx == 0 ? one : two)) - { - continue; - } - - ictx.removeStack(removeIdx); // remove 1 - ins.remove(instruction); // remove mul - - ++count; - } - } - - @Override - public void run(ClassGroup group) - { - Execution e = new Execution(group); - e.addMethodContextVisitor(i -> visit(i)); - e.populateInitialMethods(); - e.run(); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyZeroDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyZeroDeobfuscator.java deleted file mode 100644 index 95090d1b9..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/MultiplyZeroDeobfuscator.java +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators.arithmetic; - -import java.util.List; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.Deobfuscator; - -public class MultiplyZeroDeobfuscator implements Deobfuscator -{ - - private int count; - - private void visit(MethodContext mctx) - { - for (InstructionContext ictx : mctx.getInstructionContexts()) - { - Instruction instruction = ictx.getInstruction(); - Instructions ins = instruction.getInstructions(); - if (ins == null) - { - continue; - } - - if (!(instruction instanceof IMul) && !(instruction instanceof LMul)) - { - continue; - } - - List ilist = ins.getInstructions(); - - StackContext one = ictx.getPops().get(0); - StackContext two = ictx.getPops().get(1); - - Instruction ione = one.getPushed().getInstruction(), - itwo = two.getPushed().getInstruction(); - - boolean remove = false; - if (ione instanceof PushConstantInstruction) - { - PushConstantInstruction pci = (PushConstantInstruction) ione; - Number value = (Number) pci.getConstant(); - - if (DMath.equals(value, 0)) - { - remove = true; - } - } - if (itwo instanceof PushConstantInstruction) - { - PushConstantInstruction pci = (PushConstantInstruction) itwo; - Number value = (Number) pci.getConstant(); - - if (DMath.equals(value, 0)) - { - remove = true; - } - } - - if (remove == false) - { - continue; - } - - if (!ilist.contains(instruction)) - { - continue; // already done - } - if (!MultiplicationDeobfuscator.isOnlyPath(ictx, null)) - { - continue; - } - - // remove both, remove imul, push 0 - ictx.removeStack(1); - ictx.removeStack(0); - - if (instruction instanceof IMul) - { - ins.replace(instruction, new LDC(ins, 0)); - } - else if (instruction instanceof LMul) - { - ins.replace(instruction, new LDC(ins, 0L)); - } - else - { - throw new IllegalStateException(); - } - - ++count; - - } - } - - @Override - public void run(ClassGroup group) - { - Execution e = new Execution(group); - e.addMethodContextVisitor(i -> visit(i)); - e.populateInitialMethods(); - e.run(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Pair.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Pair.java deleted file mode 100644 index e21f9352e..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/Pair.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.deobfuscators.arithmetic; - -import net.runelite.asm.pool.Field; - -class Pair -{ - Field field; - Number getter, setter; - - public Pair() - { - } - - public Pair(Pair one, Pair two) - { - assert one.getType() == two.getType(); - assert one.field != null; - assert two.field != null; - assert one.field.equals(two.field); - - getter = DMath.multiply(one.getter, two.getter); - setter = DMath.multiply(one.setter, two.setter); - field = one.field; - } - - public Class getType() - { - assert getter.getClass() == setter.getClass(); - return getter.getClass(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/Block.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/Block.java deleted file mode 100644 index c40355c29..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/Block.java +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.cfg; - -import java.util.ArrayList; -import java.util.List; -import lombok.Getter; -import lombok.Setter; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Label; - -@Getter -@Setter -public class Block -{ - private int id = -1; - private boolean jumptarget; // block is unconditionally jumped to - - /** - * blocks which jump here - */ - private final List preds = new ArrayList<>(); - - /** - * blocks which this jumps to - */ - private final List succs = new ArrayList<>(); - - /** - * block which flows directly into this block - */ - private Block pred; - - /** - * block which this directly flows into - */ - private Block succ; - - /** - * instructions in this block - */ - private final List instructions = new ArrayList<>(); - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(); - sb.append("Block ID ").append(id).append("\n"); - if (pred != null) - { - sb.append(" flows from ").append(pred.id).append("\n"); - } - for (Instruction i : instructions) - { - sb.append(" ").append(i.toString()).append("\n"); - } - if (succ != null) - { - sb.append(" flows into ").append(succ.id).append("\n"); - } - sb.append("\n"); - return sb.toString(); - } - - public void addInstruction(int idx, Instruction i) - { - assert !instructions.contains(i); - instructions.add(idx, i); - } - - public void addInstruction(Instruction i) - { - assert !instructions.contains(i); - instructions.add(i); - } - - public void addPrev(Block block) - { - if (!preds.contains(block)) - { - preds.add(block); - } - } - - public void addNext(Block block) - { - if (!succs.contains(block)) - { - succs.add(block); - } - } - - static int compare(Block a, Block b) - { - final int l1 = a.getLineNumber(); - final int l2 = b.getLineNumber(); - if (l1 == l2 || l1 == -1 || l2 == -1) - return 0; - return Integer.compare(l1, l2); - } - - private int getLineNumber() - { - for (Instruction i : instructions) - if (i instanceof Label) - if (((Label) i).getLineNumber() != null) - return ((Label) i).getLineNumber(); - return -1; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowDeobfuscator.java deleted file mode 100644 index 24f49a023..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowDeobfuscator.java +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.cfg; - -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.deob.Deobfuscator; - -public class ControlFlowDeobfuscator implements Deobfuscator -{ - private int insertedJump; - private int placedBlocks; - private int removedJumps; - - @Override - public void run(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - - if (code == null || !code.getExceptions().getExceptions().isEmpty()) - { - continue; - } - - run(code); - runJumpLabel(code); - } - } - } - - private void run(Code code) - { - Instructions ins = code.getInstructions(); - - ControlFlowGraph graph = new ControlFlowGraph(code); - - // Clear existing instructions as we are going to rebuild them - ins.clear(); - final List sorted = graph.topologicalSort(); - for (Block b : sorted) - { - ++placedBlocks; - for (Instruction i : b.getInstructions()) - { - ins.addInstruction(i); - i.setInstructions(ins); - } - if (b.getSucc() != null && b.getInstructions().size() > 0) - { - final var i = b.getInstructions().get(b.getInstructions().size() - 1); - if (!i.isTerminal()) - { - final var next = b.getSucc(); - var maybeLabel = next.getInstructions().get(0); - if (!(maybeLabel instanceof Label)) - { - maybeLabel = new Label(ins); - next.getInstructions().add(0, maybeLabel); - } - ins.addInstruction(new Goto(ins, (Label) maybeLabel)); - ++insertedJump; - } - } - } - } - - /** - * remove jumps followed immediately by the label they are jumping to - */ - private void runJumpLabel(Code code) - { - Instructions ins = code.getInstructions(); - List instructions = ins.getInstructions(); - - for (int i = 0; i < instructions.size() - 1; ++i) - { - Instruction i1 = instructions.get(i), - i2 = instructions.get(i + 1); - - if (!(i1 instanceof Goto)) - { - continue; - } - - Goto g = (Goto) i1; - assert g.getJumps().size() == 1; - if (g.getJumps().get(0) != i2) - { - continue; - } - - ins.remove(i1); // remove jump - ++removedJumps; - - // i now points to i2, so next loop we go to next instruction - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowGraph.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowGraph.java deleted file mode 100644 index a7456a29b..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/cfg/ControlFlowGraph.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.cfg; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; - -public class ControlFlowGraph -{ - private final Map blocks = new HashMap<>(); - private final List allBlocks = new ArrayList<>(); - private final Block head; - - public ControlFlowGraph(Code code) - { - int id = 0; - this.head = new Block(); - for (Instruction i : code.getInstructions()) - if (i instanceof Label) - blocks.computeIfAbsent((Label) i, lbl -> { - var b = new Block(); - allBlocks.add(b); - return b; - }); - - allBlocks.add(0, head); - Block cur = head; - for (Instruction i : code.getInstructions()) - { - if (i instanceof Label) - { - Block next = blocks.get(i); - if (next.getId() == -1) - { - next.setId(id++); - } - if (next != cur) - { - Instruction last = cur.getInstructions().isEmpty() - ? null - : cur.getInstructions().get(cur.getInstructions().size() - 1); - if (last == null || !last.isTerminal()) - { - assert next.getPred() == null; - assert cur.getSucc() == null; - // previous block flows directly into next - next.setPred(cur); - cur.setSucc(next); - } - cur = next; - } - } - cur.addInstruction(i); - if (i instanceof JumpingInstruction) - { - JumpingInstruction ji = (JumpingInstruction) i; - for (Label l : ji.getJumps()) - { - Block next = blocks.get(l); - if (next.getId() == -1) - { - next.setId(id++); - } - cur.addNext(next); - next.addPrev(cur); - } - } - } - - assert head.getPred() == null; - } - - List topologicalSort() - { - final List ret = new ArrayList<>(); - walk(head, ret, new HashSet<>()); - Collections.reverse(ret); - return ret; - } - - private static void walk(Block cur, List order, Set done) - { - Block dirsucc = cur.getSucc(); - if (dirsucc != null && done.add(dirsucc)) - walk(cur.getSucc(), order, done); - List succs = cur.getSuccs(); - succs.sort(Block::compare); - for (Block succ : succs) - if (done.add(succ)) - walk(succ, order, done); - order.add(cur); - } - - public ControlFlowGraph(Block head) - { - this.head = head; - } - - public Block getBlock(Label label) - { - return blocks.get(label); - } - - public Collection getBlocks() - { - return allBlocks; - } - - @Override - public String toString() - { - StringBuilder sb = new StringBuilder(); - for (Block b : allBlocks) - { - sb.append(b.toString()); - } - return sb.toString(); - } - - public Block getHead() - { - return head; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantMethodParameter.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantMethodParameter.java deleted file mode 100644 index f05e8f2be..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantMethodParameter.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.constparam; - -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; - -class ConstantMethodParameter -{ - List methods; // methods this is a parameter for - int paramIndex; - int lvtIndex; - List values = new ArrayList<>(); // possible values for the parameter - List operations = new ArrayList<>(); // conditional jumps based on the parameter - Boolean result; // result of the jumps (branch taken or not) - boolean invalid; - - @Override - public int hashCode() - { - int hash = 3; - hash = 47 * hash + Objects.hashCode(this.methods); - hash = 47 * hash + this.lvtIndex; - return hash; - } - - @Override - public boolean equals(Object obj) - { - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - final ConstantMethodParameter other = (ConstantMethodParameter) obj; - if (!Objects.equals(this.methods, other.methods)) - { - return false; - } - if (this.lvtIndex != other.lvtIndex) - { - return false; - } - return true; - } -} \ No newline at end of file diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantParameter.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantParameter.java deleted file mode 100644 index 7a99150fd..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/constparam/ConstantParameter.java +++ /dev/null @@ -1,467 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.constparam; - -import com.google.common.collect.HashMultimap; -import com.google.common.collect.Multimap; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Annotation; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.If0; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.Deobfuscator; -public class ConstantParameter implements Deobfuscator -{ - private final Map parameters = new HashMap<>(); - private final Multimap mparams = HashMultimap.create(); - - private void checkMethodsAreConsistent(List methods) - { - Method prev = null; - for (Method m : methods) - { - if (prev != null) - { - assert prev.getDescriptor().equals(m.getDescriptor()); - assert prev.isStatic() == m.isStatic(); - } - prev = m; - } - } - - private ConstantMethodParameter getCMPFor(List methods, int paramIndex, int lvtIndex) - { - ConstantMethodParameter cmp = new ConstantMethodParameter(); - cmp.methods = methods; - cmp.paramIndex = paramIndex; - cmp.lvtIndex = lvtIndex; - - ConstantMethodParameter exists = parameters.get(cmp); - if (exists != null) - { - // existing mparams for each method of methods can have different 'methods' - // due to invokespecial on virtual methods. - return exists; - } - - parameters.put(cmp, cmp); - - for (Method m : methods) - { - mparams.put(m, cmp); - } - - return cmp; - } - - // find constant values passed as parameters - private void findConstantParameter(List methods, InstructionContext invokeCtx) - { - checkMethodsAreConsistent(methods); - - Method method = methods.get(0); // all methods must have the same signature etc - int offset = method.isStatic() ? 0 : 1; - - List pops = invokeCtx.getPops(); - - // object is popped first, then param 1, 2, 3, etc. double and long take two slots. - for (int lvtOffset = offset, parameterIndex = 0; - parameterIndex < method.getDescriptor().size(); - lvtOffset += method.getDescriptor().getTypeOfArg(parameterIndex++).getSize()) - { - // get(0) == first thing popped which is the last parameter, - // get(descriptor.size() - 1) == first parameter - StackContext ctx = pops.get(method.getDescriptor().size() - 1 - parameterIndex); - - ConstantMethodParameter cmp = getCMPFor(methods, parameterIndex, lvtOffset); - - if (cmp.invalid) - { - continue; - } - - if (ctx.getPushed().getInstruction() instanceof PushConstantInstruction) - { - PushConstantInstruction pc = (PushConstantInstruction) ctx.getPushed().getInstruction(); - - if (!(pc.getConstant() instanceof Number)) - { - cmp.invalid = true; - continue; - } - - Number number = (Number) pc.getConstant(); - - if (!cmp.values.contains(number)) - { - cmp.values.add((Number) pc.getConstant()); - } - } - else - { - cmp.invalid = true; - } - } - } - - // find constant valuess passed to parameters - private void findParameters(InstructionContext ins) - { - if (!(ins.getInstruction() instanceof InvokeInstruction)) - { - return; - } - - List methods = ((InvokeInstruction) ins.getInstruction()).getMethods(); - if (methods.isEmpty()) - { - return; - } - - findConstantParameter(methods, ins); - } - - @SuppressWarnings("unchecked") - private List findParametersForMethod(Method m) - { - Collection c = mparams.get(m); - if (c == null) - { - return Collections.EMPTY_LIST; - } - return new ArrayList<>(c); - } - - // compare known values against a jump. also invalidates constant param - // if lvt is reassigned or a comparison is made against a non constant - private void findDeadParameters(MethodContext mctx) - { - mctx.getInstructionContexts().forEach(this::findDeadParameters); - } - - private void findDeadParameters(InstructionContext ins) - { - List parameters = this.findParametersForMethod(ins.getFrame().getMethod()); - - for (ConstantMethodParameter parameter : parameters) - { - int lvtIndex = parameter.lvtIndex; - - if (parameter.invalid) - { - continue; - } - - if (ins.getInstruction() instanceof LVTInstruction) - { - LVTInstruction lvt = (LVTInstruction) ins.getInstruction(); - - if (lvt.getVariableIndex() != lvtIndex) - { - continue; - } - - if (lvt.store() || ins.getInstruction().getType() == InstructionType.IINC) - { - parameter.invalid = true; - continue; // value changes at some point, parameter is used - } - - // check what pops the parameter is a comparison - assert ins.getPushes().size() == 1; - StackContext sctx = ins.getPushes().get(0); - - if (sctx.getPopped().size() != 1 - || !(sctx.getPopped().get(0).getInstruction() instanceof ComparisonInstruction)) - { - parameter.invalid = true; - continue; - } - } - - if (!(ins.getInstruction() instanceof ComparisonInstruction)) - { - continue; - } - - // assume that this will always be variable index #paramIndex comp with a constant. - ComparisonInstruction comp = (ComparisonInstruction) ins.getInstruction(); - - StackContext one, two = null; - - if (comp instanceof If0) - { - one = ins.getPops().get(0); - } - else if (comp instanceof If) - { - one = ins.getPops().get(0); - two = ins.getPops().get(1); - } - else - { - throw new RuntimeException("Unknown comp ins"); - } - - // find if one is a lvt ins - LVTInstruction lvt = null; - StackContext other = null; - - if (one.getPushed().getInstruction() instanceof LVTInstruction) - { - lvt = (LVTInstruction) one.getPushed().getInstruction(); - other = two; - } - else if (two != null && two.getPushed().getInstruction() instanceof LVTInstruction) - { - lvt = (LVTInstruction) two.getPushed().getInstruction(); - other = one; - } - - assert lvt == null || !lvt.store(); - - if (lvt == null || lvt.getVariableIndex() != lvtIndex) - { - continue; - } - - Number otherValue = null; - - if (two != null) // two is null for if0 - { - if (!(other.getPushed().getInstruction() instanceof PushConstantInstruction)) - { - parameter.invalid = true; - continue; - } - - PushConstantInstruction pc = (PushConstantInstruction) other.getPushed().getInstruction(); - otherValue = (Number) pc.getConstant(); - } - - for (Number value : parameter.values) - { - // the result of the comparison doesn't matter, only that it always goes the same direction for every invocation - boolean result = doLogicalComparison(value, comp, otherValue); - - // XXX this should check that the particular if always takes the same path, - // not that all ifs for a specific parameter always take the same path - if (parameter.result != null && parameter.result != result) - { - parameter.invalid = true; - } - else - { - parameter.operations.add(ins.getInstruction()); - parameter.result = result; - } - } - } - } - - private boolean doLogicalComparison(Number value, ComparisonInstruction comparison, Number otherValue) - { - Instruction ins = (Instruction) comparison; - - assert (comparison instanceof If0) == (otherValue == null); - - switch (ins.getType()) - { - case IFEQ: - return value.equals(0); - case IFNE: - return !value.equals(0); - case IFLT: - return value.intValue() < 0; - case IFGE: - return value.intValue() >= 0; - case IFGT: - return value.intValue() > 0; - case IFLE: - return value.intValue() <= 0; - case IF_ICMPEQ: - return value.equals(otherValue); - case IF_ICMPNE: - return !value.equals(otherValue); - case IF_ICMPLT: - return value.intValue() < otherValue.intValue(); - case IF_ICMPGE: - return value.intValue() >= otherValue.intValue(); - case IF_ICMPGT: - return value.intValue() > otherValue.intValue(); - case IF_ICMPLE: - return value.intValue() <= otherValue.intValue(); - default: - throw new RuntimeException("Unknown constant comparison instructuction"); - } - } - - // remove logically dead comparisons - private int removeDeadOperations(MethodContext mctx) - { - int count = 0; - for (ConstantMethodParameter cmp : parameters.values()) - { - if (cmp.invalid) - { - continue; - } - - if (!cmp.methods.contains(mctx.getMethod())) - { - continue; - } - - // only annotate garbage value of last param - if (cmp.paramIndex + 1 == mctx.getMethod().getDescriptor().size()) - { - annotateObfuscatedSignature(cmp); - } - - for (Instruction ins : cmp.operations) // comparisons - { - if (ins.getInstructions() == null || ins.getInstructions().getCode().getMethod() != mctx.getMethod()) - { - continue; - } - - InstructionContext ctx = mctx.getInstructonContexts(ins).toArray(new InstructionContext[0])[0]; - boolean branch = cmp.result; // branch that is always taken - - if (ins.getInstructions() == null) - { - continue; // ins already removed? - } - Instructions instructions = ins.getInstructions(); - - // remove the if - if (ctx.getInstruction() instanceof If) - { - ctx.removeStack(1); - } - ctx.removeStack(0); - - int idx = instructions.getInstructions().indexOf(ins); - if (idx == -1) - { - continue; // already removed? - } - ++count; - - Instruction to; - if (branch) - { - JumpingInstruction jumpIns = (JumpingInstruction) ins; - assert jumpIns.getJumps().size() == 1; - to = jumpIns.getJumps().get(0); - } - else - { - // just go to next instruction - to = instructions.getInstructions().get(idx + 1); - } - assert to.getInstructions() == instructions; - assert ins != to; - assert instructions.getInstructions().contains(to); - - instructions.remove(ins); - - assert instructions.getInstructions().contains(to); - - if (branch) - { - Goto gotoins = new Goto(instructions, instructions.createLabelFor(to)); - - // insert goto - instructions.getInstructions().add(idx, gotoins); - } - } - } - return count; - } - - private void annotateObfuscatedSignature(ConstantMethodParameter parameter) - { - for (Method m : parameter.methods) - { - Object value = parameter.values.get(0); - - Annotation obfuscatedSignature = m.findAnnotation(DeobAnnotations.OBFUSCATED_SIGNATURE, true); - if (obfuscatedSignature.size() == 2) - { - // already annotated - continue; - } - else if (obfuscatedSignature.size() == 0) - { - obfuscatedSignature.setElement("descriptor", m.getDescriptor().toString()); - } - - obfuscatedSignature.setElement("garbageValue", String.valueOf(value)); - } - } - - private int count; - - @Override - public void run(ClassGroup group) - { - Execution execution = new Execution(group); - execution.addExecutionVisitor(this::findParameters); - execution.populateInitialMethods(); - execution.run(); - - execution = new Execution(group); - execution.addMethodContextVisitor(this::findDeadParameters); - execution.populateInitialMethods(); - execution.run(); - - execution = new Execution(group); - execution.addMethodContextVisitor(m -> count += removeDeadOperations(m)); - execution.populateInitialMethods(); - execution.run(); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/ExprArgOrder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/ExprArgOrder.java deleted file mode 100644 index d45662903..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/ExprArgOrder.java +++ /dev/null @@ -1,529 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.exprargorder; - -import com.google.common.primitives.Ints; -import com.google.common.primitives.Longs; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import static net.runelite.asm.attributes.code.InstructionType.IADD; -import static net.runelite.asm.attributes.code.InstructionType.IF_ACMPEQ; -import static net.runelite.asm.attributes.code.InstructionType.IF_ACMPNE; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPEQ; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPNE; -import static net.runelite.asm.attributes.code.InstructionType.IMUL; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.AConstNull; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.IInc; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.IfACmpEq; -import net.runelite.asm.attributes.code.instructions.IfACmpNe; -import net.runelite.asm.attributes.code.instructions.IfICmpEq; -import net.runelite.asm.attributes.code.instructions.IfICmpNe; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Deobfuscator; -public class ExprArgOrder implements Deobfuscator -{ - private final List exprIns = new ArrayList<>(); - private final Map exprs = new HashMap<>(); - private int count; - - static boolean isCommutative(InstructionType type) - { - switch (type) - { - case IADD: - case IMUL: - case IF_ICMPEQ: - case IF_ICMPNE: - case IF_ACMPEQ: - case IF_ACMPNE: - return true; - default: - return false; - } - } - - private Instruction newInstruction(Instructions ins, Instruction old, InstructionType type) - { - assert isCommutative(type) : "type is " + type; - - switch (type) - { - case IADD: - return new IAdd(ins); - case IMUL: - return new IMul(ins); - case IF_ICMPEQ: - { - If i = (If) old; - return new IfICmpEq(ins, i.getJumps().get(0)); - } - case IF_ICMPNE: - { - If i = (If) old; - return new IfICmpNe(ins, i.getJumps().get(0)); - } - case IF_ACMPEQ: - { - If i = (If) old; - return new IfACmpEq(ins, i.getJumps().get(0)); - } - case IF_ACMPNE: - { - If i = (If) old; - return new IfACmpNe(ins, i.getJumps().get(0)); - } - default: - throw new IllegalStateException(); - } - } - - private void parseExpr(Expression expr, InstructionContext ctx) - { - InstructionType type = ctx.getInstruction().getType(); - - List pops = ctx.getPops(); - - for (StackContext sctx : pops) - { - InstructionContext i = sctx.getPushed(); - - if (isCommutative(type) && i.getInstruction().getType() == type) - { - parseExpr(expr, i); - } - else if (isCommutative(type)) - { - Expression sub = new Expression(i); - parseExpr(sub, i); - expr.addComExpr(sub); - } - else - { - Expression sub = new Expression(i); - parseExpr(sub, i); - expr.addExpr(sub); - } - - exprIns.remove(i.getInstruction()); - exprs.remove(i.getInstruction()); // remove sub expr - } - } - - private void visit(InstructionContext ctx) - { - Instruction ins = ctx.getInstruction(); - - if (ins instanceof IAdd || ins instanceof IMul - || ins instanceof IfICmpEq || ins instanceof IfICmpNe - || ins instanceof IfACmpEq || ins instanceof IfACmpNe) - { - Expression expression = new Expression(ctx); - parseExpr(expression, ctx); - if (!exprs.containsKey(ins)) - { - exprIns.add(ins); - exprs.put(ins, expression); - } - } - } - - private boolean canRemove(MethodContext mctx, Instructions ins, Instruction i) - { - Set ctxs = new HashSet<>(mctx.getInstructonContexts(i)); - - if (!alwaysPoppedBySameInstruction(ctxs, i) || !alwaysPopsFromSameInstructions(ctxs, i)) - { - return false; - } - - if (i instanceof InvokeInstruction) - { - // don't ever order lhs/rhs if an invoke is involved? - // func1() + func2() vs func2() + func1() is not the same thing - return false; - } - - int idx = ins.getInstructions().indexOf(i); - if (idx == -1) - { - return false; - } - - for (InstructionContext ictx : ctxs) - { - for (StackContext sctx : ictx.getPops()) - { - Instruction pushed = sctx.getPushed().getInstruction(); - - int idx2 = ins.getInstructions().indexOf(pushed); - if (idx2 == -1) - { - return false; - } - - assert idx > idx2; - - // If there is a lvt store (incl iinc!) between the two - // instructions, we can't move them - for (int j = idx2; j <= idx; ++j) - { - Instruction i2 = ins.getInstructions().get(j); - if (i2 instanceof LVTInstruction) - { - if (((LVTInstruction) i2).store()) - { - return false; - } - } - if (i2 instanceof IInc) - { - return false; - } - } - - if (!canRemove(mctx, ins, pushed)) - { - return false; - } - } - } - - return true; - - } - - private void remove(Instructions ins, InstructionContext ic) - { - ins.remove(ic.getInstruction()); - - for (StackContext sc : ic.getPops()) - { - assert sc.getPopped().size() == 1; - remove(ins, sc.getPushed()); - } - } - - private void insert(Instructions ins, InstructionContext ic, Instruction before) - { - Instruction i = ic.getInstruction(); - assert i.getInstructions() == null; - - int idx = ins.getInstructions().indexOf(before); - assert idx != -1; - - i.setInstructions(ins); - ins.addInstruction(idx, i); - } - - public static int hash(Method method, InstructionContext ic) - { - MessageDigest sha256; - try - { - sha256 = MessageDigest.getInstance("SHA-256"); - } - catch (NoSuchAlgorithmException ex) - { - throw new RuntimeException(ex); - } - - hash(method, sha256, ic); - byte[] res = sha256.digest(); - return Ints.fromByteArray(res); - } - - private static void hash(Method method, MessageDigest sha256, InstructionContext ic) - { - Instruction i = ic.getInstruction(); - - // this relies on all push constants are converted to ldc.. - sha256.update((byte) i.getType().getCode()); - - if (i instanceof PushConstantInstruction) - { - PushConstantInstruction pci = (PushConstantInstruction) i; - Object constant = pci.getConstant(); - if (constant instanceof Number) - { - long l = ((Number) constant).longValue(); - sha256.update(Longs.toByteArray(l)); - } - } - else if (i instanceof LVTInstruction) - { - int idx = ((LVTInstruction) i).getVariableIndex(); - Signature descriptor = method.getDescriptor(); - - int lvt = method.isStatic() ? 0 : 1; - for (Type type : descriptor.getArguments()) - { - if (idx == lvt) - { - // Accessing a method parameter - sha256.update(Ints.toByteArray(idx)); - break; - } - - lvt += type.getSize(); - } - } - - for (StackContext sctx : ic.getPops()) - { - hash(method, sha256, sctx.getPushed()); - } - } - - private boolean alwaysPopsFromSameInstructions(Set instructonContexts, Instruction i) - { - InstructionContext ictx = instructonContexts.iterator().next(); - - for (InstructionContext i2 : instructonContexts) - { - if (!i2.equals(ictx)) - { - // this instruction doesn't always pop the same thing - return false; - } - } - - return true; - } - - private boolean alwaysPoppedBySameInstruction(Set instructonContexts, Instruction i) - { - Set c = new HashSet<>(); - - for (InstructionContext i2 : instructonContexts) - { - i2.getPushes().stream() - .flatMap(sctx -> sctx.getPopped().stream()) - .map(ic -> ic.getInstruction()) - .forEach(i3 -> c.add(i3)); - } - - return c.size() <= 1; - } - - public static int compare(Method method, InstructionType type, InstructionContext ic1, InstructionContext ic2) - { - Instruction i1 = ic1.getInstruction(); - Instruction i2 = ic2.getInstruction(); - - if (type == IF_ICMPEQ || type == IF_ICMPNE - || type == IADD || type == IMUL) - { - if (!(i1 instanceof PushConstantInstruction) - && (i2 instanceof PushConstantInstruction)) - { - return 1; - } - - if (i1 instanceof PushConstantInstruction - && !(i2 instanceof PushConstantInstruction)) - { - return -1; - } - } - - if (type == IF_ACMPEQ || type == IF_ACMPNE) - { - if (!(i1 instanceof AConstNull) - && (i2 instanceof AConstNull)) - { - return 1; - } - - if (i1 instanceof AConstNull - && !(i2 instanceof AConstNull)) - { - return -1; - } - } - - int hash1 = hash(method, ic1); - int hash2 = hash(method, ic2); - - - return Integer.compare(hash1, hash2); - } - - public static int compare(Method method, InstructionType type, Expression expr1, Expression expr2) - { - Instruction i1 = expr1.getHead().getInstruction(); - Instruction i2 = expr2.getHead().getInstruction(); - - if (type == IF_ICMPEQ || type == IF_ICMPNE - || type == IADD || type == IMUL) - { - if (!(i1 instanceof PushConstantInstruction) - && (i2 instanceof PushConstantInstruction)) - { - return 1; - } - - if (i1 instanceof PushConstantInstruction - && !(i2 instanceof PushConstantInstruction)) - { - return -1; - } - } - - if (type == IF_ACMPEQ || type == IF_ACMPNE) - { - if (!(i1 instanceof AConstNull) - && (i2 instanceof AConstNull)) - { - return 1; - } - - if (i1 instanceof AConstNull - && !(i2 instanceof AConstNull)) - { - return -1; - } - } - - int hash1 = hash(method, expr1.getHead()); - int hash2 = hash(method, expr2.getHead()); - - - return Integer.compare(hash1, hash2); - } - - private void insert(Instructions ins, Instruction next, Expression expression) - { - int count = 0; - - if (expression.sortedExprs != null) - { - for (Expression sub : expression.sortedExprs) - { - if (count == 2) - { - Instruction newOp; - if (isCommutative(expression.getType())) - { - // there might be >2 sortedExprs so we can't reuse instructions - newOp = newInstruction(ins, expression.getHead().getInstruction(), expression.getType()); - } - else - { - newOp = expression.getHead().getInstruction(); - assert newOp.getInstructions() == null; - newOp.setInstructions(ins); - } - - int idx = ins.getInstructions().indexOf(next); - assert idx != -1; - - ins.addInstruction(idx, newOp); - count = 1; - } - - insert(ins, next, sub); - ++count; - } - } - - List reverseExpr = new ArrayList<>(expression.getExprs()); - Collections.reverse(reverseExpr); - for (Expression sub : reverseExpr) - { - insert(ins, next, sub); - } - - insert(ins, expression.getHead(), next); - } - - private void visit(MethodContext ctx) - { - Instructions ins = ctx.getMethod().getCode().getInstructions(); - - for (Instruction i : exprIns) - { - Expression expression = exprs.get(i); - assert expression != null; - - if (!canRemove(ctx, ins, i)) - { - continue; - } - - int idx = ins.getInstructions().indexOf(expression.getHead().getInstruction()); - assert idx != -1; - - // get next instruction - Instruction next = ins.getInstructions().get(idx + 1);; - - // remove expression - remove(ins, expression.getHead()); - - // sort expression - expression.sort(ctx); - - // insert expression - insert(ins, next, expression); - - ++count; - } - - exprIns.clear(); - exprs.clear(); - } - - @Override - public void run(ClassGroup group) - { - Execution execution = new Execution(group); - execution.addExecutionVisitor(i -> visit(i)); - execution.addMethodContextVisitor(i -> visit(i)); - execution.populateInitialMethods(); - execution.run(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/Expression.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/Expression.java deleted file mode 100644 index 8ba1dd8c7..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/exprargorder/Expression.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.exprargorder; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; - -public class Expression -{ - private final InstructionContext head; - private final List exprs = new ArrayList<>(); - private final List comExprs = new ArrayList<>(); - - public List sortedExprs; - private int exprHash; - - public Expression(InstructionContext head) - { - this.head = head; - } - - public InstructionType getType() - { - return head.getInstruction().getType(); - } - - public InstructionContext getHead() - { - return head; - } - - public void addExpr(Expression expr) - { - exprs.add(expr); - } - - public List getExprs() - { - return Collections.unmodifiableList(exprs); - } - - public void addComExpr(Expression expr) - { - comExprs.add(expr); - } - - public List getComExprs() - { - return Collections.unmodifiableList(comExprs); - } - - public void sort(MethodContext ctx) - { - for (Expression e : comExprs) - { - e.sort(ctx); - } - for (Expression e : exprs) - { - e.sort(ctx); - } - - sortedExprs = new ArrayList<>(comExprs); - Collections.sort(sortedExprs, (e1, e2) -> ExprArgOrder.compare(ctx.getMethod(), getType(), e1, e2)); - Collections.reverse(sortedExprs); - - int hash = 0; - for (Expression e : sortedExprs) - { - hash ^= e.exprHash; - } - exprHash = hash; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/LVTType.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/LVTType.java deleted file mode 100644 index 573aad34d..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/LVTType.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.lvt; - -public enum LVTType -{ - INT, - LONG, - OBJECT -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/MapKey.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/MapKey.java deleted file mode 100644 index 2e48cc1c4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/MapKey.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.lvt; - -import java.util.Objects; - -public class MapKey -{ - private final int idx; - private final LVTType type; - - public MapKey(int idx, LVTType type) - { - this.idx = idx; - this.type = type; - } - - @Override - public int hashCode() - { - int hash = 7; - hash = 89 * hash + this.idx; - hash = 89 * hash + Objects.hashCode(this.type); - return hash; - } - - @Override - public boolean equals(Object obj) - { - if (this == obj) - { - return true; - } - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - final MapKey other = (MapKey) obj; - if (this.idx != other.idx) - { - return false; - } - if (this.type != other.type) - { - return false; - } - return true; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/Mappings.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/Mappings.java deleted file mode 100644 index 9be92bed4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/lvt/Mappings.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.lvt; - -import java.util.HashMap; -import java.util.Map; -import net.runelite.asm.attributes.code.instruction.types.LVTInstructionType; - -public class Mappings -{ - - private final int maxVariables; - private int offset; - private Map map = new HashMap<>(); - private Map newIdxMap = new HashMap<>(); - - public Mappings(int maxVariables) - { - this.maxVariables = maxVariables; - } - - private static LVTType toLvtType(LVTInstructionType type) - { - switch (type) - { - case DOUBLE: - case LONG: - return LVTType.LONG; - case FLOAT: - case INT: - return LVTType.INT; - case OBJECT: - return LVTType.OBJECT; - default: - throw new IllegalArgumentException("Unknown type " + type); - } - } - - public Integer remap(int idx, LVTInstructionType type) - { - LVTType seen = map.get(idx); - - if (seen == null) - { - map.put(idx, toLvtType(type)); - } - else if (toLvtType(type) != seen) - { - MapKey key = new MapKey(idx, toLvtType(type)); - - Integer newIdx = newIdxMap.get(key); - if (newIdx == null) - { - newIdx = maxVariables + offset; - newIdxMap.put(key, newIdx); - - offset += type.getSlots(); - } - - return newIdx; - } - - return null; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/Comparison.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/Comparison.java deleted file mode 100644 index e1f5226cc..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/Comparison.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.menuaction; - -import java.util.Objects; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; - -class Comparison -{ - LVTInstruction lvt; - Instruction ldc; - Instruction cmp; - - Label next; - - Number getConstant() - { - return (Number) ((PushConstantInstruction) ldc).getConstant(); - } - - @Override - public int hashCode() - { - int hash = 3; - hash = 41 * hash + Objects.hashCode(this.cmp); - return hash; - } - - @Override - public boolean equals(Object obj) - { - if (this == obj) - { - return true; - } - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - final Comparison other = (Comparison) obj; - if (!Objects.equals(this.cmp, other.cmp)) - { - return false; - } - return true; - } - - @Override - public String toString() - { - return "Comparison{" + "lvt=" + lvt + ", ldc=" + ldc + ", cmp=" + cmp + ", next=" + next + '}'; - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/MenuActionDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/MenuActionDeobfuscator.java deleted file mode 100644 index 53a9101a5..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/menuaction/MenuActionDeobfuscator.java +++ /dev/null @@ -1,252 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.menuaction; - -import com.google.common.collect.HashMultimap; -import com.google.common.collect.Multimap; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPEQ; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPGE; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPGT; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPLE; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPLT; -import static net.runelite.asm.attributes.code.InstructionType.IF_ICMPNE; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.IfICmpEq; -import net.runelite.asm.attributes.code.instructions.IfICmpNe; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.deob.Deobfuscator; - -/** - * Sort the ifs in menuAction - * - * @author Adam - */ -public class MenuActionDeobfuscator implements Deobfuscator -{ - private static final int THRESHOLD_EQ = 50; - private static final int THRESHOLD_LT = 1; - - @Override - public void run(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - run(m); - } - } - } - - private void run(Method method) - { - if (method.getCode() == null) - { - return; - } - - Execution execution = new Execution(method.getClassFile().getGroup()); - execution.addMethod(method); - execution.noInvoke = true; - - Multimap comps = HashMultimap.create(); - - execution.addExecutionVisitor((InstructionContext ictx) -> - { - Instruction i = ictx.getInstruction(); - Frame frame = ictx.getFrame(); - - if (i instanceof If) - { - InstructionContext ctx1 = ictx.getPops().get(0).getPushed(); // constant - InstructionContext ctx2 = ictx.getPops().get(1).getPushed(); // lvt - - if (ctx1.getInstruction() instanceof PushConstantInstruction - && ctx2.getInstruction() instanceof LVTInstruction) - { - Comparison comparison = new Comparison(); - comparison.cmp = i; - comparison.ldc = ctx1.getInstruction(); - comparison.lvt = (LVTInstruction) ctx2.getInstruction(); - - comps.put(comparison.lvt.getVariableIndex(), comparison); - } - } - }); - - execution.run(); - - for (int i : comps.keySet()) - { - Collection get = comps.get(i); - long l = get.stream().filter(c -> c.cmp.getType() == IF_ICMPGE - || c.cmp.getType() == IF_ICMPGT - || c.cmp.getType() == IF_ICMPLE - || c.cmp.getType() == IF_ICMPLT - ).count(); - - List eqcmp = get.stream() - .filter(c -> c.cmp.getType() == IF_ICMPEQ || c.cmp.getType() == IF_ICMPNE) - .collect(Collectors.toList()); - - if (get.size() > THRESHOLD_EQ && l <= THRESHOLD_LT) - { - insert(method, eqcmp); - } - } - } - - private void insert(Method method, List comparisons) - { - Instructions instructions = method.getCode().getInstructions(); - List ins = instructions.getInstructions(); - - // replace all if(var == constant) with a jump to the false branch - // then, insert before the first jump the ifs to jump to the old - // true branch - // - // this is probably actually lookupswitch but it isn't mappable - // currently... - int min = -1; - - for (Comparison comp : comparisons) - { - if (min == -1) - { - min = ins.indexOf(comp.lvt); - } - else - { - min = Math.min(min, ins.indexOf(comp.lvt)); - } - - if (comp.cmp.getType() == InstructionType.IF_ICMPEQ) - { - If cmp = (If) comp.cmp; - - // remove - instructions.remove(comp.ldc); - instructions.remove((Instruction) comp.lvt); - instructions.remove(comp.cmp); - - comp.next = cmp.getJumps().get(0); - } - else if (comp.cmp.getType() == InstructionType.IF_ICMPNE) - { - // replace with goto dest - If cmp = (If) comp.cmp; - - int idx = ins.indexOf(cmp); - assert idx != -1; - comp.next = instructions.createLabelFor(ins.get(idx + 1)); - - instructions.remove(comp.ldc); - instructions.remove((Instruction) comp.lvt); - - instructions.replace(comp.cmp, new Goto(instructions, cmp.getJumps().get(0))); - } - else - { - throw new IllegalStateException(); - } - } - - assert min != -1; - - // sort comparisons - but if they jump to the same address, they are equal.. - List sortedComparisons = new ArrayList<>(comparisons); - Collections.sort(sortedComparisons, (c1, c2) -> compare(comparisons, c1, c2)); - - // reinsert jumps - for (int i = 0; i < sortedComparisons.size(); ++i) - { - Comparison comp = sortedComparisons.get(i); - Instruction lvt = (Instruction) comp.lvt; - - lvt.setInstructions(instructions); - comp.ldc.setInstructions(instructions); - - instructions.addInstruction(min++, lvt); - instructions.addInstruction(min++, comp.ldc); - - // use if_icmpeq if what follows also jumps to the same location - boolean multiple = i + 1 < sortedComparisons.size() - && sortedComparisons.get(i + 1).next == comp.next; - if (multiple) - { - instructions.addInstruction(min++, new IfICmpEq(instructions, comp.next)); - } - else - { - - // fernflower decompiles a series of if_icmpeq as chains of not equal expressions - Label label = instructions.createLabelFor(ins.get(min)); - instructions.addInstruction(min++, new IfICmpNe(instructions, label)); - instructions.addInstruction(min++, new Goto(instructions, comp.next)); - ++min; // go past label - } - } - } - - private int compare(List comparisons, Comparison c1, Comparison c2) - { - // Compare by constant - - assert comparisons.contains(c1); - assert comparisons.contains(c2); - - // The constant of a comparison is the lowest comparison that jumps to the same location, - // if all jumps to the same label are in the same location fernflower will decompile - // to if (foo || bar) - Comparison mc1 = comparisons.stream() - .filter(c -> c1.next == c.next) - .min((m1, m2) -> Integer.compare(m1.getConstant().intValue(), m2.getConstant().intValue())) - .get(); - - Comparison mc2 = comparisons.stream() - .filter(c -> c2.next == c.next) - .min((m1, m2) -> Integer.compare(m1.getConstant().intValue(), m2.getConstant().intValue())) - .get(); - - return Integer.compare(mc1.getConstant().intValue(), mc2.getConstant().intValue()); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketLengthFinder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketLengthFinder.java deleted file mode 100644 index ec322df3d..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketLengthFinder.java +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packethandler; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IALoad; -import net.runelite.asm.attributes.code.instructions.PutStatic; - -public class PacketLengthFinder -{ - private final ClassGroup group; - private final PacketTypeFinder packetType; - - private Field packetLength; - private GetStatic getArray; - private GetStatic getType; - private IALoad load; - private PutStatic store; - - public PacketLengthFinder(ClassGroup group, PacketTypeFinder packetType) - { - this.group = group; - this.packetType = packetType; - } - - public Field getPacketLength() - { - return packetLength; - } - - public GetStatic getGetArray() - { - return getArray; - } - - public GetStatic getGetType() - { - return getType; - } - - public IALoad getLoad() - { - return load; - } - - public PutStatic getStore() - { - return store; - } - - public void find() - { - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - run(method.getCode()); - } - } - } - - // getstatic class272/field3690 [I - // getstatic Client/packetType I - // iaload - // putstatic Client/packetLength I - private void run(Code code) - { - if (code == null) - { - return; - } - - Instructions instructions = code.getInstructions(); - Field type = packetType.getPacketType(); - - for (int i = 0; i < instructions.getInstructions().size() - 3; ++i) - { - Instruction i1 = instructions.getInstructions().get(i), - i2 = instructions.getInstructions().get(i + 1), - i3 = instructions.getInstructions().get(i + 2), - i4 = instructions.getInstructions().get(i + 3); - - if (!(i1 instanceof GetStatic)) - { - continue; - } - - if (!(i2 instanceof GetStatic)) - { - continue; - } - - GetStatic gs = (GetStatic) i2; - - if (gs.getMyField() != type) - { - continue; - } - - if (!(i3 instanceof IALoad)) - { - continue; - } - - if (!(i4 instanceof PutStatic)) - { - continue; - } - - PutStatic ps = (PutStatic) i4; - assert packetLength == null : "packetLength already found"; - packetLength = ps.getMyField(); - getArray = (GetStatic) i1; - getType = gs; - load = (IALoad) i3; - store = ps; - return; - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketRead.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketRead.java deleted file mode 100644 index 8faf63dc0..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketRead.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packethandler; - -import java.util.Objects; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.execution.InstructionContext; - -public class PacketRead -{ - private final Type type; // type of read, from return of function - private final Instruction getBuffer; // getstatic - private final InstructionContext invokeCtx; - private final Instruction invoke; // invoke instruction to read data - private Instruction store; // lvt store for reorderable reads - - public PacketRead(Type type, Instruction getBuffer, InstructionContext invokeCtx) - { - this.type = type; - this.getBuffer = getBuffer; - this.invokeCtx = invokeCtx; - this.invoke = invokeCtx.getInstruction(); - } - - public Type getType() - { - return type; - } - - public Instruction getGetBuffer() - { - return getBuffer; - } - - public InstructionContext getInvokeCtx() - { - return invokeCtx; - } - - public Instruction getInvoke() - { - return invoke; - } - - public Instruction getStore() - { - return store; - } - - public void setStore(Instruction store) - { - this.store = store; - } - - @Override - public int hashCode() - { - int hash = 5; - hash = 37 * hash + Objects.hashCode(this.type); - hash = 37 * hash + Objects.hashCode(this.invoke); - return hash; - } - - @Override - public boolean equals(Object obj) - { - if (this == obj) - { - return true; - } - if (obj == null) - { - return false; - } - if (getClass() != obj.getClass()) - { - return false; - } - final PacketRead other = (PacketRead) obj; - if (!Objects.equals(this.type, other.type)) - { - return false; - } - if (!Objects.equals(this.invoke, other.invoke)) - { - return false; - } - return true; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketTypeFinder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketTypeFinder.java deleted file mode 100644 index d6883aa07..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packethandler/PacketTypeFinder.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packethandler; - -import com.google.common.base.Objects; -import java.util.HashMap; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; - -public class PacketTypeFinder -{ - private final ClassGroup group; - - private final Map sets = new HashMap<>(); - private Field packetType; - - public PacketTypeFinder(ClassGroup group) - { - this.group = group; - } - - public Field getPacketType() - { - return packetType; - } - - public void find() - { - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - run(method.getCode()); - } - } - - packetType = sets.entrySet().stream() - .max((entry1, entry2) -> Integer.compare(entry1.getValue(), entry2.getValue())) - .get() - .getKey(); - } - - private void run(Code code) - { - if (code == null) - { - return; - } - - Instructions instructions = code.getInstructions(); - - for (int i = 0; i < instructions.getInstructions().size() - 1; ++i) - { - Instruction i1 = instructions.getInstructions().get(i), - i2 = instructions.getInstructions().get(i + 1); - - if (i1 instanceof PushConstantInstruction && i2.getType() == InstructionType.PUTSTATIC) - { - PushConstantInstruction pci = (PushConstantInstruction) i1; - SetFieldInstruction sfi = (SetFieldInstruction) i2; - Field field = sfi.getMyField(); - - if (Objects.equal(-1, pci.getConstant()) && field != null) - { - Integer count = sets.get(field); - if (count == null) - { - sets.put(field, 1); - } - else - { - sets.put(field, count + 1); - } - } - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/OpcodeReplacer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/OpcodeReplacer.java deleted file mode 100644 index 3a80fca26..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/OpcodeReplacer.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packetwrite; - -import java.util.Collection; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import static net.runelite.deob.deobfuscators.transformers.OpcodesTransformer.RUNELITE_OPCODES; -import static org.objectweb.asm.Opcodes.ACC_PUBLIC; -import static org.objectweb.asm.Opcodes.ACC_STATIC; - -class OpcodeReplacer -{ - public void run(ClassGroup group, Collection writes) - { - int count = 0; - - ClassFile runeliteOpcodes = group.findClass(RUNELITE_OPCODES); - assert runeliteOpcodes != null : "Opcodes class must exist"; - - for (PacketWrite wp : writes) - { - Instructions ins = wp.getInstructions(); - - Instruction param = wp.getOpcodeIns(); - if (!(param instanceof PushConstantInstruction)) - { - continue; - } - - final String fieldName = "PACKET_CLIENT_" + wp.getOpcode(); - - net.runelite.asm.pool.Field field = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(RUNELITE_OPCODES), - fieldName, - Type.INT - ); - ins.replace(param, new GetStatic(ins, field)); - - if (runeliteOpcodes.findField(fieldName) == null) - { - Field opField = new Field(runeliteOpcodes, fieldName, Type.INT); - // ACC_FINAL causes javac to inline the fields, which prevents - // the mapper from doing field mapping - opField.setAccessFlags(ACC_PUBLIC | ACC_STATIC); - // setting a non-final static field value - // doesn't work with fernflower - opField.setValue(wp.getOpcode()); - runeliteOpcodes.addField(opField); - - // add initialization - Method clinit = runeliteOpcodes.findMethod(""); - assert clinit != null; - Instructions instructions = clinit.getCode().getInstructions(); - instructions.addInstruction(0, new LDC(instructions, wp.getOpcode())); - instructions.addInstruction(1, new PutStatic(instructions, opField)); - } - - ++count; - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWrite.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWrite.java deleted file mode 100644 index 672aa826f..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWrite.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packetwrite; - -import java.util.ArrayList; -import java.util.List; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.execution.InstructionContext; - -class PacketWrite -{ - InstructionContext putOpcode; - List writes = new ArrayList<>(); - - Instruction getOpcodeIns() - { - return putOpcode.getPops().get(0).getPushed().getInstruction(); - } - - public int getOpcode() - { - return ((Number) ((PushConstantInstruction) getOpcodeIns()).getConstant()).intValue(); - } - - Instructions getInstructions() - { - return putOpcode.getInstruction().getInstructions(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWriteDeobfuscator.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWriteDeobfuscator.java deleted file mode 100644 index 034da3682..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/packetwrite/PacketWriteDeobfuscator.java +++ /dev/null @@ -1,331 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.packetwrite; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.Goto; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.If0; -import net.runelite.asm.attributes.code.instructions.IfEq; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Deobfuscator; -import net.runelite.deob.c2s.RWOpcodeFinder; -import static net.runelite.asm.attributes.code.InstructionType.INVOKEVIRTUAL; - -public class PacketWriteDeobfuscator implements Deobfuscator -{ - private static final String RUNELITE_PACKET = "RUNELITE_PACKET"; - - private final OpcodeReplacer opcodeReplacer = new OpcodeReplacer(); - - private RWOpcodeFinder rw; - private PacketWrite cur; - private final Map writes = new HashMap<>(); - - public void visit(InstructionContext ctx) - { - if (isEnd(ctx)) - { - end(); - return; - } - - if (ctx.getInstruction().getType() != INVOKEVIRTUAL) - { - return; - } - - InvokeInstruction ii = (InvokeInstruction) ctx.getInstruction(); - - if (ii.getMethods().contains(rw.getWriteOpcode())) - { - end(); - PacketWrite write = start(); - write.putOpcode = ctx; - return; - } - - PacketWrite write = cur; - if (write == null) - { - return; - } - - if (!ii.getMethod().getClazz().getName().equals(rw.getWriteOpcode().getClassFile().getSuperName())) - { - return; - } - - write.writes.add(ctx); - } - - private PacketWrite start() - { - end(); - cur = new PacketWrite(); - return cur; - } - - private void end() - { - if (cur != null) - { - if (!writes.containsKey(cur.putOpcode.getInstruction())) - { - writes.put(cur.putOpcode.getInstruction(), cur); - } - cur = null; - } - } - - private boolean isEnd(InstructionContext ctx) - { - // conditions where packet write ends: - // any invoke that isn't to the packet buffer - // any variable assignment - // any field assignment - // any conditional jump - // any return - - Instruction i = ctx.getInstruction(); - - if (i instanceof InvokeInstruction) - { - InvokeInstruction ii = (InvokeInstruction) i; - Method method = ii.getMethod(); - - if (!method.getClazz().equals(rw.getSecretBuffer().getPoolClass()) - && !method.getClazz().equals(rw.getBuffer().getPoolClass())) - { - return true; - } - } - - if (i instanceof LVTInstruction) - { - LVTInstruction lvt = (LVTInstruction) i; - if (lvt.store()) - { - return true; - } - } - - if (i instanceof SetFieldInstruction) - { - return true; - } - - if (i instanceof If || i instanceof If0) - { - return true; - } - - if (i instanceof ReturnInstruction) - { - return true; - } - - return false; - } - - @Override - public void run(ClassGroup group) - { - rw = new RWOpcodeFinder(group); - rw.find(); - - Execution e = new Execution(group); - e.addExecutionVisitor(this::visit); - e.populateInitialMethods(); - e.run(); - - end(); - - opcodeReplacer.run(group, writes.values()); - - int count = 0; - int writesCount = 0; - - for (PacketWrite write : writes.values()) - { - if (write.writes.isEmpty()) - { - continue; - } - - insert(group, write); - ++count; - writesCount += write.writes.size(); - } - } - - private void insert(ClassGroup group, PacketWrite write) - { - Instructions instructions = write.putOpcode.getInstruction().getInstructions(); - List ins = instructions.getInstructions(); - - InstructionContext firstWrite = write.writes.get(0); - InstructionContext lastWrite = write.writes.get(write.writes.size() - 1); - - int idx = ins.indexOf(lastWrite.getInstruction()); - assert idx != -1; - ++idx; // past write - - Label afterWrites = instructions.createLabelFor(ins.get(idx)); - - // pops arg, getfield - InstructionContext beforeFirstWrite = firstWrite.getPops().get(1).getPushed(); - Label putOpcode = instructions.createLabelFor(beforeFirstWrite.getInstruction(), true); - - idx = ins.indexOf(beforeFirstWrite.getInstruction()); - assert idx != -1; - --idx; - - net.runelite.asm.pool.Field field = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(findClient(group).getName()), - RUNELITE_PACKET, - Type.BOOLEAN - ); - - instructions.addInstruction(idx++, new GetStatic(instructions, field)); - instructions.addInstruction(idx++, new IfEq(instructions, putOpcode)); - Instruction before = ins.get(idx); - for (InstructionContext ctx : write.writes) - { - insert(instructions, ctx, before); - } - idx = ins.indexOf(before); - instructions.addInstruction(idx++, new Goto(instructions, afterWrites)); - } - - private void insert(Instructions ins, InstructionContext ic, Instruction before) - { - List pops = new ArrayList<>(ic.getPops()); - Collections.reverse(pops); - for (StackContext sc : pops) - { - insert(ins, sc.getPushed(), before); - } - - Instruction i = ic.getInstruction().clone(); - i = translate(i); - assert i.getInstructions() == ins; - - int idx = ins.getInstructions().indexOf(before); - assert idx != -1; - - ins.addInstruction(idx, i); - } - - private Instruction translate(Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return i; - } - - InvokeVirtual ii = (InvokeVirtual) i; - Method invoked = ii.getMethod(); - - assert invoked.getType().size() == 1; - - Type argumentType = invoked.getType().getTypeOfArg(0); - - Method invokeMethod; - if (argumentType.equals(Type.BYTE)) - { - invokeMethod = new Method( - ii.getMethod().getClazz(), - "runeliteWriteByte", - new Signature("(B)V") - ); - } - else if (argumentType.equals(Type.SHORT)) - { - invokeMethod = new Method( - ii.getMethod().getClazz(), - "runeliteWriteShort", - new Signature("(S)V") - ); - } - else if (argumentType.equals(Type.INT)) - { - invokeMethod = new Method( - ii.getMethod().getClazz(), - "runeliteWriteInt", - new Signature("(I)V") - ); - } - else if (argumentType.equals(Type.LONG)) - { - invokeMethod = new Method( - ii.getMethod().getClazz(), - "runeliteWriteLong", - new Signature("(J)V") - ); - } - else if (argumentType.equals(Type.STRING)) - { - invokeMethod = new Method( - ii.getMethod().getClazz(), - "runeliteWriteString", - new Signature("(Ljava/lang/String;)V") - ); - } - else - { - throw new IllegalStateException("Unknown type " + argumentType); - } - - return new InvokeVirtual(i.getInstructions(), invokeMethod); - } - - private ClassFile findClient(ClassGroup group) - { - // "client" in vainlla but "Client" in deob.. - ClassFile cf = group.findClass("client"); - return cf != null ? cf : group.findClass("Client"); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ClientErrorTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ClientErrorTransformer.java deleted file mode 100644 index c322b1b3c..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ClientErrorTransformer.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.IfNull; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; - -public class ClientErrorTransformer implements Transformer -{ - private boolean done = false; - - @Override - public void transform(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - transform(m); - } - } - - } - - private void transform(Method m) - { - if (!m.isStatic() || m.getDescriptor().size() != 2 - || !m.getDescriptor().getTypeOfArg(0).equals(Type.STRING) - || !m.getDescriptor().getTypeOfArg(1).equals(Type.THROWABLE)) - return; - - Code code = m.getCode(); - Instructions ins = code.getInstructions(); - - /* - Makes it so the old code in this method is logically dead, - letting the mapper map it but making it so it's never executed. - */ - - Instruction aload0 = new ALoad(ins, 1); // load throwable - - IfNull ifNull = new IfNull(ins, InstructionType.IFNULL); - ifNull.setTo(ins.createLabelFor(ins.getInstructions().get(0))); - - Instruction aload1 = new ALoad(ins, 1); // load throwable - - InvokeVirtual printStackTrace = new InvokeVirtual(ins, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("java/lang/Throwable"), - "printStackTrace", - new Signature("()V") - ) - ); - - Instruction ret = new VReturn(ins); - - ins.addInstruction(0, aload0); - ins.addInstruction(1, ifNull); - ins.addInstruction(2, aload1); - ins.addInstruction(3, printStackTrace); - ins.addInstruction(4, ret); - - done = true; - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GetPathTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GetPathTransformer.java deleted file mode 100644 index 2da257963..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GetPathTransformer.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.Pop; -import net.runelite.deob.Transformer; - -public class GetPathTransformer implements Transformer -{ - - private boolean done = false; - - @Override - public void transform(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - transform(m); - } - } - } - - private void transform(Method m) - { - int count = 0; - - if (m.getCode() == null) - { - return; - } - - for (Instruction i : m.getCode().getInstructions().getInstructions()) - { - if (i instanceof InvokeInstruction) - { - InvokeInstruction ii = (InvokeInstruction) i; - - if (ii.getMethod().getName().equals("getPath")) - { - if (++count == 2) - { - removeInvoke(i); - done = true; - break; - } - } - } - } - } - - private void removeInvoke(Instruction i) - { - Instructions ins = i.getInstructions(); - - int idx = ins.getInstructions().indexOf(i); - - ins.remove(i); - ins.getInstructions().add(idx, new Pop(ins)); // pop File - ins.getInstructions().add(idx + 1, new LDC(ins, "")); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GraphicsObjectTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GraphicsObjectTransformer.java deleted file mode 100644 index 264707886..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/GraphicsObjectTransformer.java +++ /dev/null @@ -1,41 +0,0 @@ -package net.runelite.deob.deobfuscators.transformers; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; - -public class GraphicsObjectTransformer implements Transformer // robots in disguise -{ - private static final String GRAPHICS_OBJECT = "GraphicsObject"; - private static final String RENDERABLE = "Renderable"; - - @Override - public void transform(ClassGroup group) - { - ClassFile graphicsObject = group.findClass(GRAPHICS_OBJECT); - ClassFile renderable = group.findClass(RENDERABLE); - - graphicsObject.clearFinal(); - - Method initGraphicsObject = new Method(graphicsObject, "", new Signature("()V")); - initGraphicsObject.setPublic(); - - final Code code = new Code(initGraphicsObject); - code.setMaxStack(1); - initGraphicsObject.setCode(code); - graphicsObject.addMethod(initGraphicsObject); - - Instructions ins = code.getInstructions(); - - ins.addInstruction(new ALoad(ins, 0)); - ins.addInstruction(new InvokeSpecial(ins, new net.runelite.asm.pool.Method(renderable.getPoolClass(), "", new Signature("()V")))); - ins.addInstruction(new VReturn(ins)); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/MaxMemoryTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/MaxMemoryTransformer.java deleted file mode 100644 index 5617698df..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/MaxMemoryTransformer.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.I2L; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.Pop; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; - -public class MaxMemoryTransformer implements Transformer -{ - private boolean done = false; - - @Override - public void transform(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - transform(m); - } - } - } - - private void transform(Method m) - { - Code code = m.getCode(); - - if (code == null) - { - return; - } - - Instructions ins = code.getInstructions(); - - for (Instruction i : ins.getInstructions()) - { - if (i instanceof InvokeVirtual) - { - /* - invokestatic java/lang/Runtime/getRuntime()Ljava/lang/Runtime; - invokevirtual java/lang/Runtime/maxMemory()J - ldc2_w 1048576 - ldiv - l2i - */ - if (((InvokeVirtual) i).getMethod().getName().equals("maxMemory")) - { - insert(ins, ins.getInstructions().indexOf(i)); - done = true; - break; - } - } - } - } - - private void insert(Instructions ins, int idx) - { - Class randomClass = new net.runelite.asm.pool.Class("java/util/Random"); - - ins.getInstructions().remove(idx); - ins.getInstructions().add(idx++, new Pop(ins)); // pop runtime - ins.getInstructions().add(idx++, new New(ins, randomClass)); - ins.getInstructions().add(idx++, new Dup(ins)); - ins.getInstructions().add(idx++, new InvokeSpecial(ins, new net.runelite.asm.pool.Method(randomClass, "", new Signature("()V")))); // new Random - ins.getInstructions().add(idx++, new LDC(ins, 31457280)); - ins.getInstructions().add(idx++, new InvokeVirtual(ins, new net.runelite.asm.pool.Method(randomClass, "nextInt", new Signature("(I)I")))); // nextInt(31457280) - ins.getInstructions().add(idx++, new LDC(ins, 230686720)); - ins.getInstructions().add(idx++, new IAdd(ins)); // 230686720 + nextInt(31457280) - ins.getInstructions().add(idx++, new I2L(ins)); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/OpcodesTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/OpcodesTransformer.java deleted file mode 100644 index d515c3bcd..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/OpcodesTransformer.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; -import org.objectweb.asm.Opcodes; - -public class OpcodesTransformer implements Transformer -{ - public static final String RUNELITE_OPCODES = "net/runelite/rs/Opcodes"; - - @Override - public void transform(ClassGroup group) - { - ClassFile runeliteOpcodes = group.findClass(RUNELITE_OPCODES); - if (runeliteOpcodes == null) - { - runeliteOpcodes = new ClassFile(group); - runeliteOpcodes.setName(RUNELITE_OPCODES); - runeliteOpcodes.setSuperName(Type.OBJECT.getInternalName()); - runeliteOpcodes.setAccess(Opcodes.ACC_PUBLIC); - group.addClass(runeliteOpcodes); - } - else - { - runeliteOpcodes.getFields().clear(); - } - - Method clinit = runeliteOpcodes.findMethod(""); - if (clinit == null) - { - clinit = new Method(runeliteOpcodes, "", new Signature("()V")); - clinit.setStatic(true); - Code code = new Code(clinit); - code.setMaxStack(1); - clinit.setCode(code); - runeliteOpcodes.addMethod(clinit); - - Instructions instructions = code.getInstructions(); - instructions.addInstruction(new VReturn(instructions)); - } - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ReflectionTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ReflectionTransformer.java deleted file mode 100644 index 3a818b1d4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ReflectionTransformer.java +++ /dev/null @@ -1,243 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import java.util.ArrayList; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; - -public class ReflectionTransformer implements Transformer -{ - @Override - public void transform(ClassGroup group) - { - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - transform(method); - } - } - } - - private void transform(Method method) - { - Code code = method.getCode(); - - if (code == null) - { - return; - } - - Instructions ins = code.getInstructions(); - - for (Instruction i : new ArrayList<>(ins.getInstructions())) - { - transformFindClass(i); - transformMethodName(ins, i); - transformGetParameterTypes(ins, i); - transformGetDeclaredField(ins, i); - transformSetInt(ins, i); - transformGetInt(ins, i); - transformInvokeVirtual(ins, i); - } - } - - // invokestatic java/lang/Class/forName(Ljava/lang/String;)Ljava/lang/Class; - // to - // invokestatic net/runelite/rs/Reflection/findClass(Ljava/lang/String;)Ljava/lang/Class; - private void transformFindClass(Instruction i) - { - if (!(i instanceof InvokeStatic)) - { - return; - } - - InvokeStatic is = (InvokeStatic) i; - - if (is.getMethod().getClazz().getName().equals("java/lang/Class") - && is.getMethod().getName().equals("forName")) - { - is.setMethod( - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "findClass", new Signature("(Ljava/lang/String;)Ljava/lang/Class;") - ) - ); - - } - } - - // invokevirtual java/lang/reflect/Method/getName()Ljava/lang/String; - // to - // invokestatic net/runelite/rs/Reflection/getMethodName(Ljava/lang/reflect/Method;)Ljava/lang/String; - private void transformMethodName(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/reflect/Method") - && iv.getMethod().getName().equals("getName")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "getMethodName", new Signature("(Ljava/lang/reflect/Method;)Ljava/lang/String;") - ) - ); - instructions.replace(iv, is); - - } - } - - // invokevirtual java/lang/reflect/Method/getParameterTypes()[Ljava/lang/Class; - // to - // invokestatic net/runelite/rs/Reflection/getParameterTypes(Ljava/lang/reflect/Method;)[Ljava/lang/Class; - private void transformGetParameterTypes(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/reflect/Method") - && iv.getMethod().getName().equals("getParameterTypes")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "getParameterTypes", new Signature("(Ljava/lang/reflect/Method;)[Ljava/lang/Class;") - ) - ); - instructions.replace(iv, is); - - } - } - - // invokevirtual java/lang/Class/getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field; - // to - // invokestatic net/runelite/rs/Reflection/findField - private void transformGetDeclaredField(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/Class") - && iv.getMethod().getName().equals("getDeclaredField")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "findField", new Signature("(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;") - ) - ); - instructions.replace(iv, is); - - } - } - - // invokevirtual java/lang/reflect/Field/setInt(Ljava/lang/Object;I)V - private void transformSetInt(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/reflect/Field") - && iv.getMethod().getName().equals("setInt")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "setInt", new Signature("(Ljava/lang/reflect/Field;Ljava/lang/Object;I)V") - ) - ); - instructions.replace(iv, is); - - } - } - - // invokevirtual java/lang/reflect/Field/getInt(Ljava/lang/Object;)I - private void transformGetInt(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/reflect/Field") - && iv.getMethod().getName().equals("getInt")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "getInt", new Signature("(Ljava/lang/reflect/Field;Ljava/lang/Object;)I") - ) - ); - instructions.replace(iv, is); - - } - } - - // invokevirtual java/lang/reflect/Method/invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; - private void transformInvokeVirtual(Instructions instructions, Instruction i) - { - if (!(i instanceof InvokeVirtual)) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - - if (iv.getMethod().getClazz().getName().equals("java/lang/reflect/Method") - && iv.getMethod().getName().equals("invoke")) - { - InvokeStatic is = new InvokeStatic(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class("net/runelite/rs/Reflection"), "invoke", new Signature("(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;") - ) - ); - instructions.replace(iv, is); - - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/RuneliteBufferTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/RuneliteBufferTransformer.java deleted file mode 100644 index aeb52d276..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/RuneliteBufferTransformer.java +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers; - -import java.io.IOException; -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import static net.runelite.asm.attributes.code.InstructionType.RETURN; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IfEq; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.Transformer; -import net.runelite.deob.c2s.RWOpcodeFinder; -import net.runelite.deob.deobfuscators.transformers.buffer.BufferFinder; -import net.runelite.deob.deobfuscators.transformers.buffer.BufferMethodInjector; -import net.runelite.deob.deobfuscators.transformers.buffer.BufferPayloadFinder; -import net.runelite.deob.deobfuscators.transformers.buffer.PacketFlushFinder; -import org.objectweb.asm.Opcodes; - -public class RuneliteBufferTransformer implements Transformer -{ - private static final String RUNELITE_PACKET = "RUNELITE_PACKET"; - private static final String RUNELITE_INIT_PACKET = "runeliteInitPacket"; - private static final String RUNELITE_FINISH_PACKET = "runeliteFinishPacket"; - - @Override - public void transform(ClassGroup group) - { - injectRunelitePacket(group); - injectBufferMethods(group); - injectLengthHeader(group); - injectPacketFinish(group); - } - - /** - * inject RUNELITE_PACKET field - * - * @param group - */ - private void injectRunelitePacket(ClassGroup group) - { - ClassFile client = findClient(group); - assert client != null : "no client class"; - - if (client.findField(RUNELITE_PACKET) != null) - { - return; - } - - Field field = new Field(client, RUNELITE_PACKET, Type.BOOLEAN); - field.setAccessFlags(Opcodes.ACC_PUBLIC | Opcodes.ACC_STATIC); - client.addField(field); - } - - private ClassFile findClient(ClassGroup group) - { - // "client" in vainlla but "Client" in deob.. - ClassFile cf = group.findClass("client"); - return cf != null ? cf : group.findClass("Client"); - } - - /** - * inject runelite buffer methods - * - * @param group - */ - private void injectBufferMethods(ClassGroup group) - { - BufferFinder bf = new BufferFinder(group); - bf.find(); - - BufferPayloadFinder bpf = new BufferPayloadFinder(bf.getBuffer()); - bpf.find(); - - BufferMethodInjector bmi = new BufferMethodInjector(bpf); - try - { - bmi.inject(); - } - catch (IOException ex) - { - } - } - - /** - * inject the length header after the packet opcode - * - * @param group - */ - private void injectLengthHeader(ClassGroup group) - { - RWOpcodeFinder rw = new RWOpcodeFinder(group); - rw.find(); - - Method writeOpcode = rw.getWriteOpcode(); - Code code = writeOpcode.getCode(); - Instructions instructions = code.getInstructions(); - List ins = instructions.getInstructions(); - - Instruction start = ins.get(0); - Instruction end = ins.stream().filter(i -> i.getType() == RETURN).findFirst().get(); - - Label labelForStart = instructions.createLabelFor(start); - Label labelForEnd = instructions.createLabelFor(end); - - final net.runelite.asm.pool.Field runelitePacketField = new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(findClient(group).getName()), - RUNELITE_PACKET, - Type.BOOLEAN - ); - - int idx = ins.indexOf(labelForStart); - - instructions.addInstruction(idx++, new GetStatic(instructions, runelitePacketField)); - instructions.addInstruction(idx++, new IfEq(instructions, labelForStart)); - - net.runelite.asm.pool.Method method = new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(writeOpcode.getClassFile().getName()), - RUNELITE_FINISH_PACKET, - new Signature("()V") - ); - instructions.addInstruction(idx++, new ALoad(instructions, 0)); - instructions.addInstruction(idx++, new InvokeVirtual(instructions, method)); - - idx = ins.indexOf(labelForEnd); - - instructions.addInstruction(idx++, new GetStatic(instructions, runelitePacketField)); - instructions.addInstruction(idx++, new IfEq(instructions, labelForEnd)); - - method = new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(writeOpcode.getClassFile().getName()), - RUNELITE_INIT_PACKET, - new Signature("()V") - ); - instructions.addInstruction(idx++, new ALoad(instructions, 0)); - instructions.addInstruction(idx++, new InvokeVirtual(instructions, method)); - } - - private void injectPacketFinish(ClassGroup group) - { - PacketFlushFinder pff = new PacketFlushFinder(group); - pff.find(); - - for (InstructionContext queueForWriteCtx : pff.getQueueForWrite()) - { - Instruction before = queueForWriteCtx.getPops().get(3) // socket - .getPushed().getInstruction(); - GetStatic getBuffer; - - try - { - getBuffer = (GetStatic) queueForWriteCtx.getPops().get(2) // buffer - .getPushed().getPops().get(0) // getstatic - .getPushed().getInstruction(); - } - catch (ClassCastException ex) - { - continue; - } - - Instructions instructions = before.getInstructions(); - - int idx = instructions.getInstructions().indexOf(before); - assert idx != -1; - - instructions.addInstruction(idx++, getBuffer.clone()); - - net.runelite.asm.pool.Method method = new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(getBuffer.getField().getType().getInternalName()), - RUNELITE_FINISH_PACKET, - new Signature("()V") - ); - instructions.addInstruction(idx++, new InvokeVirtual(instructions, method)); - } - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ScriptOpcodesTransformer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ScriptOpcodesTransformer.java deleted file mode 100644 index 70e9ce482..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/ScriptOpcodesTransformer.java +++ /dev/null @@ -1,160 +0,0 @@ -package net.runelite.deob.deobfuscators.transformers; - -import java.util.Comparator; -import java.util.HashMap; -import java.util.ListIterator; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.IfICmpEq; -import net.runelite.asm.attributes.code.instructions.IfICmpNe; -import net.runelite.asm.pool.Class; -import net.runelite.deob.Transformer; -import org.objectweb.asm.Opcodes; -import static org.objectweb.asm.Opcodes.ACC_FINAL; -import static org.objectweb.asm.Opcodes.ACC_PUBLIC; -import static org.objectweb.asm.Opcodes.ACC_STATIC; - -public class ScriptOpcodesTransformer implements Transformer // robots in disguise -{ - private static final String SCRIPT_OPCODES = "net/runelite/rs/ScriptOpcodes"; - private static final HashMap OPCODE_MAP = new HashMap<>(); - - static - { - for (java.lang.reflect.Field opcodeField : net.runelite.cache.script.RuneLiteOpcodes.class.getDeclaredFields()) - { - if (opcodeField.getType() != int.class || !opcodeField.canAccess(null)) - { - continue; - } - - String opcodeName = opcodeField.getName(); - int opcode; - - try - { - opcode = opcodeField.getInt(null); - } - catch (IllegalAccessException e) - { - throw new RuntimeException(e); - } - - OPCODE_MAP.put(opcode, opcodeName); - } - } - - @Override - public void transform(ClassGroup group) - { - initializeOpcodesClassFile(group); - - for (ClassFile cf : group.getClasses()) - { - if (cf.getName().startsWith("net/runelite/rs")) - { - continue; - } - - for (Method m : cf.getMethods()) - { - if (!m.isStatic()) - { - continue; - } - - if (!m.getDescriptor().getArguments().contains(new Type("LScript;")) && !m.getDescriptor().getArguments().contains(new Type("LScriptEvent;"))) - { - continue; - } - - boolean varIndexIsKnownAnd0 = m.getDescriptor().getArguments().contains(new Type("LScript;")); - - Code code = m.getCode(); - Instructions ins = code.getInstructions(); - ListIterator it = ins.getInstructions().listIterator(); - - Instruction i; - while (it.hasNext()) - { - i = it.next(); - - if (!(i instanceof ILoad) || (varIndexIsKnownAnd0 && ((ILoad) i).getVariableIndex() != 0)) - { - continue; - } - - i = it.next(); - - if (!(i instanceof PushConstantInstruction) || - !(((PushConstantInstruction) i).getConstant() instanceof Number)) - { - continue; - } - - int val = ((Number) ((PushConstantInstruction) i).getConstant()).intValue(); - String name = OPCODE_MAP.get(val); - - i = it.next(); - - if (name == null || !(i instanceof IfICmpNe || i instanceof IfICmpEq)) - { - continue; - } - - it.previous(); - it.previous(); - - net.runelite.asm.pool.Field pool = new net.runelite.asm.pool.Field( - new Class(SCRIPT_OPCODES), - name, - Type.INT - ); - - GetStatic getStatic = new GetStatic(ins, pool); - it.set(getStatic); - } - } - } - } - - private static void initializeOpcodesClassFile(ClassGroup group) - { - ClassFile scriptOpcodes = group.findClass(SCRIPT_OPCODES); - if (scriptOpcodes == null) - { - scriptOpcodes = new ClassFile(group); - scriptOpcodes.setName(SCRIPT_OPCODES); - scriptOpcodes.setSuperName(Type.OBJECT.getInternalName()); - scriptOpcodes.setAccess(Opcodes.ACC_PUBLIC); - scriptOpcodes.setVersion(Opcodes.V1_8); - group.addClass(scriptOpcodes); - } - else - { - scriptOpcodes.getFields().clear(); - } - - ClassFile finalScriptOpcodes = scriptOpcodes; - OPCODE_MAP.entrySet().stream().sorted(Comparator.comparingInt(Map.Entry::getKey)).forEach((entry) -> - { - Integer opcode = entry.getKey(); - String opcodeName = entry.getValue(); - - Field field = new Field(finalScriptOpcodes, opcodeName, Type.INT); - field.setAccessFlags(ACC_PUBLIC | ACC_STATIC | ACC_FINAL); - field.setValue(opcode); - finalScriptOpcodes.addField(field); - }); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferFinder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferFinder.java deleted file mode 100644 index 7102a044f..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferFinder.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers.buffer; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; - -/** - * Class which identifies Buffer and PacketBuffer - * - * @author Adam - */ -public class BufferFinder -{ - private final ClassGroup group; - - private ClassFile buffer, packetBuffer; - - public BufferFinder(ClassGroup group) - { - this.group = group; - } - - public ClassFile getBuffer() - { - return buffer; - } - - public ClassFile getPacketBuffer() - { - return packetBuffer; - } - - public void find() - { - for (ClassFile cf : group.getClasses()) - { - for (Method m : cf.getMethods()) - { - Code code = m.getCode(); - - if (findModPow(code)) - { - buffer = cf; - - // packetBuffer extends this - packetBuffer = group.getClasses().stream() - .filter(cl -> cl.getParent() == cf) - .findAny() - .get(); - } - } - } - } - - // Find encryptRsa in buffer - private boolean findModPow(Code code) - { - if (code == null) - { - return false; - } - - Instructions instructions = code.getInstructions(); - - for (Instruction i : instructions.getInstructions()) - { - if (!(i instanceof InvokeVirtual)) - { - continue; - } - - InvokeVirtual iv = (InvokeVirtual) i; - net.runelite.asm.pool.Method method = iv.getMethod(); - if (method.getName().equals("modPow")) - { - return true; - } - } - return false; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferMethodInjector.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferMethodInjector.java deleted file mode 100644 index 691c18b5b..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferMethodInjector.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers.buffer; - -import java.io.IOException; -import java.io.InputStream; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.visitors.ClassFileVisitor; -import org.objectweb.asm.ClassReader; - -public class BufferMethodInjector -{ - private final BufferPayloadFinder bp; - - public BufferMethodInjector(BufferPayloadFinder bp) - { - this.bp = bp; - } - - public void inject() throws IOException - { - Field buffer = bp.getBuffer(); - Field offset = bp.getOffset(); - - assert buffer.getClassFile() == offset.getClassFile(); - - InputStream in = getClass().getResourceAsStream("RuneliteBuffer.class"); - assert in != null : "no RuneliteBuffer"; - ClassFile runeliteBuffer = loadClass(in); - - ClassFile bufferClass = buffer.getClassFile(); - - for (Field f : runeliteBuffer.getFields()) - { - if (!f.getName().startsWith("runelite")) - { - continue; - } - - inject(bufferClass, f); - } - - for (Method m : runeliteBuffer.getMethods()) - { - if (!m.getName().startsWith("runelite")) - { - continue; - } - - inject(bufferClass, m); - } - } - - private void inject(ClassFile bufferClass, Method method) - { - assert method.getExceptions().getExceptions().isEmpty(); - - Method newMethod = new Method(bufferClass, method.getName(), method.getDescriptor()); - Code code = new Code(newMethod); - newMethod.setCode(code); - - method.getCode().getInstructions().getInstructions().stream() - .forEach(i -> - { - if (!(i instanceof Label)) - { - i = i.clone(); - } - - if (i instanceof FieldInstruction) - { - FieldInstruction fi = (FieldInstruction) i; - if (fi.getField().getName().equals("offset")) - { - fi.setField(bp.getOffset().getPoolField()); - } - else if (fi.getField().getName().equals("payload")) - { - fi.setField(bp.getBuffer().getPoolField()); - } - else if (fi.getField().getName().equals("runeliteLengthOffset")) - { - fi.setField(bufferClass.findField("runeliteLengthOffset").getPoolField()); - } - } - - i.setInstructions(code.getInstructions()); - code.getInstructions().addInstruction(i); - }); - - code.getExceptions().getExceptions().addAll(method.getCode().getExceptions().getExceptions()); - - bufferClass.addMethod(newMethod); - } - - private void inject(ClassFile bufferClass, Field field) - { - Field newField = new Field(bufferClass, field.getName(), field.getType()); - newField.setAccessFlags(field.getAccessFlags()); - newField.setValue(field.getValue()); - bufferClass.addField(newField); - } - - static ClassFile loadClass(InputStream in) throws IOException - { - ClassReader reader = new ClassReader(in); - ClassFileVisitor cv = new ClassFileVisitor(); - - reader.accept(cv, ClassReader.SKIP_FRAMES); - - return cv.getClassFile(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferPayloadFinder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferPayloadFinder.java deleted file mode 100644 index dc4ec9539..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/BufferPayloadFinder.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers.buffer; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Type; - -public class BufferPayloadFinder -{ - private final ClassFile bufferClass; - - private Field offset; - private Field buffer; - - public BufferPayloadFinder(ClassFile bufferClass) - { - this.bufferClass = bufferClass; - } - - public void find() - { - for (Field field : bufferClass.getFields()) - { - if (field.getType().equals(Type.INT)) - { - offset = field; - } - else if (field.getType().equals(new Type("[B"))) - { - buffer = field; - } - } - } - - public Field getOffset() - { - return offset; - } - - public Field getBuffer() - { - return buffer; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/PacketFlushFinder.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/PacketFlushFinder.java deleted file mode 100644 index c792c7ecc..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/PacketFlushFinder.java +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers.buffer; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import static net.runelite.asm.attributes.code.InstructionType.GETFIELD; -import static net.runelite.asm.attributes.code.InstructionType.INVOKEVIRTUAL; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.signature.Signature; - -public class PacketFlushFinder -{ - private final ClassGroup group; - - private final List queueForWrite = new ArrayList<>(); - - public PacketFlushFinder(ClassGroup group) - { - this.group = group; - } - - public List getQueueForWrite() - { - return queueForWrite; - } - - public void find() - { - ClassFile client = group.findClass("Client"); - if (client == null) - { - client = group.findClass("client"); - } - - for (Method method : client.getMethods()) - { - find(method); - } - } - - private void find(Method method) - { - Code code = method.getCode(); - Set checked = new HashSet<>(); - - Execution e = new Execution(group); - e.addMethod(method); - e.noInvoke = true; - e.noExceptions = true; - e.addExecutionVisitor(ic -> - { - Instruction i = ic.getInstruction(); - - if (checked.contains(i)) - { - return; - } - checked.add(i); - - if (i.getType() != INVOKEVIRTUAL) - { - return; - } - - InvokeVirtual iv = (InvokeVirtual) i; - // queueForWrite - if (!iv.getMethod().getType().equals(new Signature("([BII)V"))) - { - return; - } - - InstructionContext lengthCtx = ic.getPops().get(0).getPushed(); - if (lengthCtx.getInstruction().getType() != GETFIELD) - { - return; - } - - queueForWrite.add(ic); - }); - e.run(); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/RuneliteBuffer.java b/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/RuneliteBuffer.java deleted file mode 100644 index c60232cf4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/transformers/buffer/RuneliteBuffer.java +++ /dev/null @@ -1,198 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.deobfuscators.transformers.buffer; - -import java.io.UnsupportedEncodingException; - -/** - * Methods injected into runescape-client's Buffer - * - * @author Adam - */ -public class RuneliteBuffer -{ - // so that it compiles - private int offset; - private byte[] payload; - private int runeliteLengthOffset; - - public int getOffset() - { - return offset; - } - - public void setOffset(int offset) - { - this.offset = offset; - } - - public byte[] getPayload() - { - return payload; - } - - public void setPayload(byte[] payload) - { - this.payload = payload; - } - - public int getRuneliteLengthOffset() - { - return runeliteLengthOffset; - } - - public void setRuneliteLengthOffset(int runeliteLengthOffset) - { - this.runeliteLengthOffset = runeliteLengthOffset; - } - - public byte runeliteReadByte() - { - offset += 1; - return payload[offset - 1]; - } - - public short runeliteReadShort() - { - offset += 2; - return (short) (((payload[offset - 2] & 0xFF) << 8) - | (payload[offset - 1] & 0xFF)); - } - - public int runeliteReadInt() - { - offset += 4; - return ((payload[offset - 4] & 0xFF) << 24) - | ((payload[offset - 3] & 0xFF) << 16) - | ((payload[offset - 2] & 0xFF) << 8) - | (payload[offset - 1] & 0xFF); - } - - public long runeliteReadLong() - { - offset += 8; - return ((payload[offset - 8] & 0xFFL) << 56) - | ((payload[offset - 7] & 0xFFL) << 48) - | ((payload[offset - 6] & 0xFFL) << 40) - | ((payload[offset - 5] & 0xFFL) << 32) - | ((payload[offset - 4] & 0xFFL) << 24) - | ((payload[offset - 3] & 0xFFL) << 16) - | ((payload[offset - 2] & 0xFFL) << 8) - | (payload[offset - 1] & 0xFFL); - } - - public String runeliteReadString() - { - int length = runeliteReadShort(); - if (length < 0) - { - throw new RuntimeException("length < 0"); - } - - offset += length; - try - { - return new String(payload, offset - length, length, "UTF-8"); - } - catch (UnsupportedEncodingException ex) - { - throw new RuntimeException(ex); - } - } - - public void runeliteWriteByte(byte b) - { - payload[offset++] = b; - } - - public void runeliteWriteShort(short s) - { - payload[offset++] = (byte) (s >> 8); - payload[offset++] = (byte) s; - } - - public void runeliteWriteInt(int i) - { - payload[offset++] = (byte) (i >> 24); - payload[offset++] = (byte) (i >> 16); - payload[offset++] = (byte) (i >> 8); - payload[offset++] = (byte) i; - } - - public void runeliteWriteLong(long l) - { - payload[offset++] = (byte) (l >> 56); - payload[offset++] = (byte) (l >> 48); - payload[offset++] = (byte) (l >> 40); - payload[offset++] = (byte) (l >> 32); - payload[offset++] = (byte) (l >> 24); - payload[offset++] = (byte) (l >> 16); - payload[offset++] = (byte) (l >> 8); - payload[offset++] = (byte) l; - } - - public void runeliteWriteString(String s) - { - byte[] bytes; - - try - { - bytes = s.getBytes("UTF-8"); - } - catch (UnsupportedEncodingException ex) - { - throw new RuntimeException(ex); - } - - runeliteWriteShort((short) bytes.length); - for (byte b : bytes) - { - payload[offset++] = b; - } - } - - public void runeliteInitPacket() - { - runeliteLengthOffset = offset; - runeliteWriteShort((short) 0); // flush() relies on default length of 0 - } - - public void runeliteFinishPacket() - { - if (runeliteLengthOffset > 0) - { - int length = offset - runeliteLengthOffset - 2; - if (length < 0) - { - // on flush() it sets offset = 0 - // but runeliteLengthOffset remains >0 - return; - } - payload[runeliteLengthOffset++] = (byte) (length >> 8); - payload[runeliteLengthOffset++] = (byte) length; - runeliteLengthOffset = 0; - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/s2c/HandlerFinder.java b/deobfuscator/src/main/java/net/runelite/deob/s2c/HandlerFinder.java deleted file mode 100644 index 214c13f5f..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/s2c/HandlerFinder.java +++ /dev/null @@ -1,299 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.s2c; - -import com.google.common.collect.HashMultimap; -import com.google.common.collect.Multimap; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.If; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.Frame; -import net.runelite.asm.execution.InstructionContext; - -public class HandlerFinder -{ - - private final ClassGroup group; - private final Field packetType; - private final Execution execution; - - public HandlerFinder(ClassGroup group, Field packetType) - { - this.group = group; - this.packetType = packetType; - this.execution = new Execution(group); - } - - public ClassGroup getGroup() - { - return group; - } - - public Execution getExecution() - { - return execution; - } - - public PacketHandlers findHandlers() - { - // Some of the packet handlers are if (type == 1 || type == 2) func() - // and func() checks the type... so search all functions for packet handlers - - List handlers = new ArrayList<>(); - - for (ClassFile cf : group.getClasses()) - { - for (Method method : cf.getMethods()) - { - if (method.getCode() == null) - { - continue; - } - - List h = findHandlers(method, packetType); - handlers.addAll(h); - } - } - - PacketHandlers packetHandlers = new PacketHandlers(group, packetType, handlers); - removeDuplicates(packetHandlers); - prepareFrame(execution, packetHandlers); - return packetHandlers; - } - - private List findHandlers(Method process, Field packetOpcode) - { - List handlers = new ArrayList<>(); - - Instructions ins = process.getCode().getInstructions(); - - for (int j = 0; j < ins.getInstructions().size(); ++j) - { - Instruction i = ins.getInstructions().get(j); - - if (i.getType() != InstructionType.GETSTATIC) - { - continue; - } - - GetStatic gs = (GetStatic) i; - if (gs.getMyField() != packetOpcode) - { - continue; - } - - Instruction push = ins.getInstructions().get(j + 1); - if (!(push instanceof PushConstantInstruction)) - { - continue; - } - - PushConstantInstruction pci = (PushConstantInstruction) push; - if (!(pci.getConstant() instanceof Number)) - { - continue; - } - - int opcode = ((Number) pci.getConstant()).intValue(); - - if (opcode == -1) - { - continue; - } - - Instruction jump = ins.getInstructions().get(j + 2); - if (jump.getType() != InstructionType.IF_ICMPEQ && jump.getType() != InstructionType.IF_ICMPNE) - { - continue; - } - - Instruction start, end; - if (jump.getType() == InstructionType.IF_ICMPEQ) - { - // this seems to not ever happen - start = ((If) jump).getJumps().get(0); - //end = ins.getInstructions().get(j + 3); - end = null; - } - else - { - start = ins.getInstructions().get(j + 3); - end = ((If) jump).getJumps().get(0); - } - - PacketHandler handler = new PacketHandler(process, jump, start, push, opcode); - handlers.add(handler); - - if (end != null) - { - // Anything else which jumps to here instead needs to return. - insertReturn(ins, jump, end); - } - } - - return handlers; - } - - private void removeDuplicates(PacketHandlers handlers) - { - // remove handlers which have multiple opcodes - Multimap i2h = HashMultimap.create(); - - for (PacketHandler handler : handlers.getHandlers()) - { - i2h.put(handler.getStart(), handler); - } - - for (Instruction i : i2h.keySet()) - { - int sz = i2h.get(i).size(); - - if (sz == 1) - { - continue; - } - - // this is part of if (opcode == 1 || opcode == 2 || ...) func(); - for (PacketHandler ph : i2h.get(i)) - { - handlers.getHandlers().remove(ph); - } - } - } - - private void prepareFrame(Execution e, PacketHandlers handlers) - { - List methods = handlers.getHandlers().stream() - .map(handler -> handler.getMethod()) - .distinct() - .collect(Collectors.toList()); - - for (Method method : methods) - { - List phandlers = handlers.getHandlers().stream() - .filter(handler -> handler.getMethod() == method) - .collect(Collectors.toList()); - - prepareFrame(e, method, phandlers); - } - } - - private void prepareFrame(Execution e, Method method, List handlers) - { - e.step = true; - - Frame f = new Frame(e, method); - f.initialize(); - - e.addFrame(f); - - while (e.frames.isEmpty() == false) - { - f = e.frames.get(0); - - if (!f.isExecuting()) - { - e.frames.remove(0); - continue; - } - - assert f.isExecuting(); - f.execute(); - - e.paused = false; - - InstructionContext ctx = f.getInstructions().get(f.getInstructions().size() - 1); - - for (PacketHandler handler : handlers) - { - if (handler.getAfterRead() == ctx.getInstruction()) - { - // frame is stopped at jump prior to handler - handler.frame = f.dup(); - e.frames.remove(handler.frame); - } - if (handler.getJump() == ctx.getInstruction()) - { - handler.jumpFrame = f.dup(); - e.frames.remove(handler.jumpFrame); - assert handler.jumpFrame.isExecuting(); - } - } - } - } - - private void insertReturn(Instructions ins, Instruction start, Instruction end) - { - assert end instanceof Label; - int idx = ins.getInstructions().indexOf(end); - assert idx != -1; - - Instruction before = ins.getInstructions().get(idx - 1); - if (before.getType() == InstructionType.RETURN) //XXX check isTerminal? - { - return; - } - - // insert return before end - Instruction ret = new VReturn(ins); - ins.addInstruction(idx, ret); - - Label label = ins.createLabelFor(ret); - - // Change jumps which go to the next handler to instead go to return - for (Instruction i : ins.getInstructions()) - { - if (i instanceof JumpingInstruction) - { - JumpingInstruction j = (JumpingInstruction) i; - - if (i == start) - { - continue; - } - - if (j.getJumps().size() == 1 && j.getJumps().get(0) == end) - { - j.setJumps(Collections.singletonList(label)); - } - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandler.java b/deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandler.java deleted file mode 100644 index 535ae1bf6..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/s2c/PacketHandler.java +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Copyright (c) 2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.s2c; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.execution.Frame; -import net.runelite.deob.deobfuscators.packethandler.PacketRead; - -public class PacketHandler implements Cloneable -{ - - private final Method method; - private final Instruction jump; // jump for the packet handler - private final Instruction start; // first instruction in the handler - private final Instruction push; // instruction which pushes opcode constant - private final int opcode; - - public Frame frame; // after read - public Frame jumpFrame; - - public List mappable = new ArrayList<>(); // mappable instructions - public List reads = new ArrayList<>(); // instructions which read packet data - public List sortedReads; - public Map lvtOrder = new HashMap<>(); // access order of lvt, lvt index -> order - - public Set fieldRead = new HashSet<>(); - public Set fieldWrite = new HashSet<>(); - public Set methodInvokes = new HashSet<>(); - public List constants = new ArrayList<>(); - - public PacketHandler(Method method, Instruction jump, Instruction start, Instruction push, int opcode) - { - this.method = method; - this.jump = jump; - this.start = start; - this.push = push; - this.opcode = opcode; - } - - @Override - public String toString() - { - return "PacketHandler{" + "start=" + start + ", opcode=" + opcode + '}'; - } - - @Override - public PacketHandler clone() - { - try - { - return (PacketHandler) super.clone(); - } - catch (CloneNotSupportedException ex) - { - throw new RuntimeException(ex); - } - } - - public Method getMethod() - { - return method; - } - - public Instruction getJump() - { - return jump; - } - - public Instruction getStart() - { - return start; - } - - public Instruction getPush() - { - return push; - } - - public Instruction getAfterRead() - { - if (reads.isEmpty()) - { - return null; - } - - PacketRead last = reads.get(reads.size() - 1); - if (last.getStore() == null) - { - return null; - } - - List ins = method.getCode().getInstructions().getInstructions(); - int idx = ins.indexOf(last.getStore()); - if (idx == -1) - { - return null; // can be a read in not this function - } - - return ins.get(idx + 1); - } - - public int getOpcode() - { - return opcode; - } - - public boolean hasPacketRead(Instruction i) - { - for (PacketRead pr : reads) - { - if (pr.getInvoke() == i) - { - return true; - } - } - return false; - } - - public void findReorderableReads() - { - for (PacketRead pr : reads) - { - //InstructionContext invokeCtx = pr.getInvokeCtx(); - List instructions = pr.getInvoke().getInstructions().getInstructions(); - - // look for an lvt store immediately after - int invokeIdx = instructions.indexOf(pr.getInvoke()); - assert invokeIdx != -1; - - Instruction next = instructions.get(invokeIdx + 1); - if (next instanceof LVTInstruction) - { - LVTInstruction lvt = (LVTInstruction) next; - if (lvt.store()) - { - pr.setStore(next); - } - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationAdder.java b/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationAdder.java deleted file mode 100644 index b229404a0..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationAdder.java +++ /dev/null @@ -1,77 +0,0 @@ -package net.runelite.deob.updater; - -import com.google.common.base.Strings; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Named; -import net.runelite.asm.attributes.Annotated; -import net.runelite.deob.Deob; -import net.runelite.deob.DeobAnnotations; - -public class AnnotationAdder -{ - AnnotationAdder(ClassGroup group) - { - this.group = group; - } - - private final ClassGroup group; - - public void run() - { - int impl = 0; - int meth = 0; - int field = 0; - - for (ClassFile c : group.getClasses()) - { - if (c.getName().contains("runelite")) - { - continue; - } - - String implementingName = DeobAnnotations.getImplements(c); - if (!Strings.isNullOrEmpty(implementingName)) - { - // Still error here cause I don't wanna call classes dumb shit - assert implementingName.equals(c.getClassName()) : c + " implements " + implementingName + " but is called " + c.getClassName(); - } - else if (!Deob.isObfuscated(c.getClassName())) - { - c.addAnnotation(DeobAnnotations.IMPLEMENTS, c.getClassName()); - impl++; - } - - for (Field f : c.getFields()) - { - if (addExport(f)) - field++; - } - - for (Method m : c.getMethods()) - { - if (addExport(m)) - meth++; - } - } - } - - private boolean addExport(T m) - { - String methodName = m.getName(); - String exportedName = DeobAnnotations.getExportedName(m); - - if (exportedName == null && Deob.isObfuscated(methodName) - || methodName.equals(DeobAnnotations.getObfuscatedName(m)) - || DeobAnnotations.getObfuscatedName(m) == null - || methodName.equals(exportedName)) - { - return false; - } - - m.findAnnotation(DeobAnnotations.EXPORT, true).setElement(methodName); - return true; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationCopier.java b/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationCopier.java deleted file mode 100644 index 857610b27..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationCopier.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.updater; - -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.Annotation; -import net.runelite.asm.attributes.Annotated; - -public class AnnotationCopier -{ - private final ClassGroup group1, group2; - private final Set types; - - public AnnotationCopier(ClassGroup group1, ClassGroup group2, Type... types) - { - this.group1 = group1; - this.group2 = group2; - this.types = new HashSet<>(Arrays.asList(types)); - } - - public void copy() - { - for (ClassFile cf1 : group1.getClasses()) - { - ClassFile cf2 = group2.findClass(cf1.getName()); - - assert cf2 != null; - - copy(cf1, cf2); - - for (Field f : cf1.getFields()) - { - Field f2 = cf2.findField(f.getName(), f.getType()); - - assert f2 != null || f.getAnnotations().isEmpty(); - - if (f2 == null) - continue; - - copy(f, f2); - } - - for (Method m : cf1.getMethods()) - { - Method m2 = cf2.findMethod(m.getName(), m.getDescriptor()); - - assert m2 != null || m == null; - - if (m2 == null) - continue; - - copy(m, m2); - } - } - } - - private void copy(Annotated an, Annotated an2) - { - for (Annotation a : an.getAnnotations().values()) - { - final var t = a.getType(); - if (isType(t)) - an2.getAnnotations().replace(t, a); - } - } - - private boolean isType(Type type) - { - return types.contains(type); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationRenamer.java b/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationRenamer.java deleted file mode 100644 index 263a850fa..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/AnnotationRenamer.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package net.runelite.deob.updater; - -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Annotation; -import net.runelite.asm.attributes.Annotated; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.deobfuscators.Renamer; -import net.runelite.deob.util.NameMappings; - -public class AnnotationRenamer -{ - private ClassGroup group; - - public AnnotationRenamer(ClassGroup group) - { - this.group = group; - } - - public void run() - { - NameMappings mappings = buildMappings(); - - Renamer renamer = new Renamer(mappings); - renamer.run(group); - } - - private NameMappings buildMappings() - { - NameMappings mappings = new NameMappings(); - - for (ClassFile cf : group.getClasses()) - { - String name = getImplements(cf); - if (name != null) - mappings.map(cf.getPoolClass(), name); - - for (Field f : cf.getFields()) - { - name = DeobAnnotations.getExportedName(f); - if (name != null) - mappings.map(f.getPoolField(), name); - } - - for (Method m : cf.getMethods()) - { - name = DeobAnnotations.getExportedName(m); - if (name != null) - mappings.map(m.getPoolMethod(), name); - } - } - - return mappings; - } - - private String getImplements(Annotated cf) - { - Annotation an = cf.findAnnotation(DeobAnnotations.IMPLEMENTS); - return an == null ? null : an.getValueString(); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/MappingDumper.java b/deobfuscator/src/main/java/net/runelite/deob/updater/MappingDumper.java deleted file mode 100644 index c7892c5f4..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/MappingDumper.java +++ /dev/null @@ -1,120 +0,0 @@ -package net.runelite.deob.updater; - -import com.google.common.base.Stopwatch; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.stream.JsonWriter; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.OutputStreamWriter; -import java.nio.charset.StandardCharsets; -import java.util.HashMap; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.pool.Field; -import net.runelite.asm.pool.Method; -import net.runelite.deob.DeobProperties; -import net.runelite.deob.updater.mappingdumper.MappedClass; -import net.runelite.deob.updater.mappingdumper.MappedField; -import net.runelite.deob.updater.mappingdumper.MappedMethod; -import net.runelite.deob.updater.mappingdumper.MappingDump; - -public class MappingDumper -{ - private static ClassGroup group; - private static final Map classMap = new HashMap<>(); - private static final Map fieldMap = new HashMap<>(); - private static final Map methodMap = new HashMap<>(); - - public MappingDumper(ClassGroup group) - { - MappingDumper.group = group; - } - - public void dump(final File outputFile) - { - Stopwatch st = Stopwatch.createStarted(); - group.buildClassGraph(); - - // MappingDump.of(ClassGroup) dumps everything completely - final MappingDump dump = new MappingDump().visitGroup(group); - dump.revision = Integer.parseInt(DeobProperties.getRevision()); - - writeJson(dump, outputFile); - } - - // Without this stack'll overflow :P - private void writeJson(MappingDump dump, File outputFile) - { - final Gson gson = new GsonBuilder().setPrettyPrinting().create(); - try (JsonWriter writer = new JsonWriter(new OutputStreamWriter(new FileOutputStream(outputFile), StandardCharsets.UTF_8))) - { - writer.setIndent(" "); - writer.beginObject(); - writer.name("revision").value(dump.revision); - writer.name("totalClasses").value(dump.totalClasses); - writer.name("totalNamedClasses").value(dump.totalNamedClasses); - writer.name("totalFields").value(dump.totalFields); - writer.name("totalNamedFields").value(dump.totalNamedFields); - writer.name("totalNonStaticFields").value(dump.totalNonStaticFields); - writer.name("totalNamedNonStaticFields").value(dump.totalNamedNonStaticFields); - writer.name("totalStaticFields").value(dump.totalStaticFields); - writer.name("totalNamedStaticFields").value(dump.totalNamedStaticFields); - writer.name("totalMethods").value(dump.totalMethods); - writer.name("totalNamedMethods").value(dump.totalNamedMethods); - writer.name("totalNonStaticMethods").value(dump.totalNonStaticMethods); - writer.name("totalNamedNonStaticMethods").value(dump.totalNamedNonStaticMethods); - writer.name("totalStaticMethods").value(dump.totalStaticMethods); - writer.name("totalNamedStaticMethods").value(dump.totalNamedStaticMethods); - writer.name("mappedClasses"); - writer.beginArray(); - for (MappedClass mc : dump.classes) - { - gson.toJson(mc, MappedClass.class, writer); - } - writer.endArray(); - writer.endObject(); - } - catch (IOException e) - { - } - } - - public static ClassGroup getGroup() - { - return group; - } - - public static void putMap(ClassFile clazz, MappedClass mc) - { - classMap.put(clazz, mc); - } - - public static MappedClass getMap(ClassFile clazz) - { - return classMap.get(clazz); - } - - public static void putMap(Field field, MappedField mf) - { - fieldMap.put(field, mf); - } - - public static MappedField getMap(Field field) - { - return fieldMap.get(field); - } - - public static void putMap(Method method, MappedMethod mm) - { - methodMap.put(method, mm); - } - - public static MappedMethod getMap(Method method) - { - return methodMap.get(method); - } - -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/ParameterRenamer.java b/deobfuscator/src/main/java/net/runelite/deob/updater/ParameterRenamer.java deleted file mode 100644 index 15a4a2b91..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/ParameterRenamer.java +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright (c) 2018, Morgan Lewis - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.updater; - -import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.LocalVariable; -import net.runelite.asm.attributes.code.Parameter; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; - -public class ParameterRenamer -{ - private final ClassGroup source; - private final ClassGroup dest; - private final ParallelExecutorMapping mapping; - - public ParameterRenamer(ClassGroup source, ClassGroup dest, ParallelExecutorMapping mapping) - { - this.source = source; - this.dest = dest; - this.mapping = mapping; - } - - public void run() - { - for (ClassFile sourceCF : source.getClasses()) - { - for (Method sourceM : sourceCF.getMethods()) - { - Method destM = (Method) mapping.get(sourceM); - if (destM != null && destM.getParameters().size() > 0 && sourceM.getParameters() != null && !sourceM.getParameters().isEmpty() && sourceM.getParameters().size() >= 1) - { - List oldParams = destM.getParameters(); - for (int i = 0; i < sourceM.getParameters().size(); i++) - { - String name = sourceM.getParameters().get(i).getName(); - if (name.matches("var[0-9]") || name.length() <= 2 && (name.charAt(0) != 'x' || name.charAt(0) != 'y' || name.charAt(0) != 'z')) - { - continue; - } - - Parameter oldParam = oldParams.get(i); - LocalVariable oldVar = oldParam.getLocalVariable(); - - Parameter newParam = new Parameter(name, oldParam.getAccess()); - oldParams.set(i, newParam); - - if (oldVar == null) - { - continue; - } - - LocalVariable newVar = new LocalVariable( - name, - oldVar.getDesc(), - oldVar.getSignature(), - oldVar.getStart(), - oldVar.getEnd(), - oldVar.getIndex() - ); - - newParam.setLocalVariable(newVar); - } - } - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/UpdateMappings.java b/deobfuscator/src/main/java/net/runelite/deob/updater/UpdateMappings.java deleted file mode 100644 index 58ce675b9..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/UpdateMappings.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Copyright (c) 2016-2017, Adam - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.deob.updater; - -import java.io.File; -import java.io.IOException; -import net.runelite.asm.ClassGroup; -import net.runelite.deob.CreateAnnotations; -import net.runelite.deob.deobfuscators.mapping.AnnotationIntegrityChecker; -import net.runelite.deob.deobfuscators.mapping.AnnotationMapper; -import net.runelite.deob.deobfuscators.mapping.Mapper; -import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping; -import net.runelite.deob.deobfuscators.transformers.GraphicsObjectTransformer; -import net.runelite.deob.deobfuscators.transformers.ScriptOpcodesTransformer; -import net.runelite.deob.util.JarUtil; - -public class UpdateMappings -{ - private final ClassGroup group1, group2; - - public UpdateMappings(ClassGroup group1, ClassGroup group2) - { - this.group1 = group1; - this.group2 = group2; - } - - public void update() - { - CreateAnnotations.run(group1); - Mapper mapper = new Mapper(group1, group2); - mapper.run(); - ParallelExecutorMapping mapping = mapper.getMapping(); - - AnnotationMapper amapper = new AnnotationMapper(group1, group2, mapping); - amapper.run(); - - AnnotationIntegrityChecker aic = new AnnotationIntegrityChecker(group1, group2, mapping); - aic.run(); - - int errors = aic.getErrors(); - - if (errors > 0) - { - System.exit(-1); - } - - AnnotationRenamer an = new AnnotationRenamer(group2); - an.run(); - - ParameterRenamer pr = new ParameterRenamer(group1, group2, mapping); - pr.run(); - - AnnotationAdder ad = new AnnotationAdder(group2); - ad.run(); - - new ScriptOpcodesTransformer().transform(group2); - new GraphicsObjectTransformer().transform(group2); - } - - public void save(File out) throws IOException - { - JarUtil.save(group2, out); - } - - public static void main(String[] args) throws IOException - { - UpdateMappings u = new UpdateMappings( - JarUtil.load(new File("./deobfuscator/osrs-213.jar")), - JarUtil.load(new File("./deobfuscator/deob-215.jar")) - ); - u.update(); - u.save(new File("./deobfuscator/osrs-215.jar")); - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedClass.java b/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedClass.java deleted file mode 100644 index 97dfc60d1..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedClass.java +++ /dev/null @@ -1,67 +0,0 @@ -package net.runelite.deob.updater.mappingdumper; - -import com.google.gson.annotations.SerializedName; -import java.util.List; -import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.updater.MappingDumper; - -public class MappedClass -{ - @SerializedName("class") - public String implementingName; - @SerializedName("name") - public String obfuscatedName; - @SerializedName("super") - public String superClass; - public int access; - public List interfaces; - public List fields; - public List methods; - public List constructors; - - public MappedClass visitClass(final ClassFile c, final MappingDump dump) - { - MappingDumper.putMap(c, this); - - implementingName = DeobAnnotations.getImplements(c); - - obfuscatedName = DeobAnnotations.getObfuscatedName(c); - if (obfuscatedName == null) - { - obfuscatedName = c.getName(); - } - - ClassFile parent = c.getParent(); - if (parent != null) - { - superClass = DeobAnnotations.getObfuscatedName(parent); - } - - access = c.getAccess(); - - interfaces = c.getInterfaces() - .getMyInterfaces() - .stream() - .map(DeobAnnotations::getObfuscatedName) - .collect(Collectors.toList()); - - fields = c.getFields() - .stream() - .map(f -> new MappedField().visitField(f, dump)) - .collect(Collectors.toList()); - - methods = c.getMethods() - .stream() - .map(m -> new MappedMethod().visitMethod(m, dump)) - .collect(Collectors.toList()); - - constructors = methods - .stream() - .filter(m -> m.obfuscatedName.endsWith("init>")) - .collect(Collectors.toList()); - - return this; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedField.java b/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedField.java deleted file mode 100644 index ba4ae28f5..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedField.java +++ /dev/null @@ -1,47 +0,0 @@ -package net.runelite.deob.updater.mappingdumper; - -import com.google.gson.annotations.SerializedName; -import java.util.HashMap; -import java.util.Map; -import net.runelite.asm.Field; -import net.runelite.asm.pool.Method; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.updater.MappingDumper; - -public class MappedField -{ - @SerializedName("field") - public String exportedName; - public String owner; - @SerializedName("name") - public String obfuscatedName; - public int access; - public String descriptor; - public Number decoder; - // method name, amt of times - public Map puts = new HashMap<>(); - public Map gets = new HashMap<>(); - - public MappedField visitField(final Field f, final MappingDump dump) - { - MappingDumper.putMap(f.getPoolField(), this); - - exportedName = DeobAnnotations.getExportedName(f); - - owner = MappingDumper.getMap(f.getClassFile()).obfuscatedName; - - obfuscatedName = DeobAnnotations.getObfuscatedName(f); - if (obfuscatedName == null) - { - obfuscatedName = f.getName(); - } - - access = f.getAccessFlags(); - - descriptor = f.getObfuscatedType().toString(); - - decoder = DeobAnnotations.getObfuscatedGetter(f); - - return this; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedMethod.java b/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedMethod.java deleted file mode 100644 index f2eb54977..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappedMethod.java +++ /dev/null @@ -1,113 +0,0 @@ -package net.runelite.deob.updater.mappingdumper; - -import com.google.gson.annotations.SerializedName; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.stream.Collectors; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Parameter; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.updater.MappingDumper; - -public class MappedMethod -{ - @SerializedName("method") - public String exportedName; - public String owner; - @SerializedName("name") - public String obfuscatedName; - public int access; - public List parameters; - public String descriptor; - public String garbageValue; - public List lineNumbers; - public Map fieldGets = new HashMap<>(); - public Map fieldPuts = new HashMap<>(); - public Map dependencies = new HashMap<>(); - - public MappedMethod visitMethod(final Method m, final MappingDump dump) - { - MappingDumper.putMap(m.getPoolMethod(), this); - exportedName = DeobAnnotations.getExportedName(m); - - owner = MappingDumper.getMap(m.getClassFile()).obfuscatedName; - - obfuscatedName = DeobAnnotations.getObfuscatedName(m); - if (obfuscatedName == null) - { - obfuscatedName = m.getName(); - } - - access = m.getAccessFlags(); - - parameters = m.getParameters() - .stream() - .map(Parameter::getName) - .collect(Collectors.toList()); - - descriptor = m.getObfuscatedSignature().toString(); - - garbageValue = DeobAnnotations.getDecoder(m); - - Code c = m.getCode(); - if (c != null) - { - visitCode(c); - } - - return this; - } - - private void visitCode(Code c) - { - lineNumbers = c.getLineNumbers(); - - Instructions ins = c.getInstructions(); - for (Instruction i : ins.getInstructions()) - { - if (i instanceof GetFieldInstruction) - { - Field k = ((GetFieldInstruction) i).getField(); - int v = fieldGets.getOrDefault(k, 0) + 1; - fieldGets.put(k, v); - } - else if (i instanceof SetFieldInstruction) - { - Field k = ((SetFieldInstruction) i).getField(); - int v = fieldPuts.getOrDefault(k, 0) + 1; - fieldPuts.put(k, v); - } - else if (i instanceof InvokeInstruction) - { - List met = ((InvokeInstruction) i).getMethods(); - net.runelite.asm.pool.Method k; - if (met.size() > 0) - { - Method mme = met.get(0); - k = new net.runelite.asm.pool.Method( - new Class(Objects.requireNonNull(DeobAnnotations.getObfuscatedName(mme.getClassFile()))), - DeobAnnotations.getObfuscatedName(mme), - mme.getObfuscatedSignature() != null ? mme.getObfuscatedSignature() : mme.getDescriptor() - ); - } - else - { - k = ((InvokeInstruction) i).getMethod(); - } - - int v = dependencies.getOrDefault(k, 0) + 1; - dependencies.put(k, v); - } - } - } -} diff --git a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappingDump.java b/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappingDump.java deleted file mode 100644 index adcf22889..000000000 --- a/deobfuscator/src/main/java/net/runelite/deob/updater/mappingdumper/MappingDump.java +++ /dev/null @@ -1,148 +0,0 @@ -package net.runelite.deob.updater.mappingdumper; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Field; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.updater.MappingDumper; -import static org.objectweb.asm.Opcodes.ACC_STATIC; - -public class MappingDump -{ - public int revision; - - public int totalClasses = 0; - public int totalNamedClasses = 0; - - public int totalFields = 0; - public int totalNamedFields = 0; - - public int totalNonStaticFields = 0; - public int totalNamedNonStaticFields = 0; - - public int totalStaticFields = 0; - public int totalNamedStaticFields = 0; - - public int totalMethods = 0; - public int totalNamedMethods = 0; - - public int totalNonStaticMethods = 0; - public int totalNamedNonStaticMethods = 0; - - public int totalStaticMethods = 0; - public int totalNamedStaticMethods = 0; - - public List classes; - - private ClassGroup group; - - public MappingDump visitGroup(ClassGroup group) - { - this.group = group; - classes = new ArrayList<>(); - - for (ClassFile c : group.getClasses()) - { - if (c.getName().contains("runelite")) - { - continue; - } - - final MappedClass mc = new MappedClass(); - classes.add(mc.visitClass(c, this)); - } - - totalClasses = classes.size(); - - for (MappedClass c : classes) - { - if (c.implementingName != null) - { - totalNamedClasses++; - } - - for (MappedMethod mm : c.methods) - { - for (Map.Entry entry : mm.fieldGets.entrySet()) - { - MappedField mf = MappingDumper.getMap(entry.getKey()); - if (mf == null) - { - continue; - } - mf.gets.put( - new Method( - new Class(mm.owner), - mm.obfuscatedName, - new Signature(mm.descriptor)), - entry.getValue()); - } - for (Map.Entry entry : mm.fieldPuts.entrySet()) - { - MappedField mf = MappingDumper.getMap(entry.getKey()); - if (mf == null) - { - continue; - } - mf.puts.put( - new Method( - new Class(mm.owner), - mm.obfuscatedName, - new Signature(mm.descriptor)), - entry.getValue()); - } - } - - grabAmountInfo(c); - } - totalNonStaticFields = totalFields - totalStaticFields; - totalNamedNonStaticFields = totalNamedFields - totalNamedStaticFields; - totalNonStaticMethods = totalMethods - totalStaticMethods; - totalNamedNonStaticMethods = totalNamedMethods - totalNamedStaticMethods; - - return this; - } - - private void grabAmountInfo(MappedClass c) - { - totalFields += c.fields.size(); - totalNamedFields += c.fields - .stream() - .filter(f -> f.exportedName != null) - .count(); - totalStaticFields += c.fields - .stream() - .filter(f -> (f.access & ACC_STATIC) != 0) - .count(); - totalNamedStaticFields += c.fields - .stream() - .filter(f -> f.exportedName != null - && (f.access & ACC_STATIC) != 0) - .count(); - - totalMethods += c.methods.size(); - totalNamedMethods += c.methods - .stream() - .filter(f -> f.exportedName != null) - .count(); - totalStaticMethods += c.methods - .stream() - .filter(f -> (f.access & ACC_STATIC) != 0) - .count(); - totalNamedStaticMethods += c.methods - .stream() - .filter(f -> f.exportedName != null - && (f.access & ACC_STATIC) != 0) - .count(); - } - - ClassGroup getGroup() - { - return group; - } -} diff --git a/deobfuscator/src/main/java/net/runelite/gamepack/Checker.java b/deobfuscator/src/main/java/net/runelite/gamepack/Checker.java deleted file mode 100644 index cf36651ce..000000000 --- a/deobfuscator/src/main/java/net/runelite/gamepack/Checker.java +++ /dev/null @@ -1,166 +0,0 @@ -package net.runelite.gamepack; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.net.HttpURLConnection; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; - -public class Checker -{ - private static final String GAME_URL = "http://oldschool1.runescape.com/"; - private static final Split[] splits = { - new Split("document.write('archive=", 1), - new Split(" ');", 0) - }; - - static String getGamePack() - { - URL url; - try - { - url = new URL(GAME_URL); - } - catch (MalformedURLException e) - { - e.printStackTrace(); - return null; - } - - String content; - try - { - content = getContent(url); - } - catch (IOException e) - { - e.printStackTrace(); - return null; - } - - for (Split split : splits) - { - String[] str = splitAtFirst(content, split.splitAt); - content = str[split.index]; - } - - return content; - } - - private static String[] splitAtFirst(String subject, String splitAt) - { - if (subject == null || subject.length() == 0) - { - return new String[]{"", ""}; - } - - if (splitAt == null || splitAt.length() == 0) - { - return new String[]{subject, ""}; - } - - char[] subjectArray = subject.toCharArray(); - char[] split = splitAt.toCharArray(); - - StringBuilder builder = null; - for (int i = 0; i < subjectArray.length; i++) - { - char c = subjectArray[i]; - - if (builder == null && c == split[0]) - { - builder = new StringBuilder(); - } - - if (builder != null) - { - builder.append(c); - - if (startsWith(splitAt, builder.toString())) - { - if (builder.length() == splitAt.length()) - { - return new String[]{subject.substring(0, i - builder.length() + 1), subject.substring(i + 1)}; - } - } - else - { - builder = null; - } - } - } - - return new String[]{subject, ""}; - } - - private static boolean startsWith(String subject, String start) - { - if (subject == null || subject.length() == 0 || start == null || start.length() == 0 || start.length() > subject.length()) - { - return false; - } - - char[] c1 = subject.toCharArray(); - char[] c2 = start.toCharArray(); - for (int i = 0; i < c2.length; i++) - { - if (c1[i] != c2[i]) - { - return false; - } - } - - return true; - } - - private static String getContent(URL url) throws IOException - { - BufferedReader rd = null; - - try - { - URLConnection conn = url.openConnection(); - - if (conn instanceof HttpURLConnection) - { - ((HttpURLConnection) conn).setInstanceFollowRedirects(false); - } - - HttpURLConnection.setFollowRedirects(false); - - rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); - StringBuilder sb = new StringBuilder(); - - String line; - while ((line = rd.readLine()) != null) - { - sb.append(line); - sb.append('\n'); - } - - return sb.toString(); - - } - finally - { - if (rd != null) - { - rd.close(); - } - } - } - - public static class Split - { - public int index; - String splitAt; - - Split(String splitAt, int index) - { - this.splitAt = splitAt; - this.index = index; - } - } -} \ No newline at end of file diff --git a/deobfuscator/src/main/java/net/runelite/gamepack/Downloader.java b/deobfuscator/src/main/java/net/runelite/gamepack/Downloader.java deleted file mode 100644 index 119c103e4..000000000 --- a/deobfuscator/src/main/java/net/runelite/gamepack/Downloader.java +++ /dev/null @@ -1,65 +0,0 @@ -package net.runelite.gamepack; - -import java.io.File; -import java.io.IOException; -import java.net.URL; -import java.nio.file.Path; -import java.nio.file.Paths; - -public class Downloader -{ - private static final String REPLACE = "%archive%"; - private static final String GAMEPACK_URL = "http://oldschool1.runescape.com/" + REPLACE; - - private static String getGamepackUrl() - { - String archive = Checker.getGamePack(); - return archive == null ? "" : GAMEPACK_URL.replace(REPLACE, archive); - } - - public static String gamepack() - { - Path path = Paths.get(System.getProperty("user.home"), "gamepack"); - final File folder = new File(String.valueOf(path)); - - if (!folder.exists()) - { - folder.mkdir(); - } - - downloadLatest(folder); - - return path + File.separator + "gamepack.jar"; - } - - private static void downloadLatest(File folder) - { - File output = new File(folder, "gamepack.jar"); - - try - { - URL url = new URL(getGamepackUrl()); - - final URLDownloader downloader = new URLDownloader(url, output); - downloader.download(); - - try - { - Thread.sleep(100); - } - catch (InterruptedException e) - { - e.printStackTrace(); - } - } - catch (IOException e) - { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - gamepack(); - } -} \ No newline at end of file diff --git a/deobfuscator/src/main/java/net/runelite/gamepack/URLDownloader.java b/deobfuscator/src/main/java/net/runelite/gamepack/URLDownloader.java deleted file mode 100644 index 07d74fcf7..000000000 --- a/deobfuscator/src/main/java/net/runelite/gamepack/URLDownloader.java +++ /dev/null @@ -1,35 +0,0 @@ -package net.runelite.gamepack; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.net.URL; -import java.nio.channels.Channels; -import java.nio.channels.FileChannel; -import java.nio.channels.ReadableByteChannel; - -class URLDownloader -{ - private URL url; - private File output; - - URLDownloader(URL url, File output) - { - this.url = url; - this.output = output; - } - - void download() throws IOException - { - this.downloadFromURL(); - } - - private void downloadFromURL() throws IOException - { - ReadableByteChannel rbc = Channels.newChannel(url.openStream()); - FileOutputStream fos = new FileOutputStream(output); - - FileChannel channel = fos.getChannel(); - channel.transferFrom(rbc, 0, Long.MAX_VALUE); - } -} \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 411823d81..47acef2f6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -48,7 +48,7 @@ commons-csv = {group = "org.apache.commons", name = "commons-csv", version = "_" commons-cli = {group = "commons-cli", name = "commons-cli", version = "1.4"} netty-buffer = {group = "io.netty", name = "netty-buffer", version = "4.1.68.Final"} okhttp = {group = "com.squareup.okhttp3", name = "okhttp", version = "4.9.2"} -atlr4-runtime = {group = "org.antlr", name = "antlr4-runtime", version = "4.9.2"} +atlr4-runtime = {group = "org.antlr", name = "antlr4-runtime", version = "4.13.1"} commons-compress = {group = "org.apache.commons", name = "commons-compress", version = "1.21"} commons-text = {group = "org.apache.commons", name = "commons-text", version = "_"} slf4j-simple = {group = "org.slf4j", name = "slf4j-simple", version = "_"} diff --git a/http/src/main/java/net/runelite/http/api/worlds/WorldClient.java b/http/src/main/java/net/runelite/http/api/worlds/WorldClient.java index 34e75ff17..31849482d 100644 --- a/http/src/main/java/net/runelite/http/api/worlds/WorldClient.java +++ b/http/src/main/java/net/runelite/http/api/worlds/WorldClient.java @@ -61,6 +61,8 @@ public WorldResult lookupWorlds() throws IOException .url(url) .build(); + + try (Response response = client.newCall(request).execute()) { if (!response.isSuccessful()) diff --git a/http/src/main/java/net/runelite/http/api/worlds/WorldType.java b/http/src/main/java/net/runelite/http/api/worlds/WorldType.java index e61af8863..1ec2c6c9c 100644 --- a/http/src/main/java/net/runelite/http/api/worlds/WorldType.java +++ b/http/src/main/java/net/runelite/http/api/worlds/WorldType.java @@ -8,6 +8,7 @@ public enum WorldType { SKILL_TOTAL(), QUEST_SPEEDRUNNING(), HIGH_RISK(), + BETA_WORLD(), LAST_MAN_STANDING(), NOSAVE_MODE(), TOURNAMENT(), diff --git a/injector/build.gradle.kts b/injector/build.gradle.kts index 4701b04e0..2936e09e2 100644 --- a/injector/build.gradle.kts +++ b/injector/build.gradle.kts @@ -14,7 +14,7 @@ repositories{ dependencies{ with(projects){ implementation(annotations) - implementation(deobfuscator) + implementation(asm) implementation(apiRs) implementation(logger) implementation(cache) diff --git a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DMath.java b/injector/src/main/java/com/openosrs/injector/DMath.java similarity index 98% rename from deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DMath.java rename to injector/src/main/java/com/openosrs/injector/DMath.java index 32dbd730c..cd926350a 100644 --- a/deobfuscator/src/main/java/net/runelite/deob/deobfuscators/arithmetic/DMath.java +++ b/injector/src/main/java/com/openosrs/injector/DMath.java @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package net.runelite.deob.deobfuscators.arithmetic; +package com.openosrs.injector; import java.math.BigInteger; diff --git a/injector/src/main/java/com/openosrs/injector/InjectUtil.java b/injector/src/main/java/com/openosrs/injector/InjectUtil.java index 14c2be9fd..04b39036f 100644 --- a/injector/src/main/java/com/openosrs/injector/InjectUtil.java +++ b/injector/src/main/java/com/openosrs/injector/InjectUtil.java @@ -8,6 +8,8 @@ package com.openosrs.injector; import com.openosrs.injector.injection.InjectData; + +import static com.openosrs.injector.DMath.modInverse; import static com.openosrs.injector.rsapi.RSApi.API_BASE; import static com.openosrs.injector.rsapi.RSApi.RL_API_BASE; import com.openosrs.injector.rsapi.RSApiClass; @@ -17,33 +19,33 @@ import java.util.function.Consumer; import java.util.function.Predicate; import java.util.stream.Collectors; -import net.runelite.asm.Annotation; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Named; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.DLoad; -import net.runelite.asm.attributes.code.instructions.FLoad; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LLoad; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.deobfuscators.arithmetic.DMath; +import asm.Annotation; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.Named; +import asm.Type; +import asm.attributes.Annotated; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.DLoad; +import asm.attributes.code.instructions.FLoad; +import asm.attributes.code.instructions.ILoad; +import asm.attributes.code.instructions.IMul; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.InvokeVirtual; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.LLoad; +import asm.attributes.code.instructions.LMul; +import asm.attributes.code.instructions.Return; +import asm.attributes.code.instructions.VReturn; +import asm.pool.Class; +import asm.signature.Signature; +import asm.DeobAnnotations; + import org.jetbrains.annotations.Nullable; public interface InjectUtil @@ -526,7 +528,7 @@ static Instruction createReturnForType(Instructions instructions, Type type) } } - static Instruction createInvokeFor(Instructions instructions, net.runelite.asm.pool.Method method, boolean isStatic) + static Instruction createInvokeFor(Instructions instructions, asm.pool.Method method, boolean isStatic) { if (isStatic) { @@ -572,7 +574,7 @@ else if (getter instanceof Long) */ static void injectObfuscatedSetter(Number getter, Instructions instrs, Consumer into) { - injectObfuscatedGetter(DMath.modInverse(getter), instrs, into); + injectObfuscatedGetter(modInverse(getter), instrs, into); } private static List findArgs(final String str, final List ret, final int from, final int to) diff --git a/injector/src/main/java/com/openosrs/injector/Injector.java b/injector/src/main/java/com/openosrs/injector/Injector.java index 7097bd674..b5223fb9d 100644 --- a/injector/src/main/java/com/openosrs/injector/Injector.java +++ b/injector/src/main/java/com/openosrs/injector/Injector.java @@ -7,33 +7,32 @@ */ package com.openosrs.injector; -import com.google.common.hash.Hashing; +import asm.util.JarUtil; import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injection.InjectTaskHandler; import com.openosrs.injector.injectors.*; import com.openosrs.injector.injectors.raw.*; + import com.openosrs.injector.rsapi.RSApi; + import com.openosrs.injector.transformers.EnumInvokeVirtualFixer; import com.openosrs.injector.transformers.InjectTransformer; import com.openosrs.injector.transformers.Java8Ifier; import com.openosrs.injector.transformers.SourceChanger; import java.io.File; import java.io.IOException; -import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.util.ArrayList; import java.util.Comparator; import java.util.Objects; -import joptsimple.ArgumentAcceptingOptionSpec; -import joptsimple.OptionParser; -import joptsimple.OptionSet; -import joptsimple.util.EnumConverter; + import meteor.Logger; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.deob.util.JarUtil; -import static net.runelite.deob.util.JarUtil.load; +import asm.ClassFile; +import asm.ClassGroup; + +import static asm.util.JarUtil.load; + public class Injector extends InjectData implements InjectTaskHandler { @@ -43,31 +42,7 @@ public class Injector extends InjectData implements InjectTaskHandler public static ArrayList report = new ArrayList<>(); public static void main(String[] args) { - OptionParser parser = new OptionParser(); - - ArgumentAcceptingOptionSpec vanillaFileOption = - parser.accepts("vanilla", "Vanilla OSRS gamepack file") - .withRequiredArg().ofType(File.class); - - ArgumentAcceptingOptionSpec oprsVerOption = - parser.accepts("version", "OpenOSRS version") - .withRequiredArg().ofType(String.class); - - ArgumentAcceptingOptionSpec outFileOption = - parser.accepts("output", "Output file, jar if outmode is jar, folder if outmode is files") - .withRequiredArg().ofType(File.class); - - ArgumentAcceptingOptionSpec outModeOption = - parser.accepts("outmode") - .withRequiredArg().ofType(OutputMode.class) - .withValuesConvertedBy(new EnumConverter<>(OutputMode.class) { - @Override - public OutputMode convert(String value) { - return super.convert(value.toUpperCase()); - } - }); - - OptionSet options = parser.parse(args); + String oprsVer = "1.0-SNAPSHOT"; injector.vanilla = load( @@ -160,6 +135,7 @@ public void injectVanilla() { transform(new SourceChanger(this)); injector.vanilla.addClass(reflection); + } private void inject(com.openosrs.injector.injectors.Injector injector) { diff --git a/injector/src/main/java/com/openosrs/injector/InjectorValidator.java b/injector/src/main/java/com/openosrs/injector/InjectorValidator.java index 435297b43..06a6c8c0a 100644 --- a/injector/src/main/java/com/openosrs/injector/InjectorValidator.java +++ b/injector/src/main/java/com/openosrs/injector/InjectorValidator.java @@ -13,8 +13,8 @@ import com.openosrs.injector.rsapi.RSApiMethod; import lombok.RequiredArgsConstructor; import meteor.Logger; -import net.runelite.asm.ClassFile; -import net.runelite.asm.pool.Class; +import asm.ClassFile; +import asm.pool.Class; import static com.openosrs.injector.rsapi.RSApi.API_BASE; @RequiredArgsConstructor diff --git a/injector/src/main/java/com/openosrs/injector/Validator.java b/injector/src/main/java/com/openosrs/injector/Validator.java index d4679c7a3..14e6213f8 100644 --- a/injector/src/main/java/com/openosrs/injector/Validator.java +++ b/injector/src/main/java/com/openosrs/injector/Validator.java @@ -7,7 +7,7 @@ */ package com.openosrs.injector; -import net.runelite.asm.Named; +import asm.Named; public interface Validator extends Named { diff --git a/injector/src/main/java/com/openosrs/injector/injection/InjectData.java b/injector/src/main/java/com/openosrs/injector/injection/InjectData.java index 64fe566f2..a7d9d4359 100644 --- a/injector/src/main/java/com/openosrs/injector/injection/InjectData.java +++ b/injector/src/main/java/com/openosrs/injector/injection/InjectData.java @@ -16,12 +16,12 @@ import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.signature.Signature; /** * Abstract class meant as the interface of {@link com.openosrs.injector.Injector injection} for injectors diff --git a/injector/src/main/java/com/openosrs/injector/injectors/CreateAnnotations.java b/injector/src/main/java/com/openosrs/injector/injectors/CreateAnnotations.java index f29ff939f..c2b01d0e4 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/CreateAnnotations.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/CreateAnnotations.java @@ -30,11 +30,12 @@ */ package com.openosrs.injector.injectors; +import asm.DeobAnnotations; import com.openosrs.injector.injection.InjectData; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.deob.DeobAnnotations; +import asm.ClassFile; +import asm.Field; +import asm.Method; + /* * This handles creating "virtual" annotations to clean up rs-client in the main project diff --git a/injector/src/main/java/com/openosrs/injector/injectors/CreateObfuscatedClassMap.java b/injector/src/main/java/com/openosrs/injector/injectors/CreateObfuscatedClassMap.java index f47081842..2c4923800 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/CreateObfuscatedClassMap.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/CreateObfuscatedClassMap.java @@ -30,11 +30,12 @@ */ package com.openosrs.injector.injectors; +import asm.DeobAnnotations; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.openosrs.injector.injection.InjectData; -import net.runelite.asm.ClassFile; -import net.runelite.deob.DeobAnnotations; +import asm.ClassFile; + import java.io.File; import java.io.FileWriter; diff --git a/injector/src/main/java/com/openosrs/injector/injectors/InjectConstruct.java b/injector/src/main/java/com/openosrs/injector/injectors/InjectConstruct.java index 17bc1c721..65fe6dec8 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/InjectConstruct.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/InjectConstruct.java @@ -36,20 +36,20 @@ import com.openosrs.injector.rsapi.RSApiMethod; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.Annotation; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; +import asm.Annotation; +import asm.ClassFile; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.New; +import asm.attributes.code.instructions.Return; +import asm.pool.Class; +import asm.pool.Method; +import asm.signature.Signature; import static com.openosrs.injector.Injector.report; import static com.openosrs.injector.rsapi.RSApi.CONSTRUCT; @@ -106,14 +106,14 @@ private void injectConstruct(ClassFile targetClass, Method apiMethod) .setReturnType(Type.VOID) .build(); - final net.runelite.asm.Method constructor = classToConstruct.findMethod("", constr); + final asm.Method constructor = classToConstruct.findMethod("", constr); if (constructor == null) { throw new InjectException("Unable to find constructor for " + classToConstruct.getName() + "." + constr); } - net.runelite.asm.Method setterMethod = new net.runelite.asm.Method(targetClass, apiMethod.getName(), apiMethod.getType()); + asm.Method setterMethod = new asm.Method(targetClass, apiMethod.getName(), apiMethod.getType()); setterMethod.setAccessFlags(ACC_PUBLIC); targetClass.addMethod(setterMethod); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/InjectHook.java b/injector/src/main/java/com/openosrs/injector/injectors/InjectHook.java index 4ea626dc9..516811df9 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/InjectHook.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/InjectHook.java @@ -40,31 +40,31 @@ import java.util.Set; import javax.inject.Provider; import lombok.AllArgsConstructor; -import net.runelite.asm.Annotation; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.DupInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.ArrayStore; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.LMul; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.attributes.code.instructions.Swap; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.DeobAnnotations; +import asm.Annotation; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.DupInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.attributes.code.instructions.ArrayStore; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.IMul; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.LMul; +import asm.attributes.code.instructions.PutField; +import asm.attributes.code.instructions.Swap; +import asm.execution.Execution; +import asm.execution.InstructionContext; +import asm.execution.StackContext; +import asm.pool.Class; +import asm.signature.Signature; +import asm.DeobAnnotations; import static com.openosrs.injector.Injector.report; @@ -402,7 +402,7 @@ Instruction getInvoke(Instructions instructions) { return InjectUtil.createInvokeFor( instructions, - new net.runelite.asm.pool.Method( + new asm.pool.Method( targetClass, method.getName(), method.getDescriptor() diff --git a/injector/src/main/java/com/openosrs/injector/injectors/InjectHookMethod.java b/injector/src/main/java/com/openosrs/injector/injectors/InjectHookMethod.java index 196cb629b..a1c3506ab 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/InjectHookMethod.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/InjectHookMethod.java @@ -37,16 +37,16 @@ import java.util.ListIterator; import java.util.Map; import javax.inject.Provider; -import net.runelite.asm.Annotation; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.signature.Signature; +import asm.Annotation; +import asm.ClassFile; +import asm.Method; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.signature.Signature; import static com.openosrs.injector.Injector.report; @@ -101,7 +101,7 @@ private void injectMethods(Provider mixinProvider, List ta final boolean notStatic = !mixinMethod.isStatic(); final Method targetMethod = InjectUtil.findMethod(inject, hookName, deobTarget.getName(), sig -> InjectUtil.argsMatch(sig, deobSig), notStatic, false); - final net.runelite.asm.pool.Method hookMethod = new net.runelite.asm.pool.Method( + final asm.pool.Method hookMethod = new asm.pool.Method( targetClass.getPoolClass(), mixinMethod.getName(), mixinMethod.getDescriptor() @@ -115,7 +115,7 @@ private void injectMethods(Provider mixinProvider, List ta } } - private void inject(final Method method, final net.runelite.asm.pool.Method hookMethod, boolean end) + private void inject(final Method method, final asm.pool.Method hookMethod, boolean end) { final Instructions ins = method.getCode().getInstructions(); final ListIterator it; @@ -151,7 +151,7 @@ private void inject(final Method method, final net.runelite.asm.pool.Method hook insertVoke(method, hookMethod, it); } - private void insertVoke(final Method method, final net.runelite.asm.pool.Method hookMethod, ListIterator iterator) + private void insertVoke(final Method method, final asm.pool.Method hookMethod, ListIterator iterator) { final Instructions instructions = method.getCode().getInstructions(); int varIdx = 0; diff --git a/injector/src/main/java/com/openosrs/injector/injectors/Injector.java b/injector/src/main/java/com/openosrs/injector/injectors/Injector.java index e1e497b9e..c357d03a9 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/Injector.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/Injector.java @@ -7,7 +7,7 @@ */ package com.openosrs.injector.injectors; -import net.runelite.asm.Named; +import asm.Named; public interface Injector extends Named { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/InterfaceInjector.java b/injector/src/main/java/com/openosrs/injector/injectors/InterfaceInjector.java index 2118b442d..cb13a3066 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/InterfaceInjector.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/InterfaceInjector.java @@ -8,10 +8,10 @@ package com.openosrs.injector.injectors; import com.openosrs.injector.injection.InjectData; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Interfaces; -import net.runelite.asm.pool.Class; -import net.runelite.deob.DeobAnnotations; +import asm.ClassFile; +import asm.Interfaces; +import asm.pool.Class; +import asm.DeobAnnotations; import static com.openosrs.injector.Injector.report; import static com.openosrs.injector.rsapi.RSApi.API_BASE; diff --git a/injector/src/main/java/com/openosrs/injector/injectors/MixinInjector.java b/injector/src/main/java/com/openosrs/injector/injectors/MixinInjector.java index 6606c47a1..c2aa508de 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/MixinInjector.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/MixinInjector.java @@ -30,6 +30,7 @@ */ package com.openosrs.injector.injectors; +import asm.util.JarUtil; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableMap; import com.openosrs.injector.InjectException; @@ -44,35 +45,34 @@ import javax.annotation.Nonnull; import javax.inject.Provider; import lombok.Value; -import net.runelite.asm.Annotation; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.FieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.InvokeInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instruction.types.ReturnInstruction; -import net.runelite.asm.attributes.code.instruction.types.SetFieldInstruction; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.ANewArray; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.InvokeDynamic; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.Pop; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.DeobAnnotations; -import net.runelite.deob.util.JarUtil; +import asm.Annotation; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.Annotated; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.FieldInstruction; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.InvokeInstruction; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.attributes.code.instruction.types.ReturnInstruction; +import asm.attributes.code.instruction.types.SetFieldInstruction; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.ANewArray; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.GetField; +import asm.attributes.code.instructions.InvokeDynamic; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.Pop; +import asm.attributes.code.instructions.PutField; +import asm.signature.Signature; +import asm.DeobAnnotations; import org.jetbrains.annotations.Nullable; import org.objectweb.asm.Opcodes; @@ -91,7 +91,7 @@ public class MixinInjector extends AbstractInjector private int injectedInterfaces = 0; private final Map injectedFields = new HashMap<>(); - private final Map shadowFields = new HashMap<>(); + private final Map shadowFields = new HashMap<>(); private int copied = 0, replaced = 0, injected = 0; public MixinInjector(InjectData inject) @@ -295,7 +295,7 @@ private void injectMethods(Provider mixinProvider, List ta final ClassFile mixinClass = mixinProvider.get(); // Keeps mappings between methods annotated with @Copy -> the copied method within the vanilla pack - Map copiedMethods = new HashMap<>(); + Map copiedMethods = new HashMap<>(); // Handle the copy mixins first, so all other mixins know of the copies for (Method mixinMethod : mixinClass.getMethods()) @@ -582,7 +582,7 @@ private void moveCode(Method targetMethod, Code sourceCode) } newCode.getExceptions().getExceptions().addAll(sourceCode.getExceptions().getExceptions()); - for (net.runelite.asm.attributes.code.Exception e : newCode.getExceptions().getExceptions()) + for (asm.attributes.code.Exception e : newCode.getExceptions().getExceptions()) { e.setExceptions(newCode.getExceptions()); } @@ -590,7 +590,7 @@ private void moveCode(Method targetMethod, Code sourceCode) targetMethod.setCode(newCode); } - private void setOwnersToTargetClass(ClassFile mixinCf, ClassFile cf, Method method, Map copiedMethods) + private void setOwnersToTargetClass(ClassFile mixinCf, ClassFile cf, Method method, Map copiedMethods) { ListIterator iterator = method.getCode().getInstructions().listIterator(); @@ -630,8 +630,8 @@ else if (i instanceof InvokeInstruction) } else if (ii.getMethod().getClazz().getName().equals(mixinCf.getName())) { - ii.setMethod(new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(cf.getName()), + ii.setMethod(new asm.pool.Method( + new asm.pool.Class(cf.getName()), ii.getMethod().getName(), ii.getMethod().getType() )); @@ -664,8 +664,8 @@ else if (i instanceof GetFieldInstruction) } else if (fi.getField().getClazz().getName().equals(mixinCf.getName())) { - fi.setField(new net.runelite.asm.pool.Field( - new net.runelite.asm.pool.Class(cf.getName()), + fi.setField(new asm.pool.Field( + new asm.pool.Class(cf.getName()), fi.getField().getName(), fi.getField().getType() )); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/RSApiInjector.java b/injector/src/main/java/com/openosrs/injector/injectors/RSApiInjector.java index 5fbe1fb2a..a13a31730 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/RSApiInjector.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/RSApiInjector.java @@ -44,13 +44,13 @@ import java.util.List; import java.util.ListIterator; import java.util.Map; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.signature.Signature; -import net.runelite.deob.DeobAnnotations; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.Annotated; +import asm.signature.Signature; +import asm.DeobAnnotations; import static com.openosrs.injector.Injector.report; import static com.openosrs.injector.rsapi.RSApi.API_BASE; diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/AddPlayerToMenu.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/AddPlayerToMenu.java index 4e36874cc..a61c321d5 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/AddPlayerToMenu.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/AddPlayerToMenu.java @@ -14,22 +14,22 @@ import com.openosrs.injector.injectors.AbstractInjector; import java.util.Iterator; import java.util.ListIterator; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.ComparisonInstruction; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.BiPush; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IAnd; -import net.runelite.asm.attributes.code.instructions.IfACmpEq; -import net.runelite.asm.attributes.code.instructions.IfACmpNe; -import net.runelite.asm.attributes.code.instructions.IfICmpNe; -import net.runelite.asm.attributes.code.instructions.IfNe; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.pool.Field; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.ComparisonInstruction; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.BiPush; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.IAnd; +import asm.attributes.code.instructions.IfACmpEq; +import asm.attributes.code.instructions.IfACmpNe; +import asm.attributes.code.instructions.IfICmpNe; +import asm.attributes.code.instructions.IfNe; +import asm.attributes.code.instructions.InvokeStatic; +import asm.pool.Field; public class AddPlayerToMenu extends AbstractInjector { @@ -41,9 +41,9 @@ public AddPlayerToMenu(InjectData inject) public void inject() { final Method addPlayerOptions = inject.toVanilla(inject.getDeobfuscated().findClass("Scene")).findMethod("copy$addPlayerToMenu"); - final net.runelite.asm.pool.Method shouldHideAttackOptionFor = + final asm.pool.Method shouldHideAttackOptionFor = inject.getVanilla().findClass("Client").findMethod("shouldHideAttackOptionFor").getPoolMethod(); -// final net.runelite.asm.pool.Method shouldDrawMethod = +// final asm.pool.Method shouldDrawMethod = // inject.getVanilla().findStaticMethod("shouldDraw").getPoolMethod(); try @@ -58,7 +58,7 @@ public void inject() } } -// private void injectSameTileFix(Method addPlayerOptions, net.runelite.asm.pool.Method shouldDrawMethod) +// private void injectSameTileFix(Method addPlayerOptions, asm.pool.Method shouldDrawMethod) // { // // ALOAD 0 // // ICONST_0 @@ -85,7 +85,7 @@ public void inject() // } // } - private void injectHideAttack(Method addPlayerOptions, net.runelite.asm.pool.Method shouldHideAttackOptionFor) + private void injectHideAttack(Method addPlayerOptions, asm.pool.Method shouldHideAttackOptionFor) { final Field AttackOption_hidden = InjectUtil.findField(inject, "AttackOption_hidden", "AttackOption").getPoolField(); @@ -176,7 +176,7 @@ else if (i instanceof IfACmpNe) ins.addInstruction(injectIdx, i3); } - private void injectHideCast(Method addPlayerOptions, net.runelite.asm.pool.Method shouldHideAttackOptionFor) + private void injectHideCast(Method addPlayerOptions, asm.pool.Method shouldHideAttackOptionFor) { // LABEL before // BIPUSH 8 diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/ClearColorBuffer.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/ClearColorBuffer.java index 391f637dc..23a85226e 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/ClearColorBuffer.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/ClearColorBuffer.java @@ -12,16 +12,16 @@ import com.openosrs.injector.injectors.AbstractInjector; import java.util.List; import java.util.concurrent.atomic.AtomicReference; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.attributes.code.instructions.ILoad; +import asm.attributes.code.instructions.InvokeStatic; +import asm.execution.Execution; +import asm.execution.InstructionContext; +import asm.execution.MethodContext; +import asm.execution.StackContext; public class ClearColorBuffer extends AbstractInjector { @@ -38,8 +38,8 @@ public void inject() */ final Execution exec = new Execution(inject.getVanilla()); - final net.runelite.asm.pool.Method clearBuffer = inject.getVanilla().findClass("Client").findMethod("clearColorBuffer").getPoolMethod(); - final net.runelite.asm.pool.Method fillRectPool = InjectUtil.findMethod(inject, "Rasterizer2D_fillRectangle", "Rasterizer2D", null).getPoolMethod(); + final asm.pool.Method clearBuffer = inject.getVanilla().findClass("Client").findMethod("clearColorBuffer").getPoolMethod(); + final asm.pool.Method fillRectPool = InjectUtil.findMethod(inject, "Rasterizer2D_fillRectangle", "Rasterizer2D", null).getPoolMethod(); final Method drawEntities = InjectUtil.findMethod(inject, "drawEntities"); // XXX: should prob be called drawViewport? exec.addMethod(drawEntities); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/CopyRuneLiteClasses.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/CopyRuneLiteClasses.java index 9baa511c6..a81c9db3c 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/CopyRuneLiteClasses.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/CopyRuneLiteClasses.java @@ -14,24 +14,24 @@ import java.util.List; import java.util.ListIterator; import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.GetField; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.InvokeVirtual; +import asm.attributes.code.instructions.New; +import asm.attributes.code.instructions.PutField; +import asm.attributes.code.instructions.PutStatic; +import asm.pool.Class; +import asm.signature.Signature; import org.objectweb.asm.Opcodes; public class CopyRuneLiteClasses extends AbstractInjector @@ -130,7 +130,7 @@ private void transformMethod(Method method) if (i instanceof PutField) { - net.runelite.asm.pool.Field field = ((PutField) i).getField(); + asm.pool.Field field = ((PutField) i).getField(); Field vanilla = findField(field); if (vanilla != null) @@ -145,7 +145,7 @@ private void transformMethod(Method method) } else if (i instanceof GetField) { - net.runelite.asm.pool.Field field = ((GetField) i).getField(); + asm.pool.Field field = ((GetField) i).getField(); Field vanilla = findField(field); if (vanilla != null) @@ -160,7 +160,7 @@ else if (i instanceof GetField) } else if (i instanceof PutStatic) { - net.runelite.asm.pool.Field field = ((PutStatic) i).getField(); + asm.pool.Field field = ((PutStatic) i).getField(); Field vanilla = findField(field); if (vanilla != null) @@ -175,7 +175,7 @@ else if (i instanceof PutStatic) } else if (i instanceof GetStatic) { - net.runelite.asm.pool.Field field = ((GetStatic) i).getField(); + asm.pool.Field field = ((GetStatic) i).getField(); Field vanilla = findField(field); if (method.getClassFile().getName().equals(field.getClazz().getName()) && field.getType().toString().contains("Lnet/runelite/rs/api/RS")) @@ -199,7 +199,7 @@ else if (vanilla != null) } else if (i instanceof InvokeSpecial) { - net.runelite.asm.pool.Method meth = ((InvokeSpecial) i).getMethod(); + asm.pool.Method meth = ((InvokeSpecial) i).getMethod(); Method vanilla = findMethod(meth, true); if (vanilla != null) @@ -214,7 +214,7 @@ else if (i instanceof InvokeSpecial) } else if (i instanceof InvokeStatic) { - net.runelite.asm.pool.Method meth = ((InvokeStatic) i).getMethod(); + asm.pool.Method meth = ((InvokeStatic) i).getMethod(); Method vanilla = findMethod(meth, false); if (vanilla != null) @@ -229,7 +229,7 @@ else if (i instanceof InvokeStatic) } else if (i instanceof InvokeVirtual) { - net.runelite.asm.pool.Method meth = ((InvokeVirtual) i).getMethod(); + asm.pool.Method meth = ((InvokeVirtual) i).getMethod(); Method vanilla = findMethod(meth, true); if (vanilla != null) @@ -282,7 +282,7 @@ private Type getObfuscatedSignature(Type type) return InjectUtil.deobToVanilla(inject, type); } - private Method findMethod(net.runelite.asm.pool.Method meth, boolean notStatic) + private Method findMethod(asm.pool.Method meth, boolean notStatic) { try { @@ -294,7 +294,7 @@ private Method findMethod(net.runelite.asm.pool.Method meth, boolean notStatic) } } - private Field findField(net.runelite.asm.pool.Field field) + private Field findField(asm.pool.Field field) { try { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawAfterWidgets.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawAfterWidgets.java index 53388d2c0..43be19260 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawAfterWidgets.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawAfterWidgets.java @@ -38,20 +38,20 @@ import java.util.HashSet; import java.util.ListIterator; import java.util.Set; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instruction.types.JumpingInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.InvokeInterface; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instruction.types.JumpingInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.attributes.code.instructions.GetField; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.IMul; +import asm.attributes.code.instructions.InvokeInterface; +import asm.attributes.code.instructions.InvokeStatic; +import asm.signature.Signature; public class DrawAfterWidgets extends AbstractInjector { @@ -115,7 +115,7 @@ public void inject() throw new InjectException("Mapped method \"Rasterizer2D_resetClip\" could not be found."); } - net.runelite.asm.pool.Method poolNoClip = noClip.getPoolMethod(); + asm.pool.Method poolNoClip = noClip.getPoolMethod(); for (ClassFile c : inject.getVanilla()) { @@ -241,8 +241,8 @@ public void inject() for (Label l : labelsToInjectAfter) { InvokeInterface invoke = new InvokeInterface(instructions, - new net.runelite.asm.pool.Method( - new net.runelite.asm.pool.Class(CALLBACKS), + new asm.pool.Method( + new asm.pool.Class(CALLBACKS), "drawAfterWidgets", new Signature("()V") ) diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawMenu.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawMenu.java index cb2bdcbc3..a5c7e999a 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawMenu.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/DrawMenu.java @@ -13,18 +13,18 @@ import com.openosrs.injector.injectors.AbstractInjector; import java.util.List; import java.util.concurrent.atomic.AtomicReference; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IfEq; -import net.runelite.asm.attributes.code.instructions.IfNe; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.pool.Field; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.IfEq; +import asm.attributes.code.instructions.IfNe; +import asm.attributes.code.instructions.InvokeStatic; +import asm.execution.Execution; +import asm.execution.InstructionContext; +import asm.execution.MethodContext; +import asm.pool.Field; public class DrawMenu extends AbstractInjector { @@ -57,7 +57,7 @@ public void inject() * -------- */ - final net.runelite.asm.pool.Method drawMenu = inject.getVanilla().findClass("Client").findMethod("drawMenu").getPoolMethod(); + final asm.pool.Method drawMenu = inject.getVanilla().findClass("Client").findMethod("drawMenu").getPoolMethod(); final Method drawLoggedIn = InjectUtil.findMethod(inject, "drawLoggedIn", "Client", null, true, false); final Field gameDrawMode = InjectUtil.findField(inject, "gameDrawingMode", "Client").getPoolField(); final Field isMenuOpen = InjectUtil.findField(inject, "isMenuOpen", "Client").getPoolField(); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/GameDrawingMode.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/GameDrawingMode.java index 977d304a8..86f69b078 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/GameDrawingMode.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/GameDrawingMode.java @@ -4,13 +4,13 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; import java.util.ListIterator; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.pool.Field; +import asm.ClassFile; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.PutStatic; +import asm.pool.Field; public class GameDrawingMode extends AbstractInjector { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/GraphicsObject.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/GraphicsObject.java index 7b3e74d14..11caaf63e 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/GraphicsObject.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/GraphicsObject.java @@ -9,14 +9,14 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.VReturn; +import asm.signature.Signature; public class GraphicsObject extends AbstractInjector { @@ -50,7 +50,7 @@ public void inject() Instructions ins = code.getInstructions(); ins.addInstruction(new ALoad(ins, 0)); - ins.addInstruction(new InvokeSpecial(ins, new net.runelite.asm.pool.Method(renderableVanilla.getPoolClass(), "", new Signature("()V")))); + ins.addInstruction(new InvokeSpecial(ins, new asm.pool.Method(renderableVanilla.getPoolClass(), "", new Signature("()V")))); ins.addInstruction(new VReturn(ins)); } } diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/Occluder.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/Occluder.java index 042546243..7ecbf63bb 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/Occluder.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/Occluder.java @@ -11,11 +11,11 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; import java.util.ListIterator; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.BiPush; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.BiPush; public class Occluder extends AbstractInjector { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/RasterizerAlpha.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/RasterizerAlpha.java index 0c8b02f43..74e3f335c 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/RasterizerAlpha.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/RasterizerAlpha.java @@ -11,39 +11,39 @@ import com.openosrs.injector.InjectUtil; import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instruction.types.GetFieldInstruction; -import net.runelite.asm.attributes.code.instruction.types.LVTInstruction; -import net.runelite.asm.attributes.code.instruction.types.PushConstantInstruction; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.IALoad; -import net.runelite.asm.attributes.code.instructions.IAStore; -import net.runelite.asm.attributes.code.instructions.IAdd; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.IOr; -import net.runelite.asm.attributes.code.instructions.IShR; -import net.runelite.asm.attributes.code.instructions.ISub; -import net.runelite.asm.attributes.code.instructions.IUShR; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.SiPush; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; -import net.runelite.asm.execution.VariableContext; -import net.runelite.asm.pool.Class; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instruction.types.GetFieldInstruction; +import asm.attributes.code.instruction.types.LVTInstruction; +import asm.attributes.code.instruction.types.PushConstantInstruction; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.IALoad; +import asm.attributes.code.instructions.IAStore; +import asm.attributes.code.instructions.IAdd; +import asm.attributes.code.instructions.ILoad; +import asm.attributes.code.instructions.IOr; +import asm.attributes.code.instructions.IShR; +import asm.attributes.code.instructions.ISub; +import asm.attributes.code.instructions.IUShR; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.SiPush; +import asm.execution.Execution; +import asm.execution.InstructionContext; +import asm.execution.MethodContext; +import asm.execution.StackContext; +import asm.execution.VariableContext; +import asm.pool.Class; +import asm.signature.Signature; public class RasterizerAlpha extends AbstractInjector { - private static final net.runelite.asm.pool.Method DRAWALPHA = new net.runelite.asm.pool.Method( + private static final asm.pool.Method DRAWALPHA = new asm.pool.Method( new Class("Client"), "drawAlpha", new Signature("([IIII)V") diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/RenderDraw.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/RenderDraw.java index 023f316d6..7fb21ed9a 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/RenderDraw.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/RenderDraw.java @@ -12,11 +12,11 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; import java.util.ListIterator; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.InvokeVirtual; public class RenderDraw extends AbstractInjector { @@ -30,7 +30,7 @@ public RenderDraw(InjectData inject) @Override public void inject() { - final net.runelite.asm.pool.Method renderDraw = inject.toVanilla(inject.getDeobfuscated().findClass("Scene")).findMethod("renderDraw").getPoolMethod(); + final asm.pool.Method renderDraw = inject.toVanilla(inject.getDeobfuscated().findClass("Scene")).findMethod("renderDraw").getPoolMethod(); int replaced = 0; @@ -38,7 +38,7 @@ public void inject() * This class replaces entity draw invocation instructions * with the renderDraw method on drawcallbacks */ - final net.runelite.asm.pool.Method draw = InjectUtil.findMethod(inject, "draw", "Renderable", null, true, false).getPoolMethod(); + final asm.pool.Method draw = InjectUtil.findMethod(inject, "draw", "Renderable", null, true, false).getPoolMethod(); final Method drawTile = InjectUtil.findMethod(inject, "drawTile", "Scene", null, true, false); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneLiteIterables.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneLiteIterables.java index c8943fd7a..446ed58ae 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneLiteIterables.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneLiteIterables.java @@ -10,18 +10,18 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.New; +import asm.attributes.code.instructions.Return; +import asm.signature.Signature; public class RuneLiteIterables extends AbstractInjector { @@ -64,7 +64,7 @@ public void injectHashTable() ins.add(new New(instructions, runeliteIterableHashTableVanilla.getPoolClass())); ins.add(new Dup(instructions)); ins.add(new ALoad(instructions, 0)); - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteIterableHashTableVanilla.getPoolClass(), "", new Signature("(L" + nodeHashTableVanilla.getName() + ";)V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteIterableHashTableVanilla.getPoolClass(), "", new Signature("(L" + nodeHashTableVanilla.getName() + ";)V")))); ins.add(new Return(instructions, InstructionType.ARETURN)); } @@ -91,7 +91,7 @@ public void injectNodeDeque() ins.add(new New(instructions, runeliteIterableNodeDequeVanilla.getPoolClass())); ins.add(new Dup(instructions)); ins.add(new ALoad(instructions, 0)); - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteIterableNodeDequeVanilla.getPoolClass(), "", new Signature("(L" + nodeDequeVanilla.getName() + ";)V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteIterableNodeDequeVanilla.getPoolClass(), "", new Signature("(L" + nodeDequeVanilla.getName() + ";)V")))); ins.add(new Return(instructions, InstructionType.ARETURN)); } @@ -118,7 +118,7 @@ public void injectLinkDeque() ins.add(new New(instructions, runeliteIterableLinkDequeVanilla.getPoolClass())); ins.add(new Dup(instructions)); ins.add(new ALoad(instructions, 0)); - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteIterableLinkDequeVanilla.getPoolClass(), "", new Signature("(L" + linkDequeVanilla.getName() + ";)V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteIterableLinkDequeVanilla.getPoolClass(), "", new Signature("(L" + linkDequeVanilla.getName() + ";)V")))); ins.add(new Return(instructions, InstructionType.ARETURN)); } } diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteMenuEntry.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteMenuEntry.java index 83d543199..f4b998f47 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteMenuEntry.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteMenuEntry.java @@ -13,22 +13,22 @@ import com.openosrs.injector.injectors.AbstractInjector; import java.util.List; import java.util.ListIterator; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.BAStore; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.BAStore; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.GetStatic; +import asm.attributes.code.instructions.ILoad; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.New; +import asm.attributes.code.instructions.Return; +import asm.signature.Signature; public class RuneliteMenuEntry extends AbstractInjector { @@ -69,11 +69,11 @@ private void addInvoke(String methodName, boolean iload) if (iload) { ins.add(new ILoad(instructions, 0)); - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteMenuEntryVanilla.getPoolClass(), "", new Signature("(I)V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteMenuEntryVanilla.getPoolClass(), "", new Signature("(I)V")))); } else { - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteMenuEntryVanilla.getPoolClass(), "", new Signature("()V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteMenuEntryVanilla.getPoolClass(), "", new Signature("()V")))); } ins.add(new Return(instructions, InstructionType.ARETURN)); } @@ -114,7 +114,7 @@ private void addSwap(Method method, Field field) } ILoad i1 = new ILoad(ins, 3); - InvokeStatic i2 = new InvokeStatic(ins, new net.runelite.asm.pool.Method(clientVanilla.getPoolClass(), "swapMenuEntries", new Signature("(I)V"))); + InvokeStatic i2 = new InvokeStatic(ins, new asm.pool.Method(clientVanilla.getPoolClass(), "swapMenuEntries", new Signature("(I)V"))); iterator.add(i1); iterator.add(i2); diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteObject.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteObject.java index 131479c39..d6374b929 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteObject.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/RuneliteObject.java @@ -10,17 +10,17 @@ import com.openosrs.injector.injection.InjectData; import com.openosrs.injector.injectors.AbstractInjector; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.InstructionType; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.InvokeSpecial; -import net.runelite.asm.attributes.code.instructions.New; -import net.runelite.asm.attributes.code.instructions.Return; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.InstructionType; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.InvokeSpecial; +import asm.attributes.code.instructions.New; +import asm.attributes.code.instructions.Return; +import asm.signature.Signature; public class RuneliteObject extends AbstractInjector { @@ -53,7 +53,7 @@ public void inject() ins.add(new New(instructions, runeliteObjectVanilla.getPoolClass())); ins.add(new Dup(instructions)); - ins.add(new InvokeSpecial(instructions, new net.runelite.asm.pool.Method(runeliteObjectVanilla.getPoolClass(), "", new Signature("()V")))); + ins.add(new InvokeSpecial(instructions, new asm.pool.Method(runeliteObjectVanilla.getPoolClass(), "", new Signature("()V")))); ins.add(new Return(instructions, InstructionType.ARETURN)); } } diff --git a/injector/src/main/java/com/openosrs/injector/injectors/raw/ScriptVM.java b/injector/src/main/java/com/openosrs/injector/injectors/raw/ScriptVM.java index ea438b3ba..31bd1d606 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/raw/ScriptVM.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/raw/ScriptVM.java @@ -38,41 +38,38 @@ import java.util.ListIterator; import java.util.Set; import java.util.concurrent.atomic.AtomicReference; -import net.runelite.asm.ClassFile; -import net.runelite.asm.ClassGroup; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.Label; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.AStore; -import net.runelite.asm.attributes.code.instructions.Dup; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.IALoad; -import net.runelite.asm.attributes.code.instructions.IInc; -import net.runelite.asm.attributes.code.instructions.ILoad; -import net.runelite.asm.attributes.code.instructions.IMul; -import net.runelite.asm.attributes.code.instructions.IStore; -import net.runelite.asm.attributes.code.instructions.IfNe; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.execution.Execution; -import net.runelite.asm.execution.InstructionContext; -import net.runelite.asm.execution.MethodContext; -import net.runelite.asm.execution.StackContext; - -public class ScriptVM extends AbstractInjector -{ - public ScriptVM(InjectData inject) - { +import asm.ClassFile; +import asm.ClassGroup; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.Label; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.AStore; +import asm.attributes.code.instructions.Dup; +import asm.attributes.code.instructions.GetField; +import asm.attributes.code.instructions.IALoad; +import asm.attributes.code.instructions.IInc; +import asm.attributes.code.instructions.ILoad; +import asm.attributes.code.instructions.IMul; +import asm.attributes.code.instructions.IStore; +import asm.attributes.code.instructions.IfNe; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.PutField; +import asm.attributes.code.instructions.PutStatic; +import asm.execution.Execution; +import asm.execution.InstructionContext; +import asm.execution.MethodContext; +import asm.execution.StackContext; + +public class ScriptVM extends AbstractInjector { + public ScriptVM(InjectData inject) { super(inject); } - public void inject() - { + public void inject() { final ClassGroup vanilla = inject.getVanilla(); /* @@ -89,7 +86,7 @@ public void inject() The script's instruction array is identified by looking for the getfield from script.instructions - bn.g @ rev 163 : + for rev 163 : // Jump back to here if vmExecuteOpcode returns true aload6 // Script.instructions iinc 5 1 // ++PC @@ -102,12 +99,14 @@ public void inject() if_icmpge L52 */ - final ClassFile deobScript = inject.getDeobfuscated().findClass("Script"); + final ClassFile deobScript = vanilla.findClass("Script"); final String scriptObName = deobScript.getName(); final Field scriptInstructions = InjectUtil.findField(inject, "opcodes", "Script"); final Field scriptStatePC = InjectUtil.findField(inject, "pc", "ScriptFrame"); + System.out.println(scriptInstructions); + System.out.println(scriptStatePC); final ClassFile vanillaClient = vanilla.findClass("Client"); @@ -136,82 +135,75 @@ public void inject() ALoad localInstructionLoad = null; MethodContext methodContext = pcontext.get(); - for (InstructionContext instrCtx : methodContext.getInstructionContexts()) - { + + for (InstructionContext instrCtx : methodContext.getInstructionContexts()) { Instruction instr = instrCtx.getInstruction(); + //System.out.println("INSTRUCTION: " + instrCtx.getInstruction().toString()); - if (instr instanceof AStore) - { + if (instr instanceof AStore) { AStore store = (AStore) instr; StackContext storedVarCtx = instrCtx.getPops().get(0); - + var name = storedVarCtx.getType().getInternalName(); // Find AStores that store a Script - if (storedVarCtx.getType().getInternalName().equals("Script")) - { + if (name.equals(scriptObName)) { + System.out.println("Found script store: " + name); scriptStores.add(store); } // Find AStores that store the instructions InstructionContext pusherCtx = storedVarCtx.getPushed(); - if (pusherCtx.getInstruction() instanceof GetField) - { + if (pusherCtx.getInstruction() instanceof GetField) { GetField getField = (GetField) pusherCtx.getInstruction(); - if (getField.getMyField().equals(scriptInstructions)) - { + if (getField.getMyField().equals(scriptInstructions)) { instructionArrayLocalVar = store.getVariableIndex(); } } } - // Find the local that invokedFromPc is set from - if (instr instanceof PutField put) - { - if (put.getMyField() == scriptStatePC) - { + if (instr instanceof PutField) { + PutField put = (PutField) instr; + if (put.getMyField() == scriptStatePC) { pcLocalVar = instrCtx.getPops().stream() .map(StackContext::getPushed) .filter(i -> i.getInstruction() instanceof ILoad) .map(i -> ((ILoad) i.getInstruction()).getVariableIndex()) .findFirst() - .orElse(null); + .orElseThrow(null); } } } // Find opcode load // This has to run after the first loop because it relies on instructionArrayLocalVar being set - if (instructionArrayLocalVar == null) - { + if (instructionArrayLocalVar == null) { throw new InjectException("Unable to find local instruction array"); } - for (InstructionContext instrCtx : methodContext.getInstructionContexts()) - { + for (InstructionContext instrCtx : methodContext.getInstructionContexts()) { Instruction instr = instrCtx.getInstruction(); - if (instr instanceof IALoad) - { + if (instr instanceof IALoad) { StackContext array = instrCtx.getPops().get(1); // Check where the array came from (looking for a getField scriptInstructions InstructionContext pushedCtx = array.getPushed(); Instruction pushed = pushedCtx.getInstruction(); - if (pushed instanceof ALoad) - { + if (pushed instanceof ALoad) { ALoad arrayLoad = (ALoad) pushed; - if (arrayLoad.getVariableIndex() == instructionArrayLocalVar) - { + if (arrayLoad.getVariableIndex() == instructionArrayLocalVar) { //Find the istore IStore istore = (IStore) instrCtx.getPushes().get(0).getPopped().stream() .map(InstructionContext::getInstruction) .filter(i -> i instanceof IStore) .findFirst() - .orElse(null); - if (istore != null) - { + .orElseThrow(null); + if (istore != null) { currentOpcodeStore = istore; localInstructionLoad = arrayLoad; + log.debug("[DEBUG] Found instruction array load {}", localInstructionLoad.getVariableIndex()); + log.debug("[DEBUG] currentOpcodeStore {}", currentOpcodeStore.getVariableIndex()); } } + } } } @@ -225,15 +217,12 @@ public void inject() log.debug("[DEBUG] Found script index {}", outerSciptIdx); ListIterator instrIter = instrs.getInstructions().listIterator(); - while (instrIter.hasNext()) - { + while (instrIter.hasNext()) { Instruction instr = instrIter.next(); - if (instr instanceof AStore) - { + if (instr instanceof AStore) { AStore il = (AStore) instr; - if (il.getVariableIndex() == outerSciptIdx) - { + if (il.getVariableIndex() == outerSciptIdx) { instrIter.previous(); instrIter.add(new Dup(instrs)); instrIter.add(new InvokeStatic(instrs, setCurrentScript.getPoolMethod())); @@ -245,22 +234,18 @@ public void inject() // Add PutStatics to all PC IStores and IIncs { - if (pcLocalVar == null) - { + if (pcLocalVar == null) { throw new InjectException("Unable to find ILoad for invokedFromPc IStore"); } log.debug("[DEBUG] Found pc index {}", pcLocalVar); ListIterator instrIter = instrs.getInstructions().listIterator(); - while (instrIter.hasNext()) - { + while (instrIter.hasNext()) { Instruction instr = instrIter.next(); - if (instr instanceof IStore) - { + if (instr instanceof IStore) { IStore il = (IStore) instr; - if (il.getVariableIndex() == pcLocalVar) - { + if (il.getVariableIndex() == pcLocalVar) { instrIter.previous(); instrIter.add(new Dup(instrs)); instrIter.add(new PutStatic(instrs, currentScriptPCField)); @@ -268,11 +253,9 @@ public void inject() } } - if (instr instanceof IInc) - { + if (instr instanceof IInc) { IInc iinc = (IInc) instr; - if (iinc.getVariableIndex() == pcLocalVar) - { + if (iinc.getVariableIndex() == pcLocalVar) { instrIter.add(new ILoad(instrs, pcLocalVar)); instrIter.add(new PutStatic(instrs, currentScriptPCField)); } @@ -281,34 +264,88 @@ public void inject() } // Inject call to vmExecuteOpcode - log.debug("[DEBUG] Found instruction array index {}", instructionArrayLocalVar); - if (currentOpcodeStore == null) - { + //log.debug("[DEBUG] Found instruction array index {}", instructionArrayLocalVar); + if (currentOpcodeStore == null) { throw new InjectException("Unable to find IStore for current opcode"); } + + /** + * for rev 218 + * L58 { + * f_new (Locals[15]: ScriptEvent, Script, int, int, [Ljava/lang/Object;, int, [I, [I, int, int, int, int, int, int, int) (Stack[0]) + * iinc 5 1 + * } + * L59 { + * aload 6 + * iload 5 + * iaload + * istore 17 + * } + * L60 { + * iload 17 + * bipush 100 + * if_icmplt L72 + * } + * L61 { + * aload 1 // reference to arg1 + * getfield Script.intOperands:int[] + * iload 5 + * iaload + * iconst_1 + * if_icmpne L64 + * } + * L62 { + * iconst_1 + * istore 18 + * } + */ + + /* + [DEBUG] Found instruction array load 6 + [DEBUG] currentOpcodeStore 17 + [DEBUG] Found script index 1 + [DEBUG] Found pc index 5 + */ + + // Existing code... + int istorepc = instrs.getInstructions().indexOf(currentOpcodeStore); assert istorepc >= 0; + System.out.println("istorepc: " + istorepc); Label nextIteration = instrs.createLabelFor(localInstructionLoad); + System.out.println("currentOpcodeStore: " + currentOpcodeStore.getVariableIndex()); + +// Debug statements to display indices before adding instructions + System.out.println("Before adding instructions:"); + System.out.println("Index 1: " + (istorepc + 1)); + System.out.println("Index 2: " + (istorepc + 2)); + System.out.println("Index 3: " + (istorepc + 3)); + instrs.addInstruction(istorepc + 1, new ILoad(instrs, currentOpcodeStore.getVariableIndex())); + System.out.println("vmExecuteOpcode: " + vmExecuteOpcode.getName() + " " + "istorepc: " + (istorepc + 1)); instrs.addInstruction(istorepc + 2, new InvokeStatic(instrs, vmExecuteOpcode.getPoolMethod())); instrs.addInstruction(istorepc + 3, new IfNe(instrs, nextIteration)); + System.out.println("Script instructions: " + scriptInstructions.getName() + " " + "istorepc: " + (istorepc + 3)); + Instructions runScriptInstrs = runScript.getCode().getInstructions(); + ListIterator instrIter = runScriptInstrs.getInstructions().listIterator(); while (instrIter.hasNext()) { Instruction instr = instrIter.next(); + //log.debug("[DEBUG] Checking instruction {}", instr.getInstructions()); - if (instr instanceof InvokeStatic) - { + if (instr instanceof InvokeStatic) { InvokeStatic invokeStatic = (InvokeStatic) instr; - if(invokeStatic.getMethod().getType().getReturnValue().toString().equals("L"+scriptObName+";")) { + if (invokeStatic.getMethod().getType().getReturnValue().toString().equals("L" + scriptObName + ";")) { instrIter.add(new Dup(instrs)); instrIter.add(new InvokeStatic(instrs, setCurrentScript.getPoolMethod())); instrIter.next(); } } } + } } \ No newline at end of file diff --git a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectGetter.java b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectGetter.java index 5f8e7273b..85061c878 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectGetter.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectGetter.java @@ -34,16 +34,16 @@ import com.openosrs.injector.InjectUtil; import com.openosrs.injector.rsapi.RSApiMethod; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.GetField; -import net.runelite.asm.attributes.code.instructions.GetStatic; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.GetField; +import asm.attributes.code.instructions.GetStatic; +import asm.signature.Signature; public class InjectGetter { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectInvoke.java b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectInvoke.java index 3b98e2d85..006657994 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectInvoke.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectInvoke.java @@ -34,21 +34,21 @@ import com.openosrs.injector.InjectUtil; import com.openosrs.injector.rsapi.RSApiMethod; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.BiPush; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.InvokeInterface; -import net.runelite.asm.attributes.code.instructions.InvokeStatic; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; -import net.runelite.asm.attributes.code.instructions.LDC; -import net.runelite.asm.attributes.code.instructions.SiPush; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.BiPush; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.InvokeInterface; +import asm.attributes.code.instructions.InvokeStatic; +import asm.attributes.code.instructions.InvokeVirtual; +import asm.attributes.code.instructions.LDC; +import asm.attributes.code.instructions.SiPush; +import asm.signature.Signature; public class InjectInvoke { diff --git a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectSetter.java b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectSetter.java index 1f3cdfeca..8a42f9cd5 100644 --- a/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectSetter.java +++ b/injector/src/main/java/com/openosrs/injector/injectors/rsapi/InjectSetter.java @@ -34,19 +34,19 @@ import com.openosrs.injector.InjectUtil; import com.openosrs.injector.rsapi.RSApiMethod; import java.util.List; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Field; -import net.runelite.asm.Method; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.Instructions; -import net.runelite.asm.attributes.code.instructions.ALoad; -import net.runelite.asm.attributes.code.instructions.CheckCast; -import net.runelite.asm.attributes.code.instructions.PutField; -import net.runelite.asm.attributes.code.instructions.PutStatic; -import net.runelite.asm.attributes.code.instructions.VReturn; -import net.runelite.asm.signature.Signature; +import asm.ClassFile; +import asm.Field; +import asm.Method; +import asm.Type; +import asm.attributes.Code; +import asm.attributes.code.Instruction; +import asm.attributes.code.Instructions; +import asm.attributes.code.instructions.ALoad; +import asm.attributes.code.instructions.CheckCast; +import asm.attributes.code.instructions.PutField; +import asm.attributes.code.instructions.PutStatic; +import asm.attributes.code.instructions.VReturn; +import asm.signature.Signature; public class InjectSetter { diff --git a/injector/src/main/java/com/openosrs/injector/rsapi/RSApi.java b/injector/src/main/java/com/openosrs/injector/rsapi/RSApi.java index cbcbdf974..2e66c537e 100644 --- a/injector/src/main/java/com/openosrs/injector/rsapi/RSApi.java +++ b/injector/src/main/java/com/openosrs/injector/rsapi/RSApi.java @@ -21,8 +21,8 @@ import java.util.Set; import lombok.Getter; import lombok.NoArgsConstructor; -import net.runelite.asm.Type; -import net.runelite.asm.pool.Class; +import asm.Type; +import asm.pool.Class; import org.jetbrains.annotations.NotNull; import org.objectweb.asm.ClassReader; diff --git a/injector/src/main/java/com/openosrs/injector/rsapi/RSApiClass.java b/injector/src/main/java/com/openosrs/injector/rsapi/RSApiClass.java index 84a1d5503..c6271a87c 100644 --- a/injector/src/main/java/com/openosrs/injector/rsapi/RSApiClass.java +++ b/injector/src/main/java/com/openosrs/injector/rsapi/RSApiClass.java @@ -14,10 +14,10 @@ import java.util.Map; import lombok.Getter; import lombok.Setter; -import net.runelite.asm.Annotation; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; +import asm.Annotation; +import asm.pool.Class; +import asm.pool.Method; +import asm.signature.Signature; import org.jetbrains.annotations.NotNull; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.MethodVisitor; diff --git a/injector/src/main/java/com/openosrs/injector/rsapi/RSApiMethod.java b/injector/src/main/java/com/openosrs/injector/rsapi/RSApiMethod.java index 4d512f210..5fbb5bebd 100644 --- a/injector/src/main/java/com/openosrs/injector/rsapi/RSApiMethod.java +++ b/injector/src/main/java/com/openosrs/injector/rsapi/RSApiMethod.java @@ -11,13 +11,13 @@ import java.util.Map; import lombok.Getter; import lombok.Setter; -import net.runelite.asm.Annotation; -import net.runelite.asm.Named; -import net.runelite.asm.Type; -import net.runelite.asm.attributes.Annotated; -import net.runelite.asm.pool.Class; -import net.runelite.asm.pool.Method; -import net.runelite.asm.signature.Signature; +import asm.Annotation; +import asm.Named; +import asm.Type; +import asm.attributes.Annotated; +import asm.pool.Class; +import asm.pool.Method; +import asm.signature.Signature; import org.objectweb.asm.AnnotationVisitor; import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; diff --git a/injector/src/main/java/com/openosrs/injector/transformers/EnumInvokeVirtualFixer.java b/injector/src/main/java/com/openosrs/injector/transformers/EnumInvokeVirtualFixer.java index 2c4b92bf1..10b78ca52 100644 --- a/injector/src/main/java/com/openosrs/injector/transformers/EnumInvokeVirtualFixer.java +++ b/injector/src/main/java/com/openosrs/injector/transformers/EnumInvokeVirtualFixer.java @@ -9,10 +9,10 @@ import com.openosrs.injector.injection.InjectData; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.code.Instruction; -import net.runelite.asm.attributes.code.instructions.InvokeVirtual; +import asm.ClassFile; +import asm.Method; +import asm.attributes.code.Instruction; +import asm.attributes.code.instructions.InvokeVirtual; public class EnumInvokeVirtualFixer extends InjectTransformer { diff --git a/injector/src/main/java/com/openosrs/injector/transformers/InjectTransformer.java b/injector/src/main/java/com/openosrs/injector/transformers/InjectTransformer.java index ae43cf0a5..1f5665089 100644 --- a/injector/src/main/java/com/openosrs/injector/transformers/InjectTransformer.java +++ b/injector/src/main/java/com/openosrs/injector/transformers/InjectTransformer.java @@ -11,7 +11,7 @@ import com.openosrs.injector.injection.InjectData; import lombok.RequiredArgsConstructor; import meteor.Logger; -import net.runelite.asm.Named; +import asm.Named; @RequiredArgsConstructor public abstract class InjectTransformer implements Named diff --git a/injector/src/main/java/com/openosrs/injector/transformers/Java8Ifier.java b/injector/src/main/java/com/openosrs/injector/transformers/Java8Ifier.java index fb4a579e1..42a857500 100644 --- a/injector/src/main/java/com/openosrs/injector/transformers/Java8Ifier.java +++ b/injector/src/main/java/com/openosrs/injector/transformers/Java8Ifier.java @@ -10,10 +10,10 @@ import com.openosrs.injector.injection.InjectData; import java.util.List; import java.util.stream.Collectors; -import net.runelite.asm.ClassFile; -import net.runelite.asm.Method; -import net.runelite.asm.attributes.Code; -import net.runelite.asm.attributes.code.Exception; +import asm.ClassFile; +import asm.Method; +import asm.attributes.Code; +import asm.attributes.code.Exception; import org.objectweb.asm.Opcodes; public class Java8Ifier extends InjectTransformer diff --git a/injector/src/main/java/com/openosrs/injector/transformers/SourceChanger.java b/injector/src/main/java/com/openosrs/injector/transformers/SourceChanger.java index ef9a7e212..01aeade7e 100644 --- a/injector/src/main/java/com/openosrs/injector/transformers/SourceChanger.java +++ b/injector/src/main/java/com/openosrs/injector/transformers/SourceChanger.java @@ -8,7 +8,7 @@ package com.openosrs.injector.transformers; import com.openosrs.injector.injection.InjectData; -import net.runelite.asm.ClassFile; +import asm.ClassFile; /** * This class changes the java source file debug information to the rs-client file name diff --git a/mixins/src/main/java/mixins/RSArchiveMixin.java b/mixins/src/main/java/mixins/RSArchiveMixin.java index 16462c09b..79373ca2a 100644 --- a/mixins/src/main/java/mixins/RSArchiveMixin.java +++ b/mixins/src/main/java/mixins/RSArchiveMixin.java @@ -21,7 +21,7 @@ public abstract class RSArchiveMixin implements RSArchive @MethodHook(value = "", end = true) @Inject - private void rl$init(RSArchiveDisk var1, RSArchiveDisk var2, RSJagNetThread var3, int archive, boolean var4, boolean var5, boolean var6, boolean var7) + private void rl$init(RSArchiveDisk var1, RSArchiveDisk var2, RSJagNetThread var3, int archive, boolean var4, boolean var5, boolean var6, boolean var7, boolean var8) { if (archive >= 0 && archive < 21) { diff --git a/mixins/src/main/java/mixins/RSClientMixin.java b/mixins/src/main/java/mixins/RSClientMixin.java index e5934ba8d..e4d8dd760 100644 --- a/mixins/src/main/java/mixins/RSClientMixin.java +++ b/mixins/src/main/java/mixins/RSClientMixin.java @@ -109,6 +109,8 @@ public void setCallbacks(Callbacks callbacks) { this.callbacks = callbacks; } + + @Inject private DrawCallbacks drawCallbacks; @@ -519,7 +521,8 @@ public Widget[] getWidgetRoots() { @Inject @Override - public Widget getWidget(WidgetInfo widget) { + public Widget getWidget(WidgetInfo widget) + { int groupId = widget.getGroupId(); int childId = widget.getChildId(); @@ -528,39 +531,49 @@ public Widget getWidget(WidgetInfo widget) { @Inject @Override - public Widget getWidget(int id) { + public Widget getWidget(int id) + { return getWidget(WidgetInfo.TO_GROUP(id), WidgetInfo.TO_CHILD(id)); } @Inject @Override - public RSWidget[] getGroup(int groupId) { + public RSWidget[] getGroup(int groupId) + { RSWidget[][] widgets = getWidgets(); - if (widgets == null || groupId < 0 || groupId >= widgets.length || widgets[groupId] == null) { + if (widgets == null || groupId < 0 || groupId >= widgets.length || widgets[groupId] == null) + { return null; } return widgets[groupId]; } - @Inject @Override - public Widget getWidget(int groupId, int childId) { + public RSWidget[][] getWidgets() + { + return getWidgetDefinition() != null ? getWidgetDefinition().getWidgets() : null; + } + @Inject + @Override + public Widget getWidget(int groupId, int childId) + { RSWidget[][] widgets = getWidgets(); - if (widgets == null || widgets.length <= groupId) { + if (widgets == null || widgets.length <= groupId) + { return null; } RSWidget[] childWidgets = widgets[groupId]; - if (childWidgets == null || childWidgets.length <= childId) { + if (childWidgets == null || childWidgets.length <= childId) + { return null; } return childWidgets[childId]; } - @Inject @Override public int getVar(VarPlayer varPlayer) { @@ -1065,15 +1078,18 @@ public SpritePixels createItemSprite(int itemId, int quantity, int border, int s @Copy("runWidgetOnLoadListener") @Replace("runWidgetOnLoadListener") @SuppressWarnings("InfiniteRecursion") - public static void copy$runWidgetOnLoadListener(int groupId) { + public static void copy$runWidgetOnLoadListener(int groupId) + { copy$runWidgetOnLoadListener(groupId); - RSWidget[][] widgets = client.getWidgets(); + RSWidget[][] widgets = client.getWidgetDefinition().getWidgets(); boolean loaded = widgets != null && widgets[groupId] != null; - if (loaded) { + if (loaded) + { WidgetLoaded event = new WidgetLoaded(groupId); - client.getCallbacks().post(Events.WIDGET_LOADED, event); + event.setGroupId(groupId); + client.getCallbacks().post(Events.WIDGET_LOADED,event); } } @@ -2421,6 +2437,7 @@ public static void check(String name, RSEvictingDualNodeHashTable dualNodeHashTa boolean var3 = dualNodeHashTable.isTrashing(); dualNodeHashTable.setThreshold(dualNodeHashTable.getThreshold() * 0.92F + (var3 ? 0.07999998F : 0.0F)); if (var3) { + if (dualNodeHashTable.getThreshold() > 0.9F && dualNodeHashTable.getCapacity() < dualNodeHashTable.getTmpCapacity() * 8) { dualNodeHashTable.increaseCapacity(dualNodeHashTable.getCapacity() * 2); client.getLogger() @@ -2430,18 +2447,41 @@ public static void check(String name, RSEvictingDualNodeHashTable dualNodeHashTa dualNodeHashTable.getDeque().add(dualNodeHashTable.getDualNode()); } + @Inject + @Override + public RSEvictingDualNodeHashTable getWidgetSpriteCache() + { + return getWidgetDefinition() != null ? getWidgetDefinition().getWidgetSpriteCache() : null; + } @Inject public static void checkResize() { + check("EnumDefinition_cached", client.getEnumDefinitionCache()); + check("SpotAnimationDefinition_cached", client.getSpotAnimationDefinitionCache()); + check("SpotAnimationDefinition_cachedModels", client.getSpotAnimationDefinitionModlesCache()); check("Script_cached", client.getScriptCache()); check("StructDefinition_cached", client.getRSStructCompositionCache()); check("HealthBarDefinition_cached", client.getHealthBarCache()); check("HealthBarDefinition_cachedSprites", client.getHealthBarSpriteCache()); check("ObjectDefinition_cachedModels", client.getObjectDefinitionModelsCache()); - check("Widget_cachedSprites", client.getWidgetSpriteCache()); + //check("Widget_cachedSprites", client.getWidgetSpriteCache()); + + check("e1", client.getE1()); + check("e2", client.getE2()); + check("e3", client.getE3()); + check("archive7", client.getArchive7()); + check("archive5", client.getArchive5()); + check("e4", client.getE4()); + check("e5", client.getE5()); + check("e6", client.getE6()); + check("e7", client.getE7()); + check("e8", client.getE8()); + check("archive4", client.getArchive4()); + check("archive11", client.getArchive11()); + + check("ItemDefinition_cached", client.getItemCompositionCache()); check("VarbitDefinition_cached", client.getVarbitCache()); - check("EnumDefinition_cached", client.getEnumDefinitionCache()); check("FloorUnderlayDefinition_cached", client.getFloorUnderlayDefinitionCache()); check("FloorOverlayDefinition_cached", client.getFloorOverlayDefinitionCache()); check("HitSplatDefinition_cached", client.getHitSplatDefinitionCache()); @@ -2461,14 +2501,12 @@ public static void checkResize() { check("SequenceDefinition_cached", client.getSequenceDefinitionCache()); check("SequenceDefinition_cachedFrames", client.getSequenceDefinitionFramesCache()); check("SequenceDefinition_cachedModel", client.getSequenceDefinitionModelsCache()); - check("SpotAnimationDefinition_cached", client.getSpotAnimationDefinitionCache()); - check("SpotAnimationDefinition_cachedModels", client.getSpotAnimationDefinitionModlesCache()); check("VarcInt_cached", client.getVarcIntCache()); check("VarpDefinition_cached", client.getVarpDefinitionCache()); check("Widget_cachedModels", client.getModelsCache()); - check("Widget_cachedFonts", client.getFontsCache()); + // check("Widget_cachedFonts", client.getFontsCache()); check("Widget_cachedSpriteMasks", client.getSpriteMasksCache()); - check("WorldMapElement_cachedSprites", client.getSpritesCache()); + // check("WorldMapElement_cachedSprites", client.getSpritesCache()); } @Inject @@ -3170,17 +3208,84 @@ public static void onRootInterfaceChange(int idx) { public static void onRunEnergyChanged(int idx) { client.getCallbacks().post(Events.RUN_ENERGY_CHANGED_EVENT, new RunEnergyChangedEvent(client.getEnergy())); } + @Inject + @Override + public void closeInterface(WidgetNode interfaceNode, boolean unload) + { + WidgetNode widgetNode = (WidgetNode) interfaceNode; + if (widgetNode != this.getComponentTable().get(widgetNode.getHash())) + { + throw new IllegalArgumentException("WidgetNode is no longer valid"); + } + else + { + this.closeRSInterface(widgetNode, unload); + } + } + @Inject + @Override + public WidgetNode openInterface(int componentId, int interfaceId, int modalMode) + { + assert this.isClientThread() : "openInterface must be called on client thread"; + + Widget component = this.getWidget(componentId); + if (component == null) + { + throw new IllegalStateException("component does not exist"); + } + else if (component.getType() != 0) + { + throw new IllegalStateException("component is not a layer"); + } + else + { + RSInterfaceParent interfaceNode = (RSInterfaceParent) this.getComponentTable().get((long) componentId); + if (interfaceNode != null) + { + this.closeInterface(interfaceNode, interfaceId != interfaceNode.getId()); + } + + Iterator iter = this.getComponentTable().iterator(); + + RSInterfaceParent iface; + do + { + if (!iter.hasNext()) + { + interfaceNode = newInterfaceParent(); + interfaceNode.setId(interfaceId); + interfaceNode.setModalMode(modalMode); + this.getComponentTable().put(interfaceNode, (long) componentId); + this.getWidgetDefinition().loadInterface$api(interfaceId); + this.revalidateWidgetScroll(this.getWidgetDefinition().getWidgets()[componentId >> 16], component, false); + this.copy$runWidgetOnLoadListener(interfaceId); + int topLevelInterfaceId = this.getTopLevelInterfaceId(); + if (topLevelInterfaceId != -1 && this.getWidgetDefinition().loadInterface$api(topLevelInterfaceId)) + { + this.runComponentCloseListeners (this.getWidgetDefinition().getWidgets()[topLevelInterfaceId], 1); + } + + return interfaceNode; + } + + iface = (RSInterfaceParent) iter.next(); + } + while (iface.getId() != interfaceId); + + throw new IllegalStateException("interface " + interfaceId + " is already open"); + } + } @Inject - @MethodHook(value = "ifOpenSub", end = true) + @MethodHook(value = "openInterface", end = true) public static void onSubInterfaceChange(int targetComponent, int interfaceId, int walkType) { client.getCallbacks() - .post(Events.IF_OPEN_SUB_EVENT, new IfOpenSubEvent(targetComponent, interfaceId, walkType)); + .post(Events.IF_OPEN_SUB_EVENT, new openInterfaceEvent(targetComponent, interfaceId, walkType)); } @Inject @MethodHook(value = "loadRegions", end = true) - public static void onRegionLoad(boolean instanced, RSPacketBuffer buffer) { + public static void onRegionLoad(boolean instanced, RSPacketBuffer buffer, boolean bool) { if (!instanced) { return; } @@ -3209,10 +3314,18 @@ public void setQuestState(Quest quest, QuestState questState) { public QuestState getQuestState(Quest quest) { return questStates.get(quest); } - @Inject @Override - public Object getDBTableField(int rowID, int column, int tupleIndex, int fieldIndex) + public List getDBRowsByValue(int rowID, int column, int tupleIndex, Object value) + { + RSDbTable dbTable = client.getDbTable((rowID << 12 | column << 4)); + Map columns = (Map) dbTable.getColumns().get(tupleIndex); + List rows = (List) columns.get(value); + return rows == null ? Collections.emptyList() : Collections.unmodifiableList(rows); + } + @Inject + @Override + public Object[] getDBTableField(int rowID, int column, int tupleIndex) { RSDbRowType dbRowType = client.getDbRowType(rowID); RSDbTableType dbTableType = client.getDbTableType(dbRowType.getTableId()); @@ -3225,27 +3338,29 @@ public Object getDBTableField(int rowID, int column, int tupleIndex, int fieldIn columnType = dbTableType.getDefaultValues()[column]; } - if (columnType == null) + if (tupleIndex >= type.length) { - return null; + throw new IllegalArgumentException("tuple index too large"); } - else if (tupleIndex >= type.length) + else if (columnType == null) { - throw new IllegalArgumentException("tuple index too large"); + return new Object[0]; } else { - if (fieldIndex > columnType.length / type.length) - { - throw new IllegalArgumentException("field index too large"); - } - else + int fieldLength = columnType.length / type.length; + Object[] field = new Object[fieldLength]; + + for (int fieldIndex = 0; fieldIndex < fieldLength; ++fieldIndex) { - return columnType[tupleIndex * type.length + fieldIndex]; + field[fieldIndex] = columnType[fieldIndex * type.length + tupleIndex]; } + + return field; } } + @Inject @Override public int getEnergy() { diff --git a/mixins/src/main/java/mixins/RSItemCompositionMixin.java b/mixins/src/main/java/mixins/RSItemCompositionMixin.java index 0cc4afdb4..39a2e3467 100644 --- a/mixins/src/main/java/mixins/RSItemCompositionMixin.java +++ b/mixins/src/main/java/mixins/RSItemCompositionMixin.java @@ -23,9 +23,9 @@ public abstract class RSItemCompositionMixin implements RSItemComposition @Inject private int shiftClickActionIndex = DEFAULT_CUSTOM_SHIFT_CLICK_INDEX; - @MethodHook(value = "", end = true) + @MethodHook(value = "", end = true) @Inject - public static void rl$clinit() + public void rl$init() { RSEvictingDualNodeHashTable cachedModels2 = client.getItemCompositionCache(); cachedModels2.resize(1024); diff --git a/mixins/src/main/java/mixins/RSVarbitCompositionMixin.java b/mixins/src/main/java/mixins/RSVarbitCompositionMixin.java index ef4a00f28..f7ba3dc33 100644 --- a/mixins/src/main/java/mixins/RSVarbitCompositionMixin.java +++ b/mixins/src/main/java/mixins/RSVarbitCompositionMixin.java @@ -11,16 +11,16 @@ @Mixin(RSVarbitComposition.class) public abstract class RSVarbitCompositionMixin implements RSVarbitComposition { - @Shadow("client") - private static RSClient client; + @Shadow("client") + private static RSClient client; - @MethodHook(value = "", end = true) - @Inject - public static void rl$clinit() - { - if (client != null) { - RSEvictingDualNodeHashTable varbitCache = client.getVarbitCache(); - varbitCache.resize(256); - } - } -} + @MethodHook(value = "", end = true) + @Inject + public void rl$init() + { + if (client != null) { + RSEvictingDualNodeHashTable cachedModels2 = client.getItemCompositionCache(); + cachedModels2.resize(1024); + } + } +} \ No newline at end of file diff --git a/mixins/src/main/java/mixins/RSWidgetMixin.java b/mixins/src/main/java/mixins/RSWidgetMixin.java index 9a0719502..e29a4bbd5 100644 --- a/mixins/src/main/java/mixins/RSWidgetMixin.java +++ b/mixins/src/main/java/mixins/RSWidgetMixin.java @@ -711,4 +711,11 @@ public void onModelRotation(int idx) { public void onModelVisibilityChange(int idx) { client.getCallbacks().post(Events.WIDGET_VISIBILITY_CHANGE, new WidgetVisibilityChange(isHidden())); } + + @Inject + @Override + public RSFont getFont() + { + return getRSFont(client.getWidgetDefinition()); + } } diff --git a/mixins/src/main/java/mixins/ReflectionMixin.java b/mixins/src/main/java/mixins/ReflectionMixin.java deleted file mode 100644 index ebbe5acfb..000000000 --- a/mixins/src/main/java/mixins/ReflectionMixin.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright (c) 2020 ThatGamerBlue - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package mixins; - -import net.runelite.api.mixins.*; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.rs.api.RSClient; -import net.runelite.rs.api.RSReflection; - -import java.lang.annotation.Annotation; -import java.lang.reflect.Field; -import java.lang.reflect.Method; - -/** - * Because we inject into the deob, we can hook into these reflection checks. - * There is no evidence that Jagex actually uses any of these checks - * Better safe than sorry I suppose though. - * We only report method invocations by default. - */ -@Mixin(RSReflection.class) -public abstract class ReflectionMixin implements RSReflection -{ - @Shadow("client") - private static RSClient client; - - @Inject - public static boolean reportClasses = false; - - @Inject - public static boolean reportFields = false; - - @Copy("reportFindClass") - @Replace("reportFindClass") - public static void reportFindClass(String className) { - if (reportClasses) - client.getLogger().error("ReflectionLookup:Class - " + className); - } - - @Copy("reportFindField") - @Replace("reportFindField") - public static void reportFindField(Class clazz, String fieldName) { - if (!reportFields) - return; - - for (Field f : clazz.getDeclaredFields()) { - for (Annotation a : f.getAnnotations()) { - if (a instanceof ObfuscatedName) { - String obfuscatedName = ((ObfuscatedName) a).value(); - if (obfuscatedName.equals(fieldName)) { - client.getLogger().error("ReflectionLookup:Field - " + clazz.getName() + "." + f.getName()); - } - } - } - } - } - - @Copy("reportInvoke") - @Replace("reportInvoke") - public static void reportInvoke(Method method, Object reference, Object[] args) { - String className = method.getClass().getName(); - int arg = 0; - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - " + className + "." + method.getName()); - if (reference != null) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - reference - " + reference.getClass().getName()); - for (Object o : args) { - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - arg" + arg + " - " + o.getClass().getName()); - if (o instanceof Integer) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - intValue" + arg + " - " + o); - if (o instanceof String) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - strValue" + arg + " - " + o); - if (o instanceof Long) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - longValue" + arg + " - " + o); - if (o instanceof Byte) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - byteValue" + arg + " - " + o); - if (o instanceof Boolean) - client.getLogger().error("net.runelite.net.runelite.rs.Reflection:INVOKE - boolValue" + arg + " - " + o); - arg++; - } - } -} diff --git a/mixins/src/main/java/mixins/ScriptVMMixin.java b/mixins/src/main/java/mixins/ScriptVMMixin.java index bf5f99bde..781f12a73 100644 --- a/mixins/src/main/java/mixins/ScriptVMMixin.java +++ b/mixins/src/main/java/mixins/ScriptVMMixin.java @@ -48,8 +48,8 @@ @Mixin(RSClient.class) public abstract class ScriptVMMixin implements RSClient { - @Shadow("client") - private static RSClient client; + @Shadow("client") + private static RSClient client; @Inject private static RSScript currentScript; @@ -61,24 +61,6 @@ public abstract class ScriptVMMixin implements RSClient @Inject private static int currentScriptPC; - // Call is injected by the raw injector - @Inject - static void setCurrentScript(RSScript script) - { - if (rootScriptEvent != null) - { - if (script != null) - { - ScriptPreFired event = new ScriptPreFired((int) script.getHash(), rootScriptEvent); - client.getCallbacks().post(Events.SCRIPT_PRE_FIRED, event); - } - - rootScriptEvent = null; - } - - currentScript = script; - } - // Call is injected into runScript by the ScriptVM raw injector @Inject static boolean vmExecuteOpcode(int opcode) @@ -86,11 +68,19 @@ static boolean vmExecuteOpcode(int opcode) switch (opcode) { case RUNELITE_EXECUTE: + assert currentScript.getInstructions()[currentScriptPC] == RUNELITE_EXECUTE; + + int stringStackSize = client.getStringStackSize(); String stringOp = client.getStringStack()[--stringStackSize]; client.setStringStackSize(stringStackSize); + client.getLogger().info("ScriptVM: " + stringOp); + client.getLogger().info("Current script: " + currentScript.toString()); + client.getLogger().info("Current scriptPC: " + currentScriptPC); + + if ("debug".equals(stringOp)) { @@ -123,7 +113,7 @@ static boolean vmExecuteOpcode(int opcode) client.setIntStackSize(intStackSize); return true; } - else if ("mes".equals(stringOp)) + else if ("mes".equalsIgnoreCase(stringOp)) { int intStackSize = client.getIntStackSize(); int messageType = client.getIntStack()[--intStackSize]; @@ -133,6 +123,7 @@ else if ("mes".equals(stringOp)) client.addChatMessage(ChatMessageType.of(messageType), "", message, null, true); return true; } + System.out.println("Current script: " + currentScript.toString()); ScriptCallbackEvent event = new ScriptCallbackEvent(currentScript, stringOp); client.getCallbacks().post(Events.SCRIPT_CALLBACK, event); return false; @@ -158,13 +149,37 @@ else if ("mes".equals(stringOp)) return false; } + // Call is injected by the raw injector + @Inject + static void setCurrentScript(RSScript script) + { + if (rootScriptEvent != null) + { + if(script != null) { + ScriptPreFired event = new ScriptPreFired((int) script.getHash(), rootScriptEvent); + client.getCallbacks().post(Events.SCRIPT_PRE_FIRED, event); + } + rootScriptEvent = null; + } + + currentScript = script; + + } + + @Inject public static int currentQuestRow = -1; @Copy("runScriptLogic") @Replace("runScriptLogic") static void copy$runScriptLogic(RSScriptEvent event, RSScript var4, int maxExecutionTime, int var2) { - copy$runScriptLogic(event, var4, maxExecutionTime, var2); + try { + copy$runScriptLogic(event, var4, maxExecutionTime, var2); + + } catch (Exception e) { + e.printStackTrace(); + + } } @Copy("runScript") @@ -172,10 +187,7 @@ else if ("mes".equals(stringOp)) static void copy$runScript(RSScriptEvent event, int maxExecutionTime, int var2) { Object[] arguments = event.getArguments(); - if (!(arguments != null && arguments.length > 0)) { - System.out.println("Bad script arguments"); - return; - } + if (arguments[0] instanceof JavaScriptCallback) { try @@ -218,18 +230,21 @@ public void runScriptEvent(RSScriptEvent event) Object[] args = event.getArguments(); int scriptId = (int) args[0]; - assert isClientThread() : "runScriptEvent must be called on client thread"; + //assert isClientThread() : "runScriptEvent must be called on client thread"; //assert currentScript == null : "scripts are not reentrant"; runScript(event, 5000000, 0); boolean assertionsEnabled = false; - assert assertionsEnabled = true; + //assert assertionsEnabled = true; - if (assertionsEnabled && args[0] instanceof Integer) + if (args[0] instanceof Integer) { RSScript script = (RSScript) client.getScriptCache().get(scriptId); if (script != null) { + + + int intCount = 0, stringCount = 0; for (int i = 1; i < args.length; i++) { @@ -242,10 +257,12 @@ public void runScriptEvent(RSScriptEvent event) stringCount++; } } + System.out.println("Script " + scriptId + " was called" + + script.getIntArgumentCount() + "+" + script.getStringArgumentCount() + ", got " + intCount + "+" + stringCount); assert script.getIntArgumentCount() == intCount && script.getStringArgumentCount() == stringCount : - "Script " + scriptId + " was called with the incorrect number of arguments; takes " - + script.getIntArgumentCount() + "+" + script.getStringArgumentCount() + ", got " + intCount + "+" + stringCount; + "Script " + scriptId + " was called with the incorrect number of arguments; takes " + + script.getIntArgumentCount() + "+" + script.getStringArgumentCount() + ", got " + intCount + "+" + stringCount; } } } diff --git a/mixins/src/main/java/mixins/VarbitMixin.java b/mixins/src/main/java/mixins/VarbitMixin.java index 66b8d6e61..984f1ee30 100644 --- a/mixins/src/main/java/mixins/VarbitMixin.java +++ b/mixins/src/main/java/mixins/VarbitMixin.java @@ -60,7 +60,7 @@ public RSVarbitComposition getVarbitComposition(int id) if (varbit == null) { - //log.trace("Cache miss for varbit {}", id); + //System.out.printf("Cache miss for varbit {}", id); client.rs$getVarbit(id); // preload varbit varbit = (RSVarbitComposition) getVarbitCache().get(id); varbitCache.put(id, varbit); diff --git a/mixins/src/main/java/mixins/WidgetSpriteMixin.java b/mixins/src/main/java/mixins/WidgetSpriteMixin.java index 1549e97ca..058da0480 100644 --- a/mixins/src/main/java/mixins/WidgetSpriteMixin.java +++ b/mixins/src/main/java/mixins/WidgetSpriteMixin.java @@ -10,6 +10,7 @@ import net.runelite.rs.api.RSSpritePixels; import net.runelite.rs.api.RSUrlRequester; import net.runelite.rs.api.RSWidget; +import net.runelite.rs.api.RSWidgetDefinition; @Mixin(RSWidget.class) public abstract class WidgetSpriteMixin implements RSWidget @@ -19,7 +20,7 @@ public abstract class WidgetSpriteMixin implements RSWidget @Copy("getSprite") @Replace("getSprite") - public RSSpritePixels copy$getWidgetSprite(boolean var1, RSUrlRequester var2) + public RSSpritePixels copy$getWidgetSprite(RSWidgetDefinition rsWidgetDefinition, boolean var1, RSUrlRequester var2) { if (getSpriteId() != -1) { @@ -31,13 +32,13 @@ public abstract class WidgetSpriteMixin implements RSWidget } } - return copy$getWidgetSprite(var1, var2); + return copy$getWidgetSprite(rsWidgetDefinition,var1, var2); } @Inject @Override public SpritePixels getSprite() { - return getSprite(false, null); + return getSprite(null,false, null); } } \ No newline at end of file diff --git a/osrs/src/main/java/AABB.java b/osrs/src/main/java/AABB.java index 2c50633b4..3355e1a97 100644 --- a/osrs/src/main/java/AABB.java +++ b/osrs/src/main/java/AABB.java @@ -2,25 +2,25 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("ip") +@ObfuscatedName("ku") @Implements("AABB") public class AABB { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("xMid") int xMid; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("yMid") int yMid; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("zMid") int zMid; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("xMidOffset") int xMidOffset; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("yMidOffset") int yMidOffset; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("zMidOffset") int zMidOffset; diff --git a/osrs/src/main/java/AbstractArchive.java b/osrs/src/main/java/AbstractArchive.java index df0a9e38d..39a8360be 100644 --- a/osrs/src/main/java/AbstractArchive.java +++ b/osrs/src/main/java/AbstractArchive.java @@ -3,67 +3,67 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nu") +@ObfuscatedName("ol") @Implements("AbstractArchive") public abstract class AbstractArchive { - @ObfuscatedName("bt") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "Lus;" + descriptor = "Lve;" ) @Export("gzipDecompressor") static GZipDecompressor gzipDecompressor; - @ObfuscatedName("bm") + @ObfuscatedName("bp") @Export("maximumContainerSize") static int maximumContainerSize; - @ObfuscatedName("ax") + @ObfuscatedName("ai") @Export("groupCount") int groupCount; - @ObfuscatedName("ah") + @ObfuscatedName("aw") @Export("groupIds") int[] groupIds; - @ObfuscatedName("as") + @ObfuscatedName("ae") @Export("groupNameHashes") int[] groupNameHashes; - @ObfuscatedName("ay") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Luz;" + descriptor = "Lvh;" ) @Export("groupNameHashTable") IntHashTable groupNameHashTable; - @ObfuscatedName("aj") + @ObfuscatedName("ag") @Export("groupCrcs") int[] groupCrcs; - @ObfuscatedName("av") + @ObfuscatedName("ad") @Export("groupVersions") int[] groupVersions; - @ObfuscatedName("aw") + @ObfuscatedName("af") @Export("fileCounts") int[] fileCounts; - @ObfuscatedName("ak") + @ObfuscatedName("be") @Export("fileIds") int[][] fileIds; - @ObfuscatedName("bh") + @ObfuscatedName("bd") @Export("fileNameHashes") int[][] fileNameHashes; - @ObfuscatedName("bj") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "[Luz;" + descriptor = "[Lvh;" ) @Export("fileNameHashTables") IntHashTable[] fileNameHashTables; - @ObfuscatedName("bk") + @ObfuscatedName("bi") @Export("groups") Object[] groups; @ObfuscatedName("bv") @Export("files") Object[][] files; - @ObfuscatedName("bd") + @ObfuscatedName("bg") @Export("hash") public int hash; - @ObfuscatedName("by") + @ObfuscatedName("ba") @Export("releaseGroups") boolean releaseGroups; - @ObfuscatedName("bs") + @ObfuscatedName("bm") @Export("shallowFiles") boolean shallowFiles; @@ -77,63 +77,56 @@ public abstract class AbstractArchive { this.shallowFiles = var2; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1272707955" + garbageValue = "606874642" ) @Export("loadRegionFromGroup") void loadRegionFromGroup(int var1) { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "402130956" + garbageValue = "-412384319" ) @Export("loadGroup") void loadGroup(int var1) { } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1917091652" + garbageValue = "-788412100" ) @Export("groupLoadPercent") int groupLoadPercent(int var1) { return this.groups[var1] != null ? 100 : 0; } - @ObfuscatedName("be") + @ObfuscatedName("bq") @ObfuscatedSignature( descriptor = "([BI)V", - garbageValue = "1178944062" + garbageValue = "-18383412" ) @Export("decodeIndex") void decodeIndex(byte[] var1) { int var3 = var1.length; - int var5 = -1; - - int var6; - for (var6 = 0; var6 < var3; ++var6) { - var5 = var5 >>> 8 ^ Buffer.crc32Table[(var5 ^ var1[var6]) & 255]; - } - - var5 = ~var5; - this.hash = var5; - Buffer var15 = new Buffer(class53.decompressBytes(var1)); - var5 = var15.readUnsignedByte(); + int var2 = class174.method885(var1, 0, var3); + this.hash = var2; + Buffer var4 = new Buffer(class30.decompressBytes(var1)); + int var5 = var4.readUnsignedByte(); if (var5 >= 5 && var5 <= 7) { if (var5 >= 6) { - var15.readInt(); + var4.readInt(); } - var6 = var15.readUnsignedByte(); + int var6 = var4.readUnsignedByte(); if (var5 >= 7) { - this.groupCount = var15.method2562(); + this.groupCount = var4.readLargeSmart(); } else { - this.groupCount = var15.readUnsignedShort(); + this.groupCount = var4.readUnsignedShort(); } int var7 = 0; @@ -142,14 +135,14 @@ void decodeIndex(byte[] var1) { int var9; if (var5 >= 7) { for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupIds[var9] = var7 += var15.method2562(); + this.groupIds[var9] = var7 += var4.readLargeSmart(); if (this.groupIds[var9] > var8) { var8 = this.groupIds[var9]; } } } else { for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupIds[var9] = var7 += var15.readUnsignedShort(); + this.groupIds[var9] = var7 += var4.readUnsignedShort(); if (this.groupIds[var9] > var8) { var8 = this.groupIds[var9]; } @@ -166,22 +159,22 @@ void decodeIndex(byte[] var1) { this.groupNameHashes = new int[var8 + 1]; for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupNameHashes[this.groupIds[var9]] = var15.readInt(); + this.groupNameHashes[this.groupIds[var9]] = var4.readInt(); } this.groupNameHashTable = new IntHashTable(this.groupNameHashes); } for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupCrcs[this.groupIds[var9]] = var15.readInt(); + this.groupCrcs[this.groupIds[var9]] = var4.readInt(); } for (var9 = 0; var9 < this.groupCount; ++var9) { - this.groupVersions[this.groupIds[var9]] = var15.readInt(); + this.groupVersions[this.groupIds[var9]] = var4.readInt(); } for (var9 = 0; var9 < this.groupCount; ++var9) { - this.fileCounts[this.groupIds[var9]] = var15.readUnsignedShort(); + this.fileCounts[this.groupIds[var9]] = var4.readUnsignedShort(); } int var10; @@ -198,7 +191,7 @@ void decodeIndex(byte[] var1) { this.fileIds[var10] = new int[var11]; for (var13 = 0; var13 < var11; ++var13) { - var14 = this.fileIds[var10][var13] = var7 += var15.method2562(); + var14 = this.fileIds[var10][var13] = var7 += var4.readLargeSmart(); if (var14 > var12) { var12 = var14; } @@ -215,7 +208,7 @@ void decodeIndex(byte[] var1) { this.fileIds[var10] = new int[var11]; for (var13 = 0; var13 < var11; ++var13) { - var14 = this.fileIds[var10][var13] = var7 += var15.readUnsignedShort(); + var14 = this.fileIds[var10][var13] = var7 += var4.readUnsignedShort(); if (var14 > var12) { var12 = var14; } @@ -235,7 +228,7 @@ void decodeIndex(byte[] var1) { this.fileNameHashes[var10] = new int[this.files[var10].length]; for (var12 = 0; var12 < var11; ++var12) { - this.fileNameHashes[var10][this.fileIds[var10][var12]] = var15.readInt(); + this.fileNameHashes[var10][this.fileIds[var10][var12]] = var4.readInt(); } this.fileNameHashTables[var10] = new IntHashTable(this.fileNameHashes[var10]); @@ -247,20 +240,20 @@ void decodeIndex(byte[] var1) { } } - @ObfuscatedName("bi") + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "(IIB)[B", - garbageValue = "-1" + descriptor = "(III)[B", + garbageValue = "946380186" ) @Export("takeFile") public byte[] takeFile(int var1, int var2) { return this.takeFileEncrypted(var1, var2, (int[])null); } - @ObfuscatedName("bz") + @ObfuscatedName("cg") @ObfuscatedSignature( descriptor = "(II[II)[B", - garbageValue = "1244530387" + garbageValue = "1812200763" ) @Export("takeFileEncrypted") public byte[] takeFileEncrypted(int var1, int var2, int[] var3) { @@ -276,7 +269,7 @@ public byte[] takeFileEncrypted(int var1, int var2, int[] var3) { } } - byte[] var5 = class126.method699(this.files[var1][var2], false); + byte[] var5 = class128.method694(this.files[var1][var2], false); if (this.shallowFiles) { this.files[var1][var2] = null; } @@ -287,10 +280,10 @@ public byte[] takeFileEncrypted(int var1, int var2, int[] var3) { } } - @ObfuscatedName("bx") + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "57" + descriptor = "(III)Z", + garbageValue = "-1107473294" ) @Export("tryLoadFile") public boolean tryLoadFile(int var1, int var2) { @@ -308,12 +301,12 @@ public boolean tryLoadFile(int var1, int var2) { } } - @ObfuscatedName("bn") + @ObfuscatedName("cx") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-2143773006" + garbageValue = "-544854529" ) - public boolean method1906(int var1) { + public boolean method1930(int var1) { if (this.files.length == 1) { return this.tryLoadFile(0, var1); } else if (this.files[var1].length == 1) { @@ -323,10 +316,10 @@ public boolean method1906(int var1) { } } - @ObfuscatedName("bw") + @ObfuscatedName("cp") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-1627595520" + garbageValue = "456199859" ) @Export("tryLoadGroup") public boolean tryLoadGroup(int var1) { @@ -338,10 +331,10 @@ public boolean tryLoadGroup(int var1) { } } - @ObfuscatedName("bc") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-796696946" + descriptor = "(B)Z", + garbageValue = "127" ) @Export("isFullyLoaded") public boolean isFullyLoaded() { @@ -360,10 +353,10 @@ public boolean isFullyLoaded() { return var1; } - @ObfuscatedName("bg") + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "(II)[B", - garbageValue = "-118859567" + descriptor = "(IB)[B", + garbageValue = "30" ) @Export("takeFileFlat") public byte[] takeFileFlat(int var1) { @@ -376,10 +369,10 @@ public byte[] takeFileFlat(int var1) { } } - @ObfuscatedName("cw") + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "(III)[B", - garbageValue = "-1922174985" + descriptor = "(IIB)[B", + garbageValue = "-4" ) @Export("getFile") public byte[] getFile(int var1, int var2) { @@ -395,17 +388,17 @@ public byte[] getFile(int var1, int var2) { } } - byte[] var4 = class126.method699(this.files[var1][var2], false); + byte[] var4 = class128.method694(this.files[var1][var2], false); return var4; } else { return null; } } - @ObfuscatedName("cf") + @ObfuscatedName("cw") @ObfuscatedSignature( descriptor = "(II)[B", - garbageValue = "-893648028" + garbageValue = "-1549556992" ) @Export("getFileFlat") public byte[] getFileFlat(int var1) { @@ -418,20 +411,20 @@ public byte[] getFileFlat(int var1) { } } - @ObfuscatedName("cm") + @ObfuscatedName("cq") @ObfuscatedSignature( descriptor = "(II)[I", - garbageValue = "76530715" + garbageValue = "1026301706" ) @Export("getGroupFileIds") public int[] getGroupFileIds(int var1) { return var1 >= 0 && var1 < this.fileIds.length ? this.fileIds[var1] : null; } - @ObfuscatedName("cn") + @ObfuscatedName("cl") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "11" + descriptor = "(II)I", + garbageValue = "1471865818" ) @Export("getGroupFileCount") public int getGroupFileCount(int var1) { @@ -440,18 +433,18 @@ public int getGroupFileCount(int var1) { @ObfuscatedName("cs") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-92" + descriptor = "(I)I", + garbageValue = "1806746664" ) @Export("getGroupCount") public int getGroupCount() { return this.files.length; } - @ObfuscatedName("cx") + @ObfuscatedName("co") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "64500147" + descriptor = "(B)V", + garbageValue = "5" ) @Export("clearGroups") public void clearGroups() { @@ -461,10 +454,10 @@ public void clearGroups() { } - @ObfuscatedName("cr") + @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "1" + descriptor = "(II)V", + garbageValue = "2080028111" ) @Export("clearFilesGroup") public void clearFilesGroup(int var1) { @@ -474,13 +467,12 @@ public void clearFilesGroup(int var1) { } - @ObfuscatedName("cd") + @ObfuscatedName("cn") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "68" + garbageValue = "6" ) - @Export("clearFiles") - public void clearFiles() { + public void method1943() { for (int var1 = 0; var1 < this.files.length; ++var1) { if (this.files[var1] != null) { for (int var2 = 0; var2 < this.files[var1].length; ++var2) { @@ -491,10 +483,10 @@ public void clearFiles() { } - @ObfuscatedName("ce") + @ObfuscatedName("cr") @ObfuscatedSignature( descriptor = "(I[IB)Z", - garbageValue = "-93" + garbageValue = "19" ) @Export("buildFiles") boolean buildFiles(int var1, int[] var2) { @@ -516,27 +508,26 @@ boolean buildFiles(int var1, int[] var2) { if (var6) { return true; } else { - byte[] var21; + byte[] var18; if (var2 != null && (var2[0] != 0 || var2[1] != 0 || var2[2] != 0 || var2[3] != 0)) { - var21 = class126.method699(this.groups[var1], true); - Buffer var8 = new Buffer(var21); + var18 = class128.method694(this.groups[var1], true); + Buffer var8 = new Buffer(var18); var8.xteaDecrypt(var2, 5, var8.array.length); } else { - var21 = class126.method699(this.groups[var1], false); + var18 = class128.method694(this.groups[var1], false); } - byte[] var25 = class53.decompressBytes(var21); + byte[] var20 = class30.decompressBytes(var18); if (this.releaseGroups) { this.groups[var1] = null; } - int var10; if (var3 > 1) { - int var9 = var25.length; + int var9 = var20.length; --var9; - var10 = var25[var9] & 255; - var9 -= var10 * var3 * 4; - Buffer var11 = new Buffer(var25); + int var10 = var20[var9] & 255; + var9 -= var3 * var10 * 4; + Buffer var11 = new Buffer(var20); int[] var12 = new int[var3]; var11.offset = var9; @@ -551,23 +542,22 @@ boolean buildFiles(int var1, int[] var2) { } } - byte[][] var23 = new byte[var3][]; + byte[][] var19 = new byte[var3][]; for (var14 = 0; var14 < var3; ++var14) { - var23[var14] = new byte[var12[var14]]; + var19[var14] = new byte[var12[var14]]; var12[var14] = 0; } var11.offset = var9; var14 = 0; - int var17; for (var15 = 0; var15 < var10; ++var15) { int var16 = 0; - for (var17 = 0; var17 < var3; ++var17) { + for (int var17 = 0; var17 < var3; ++var17) { var16 += var11.readInt(); - System.arraycopy(var25, var14, var23[var17], var12[var17], var16); + System.arraycopy(var20, var14, var19[var17], var12[var17], var16); var12[var17] += var16; var14 += var16; } @@ -575,40 +565,15 @@ boolean buildFiles(int var1, int[] var2) { for (var15 = 0; var15 < var3; ++var15) { if (!this.shallowFiles) { - var17 = var4[var15]; - byte[] var19 = var23[var15]; - Object var18; - if (var19 == null) { - var18 = null; - } else if (var19.length > 136) { - DirectByteArrayCopier var20 = new DirectByteArrayCopier(); - var20.set(var19); - var18 = var20; - } else { - var18 = var19; - } - - var5[var17] = var18; + var5[var4[var15]] = VarcInt.method899(var19[var15], false); } else { - var5[var4[var15]] = var23[var15]; + var5[var4[var15]] = var19[var15]; } } } else if (!this.shallowFiles) { - var10 = var4[0]; - Object var26; - if (var25 == null) { - var26 = null; - } else if (var25.length > 136) { - DirectByteArrayCopier var27 = new DirectByteArrayCopier(); - var27.set(var25); - var26 = var27; - } else { - var26 = var25; - } - - var5[var10] = var26; + var5[var4[0]] = VarcInt.method899(var20, false); } else { - var5[var4[0]] = var25; + var5[var4[0]] = var20; } return true; @@ -616,344 +581,109 @@ boolean buildFiles(int var1, int[] var2) { } } - @ObfuscatedName("cq") + @ObfuscatedName("cj") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-1972103558" + garbageValue = "1919401274" ) @Export("getGroupId") public int getGroupId(String var1) { var1 = var1.toLowerCase(); - return this.groupNameHashTable.get(WorldMapElement.hashString(var1)); + return this.groupNameHashTable.get(class150.hashString(var1)); } - @ObfuscatedName("cp") + @ObfuscatedName("ca") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)I", - garbageValue = "22201919" + garbageValue = "-34343914" ) @Export("getFileId") public int getFileId(int var1, String var2) { var2 = var2.toLowerCase(); - return this.fileNameHashTables[var1].get(WorldMapElement.hashString(var2)); + return this.fileNameHashTables[var1].get(class150.hashString(var2)); } - @ObfuscatedName("cv") + @ObfuscatedName("cc") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;I)Z", - garbageValue = "978478615" + descriptor = "(Ljava/lang/String;Ljava/lang/String;S)Z", + garbageValue = "245" ) @Export("isValidFileName") public boolean isValidFileName(String var1, String var2) { var1 = var1.toLowerCase(); var2 = var2.toLowerCase(); - int var3 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); + int var3 = this.groupNameHashTable.get(class150.hashString(var1)); if (var3 < 0) { return false; } else { - int var4 = this.fileNameHashTables[var3].get(WorldMapElement.hashString(var2)); + int var4 = this.fileNameHashTables[var3].get(class150.hashString(var2)); return var4 >= 0; } } - @ObfuscatedName("co") + @ObfuscatedName("cu") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Ljava/lang/String;I)[B", - garbageValue = "1446262093" + garbageValue = "1936244729" ) @Export("takeFileByNames") public byte[] takeFileByNames(String var1, String var2) { var1 = var1.toLowerCase(); var2 = var2.toLowerCase(); - int var3 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); - int var4 = this.fileNameHashTables[var3].get(WorldMapElement.hashString(var2)); + int var3 = this.groupNameHashTable.get(class150.hashString(var1)); + int var4 = this.fileNameHashTables[var3].get(class150.hashString(var2)); return this.takeFile(var3, var4); } - @ObfuscatedName("cl") + @ObfuscatedName("ch") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;I)Z", - garbageValue = "-254123457" + descriptor = "(Ljava/lang/String;Ljava/lang/String;B)Z", + garbageValue = "100" ) @Export("tryLoadFileByNames") public boolean tryLoadFileByNames(String var1, String var2) { var1 = var1.toLowerCase(); var2 = var2.toLowerCase(); - int var3 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); - int var4 = this.fileNameHashTables[var3].get(WorldMapElement.hashString(var2)); + int var3 = this.groupNameHashTable.get(class150.hashString(var1)); + int var4 = this.fileNameHashTables[var3].get(class150.hashString(var2)); return this.tryLoadFile(var3, var4); } - @ObfuscatedName("cu") + @ObfuscatedName("cb") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Z", - garbageValue = "64" + descriptor = "(Ljava/lang/String;I)Z", + garbageValue = "-1281128467" ) @Export("tryLoadGroupByName") public boolean tryLoadGroupByName(String var1) { var1 = var1.toLowerCase(); - int var2 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); + int var2 = this.groupNameHashTable.get(class150.hashString(var1)); return this.tryLoadGroup(var2); } - @ObfuscatedName("ch") + @ObfuscatedName("cz") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-2037127897" + garbageValue = "-1287445108" ) @Export("loadRegionFromName") public void loadRegionFromName(String var1) { var1 = var1.toLowerCase(); - int var2 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); + int var2 = this.groupNameHashTable.get(class150.hashString(var1)); if (var2 >= 0) { this.loadRegionFromGroup(var2); } } - @ObfuscatedName("ci") + @ObfuscatedName("cy") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-1703515273" + garbageValue = "-1550662505" ) @Export("groupLoadPercentByName") public int groupLoadPercentByName(String var1) { var1 = var1.toLowerCase(); - int var2 = this.groupNameHashTable.get(WorldMapElement.hashString(var1)); + int var2 = this.groupNameHashTable.get(class150.hashString(var1)); return this.groupLoadPercent(var2); } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)Lhh;", - garbageValue = "-2101462016" - ) - @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 = class13.InvDefinition_archive.takeFile(5, var0); - var1 = new InvDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - InvDefinition.InvDefinition_cached.put(var1, (long)var0); - return var1; - } - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Lto;II)V", - garbageValue = "-312425420" - ) - @Export("readPlayerUpdate") - static void readPlayerUpdate(PacketBuffer var0, int var1) { - boolean var2 = var0.readBits(1) == 1; - if (var2) { - Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; - } - - int var3 = var0.readBits(2); - Player var4 = Client.players[var1]; - if (var3 == 0) { - if (var2) { - var4.hasMovementPending = false; - } else if (Client.localPlayerIndex == var1) { - throw new RuntimeException(); - } else { - Players.Players_regions[var1] = (var4.plane << 28) + (class47.baseY + var4.pathY[0] >> 13) + (UrlRequester.baseX + var4.pathX[0] >> 13 << 14); - if (var4.movingOrientation != -1) { - Players.Players_orientations[var1] = var4.movingOrientation; - } else { - Players.Players_orientations[var1] = var4.orientation; - } - - Players.Players_targetIndices[var1] = var4.targetIndex; - Client.players[var1] = null; - if (var0.readBits(1) != 0) { - KitDefinition.updateExternalPlayer(var0, var1); - } - - } - } else { - int var5; - int var6; - int var7; - if (var3 == 1) { - var5 = var0.readBits(3); - var6 = var4.pathX[0]; - var7 = var4.pathY[0]; - if (var5 == 0) { - --var6; - --var7; - } else if (var5 == 1) { - --var7; - } else if (var5 == 2) { - ++var6; - --var7; - } else if (var5 == 3) { - --var6; - } else if (var5 == 4) { - ++var6; - } else if (var5 == 5) { - --var6; - ++var7; - } else if (var5 == 6) { - ++var7; - } else if (var5 == 7) { - ++var6; - ++var7; - } - - if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { - if (var2) { - var4.hasMovementPending = true; - var4.tileX = var6; - var4.tileY = var7; - } else { - var4.hasMovementPending = false; - var4.move(var6, var7, Players.playerMovementSpeeds[var1]); - } - } else { - var4.resetPath(var6, var7); - var4.hasMovementPending = false; - } - - } else if (var3 == 2) { - var5 = var0.readBits(4); - var6 = var4.pathX[0]; - var7 = var4.pathY[0]; - if (var5 == 0) { - var6 -= 2; - var7 -= 2; - } else if (var5 == 1) { - --var6; - var7 -= 2; - } else if (var5 == 2) { - var7 -= 2; - } else if (var5 == 3) { - ++var6; - var7 -= 2; - } else if (var5 == 4) { - var6 += 2; - var7 -= 2; - } else if (var5 == 5) { - var6 -= 2; - --var7; - } else if (var5 == 6) { - var6 += 2; - --var7; - } else if (var5 == 7) { - var6 -= 2; - } else if (var5 == 8) { - var6 += 2; - } else if (var5 == 9) { - var6 -= 2; - ++var7; - } else if (var5 == 10) { - var6 += 2; - ++var7; - } else if (var5 == 11) { - var6 -= 2; - var7 += 2; - } else if (var5 == 12) { - --var6; - var7 += 2; - } else if (var5 == 13) { - var7 += 2; - } else if (var5 == 14) { - ++var6; - var7 += 2; - } else if (var5 == 15) { - var6 += 2; - var7 += 2; - } - - if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { - if (var2) { - var4.hasMovementPending = true; - var4.tileX = var6; - var4.tileY = var7; - } else { - var4.hasMovementPending = false; - var4.move(var6, var7, Players.playerMovementSpeeds[var1]); - } - } else { - var4.resetPath(var6, var7); - var4.hasMovementPending = false; - } - - } else { - var5 = var0.readBits(1); - int var8; - int var9; - int var10; - int var11; - if (var5 == 0) { - var6 = var0.readBits(12); - var7 = var6 >> 10; - var8 = var6 >> 5 & 31; - if (var8 > 15) { - var8 -= 32; - } - - var9 = var6 & 31; - if (var9 > 15) { - var9 -= 32; - } - - var10 = var8 + var4.pathX[0]; - var11 = var9 + var4.pathY[0]; - if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { - if (var2) { - var4.hasMovementPending = true; - var4.tileX = var10; - var4.tileY = var11; - } else { - var4.hasMovementPending = false; - var4.move(var10, var11, Players.playerMovementSpeeds[var1]); - } - } else { - var4.resetPath(var10, var11); - var4.hasMovementPending = false; - } - - var4.plane = (byte)(var7 + var4.plane & 3); - if (Client.localPlayerIndex == var1) { - HealthBar.Client_plane = var4.plane; - } - - } else { - var6 = var0.readBits(30); - var7 = var6 >> 28; - var8 = var6 >> 14 & 16383; - var9 = var6 & 16383; - var10 = (var8 + UrlRequester.baseX + var4.pathX[0] & 16383) - UrlRequester.baseX; - var11 = (var9 + class47.baseY + var4.pathY[0] & 16383) - class47.baseY; - if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { - if (var2) { - var4.hasMovementPending = true; - var4.tileX = var10; - var4.tileY = var11; - } else { - var4.hasMovementPending = false; - var4.move(var10, var11, Players.playerMovementSpeeds[var1]); - } - } else { - var4.resetPath(var10, var11); - var4.hasMovementPending = false; - } - - var4.plane = (byte)(var7 + var4.plane & 3); - if (Client.localPlayerIndex == var1) { - HealthBar.Client_plane = var4.plane; - } - - } - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractByteArrayCopier.java b/osrs/src/main/java/AbstractByteArrayCopier.java index e23a753d3..a9efaeca3 100644 --- a/osrs/src/main/java/AbstractByteArrayCopier.java +++ b/osrs/src/main/java/AbstractByteArrayCopier.java @@ -3,36 +3,41 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ma") +@ObfuscatedName("np") @Implements("AbstractByteArrayCopier") public abstract class AbstractByteArrayCopier { + @ObfuscatedName("kn") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("headIconPrayerSprites") + static SpritePixels[] headIconPrayerSprites; + AbstractByteArrayCopier() { } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-962589916" + descriptor = "(B)[B", + garbageValue = "5" ) @Export("get") abstract byte[] get(); @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "1426025249" + descriptor = "([BB)V", + garbageValue = "67" ) @Export("set") - public abstract void set(byte[] var1); + abstract void set(byte[] var1); - @ObfuscatedName("ao") + @ObfuscatedName("jn") @ObfuscatedSignature( - descriptor = "(IIB)Lco;", - garbageValue = "64" + descriptor = "(I)Z", + garbageValue = "-880488507" ) - @Export("Messages_getByChannelAndID") - static Message Messages_getByChannelAndID(int var0, int var1) { - ChatChannel var2 = (ChatChannel)Messages.Messages_channels.get(var0); - return var2.getMessage(var1); + static boolean method1879() { + return (Client.drawPlayerNames & 1) != 0; } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractFont.java b/osrs/src/main/java/AbstractFont.java index 2c4941769..f9db45874 100644 --- a/osrs/src/main/java/AbstractFont.java +++ b/osrs/src/main/java/AbstractFont.java @@ -5,76 +5,76 @@ import java.util.Random; -@ObfuscatedName("pk") +@ObfuscatedName("pa") @Implements("AbstractFont") public abstract class AbstractFont extends Rasterizer2D { - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "[Lup;" ) @Export("AbstractFont_modIconSprites") public static IndexedSprite[] AbstractFont_modIconSprites; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("AbstractFont_strike") static int AbstractFont_strike; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("AbstractFont_underline") static int AbstractFont_underline; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("AbstractFont_previousShadow") static int AbstractFont_previousShadow; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("AbstractFont_shadow") static int AbstractFont_shadow; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("AbstractFont_previousColor") static int AbstractFont_previousColor; @ObfuscatedName("am") @Export("AbstractFont_color") static int AbstractFont_color; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("AbstractFont_alpha") static int AbstractFont_alpha; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("AbstractFont_justificationTotal") static int AbstractFont_justificationTotal; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("AbstractFont_justificationCurrent") static int AbstractFont_justificationCurrent; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("AbstractFont_random") static Random AbstractFont_random; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("AbstractFont_lines") static String[] AbstractFont_lines; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("pixels") byte[][] pixels; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("advances") int[] advances; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("widths") int[] widths; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("heights") int[] heights; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("leftBearings") int[] leftBearings; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("topBearings") int[] topBearings; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("ascent") public int ascent; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("maxAscent") public int maxAscent; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("maxDescent") public int maxDescent; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("kerning") byte[] kerning; @@ -124,15 +124,15 @@ public abstract class AbstractFont extends Rasterizer2D { this.readMetrics(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("drawGlyph") abstract void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int var6); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("drawGlyphAlpha") abstract void drawGlyphAlpha(byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7); - @ObfuscatedName("aa") + @ObfuscatedName("ab") @Export("readMetrics") void readMetrics(byte[] var1) { this.advances = new int[256]; @@ -194,7 +194,7 @@ void readMetrics(byte[] var1) { if (var13 != 32 && var13 != 160) { for (var8 = 0; var8 < 256; ++var8) { if (var8 != 32 && var8 != 160) { - this.kerning[var8 + (var13 << 8)] = (byte)method2080(var11, var12, var4, this.advances, var10, var13, var8); + this.kerning[var8 + (var13 << 8)] = (byte)method2098(var11, var12, var4, this.advances, var10, var13, var8); } } } @@ -205,17 +205,17 @@ void readMetrics(byte[] var1) { } - @ObfuscatedName("ad") + @ObfuscatedName("aa") @Export("charWidth") public int charWidth(char var1) { if (var1 == 160) { var1 = ' '; } - return this.advances[class348.charToByteCp1252(var1) & 255]; + return this.advances[class137.charToByteCp1252(var1) & 255]; } - @ObfuscatedName("aq") + @ObfuscatedName("ac") @Export("stringWidth") public int stringWidth(String var1) { if (var1 == null) { @@ -239,7 +239,7 @@ public int stringWidth(String var1) { if (!var7.equals("gt")) { if (var7.startsWith("img=")) { try { - int var8 = HealthBarUpdate.method524(var7.substring(4)); + int var8 = Huffman.method1888(var7.substring(4)); var4 += AbstractFont_modIconSprites[var8].width; var3 = -1; } catch (Exception var10) { @@ -257,7 +257,7 @@ public int stringWidth(String var1) { } if (var2 == -1) { - var4 += this.advances[(char)(class348.charToByteCp1252(var6) & 255)]; + var4 += this.advances[(char)(class137.charToByteCp1252(var6) & 255)]; if (this.kerning != null && var3 != -1) { var4 += this.kerning[var6 + (var3 << 8)]; } @@ -322,7 +322,7 @@ public int breakLines(String var1, int[] var2, String[] var3) { var11 = '>'; } else if (var16.startsWith("img=")) { try { - int var17 = HealthBarUpdate.method524(var16.substring(4)); + int var17 = Huffman.method1888(var16.substring(4)); var4 += AbstractFont_modIconSprites[var17].width; var11 = 0; } catch (Exception var20) { @@ -376,7 +376,7 @@ public int breakLines(String var1, int[] var2, String[] var3) { } } - @ObfuscatedName("an") + @ObfuscatedName("az") @Export("lineWidth") public int lineWidth(String var1, int var2) { int var3 = this.breakLines(var1, new int[]{var2}, AbstractFont_lines); @@ -392,17 +392,17 @@ public int lineWidth(String var1, int var2) { return var4; } - @ObfuscatedName("ar") + @ObfuscatedName("ap") @Export("lineCount") public int lineCount(String var1, int var2) { return this.breakLines(var1, new int[]{var2}, AbstractFont_lines); } - @ObfuscatedName("ag") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IILjava/lang/String;II)Lrb;" + descriptor = "(IILjava/lang/String;II)Lrv;" ) - public Bounds method2087(int var1, int var2, String var3, int var4, int var5) { + public Bounds method2105(int var1, int var2, String var3, int var4, int var5) { if (var3 != null && var3.length() >= var2 + var1) { int var6 = var4 - this.stringWidth(var3) / 2; var6 += this.stringWidth(var3.substring(0, var1)); @@ -415,7 +415,7 @@ public Bounds method2087(int var1, int var2, String var3, int var4, int var5) { } } - @ObfuscatedName("am") + @ObfuscatedName("as") @Export("draw") public void draw(String var1, int var2, int var3, int var4, int var5) { if (var1 != null) { @@ -424,7 +424,7 @@ public void draw(String var1, int var2, int var3, int var4, int var5) { } } - @ObfuscatedName("ax") + @ObfuscatedName("ay") @Export("drawAlpha") public void drawAlpha(String var1, int var2, int var3, int var4, int var5, int var6) { if (var1 != null) { @@ -434,7 +434,7 @@ public void drawAlpha(String var1, int var2, int var3, int var4, int var5, int v } } - @ObfuscatedName("ah") + @ObfuscatedName("ak") @Export("drawRightAligned") public void drawRightAligned(String var1, int var2, int var3, int var4, int var5) { if (var1 != null) { @@ -443,7 +443,7 @@ public void drawRightAligned(String var1, int var2, int var3, int var4, int var5 } } - @ObfuscatedName("as") + @ObfuscatedName("aj") @Export("drawCentered") public void drawCentered(String var1, int var2, int var3, int var4, int var5) { if (var1 != null) { @@ -452,14 +452,14 @@ public void drawCentered(String var1, int var2, int var3, int var4, int var5) { } } - @ObfuscatedName("ay") + @ObfuscatedName("am") @Export("drawLines") public int drawLines(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { - return this.method2093(var1, var2, var3, var4, var5, var6, var7, 256, var8, var9, var10); + return this.method2111(var1, var2, var3, var4, var5, var6, var7, 256, var8, var9, var10); } - @ObfuscatedName("aj") - public int method2093(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { + @ObfuscatedName("aq") + public int method2111(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { if (var1 == null) { return 0; } else { @@ -523,24 +523,24 @@ public int method2093(String var1, int var2, int var3, int var4, int var5, int v } } - @ObfuscatedName("av") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Lpl;IIIII)Lss;" + descriptor = "(Lpd;IIIII)Lti;" ) - public class485 method2094(class398 var1, int var2, int var3, int var4, int var5, int var6) { - if (!var1.method2115()) { + public class497 method2112(class410 var1, int var2, int var3, int var4, int var5, int var6) { + if (!var1.method2133()) { this.reset(var4, var5); var3 -= this.ascent; - for (int var7 = 0; var7 < var1.method2116(); ++var7) { - class396 var8 = var1.method2120(var7); - if (var6 != -1 && var8.field3682 > var6) { - return new class485(var8.field3681, var8.field3682); + for (int var7 = 0; var7 < var1.method2134(); ++var7) { + class408 var8 = var1.method2138(var7); + if (var6 != -1 && var8.field3718 > var6) { + return new class497(var8.field3717, var8.field3718); } - char var9 = var8.field3680; + char var9 = var8.field3716; if (var9 != '\n') { - if (var1.method2114(var7)) { + if (var1.method2132(var7)) { var9 = '*'; } @@ -549,8 +549,8 @@ public class485 method2094(class398 var1, int var2, int var3, int var4, int var5 var9 = ' '; } - int var10 = var2 + var8.field3681; - int var11 = var3 + var8.field3682; + int var10 = var2 + var8.field3717; + int var11 = var3 + var8.field3718; int var12 = this.widths[var9]; int var13 = this.heights[var9]; if (AbstractFont_shadow != -1) { @@ -563,16 +563,16 @@ public class485 method2094(class398 var1, int var2, int var3, int var4, int var5 } } - return var1.method2119(); + return var1.method2137(); } @ObfuscatedName("aw") - public void method2095(String var1, int var2, int var3, int var4, int var5, int var6, int[] var7) { + public void method2113(String var1, int var2, int var3, int var4, int var5, int var6, int[] var7) { if (var1 != null) { this.reset(var4, var5); int[] var8 = null; if (var7 != null) { - var8 = this.method2100(var7, var1.length()); + var8 = this.method2118(var7, var1.length()); } int[] var9 = new int[var1.length()]; @@ -581,17 +581,17 @@ public void method2095(String var1, int var2, int var3, int var4, int var5, int var9[var10] = (int)(Math.sin((double)var10 / 2.0D + (double)var6 / 5.0D) * 5.0D); } - this.method2106(var1, var2 - this.stringWidth(var1) / 2, var3, var8, (int[])null, var9); + this.method2124(var1, var2 - this.stringWidth(var1) / 2, var3, var8, (int[])null, var9); } } - @ObfuscatedName("ak") - public void method2096(String var1, int var2, int var3, int var4, int var5, int var6, int[] var7) { + @ObfuscatedName("ae") + public void method2114(String var1, int var2, int var3, int var4, int var5, int var6, int[] var7) { if (var1 != null) { this.reset(var4, var5); int[] var8 = null; if (var7 != null) { - var8 = this.method2100(var7, var1.length()); + var8 = this.method2118(var7, var1.length()); } int[] var9 = new int[var1.length()]; @@ -602,17 +602,17 @@ public void method2096(String var1, int var2, int var3, int var4, int var5, int var10[var11] = (int)(Math.sin((double)var11 / 3.0D + (double)var6 / 5.0D) * 5.0D); } - this.method2106(var1, var2 - this.stringWidth(var1) / 2, var3, var8, var9, var10); + this.method2124(var1, var2 - this.stringWidth(var1) / 2, var3, var8, var9, var10); } } - @ObfuscatedName("bh") - public void method2097(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int[] var8) { + @ObfuscatedName("an") + public void method2115(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int[] var8) { if (var1 != null) { this.reset(var4, var5); int[] var9 = null; if (var8 != null) { - var9 = this.method2100(var8, var1.length()); + var9 = this.method2118(var8, var1.length()); } double var10 = 7.0D - (double)var7 / 8.0D; @@ -626,38 +626,38 @@ public void method2097(String var1, int var2, int var3, int var4, int var5, int var12[var13] = (int)(Math.sin((double)var13 / 1.5D + (double)var6 / 1.0D) * var10); } - this.method2106(var1, var2 - this.stringWidth(var1) / 2, var3, var9, (int[])null, var12); + this.method2124(var1, var2 - this.stringWidth(var1) / 2, var3, var9, (int[])null, var12); } } - @ObfuscatedName("bj") - public void method2098(String var1, int var2, int var3, int var4, int var5, int[] var6) { + @ObfuscatedName("ag") + public void method2116(String var1, int var2, int var3, int var4, int var5, int[] var6) { if (var1 != null) { this.reset(var4, var5); int[] var7 = null; if (var6 != null) { - var7 = this.method2100(var6, var1.length()); + var7 = this.method2118(var6, var1.length()); } - this.method2106(var1, var2 - this.stringWidth(var1) / 2, var3, var7, (int[])null, (int[])null); + this.method2124(var1, var2 - this.stringWidth(var1) / 2, var3, var7, (int[])null, (int[])null); } } - @ObfuscatedName("bk") - public void method2099(String var1, int var2, int var3, int var4, int var5, int[] var6) { + @ObfuscatedName("ad") + public void method2117(String var1, int var2, int var3, int var4, int var5, int[] var6) { if (var1 != null) { this.reset(var4, var5); int[] var7 = null; if (var6 != null) { - var7 = this.method2100(var6, var1.length()); + var7 = this.method2118(var6, var1.length()); } - this.method2106(var1, var2, var3, var7, (int[])null, (int[])null); + this.method2124(var1, var2, var3, var7, (int[])null, (int[])null); } } - @ObfuscatedName("bv") - int[] method2100(int[] var1, int var2) { + @ObfuscatedName("af") + int[] method2118(int[] var1, int var2) { if (var2 == 0) { return null; } else { @@ -672,7 +672,7 @@ int[] method2100(int[] var1, int var2) { } } - @ObfuscatedName("bt") + @ObfuscatedName("be") @Export("drawRandomAlphaAndSpacing") public void drawRandomAlphaAndSpacing(String var1, int var2, int var3, int var4, int var5, int var6) { if (var1 != null) { @@ -689,7 +689,7 @@ public void drawRandomAlphaAndSpacing(String var1, int var2, int var3, int var4, } } - this.method2106(var1, var2, var3, (int[])null, var7, (int[])null); + this.method2124(var1, var2, var3, (int[])null, var7, (int[])null); } } @@ -707,7 +707,7 @@ void reset(int var1, int var2) { AbstractFont_justificationCurrent = 0; } - @ObfuscatedName("by") + @ObfuscatedName("bl") @Export("decodeTag") void decodeTag(String var1) { try { @@ -715,13 +715,13 @@ void decodeTag(String var1) { String var3; if (var1.startsWith("col=")) { var3 = var1.substring(4); - var2 = DevicePcmPlayerProvider.method75(var3, 16, true); + var2 = NPC.method580(var3, 16, true); AbstractFont_color = var2; } else if (var1.equals("/col")) { AbstractFont_color = AbstractFont_previousColor; } else if (var1.startsWith("str=")) { var3 = var1.substring(4); - var2 = DevicePcmPlayerProvider.method75(var3, 16, true); + var2 = NPC.method580(var3, 16, true); AbstractFont_strike = var2; } else if (var1.equals("str")) { AbstractFont_strike = 8388608; @@ -729,7 +729,7 @@ void decodeTag(String var1) { AbstractFont_strike = -1; } else if (var1.startsWith("u=")) { var3 = var1.substring(2); - var2 = DevicePcmPlayerProvider.method75(var3, 16, true); + var2 = NPC.method580(var3, 16, true); AbstractFont_underline = var2; } else if (var1.equals("u")) { AbstractFont_underline = 0; @@ -737,7 +737,7 @@ void decodeTag(String var1) { AbstractFont_underline = -1; } else if (var1.startsWith("shad=")) { var3 = var1.substring(5); - var2 = DevicePcmPlayerProvider.method75(var3, 16, true); + var2 = NPC.method580(var3, 16, true); AbstractFont_shadow = var2; } else if (var1.equals("shad")) { AbstractFont_shadow = 0; @@ -751,7 +751,7 @@ void decodeTag(String var1) { } - @ObfuscatedName("bs") + @ObfuscatedName("bi") @Export("calculateLineJustification") void calculateLineJustification(String var1, int var2) { int var3 = 0; @@ -774,7 +774,7 @@ void calculateLineJustification(String var1, int var2) { } - @ObfuscatedName("bm") + @ObfuscatedName("bv") @Export("draw0") void draw0(String var1, int var2, int var3) { var3 -= this.ascent; @@ -783,7 +783,7 @@ void draw0(String var1, int var2, int var3) { for (int var6 = 0; var6 < var1.length(); ++var6) { if (var1.charAt(var6) != 0) { - char var7 = (char)(class348.charToByteCp1252(var1.charAt(var6)) & 255); + char var7 = (char)(class137.charToByteCp1252(var1.charAt(var6)) & 255); if (var7 == '<') { var4 = var6; } else { @@ -797,7 +797,7 @@ void draw0(String var1, int var2, int var3) { if (!var8.equals("gt")) { if (var8.startsWith("img=")) { try { - var9 = HealthBarUpdate.method524(var8.substring(4)); + var9 = Huffman.method1888(var8.substring(4)); IndexedSprite var10 = AbstractFont_modIconSprites[var9]; var10.drawAt(var2, var3 + this.ascent - var10.height); var2 += var10.width; @@ -864,7 +864,7 @@ void draw0(String var1, int var2, int var3) { } @ObfuscatedName("bf") - void method2106(String var1, int var2, int var3, int[] var4, int[] var5, int[] var6) { + void method2124(String var1, int var2, int var3, int[] var4, int[] var5, int[] var6) { var3 -= this.ascent; int var7 = -1; int var8 = -1; @@ -872,7 +872,7 @@ void method2106(String var1, int var2, int var3, int[] var4, int[] var5, int[] v for (int var10 = 0; var10 < var1.length(); ++var10) { if (var1.charAt(var10) != 0) { - char var11 = (char)(class348.charToByteCp1252(var1.charAt(var10)) & 255); + char var11 = (char)(class137.charToByteCp1252(var1.charAt(var10)) & 255); if (var11 == '<') { var7 = var10; } else { @@ -901,7 +901,7 @@ void method2106(String var1, int var2, int var3, int[] var4, int[] var5, int[] v } ++var9; - var15 = HealthBarUpdate.method524(var12.substring(4)); + var15 = Huffman.method1888(var12.substring(4)); IndexedSprite var16 = AbstractFont_modIconSprites[var15]; var16.drawAt(var13 + var2, var14 + (var3 + this.ascent - var16.height)); var2 += var16.width; @@ -987,8 +987,8 @@ void method2106(String var1, int var2, int var3, int[] var4, int[] var5, int[] v } - @ObfuscatedName("af") - static int method2080(byte[][] var0, byte[][] var1, int[] var2, int[] var3, int[] var4, int var5, int var6) { + @ObfuscatedName("au") + static int method2098(byte[][] var0, byte[][] var1, int[] var2, int[] var3, int[] var4, int var5, int var6) { int var7 = var2[var5]; int var8 = var7 + var4[var5]; int var9 = var2[var6]; @@ -1023,7 +1023,7 @@ static int method2080(byte[][] var0, byte[][] var1, int[] var2, int[] var3, int[ return -var13; } - @ObfuscatedName("ab") + @ObfuscatedName("av") @Export("escapeBrackets") public static String escapeBrackets(String var0) { int var1 = var0.length(); @@ -1052,7 +1052,7 @@ public static String escapeBrackets(String var0) { return var6.toString(); } - @ObfuscatedName("bq") + @ObfuscatedName("bg") @Export("AbstractFont_drawGlyph") static void AbstractFont_drawGlyph(byte[] var0, int var1, int var2, int var3, int var4, int var5) { int var6 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; @@ -1142,7 +1142,7 @@ static void AbstractFont_placeGlyph(int[] var0, byte[] var1, int var2, int var3, } - @ObfuscatedName("bl") + @ObfuscatedName("bm") @Export("AbstractFont_drawGlyphAlpha") static void AbstractFont_drawGlyphAlpha(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6) { int var7 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; diff --git a/osrs/src/main/java/AbstractRasterProvider.java b/osrs/src/main/java/AbstractRasterProvider.java index b3862034f..ab3b8636e 100644 --- a/osrs/src/main/java/AbstractRasterProvider.java +++ b/osrs/src/main/java/AbstractRasterProvider.java @@ -3,56 +3,56 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("uq") +@ObfuscatedName("uu") @Implements("AbstractRasterProvider") public abstract class AbstractRasterProvider { - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("pixels") public int[] pixels; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("width") public int width; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("height") public int height; - @ObfuscatedName("ai") - protected float[] field4225; + @ObfuscatedName("au") + protected float[] field4253; protected AbstractRasterProvider() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(IIB)V", - garbageValue = "-46" + garbageValue = "-24" ) @Export("drawFull") public abstract void drawFull(int var1, int var2); - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "1065945289" + descriptor = "(IIIIB)V", + garbageValue = "1" ) @Export("draw") public abstract void draw(int var1, int var2, int var3, int var4); - @ObfuscatedName("as") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-109" + garbageValue = "46" ) @Export("apply") public final void apply() { - Rasterizer2D.method2620(this.pixels, this.width, this.height, this.field4225); + Rasterizer2D.method2637(this.pixels, this.width, this.height, this.field4253); } - @ObfuscatedName("ay") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "-37" + descriptor = "(ZI)V", + garbageValue = "1918983678" ) - public final void method2646(boolean var1) { - this.field4225 = var1 ? new float[this.height * this.width + 1] : null; + public final void method2663(boolean var1) { + this.field4253 = var1 ? new float[this.width * this.height + 1] : null; } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractSocket.java b/osrs/src/main/java/AbstractSocket.java index ed862a179..cde676c63 100644 --- a/osrs/src/main/java/AbstractSocket.java +++ b/osrs/src/main/java/AbstractSocket.java @@ -4,32 +4,29 @@ import net.runelite.mapping.ObfuscatedSignature; import java.io.IOException; -import java.util.Iterator; -@ObfuscatedName("qi") +@ObfuscatedName("ro") @Implements("AbstractSocket") public abstract class AbstractSocket { - @ObfuscatedName("ii") - @ObfuscatedSignature( - descriptor = "Lqi;" - ) - static AbstractSocket field3819; + @ObfuscatedName("gg") + @Export("js5Port") + static int js5Port; AbstractSocket() { } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-67" + descriptor = "(II)Z", + garbageValue = "278911957" ) @Export("isAvailable") public abstract boolean isAvailable(int var1) throws IOException; - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1947351494" + garbageValue = "1133909296" ) @Export("available") public abstract int available() throws IOException; @@ -37,62 +34,32 @@ public abstract class AbstractSocket { @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "969166986" + garbageValue = "-1251290768" ) @Export("readUnsignedByte") public abstract int readUnsignedByte() throws IOException; - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "([BIIS)I", - garbageValue = "206" + descriptor = "([BIIB)I", + garbageValue = "-54" ) @Export("read") public abstract int read(byte[] var1, int var2, int var3) throws IOException; - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1371855899" + garbageValue = "-1734190943" ) @Export("write") public abstract void write(byte[] var1, int var2, int var3) throws IOException; - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1457160931" + garbageValue = "1195407219" ) @Export("close") public abstract void close(); - - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-148355488" - ) - @Export("stringCp1252NullTerminatedByteSize") - public static int stringCp1252NullTerminatedByteSize(String var0) { - return var0.length() + 1; - } - - @ObfuscatedName("nn") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-99692388" - ) - @Export("FriendSystem_invalidateIgnoreds") - static final void FriendSystem_invalidateIgnoreds() { - Iterator var0 = Messages.Messages_hashTable.iterator(); - - while (var0.hasNext()) { - Message var1 = (Message)var0.next(); - var1.clearIsFromIgnored(); - } - - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.invalidateIgnoreds(); - } - - } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractSound.java b/osrs/src/main/java/AbstractSound.java index 3bc0cb139..91e12a0f1 100644 --- a/osrs/src/main/java/AbstractSound.java +++ b/osrs/src/main/java/AbstractSound.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("cp") +@ObfuscatedName("cl") @Implements("AbstractSound") public abstract class AbstractSound extends Node { - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("position") int position; diff --git a/osrs/src/main/java/AbstractUserComparator.java b/osrs/src/main/java/AbstractUserComparator.java index bb0cc22ba..454359807 100644 --- a/osrs/src/main/java/AbstractUserComparator.java +++ b/osrs/src/main/java/AbstractUserComparator.java @@ -5,26 +5,20 @@ import java.util.Comparator; -@ObfuscatedName("qz") +@ObfuscatedName("rn") @Implements("AbstractUserComparator") public abstract class AbstractUserComparator implements Comparator { - @ObfuscatedName("tk") - @ObfuscatedSignature( - descriptor = "Lui;" - ) - @Export("sceneMinimapSprite") - static SpritePixels sceneMinimapSprite; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("nextComparator") Comparator nextComparator; protected AbstractUserComparator() { } - @ObfuscatedName("aa") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(Ljava/util/Comparator;I)V", - garbageValue = "-2074845369" + garbageValue = "1936813741" ) @Export("addComparator") final void addComparator(Comparator var1) { @@ -36,10 +30,10 @@ final void addComparator(Comparator var1) { } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Lqs;Lqs;I)I", - garbageValue = "1850684132" + descriptor = "(Lrf;Lrf;I)I", + garbageValue = "-94519432" ) @Export("compareUser") protected final int compareUser(User var1, User var2) { @@ -51,4 +45,13 @@ protected final int compareUser(User var1, User var2) { public boolean equals(Object var1) { return super.equals(var1); } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-50" + ) + static final void method2242(String var0) { + WorldMapArea.method1213("Please remove " + var0 + " from your ignore list first"); + } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractWorldMapData.java b/osrs/src/main/java/AbstractWorldMapData.java index 01d061942..64580de34 100644 --- a/osrs/src/main/java/AbstractWorldMapData.java +++ b/osrs/src/main/java/AbstractWorldMapData.java @@ -5,81 +5,84 @@ import java.util.LinkedList; -@ObfuscatedName("ke") +@ObfuscatedName("jm") @Implements("AbstractWorldMapData") public abstract class AbstractWorldMapData { - @ObfuscatedName("ac") - int field2429; - @ObfuscatedName("ai") - int field2432; - @ObfuscatedName("az") + @ObfuscatedName("uk") + @Export("cameraLookAtY") + static int cameraMoveToY; + @ObfuscatedName("ab") + int field2051; + @ObfuscatedName("au") + int field2055; + @ObfuscatedName("aa") @Export("regionX") int regionX; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("regionY") int regionY; - @ObfuscatedName("aa") - int field2428; - @ObfuscatedName("af") + @ObfuscatedName("al") + int field2053; + @ObfuscatedName("az") @Export("planes") int planes; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("groupId") int groupId; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("fileId") int fileId; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("floorUnderlayIds") short[][][] floorUnderlayIds; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("floorOverlayIds") short[][][] floorOverlayIds; - @ObfuscatedName("ar") - byte[][][] field2427; - @ObfuscatedName("ab") - byte[][][] field2426; - @ObfuscatedName("ag") + @ObfuscatedName("ay") + byte[][][] field2049; + @ObfuscatedName("ak") + byte[][][] field2048; + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "[[[[Lkn;" + descriptor = "[[[[Ljs;" ) @Export("decorations") WorldMapDecoration[][][][] decorations; @ObfuscatedName("am") - boolean field2424; - @ObfuscatedName("ax") - boolean field2425; + boolean field2046; + @ObfuscatedName("aq") + boolean field2047; AbstractWorldMapData() { this.groupId = -1; this.fileId = -1; new LinkedList(); - this.field2424 = false; - this.field2425 = false; + this.field2046 = false; + this.field2047 = false; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "2049371979" + descriptor = "(Luj;B)V", + garbageValue = "7" ) @Export("readGeography") abstract void readGeography(Buffer var1); - @ObfuscatedName("aw") + @ObfuscatedName("ae") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2138999943" + garbageValue = "153115175" ) @Export("isFullyLoaded") boolean isFullyLoaded() { - return this.field2424 && this.field2425; + return this.field2046 && this.field2047; } - @ObfuscatedName("ak") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-1524601998" + descriptor = "(Lol;I)V", + garbageValue = "816077843" ) @Export("loadGeography") void loadGeography(AbstractArchive var1) { @@ -87,53 +90,53 @@ void loadGeography(AbstractArchive var1) { byte[] var2 = var1.takeFile(this.groupId, this.fileId); if (var2 != null) { this.readGeography(new Buffer(var2)); - this.field2424 = true; - this.field2425 = true; + this.field2046 = true; + this.field2047 = true; } } } - @ObfuscatedName("bh") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1792319302" + garbageValue = "1929265244" ) @Export("reset") void reset() { this.floorUnderlayIds = null; this.floorOverlayIds = null; - this.field2427 = null; - this.field2426 = null; + this.field2049 = null; + this.field2048 = null; this.decorations = null; - this.field2424 = false; - this.field2425 = false; + this.field2046 = false; + this.field2047 = false; } - @ObfuscatedName("bj") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(IILtm;I)V", - garbageValue = "-938397050" + descriptor = "(IILuj;I)V", + garbageValue = "-2036497889" ) @Export("readTile") void readTile(int var1, int var2, Buffer var3) { int var4 = var3.readUnsignedByte(); if (var4 != 0) { if ((var4 & 1) != 0) { - this.method1522(var1, var2, var3, var4); + this.method1319(var1, var2, var3, var4); } else { - this.method1523(var1, var2, var3, var4); + this.method1320(var1, var2, var3, var4); } } } - @ObfuscatedName("bk") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(IILtm;IS)V", - garbageValue = "23970" + descriptor = "(IILuj;II)V", + garbageValue = "-388208328" ) - void method1522(int var1, int var2, Buffer var3, int var4) { + void method1319(int var1, int var2, Buffer var3, int var4) { boolean var5 = (var4 & 2) != 0; if (var5) { this.floorOverlayIds[0][var1][var2] = (short)var3.readUnsignedShort(); @@ -142,12 +145,12 @@ void method1522(int var1, int var2, Buffer var3, int var4) { this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedShort(); } - @ObfuscatedName("bv") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(IILtm;II)V", - garbageValue = "-835370941" + descriptor = "(IILuj;II)V", + garbageValue = "1227555705" ) - void method1523(int var1, int var2, Buffer var3, int var4) { + void method1320(int var1, int var2, Buffer var3, int var4) { int var5 = ((var4 & 24) >> 3) + 1; boolean var6 = (var4 & 2) != 0; boolean var7 = (var4 & 4) != 0; @@ -163,8 +166,8 @@ void method1523(int var1, int var2, Buffer var3, int var4) { if (var10 != 0) { this.floorOverlayIds[var9][var1][var2] = (short)var10; var11 = var3.readUnsignedByte(); - this.field2427[var9][var1][var2] = (byte)(var11 >> 2); - this.field2426[var9][var1][var2] = (byte)(var11 & 3); + this.field2049[var9][var1][var2] = (byte)(var11 >> 2); + this.field2048[var9][var1][var2] = (byte)(var11 & 3); } } } @@ -176,7 +179,7 @@ void method1523(int var1, int var2, Buffer var3, int var4) { WorldMapDecoration[] var14 = this.decorations[var8][var1][var2] = new WorldMapDecoration[var9]; for (var11 = 0; var11 < var9; ++var11) { - int var12 = var3.method2563(); + int var12 = var3.readNullableLargeSmart(); int var13 = var3.readUnsignedByte(); var14[var11] = new WorldMapDecoration(var12, var13 >> 2, var13 & 3); } @@ -186,41 +189,655 @@ void method1523(int var1, int var2, Buffer var3, int var4) { } - @ObfuscatedName("bt") + @ObfuscatedName("bd") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1240357684" + garbageValue = "908938497" ) @Export("getRegionX") int getRegionX() { return this.regionX; } - @ObfuscatedName("bd") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "65280" + descriptor = "(B)I", + garbageValue = "16" ) @Export("getRegionY") int getRegionY() { return this.regionY; } - @ObfuscatedName("au") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "(I)[Ldk;", - garbageValue = "-74962306" + descriptor = "(Lnn;II)V", + garbageValue = "1102490716" ) - static class90[] method1517() { - return new class90[]{class90.field889, class90.field892, class90.field888, class90.field893, class90.field891, class90.field890}; + public static void method1323(Widget var0, int var1) { + ItemComposition var2 = class214.ItemDefinition_get(var1); + var0.field3125.equipment[var2.maleModel] = var1 + 512; + if (var2.maleModel1 != -1) { + var0.field3125.equipment[var2.maleModel1] = 0; + } + + if (var2.maleModel2 != -1) { + var0.field3125.equipment[var2.maleModel2] = 0; + } + + var0.field3125.method1756(); } - @ObfuscatedName("ho") + @ObfuscatedName("mn") @ObfuscatedSignature( - descriptor = "(B)Liz;", - garbageValue = "100" + descriptor = "([Lnn;IIIIIIIB)V", + garbageValue = "-49" ) - public static class212 method1526() { - return Client.keyHandlerInstance; + @Export("updateInterface") + static final void updateInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + for (int var8 = 0; var8 < var0.length; ++var8) { + Widget var9 = var0[var8]; + if (var9 != null && var9.parentId == var1 && (var9.method1853() || class361.getWidgetFlags(var9) != 0 || var9 == Client.clickedWidgetParent)) { + if (var9.isIf3) { + if (class11.isComponentHidden(var9)) { + continue; + } + } else if (var9.type == 0 && var9 != Interpreter.mousedOverWidgetIf1 && class11.isComponentHidden(var9)) { + continue; + } + + if (var9.type == 11) { + if (var9.method1868(HealthBarDefinition.widgetDefinition, class60.urlRequester)) { + if (var9.method1861()) { + class159.invalidateWidget(var9); + class132.revalidateWidgetScroll(var9.children, var9, true); + } + + if (var9.field3116 != null) { + ScriptEvent var10 = new ScriptEvent(); + var10.widget = var9; + var10.args = var9.field3116; + Client.scriptEvents.addFirst(var10); + } + } + } else if (var9.type == 12 && var9.method1876(HealthBarDefinition.widgetDefinition)) { + class159.invalidateWidget(var9); + } + + int var26 = var9.x + var6; + int var11 = var7 + var9.y; + int var12; + int var13; + int var14; + int var15; + int var16; + int var17; + int var18; + if (var9.type == 9) { + var16 = var26; + var17 = var11; + var18 = var26 + var9.width; + int var19 = var11 + var9.height; + if (var18 < var26) { + var16 = var18; + var18 = var26; + } + + if (var19 < var11) { + var17 = var19; + var19 = var11; + } + + ++var18; + ++var19; + var12 = var16 > var2 ? var16 : var2; + var13 = var17 > var3 ? var17 : var3; + var14 = var18 < var4 ? var18 : var4; + var15 = var19 < var5 ? var19 : var5; + } else { + var16 = var26 + var9.width; + var17 = var11 + var9.height; + var12 = var26 > var2 ? var26 : var2; + var13 = var11 > var3 ? var11 : var3; + var14 = var16 < var4 ? var16 : var4; + var15 = var17 < var5 ? var17 : var5; + } + + if (var9 == Client.clickedWidget) { + Client.field397 = true; + Client.field514 = var26; + Client.field508 = var11; + } + + boolean var34 = false; + if (var9.field2995) { + switch(Client.field505) { + case 0: + var34 = true; + case 1: + default: + break; + case 2: + if (Client.field499 == var9.id >>> 16) { + var34 = true; + } + break; + case 3: + if (var9.id == Client.field499) { + var34 = true; + } + } + } + + if (var34 || !var9.isIf3 || var12 < var14 && var13 < var15) { + if (var9.isIf3) { + ScriptEvent var27; + if (var9.noClickThrough) { + if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + for (var27 = (ScriptEvent)Client.scriptEvents.last(); var27 != null; var27 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var27.field866) { + var27.remove(); + var27.widget.field3001 = false; + } + } + + Tile.method1412(); + if (class148.widgetDragDuration == 0) { + Client.clickedWidget = null; + Client.clickedWidgetParent = null; + } + + if (!Client.isMenuOpen) { + UserComparator10.addCancelMenuEntry(); + } + } + } else if (var9.noScrollThrough && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + for (var27 = (ScriptEvent)Client.scriptEvents.last(); var27 != null; var27 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var27.field866 && var27.widget.onScroll == var27.args) { + var27.remove(); + } + } + } + } + + var17 = MouseHandler.MouseHandler_x; + var18 = MouseHandler.MouseHandler_y; + if (MouseHandler.MouseHandler_lastButton != 0) { + var17 = MouseHandler.MouseHandler_lastPressedX; + var18 = MouseHandler.MouseHandler_lastPressedY; + } + + boolean var35 = var17 >= var12 && var18 >= var13 && var17 < var14 && var18 < var15; + if (var9.contentType == 1337) { + if (!Client.isLoading && !Client.isMenuOpen && var35) { + PacketBufferNode.addSceneMenuOptions(var17, var18, var12, var13); + } + } else if (var9.contentType == 1338) { + class18.checkIfMinimapClicked(var9, var26, var11); + } else { + if (var9.contentType == 1400) { + NewShit.worldMap.onCycle(MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y, var35, var26, var11, var9.width, var9.height); + } + + if (!Client.isMenuOpen && var35) { + if (var9.contentType == 1400) { + NewShit.worldMap.addElementMenuOptions(var26, var11, var9.width, var9.height, var17, var18); + } else { + class93.method502(var9); + } + } + + boolean var21; + int var23; + if (var34) { + for (int var20 = 0; var20 < var9.field3003.length; ++var20) { + var21 = false; + boolean var22 = false; + if (!var21 && var9.field3003[var20] != null) { + for (var23 = 0; var23 < var9.field3003[var20].length; ++var23) { + boolean var24 = false; + if (var9.field3080 != null) { + var24 = Client.keyHandlerInstance.getKeyPressed(var9.field3003[var20][var23]); + } + + if (class163.method852(var9.field3003[var20][var23]) || var24) { + var21 = true; + if (var9.field3080 != null && var9.field3080[var20] > Client.cycle) { + break; + } + + byte var25 = var9.field3004[var20][var23]; + if (var25 == 0 || ((var25 & 8) == 0 || !Client.keyHandlerInstance.getKeyPressed(86) && !Client.keyHandlerInstance.getKeyPressed(82) && !Client.keyHandlerInstance.getKeyPressed(81)) && ((var25 & 2) == 0 || Client.keyHandlerInstance.getKeyPressed(86)) && ((var25 & 1) == 0 || Client.keyHandlerInstance.getKeyPressed(82)) && ((var25 & 4) == 0 || Client.keyHandlerInstance.getKeyPressed(81))) { + var22 = true; + break; + } + } + } + } + + if (var22) { + if (var20 < 10) { + FloorOverlayDefinition.widgetDefaultMenuAction(var20 + 1, var9.id, var9.childIndex, var9.itemId, ""); + } else if (var20 == 10) { + class53.method308(); + FadeOutTask.method2154(var9.id, var9.childIndex, WorldMapData_0.Widget_unpackTargetMask(class361.getWidgetFlags(var9)), var9.itemId); + Client.field599 = class89.Widget_getSpellActionName(var9); + if (Client.field599 == null) { + Client.field599 = "null"; + } + + Client.field598 = var9.dataText + class167.colorStartTag(16777215); + } + + var23 = var9.field3073[var20]; + if (var9.field3080 == null) { + var9.field3080 = new int[var9.field3003.length]; + } + + if (var9.field3072 == null) { + var9.field3072 = new int[var9.field3003.length]; + } + + if (var23 != 0) { + if (var9.field3080[var20] == 0) { + var9.field3080[var20] = var23 + Client.cycle + var9.field3072[var20]; + } else { + var9.field3080[var20] = var23 + Client.cycle; + } + } else { + var9.field3080[var20] = Integer.MAX_VALUE; + } + } + + if (!var21 && var9.field3080 != null) { + var9.field3080[var20] = 0; + } + } + } + + if (var9.isIf3) { + if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + var35 = true; + } else { + var35 = false; + } + + boolean var36 = false; + if ((MouseHandler.MouseHandler_currentButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_currentButton == 4) && var35) { + var36 = true; + } + + var21 = false; + if ((MouseHandler.MouseHandler_lastButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= var12 && MouseHandler.MouseHandler_lastPressedY >= var13 && MouseHandler.MouseHandler_lastPressedX < var14 && MouseHandler.MouseHandler_lastPressedY < var15) { + var21 = true; + } + + if (var21) { + HorizontalAlignment.clickWidget(var9, MouseHandler.MouseHandler_lastPressedX - var26, MouseHandler.MouseHandler_lastPressedY - var11); + } + + if (var9.method1854()) { + if (var21) { + Client.field625.addFirst(new class222(0, MouseHandler.MouseHandler_x - var26, MouseHandler.MouseHandler_y - var11, var9)); + } + + if (var36) { + Client.field625.addFirst(new class222(1, MouseHandler.MouseHandler_x - var26, MouseHandler.MouseHandler_y - var11, var9)); + } + } + + if (var9.contentType == 1400) { + NewShit.worldMap.method2400(var17, var18, var35 & var36, var35 & var21); + } + + if (Client.clickedWidget != null && var9 != Client.clickedWidget && var35 && class12.method43(class361.getWidgetFlags(var9))) { + Client.draggedOnWidget = var9; + } + + if (var9 == Client.clickedWidgetParent) { + Client.field396 = true; + Client.field512 = var26; + Client.field513 = var11; + } + + if (var9.hasListener) { + ScriptEvent var28; + if (var35 && Client.mouseWheelRotation != 0 && var9.onScroll != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseY = Client.mouseWheelRotation; + var28.args = var9.onScroll; + Client.scriptEvents.addFirst(var28); + } + + if (Client.clickedWidget != null || Client.isMenuOpen) { + var21 = false; + var36 = false; + var35 = false; + } + + if (!var9.field2999 && var21) { + var9.field2999 = true; + if (var9.onClick != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_lastPressedX - var26; + var28.mouseY = MouseHandler.MouseHandler_lastPressedY - var11; + var28.args = var9.onClick; + Client.scriptEvents.addFirst(var28); + } + } + + if (var9.field2999 && var36 && var9.onClickRepeat != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onClickRepeat; + Client.scriptEvents.addFirst(var28); + } + + if (var9.field2999 && !var36) { + var9.field2999 = false; + if (var9.onRelease != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onRelease; + Client.field628.addFirst(var28); + } + } + + if (var36 && var9.onHold != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onHold; + Client.scriptEvents.addFirst(var28); + } + + if (!var9.field3001 && var35) { + var9.field3001 = true; + if (var9.onMouseOver != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onMouseOver; + Client.scriptEvents.addFirst(var28); + } + } + + if (var9.field3001 && var35 && var9.onMouseRepeat != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onMouseRepeat; + Client.scriptEvents.addFirst(var28); + } + + if (var9.field3001 && !var35) { + var9.field3001 = false; + if (var9.onMouseLeave != null) { + var28 = new ScriptEvent(); + var28.field866 = true; + var28.widget = var9; + var28.mouseX = MouseHandler.MouseHandler_x - var26; + var28.mouseY = MouseHandler.MouseHandler_y - var11; + var28.args = var9.onMouseLeave; + Client.field628.addFirst(var28); + } + } + + if (var9.onTimer != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onTimer; + Client.field627.addFirst(var28); + } + + ScriptEvent var29; + int var37; + int var38; + if (var9.onVarTransmit != null && Client.changedVarpCount > var9.field3071) { + if (var9.varTransmitTriggers != null && Client.changedVarpCount - var9.field3071 <= 32) { + label647: + for (var37 = var9.field3071; var37 < Client.changedVarpCount; ++var37) { + var23 = Client.changedVarps[var37 & 31]; + + for (var38 = 0; var38 < var9.varTransmitTriggers.length; ++var38) { + if (var23 == var9.varTransmitTriggers[var38]) { + var29 = new ScriptEvent(); + var29.widget = var9; + var29.args = var9.onVarTransmit; + Client.scriptEvents.addFirst(var29); + break label647; + } + } + } + } else { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onVarTransmit; + Client.scriptEvents.addFirst(var28); + } + + var9.field3071 = Client.changedVarpCount; + } + + if (var9.onInvTransmit != null && Client.changedItemContainersCount > var9.field3069) { + if (var9.invTransmitTriggers != null && Client.changedItemContainersCount - var9.field3069 <= 32) { + label623: + for (var37 = var9.field3069; var37 < Client.changedItemContainersCount; ++var37) { + var23 = Client.changedItemContainers[var37 & 31]; + + for (var38 = 0; var38 < var9.invTransmitTriggers.length; ++var38) { + if (var23 == var9.invTransmitTriggers[var38]) { + var29 = new ScriptEvent(); + var29.widget = var9; + var29.args = var9.onInvTransmit; + Client.scriptEvents.addFirst(var29); + break label623; + } + } + } + } else { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onInvTransmit; + Client.scriptEvents.addFirst(var28); + } + + var9.field3069 = Client.changedItemContainersCount; + } + + if (var9.onStatTransmit != null && Client.changedSkillsCount > var9.field3062) { + if (var9.statTransmitTriggers != null && Client.changedSkillsCount - var9.field3062 <= 32) { + label599: + for (var37 = var9.field3062; var37 < Client.changedSkillsCount; ++var37) { + var23 = Client.changedSkills[var37 & 31]; + + for (var38 = 0; var38 < var9.statTransmitTriggers.length; ++var38) { + if (var23 == var9.statTransmitTriggers[var38]) { + var29 = new ScriptEvent(); + var29.widget = var9; + var29.args = var9.onStatTransmit; + Client.scriptEvents.addFirst(var29); + break label599; + } + } + } + } else { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onStatTransmit; + Client.scriptEvents.addFirst(var28); + } + + var9.field3062 = Client.changedSkillsCount; + } + + if (Client.chatCycle > var9.field3065 && var9.onChatTransmit != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onChatTransmit; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field524 > var9.field3065 && var9.onFriendTransmit != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onFriendTransmit; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field526 > var9.field3065 && var9.onClanTransmit != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onClanTransmit; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field520 > var9.field3065 && var9.field3099 != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.field3099; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field525 > var9.field3065 && var9.field3114 != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.field3114; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field519 > var9.field3065 && var9.onStockTransmit != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onStockTransmit; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field527 > var9.field3065 && var9.field3115 != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.field3115; + Client.scriptEvents.addFirst(var28); + } + + if (Client.field522 > var9.field3065 && var9.onMiscTransmit != null) { + var28 = new ScriptEvent(); + var28.widget = var9; + var28.args = var9.onMiscTransmit; + Client.scriptEvents.addFirst(var28); + } + + var9.field3065 = Client.cycleCntr; + if (var9.onKey != null) { + for (var37 = 0; var37 < Client.field530; ++var37) { + ScriptEvent var30 = new ScriptEvent(); + var30.widget = var9; + var30.keyTyped = Client.field577[var37]; + var30.keyPressed = Client.field579[var37]; + var30.args = var9.onKey; + Client.scriptEvents.addFirst(var30); + } + } + + ScriptEvent var31; + int[] var39; + if (var9.field3107 != null) { + var39 = Client.keyHandlerInstance.method1132(); + + for (var23 = 0; var23 < var39.length; ++var23) { + var31 = new ScriptEvent(); + var31.widget = var9; + var31.keyTyped = var39[var23]; + var31.args = var9.field3107; + Client.scriptEvents.addFirst(var31); + } + } + + if (var9.field3108 != null) { + var39 = Client.keyHandlerInstance.method1133(); + + for (var23 = 0; var23 < var39.length; ++var23) { + var31 = new ScriptEvent(); + var31.widget = var9; + var31.keyTyped = var39[var23]; + var31.args = var9.field3108; + Client.scriptEvents.addFirst(var31); + } + } + } + } + + if (!var9.isIf3) { + if (Client.clickedWidget != null || Client.isMenuOpen) { + continue; + } + + if ((var9.mouseOverRedirect >= 0 || var9.mouseOverColor != 0) && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + if (var9.mouseOverRedirect >= 0) { + Interpreter.mousedOverWidgetIf1 = var0[var9.mouseOverRedirect]; + } else { + Interpreter.mousedOverWidgetIf1 = var9; + } + } + + if (var9.type == 8 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { + SwapSongTask.field3744 = var9; + } + + if (var9.scrollHeight > var9.height) { + class17.method63(var9, var26 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); + } + } + + if (var9.type == 0) { + updateInterface(var0, var9.id, var12, var13, var14, var15, var26 - var9.scrollX, var11 - var9.scrollY); + if (var9.children != null) { + updateInterface(var9.children, var9.id, var12, var13, var14, var15, var26 - var9.scrollX, var11 - var9.scrollY); + } + + InterfaceParent var32 = (InterfaceParent)Client.interfaceParents.get((long)var9.id); + if (var32 != null) { + if (var32.type == 0 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15 && !Client.isMenuOpen) { + for (ScriptEvent var33 = (ScriptEvent)Client.scriptEvents.last(); var33 != null; var33 = (ScriptEvent)Client.scriptEvents.previous()) { + if (var33.field866) { + var33.remove(); + var33.widget.field3001 = false; + } + } + + if (class148.widgetDragDuration == 0) { + Client.clickedWidget = null; + Client.clickedWidgetParent = null; + } + + if (!Client.isMenuOpen) { + UserComparator10.addCancelMenuEntry(); + } + } + + class406.updateRootInterface(var32.group, var12, var13, var14, var15, var26, var11); + } + } + } + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/AbstractWorldMapIcon.java b/osrs/src/main/java/AbstractWorldMapIcon.java index 4c872ba85..0dff268dc 100644 --- a/osrs/src/main/java/AbstractWorldMapIcon.java +++ b/osrs/src/main/java/AbstractWorldMapIcon.java @@ -3,72 +3,72 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kp") +@ObfuscatedName("jc") @Implements("AbstractWorldMapIcon") public abstract class AbstractWorldMapIcon { - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("coord2") public final Coord coord2; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("coord1") public final Coord coord1; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("screenX") int screenX; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("screenY") int screenY; @ObfuscatedSignature( - descriptor = "(Lmc;Lmc;)V" + descriptor = "(Lmh;Lmh;)V" ) AbstractWorldMapIcon(Coord var1, Coord var2) { this.coord1 = var1; this.coord2 = var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "2135662389" + garbageValue = "-1307533886" ) @Export("getElement") public abstract int getElement(); - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Lkq;", - garbageValue = "-2114244458" + descriptor = "(B)Ljk;", + garbageValue = "-49" ) @Export("getLabel") abstract WorldMapLabel getLabel(); - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-655814171" + garbageValue = "472460923" ) @Export("getSubWidth") abstract int getSubWidth(); - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-816534170" + garbageValue = "-653051141" ) @Export("getSubHeight") abstract int getSubHeight(); - @ObfuscatedName("bh") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "-1870658726" + descriptor = "(IIB)Z", + garbageValue = "-1" ) @Export("fitsScreen") boolean fitsScreen(int var1, int var2) { @@ -79,27 +79,27 @@ boolean fitsScreen(int var1, int var2) { } } - @ObfuscatedName("bj") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1935416179" + descriptor = "(S)Z", + garbageValue = "497" ) @Export("hasValidElement") boolean hasValidElement() { return this.getElement() >= 0; } - @ObfuscatedName("bk") + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(III)Z", - garbageValue = "-1283166598" + garbageValue = "384970426" ) @Export("elementFitsScreen") boolean elementFitsScreen(int var1, int var2) { if (!this.hasValidElement()) { return false; } else { - WorldMapElement var3 = class138.WorldMapElement_get(this.getElement()); + WorldMapElement var3 = class141.WorldMapElement_get(this.getElement()); int var4 = this.getSubWidth(); int var5 = this.getSubHeight(); switch(var3.horizontalAlignment.value) { @@ -129,12 +129,12 @@ boolean elementFitsScreen(int var1, int var2) { return false; case 1: - if (var2 <= this.screenY - var5 || var2 > this.screenY) { + if (var2 < this.screenY || var2 >= var5 + this.screenY) { return false; } break; case 2: - if (var2 < this.screenY || var2 >= var5 + this.screenY) { + if (var2 <= this.screenY - var5 || var2 > this.screenY) { return false; } } @@ -143,10 +143,10 @@ boolean elementFitsScreen(int var1, int var2) { } } - @ObfuscatedName("bv") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(III)Z", - garbageValue = "-731770826" + garbageValue = "870406805" ) @Export("labelFitsScreen") boolean labelFitsScreen(int var1, int var2) { @@ -154,19 +154,9 @@ boolean labelFitsScreen(int var1, int var2) { if (var3 == null) { return false; } else if (var1 >= this.screenX - var3.width / 2 && var1 <= var3.width / 2 + this.screenX) { - return var2 >= this.screenY && var2 <= var3.height + this.screenY; + return var2 >= this.screenY && var2 <= this.screenY + var3.height; } else { return false; } } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(II)F", - garbageValue = "1637064671" - ) - static final float method1556(int var0) { - float var1 = 10075.0F - (float)var0; - return (1.0075567F * var1 - 75.56675F) / var1; - } } \ No newline at end of file diff --git a/osrs/src/main/java/AccessFile.java b/osrs/src/main/java/AccessFile.java index d239e6b48..4d33b0b3f 100644 --- a/osrs/src/main/java/AccessFile.java +++ b/osrs/src/main/java/AccessFile.java @@ -5,21 +5,21 @@ import java.io.*; -@ObfuscatedName("tu") +@ObfuscatedName("to") @Implements("AccessFile") public final class AccessFile { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("file") RandomAccessFile file; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("maxSize") final long maxSize; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("offset") long offset; public AccessFile(File var1, String var2, long var3) throws IOException { - if (var3 == -1L) { + if (-1L == var3) { var3 = Long.MAX_VALUE; } @@ -39,17 +39,17 @@ public AccessFile(File var1, String var2, long var3) throws IOException { this.file.seek(0L); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("seek") final void seek(long var1) throws IOException { this.file.seek(var1); this.offset = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "-890583938" + garbageValue = "382643150" ) @Export("write") public final void write(byte[] var1, int var2, int var3) throws IOException { @@ -63,20 +63,20 @@ public final void write(byte[] var1, int var2, int var3) throws IOException { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "346425728" + descriptor = "(B)V", + garbageValue = "97" ) @Export("close") public final void close() throws IOException { this.closeSync(false); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(ZB)V", - garbageValue = "26" + garbageValue = "52" ) @Export("closeSync") public final void closeSync(boolean var1) throws IOException { @@ -94,20 +94,20 @@ public final void closeSync(boolean var1) throws IOException { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)J", - garbageValue = "330936146" + garbageValue = "494268668" ) @Export("length") public final long length() throws IOException { return this.file.length(); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "([BIIB)I", - garbageValue = "-81" + descriptor = "([BIII)I", + garbageValue = "-1827594375" ) @Export("read") public final int read(byte[] var1, int var2, int var3) throws IOException { @@ -128,4 +128,44 @@ protected void finalize() throws Throwable { } } + + @ObfuscatedName("jf") + @ObfuscatedSignature( + descriptor = "(Lds;ZB)V", + garbageValue = "-57" + ) + @Export("addPlayerToScene") + static void addPlayerToScene(Player var0, boolean var1) { + if (var0 != null && var0.isVisible() && !var0.isHidden) { + var0.isUnanimated = false; + if ((Client.isLowDetail && Players.Players_count > 50 || Players.Players_count > 200) && var1 && var0.idleSequence == var0.movementSequence) { + var0.isUnanimated = true; + } + + int var2 = var0.x >> 7; + int var3 = var0.y >> 7; + if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { + long var4 = Player.calculateTag(0, 0, 0, false, var0.index); + if (var0.attachedModel != null && Client.cycle >= var0.animationCycleStart && Client.cycle < var0.animationCycleEnd) { + var0.isUnanimated = false; + var0.tileHeight = WorldMapDecorationType.getTileHeight(var0.x, var0.y, ItemLayer.Client_plane); + var0.playerCycle = Client.cycle; + class36.scene.addNullableObject(ItemLayer.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.minX, var0.minY, var0.maxX, var0.maxY); + } else { + if ((var0.x & 127) == 64 && (var0.y & 127) == 64) { + if (Client.tileLastDrawnActor[var2][var3] == Client.viewportDrawCount) { + return; + } + + Client.tileLastDrawnActor[var2][var3] = Client.viewportDrawCount; + } + + var0.tileHeight = WorldMapDecorationType.getTileHeight(var0.x, var0.y, ItemLayer.Client_plane); + var0.playerCycle = Client.cycle; + class36.scene.drawEntity(ItemLayer.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.isWalking); + } + } + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/Actor.java b/osrs/src/main/java/Actor.java index 2fb252cf9..f675f4a04 100644 --- a/osrs/src/main/java/Actor.java +++ b/osrs/src/main/java/Actor.java @@ -3,236 +3,250 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dr") +import java.awt.*; +import java.awt.datatransfer.Clipboard; +import java.awt.datatransfer.DataFlavor; +import java.awt.datatransfer.Transferable; +import java.awt.datatransfer.UnsupportedFlavorException; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStreamWriter; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLConnection; +import java.util.ArrayList; +import java.util.Random; + +@ObfuscatedName("df") @Implements("Actor") public abstract class Actor extends Renderable { @ObfuscatedName("an") @Export("isWalking") boolean isWalking; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("x") int x; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("y") int y; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("rotation") int rotation; @ObfuscatedName("bm") - int field976; - @ObfuscatedName("bf") + int field983; + @ObfuscatedName("bp") @Export("playerCycle") int playerCycle; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("idleSequence") int idleSequence; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("turnLeftSequence") int turnLeftSequence; - @ObfuscatedName("bl") + @ObfuscatedName("bn") @Export("turnRightSequence") int turnRightSequence; - @ObfuscatedName("bp") + @ObfuscatedName("bo") @Export("walkSequence") int walkSequence; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("walkBackSequence") int walkBackSequence; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("walkLeftSequence") int walkLeftSequence; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("walkRightSequence") int walkRightSequence; - @ObfuscatedName("br") + @ObfuscatedName("bh") @Export("runSequence") int runSequence; - @ObfuscatedName("be") + @ObfuscatedName("bz") @Export("runBackSequence") int runBackSequence; - @ObfuscatedName("bi") + @ObfuscatedName("bc") @Export("runLeftSequence") int runLeftSequence; - @ObfuscatedName("bz") + @ObfuscatedName("bs") @Export("runRightSequence") int runRightSequence; @ObfuscatedName("bx") @Export("crawlSequence") int crawlSequence; - @ObfuscatedName("bn") + @ObfuscatedName("bb") @Export("crawlBackSequence") int crawlBackSequence; - @ObfuscatedName("bw") + @ObfuscatedName("bk") @Export("crawlLeftSequence") int crawlLeftSequence; - @ObfuscatedName("bc") + @ObfuscatedName("br") @Export("crawlRightSequence") int crawlRightSequence; - @ObfuscatedName("bg") + @ObfuscatedName("bq") @Export("overheadText") String overheadText; - @ObfuscatedName("cw") + @ObfuscatedName("cf") @Export("isAutoChatting") boolean isAutoChatting; - @ObfuscatedName("cf") + @ObfuscatedName("cg") @Export("showPublicPlayerChat") boolean showPublicPlayerChat; - @ObfuscatedName("cm") + @ObfuscatedName("cv") @Export("overheadTextCyclesRemaining") int overheadTextCyclesRemaining; - @ObfuscatedName("cn") - int field995; - @ObfuscatedName("cs") - int field996; @ObfuscatedName("cx") - int[] field1028; - @ObfuscatedName("cd") + int field1005; + @ObfuscatedName("cp") + int field1003; + @ObfuscatedName("ce") + int[] field1030; + @ObfuscatedName("ct") @Export("hitSplatCount") byte hitSplatCount; - @ObfuscatedName("ce") + @ObfuscatedName("cw") @Export("hitSplatTypes") int[] hitSplatTypes; @ObfuscatedName("cq") @Export("hitSplatValues") int[] hitSplatValues; - @ObfuscatedName("cp") + @ObfuscatedName("cl") @Export("hitSplatCycles") int[] hitSplatCycles; - @ObfuscatedName("cv") + @ObfuscatedName("cs") @Export("hitSplatTypes2") int[] hitSplatTypes2; @ObfuscatedName("co") @Export("hitSplatValues2") int[] hitSplatValues2; - @ObfuscatedName("cl") + @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "Loc;" + descriptor = "Lpm;" ) @Export("healthBars") IterableNodeDeque healthBars; - @ObfuscatedName("cu") + @ObfuscatedName("cn") @Export("targetIndex") int targetIndex; - @ObfuscatedName("ch") + @ObfuscatedName("cr") @Export("false0") boolean false0; - @ObfuscatedName("ci") + @ObfuscatedName("cj") @Export("movingOrientation") int movingOrientation; @ObfuscatedName("ca") - int field988; - @ObfuscatedName("cb") - int field989; - @ObfuscatedName("cg") - boolean field959; - @ObfuscatedName("cj") + int field995; + @ObfuscatedName("cc") + int field997; + @ObfuscatedName("cu") + boolean field969; + @ObfuscatedName("ch") @Export("movementSequence") int movementSequence; - @ObfuscatedName("cz") + @ObfuscatedName("cb") @Export("movementFrame") int movementFrame; - @ObfuscatedName("ct") + @ObfuscatedName("cz") @Export("movementFrameCycle") int movementFrameCycle; @ObfuscatedName("cy") - int field999; + int field1006; @ObfuscatedName("ck") @Export("sequence") int sequence; - @ObfuscatedName("cc") + @ObfuscatedName("cd") @Export("sequenceFrame") int sequenceFrame; - @ObfuscatedName("dh") + @ObfuscatedName("dt") @Export("sequenceFrameCycle") int sequenceFrameCycle; - @ObfuscatedName("dj") + @ObfuscatedName("di") @Export("sequenceDelay") int sequenceDelay; - @ObfuscatedName("di") + @ObfuscatedName("dk") @Export("currentSequenceFrameIndex") int currentSequenceFrameIndex; - @ObfuscatedName("du") + @ObfuscatedName("dd") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("spotAnimations") IterableNodeHashTable spotAnimations; - @ObfuscatedName("dn") - int field1011; + @ObfuscatedName("dx") + int field1026; + @ObfuscatedName("dh") + int field1013; + @ObfuscatedName("du") + int field1024; @ObfuscatedName("dg") - int field1004; - @ObfuscatedName("dd") - int field1002; - @ObfuscatedName("da") - int field1001; - @ObfuscatedName("ds") - int field1014; - @ObfuscatedName("dy") + int field1012; + @ObfuscatedName("dc") + int field1010; + @ObfuscatedName("do") @Export("spotAnimation") int spotAnimation; - @ObfuscatedName("dt") + @ObfuscatedName("db") @Export("exactMoveArrive1Cycle") int exactMoveArrive1Cycle; - @ObfuscatedName("dl") + @ObfuscatedName("dm") @Export("exactMoveDirection") int exactMoveDirection; - @ObfuscatedName("dk") + @ObfuscatedName("dr") @Export("npcCycle") int npcCycle; - @ObfuscatedName("df") + @ObfuscatedName("ds") @Export("defaultHeight") int defaultHeight; - @ObfuscatedName("dz") + @ObfuscatedName("da") @Export("recolourStartCycle") int recolourStartCycle; @ObfuscatedName("dw") @Export("recolourEndCycle") int recolourEndCycle; - @ObfuscatedName("dv") + @ObfuscatedName("dp") @Export("recolourHue") byte recolourHue; - @ObfuscatedName("dr") + @ObfuscatedName("df") @Export("recolourSaturation") byte recolourSaturation; - @ObfuscatedName("do") + @ObfuscatedName("dv") @Export("recolourLuminance") byte recolourLuminance; - @ObfuscatedName("db") + @ObfuscatedName("dz") @Export("recolourAmount") byte recolourAmount; - @ObfuscatedName("dp") + @ObfuscatedName("dl") @Export("orientation") int orientation; - @ObfuscatedName("dm") - int field1010; - @ObfuscatedName("dx") - int field1017; + @ObfuscatedName("de") + int field1011; + @ObfuscatedName("dn") + int field1018; @ObfuscatedName("dq") @Export("pathLength") int pathLength; - @ObfuscatedName("de") + @ObfuscatedName("dj") @Export("pathX") int[] pathX; - @ObfuscatedName("dc") + @ObfuscatedName("dy") @Export("pathY") int[] pathY; - @ObfuscatedName("ed") + @ObfuscatedName("ec") @ObfuscatedSignature( - descriptor = "[Lin;" + descriptor = "[Liz;" ) @Export("pathTraversed") MoveSpeed[] pathTraversed; - @ObfuscatedName("eh") - int field1021; - @ObfuscatedName("ey") - int field1022; - @ObfuscatedName("ee") + @ObfuscatedName("ew") + int field1028; + @ObfuscatedName("ex") + int field1029; + @ObfuscatedName("ev") @Export("combatLevelChange") int combatLevelChange; Actor() { this.isWalking = false; - this.field976 = 1; + this.field983 = 1; this.idleSequence = -1; this.turnLeftSequence = -1; this.turnRightSequence = -1; @@ -251,9 +265,9 @@ public abstract class Actor extends Renderable { this.overheadText = null; this.showPublicPlayerChat = false; this.overheadTextCyclesRemaining = 100; - this.field995 = 0; - this.field996 = 0; - this.field1028 = null; + this.field1005 = 0; + this.field1003 = 0; + this.field1030 = null; this.hitSplatCount = 0; this.hitSplatTypes = new int[4]; this.hitSplatValues = new int[4]; @@ -264,58 +278,58 @@ public abstract class Actor extends Renderable { this.targetIndex = -1; this.false0 = false; this.movingOrientation = -1; - this.field988 = -1; - this.field989 = -1; + this.field995 = -1; + this.field997 = -1; this.movementSequence = -1; this.movementFrame = 0; this.movementFrameCycle = 0; - this.field999 = 0; + this.field1006 = 0; this.sequence = -1; this.sequenceFrame = 0; this.sequenceFrameCycle = 0; this.sequenceDelay = 0; this.currentSequenceFrameIndex = 0; this.spotAnimations = new IterableNodeHashTable(4); - this.field1011 = 0; + this.field1026 = 0; this.npcCycle = 0; this.defaultHeight = 200; this.recolourStartCycle = -1; this.recolourEndCycle = -1; - this.field1010 = 0; - this.field1017 = 32; + this.field1011 = 0; + this.field1018 = 32; this.pathLength = 0; this.pathX = new int[10]; this.pathY = new int[10]; this.pathTraversed = new MoveSpeed[10]; - this.field1021 = 0; - this.field1022 = 0; + this.field1028 = 0; + this.field1029 = 0; this.combatLevelChange = -1; } - @ObfuscatedName("am") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "381940201" + garbageValue = "1221291483" ) @Export("isVisible") boolean isVisible() { return false; } - @ObfuscatedName("bc") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-71" + descriptor = "(I)V", + garbageValue = "585669071" ) - final void method512() { + final void method506() { this.pathLength = 0; - this.field1022 = 0; + this.field1029 = 0; } - @ObfuscatedName("bg") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(IIIIIII)V", - garbageValue = "1923884006" + descriptor = "(IIIIIIB)V", + garbageValue = "31" ) @Export("addHitSplat") final void addHitSplat(int var1, int var2, int var3, int var4, int var5, int var6) { @@ -335,9 +349,9 @@ final void addHitSplat(int var1, int var2, int var3, int var4, int var5, int var int var10 = -1; int var11 = 0; if (var1 >= 0) { - HitSplatDefinition var12 = WorldMapCacheName.method1564(var1); - var10 = var12.field1704; - var11 = var12.field1706; + HitSplatDefinition var12 = class149.method776(var1); + var10 = var12.field1656; + var11 = var12.field1658; } int var14; @@ -393,107 +407,75 @@ final void addHitSplat(int var1, int var2, int var3, int var4, int var5, int var } } - @ObfuscatedName("cw") + @ObfuscatedName("ci") @ObfuscatedSignature( descriptor = "(IIIIIII)V", - garbageValue = "1229115524" + garbageValue = "-2108984921" ) @Export("addHealthBar") final void addHealthBar(int var1, int var2, int var3, int var4, int var5, int var6) { - HealthBarDefinition var8 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var1); - HealthBarDefinition var7; - if (var8 != null) { - var7 = var8; - } else { - byte[] var9 = HealthBarDefinition.HealthBarDefinition_archive.takeFile(33, var1); - var8 = new HealthBarDefinition(); - var8.field1555 = var1; - if (var9 != null) { - var8.decode(new Buffer(var9)); - } - - HealthBarDefinition.HealthBarDefinition_cached.put(var8, (long)var1); - var7 = var8; - } + HealthBarDefinition var7 = class92.method497(var1); + HealthBar var8 = null; + HealthBar var9 = null; + int var10 = var7.int2; + int var11 = 0; - var8 = var7; - HealthBar var14 = null; - HealthBar var10 = null; - int var11 = var7.int2; - int var12 = 0; - - HealthBar var13; - for (var13 = (HealthBar)this.healthBars.last(); var13 != null; var13 = (HealthBar)this.healthBars.previous()) { - ++var12; - if (var13.definition.field1555 == var8.field1555) { - var13.put(var2 + var4, var5, var6, var3); + HealthBar var12; + for (var12 = (HealthBar)this.healthBars.last(); var12 != null; var12 = (HealthBar)this.healthBars.previous()) { + ++var11; + if (var12.definition.field1494 == var7.field1494) { + var12.put(var2 + var4, var5, var6, var3); return; } - if (var13.definition.int1 <= var8.int1) { - var14 = var13; + if (var12.definition.int1 <= var7.int1) { + var8 = var12; } - if (var13.definition.int2 > var11) { - var10 = var13; - var11 = var13.definition.int2; + if (var12.definition.int2 > var10) { + var9 = var12; + var10 = var12.definition.int2; } } - if (var10 != null || var12 < 4) { - var13 = new HealthBar(var8); - if (var14 == null) { - this.healthBars.addLast(var13); + if (var9 != null || var11 < 4) { + var12 = new HealthBar(var7); + if (var8 == null) { + this.healthBars.addLast(var12); } else { - IterableNodeDeque.IterableNodeDeque_addBefore(var13, var14); + IterableNodeDeque.IterableNodeDeque_addBefore(var12, var8); } - var13.put(var2 + var4, var5, var6, var3); - if (var12 >= 4) { - var10.remove(); + var12.put(var2 + var4, var5, var6, var3); + if (var11 >= 4) { + var9.remove(); } } } - @ObfuscatedName("cf") + @ObfuscatedName("ct") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-711075108" + garbageValue = "-875440561" ) @Export("removeHealthBar") final void removeHealthBar(int var1) { - HealthBarDefinition var3 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var1); - HealthBarDefinition var2; - if (var3 != null) { - var2 = var3; - } else { - byte[] var4 = HealthBarDefinition.HealthBarDefinition_archive.takeFile(33, var1); - var3 = new HealthBarDefinition(); - var3.field1555 = var1; - if (var4 != null) { - var3.decode(new Buffer(var4)); - } - - HealthBarDefinition.HealthBarDefinition_cached.put(var3, (long)var1); - var2 = var3; - } + HealthBarDefinition var2 = class92.method497(var1); - var3 = var2; - - for (HealthBar var5 = (HealthBar)this.healthBars.last(); var5 != null; var5 = (HealthBar)this.healthBars.previous()) { - if (var3 == var5.definition) { - var5.remove(); + for (HealthBar var3 = (HealthBar)this.healthBars.last(); var3 != null; var3 = (HealthBar)this.healthBars.previous()) { + if (var2 == var3.definition) { + var3.remove(); return; } } } - @ObfuscatedName("cm") + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "0" + descriptor = "(IIIII)V", + garbageValue = "-702211426" ) @Export("updateSpotAnimation") void updateSpotAnimation(int var1, int var2, int var3, int var4) { @@ -501,7 +483,7 @@ void updateSpotAnimation(int var1, int var2, int var3, int var4) { SpotAnimation var6 = (SpotAnimation)this.spotAnimations.get((long)var1); if (var6 != null) { var6.remove(); - --this.field1011; + --this.field1026; } if (var2 != 65535 && var2 != -1) { @@ -511,69 +493,69 @@ void updateSpotAnimation(int var1, int var2, int var3, int var4) { } this.spotAnimations.put(new SpotAnimation(var2, var3, var5, var7), (long)var1); - ++this.field1011; + ++this.field1026; } } - @ObfuscatedName("cn") + @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "(I)Lsf;", - garbageValue = "-343795604" + descriptor = "(B)Ltz;", + garbageValue = "-1" ) - IterableNodeHashTable method518() { + IterableNodeHashTable method512() { return this.spotAnimations; } - @ObfuscatedName("cs") + @ObfuscatedName("cl") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-28624" + descriptor = "(B)V", + garbageValue = "98" ) - void method519() { + void method513() { IterableNodeHashTableIterator var1 = new IterableNodeHashTableIterator(this.spotAnimations); - for (SpotAnimation var2 = (SpotAnimation)var1.method2449(); var2 != null; var2 = (SpotAnimation)var1.next()) { + for (SpotAnimation var2 = (SpotAnimation)var1.method2461(); var2 != null; var2 = (SpotAnimation)var1.next()) { var2.remove(); } - this.field1011 = 0; + this.field1026 = 0; } - @ObfuscatedName("cx") + @ObfuscatedName("cs") @ObfuscatedSignature( - descriptor = "(Ljr;I)Ljr;", - garbageValue = "-787093925" + descriptor = "(Lka;I)Lka;", + garbageValue = "-1145530728" ) - Model method520(Model var1) { - if (this.field1011 == 0) { + Model method514(Model var1) { + if (this.field1026 == 0) { return var1; } else { IterableNodeHashTableIterator var2 = new IterableNodeHashTableIterator(this.spotAnimations); int var3 = var1.verticesCount; int var4 = var1.indicesCount; - int var5 = var1.field2242; - byte var6 = var1.field2235; + int var5 = var1.field2421; + byte var6 = var1.field2415; - for (SpotAnimation var7 = (SpotAnimation)var2.method2449(); var7 != null; var7 = (SpotAnimation)var2.next()) { - if (var7.field4278 != -1) { - Model var8 = StructComposition.SpotAnimationDefinition_get(var7.field4281).method1002(); + for (SpotAnimation var7 = (SpotAnimation)var2.method2461(); var7 != null; var7 = (SpotAnimation)var2.next()) { + if (var7.field4310 != -1) { + Model var8 = Canvas.SpotAnimationDefinition_get(var7.field4313).method966(); if (var8 != null) { var3 += var8.verticesCount; var4 += var8.indicesCount; - var5 += var8.field2242; + var5 += var8.field2421; } } } Model var10 = new Model(var3, var4, var5, var6); - var10.method1314(var1); + var10.method1532(var1); - for (SpotAnimation var11 = (SpotAnimation)var2.method2449(); var11 != null; var11 = (SpotAnimation)var2.next()) { - if (var11.field4278 != -1) { - Model var9 = StructComposition.SpotAnimationDefinition_get(var11.field4281).getModel(var11.field4278); + for (SpotAnimation var11 = (SpotAnimation)var2.method2461(); var11 != null; var11 = (SpotAnimation)var2.next()) { + if (var11.field4310 != -1) { + Model var9 = Canvas.SpotAnimationDefinition_get(var11.field4313).getModel(var11.field4310); if (var9 != null) { - var9.offsetBy(0, -var11.field4277, 0); - var10.method1314(var9); + var9.offsetBy(0, -var11.field4309, 0); + var10.method1532(var9); } } } @@ -582,171 +564,1368 @@ Model method520(Model var1) { } } - @ObfuscatedName("cr") + @ObfuscatedName("co") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-23" + garbageValue = "1" ) - void method521() { - this.field959 = false; + void method515() { + this.field969 = false; this.movingOrientation = -1; - this.field988 = -1; - this.field989 = -1; + this.field995 = -1; + this.field997 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Lto;I)V", - garbageValue = "-1660235487" + descriptor = "(Lbm;Lpf;Lpf;I)V", + garbageValue = "1431524852" ) - @Export("updatePlayer") - static final void updatePlayer(PacketBuffer var0) { - var0.importIndex(); - int var1 = Client.localPlayerIndex; - Player var2 = VarbitComposition.localPlayer = Client.players[var1] = new Player(); - var2.index = var1; - int var3 = var0.readBits(30); - byte var4 = (byte)(var3 >> 28); - int var5 = var3 >> 14 & 16383; - int var6 = var3 & 16383; - var2.pathX[0] = var5 - UrlRequester.baseX; - var2.x = (var2.pathX[0] << 7) + (var2.transformedSize() << 6); - var2.pathY[0] = var6 - class47.baseY; - var2.y = (var2.pathY[0] << 7) + (var2.transformedSize() << 6); - HealthBar.Client_plane = var2.plane = var4; - if (Players.cachedAppearanceBuffer[var1] != null) { - var2.read(Players.cachedAppearanceBuffer[var1]); - } + static void method516(GameEngine var0, Font var1, Font var2) { + int var6; + int var78; + int var79; + boolean var93; + if (Login.worldSelectOpen) { + class223 var76 = Client.keyHandlerInstance; + class223 var4 = var76; - Players.Players_count = 0; - Players.Players_indices[++Players.Players_count - 1] = var1; - Players.activityFlags[var1] = 0; - Players.Players_emptyIdxCount = 0; - - for (int var7 = 1; var7 < 2048; ++var7) { - if (var7 != var1) { - int var8 = var0.readBits(18); - int var9 = var8 >> 16; - int var10 = var8 >> 8 & 597; - int var11 = var8 & 597; - Players.Players_regions[var7] = (var10 << 14) + var11 + (var9 << 28); - Players.Players_orientations[var7] = 0; - Players.Players_targetIndices[var7] = -1; - Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var7; - Players.activityFlags[var7] = 0; - } - } + while (true) { + if (!var4.method1128()) { + if (MouseHandler.MouseHandler_lastButton != 1 && (class19.mouseCam || MouseHandler.MouseHandler_lastButton != 4)) { + break; + } - var0.exportIndex(); - } + int var77 = Login.xPadding + 280; + if (MouseHandler.MouseHandler_lastPressedX >= var77 && MouseHandler.MouseHandler_lastPressedX <= var77 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(0, 0); + break; + } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Lon;IB)Lly;", - garbageValue = "38" - ) - public static PacketBufferNode method510(int var0, String var1, Language var2, int var3) { - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.MESSAGE_PUBLIC, Client.packetWriter.isaacCipher); - var4.packetBuffer.writeByte(0); - int var5 = var4.packetBuffer.offset; - var4.packetBuffer.writeByte(var0); - String var6 = var1.toLowerCase(); - int var7 = 0; - byte[] var8 = null; - if (var6.startsWith("yellow:")) { - var7 = 0; - var1 = var1.substring("yellow:".length()); - } else if (var6.startsWith("red:")) { - var7 = 1; - var1 = var1.substring("red:".length()); - } else if (var6.startsWith("green:")) { - var7 = 2; - var1 = var1.substring("green:".length()); - } else if (var6.startsWith("cyan:")) { - var7 = 3; - var1 = var1.substring("cyan:".length()); - } else if (var6.startsWith("purple:")) { - var7 = 4; - var1 = var1.substring("purple:".length()); - } else if (var6.startsWith("white:")) { - var7 = 5; - var1 = var1.substring("white:".length()); - } else if (var6.startsWith("flash1:")) { - var7 = 6; - var1 = var1.substring("flash1:".length()); - } else if (var6.startsWith("flash2:")) { - var7 = 7; - var1 = var1.substring("flash2:".length()); - } else if (var6.startsWith("flash3:")) { - var7 = 8; - var1 = var1.substring("flash3:".length()); - } else if (var6.startsWith("glow1:")) { - var7 = 9; - var1 = var1.substring("glow1:".length()); - } else if (var6.startsWith("glow2:")) { - var7 = 10; - var1 = var1.substring("glow2:".length()); - } else if (var6.startsWith("glow3:")) { - var7 = 11; - var1 = var1.substring("glow3:".length()); - } else if (var6.startsWith("rainbow:")) { - var7 = 12; - var1 = var1.substring("rainbow:".length()); - } else if (var6.startsWith("pattern")) { - var8 = Interpreter.method418(var6); - if (var8 != null) { - var7 = var8.length + 12; - var1 = var1.substring("pattern".length() + var8.length + 1); + if (MouseHandler.MouseHandler_lastPressedX >= var77 + 15 && MouseHandler.MouseHandler_lastPressedX <= var77 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(0, 1); + break; + } + + var6 = Login.xPadding + 390; + if (MouseHandler.MouseHandler_lastPressedX >= var6 && MouseHandler.MouseHandler_lastPressedX <= var6 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(1, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var6 + 15 && MouseHandler.MouseHandler_lastPressedX <= var6 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(1, 1); + break; + } + + var78 = Login.xPadding + 500; + if (MouseHandler.MouseHandler_lastPressedX >= var78 && MouseHandler.MouseHandler_lastPressedX <= var78 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(2, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var78 + 15 && MouseHandler.MouseHandler_lastPressedX <= var78 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(2, 1); + break; + } + + var79 = Login.xPadding + 610; + if (MouseHandler.MouseHandler_lastPressedX >= var79 && MouseHandler.MouseHandler_lastPressedX <= var79 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(3, 0); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= var79 + 15 && MouseHandler.MouseHandler_lastPressedX <= var79 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { + VarcInt.changeWorldSelectSorting(3, 1); + break; + } + + if (MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 708 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedX <= Login.xPadding + 708 + 50 && MouseHandler.MouseHandler_lastPressedY <= 20) { + Login.worldSelectOpen = false; + class250.leftTitleSprite.drawAt(Login.xPadding, 0); + Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + Login.logoSprite.drawAt(Login.xPadding + 382 - Login.logoSprite.subWidth / 2, 18); + break; + } + + if (Login.hoveredWorldIndex != -1) { + World var80 = class361.World_worlds[Login.hoveredWorldIndex]; + if (var80.isDeadman()) { + var80.field679 = "beta"; + } + + boolean var10 = false; + if (var80.properties != Client.worldProperties) { + var93 = (Client.worldProperties & class522.field4153.rsOrdinal()) != 0; + boolean var94 = var80.isDeadman(); + if (var93 && !var94 || !var93 && var94) { + var10 = true; + } + } + + class28.changeWorld(var80); + Login.worldSelectOpen = false; + class250.leftTitleSprite.drawAt(Login.xPadding, 0); + Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + Login.logoSprite.drawAt(Login.xPadding + 382 - Login.logoSprite.subWidth / 2, 18); + if (var10) { + ByteArrayPool.reloadJS5(); + } + } else { + if (Login.worldSelectPage > 0 && Varps.worldSelectLeftSprite != null && MouseHandler.MouseHandler_lastPressedX >= 0 && MouseHandler.MouseHandler_lastPressedX <= Varps.worldSelectLeftSprite.subWidth && MouseHandler.MouseHandler_lastPressedY >= class47.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= class47.canvasHeight / 2 + 50) { + --Login.worldSelectPage; + } + + if (Login.worldSelectPage < Login.worldSelectPagesCount && class105.worldSelectRightSprite != null && MouseHandler.MouseHandler_lastPressedX >= Language.canvasWidth - class105.worldSelectRightSprite.subWidth - 5 && MouseHandler.MouseHandler_lastPressedX <= Language.canvasWidth && MouseHandler.MouseHandler_lastPressedY >= class47.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= class47.canvasHeight / 2 + 50) { + ++Login.worldSelectPage; + } + } + break; + } + + if (var4.field1899 == 13) { + Login.worldSelectOpen = false; + class250.leftTitleSprite.drawAt(Login.xPadding, 0); + Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + Login.logoSprite.drawAt(Login.xPadding + 382 - Login.logoSprite.subWidth / 2, 18); + break; + } + + if (var4.field1899 == 96) { + if (Login.worldSelectPage > 0 && Varps.worldSelectLeftSprite != null) { + --Login.worldSelectPage; + } + } else if (var4.field1899 == 97 && Login.worldSelectPage < Login.worldSelectPagesCount && class105.worldSelectRightSprite != null) { + ++Login.worldSelectPage; + } } - } - var6 = var1.toLowerCase(); - byte var9 = 0; - if (var6.startsWith("wave:")) { - var9 = 1; - var1 = var1.substring("wave:".length()); - } else if (var6.startsWith("wave2:")) { - var9 = 2; - var1 = var1.substring("wave2:".length()); - } else if (var6.startsWith("shake:")) { - var9 = 3; - var1 = var1.substring("shake:".length()); - } else if (var6.startsWith("scroll:")) { - var9 = 4; - var1 = var1.substring("scroll:".length()); - } else if (var6.startsWith("slide:")) { - var9 = 5; - var1 = var1.substring("slide:".length()); - } + } else { + if ((MouseHandler.MouseHandler_lastButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 765 - 50 && MouseHandler.MouseHandler_lastPressedY >= 453) { + WorldMapIcon_1.clientPreferences.getTitleMusicDisabled(!WorldMapIcon_1.clientPreferences.getTitleMusicDisabled()); + if (!WorldMapIcon_1.clientPreferences.getTitleMusicDisabled()) { + ArrayList var3 = new ArrayList(); + var3.add(new MusicSong(class514.archive6, "scape main", "", 255, false)); + PendingSpawn.method505(var3, 0, 0, 0, 100, false); + } else { + WorldMapManager.method1265(0, 0); + } - var4.packetBuffer.writeByte(var7); - var4.packetBuffer.writeByte(var9); - if (var8 != null && Client.param25 >= 214) { - for (int var10 = 0; var10 < var8.length; ++var10) { - var4.packetBuffer.writeByte(var8[var10]); + class472.method2350(); } - } - class216.method1127(var4.packetBuffer, var1); - if (var0 == class339.field3113.rsOrdinal()) { - var4.packetBuffer.writeByte(var3); - } + if (Client.gameState != 5) { + if (-1L == Login.field774) { + Login.field774 = SpotAnimationDefinition.method962() + 1000L; + } + + long var37 = SpotAnimationDefinition.method962(); + boolean var5; + if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { + while (true) { + if (Client.archiveLoadersDone >= Client.archiveLoaders.size()) { + var5 = true; + break; + } + + ArchiveLoader var39 = (ArchiveLoader)Client.archiveLoaders.get(Client.archiveLoadersDone); + if (!var39.isLoaded()) { + var5 = false; + break; + } + + ++Client.archiveLoadersDone; + } + } else { + var5 = true; + } + + if (var5 && Login.field773 == -1L) { + Login.field773 = var37; + if (Login.field773 > Login.field774) { + Login.field774 = Login.field773; + } + } + + if (Client.gameState == 10 || Client.gameState == 11) { + if (class85.clientLanguage == Language.Language_EN) { + if (MouseHandler.MouseHandler_lastButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_lastButton == 4) { + var6 = Login.xPadding + 5; + short var7 = 463; + byte var8 = 100; + byte var40 = 35; + if (MouseHandler.MouseHandler_lastPressedX >= var6 && MouseHandler.MouseHandler_lastPressedX <= var6 + var8 && MouseHandler.MouseHandler_lastPressedY >= var7 && MouseHandler.MouseHandler_lastPressedY <= var7 + var40) { + if (class241.loadWorlds()) { + Login.worldSelectOpen = true; + Login.worldSelectPage = 0; + Login.worldSelectPagesCount = 0; + } + + return; + } + } + + if (class542.World_request != null && class241.loadWorlds()) { + Login.worldSelectOpen = true; + Login.worldSelectPage = 0; + Login.worldSelectPagesCount = 0; + } + } + + var6 = MouseHandler.MouseHandler_lastButton; + var78 = MouseHandler.MouseHandler_lastPressedX; + var79 = MouseHandler.MouseHandler_lastPressedY; + if (var6 == 0) { + var78 = MouseHandler.MouseHandler_x; + var79 = MouseHandler.MouseHandler_y; + } + + if (!class19.mouseCam && var6 == 4) { + var6 = 1; + } + + class223 var9 = Client.keyHandlerInstance; + class223 var41 = var9; + short var82; + int var83; + if (Login.loginIndex == 0) { + var93 = false; + + while (var41.method1128()) { + if (var41.field1899 == 84) { + var93 = true; + } + } + + var83 = class157.loginBoxCenter - 80; + var82 = 291; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20) { + HealthBar.openURL(class251.method1336("secure", true) + "m=account-creation/g=oldscape/create_account_funnel.ws", true, false); + } + + var83 = class157.loginBoxCenter + 80; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20 || var93) { + if ((Client.worldProperties & class522.field4151.rsOrdinal()) != 0) { + Login.Login_response0 = ""; + Login.Login_response1 = "This is a Beta world."; + Login.Login_response2 = "Your normal account will not be affected."; + Login.Login_response3 = ""; + UserComparator7.method674(1); + class150.method785(); + } else if ((Client.worldProperties & class522.field4157.rsOrdinal()) != 0) { + if ((Client.worldProperties & class522.field4156.rsOrdinal()) != 0) { + Login.Login_response1 = "This is a High Risk PvP world."; + Login.Login_response2 = "Players can attack each other almost everywhere"; + Login.Login_response3 = "and the Protect Item prayer won't work."; + } else { + Login.Login_response1 = "This is a PvP world."; + Login.Login_response2 = "Players can attack each other"; + Login.Login_response3 = "almost everywhere."; + } + + Login.Login_response0 = "Warning!"; + UserComparator7.method674(1); + class150.method785(); + } else if ((Client.worldProperties & class522.field4156.rsOrdinal()) != 0) { + Login.Login_response1 = "This is a High Risk world."; + Login.Login_response2 = "The Protect Item prayer will"; + Login.Login_response3 = "not work on this world."; + Login.Login_response0 = "Warning!"; + UserComparator7.method674(1); + class150.method785(); + } else { + SoundSystem.Login_promptCredentials(false); + } + } + } else { + int var11; + short var12; + if (Login.loginIndex == 1) { + while (true) { + if (!var41.method1128()) { + var11 = class157.loginBoxCenter - 80; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(false); + } + + var11 = class157.loginBoxCenter + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + UserComparator7.method674(0); + } + break; + } + + if (var41.field1899 == 84) { + SoundSystem.Login_promptCredentials(false); + } else if (var41.field1899 == 13) { + UserComparator7.method674(0); + } + } + } else { + int var15; + short var81; + if (Login.loginIndex == 2) { + var81 = 201; + var11 = var81 + 52; + if (var6 == 1 && var79 >= var11 - 12 && var79 < var11 + 2) { + Login.currentLoginField = 0; + } + + var11 += 15; + if (var6 == 1 && var79 >= var11 - 12 && var79 < var11 + 2) { + Login.currentLoginField = 1; + } + + var11 += 15; + var81 = 361; + if (Login.field775 != null) { + var83 = Login.field775.highX / 2; + if (var6 == 1 && var78 >= Login.field775.lowX - var83 && var78 <= var83 + Login.field775.lowX && var79 >= var81 - 15 && var79 < var81) { + switch(Login.field750) { + case 1: + HealthBar.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); + return; + case 2: + HealthBar.openURL("https://support.runescape.com/hc/en-gb", true, false); + } + } + } + + var83 = class157.loginBoxCenter - 80; + var82 = 321; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20) { + class478.method2365(); + return; + } + + var83 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20) { + UserComparator7.method674(0); + Login.Login_username = ""; + Login.Login_password = ""; + class53.field256 = 0; + NewShit.otp = ""; + Login.field744 = true; + } + + var83 = class157.loginBoxCenter + -117; + var82 = 277; + Login.field743 = var78 >= var83 && var78 < var83 + NPCComposition.field1532 && var79 >= var82 && var79 < var82 + class113.field1178; + if (var6 == 1 && Login.field743) { + Client.Login_isUsernameRemembered = !Client.Login_isUsernameRemembered; + if (!Client.Login_isUsernameRemembered && WorldMapIcon_1.clientPreferences.getUsernameToRemember() != null) { + WorldMapIcon_1.clientPreferences.setUsernameToRemember((String)null); + } + } + + var83 = class157.loginBoxCenter + 24; + var82 = 277; + Login.field745 = var78 >= var83 && var78 < var83 + NPCComposition.field1532 && var79 >= var82 && var79 < var82 + class113.field1178; + if (var6 == 1 && Login.field745) { + WorldMapIcon_1.clientPreferences.setIsUsernameHidden(!WorldMapIcon_1.clientPreferences.getIsUsernameHidden()); + if (!WorldMapIcon_1.clientPreferences.getIsUsernameHidden()) { + Login.Login_username = ""; + WorldMapIcon_1.clientPreferences.setUsernameToRemember((String)null); + class150.method785(); + } + } + + while (true) { + int var88; + Transferable var104; + do { + while (true) { + label1419: + do { + while (true) { + while (var41.method1128()) { + if (var41.field1899 != 13) { + if (Login.currentLoginField != 0) { + continue label1419; + } + + char var87 = var41.field1897; + + for (var15 = 0; var15 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length() && var87 != "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var15); ++var15) { + } + + if (var41.field1899 == 85 && Login.Login_username.length() > 0) { + Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); + } + + if (var41.field1899 == 84 || var41.field1899 == 80) { + Login.currentLoginField = 1; + } + + if (WorldMapScaleHandler.method1380(var41.field1897) && Login.Login_username.length() < 320) { + Login.Login_username = Login.Login_username + var41.field1897; + } + } else { + UserComparator7.method674(0); + Login.Login_username = ""; + Login.Login_password = ""; + class53.field256 = 0; + NewShit.otp = ""; + Login.field744 = true; + } + } + + return; + } + } while(Login.currentLoginField != 1); + + if (var41.field1899 == 85 && Login.Login_password.length() > 0) { + Login.Login_password = Login.Login_password.substring(0, Login.Login_password.length() - 1); + } else if (var41.field1899 == 84 || var41.field1899 == 80) { + Login.currentLoginField = 0; + if (var41.field1899 == 84) { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + class139.setLoginResponseString("", "Please enter your username/email address.", ""); + return; + } + + if (Login.Login_password.length() == 0) { + class139.setLoginResponseString("", "Please enter your password.", ""); + return; + } + + class139.setLoginResponseString("", "Connecting to server...", ""); + VerticalAlignment.method958(false); + WorldMapSection2.updateGameState(20); + return; + } + } + + if ((var41.getKeyPressed(82) || var41.getKeyPressed(87)) && var41.field1899 == 67) { + Clipboard var103 = Toolkit.getDefaultToolkit().getSystemClipboard(); + var104 = var103.getContents(SpriteMask.client); + var88 = 20 - Login.Login_password.length(); + break; + } + + if (DirectByteArrayCopier.method1884(var41.field1897) && WorldMapScaleHandler.method1380(var41.field1897) && Login.Login_password.length() < 20) { + Login.Login_password = Login.Login_password + var41.field1897; + } + } + } while(var88 <= 0); + + try { + String var89 = (String)var104.getTransferData(DataFlavor.stringFlavor); + int var92 = Math.min(var88, var89.length()); + + for (int var19 = 0; var19 < var92; ++var19) { + if (!DirectByteArrayCopier.method1884(var89.charAt(var19)) || !WorldMapScaleHandler.method1380(var89.charAt(var19))) { + UserComparator7.method674(3); + return; + } + } + + Login.Login_password = Login.Login_password + var89.substring(0, var92); + } catch (UnsupportedFlavorException var74) { + } catch (IOException var75) { + } + } + } else { + Bounds var44; + if (Login.loginIndex == 3) { + var11 = Login.loginBoxX + 180; + var12 = 241; + var44 = var1.method2105(25, "need to log in using the Jagex Launcher instead.".length() - 34, "need to log in using the Jagex Launcher instead.", var11, var12); + if (var6 == 1 && var44.method2300(var78, var79)) { + HealthBar.openURL("https://oldschool.runescape.com/launcher", true, false); + } + + var11 = Login.loginBoxX + 180; + var12 = 276; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + ClientPreferences.method568(false); + } + + var11 = Login.loginBoxX + 180; + var12 = 326; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + HealthBar.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); + return; + } + } else { + int var14; + if (Login.loginIndex == 4) { + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + NewShit.otp.trim(); + if (NewShit.otp.length() != 6) { + class139.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); + return; + } + + class53.field256 = Integer.parseInt(NewShit.otp); + NewShit.otp = ""; + VerticalAlignment.method958(true); + class139.setLoginResponseString("", "Connecting to server...", ""); + WorldMapSection2.updateGameState(20); + return; + } + + if (var6 == 1 && var78 >= Login.loginBoxX + 180 - 9 && var78 <= Login.loginBoxX + 180 + 130 && var79 >= 263 && var79 <= 296) { + Login.field744 = !Login.field744; + } + + if (var6 == 1 && var78 >= Login.loginBoxX + 180 - 34 && var78 <= Login.loginBoxX + 34 + 180 && var79 >= 351 && var79 <= 363) { + HealthBar.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); + } + + var11 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + UserComparator7.method674(0); + Login.Login_username = ""; + Login.Login_password = ""; + class53.field256 = 0; + NewShit.otp = ""; + } + + while (var41.method1128()) { + boolean var13 = false; + + for (var14 = 0; var14 < "1234567890".length(); ++var14) { + if (var41.field1897 == "1234567890".charAt(var14)) { + var13 = true; + break; + } + } + + if (var41.field1899 == 13) { + UserComparator7.method674(0); + Login.Login_username = ""; + Login.Login_password = ""; + class53.field256 = 0; + NewShit.otp = ""; + } else { + if (var41.field1899 == 85 && NewShit.otp.length() > 0) { + NewShit.otp = NewShit.otp.substring(0, NewShit.otp.length() - 1); + } + + if (var41.field1899 == 84) { + NewShit.otp.trim(); + if (NewShit.otp.length() != 6) { + class139.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); + return; + } + + class53.field256 = Integer.parseInt(NewShit.otp); + NewShit.otp = ""; + VerticalAlignment.method958(true); + class139.setLoginResponseString("", "Connecting to server...", ""); + WorldMapSection2.updateGameState(20); + return; + } + + if (var13 && NewShit.otp.length() < 6) { + NewShit.otp = NewShit.otp + var41.field1897; + } + } + } + } else if (Login.loginIndex == 5) { + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + Buffer var22; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + class139.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); + } else { + long var48; + try { + URL var45 = new URL(class251.method1336("services", false) + "m=accountappeal/login.ws"); + URLConnection var17 = var45.openConnection(); + var17.setRequestProperty("connection", "close"); + var17.setDoInput(true); + var17.setDoOutput(true); + var17.setConnectTimeout(5000); + OutputStreamWriter var106 = new OutputStreamWriter(var17.getOutputStream()); + var106.write("data1=req"); + var106.flush(); + InputStream var107 = var17.getInputStream(); + Buffer var90 = new Buffer(new byte[1000]); + + while (true) { + int var21 = var107.read(var90.array, var90.offset, 1000 - var90.offset); + if (var21 == -1) { + var90.offset = 0; + long var50 = var90.readLong(); + var48 = var50; + break; + } - var4.packetBuffer.method2540(var4.packetBuffer.offset - var5); - return var4; + var90.offset += var21; + if (var90.offset >= 1000) { + var48 = 0L; + break; + } + } + } catch (Exception var70) { + var48 = 0L; + } + + byte var84; + if (var48 == 0L) { + var84 = 5; + } else { + String var108 = Login.Login_username; + Random var91 = new Random(); + Buffer var110 = new Buffer(128); + var22 = new Buffer(128); + int[] var96 = new int[]{var91.nextInt(), var91.nextInt(), (int)(var48 >> 32), (int)var48}; + var110.writeByte(10); + + int var24; + for (var24 = 0; var24 < 4; ++var24) { + var110.writeInt(var91.nextInt()); + } + + var110.writeInt(var96[0]); + var110.writeInt(var96[1]); + var110.writeLong(var48); + var110.writeLong(0L); + + for (var24 = 0; var24 < 4; ++var24) { + var110.writeInt(var91.nextInt()); + } + + var110.encryptRsa(class72.field729, class72.field730); + var22.writeByte(10); + + for (var24 = 0; var24 < 3; ++var24) { + var22.writeInt(var91.nextInt()); + } + + var22.writeLong(var91.nextLong()); + var22.writeLongMedium(var91.nextLong()); + class354.method1897(var22); + var22.writeLong(var91.nextLong()); + var22.encryptRsa(class72.field729, class72.field730); + var24 = ClanChannel.stringCp1252NullTerminatedByteSize(var108); + if (var24 % 8 != 0) { + var24 += 8 - var24 % 8; + } + + Buffer var97 = new Buffer(var24); + var97.writeStringCp1252NullTerminated(var108); + var97.offset = var24; + var97.xteaEncryptAll(var96); + Buffer var26 = new Buffer(var22.offset + var110.offset + var97.offset + 5); + var26.writeByte(2); + var26.writeByte(var110.offset); + var26.writeBytes(var110.array, 0, var110.offset); + var26.writeByte(var22.offset); + var26.writeBytes(var22.array, 0, var22.offset); + var26.writeShort(var97.offset); + var26.writeBytes(var97.array, 0, var97.offset); + String var98 = class415.method2150(var26.array); + + byte var18; + try { + URL var99 = new URL(class251.method1336("services", false) + "m=accountappeal/login.ws"); + URLConnection var100 = var99.openConnection(); + var100.setDoInput(true); + var100.setDoOutput(true); + var100.setConnectTimeout(5000); + OutputStreamWriter var101 = new OutputStreamWriter(var100.getOutputStream()); + var101.write("data2=" + WorldMapData_0.method1179(var98) + "&dest=" + WorldMapData_0.method1179("passwordchoice.ws")); + var101.flush(); + InputStream var102 = var100.getInputStream(); + var26 = new Buffer(new byte[1000]); + + while (true) { + int var32 = var102.read(var26.array, var26.offset, 1000 - var26.offset); + if (var32 == -1) { + var101.close(); + var102.close(); + String var111 = new String(var26.array); + if (var111.startsWith("OFFLINE")) { + var18 = 4; + } else if (var111.startsWith("WRONG")) { + var18 = 7; + } else if (var111.startsWith("RELOAD")) { + var18 = 3; + } else if (var111.startsWith("Not permitted for social network accounts.")) { + var18 = 6; + } else { + var26.xteaDecryptAll(var96); + + while (var26.offset > 0 && var26.array[var26.offset - 1] == 0) { + --var26.offset; + } + + var111 = new String(var26.array, 0, var26.offset); + boolean var33; + if (var111 == null) { + var33 = false; + } else { + label1588: { + try { + new URL(var111); + } catch (MalformedURLException var68) { + var33 = false; + break label1588; + } + + var33 = true; + } + } + + if (var33) { + HealthBar.openURL(var111, true, false); + var18 = 2; + } else { + var18 = 5; + } + } + break; + } + + var26.offset += var32; + if (var26.offset >= 1000) { + var18 = 5; + break; + } + } + } catch (Throwable var69) { + var69.printStackTrace(); + var18 = 5; + } + + var84 = var18; + } + + switch(var84) { + case 2: + class139.setLoginResponseString(Strings.field3442, Strings.field3443, Strings.field3465); + UserComparator7.method674(6); + break; + case 3: + class139.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 4: + class139.setLoginResponseString("The part of the website you are trying", "to connect to is offline at the moment.", "Please try again later."); + break; + case 5: + class139.setLoginResponseString("Sorry, there was an error trying to", "log you in to this part of the website.", "Please try again later."); + break; + case 6: + class139.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 7: + class139.setLoginResponseString("You must enter a valid login to proceed. For accounts", "created after 24th November 2010, please use your", "email address. Otherwise please use your username."); + } + } + + return; + } + + var11 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(true); + } + + var82 = 361; + if (class7.field13 != null) { + var14 = class7.field13.highX / 2; + if (var6 == 1 && var78 >= class7.field13.lowX - var14 && var78 <= var14 + class7.field13.lowX && var79 >= var82 - 15 && var79 < var82) { + HealthBar.openURL(class251.method1336("secure", true) + "m=weblogin/g=oldscape/cant_log_in", true, false); + } + } + + while (var41.method1128()) { + boolean var85 = false; + + for (var15 = 0; var15 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var15) { + if (var41.field1897 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var15)) { + var85 = true; + break; + } + } + + if (var41.field1899 == 13) { + SoundSystem.Login_promptCredentials(true); + } else { + if (var41.field1899 == 85 && Login.Login_username.length() > 0) { + Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); + } + + if (var41.field1899 == 84) { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + class139.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); + } else { + long var52; + try { + URL var46 = new URL(class251.method1336("services", false) + "m=accountappeal/login.ws"); + URLConnection var47 = var46.openConnection(); + var47.setRequestProperty("connection", "close"); + var47.setDoInput(true); + var47.setDoOutput(true); + var47.setConnectTimeout(5000); + OutputStreamWriter var20 = new OutputStreamWriter(var47.getOutputStream()); + var20.write("data1=req"); + var20.flush(); + InputStream var54 = var47.getInputStream(); + var22 = new Buffer(new byte[1000]); + + while (true) { + int var56 = var54.read(var22.array, var22.offset, 1000 - var22.offset); + if (var56 == -1) { + var22.offset = 0; + long var57 = var22.readLong(); + var52 = var57; + break; + } + + var22.offset += var56; + if (var22.offset >= 1000) { + var52 = 0L; + break; + } + } + } catch (Exception var73) { + var52 = 0L; + } + + byte var86; + if (0L == var52) { + var86 = 5; + } else { + String var109 = Login.Login_username; + Random var95 = new Random(); + Buffer var23 = new Buffer(128); + Buffer var61 = new Buffer(128); + int[] var25 = new int[]{var95.nextInt(), var95.nextInt(), (int)(var52 >> 32), (int)var52}; + var23.writeByte(10); + + int var62; + for (var62 = 0; var62 < 4; ++var62) { + var23.writeInt(var95.nextInt()); + } + + var23.writeInt(var25[0]); + var23.writeInt(var25[1]); + var23.writeLong(var52); + var23.writeLong(0L); + + for (var62 = 0; var62 < 4; ++var62) { + var23.writeInt(var95.nextInt()); + } + + var23.encryptRsa(class72.field729, class72.field730); + var61.writeByte(10); + + for (var62 = 0; var62 < 3; ++var62) { + var61.writeInt(var95.nextInt()); + } + + var61.writeLong(var95.nextLong()); + var61.writeLongMedium(var95.nextLong()); + class354.method1897(var61); + var61.writeLong(var95.nextLong()); + var61.encryptRsa(class72.field729, class72.field730); + var62 = ClanChannel.stringCp1252NullTerminatedByteSize(var109); + if (var62 % 8 != 0) { + var62 += 8 - var62 % 8; + } + + Buffer var27 = new Buffer(var62); + var27.writeStringCp1252NullTerminated(var109); + var27.offset = var62; + var27.xteaEncryptAll(var25); + Buffer var28 = new Buffer(var27.offset + var61.offset + var23.offset + 5); + var28.writeByte(2); + var28.writeByte(var23.offset); + var28.writeBytes(var23.array, 0, var23.offset); + var28.writeByte(var61.offset); + var28.writeBytes(var61.array, 0, var61.offset); + var28.writeShort(var27.offset); + var28.writeBytes(var27.array, 0, var27.offset); + String var29 = class415.method2150(var28.array); + + byte var65; + try { + URL var30 = new URL(class251.method1336("services", false) + "m=accountappeal/login.ws"); + URLConnection var31 = var30.openConnection(); + var31.setDoInput(true); + var31.setDoOutput(true); + var31.setConnectTimeout(5000); + OutputStreamWriter var55 = new OutputStreamWriter(var31.getOutputStream()); + var55.write("data2=" + WorldMapData_0.method1179(var29) + "&dest=" + WorldMapData_0.method1179("passwordchoice.ws")); + var55.flush(); + InputStream var63 = var31.getInputStream(); + var28 = new Buffer(new byte[1000]); + + while (true) { + int var64 = var63.read(var28.array, var28.offset, 1000 - var28.offset); + if (var64 == -1) { + var55.close(); + var63.close(); + String var34 = new String(var28.array); + if (var34.startsWith("OFFLINE")) { + var65 = 4; + } else if (var34.startsWith("WRONG")) { + var65 = 7; + } else if (var34.startsWith("RELOAD")) { + var65 = 3; + } else if (var34.startsWith("Not permitted for social network accounts.")) { + var65 = 6; + } else { + var28.xteaDecryptAll(var25); + + while (var28.offset > 0 && var28.array[var28.offset - 1] == 0) { + --var28.offset; + } + + var34 = new String(var28.array, 0, var28.offset); + boolean var35; + if (var34 == null) { + var35 = false; + } else { + label1590: { + try { + new URL(var34); + } catch (MalformedURLException var71) { + var35 = false; + break label1590; + } + + var35 = true; + } + } + + if (var35) { + HealthBar.openURL(var34, true, false); + var65 = 2; + } else { + var65 = 5; + } + } + break; + } + + var28.offset += var64; + if (var28.offset >= 1000) { + var65 = 5; + break; + } + } + } catch (Throwable var72) { + var72.printStackTrace(); + var65 = 5; + } + + var86 = var65; + } + + switch(var86) { + case 2: + class139.setLoginResponseString(Strings.field3442, Strings.field3443, Strings.field3465); + UserComparator7.method674(6); + break; + case 3: + class139.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 4: + class139.setLoginResponseString("The part of the website you are trying", "to connect to is offline at the moment.", "Please try again later."); + break; + case 5: + class139.setLoginResponseString("Sorry, there was an error trying to", "log you in to this part of the website.", "Please try again later."); + break; + case 6: + class139.setLoginResponseString("", "Error connecting to server.", ""); + break; + case 7: + class139.setLoginResponseString("You must enter a valid login to proceed. For accounts", "created after 24th November 2010, please use your", "email address. Otherwise please use your username."); + } + } + + return; + } + + if (var85 && Login.Login_username.length() < 320) { + Login.Login_username = Login.Login_username + var41.field1897; + } + } + } + } else if (Login.loginIndex != 6) { + if (Login.loginIndex == 7) { + if (PendingSpawn.field949 && !Client.onMobile) { + var11 = class157.loginBoxCenter - 150; + var83 = var11 + 40 + 240 + 25; + var82 = 231; + var14 = var82 + 40; + if (var6 == 1 && var78 >= var11 && var78 <= var83 && var79 >= var82 && var79 <= var14) { + Login.field753 = ObjectSound.method423(var11, var78); + } + + var15 = Login.loginBoxX + 180 - 80; + short var16 = 321; + boolean var66; + if (var6 == 1 && var78 >= var15 - 75 && var78 <= var15 + 75 && var79 >= var16 - 20 && var79 <= var16 + 20) { + var66 = class36.method184(); + if (var66) { + WorldMapSection2.updateGameState(50); + return; + } + } + + var15 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var15 - 75 && var78 <= var15 + 75 && var79 >= var16 - 20 && var79 <= var16 + 20) { + Login.field769 = new String[8]; + SoundSystem.Login_promptCredentials(true); + } + + while (var41.method1128()) { + if (var41.field1899 == 101) { + Login.field769[Login.field753] = null; + } + + if (var41.field1899 == 85) { + if (Login.field769[Login.field753] == null && Login.field753 > 0) { + --Login.field753; + } + + Login.field769[Login.field753] = null; + } + + if (var41.field1897 >= '0' && var41.field1897 <= '9') { + Login.field769[Login.field753] = "" + var41.field1897; + if (Login.field753 < 7) { + ++Login.field753; + } + } + + if (var41.field1899 == 84) { + var66 = class36.method184(); + if (var66) { + WorldMapSection2.updateGameState(50); + } + + return; + } + } + } else { + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + HealthBar.openURL(class251.method1336("secure", true) + "m=dob/set_dob.ws", true, false); + class139.setLoginResponseString("", "Page has opened in the browser.", ""); + UserComparator7.method674(6); + return; + } + + var11 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(true); + } + } + } else if (Login.loginIndex == 8) { + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + HealthBar.openURL("https://www.jagex.com/terms/privacy", true, false); + class139.setLoginResponseString("", "Page has opened in the browser.", ""); + UserComparator7.method674(6); + return; + } + + var11 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(true); + } + } else if (Login.loginIndex == 9) { + var11 = Login.loginBoxX + 180; + var12 = 311; + if (var9.field1899 == 84 || var9.field1899 == 13 || var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + ClientPreferences.method568(false); + } + } else if (Login.loginIndex == 10) { + var11 = Login.loginBoxX + 180; + var12 = 209; + if (var9.field1899 == 84 || var6 == 1 && var78 >= var11 - 109 && var78 <= var11 + 109 && var79 >= var12 && var79 <= var12 + 68) { + class139.setLoginResponseString("", "Connecting to server...", ""); + Client.field648 = class531.field4233; + VerticalAlignment.method958(false); + WorldMapSection2.updateGameState(20); + } + } else if (Login.loginIndex == 12) { + var11 = class157.loginBoxCenter; + var12 = 233; + var44 = var2.method2105(0, 30, "terms of use, privacy policy, and end user licence", var11, var12); + Bounds var42 = var2.method2105(32, 32, "terms of use, privacy policy, and end user licence", var11, var12); + Bounds var43 = var2.method2105(70, 34, "terms of use, privacy policy, and end user licence", var11, var12); + var83 = var12 + 17; + Bounds var105 = var2.method2105(0, 34, "agreement (EULA).", var11, var83); + if (var6 == 1) { + if (var44.method2300(var78, var79)) { + HealthBar.openURL("https://www.jagex.com/terms", true, false); + } else if (var42.method2300(var78, var79)) { + HealthBar.openURL("https://www.jagex.com/terms/privacy", true, false); + } else if (var43.method2300(var78, var79) || var105.method2300(var78, var79)) { + HealthBar.openURL("https://www.jagex.com/en-GB/legal/eula-runescape-oldschool", true, false); + } + } + + var11 = class157.loginBoxCenter - 80; + var12 = 311; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + WorldMapIcon_1.clientPreferences.method560(Client.param21); + ClientPreferences.method568(true); + } + + var11 = class157.loginBoxCenter + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + Login.loginIndex = 13; + } + } else if (Login.loginIndex == 13) { + var11 = class157.loginBoxCenter; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + ClientPreferences.method568(true); + } + } else if (Login.loginIndex == 14) { + String var67 = ""; + switch(Login.field751) { + case 0: + var67 = "https://secure.runescape.com/m=offence-appeal/account-history"; + break; + case 1: + var67 = "https://secure.runescape.com/m=accountappeal/passwordrecovery"; + break; + case 2: + var67 = "https://support.runescape.com/hc/en-gb/articles/207256855-Settle-an-Unpaid-Balance"; + break; + default: + SoundSystem.Login_promptCredentials(false); + } + + var83 = Login.loginBoxX + 180; + var82 = 276; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20) { + HealthBar.openURL(var67, true, false); + class139.setLoginResponseString("", "Page has opened in the browser.", ""); + UserComparator7.method674(6); + return; + } + + var83 = Login.loginBoxX + 180; + var82 = 326; + if (var6 == 1 && var78 >= var83 - 75 && var78 <= var83 + 75 && var79 >= var82 - 20 && var79 <= var82 + 20) { + SoundSystem.Login_promptCredentials(false); + } + } else if (Login.loginIndex == 24) { + var11 = Login.loginBoxX + 180; + var12 = 301; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + ClientPreferences.method568(false); + } + } else if (Login.loginIndex == 32) { + var11 = Login.loginBoxX + 180 - 80; + var12 = 321; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + HealthBar.openURL(class251.method1336("secure", true) + "m=dob/set_dob.ws", true, false); + class139.setLoginResponseString("", "Page has opened in the browser.", ""); + UserComparator7.method674(6); + return; + } + + var11 = Login.loginBoxX + 180 + 80; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(true); + } + } else if (Login.loginIndex == 33) { + var11 = Login.loginBoxX + 180; + var12 = 276; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + HealthBar.openURL("https://oldschool.runescape.com/launcher", true, false); + } + + var11 = Login.loginBoxX + 180; + var12 = 326; + if (var6 == 1 && var78 >= var11 - 75 && var78 <= var11 + 75 && var79 >= var12 - 20 && var79 <= var12 + 20) { + SoundSystem.Login_promptCredentials(true); + } + } + } else { + while (true) { + do { + if (!var41.method1128()) { + var81 = 321; + if (var6 == 1 && var79 >= var81 - 20 && var79 <= var81 + 20) { + SoundSystem.Login_promptCredentials(true); + } + + return; + } + } while(var41.field1899 != 84 && var41.field1899 != 13); + + SoundSystem.Login_promptCredentials(true); + } + } + } + } + } + } + + } + } + } } - @ObfuscatedName("br") + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "(Lmt;I)Z", - garbageValue = "-1903392375" + descriptor = "(ILdt;ZI)I", + garbageValue = "-983398043" ) - static boolean method522(PlayerComposition var0) { - if (var0.equipment[0] < 512) { - return false; + static int method517(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 3903) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].type(); + return 1; + } else if (var0 == 3904) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].id; + return 1; + } else if (var0 == 3905) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].unitPrice; + return 1; + } else if (var0 == 3906) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].totalQuantity; + return 1; + } else if (var0 == 3907) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentQuantity; + return 1; + } else if (var0 == 3908) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentPrice; + return 1; } else { - ItemComposition var1 = InvDefinition.ItemDefinition_get(var0.equipment[0] - 512); - return var1.maleModel1 != class209.field1862.field1871 && var1.maleModel2 != class209.field1862.field1871; + int var12; + if (var0 == 3910) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var12 == 0 ? 1 : 0; + return 1; + } else if (var0 == 3911) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var12 == 2 ? 1 : 0; + return 1; + } else if (var0 == 3912) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var12 == 5 ? 1 : 0; + return 1; + } else if (var0 == 3913) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = Client.grandExchangeOffers[var3].status(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var12 == 1 ? 1 : 0; + return 1; + } else { + boolean var13; + if (var0 == 3914) { + var13 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class6.grandExchangeEvents != null) { + class6.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_nameComparator, var13); + } + + return 1; + } else if (var0 == 3915) { + var13 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class6.grandExchangeEvents != null) { + class6.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_priceComparator, var13); + } + + return 1; + } else if (var0 == 3916) { + DbTableType.Interpreter_intStackSize -= 2; + var13 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] == 1; + boolean var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1] == 1; + if (class6.grandExchangeEvents != null) { + Client.GrandExchangeEvents_worldComparator.filterWorlds = var4; + class6.grandExchangeEvents.sort(Client.GrandExchangeEvents_worldComparator, var13); + } + + return 1; + } else if (var0 == 3917) { + var13 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class6.grandExchangeEvents != null) { + class6.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_ageComparator, var13); + } + + return 1; + } else if (var0 == 3918) { + var13 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class6.grandExchangeEvents != null) { + class6.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_quantityComparator, var13); + } + + return 1; + } else if (var0 == 3919) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class6.grandExchangeEvents == null ? 0 : class6.grandExchangeEvents.events.size(); + return 1; + } else { + GrandExchangeEvent var11; + if (var0 == 3920) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var11.world; + return 1; + } else if (var0 == 3921) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var11.getOfferName(); + return 1; + } else if (var0 == 3922) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var11.getPreviousOfferName(); + return 1; + } else if (var0 == 3923) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + long var5 = SpotAnimationDefinition.method962() - class489.field3990 - var11.age; + int var7 = (int)(var5 / 3600000L); + int var8 = (int)((var5 - (long)(var7 * 3600000)) / 60000L); + int var9 = (int)((var5 - (long)(var7 * 3600000) - (long)(var8 * 60000)) / 1000L); + String var10 = var7 + ":" + var8 / 10 + var8 % 10 + ":" + var9 / 10 + var9 % 10; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var10; + return 1; + } else if (var0 == 3924) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.totalQuantity; + return 1; + } else if (var0 == 3925) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.unitPrice; + return 1; + } else if (var0 == 3926) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var11 = (GrandExchangeEvent)class6.grandExchangeEvents.events.get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.id; + return 1; + } else if (var0 == 3939) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).isTradable ? 1 : 0; + return 1; + } else { + return 2; + } + } + } } } } \ No newline at end of file diff --git a/osrs/src/main/java/AddRequestTask.java b/osrs/src/main/java/AddRequestTask.java index d4aa631ab..40b665a18 100644 --- a/osrs/src/main/java/AddRequestTask.java +++ b/osrs/src/main/java/AddRequestTask.java @@ -5,52 +5,46 @@ import java.util.Iterator; -@ObfuscatedName("pf") +@ObfuscatedName("pj") @Implements("AddRequestTask") public class AddRequestTask extends SongTask { - @ObfuscatedName("tw") @ObfuscatedSignature( - descriptor = "Lbb;" - ) - @Export("pcmPlayer1") - static PcmPlayer pcmPlayer1; - - @ObfuscatedSignature( - descriptor = "(Lpm;)V" + descriptor = "(Lql;)V" ) public AddRequestTask(SongTask var1) { super(var1); - super.field3722 = "AddRequestTask"; + super.field3756 = "AddRequestTask"; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - while (!class305.field2774.isEmpty()) { - MusicSong var1 = (MusicSong)class305.field2774.peek(); + while (!class316.field2790.isEmpty()) { + MusicSong var1 = (MusicSong)class316.field2790.peek(); if (var1 == null) { - class305.field2774.pop(); + class316.field2790.pop(); } else { - var1.midiPcmStream = this.method2123(); - class305.musicSongs.add(var1); - class305.field2774.pop(); + var1.midiPcmStream = this.method2142(); + class316.musicSongs.add(var1); + class316.field2790.pop(); } } return true; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Llf;", - garbageValue = "53" + descriptor = "(I)Lmn;", + garbageValue = "1270029666" ) - MidiPcmStream method2123() { + MidiPcmStream method2142() { MidiPcmStream var1 = null; - Iterator var2 = class305.midiPcmStream.iterator(); + Iterator var2 = class316.midiPcmStream.iterator(); while (true) { MidiPcmStream var3; @@ -58,10 +52,10 @@ MidiPcmStream method2123() { do { if (!var2.hasNext()) { if (var1 != null) { - ++var1.field2809; - if (var1.method1629() == 0 && var1.isReady()) { + ++var1.field2830; + if (var1.method1653() == 0 && var1.isReady()) { var1.clear(); - var1.method1633(); + var1.method1657(); var1.setPcmStreamVolume(0); } } @@ -71,26 +65,9 @@ MidiPcmStream method2123() { var3 = (MidiPcmStream)var2.next(); } while(var3 == null); - } while(var1 != null && var1.field2809 <= var3.field2809 && (var3.method1629() != 0 || !var3.isReady())); + } while(var1 != null && var1.field2830 <= var3.field2830 && (var3.method1653() != 0 || !var3.isReady())); var1 = var3; } } - - @ObfuscatedName("ij") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-71" - ) - static final void method2124() { - if (WorldMapIcon_0.field2397) { - for (int var0 = 0; var0 < Players.Players_count; ++var0) { - Player var1 = Client.players[Players.Players_indices[var0]]; - var1.clearIsInClanChat(); - } - - WorldMapIcon_0.field2397 = false; - } - - } } \ No newline at end of file diff --git a/osrs/src/main/java/Animation.java b/osrs/src/main/java/Animation.java index 74091b790..b6f4e193f 100644 --- a/osrs/src/main/java/Animation.java +++ b/osrs/src/main/java/Animation.java @@ -3,51 +3,51 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ia") +@ObfuscatedName("kr") @Implements("Animation") public class Animation { - @ObfuscatedName("au") - static int[] field2000; - @ObfuscatedName("ae") - static int[] field1997; - @ObfuscatedName("ao") - static int[] field1998; @ObfuscatedName("at") - static int[] field1999; - @ObfuscatedName("ac") + static int[] field2183; + @ObfuscatedName("ah") + static int[] field2180; + @ObfuscatedName("ar") + static int[] field2182; + @ObfuscatedName("ao") + static int[] field2181; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Liu;" + descriptor = "Lkd;" ) @Export("skeleton") Skeleton skeleton; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("transformCount") int transformCount; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("transformSkeletonLabels") int[] transformSkeletonLabels; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("transformXs") int[] transformXs; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("transformYs") int[] transformYs; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("transformZs") int[] transformZs; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("hasAlphaTransform") boolean hasAlphaTransform; static { - field2000 = new int[500]; - field1997 = new int[500]; - field1998 = new int[500]; - field1999 = new int[500]; + field2183 = new int[500]; + field2180 = new int[500]; + field2182 = new int[500]; + field2181 = new int[500]; } @ObfuscatedSignature( - descriptor = "([BLiu;)V" + descriptor = "([BLkd;)V" ) Animation(byte[] var1, Skeleton var2) { this.skeleton = null; @@ -69,38 +69,38 @@ public class Animation { if (this.skeleton.transformTypes[var8] != 0) { for (int var10 = var8 - 1; var10 > var6; --var10) { if (this.skeleton.transformTypes[var10] == 0) { - field2000[var7] = var10; - field1997[var7] = 0; - field1998[var7] = 0; - field1999[var7] = 0; + field2183[var7] = var10; + field2180[var7] = 0; + field2182[var7] = 0; + field2181[var7] = 0; ++var7; break; } } } - field2000[var7] = var8; + field2183[var7] = var8; short var11 = 0; if (this.skeleton.transformTypes[var8] == 3) { var11 = 128; } if ((var9 & 1) != 0) { - field1997[var7] = var4.readShortSmart(); + field2180[var7] = var4.readShortSmart(); } else { - field1997[var7] = var11; + field2180[var7] = var11; } if ((var9 & 2) != 0) { - field1998[var7] = var4.readShortSmart(); + field2182[var7] = var4.readShortSmart(); } else { - field1998[var7] = var11; + field2182[var7] = var11; } if ((var9 & 4) != 0) { - field1999[var7] = var4.readShortSmart(); + field2181[var7] = var4.readShortSmart(); } else { - field1999[var7] = var11; + field2181[var7] = var11; } var6 = var8; @@ -121,10 +121,10 @@ public class Animation { this.transformZs = new int[var7]; for (var8 = 0; var8 < var7; ++var8) { - this.transformSkeletonLabels[var8] = field2000[var8]; - this.transformXs[var8] = field1997[var8]; - this.transformYs[var8] = field1998[var8]; - this.transformZs[var8] = field1999[var8]; + this.transformSkeletonLabels[var8] = field2183[var8]; + this.transformXs[var8] = field2180[var8]; + this.transformYs[var8] = field2182[var8]; + this.transformZs[var8] = field2181[var8]; } } diff --git a/osrs/src/main/java/ApproximateRouteStrategy.java b/osrs/src/main/java/ApproximateRouteStrategy.java index df766c9b5..c6e6f1f76 100644 --- a/osrs/src/main/java/ApproximateRouteStrategy.java +++ b/osrs/src/main/java/ApproximateRouteStrategy.java @@ -3,113 +3,511 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cl") +import static net.runelite.rs.ScriptOpcodes.RUNELITE_EXECUTE; + +@ObfuscatedName("cm") @Implements("ApproximateRouteStrategy") public class ApproximateRouteStrategy extends RouteStrategy { + @ObfuscatedName("wd") + @Export("foundItemIndex") + static int foundItemIndex; + ApproximateRouteStrategy() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIILis;B)Z", - garbageValue = "85" + descriptor = "(IIILiw;I)Z", + garbageValue = "729664573" ) @Export("hasArrived") protected boolean hasArrived(int var1, int var2, int var3, CollisionMap var4) { return var2 == super.approxDestinationX && var3 == super.approxDestinationY; } - @ObfuscatedName("au") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-11903000" + descriptor = "(Ldo;Ldt;IIB)V", + garbageValue = "113" ) - static int method342(int var0, int var1) { - if (var0 == -2) { - return 12345678; - } else if (var0 == -1) { - if (var1 < 0) { - var1 = 0; - } else if (var1 > 127) { - var1 = 127; + @Export("runScriptLogic") + static void runScriptLogic(ScriptEvent var0, Script var1, int var2, int var3) { + Object[] var4 = var0.args; + DbTableType.Interpreter_intStackSize = 0; + class127.Interpreter_stringStackSize = 0; + int var5 = -1; + int[] var6 = var1.opcodes; + int[] var7 = var1.intOperands; + byte var8 = -1; + Interpreter.Interpreter_frameDepth = 0; + Interpreter.field702 = false; + boolean var9 = false; + int var10 = 0; + boolean var29 = false; + + label860: { + label861: { + try { + int var13; + try { + var29 = true; + Interpreter.Interpreter_intLocals = new int[var1.localIntCount]; + int var11 = 0; + class60.Interpreter_stringLocals = new String[var1.localStringCount]; + int var12 = 0; + + int var14; + String var20; + for (var13 = 1; var13 < var4.length; ++var13) { + if (var4[var13] instanceof Integer) { + var14 = (Integer)var4[var13]; + if (var14 == -2147483647) { + var14 = var0.mouseX; + } + + if (var14 == -2147483646) { + var14 = var0.mouseY; + } + + if (var14 == -2147483645) { + var14 = var0.widget != null ? var0.widget.id : -1; + } + + if (var14 == -2147483644) { + var14 = var0.opIndex; + } + + if (var14 == -2147483643) { + var14 = var0.widget != null ? var0.widget.childIndex : -1; + } + + if (var14 == -2147483642) { + var14 = var0.dragTarget != null ? var0.dragTarget.id: -1; + } + + if (var14 == -2147483641) { + var14 = var0.dragTarget != null ? var0.dragTarget.childIndex: -1; + } + + if (var14 == -2147483640) { + var14 = var0.keyTyped; + } + + if (var14 == -2147483639) { + var14 = var0.keyPressed; + } + + Interpreter.Interpreter_intLocals[var11++] = var14; + } else if (var4[var13] instanceof String) { + var20 = (String)var4[var13]; + if (var20.equals("event_opbase")) { + var20 = var0.targetName; + } + + class60.Interpreter_stringLocals[var12++] = var20; + } + } + + Interpreter.field705 = var0.field871; + + label841: + while (true) { + ++var10; + if (var10 > var2) { + throw new RuntimeException(); + } + + ++var5; + int var32 = var6[var5]; + if (var32 >= 100) { + boolean var34; + if (var1.intOperands[var5] == 1) { + var34 = true; + } else { + var34 = false; + } + + var14 = class149.opCodeCheck(var32, var1, var34); + switch(var14) { + case 0: + var29 = false; + break label841; + case 1: + default: + break; + case 2: + if(var32 != RUNELITE_EXECUTE) { + throw new IllegalStateException(); + } + } + } else if (var32 == 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7[var5]; + } else if (var32 == 1) { + var13 = var7[var5]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Varps.Varps_main[var13]; + } else if (var32 == 2) { + var13 = var7[var5]; + Varps.Varps_main[var13] = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Projectile.changeGameOptions(var13); + } else if (var32 == 3) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var1.stringOperands[var5]; + } else if (var32 == 6) { + var5 += var7[var5]; + } else if (var32 == 7) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] != Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 8) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] == Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 9) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] < Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 10) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] > Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 21) { + if (Interpreter.Interpreter_frameDepth == 0) { + var29 = false; + break label861; + } + + ScriptFrame var39 = Interpreter.Interpreter_frames[--Interpreter.Interpreter_frameDepth]; + var1 = var39.script; + var6 = var1.opcodes; + var7 = var1.intOperands; + var5 = var39.pc; + Interpreter.Interpreter_intLocals = var39.intLocals; + class60.Interpreter_stringLocals = var39.stringLocals; + } else if (var32 == 25) { + var13 = var7[var5]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = HealthBar.getVarbit(var13); + } else if (var32 == 27) { + var13 = var7[var5]; + ZoneOperation.method1632(var13, Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } else if (var32 == 31) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] <= Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 32) { + DbTableType.Interpreter_intStackSize -= 2; + if (Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] >= Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]) { + var5 += var7[var5]; + } + } else if (var32 == 33) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Interpreter.Interpreter_intLocals[var7[var5]]; + } else if (var32 == 34) { + Interpreter.Interpreter_intLocals[var7[var5]] = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + } else if (var32 == 35) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class60.Interpreter_stringLocals[var7[var5]]; + } else if (var32 == 36) { + class60.Interpreter_stringLocals[var7[var5]] = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + } else if (var32 == 37) { + var13 = var7[var5]; + class127.Interpreter_stringStackSize -= var13; + var20 = BoundaryObject.method1600(Interpreter.Interpreter_stringStack, class127.Interpreter_stringStackSize, var13); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var20; + } else if (var32 == 38) { + --DbTableType.Interpreter_intStackSize; + } else if (var32 == 39) { + --class127.Interpreter_stringStackSize; + } else { + int var17; + if (var32 != 40) { + if (var32 == 42) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class176.varcs.getInt(var7[var5]); + } else if (var32 == 43) { + class176.varcs.setInt(var7[var5], Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } else if (var32 == 44) { + var13 = var7[var5] >> 16; + var14 = var7[var5] & 65535; + int var23 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var23 < 0 || var23 > 5000) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_arrayLengths[var13] = var23; + byte var24 = -1; + if (var14 == 105) { + var24 = 0; + } + + for (var17 = 0; var17 < var23; ++var17) { + Interpreter.Interpreter_arrays[var13][var17] = var24; + } + } else if (var32 == 45) { + var13 = var7[var5]; + var14 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var14 < 0 || var14 >= Interpreter.Interpreter_arrayLengths[var13]) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Interpreter.Interpreter_arrays[var13][var14]; + } else if (var32 == 46) { + var13 = var7[var5]; + DbTableType.Interpreter_intStackSize -= 2; + var14 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + if (var14 < 0 || var14 >= Interpreter.Interpreter_arrayLengths[var13]) { + throw new RuntimeException(); + } + + Interpreter.Interpreter_arrays[var13][var14] = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + } else { + String var21; + if (var32 == 47) { + var21 = class176.varcs.getStringOld(var7[var5]); + if (var21 == null) { + var21 = "null"; + } + + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var21; + } else if (var32 == 48) { + class176.varcs.setStringOld(var7[var5], Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]); + } else if (var32 == 49) { + var21 = class176.varcs.getString(var7[var5]); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var21; + } else if (var32 == 50) { + class176.varcs.setString(var7[var5], Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]); + } else if (var32 == 60) { + IterableNodeHashTable var37 = var1.switches[var7[var5]]; + IntegerNode var36 = (IntegerNode)var37.get((long)Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var36 != null) { + var5 += var36.integer; + } + } else { + Integer var38; + if (var32 == 74) { + var38 = Timer.field3782.getTitleGroupValue(var7[var5]); + if (var38 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var38; + } + } else { + if (var32 != 76) { + throw new IllegalStateException(); + } + + var38 = Client.varclan.method2337(var7[var5]); + if (var38 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var38; + } + } + } + } + } else { + var13 = var7[var5]; + Script var35 = HealthBarUpdate.getScript(var13); + int[] var15 = new int[var35.localIntCount]; + String[] var16 = new String[var35.localStringCount]; + + for (var17 = 0; var17 < var35.intArgumentCount; ++var17) { + var15[var17] = Interpreter.Interpreter_intStack[var17 + (DbTableType.Interpreter_intStackSize - var35.intArgumentCount)]; + } + + for (var17 = 0; var17 < var35.stringArgumentCount; ++var17) { + var16[var17] = Interpreter.Interpreter_stringStack[var17 + (class127.Interpreter_stringStackSize - var35.stringArgumentCount)]; + } + + DbTableType.Interpreter_intStackSize -= var35.intArgumentCount; + class127.Interpreter_stringStackSize -= var35.stringArgumentCount; + ScriptFrame var22 = new ScriptFrame(); + var22.script = var1; + var22.pc = var5; + var22.intLocals = Interpreter.Interpreter_intLocals; + var22.stringLocals = class60.Interpreter_stringLocals; + Interpreter.Interpreter_frames[++Interpreter.Interpreter_frameDepth - 1] = var22; + var1 = var35; + var6 = var35.opcodes; + var7 = var35.intOperands; + var5 = -1; + Interpreter.Interpreter_intLocals = var15; + class60.Interpreter_stringLocals = var16; + } + } + } + } catch (Exception var30) { + var9 = true; + StringBuilder var26 = new StringBuilder(30); + var26.append("").append(var1.key).append(" "); + + for (var13 = Interpreter.Interpreter_frameDepth - 1; var13 >= 0; --var13) { + var26.append("").append(Interpreter.Interpreter_frames[var13].script.key).append(" "); + } + + var26.append("").append(var8); + var30.printStackTrace(); + GrandExchangeOfferWorldComparator.RunException_sendStackTrace(var26.toString(), var30); + var29 = false; + break label860; + } + } finally { + if (var29) { + while (Interpreter.field712.size() > 0) { + class102 var19 = (class102)Interpreter.field712.remove(0); + FloorOverlayDefinition.widgetDefaultMenuAction(var19.method598(), var19.method599(), var19.method600(), var19.method601(), ""); + } + + if (Interpreter.field702) { + Interpreter.field702 = false; + class520.method2526(); + } + + if (!var9 && var3 > 0 && var10 >= var3) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Warning: Script " + var1.instructions + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + } + + } + } + + while (Interpreter.field712.size() > 0) { + class102 var33 = (class102)Interpreter.field712.remove(0); + FloorOverlayDefinition.widgetDefaultMenuAction(var33.method598(), var33.method599(), var33.method600(), var33.method601(), ""); + } + + if (Interpreter.field702) { + Interpreter.field702 = false; + class520.method2526(); + } + + if (!var9 && var3 > 0 && var10 >= var3) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Warning: Script " + var1.instructions + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + } + + return; } - var1 = 127 - var1; - return var1; - } else { - var1 = (var0 & 127) * var1 / 128; - if (var1 < 2) { - var1 = 2; - } else if (var1 > 126) { - var1 = 126; + while (Interpreter.field712.size() > 0) { + class102 var40 = (class102)Interpreter.field712.remove(0); + FloorOverlayDefinition.widgetDefaultMenuAction(var40.method598(), var40.method599(), var40.method600(), var40.method601(), ""); + } + + if (Interpreter.field702) { + Interpreter.field702 = false; + class520.method2526(); } - return (var0 & 65408) + var1; + if (!var9 && var3 > 0 && var10 >= var3) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Warning: Script " + var1.instructions + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + } + + return; } - } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Llw;Lux;I)Lly;", - garbageValue = "1633353192" - ) - @Export("getPacketBufferNode") - public static PacketBufferNode getPacketBufferNode(ClientPacket var0, IsaacCipher var1) { - PacketBufferNode var2 = class146.method779(); - var2.clientPacket = var0; - var2.clientPacketLength = var0.length; - if (var2.clientPacketLength == -1) { - var2.packetBuffer = new PacketBuffer(260); - } else if (var2.clientPacketLength == -2) { - var2.packetBuffer = new PacketBuffer(10000); - } else if (var2.clientPacketLength <= 18) { - var2.packetBuffer = new PacketBuffer(20); - } else if (var2.clientPacketLength <= 98) { - var2.packetBuffer = new PacketBuffer(100); - } else { - var2.packetBuffer = new PacketBuffer(260); + while (Interpreter.field712.size() > 0) { + class102 var25 = (class102)Interpreter.field712.remove(0); + FloorOverlayDefinition.widgetDefaultMenuAction(var25.method598(), var25.method599(), var25.method600(), var25.method601(), ""); + } + + if (Interpreter.field702) { + Interpreter.field702 = false; + class520.method2526(); + } + + if (!var9 && var3 > 0 && var10 >= var3) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Warning: Script " + var1.instructions + " finished at op count " + var10 + " of max " + var2, (Throwable)null); } - var2.packetBuffer.setIsaacCipher(var1); - var2.packetBuffer.writeByteIsaac(var2.clientPacket.id); - var2.index = 0; - return var2; } - @ObfuscatedName("ae") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(II)Lhi;", - garbageValue = "1872404275" + descriptor = "(ILdt;ZI)I", + garbageValue = "1367539098" ) - @Export("VarpDefinition_get") - public static VarpDefinition VarpDefinition_get(int var0) { - VarpDefinition var1 = (VarpDefinition)VarpDefinition.VarpDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = VarpDefinition.VarpDefinition_archive.takeFile(16, var0); - var1 = new VarpDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); + static int method356(int var0, Script var1, boolean var2) { + int var3; + int var4; + int var6; + if (var0 == 3400) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + EnumComposition var5 = ObjectComposition.getEnum(var3); + if (var5.outputType != 's') { + } + + for (var6 = 0; var6 < var5.outputCount; ++var6) { + if (var4 == var5.keys[var6]) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var5.strVals[var6]; + var5 = null; + break; + } + } + + if (var5 != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var5.defaultStr; + } + + return 1; + } else if (var0 != 3408) { + if (var0 == 3411) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + EnumComposition var10 = ObjectComposition.getEnum(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var10.size(); + return 1; + } else { + return 2; } + } else { + DbTableType.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + int var9 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + EnumComposition var7 = ObjectComposition.getEnum(var9); + if (var3 == var7.inputType && var4 == var7.outputType) { + for (int var8 = 0; var8 < var7.outputCount; ++var8) { + if (var6 == var7.keys[var8]) { + if (var4 == 115) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7.strVals[var8]; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7.intVals[var8]; + } + + var7 = null; + break; + } + } + + if (var7 != null) { + if (var4 == 115) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7.defaultStr; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7.defaultInt; + } + } - VarpDefinition.VarpDefinition_cached.put(var1, (long)var0); - return var1; + return 1; + } else { + if (var4 == 115) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = "null"; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } } } - @ObfuscatedName("al") + @ObfuscatedName("iy") @ObfuscatedSignature( - descriptor = "(Lnu;IIB)Z", - garbageValue = "2" + descriptor = "(I)I", + garbageValue = "-2097312971" ) - static boolean method345(AbstractArchive var0, int var1, int var2) { - byte[] var3 = var0.takeFile(var1, var2); - if (var3 == null) { - return false; - } else { - class137.SpriteBuffer_decode(var3); - return true; - } + @Export("getWindowedMode") + static int getWindowedMode() { + return Client.isResizable ? 2 : 1; } } \ No newline at end of file diff --git a/osrs/src/main/java/Archive.java b/osrs/src/main/java/Archive.java index 640ffc084..c74db0feb 100644 --- a/osrs/src/main/java/Archive.java +++ b/osrs/src/main/java/Archive.java @@ -5,94 +5,98 @@ import java.util.zip.CRC32; -@ObfuscatedName("nk") +@ObfuscatedName("oh") @Implements("Archive") public class Archive extends AbstractArchive { - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("Archive_crc") static CRC32 Archive_crc; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lru;" + descriptor = "Lrg;" ) @Export("archiveDisk") ArchiveDisk archiveDisk; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lru;" + descriptor = "Lrg;" ) @Export("masterDisk") ArchiveDisk masterDisk; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("index") int index; - @ObfuscatedName("aa") - volatile int field3525; - @ObfuscatedName("af") - boolean field3516; - @ObfuscatedName("ad") + @ObfuscatedName("al") + volatile int field3557; + @ObfuscatedName("az") + boolean field3548; + @ObfuscatedName("ap") @Export("validGroups") volatile boolean[] validGroups; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("indexCrc") int indexCrc; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("indexVersion") int indexVersion; - @ObfuscatedName("ar") - int field3520; - @ObfuscatedName("ab") - boolean field3515; - @ObfuscatedName("ag") + @ObfuscatedName("ay") + int field3552; + @ObfuscatedName("ak") + boolean field3547; + @ObfuscatedName("aj") + boolean field3546; + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Lnf;" + descriptor = "Loz;" ) - JagNetThread field3521; + JagNetThread field3553; static { Archive_crc = new CRC32(); } @ObfuscatedSignature( - descriptor = "(Lru;Lru;Lnf;IZZZZ)V" + descriptor = "(Lrg;Lrg;Loz;IZZZZZ)V" ) - public Archive(ArchiveDisk var1, ArchiveDisk var2, JagNetThread var3, int var4, boolean var5, boolean var6, boolean var7, boolean var8) { + public Archive(ArchiveDisk var1, ArchiveDisk var2, JagNetThread var3, int var4, boolean var5, boolean var6, boolean var7, boolean var8, boolean var9) { super(var5, var6); - this.field3525 = 0; - this.field3516 = false; - this.field3520 = -1; - this.field3515 = false; + this.field3557 = 0; + this.field3548 = false; + this.field3552 = -1; + this.field3547 = false; + this.field3546 = false; this.archiveDisk = var1; this.masterDisk = var2; this.index = var4; - this.field3516 = var7; - this.field3515 = var8; - this.field3521 = var3; - this.field3521.method1934(this, this.index); + this.field3548 = var7; + this.field3547 = var8; + this.field3546 = var9; + this.field3553 = var3; + this.field3553.method1956(this, this.index); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-432364648" + garbageValue = "2141667286" ) - public boolean method1887() { - return this.field3525 == 1; + public boolean method1912() { + return this.field3557 == 1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-60" + descriptor = "(I)I", + garbageValue = "-2079566791" ) @Export("percentage") public int percentage() { - if (this.field3525 == 1 || this.field3515 && this.field3525 == 2) { + if (this.field3557 == 1 || this.field3547 && this.field3557 == 2) { return 100; } else if (super.groups != null) { return 99; } else { - int var1 = this.field3521.method1938(255, this.index); + int var1 = this.field3553.method1960(255, this.index); if (var1 >= 100) { var1 = 99; } @@ -101,20 +105,20 @@ public int percentage() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1272707955" + garbageValue = "606874642" ) @Export("loadRegionFromGroup") void loadRegionFromGroup(int var1) { - this.field3521.method1937(this.index, var1); + this.field3553.method1959(this.index, var1); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "402130956" + garbageValue = "-412384319" ) @Export("loadGroup") void loadGroup(int var1) { @@ -137,18 +141,18 @@ void loadGroup(int var1) { this.load(var2, var1, var5, true); } } else { - this.field3521.method1936(this, this.index, var1, super.groupCrcs[var1], (byte)2, true); + this.field3553.method1958(this, this.index, var1, super.groupCrcs[var1], (byte)2, true); } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "152861270" ) - void method1891() { - this.field3525 = 2; + void method1916() { + this.field3557 = 2; super.groupIds = new int[0]; super.groupCrcs = new int[0]; super.groupVersions = new int[0]; @@ -158,10 +162,10 @@ void method1891() { super.files = new Object[0][]; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "18" + descriptor = "(III)V", + garbageValue = "949324306" ) @Export("loadIndex") void loadIndex(int var1, int var2) { @@ -187,36 +191,25 @@ void loadIndex(int var1, int var2) { this.load(var4, var3, var7, true); } } else { - this.field3521.method1936(this, 255, this.index, this.indexCrc, (byte)0, true); + this.field3553.method1958(this, 255, this.index, this.indexCrc, (byte)0, true); } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I[BZZI)V", - garbageValue = "1578809524" + garbageValue = "1611170598" ) @Export("write") void write(int var1, byte[] var2, boolean var3, boolean var4) { if (var3) { - if (this.field3525 == 1) { + if (this.field3557 == 1) { throw new RuntimeException(); } if (this.masterDisk != null) { - int var5 = this.index; - ArchiveDisk var6 = this.masterDisk; - ArchiveDiskAction var7 = new ArchiveDiskAction(); - var7.type = 0; - var7.key = (long)var5; - var7.data = var2; - var7.archiveDisk = var6; - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { - ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var7); - } - - UserComparator8.method671(); + CollisionMap.method1134(this.index, var2, this.masterDisk); } this.decodeIndex(var2); @@ -225,127 +218,100 @@ void write(int var1, byte[] var2, boolean var3, boolean var4) { var2[var2.length - 2] = (byte)(super.groupVersions[var1] >> 8); var2[var2.length - 1] = (byte)super.groupVersions[var1]; if (this.archiveDisk != null) { - ArchiveDisk var11 = this.archiveDisk; - ArchiveDiskAction var16 = new ArchiveDiskAction(); - var16.type = 0; - var16.key = (long)var1; - var16.data = var2; - var16.archiveDisk = var11; - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { - ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var16); - } - - UserComparator8.method671(); + CollisionMap.method1134(var1, var2, this.archiveDisk); this.validGroups[var1] = true; } if (var4) { - Object[] var15 = super.groups; - Object var17; - if (var2 == null) { - var17 = null; - } else if (var2.length > 136) { - DirectByteArrayCopier var8 = new DirectByteArrayCopier(); - var8.set(var2); - var17 = var8; - } else { - var17 = var2; - } - - var15[var1] = var17; + super.groups[var1] = VarcInt.method899(var2, false); } } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Lru;I[BZI)V", - garbageValue = "-250323664" + descriptor = "(Lrg;I[BZB)V", + garbageValue = "0" ) @Export("load") public void load(ArchiveDisk var1, int var2, byte[] var3, boolean var4) { int var5; if (var1 == this.masterDisk) { - if (this.field3525 == 1) { + if (this.field3557 == 1) { throw new RuntimeException(); - } else if (var3 == null) { - this.field3521.method1936(this, 255, this.index, this.indexCrc, (byte)0, true); - } else { - Archive_crc.reset(); - Archive_crc.update(var3, 0, var3.length); - var5 = (int)Archive_crc.getValue(); - if (var5 != this.indexCrc) { - this.field3521.method1936(this, 255, this.index, this.indexCrc, (byte)0, true); - } else { - Buffer var6 = new Buffer(class53.decompressBytes(var3)); - int var7 = var6.readUnsignedByte(); - if (var7 != 5 && var7 != 6) { - throw new RuntimeException(var7 + "," + this.index + "," + var2); - } else { - int var8 = 0; - if (var7 >= 6) { - var8 = var6.readInt(); - } + } - if (var8 != this.indexVersion) { - this.field3521.method1936(this, 255, this.index, this.indexCrc, (byte)0, true); - } else { - this.decodeIndex(var3); - this.loadAllLocal(); - } - } - } + if (var3 == null) { + this.field3553.method1958(this, 255, this.index, this.indexCrc, (byte)0, true); + return; } - } else { - if (!var4 && var2 == this.field3520) { - this.field3525 = 1; + + Archive_crc.reset(); + Archive_crc.update(var3, 0, var3.length); + var5 = (int)Archive_crc.getValue(); + if (var5 != this.indexCrc) { + this.field3553.method1958(this, 255, this.index, this.indexCrc, (byte)0, true); + return; } - if (var3 != null && var3.length > 2) { - Archive_crc.reset(); - Archive_crc.update(var3, 0, var3.length - 2); - var5 = (int)Archive_crc.getValue(); - int var11 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255); - if (var5 == super.groupCrcs[var2] && var11 == super.groupVersions[var2]) { - this.validGroups[var2] = true; - if (var4) { - Object[] var12 = super.groups; - Object var9; - if (var3 == null) { - var9 = null; - } else if (var3.length > 136) { - DirectByteArrayCopier var10 = new DirectByteArrayCopier(); - var10.set(var3); - var9 = var10; - } else { - var9 = var3; - } + Buffer var6 = new Buffer(class30.decompressBytes(var3)); + int var7 = var6.readUnsignedByte(); + if (var7 != 5 && var7 != 6) { + throw new RuntimeException(var7 + "," + this.index + "," + var2); + } - var12[var2] = var9; - } + int var8 = 0; + if (var7 >= 6) { + var8 = var6.readInt(); + } - } else { - this.validGroups[var2] = false; - if (this.field3516 || var4) { - this.field3521.method1936(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); - } + if (var8 != this.indexVersion) { + this.field3553.method1958(this, 255, this.index, this.indexCrc, (byte)0, true); + return; + } + this.decodeIndex(var3); + this.loadAllLocal(); + } else { + if (!var4 && var2 == this.field3552) { + this.field3557 = 1; + } + + if (var3 == null || var3.length <= 2) { + this.validGroups[var2] = false; + if (this.field3548 || var4) { + this.field3553.method1958(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); } - } else { + + return; + } + + Archive_crc.reset(); + Archive_crc.update(var3, 0, var3.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] = false; - if (this.field3516 || var4) { - this.field3521.method1936(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); + if (this.field3548 || var4) { + this.field3553.method1958(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4); } + return; + } + + this.validGroups[var2] = true; + if (var4) { + super.groups[var2] = VarcInt.method899(var3, false); } } + } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1319297597" + garbageValue = "-65241547" ) @Export("loadAllLocal") void loadAllLocal() { @@ -357,60 +323,81 @@ void loadAllLocal() { } if (this.archiveDisk == null) { - this.field3525 = 1; + this.field3557 = 1; } else { - this.field3520 = -1; + this.field3552 = -1; for (var1 = 0; var1 < this.validGroups.length; ++var1) { if (super.fileCounts[var1] > 0) { - SceneTilePaint.method1350(var1, this.archiveDisk, this); - this.field3520 = var1; + ArchiveDisk var2 = this.archiveDisk; + ArchiveDiskAction var4 = new ArchiveDiskAction(); + var4.type = 1; + var4.key = (long)var1; + var4.archiveDisk = var2; + var4.archive = this; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var4); + } + + synchronized(ArchiveDiskActionHandler.field3543) { + if (ArchiveDiskActionHandler.field3542 == 0) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.setDaemon(true); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.start(); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.setPriority(5); + } + + ArchiveDiskActionHandler.field3542 = 600; + ArchiveDiskActionHandler.field3541 = false; + } + + this.field3552 = var1; } } - if (this.field3520 == -1) { - this.field3525 = 1; + if (this.field3552 == -1) { + this.field3557 = 1; } } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1917091652" + garbageValue = "-788412100" ) @Export("groupLoadPercent") int groupLoadPercent(int var1) { if (super.groups[var1] != null) { return 100; } else { - return this.validGroups[var1] ? 100 : this.field3521.method1938(this.index, var1); + return this.validGroups[var1] ? 100 : this.field3553.method1960(this.index, var1); } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-354618855" + garbageValue = "1250672154" ) - public boolean method1897(int var1) { + public boolean method1922(int var1) { return this.validGroups[var1]; } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1031243198" + descriptor = "(IB)Z", + garbageValue = "48" ) - public boolean method1898(int var1) { + public boolean method1923(int var1) { return this.getGroupFileIds(var1) != null; } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-91850240" + garbageValue = "939033209" ) @Export("loadPercent") public int loadPercent() { diff --git a/osrs/src/main/java/ArchiveDisk.java b/osrs/src/main/java/ArchiveDisk.java index ceeb82c84..a506b0ca5 100644 --- a/osrs/src/main/java/ArchiveDisk.java +++ b/osrs/src/main/java/ArchiveDisk.java @@ -6,28 +6,28 @@ import java.io.EOFException; import java.io.IOException; -@ObfuscatedName("ru") +@ObfuscatedName("rg") @Implements("ArchiveDisk") public final class ArchiveDisk { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("ArchiveDisk_buffer") static byte[] ArchiveDisk_buffer; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ltd;" + descriptor = "Ltr;" ) @Export("datFile") BufferedFile datFile; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ltd;" + descriptor = "Ltr;" ) @Export("idxFile") BufferedFile idxFile; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("archive") int archive; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("maxEntrySize") int maxEntrySize; @@ -36,7 +36,7 @@ public final class ArchiveDisk { } @ObfuscatedSignature( - descriptor = "(ILtd;Ltd;I)V" + descriptor = "(ILtr;Ltr;I)V" ) public ArchiveDisk(int var1, BufferedFile var2, BufferedFile var3, int var4) { this.datFile = null; @@ -48,10 +48,10 @@ public ArchiveDisk(int var1, BufferedFile var2, BufferedFile var3, int var4) { this.maxEntrySize = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)[B", - garbageValue = "1248586811" + descriptor = "(IB)[B", + garbageValue = "1" ) @Export("read") public byte[] read(int var1) { @@ -96,7 +96,7 @@ public byte[] read(int var1) { } var13 = 10; - this.datFile.read(ArchiveDisk_buffer, 0, var8 + var13); + this.datFile.read(ArchiveDisk_buffer, 0, var13 + var8); var9 = ((ArchiveDisk_buffer[1] & 255) << 16) + ((ArchiveDisk_buffer[0] & 255) << 24) + (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); var10 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[4] & 255) << 8); var11 = (ArchiveDisk_buffer[8] & 255) + ((ArchiveDisk_buffer[7] & 255) << 8) + ((ArchiveDisk_buffer[6] & 255) << 16); @@ -107,7 +107,7 @@ public byte[] read(int var1) { } var13 = 8; - this.datFile.read(ArchiveDisk_buffer, 0, var13 + var8); + this.datFile.read(ArchiveDisk_buffer, 0, var8 + var13); var9 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8); var10 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8); var11 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255); @@ -148,10 +148,10 @@ public byte[] read(int var1) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I[BIB)Z", - garbageValue = "-86" + descriptor = "(I[BII)Z", + garbageValue = "-1602122838" ) @Export("write") public boolean write(int var1, byte[] var2, int var3) { @@ -169,10 +169,10 @@ public boolean write(int var1, byte[] var2, int var3) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I[BIZI)Z", - garbageValue = "-1401240217" + descriptor = "(I[BIZB)Z", + garbageValue = "-47" ) @Export("write0") boolean write0(int var1, byte[] var2, int var3, boolean var4) { @@ -262,7 +262,7 @@ boolean write0(int var1, byte[] var2, int var3, boolean var4) { ++var9; } - if (var9 == var6) { + if (var6 == var9) { ++var9; } } @@ -304,7 +304,7 @@ boolean write0(int var1, byte[] var2, int var3, boolean var4) { ArchiveDisk_buffer[5] = (byte)(var9 >> 8); ArchiveDisk_buffer[6] = (byte)var9; ArchiveDisk_buffer[7] = (byte)this.archive; - this.datFile.seek(520L * (long)var6); + this.datFile.seek((long)var6 * 520L); this.datFile.write(ArchiveDisk_buffer, 0, 8); var10 = var3 - var7; if (var10 > 512) { @@ -335,28 +335,4 @@ boolean write0(int var1, byte[] var2, int var3, boolean var4) { public String toString() { return "" + this.archive; } - - @ObfuscatedName("hs") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1458737660" - ) - @Export("logOut") - static final void logOut() { - Client.packetWriter.close(); - Tiles.method461(); - class130.scene.clear(); - - for (int var0 = 0; var0 < 4; ++var0) { - Client.collisionMaps[var0].clear(); - } - - Client.field423.method1090(); - System.gc(); - Script.method445(0, 0); - UrlRequester.method652(); - Client.playingJingle = false; - class388.method2029(); - MusicSong.updateGameState(10); - } } \ No newline at end of file diff --git a/osrs/src/main/java/ArchiveDiskAction.java b/osrs/src/main/java/ArchiveDiskAction.java index e5ec05058..2296d900b 100644 --- a/osrs/src/main/java/ArchiveDiskAction.java +++ b/osrs/src/main/java/ArchiveDiskAction.java @@ -3,28 +3,319 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nw") +import java.util.Date; + +@ObfuscatedName("or") @Implements("ArchiveDiskAction") public class ArchiveDiskAction extends Node { - @ObfuscatedName("au") + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Liu;" + ) + @Export("clock") + static Clock clock; + @ObfuscatedName("at") @Export("type") int type; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("data") public byte[] data; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lru;" + descriptor = "Lrg;" ) @Export("archiveDisk") public ArchiveDisk archiveDisk; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Loh;" ) @Export("archive") public Archive archive; ArchiveDiskAction() { } + + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "20" + ) + static int method1909(int var0, Script var1, boolean var2) { + String var3; + int var4; + if (var0 == 4100) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3 + var4; + return 1; + } else { + String var9; + if (var0 == 4101) { + class127.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3 + var9; + return 1; + } else if (var0 == 4102) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3 + SceneTilePaint.intToString(var4, true); + return 1; + } else if (var0 == 4103) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.toLowerCase(); + return 1; + } else { + int var6; + int var10; + if (var0 == 4104) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + long var11 = (11745L + (long)var10) * 86400000L; + Interpreter.Interpreter_calendar.setTime(new Date(var11)); + var6 = Interpreter.Interpreter_calendar.get(5); + int var17 = Interpreter.Interpreter_calendar.get(2); + int var8 = Interpreter.Interpreter_calendar.get(1); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var17] + "-" + var8; + return 1; + } else if (var0 != 4105) { + if (var0 == 4106) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = Integer.toString(var10); + return 1; + } else if (var0 == 4107) { + class127.Interpreter_stringStackSize -= 2; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = GrandExchangeOfferAgeComparator.method1970(class189.compareStrings(Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize], Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1], class85.clientLanguage)); + return 1; + } else { + int var5; + byte[] var13; + Font var14; + if (var0 == 4108) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var13 = VarbitComposition.archive13.takeFile(var5, 0); + var14 = new Font(var13); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var14.lineCount(var3, var4); + return 1; + } else if (var0 == 4109) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var13 = VarbitComposition.archive13.takeFile(var5, 0); + var14 = new Font(var13); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var14.lineWidth(var3, var4); + return 1; + } else if (var0 == 4110) { + class127.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + if (Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9; + } + + return 1; + } else if (var0 == 4111) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = AbstractFont.escapeBrackets(var3); + return 1; + } else if (var0 == 4112) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3 + (char)var4; + return 1; + } else if (var0 == 4113) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapElement.isCharPrintable((char)var10) ? 1 : 0; + return 1; + } else if (var0 == 4114) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = KeyHandler.isAlphaNumeric((char)var10) ? 1 : 0; + return 1; + } else if (var0 == 4115) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class10.isCharAlphabetic((char)var10) ? 1 : 0; + return 1; + } else if (var0 == 4116) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Player.isDigit((char)var10) ? 1 : 0; + return 1; + } else if (var0 == 4117) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + if (var3 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.length(); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 4118) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.substring(var4, var5); + return 1; + } else if (var0 == 4119) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + StringBuilder var18 = new StringBuilder(var3.length()); + boolean var16 = false; + + for (var6 = 0; var6 < var3.length(); ++var6) { + char var7 = var3.charAt(var6); + if (var7 == '<') { + var16 = true; + } else if (var7 == '>') { + var16 = false; + } else if (!var16) { + var18.append(var7); + } + } + + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var18.toString(); + return 1; + } else if (var0 == 4120) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.indexOf(var4); + return 1; + } else if (var0 == 4121) { + class127.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.indexOf(var9, var5); + return 1; + } else if (var0 == 4122) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.toUpperCase(); + return 1; + } else if (var0 == 4123) { + class127.Interpreter_stringStackSize -= 3; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + String var15 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 2]; + if (class229.localPlayer.appearance == null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var15; + return 1; + } else { + switch(class229.localPlayer.appearance.field2948) { + case 0: + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3; + break; + case 1: + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9; + break; + case 2: + default: + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var15; + } + + return 1; + } + } else { + return 2; + } + } + } else { + class127.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + var9 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + if (class229.localPlayer.appearance != null && class229.localPlayer.appearance.field2947 != 0) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3; + } + + return 1; + } + } + } + } + + @ObfuscatedName("lr") + @ObfuscatedSignature( + descriptor = "(Lds;IIIB)V", + garbageValue = "0" + ) + @Export("addPlayerToMenu") + static final void addPlayerToMenu(Player var0, int var1, int var2, int var3) { + if (class229.localPlayer != var0) { + if (Client.menuOptionsCount < 400) { + String var4; + if (var0.skillLevel == 0) { + var4 = var0.actions[0] + var0.username + var0.actions[1] + class28.method126(var0.combatLevel, class229.localPlayer.combatLevel) + " " + " (" + "level-" + var0.combatLevel + ")" + var0.actions[2]; + } else { + var4 = var0.actions[0] + var0.username + var0.actions[1] + " " + " (" + "skill-" + var0.skillLevel + ")" + var0.actions[2]; + } + + int var5; + if (Client.isItemSelected == 1) { + WorldMapSectionType.insertMenuItemNoShift("Use", Client.field597 + " " + "->" + " " + class167.colorStartTag(16777215) + var4, 14, var1, var2, var3); + } else if (Client.isSpellSelected) { + if ((UrlRequest.selectedSpellFlags & 8) == 8) { + WorldMapSectionType.insertMenuItemNoShift(Client.field599, Client.field598 + " " + "->" + " " + class167.colorStartTag(16777215) + var4, 15, var1, var2, var3); + } + } else { + for (var5 = 7; var5 >= 0; --var5) { + if (Client.playerMenuActions[var5] != null) { + short var6 = 0; + if (Client.playerMenuActions[var5].equalsIgnoreCase("Attack")) { + if (Client.playerAttackOption == AttackOption.AttackOption_hidden) { + continue; + } + + if (Client.playerAttackOption == AttackOption.AttackOption_alwaysRightClick || AttackOption.AttackOption_dependsOnCombatLevels == Client.playerAttackOption && var0.combatLevel > class229.localPlayer.combatLevel) { + var6 = 2000; + } + + if (class229.localPlayer.team != 0 && var0.team != 0) { + if (var0.team == class229.localPlayer.team) { + var6 = 2000; + } else { + var6 = 0; + } + } else if (Client.playerAttackOption == AttackOption.field1103 && var0.isClanMember()) { + var6 = 2000; + } + } else if (Client.playerOptionsPriorities[var5]) { + var6 = 2000; + } + + boolean var7 = false; + int var8 = Client.playerMenuOpcodes[var5] + var6; + WorldMapSectionType.insertMenuItemNoShift(Client.playerMenuActions[var5], class167.colorStartTag(16777215) + var4, var8, var1, var2, var3); + } + } + } + + for (var5 = 0; var5 < Client.menuOptionsCount; ++var5) { + if (Client.menuOpcodes[var5] == 23) { + Client.menuTargets[var5] = class167.colorStartTag(16777215) + var4; + break; + } + } + + } + } + } + + @ObfuscatedName("mu") + @ObfuscatedSignature( + descriptor = "(Lnn;I)Lnn;", + garbageValue = "725672133" + ) + static Widget method1911(Widget var0) { + Widget var1 = class227.method1165(var0); + if (var1 == null) { + var1 = var0.parent; + } + + return var1; + } } \ No newline at end of file diff --git a/osrs/src/main/java/ArchiveDiskActionHandler.java b/osrs/src/main/java/ArchiveDiskActionHandler.java index f8c980713..9b57e938e 100644 --- a/osrs/src/main/java/ArchiveDiskActionHandler.java +++ b/osrs/src/main/java/ArchiveDiskActionHandler.java @@ -3,34 +3,37 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ny") +@ObfuscatedName("ox") @Implements("ArchiveDiskActionHandler") public class ArchiveDiskActionHandler implements Runnable { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("ArchiveDiskActionHandler_requestQueue") public static final NodeDeque ArchiveDiskActionHandler_requestQueue; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("ArchiveDiskActionHandler_responseQueue") public static NodeDeque ArchiveDiskActionHandler_responseQueue; + @ObfuscatedName("ar") + static int field3542; @ObfuscatedName("ao") - static int field3512; - @ObfuscatedName("at") - static boolean field3511; - @ObfuscatedName("ac") - static Object field3513; + static boolean field3541; + @ObfuscatedName("ab") + static Object field3543; + @ObfuscatedName("au") + @Export("ArchiveDiskActionHandler_thread") + static Thread ArchiveDiskActionHandler_thread; static { ArchiveDiskActionHandler_requestQueue = new NodeDeque(); ArchiveDiskActionHandler_responseQueue = new NodeDeque(); - field3512 = 0; - field3511 = false; - field3513 = new Object(); + field3542 = 0; + field3541 = false; + field3543 = new Object(); } ArchiveDiskActionHandler() { @@ -59,291 +62,30 @@ public void run() { } } - synchronized(field3513) { - if ((field3511 || field3512 <= 1) && ArchiveDiskActionHandler_requestQueue.method1997()) { - field3512 = 0; - field3513.notifyAll(); + synchronized(field3543) { + if ((field3541 || field3542 <= 1) && ArchiveDiskActionHandler_requestQueue.method2016()) { + field3542 = 0; + field3543.notifyAll(); return; } - field3512 = 600; + field3542 = 600; } } else { - PendingSpawn.method505(100L); - synchronized(field3513) { - if ((field3511 || field3512 <= 1) && ArchiveDiskActionHandler_requestQueue.method1997()) { - field3512 = 0; - field3513.notifyAll(); + class219.method1104(100L); + synchronized(field3543) { + if ((field3541 || field3542 <= 1) && ArchiveDiskActionHandler_requestQueue.method2016()) { + field3542 = 0; + field3543.notifyAll(); return; } - --field3512; + --field3542; } } } } catch (Exception var13) { - Messages.RunException_sendStackTrace((String)null, var13); - } - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-224365630" - ) - static void method1884() { - ItemComposition.field1768 = new int[2000]; - int var0 = 0; - int var1 = 240; - - int var3; - for (byte var2 = 12; var0 < 16; var1 -= var2) { - var3 = ArchiveLoader.method463((double)((float)var1 / 360.0F), 0.9998999834060669D, (double)((float)var0 * 0.425F / 16.0F + 0.075F)); - ItemComposition.field1768[var0] = var3; - ++var0; - } - - var1 = 48; - - for (int var5 = var1 / 6; var0 < ItemComposition.field1768.length; var1 -= var5) { - var3 = var0 * 2; - - for (int var4 = ArchiveLoader.method463((double)((float)var1 / 360.0F), 0.9998999834060669D, 0.5D); var0 < var3 && var0 < ItemComposition.field1768.length; ++var0) { - ItemComposition.field1768[var0] = var4; - } - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "63" - ) - public static final boolean method1885(char var0) { - return var0 == 160 || var0 == ' ' || var0 == '_' || var0 == '-'; - } - - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "5" - ) - static int method1886(int var0, Script var1, boolean var2) { - if (var0 == 5000) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.publicChatMode; - return 1; - } else if (var0 == 5001) { - SoundCache.Interpreter_intStackSize -= 3; - Client.publicChatMode = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - class128.privateChatMode = DevicePcmPlayerProvider.method74(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - if (class128.privateChatMode == null) { - class128.privateChatMode = PrivateChatMode.field4271; - } - - Client.tradeChatMode = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - PacketBufferNode var11 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.SET_CHATFILTERSETTINGS, Client.packetWriter.isaacCipher); - var11.packetBuffer.writeByte(Client.publicChatMode); - var11.packetBuffer.writeByte(class128.privateChatMode.id); - var11.packetBuffer.writeByte(Client.tradeChatMode); - Client.packetWriter.addNode(var11); - return 1; - } else { - String var3; - int var4; - int var5; - PacketBufferNode var6; - if (var0 == 5002) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var6 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.SEND_SNAPSHOT, Client.packetWriter.isaacCipher); - var6.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var3) + 2); - var6.packetBuffer.writeStringCp1252NullTerminated(var3); - var6.packetBuffer.writeByte(var4 - 1); - var6.packetBuffer.writeByte(var5); - Client.packetWriter.addNode(var6); - return 1; - } else { - int var7; - Message var8; - if (var0 == 5003) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var8 = AbstractByteArrayCopier.Messages_getByChannelAndID(var7, var4); - if (var8 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.count; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.cycle; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.sender != null ? var8.sender : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.prefix != null ? var8.prefix : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.text != null ? var8.text : ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.isFromFriend() ? 1 : (var8.isFromIgnored() ? 2 : 0); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else { - Message var9; - if (var0 == 5004) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var9 = class33.Messages_getMessage(var7); - if (var9 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.type; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.cycle; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.sender != null ? var9.sender : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.prefix != null ? var9.prefix : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.text != null ? var9.text : ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.isFromFriend() ? 1 : (var9.isFromIgnored() ? 2 : 0); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 5005) { - if (class128.privateChatMode == null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class128.privateChatMode.id; - } - - return 1; - } else { - PacketBufferNode var12; - if (var0 == 5008) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = Actor.method510(var4, var3, ClanChannelMember.clientLanguage, -1); - Client.packetWriter.addNode(var12); - return 1; - } else if (var0 == 5009) { - class137.Interpreter_stringStackSize -= 2; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - String var13 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - var12 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.MESSAGE_PRIVATE, Client.packetWriter.isaacCipher); - var12.packetBuffer.writeShort(0); - int var10 = var12.packetBuffer.offset; - var12.packetBuffer.writeStringCp1252NullTerminated(var3); - class216.method1127(var12.packetBuffer, var13); - var12.packetBuffer.writeLengthShort(var12.packetBuffer.offset - var10); - Client.packetWriter.addNode(var12); - return 1; - } else if (var0 == 5010) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var6 = Actor.method510(var4, var3, ClanChannelMember.clientLanguage, var5); - Client.packetWriter.addNode(var6); - return 1; - } else if (var0 != 5015) { - if (var0 == 5016) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.tradeChatMode; - return 1; - } else if (var0 == 5017) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = HorizontalAlignment.Messages_getHistorySize(var7); - return 1; - } else if (var0 == 5018) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ClientPacket.Messages_getLastChatID(var7); - return 1; - } else if (var0 == 5019) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ClanChannelMember.method776(var7); - return 1; - } else if (var0 == 5020) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class85.doCheat(var3); - return 1; - } else if (var0 == 5021) { - Client.field602 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize].toLowerCase().trim(); - return 1; - } else if (var0 == 5022) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = Client.field602; - return 1; - } else if (var0 == 5023) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - System.out.println(var3); - return 1; - } else if (var0 == 5030) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var8 = AbstractByteArrayCopier.Messages_getByChannelAndID(var7, var4); - if (var8 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.count; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.cycle; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.sender != null ? var8.sender : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.prefix != null ? var8.prefix : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.text != null ? var8.text : ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.isFromFriend() ? 1 : (var8.isFromIgnored() ? 2 : 0); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 5031) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var9 = class33.Messages_getMessage(var7); - if (var9 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.type; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.cycle; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.sender != null ? var9.sender : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.prefix != null ? var9.prefix : ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9.text != null ? var9.text : ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var9.isFromFriend() ? 1 : (var9.isFromIgnored() ? 2 : 0); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else { - return 2; - } - } else { - if (VarbitComposition.localPlayer != null && VarbitComposition.localPlayer.username != null) { - var3 = VarbitComposition.localPlayer.username.getName(); - } else { - var3 = ""; - } - - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3; - return 1; - } - } - } - } + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var13); } } } \ No newline at end of file diff --git a/osrs/src/main/java/ArchiveLoader.java b/osrs/src/main/java/ArchiveLoader.java index f085eb7c5..f55366fa1 100644 --- a/osrs/src/main/java/ArchiveLoader.java +++ b/osrs/src/main/java/ArchiveLoader.java @@ -3,30 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dg") +@ObfuscatedName("dh") @Implements("ArchiveLoader") public class ArchiveLoader { - @ObfuscatedName("ks") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("headIconHintSprites") - static SpritePixels[] headIconHintSprites; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Loh;" ) @Export("archive") final Archive archive; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("groupCount") final int groupCount; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("loadedCount") int loadedCount; @ObfuscatedSignature( - descriptor = "(Lnk;Ljava/lang/String;)V" + descriptor = "(Loh;Ljava/lang/String;)V" ) ArchiveLoader(Archive var1, String var2) { this.loadedCount = 0; @@ -34,17 +28,17 @@ public class ArchiveLoader { this.groupCount = var1.getGroupCount(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-533040087" + garbageValue = "2136927523" ) @Export("isLoaded") boolean isLoaded() { this.loadedCount = 0; for (int var1 = 0; var1 < this.groupCount; ++var1) { - if (!this.archive.method1898(var1) || this.archive.method1897(var1)) { + if (!this.archive.method1923(var1) || this.archive.method1922(var1)) { ++this.loadedCount; } } @@ -52,59 +46,20 @@ boolean isLoaded() { return this.loadedCount >= this.groupCount; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;IZB)Ljt;", - garbageValue = "14" - ) - public static Frames method464(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { - boolean var4 = true; - int[] var5 = var0.getGroupFileIds(var2); - - for (int var6 = 0; var6 < var5.length; ++var6) { - byte[] var7 = var0.getFile(var2, var5[var6]); - if (var7 == null) { - var4 = false; - } else { - int var8 = (var7[0] & 255) << 8 | var7[1] & 255; - byte[] var9; - if (var3) { - var9 = var1.getFile(0, var8); - } else { - var9 = var1.getFile(var8, 0); - } - - if (var9 == null) { - var4 = false; - } - } - } - - if (!var4) { - return null; - } else { - try { - return new Frames(var0, var1, var2, var3); - } catch (Exception var11) { - return null; - } - } - } - - @ObfuscatedName("au") - public static final int method463(double var0, double var2, double var4) { + @ObfuscatedName("at") + public static final int method459(double var0, double var2, double var4) { double var6 = var4; double var8 = var4; double var10 = var4; - if (var2 != 0.0D) { + if (0.0D != var2) { double var12; if (var4 < 0.5D) { - var12 = var4 * (var2 + 1.0D); + var12 = (var2 + 1.0D) * var4; } else { - var12 = var4 + var2 - var4 * var2; + var12 = var2 + var4 - var2 * var4; } - double var14 = var4 * 2.0D - var12; + double var14 = 2.0D * var4 - var12; double var16 = var0 + 0.3333333333333333D; if (var16 > 1.0D) { --var16; @@ -115,32 +70,32 @@ public static final int method463(double var0, double var2, double var4) { ++var20; } - if (var16 * 6.0D < 1.0D) { - var6 = var16 * (var12 - var14) * 6.0D + var14; + if (6.0D * var16 < 1.0D) { + var6 = (var12 - var14) * 6.0D * var16 + var14; } else if (var16 * 2.0D < 1.0D) { var6 = var12; - } else if (var16 * 3.0D < 2.0D) { + } else if (3.0D * var16 < 2.0D) { var6 = 6.0D * (0.6666666666666666D - var16) * (var12 - var14) + var14; } else { var6 = var14; } if (6.0D * var0 < 1.0D) { - var8 = var0 * 6.0D * (var12 - var14) + var14; - } else if (2.0D * var0 < 1.0D) { + var8 = var14 + 6.0D * (var12 - var14) * var0; + } else if (var0 * 2.0D < 1.0D) { var8 = var12; - } else if (3.0D * var0 < 2.0D) { - var8 = (var12 - var14) * (0.6666666666666666D - var0) * 6.0D + var14; + } else if (var0 * 3.0D < 2.0D) { + var8 = var14 + (var12 - var14) * (0.6666666666666666D - var0) * 6.0D; } else { var8 = var14; } - if (var20 * 6.0D < 1.0D) { - var10 = var20 * 6.0D * (var12 - var14) + var14; + if (6.0D * var20 < 1.0D) { + var10 = var14 + var20 * 6.0D * (var12 - var14); } else if (2.0D * var20 < 1.0D) { var10 = var12; } else if (var20 * 3.0D < 2.0D) { - var10 = (var12 - var14) * (0.6666666666666666D - var20) * 6.0D + var14; + var10 = var14 + 6.0D * (0.6666666666666666D - var20) * (var12 - var14); } else { var10 = var14; } @@ -153,35 +108,22 @@ public static final int method463(double var0, double var2, double var4) { return var15; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)Lew;", - garbageValue = "-1390229612" + descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "2035865306" ) - static class128 method466(int var0) { - class128 var1 = (class128)KeyHandler.findEnumerated(FileSystem.method912(), var0); - if (var1 == null) { - var1 = class128.field1229; + @Export("addChatMessage") + static void addChatMessage(int var0, String var1, String var2, String var3) { + ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0); + if (var4 == null) { + var4 = new ChatChannel(); + Messages.Messages_channels.put(var0, var4); } - return var1; - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(Lmi;II)V", - garbageValue = "468246736" - ) - @Export("Widget_setKeyIgnoreHeld") - static final void Widget_setKeyIgnoreHeld(Widget var0, int var1) { - if (var0.field2977 == null) { - throw new RuntimeException(); - } else { - if (var0.field3055 == null) { - var0.field3055 = new int[var0.field2977.length]; - } - - var0.field3055[var1] = Integer.MAX_VALUE; - } + Message var5 = var4.addMessage(var0, var1, var2, var3); + Messages.Messages_hashTable.put(var5, (long)var5.count); + Messages.Messages_queue.add(var5); + Client.chatCycle = Client.cycleCntr; } } \ No newline at end of file diff --git a/osrs/src/main/java/AttackOption.java b/osrs/src/main/java/AttackOption.java index 288855654..09e809412 100644 --- a/osrs/src/main/java/AttackOption.java +++ b/osrs/src/main/java/AttackOption.java @@ -3,50 +3,39 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dc") +@ObfuscatedName("dy") @Implements("AttackOption") -public enum AttackOption implements class371 { - @ObfuscatedName("au") +public enum AttackOption implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) @Export("AttackOption_dependsOnCombatLevels") AttackOption_dependsOnCombatLevels(0), - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) @Export("AttackOption_alwaysRightClick") AttackOption_alwaysRightClick(1), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) - field1099(2), - @ObfuscatedName("at") + field1106(2), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) @Export("AttackOption_hidden") AttackOption_hidden(3), - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) - field1097(4); + field1103(4); - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "Luq;" - ) - @Export("rasterProvider") - public static AbstractRasterProvider rasterProvider; - @ObfuscatedName("fr") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field1096; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("id") final int id; @@ -54,158 +43,32 @@ public enum AttackOption implements class371 { this.id = var3; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("bf") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-76" + descriptor = "(B)V", + garbageValue = "-99" ) - static int method607(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 4200) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = InvDefinition.ItemDefinition_get(var3).name; - return 1; - } else { - int var4; - ItemComposition var5; - if (var0 == 4201) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = InvDefinition.ItemDefinition_get(var3); - if (var4 >= 1 && var4 <= 5 && var5.groundActions[var4 - 1] != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var5.groundActions[var4 - 1]; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 4202) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = InvDefinition.ItemDefinition_get(var3); - if (var4 >= 1 && var4 <= 5 && var5.inventoryActions[var4 - 1] != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var5.inventoryActions[var4 - 1]; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 4203) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).price; - return 1; - } else if (var0 == 4204) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).isStackable == 1 ? 1 : 0; - return 1; - } else { - ItemComposition var6; - if (var0 == 4205) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = InvDefinition.ItemDefinition_get(var3); - if (var6.noteTemplate == -1 && var6.note >= 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.note; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - } - - return 1; - } else if (var0 == 4206) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = InvDefinition.ItemDefinition_get(var3); - if (var6.noteTemplate >= 0 && var6.note >= 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.note; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - } - - return 1; - } else if (var0 == 4207) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).isMembersOnly ? 1 : 0; - return 1; - } else if (var0 == 4208) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = InvDefinition.ItemDefinition_get(var3); - if (var6.placeholderTemplate == -1 && var6.placeholder >= 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.placeholder; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - } - - return 1; - } else if (var0 == 4209) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = InvDefinition.ItemDefinition_get(var3); - if (var6.placeholderTemplate >= 0 && var6.placeholder >= 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.placeholder; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - } - - return 1; - } else if (var0 == 4210) { - String var7 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class161.findItemDefinitions(var7, var4 == 1); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class28.foundItemIdCount; - return 1; - } else if (var0 != 4211) { - if (var0 == 4212) { - class372.foundItemIndex = 0; - return 1; - } else if (var0 == 4213) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var4 = InvDefinition.ItemDefinition_get(var3).getShiftClickIndex(); - if (var4 == -1) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 + 1; - } - - return 1; - } else if (var0 == 4214) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).maleModel; - return 1; - } else if (var0 == 4215) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).maleModel1; - return 1; - } else if (var0 == 4216) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).maleModel2; - return 1; - } else if (var0 == 4217) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = InvDefinition.ItemDefinition_get(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.field1806; - return 1; - } else { - return 2; - } - } else { - if (class156.foundItemIds != null && class372.foundItemIndex < class28.foundItemIdCount) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class156.foundItemIds[++class372.foundItemIndex - 1] & '\uffff'; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } + public static void method606() { + HealthBarDefinition.HealthBarDefinition_cached.clear(); + HealthBarDefinition.ItemDefinition_cachedModels.clear(); + } - return 1; - } - } - } + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "3" + ) + static final void method607() { + WorldMapArea.method1213("Your friend list is full. Max of 200 for free users, and 400 for members"); } } \ No newline at end of file diff --git a/osrs/src/main/java/AudioFilter.java b/osrs/src/main/java/AudioFilter.java index f84cfc0c3..e6312e109 100644 --- a/osrs/src/main/java/AudioFilter.java +++ b/osrs/src/main/java/AudioFilter.java @@ -3,154 +3,154 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cr") +@ObfuscatedName("ci") @Implements("AudioFilter") public class AudioFilter { - @ObfuscatedName("ai") - static float[][] field301; - @ObfuscatedName("az") + @ObfuscatedName("au") + static float[][] field295; + @ObfuscatedName("aa") @Export("coefficients") static int[][] coefficients; - @ObfuscatedName("ap") - static float field300; - @ObfuscatedName("aa") + @ObfuscatedName("ac") + static float field294; + @ObfuscatedName("al") @Export("forwardMultiplier") static int forwardMultiplier; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("pairs") int[] pairs; + @ObfuscatedName("ar") + int[][][] field301; @ObfuscatedName("ao") - int[][][] field306; - @ObfuscatedName("at") - int[][][] field307; - @ObfuscatedName("ac") - int[] field304; + int[][][] field300; + @ObfuscatedName("ab") + int[] field298; static { - field301 = new float[2][8]; + field295 = new float[2][8]; coefficients = new int[2][8]; } AudioFilter() { this.pairs = new int[2]; - this.field306 = new int[2][2][4]; - this.field307 = new int[2][2][4]; - this.field304 = new int[2]; + this.field301 = new int[2][2][4]; + this.field300 = new int[2][2][4]; + this.field298 = new int[2]; } - @ObfuscatedName("au") - float method316(int var1, int var2, float var3) { - float var4 = (float)this.field307[var1][0][var2] + var3 * (float)(this.field307[var1][1][var2] - this.field307[var1][0][var2]); + @ObfuscatedName("at") + float method324(int var1, int var2, float var3) { + float var4 = (float)this.field300[var1][0][var2] + var3 * (float)(this.field300[var1][1][var2] - this.field300[var1][0][var2]); var4 *= 0.0015258789F; return 1.0F - (float)Math.pow(10.0D, (double)(-var4 / 20.0F)); } - @ObfuscatedName("ao") - float method318(int var1, int var2, float var3) { - float var4 = (float)this.field306[var1][0][var2] + var3 * (float)(this.field306[var1][1][var2] - this.field306[var1][0][var2]); + @ObfuscatedName("ar") + float method326(int var1, int var2, float var3) { + float var4 = (float)this.field301[var1][0][var2] + var3 * (float)(this.field301[var1][1][var2] - this.field301[var1][0][var2]); var4 *= 1.2207031E-4F; return normalize(var4); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("compute") int compute(int var1, float var2) { float var3; if (var1 == 0) { - var3 = (float)this.field304[0] + (float)(this.field304[1] - this.field304[0]) * var2; + var3 = (float)this.field298[0] + (float)(this.field298[1] - this.field298[0]) * var2; var3 *= 0.0030517578F; - field300 = (float)Math.pow(0.1D, (double)(var3 / 20.0F)); - forwardMultiplier = (int)(field300 * 65536.0F); + field294 = (float)Math.pow(0.1D, (double)(var3 / 20.0F)); + forwardMultiplier = (int)(field294 * 65536.0F); } if (this.pairs[var1] == 0) { return 0; } else { - var3 = this.method316(var1, 0, var2); - field301[var1][0] = -2.0F * var3 * (float)Math.cos((double)this.method318(var1, 0, var2)); - field301[var1][1] = var3 * var3; + var3 = this.method324(var1, 0, var2); + field295[var1][0] = -2.0F * var3 * (float)Math.cos((double)this.method326(var1, 0, var2)); + field295[var1][1] = var3 * var3; float[] var10000; int var4; for (var4 = 1; var4 < this.pairs[var1]; ++var4) { - var3 = this.method316(var1, var4, var2); - float var5 = -2.0F * var3 * (float)Math.cos((double)this.method318(var1, var4, var2)); + var3 = this.method324(var1, var4, var2); + float var5 = -2.0F * var3 * (float)Math.cos((double)this.method326(var1, var4, var2)); float var6 = var3 * var3; - field301[var1][var4 * 2 + 1] = field301[var1][var4 * 2 - 1] * var6; - field301[var1][var4 * 2] = field301[var1][var4 * 2 - 1] * var5 + field301[var1][var4 * 2 - 2] * var6; + field295[var1][var4 * 2 + 1] = field295[var1][var4 * 2 - 1] * var6; + field295[var1][var4 * 2] = field295[var1][var4 * 2 - 1] * var5 + field295[var1][var4 * 2 - 2] * var6; for (int var7 = var4 * 2 - 1; var7 >= 2; --var7) { - var10000 = field301[var1]; - var10000[var7] += field301[var1][var7 - 1] * var5 + field301[var1][var7 - 2] * var6; + var10000 = field295[var1]; + var10000[var7] += field295[var1][var7 - 1] * var5 + field295[var1][var7 - 2] * var6; } - var10000 = field301[var1]; - var10000[1] += field301[var1][0] * var5 + var6; - var10000 = field301[var1]; + var10000 = field295[var1]; + var10000[1] += field295[var1][0] * var5 + var6; + var10000 = field295[var1]; var10000[0] += var5; } if (var1 == 0) { for (var4 = 0; var4 < this.pairs[0] * 2; ++var4) { - var10000 = field301[0]; - var10000[var4] *= field300; + var10000 = field295[0]; + var10000[var4] *= field294; } } for (var4 = 0; var4 < this.pairs[var1] * 2; ++var4) { - coefficients[var1][var4] = (int)(field301[var1][var4] * 65536.0F); + coefficients[var1][var4] = (int)(field295[var1][var4] * 65536.0F); } return this.pairs[var1] * 2; } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;Lbr;)V" + descriptor = "(Luj;Lbh;)V" ) - final void method320(Buffer var1, SoundEnvelope var2) { + final void method328(Buffer var1, SoundEnvelope var2) { int var3 = var1.readUnsignedByte(); this.pairs[0] = var3 >> 4; this.pairs[1] = var3 & 15; if (var3 != 0) { - this.field304[0] = var1.readUnsignedShort(); - this.field304[1] = var1.readUnsignedShort(); + this.field298[0] = var1.readUnsignedShort(); + this.field298[1] = var1.readUnsignedShort(); int var4 = var1.readUnsignedByte(); int var5; int var6; for (var5 = 0; var5 < 2; ++var5) { for (var6 = 0; var6 < this.pairs[var5]; ++var6) { - this.field306[var5][0][var6] = var1.readUnsignedShort(); - this.field307[var5][0][var6] = var1.readUnsignedShort(); + this.field301[var5][0][var6] = var1.readUnsignedShort(); + this.field300[var5][0][var6] = var1.readUnsignedShort(); } } for (var5 = 0; var5 < 2; ++var5) { for (var6 = 0; var6 < this.pairs[var5]; ++var6) { if ((var4 & 1 << var5 * 4 << var6) != 0) { - this.field306[var5][1][var6] = var1.readUnsignedShort(); - this.field307[var5][1][var6] = var1.readUnsignedShort(); + this.field301[var5][1][var6] = var1.readUnsignedShort(); + this.field300[var5][1][var6] = var1.readUnsignedShort(); } else { - this.field306[var5][1][var6] = this.field306[var5][0][var6]; - this.field307[var5][1][var6] = this.field307[var5][0][var6]; + this.field301[var5][1][var6] = this.field301[var5][0][var6]; + this.field300[var5][1][var6] = this.field300[var5][0][var6]; } } } - if (var4 != 0 || this.field304[1] != this.field304[0]) { + if (var4 != 0 || this.field298[1] != this.field298[0]) { var2.decodeSegments(var1); } } else { - int[] var7 = this.field304; - this.field304[1] = 0; + int[] var7 = this.field298; + this.field298[1] = 0; var7[0] = 0; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("normalize") static float normalize(float var0) { float var1 = 32.703197F * (float)Math.pow(2.0D, (double)var0); diff --git a/osrs/src/main/java/BZip2Decompressor.java b/osrs/src/main/java/BZip2Decompressor.java index bb3d12e0f..36e0c017b 100644 --- a/osrs/src/main/java/BZip2Decompressor.java +++ b/osrs/src/main/java/BZip2Decompressor.java @@ -3,12 +3,12 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tt") +@ObfuscatedName("uh") @Implements("BZip2Decompressor") public final class BZip2Decompressor { - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lte;" + descriptor = "Luq;" ) @Export("BZip2Decompressor_state") static BZip2State BZip2Decompressor_state; @@ -17,7 +17,7 @@ public final class BZip2Decompressor { BZip2Decompressor_state = new BZip2State(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("BZip2Decompressor_decompress") public static int BZip2Decompressor_decompress(byte[] var0, int var1, byte[] var2, int var3, int var4) { synchronized(BZip2Decompressor_state) { @@ -29,7 +29,7 @@ public static int BZip2Decompressor_decompress(byte[] var0, int var1, byte[] var BZip2Decompressor_state.bsLive = 0; BZip2Decompressor_state.bsBuff = 0; BZip2Decompressor_state.nextBit_unused = 0; - BZip2Decompressor_state.field4182 = 0; + BZip2Decompressor_state.field4216 = 0; BZip2Decompressor_decompress(BZip2Decompressor_state); var1 -= BZip2Decompressor_state.outputLength; BZip2Decompressor_state.inputArray = null; @@ -38,21 +38,21 @@ public static int BZip2Decompressor_decompress(byte[] var0, int var1, byte[] var } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lte;)V" + descriptor = "(Luq;)V" ) - static void method2607(BZip2State var0) { + static void method2624(BZip2State var0) { byte var2 = var0.out_char; int var3 = var0.su_rNToGo; int var4 = var0.nblocks_used; int var5 = var0.su_ch2; - int[] var6 = class148.BZip2Decompressor_block; - int var7 = var0.field4179; + int[] var6 = BZip2State.BZip2Decompressor_block; + int var7 = var0.field4206; byte[] var8 = var0.outputArray; int var9 = var0.next_out; int var10 = var0.outputLength; - int var12 = var0.field4189 + 1; + int var12 = var0.field4218 + 1; label62: while (true) { @@ -148,25 +148,25 @@ static void method2607(BZip2State var0) { break; } - int var13 = var0.field4182; - var0.field4182 += var10 - var10; - if (var0.field4182 < var13) { + int var13 = var0.field4216; + var0.field4216 += var10 - var10; + if (var0.field4216 < var13) { } var0.out_char = var2; var0.su_rNToGo = var3; var0.nblocks_used = var4; var0.su_ch2 = var5; - class148.BZip2Decompressor_block = var6; - var0.field4179 = var7; + BZip2State.BZip2Decompressor_block = var6; + var0.field4206 = var7; var0.outputArray = var8; var0.next_out = var9; var0.outputLength = var10; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lte;)V" + descriptor = "(Luq;)V" ) @Export("BZip2Decompressor_decompress") static void BZip2Decompressor_decompress(BZip2State var0) { @@ -192,9 +192,9 @@ static void BZip2Decompressor_decompress(BZip2State var0) { int[] var23 = null; int[] var24 = null; int[] var25 = null; - var0.blockSize100k = -1562387581; - if (class148.BZip2Decompressor_block == null) { - class148.BZip2Decompressor_block = new int[var0.blockSize100k * 731544800]; + var0.blockSize100k = 72123797; + if (BZip2State.BZip2Decompressor_block == null) { + BZip2State.BZip2Decompressor_block = new int[var0.blockSize100k * 2001765408]; } boolean var26 = true; @@ -430,7 +430,7 @@ static void BZip2Decompressor_decompress(BZip2State var0) { } var10002 = var0.unzftab[var0.seqToUnseq[var1 & 255] & 255]++; - class148.BZip2Decompressor_block[var47] = var0.seqToUnseq[var1 & 255] & 255; + BZip2State.BZip2Decompressor_block[var47] = var0.seqToUnseq[var1 & 255] & 255; ++var47; if (var45 == 0) { ++var43; @@ -489,7 +489,7 @@ static void BZip2Decompressor_decompress(BZip2State var0) { var10000 = var0.unzftab; for (var10000[var1 & 255] += var48; var48 > 0; --var48) { - class148.BZip2Decompressor_block[var47] = var1 & 255; + BZip2State.BZip2Decompressor_block[var47] = var1 & 255; ++var47; } } @@ -509,22 +509,22 @@ static void BZip2Decompressor_decompress(BZip2State var0) { } for (var36 = 0; var36 < var47; ++var36) { - var1 = (byte)(class148.BZip2Decompressor_block[var36] & 255); - var10000 = class148.BZip2Decompressor_block; + var1 = (byte)(BZip2State.BZip2Decompressor_block[var36] & 255); + var10000 = BZip2State.BZip2Decompressor_block; int var10001 = var0.cftab[var1 & 255]; var10000[var10001] |= var36 << 8; var10002 = var0.cftab[var1 & 255]++; } - var0.field4179 = class148.BZip2Decompressor_block[var0.originalPointer] >> 8; + var0.field4206 = BZip2State.BZip2Decompressor_block[var0.originalPointer] >> 8; var0.nblocks_used = 0; - var0.field4179 = class148.BZip2Decompressor_block[var0.field4179]; - var0.su_ch2 = (byte)(var0.field4179 & 255); - var0.field4179 >>= 8; + var0.field4206 = BZip2State.BZip2Decompressor_block[var0.field4206]; + var0.su_ch2 = (byte)(var0.field4206 & 255); + var0.field4206 >>= 8; ++var0.nblocks_used; - var0.field4189 = var47; - method2607(var0); - if (var0.field4189 + 1 == var0.nblocks_used && var0.su_rNToGo == 0) { + var0.field4218 = var47; + method2624(var0); + if (var0.field4218 + 1 == var0.nblocks_used && var0.su_rNToGo == 0) { var26 = true; break; } @@ -538,27 +538,27 @@ static void BZip2Decompressor_decompress(BZip2State var0) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lte;)B" + descriptor = "(Luq;)B" ) @Export("BZip2Decompressor_readNextByte") static byte BZip2Decompressor_readNextByte(BZip2State var0) { return (byte)BZip2Decompressor_readBits(8, var0); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lte;)B" + descriptor = "(Luq;)B" ) @Export("BZip2Decompressor_readNextBit") static byte BZip2Decompressor_readNextBit(BZip2State var0) { return (byte)BZip2Decompressor_readBits(1, var0); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(ILte;)I" + descriptor = "(ILuq;)I" ) @Export("BZip2Decompressor_readBits") static int BZip2Decompressor_readBits(int var0, BZip2State var1) { @@ -576,9 +576,9 @@ static int BZip2Decompressor_readBits(int var0, BZip2State var1) { return var2; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lte;)V" + descriptor = "(Luq;)V" ) @Export("makeMaps") static void makeMaps(BZip2State var0) { @@ -593,7 +593,7 @@ static void makeMaps(BZip2State var0) { } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("BZip2Decompressor_createHuffmanTables") static void BZip2Decompressor_createHuffmanTables(int[] var0, int[] var1, int[] var2, byte[] var3, int var4, int var5, int var6) { int var7 = 0; diff --git a/osrs/src/main/java/BZip2State.java b/osrs/src/main/java/BZip2State.java index 3d930ce08..58603e691 100644 --- a/osrs/src/main/java/BZip2State.java +++ b/osrs/src/main/java/BZip2State.java @@ -2,122 +2,125 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("te") +@ObfuscatedName("uq") @Implements("BZip2State") public final class BZip2State { - @ObfuscatedName("au") - final int field4202; - @ObfuscatedName("ae") - final int field4198; - @ObfuscatedName("ao") - final int field4200; + @ObfuscatedName("ad") + @Export("BZip2Decompressor_block") + static int[] BZip2Decompressor_block; @ObfuscatedName("at") - final int field4201; - @ObfuscatedName("ac") - final int field4197; - @ObfuscatedName("ai") - final int field4199; - @ObfuscatedName("az") + final int field4230; + @ObfuscatedName("ah") + final int field4227; + @ObfuscatedName("ar") + final int field4229; + @ObfuscatedName("ao") + final int field4228; + @ObfuscatedName("ab") + final int field4226; + @ObfuscatedName("au") + final int field4231; + @ObfuscatedName("aa") @Export("inputArray") byte[] inputArray; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("nextByte") int nextByte; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("nextBit_unused") int nextBit_unused; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("outputArray") byte[] outputArray; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("next_out") int next_out; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("outputLength") int outputLength; - @ObfuscatedName("al") - int field4182; - @ObfuscatedName("an") + @ObfuscatedName("ax") + int field4216; + @ObfuscatedName("as") @Export("out_char") byte out_char; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("su_rNToGo") int su_rNToGo; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("bsBuff") int bsBuff; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("bsLive") int bsLive; @ObfuscatedName("am") @Export("blockSize100k") int blockSize100k; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("originalPointer") int originalPointer; - @ObfuscatedName("ah") - int field4179; - @ObfuscatedName("as") + @ObfuscatedName("ai") + int field4206; + @ObfuscatedName("aw") @Export("su_ch2") int su_ch2; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("unzftab") int[] unzftab; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("nblocks_used") int nblocks_used; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("cftab") int[] cftab; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("nInUse") int nInUse; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("inUse") boolean[] inUse; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("inUse16") boolean[] inUse16; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("seqToUnseq") byte[] seqToUnseq; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("ll8") byte[] ll8; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("getAndMoveToFrontDecode_yy") int[] getAndMoveToFrontDecode_yy; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("selector") byte[] selector; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("selectorMtf") byte[] selectorMtf; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("temp_charArray2d") byte[][] temp_charArray2d; @ObfuscatedName("bm") @Export("limit") int[][] limit; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("base") int[][] base; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("perm") int[][] perm; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("minLens") int[] minLens; - @ObfuscatedName("bl") - int field4189; + @ObfuscatedName("bn") + int field4218; BZip2State() { - this.field4202 = 4096; - this.field4198 = 16; - this.field4200 = 258; - this.field4201 = 6; - this.field4197 = 50; - this.field4199 = 18002; + this.field4230 = 4096; + this.field4227 = 16; + this.field4229 = 258; + this.field4228 = 6; + this.field4226 = 50; + this.field4231 = 18002; this.nextByte = 0; this.next_out = 0; this.unzftab = new int[256]; diff --git a/osrs/src/main/java/BoundaryObject.java b/osrs/src/main/java/BoundaryObject.java index 9aded7d30..38d9a05f2 100644 --- a/osrs/src/main/java/BoundaryObject.java +++ b/osrs/src/main/java/BoundaryObject.java @@ -3,40 +3,40 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jo") +@ObfuscatedName("lv") @Implements("BoundaryObject") public final class BoundaryObject { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("z") int z; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") int y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("orientationA") int orientationA; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("orientationB") int orientationB; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable1") public Renderable renderable1; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable2") public Renderable renderable2; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("tag") public long tag; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("flags") int flags; @@ -45,12 +45,42 @@ public final class BoundaryObject { this.flags = 0; } - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)Z", - garbageValue = "1066903143" + descriptor = "([Ljava/lang/CharSequence;III)Ljava/lang/String;", + garbageValue = "-1198617474" ) - static boolean method1384(String var0, int var1) { - return class299.method1618(var0, var1, "openjs"); + public static String method1600(CharSequence[] var0, int var1, int var2) { + if (var2 == 0) { + return ""; + } else if (var2 == 1) { + CharSequence var3 = var0[var1]; + return var3 == null ? "null" : var3.toString(); + } else { + int var8 = var2 + var1; + int var4 = 0; + + for (int var5 = var1; var5 < var8; ++var5) { + CharSequence var6 = var0[var5]; + if (var6 == null) { + var4 += 4; + } else { + var4 += var6.length(); + } + } + + StringBuilder var9 = new StringBuilder(var4); + + for (int var10 = var1; var10 < var8; ++var10) { + CharSequence var7 = var0[var10]; + if (var7 == null) { + var9.append("null"); + } else { + var9.append(var7); + } + } + + return var9.toString(); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/Bounds.java b/osrs/src/main/java/Bounds.java index b03499b6f..becf836e1 100644 --- a/osrs/src/main/java/Bounds.java +++ b/osrs/src/main/java/Bounds.java @@ -3,25 +3,19 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("rb") +@ObfuscatedName("rv") @Implements("Bounds") public class Bounds { - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lui;" - ) - @Export("rightTitleSprite") - static SpritePixels rightTitleSprite; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("lowX") public int lowX; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("lowY") public int lowY; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("highX") public int highX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("highY") public int highY; @@ -34,10 +28,10 @@ public Bounds(int var1, int var2) { this(0, 0, var1, var2); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(IIB)V", - garbageValue = "14" + garbageValue = "20" ) @Export("setLow") public void setLow(int var1, int var2) { @@ -45,10 +39,10 @@ public void setLow(int var1, int var2) { this.lowY = var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "15" + descriptor = "(III)V", + garbageValue = "-1923662926" ) @Export("setHigh") public void setHigh(int var1, int var2) { @@ -56,40 +50,40 @@ public void setHigh(int var1, int var2) { this.highY = var2; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-32" + descriptor = "(III)Z", + garbageValue = "375775673" ) - public boolean method2284(int var1, int var2) { - return var1 >= this.lowX && var1 < this.highX + this.lowX && var2 >= this.lowY && var2 < this.lowY + this.highY; + public boolean method2300(int var1, int var2) { + return var1 >= this.lowX && var1 < this.highX + this.lowX && var2 >= this.lowY && var2 < this.highY + this.lowY; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lrb;Lrb;I)V", - garbageValue = "1929087402" + descriptor = "(Lrv;Lrv;I)V", + garbageValue = "-1398838147" ) - public void method2285(Bounds var1, Bounds var2) { - this.method2286(var1, var2); - this.method2287(var1, var2); + public void method2301(Bounds var1, Bounds var2) { + this.method2302(var1, var2); + this.method2303(var1, var2); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lrb;Lrb;I)V", - garbageValue = "-270985515" + descriptor = "(Lrv;Lrv;I)V", + garbageValue = "497587597" ) - void method2286(Bounds var1, Bounds var2) { + void method2302(Bounds var1, Bounds var2) { var2.lowX = this.lowX; var2.highX = this.highX; if (this.lowX < var1.lowX) { - var2.highX = (var2.highX * 2133643001 - (var1.lowX * 2133643001 - this.lowX * 2133643001)) * -2074045623; + var2.highX = (var2.highX - (var1.lowX - this.lowX)); var2.lowX = var1.lowX; } - if (var2.method2288() > var1.method2288()) { - var2.highX -= var2.method2288() - var1.method2288(); + if (var2.method2304() > var1.method2304()) { + var2.highX -= var2.method2304() - var1.method2304(); } if (var2.highX < 0) { @@ -98,21 +92,21 @@ void method2286(Bounds var1, Bounds var2) { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lrb;Lrb;B)V", - garbageValue = "32" + descriptor = "(Lrv;Lrv;I)V", + garbageValue = "1262928810" ) - void method2287(Bounds var1, Bounds var2) { + void method2303(Bounds var1, Bounds var2) { var2.lowY = this.lowY; var2.highY = this.highY; if (this.lowY < var1.lowY) { - var2.highY = (var2.highY * -584535177 - (var1.lowY * -584535177 - this.lowY * -584535177)) * 377886279; + var2.highY = (var2.highY - (var1.lowY - this.lowY)); var2.lowY = var1.lowY; } - if (var2.method2289() > var1.method2289()) { - var2.highY -= var2.method2289() - var1.method2289(); + if (var2.method2305() > var1.method2305()) { + var2.highY -= var2.method2305() - var1.method2305(); } if (var2.highY < 0) { @@ -121,21 +115,21 @@ void method2287(Bounds var1, Bounds var2) { } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "109" + descriptor = "(I)I", + garbageValue = "-222138556" ) - int method2288() { - return this.highX + this.lowX; + int method2304() { + return this.lowX + this.highX; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1442366153" + garbageValue = "578775229" ) - int method2289() { + int method2305() { return this.lowY + this.highY; } @@ -144,48 +138,4 @@ int method2289() { public String toString() { return null; } - - @ObfuscatedName("nz") - @ObfuscatedSignature( - descriptor = "(Lmi;I)Z", - garbageValue = "703583258" - ) - static final boolean method2290(Widget var0) { - int var1 = var0.contentType; - if (var1 == 205) { - Client.logoutTimer = 250; - return true; - } else { - int var2; - int var3; - if (var1 >= 300 && var1 <= 313) { - var2 = (var1 - 300) / 2; - var3 = var1 & 1; - Client.playerAppearance.changeAppearance(var2, var3 == 1); - } - - if (var1 >= 314 && var1 <= 323) { - var2 = (var1 - 314) / 2; - var3 = var1 & 1; - Client.playerAppearance.method1722(var2, var3 == 1); - } - - if (var1 == 324) { - Client.playerAppearance.method1723(0); - } - - if (var1 == 325) { - Client.playerAppearance.method1723(1); - } - - if (var1 == 326) { - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.UPDATE_APPEARANCE, Client.packetWriter.isaacCipher); - Client.playerAppearance.write(var4.packetBuffer); - Client.packetWriter.addNode(var4); - return true; - } else { - return false; - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/Buddy.java b/osrs/src/main/java/Buddy.java index ebff9e772..a92c9da88 100644 --- a/osrs/src/main/java/Buddy.java +++ b/osrs/src/main/java/Buddy.java @@ -3,16 +3,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qb") +@ObfuscatedName("rh") @Implements("Buddy") public class Buddy extends User { - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("world") public int world; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("int2") public int int2; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("rank") public int rank; @@ -20,10 +20,10 @@ public class Buddy extends User { this.world = -1; } - @ObfuscatedName("by") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "2111367662" + descriptor = "(IIB)V", + garbageValue = "2" ) @Export("set") void set(int var1, int var2) { @@ -31,23 +31,139 @@ void set(int var1, int var2) { this.int2 = var2; } - @ObfuscatedName("bs") + @ObfuscatedName("by") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "-12" + garbageValue = "48" ) @Export("getWorld") public int getWorld() { return this.world; } - @ObfuscatedName("bm") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-120" + descriptor = "(I)Z", + garbageValue = "1781991225" ) @Export("hasWorld") public boolean hasWorld() { return this.world > 0; } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Luo;II)Z", + garbageValue = "1704651337" + ) + @Export("updateExternalPlayer") + static boolean updateExternalPlayer(PacketBuffer var0, int var1) { + int var2 = var0.readBits(2); + int var3; + int var4; + int var7; + int var8; + int var9; + int var10; + if (var2 == 0) { + if (var0.readBits(1) != 0) { + updateExternalPlayer(var0, var1); + } + + var3 = var0.readBits(13); + var4 = var0.readBits(13); + boolean var12 = var0.readBits(1) == 1; + if (var12) { + Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; + } + + if (Client.players[var1] != null) { + throw new RuntimeException(); + } else { + Player var6 = Client.players[var1] = new Player(); + var6.index = var1; + if (Players.cachedAppearanceBuffer[var1] != null) { + var6.read(Players.cachedAppearanceBuffer[var1]); + } + + var6.orientation = Players.Players_orientations[var1]; + var6.targetIndex = Players.Players_targetIndices[var1]; + var7 = Players.Players_regions[var1]; + var8 = var7 >> 28; + var9 = var7 >> 14 & 255; + var10 = var7 & 255; + var6.pathTraversed[0] = Players.playerMovementSpeeds[var1]; + var6.plane = (byte)var8; + var6.resetPath((var9 << 13) + var3 - NewShit.baseX, (var10 << 13) + var4 - class101.baseY); + var6.hasMovementPending = false; + return true; + } + } else if (var2 == 1) { + var3 = var0.readBits(2); + var4 = Players.Players_regions[var1]; + Players.Players_regions[var1] = (var4 & 268435455) + (((var4 >> 28) + var3 & 3) << 28); + return false; + } else { + int var5; + int var11; + if (var2 == 2) { + var3 = var0.readBits(5); + var4 = var3 >> 3; + var5 = var3 & 7; + var11 = Players.Players_regions[var1]; + var7 = (var11 >> 28) + var4 & 3; + var8 = var11 >> 14 & 255; + var9 = var11 & 255; + if (var5 == 0) { + --var8; + --var9; + } + + if (var5 == 1) { + --var9; + } + + if (var5 == 2) { + ++var8; + --var9; + } + + if (var5 == 3) { + --var8; + } + + if (var5 == 4) { + ++var8; + } + + if (var5 == 5) { + --var8; + ++var9; + } + + if (var5 == 6) { + ++var9; + } + + if (var5 == 7) { + ++var8; + ++var9; + } + + Players.Players_regions[var1] = (var8 << 14) + var9 + (var7 << 28); + return false; + } else { + var3 = var0.readBits(18); + var4 = var3 >> 16; + var5 = var3 >> 8 & 255; + var11 = var3 & 255; + var7 = Players.Players_regions[var1]; + var8 = (var7 >> 28) + var4 & 3; + var9 = var5 + (var7 >> 14) & 255; + var10 = var11 + var7 & 255; + Players.Players_regions[var1] = (var9 << 14) + var10 + (var8 << 28); + return false; + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/BuddyRankComparator.java b/osrs/src/main/java/BuddyRankComparator.java index 873360fb8..9e45aba02 100644 --- a/osrs/src/main/java/BuddyRankComparator.java +++ b/osrs/src/main/java/BuddyRankComparator.java @@ -3,10 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ek") +@ObfuscatedName("eg") @Implements("BuddyRankComparator") public class BuddyRankComparator extends AbstractUserComparator { - @ObfuscatedName("au") + @ObfuscatedName("wz") + @Export("foundItemIdCount") + static int foundItemIdCount; + @ObfuscatedName("gw") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1200; + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -14,10 +22,10 @@ public BuddyRankComparator(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-1874488966" + descriptor = "(Lrh;Lrh;B)I", + garbageValue = "95" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -34,24 +42,16 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("oa") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lmi;I)Lmi;", - garbageValue = "915415331" + descriptor = "(I)Z", + garbageValue = "-457265261" ) - static Widget method691(Widget var0) { - int var1 = SpriteMask.method1706(NewShit.getWidgetFlags(var0)); - if (var1 == 0) { - return null; + public static boolean method687() { + if (!class316.field2798.isEmpty()) { + return true; } else { - for (int var2 = 0; var2 < var1; ++var2) { - var0 = class92.getWidget(var0.parentId); - if (var0 == null) { - return null; - } - } - - return var0; + return !class316.musicSongs.isEmpty() && class316.musicSongs.get(0) != null && ((MusicSong)class316.musicSongs.get(0)).midiPcmStream != null ? ((MusicSong)class316.musicSongs.get(0)).midiPcmStream.isReady() : false; } } } \ No newline at end of file diff --git a/osrs/src/main/java/Buffer.java b/osrs/src/main/java/Buffer.java index 1fdae79ae..26b406774 100644 --- a/osrs/src/main/java/Buffer.java +++ b/osrs/src/main/java/Buffer.java @@ -5,19 +5,19 @@ import java.math.BigInteger; -@ObfuscatedName("tm") +@ObfuscatedName("uj") @Implements("Buffer") public class Buffer extends Node { - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("crc32Table") - public static int[] crc32Table; - @ObfuscatedName("aq") + static int[] crc32Table; + @ObfuscatedName("av") @Export("crc64Table") static long[] crc64Table; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("array") public byte[] array; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("offset") public int offset; @@ -58,11 +58,11 @@ public class Buffer extends Node { } public Buffer(int var1, boolean var2) { - this.array = ByteArrayPool.ByteArrayPool_getArrayBool(var1, var2); + this.array = ServerPacket.ByteArrayPool_getArrayBool(var1, var2); } public Buffer(int var1) { - this.array = class125.ByteArrayPool_getArray(var1); + this.array = class362.ByteArrayPool_getArray(var1); this.offset = 0; } @@ -71,34 +71,34 @@ public Buffer(byte[] var1) { this.offset = 0; } - @ObfuscatedName("bb") + @ObfuscatedName("bo") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1801780173" + garbageValue = "37821" ) @Export("releaseArray") public void releaseArray() { if (this.array != null) { - PlayerType.ByteArrayPool_release(this.array); + SwapSongTask.ByteArrayPool_release(this.array); } this.array = null; } - @ObfuscatedName("br") + @ObfuscatedName("bt") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1656080005" + garbageValue = "2032904894" ) @Export("writeByte") public void writeByte(int var1) { this.array[++this.offset - 1] = (byte)var1; } - @ObfuscatedName("be") + @ObfuscatedName("bu") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1405457732" + garbageValue = "2078437680" ) @Export("writeShort") public void writeShort(int var1) { @@ -106,10 +106,10 @@ public void writeShort(int var1) { this.array[++this.offset - 1] = (byte)var1; } - @ObfuscatedName("bi") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-83" + descriptor = "(II)V", + garbageValue = "-1102308470" ) @Export("writeMedium") public void writeMedium(int var1) { @@ -118,10 +118,10 @@ public void writeMedium(int var1) { this.array[++this.offset - 1] = (byte)var1; } - @ObfuscatedName("bz") + @ObfuscatedName("bh") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "278729890" + garbageValue = "-2121704960" ) @Export("writeInt") public void writeInt(int var1) { @@ -131,7 +131,7 @@ public void writeInt(int var1) { this.array[++this.offset - 1] = (byte)var1; } - @ObfuscatedName("bx") + @ObfuscatedName("bz") @Export("writeLongMedium") public void writeLongMedium(long var1) { this.array[++this.offset - 1] = (byte)((int)(var1 >> 40)); @@ -142,7 +142,7 @@ public void writeLongMedium(long var1) { this.array[++this.offset - 1] = (byte)((int)var1); } - @ObfuscatedName("bn") + @ObfuscatedName("bc") @Export("writeLong") public void writeLong(long var1) { this.array[++this.offset - 1] = (byte)((int)(var1 >> 56)); @@ -155,20 +155,20 @@ public void writeLong(long var1) { this.array[++this.offset - 1] = (byte)((int)var1); } - @ObfuscatedName("bw") + @ObfuscatedName("bs") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-80697695" + garbageValue = "-1187697267" ) @Export("writeBoolean") public void writeBoolean(boolean var1) { this.writeByte(var1 ? 1 : 0); } - @ObfuscatedName("bg") + @ObfuscatedName("bb") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "915346202" + garbageValue = "900280888" ) @Export("writeStringCp1252NullTerminated") public void writeStringCp1252NullTerminated(String var1) { @@ -176,15 +176,15 @@ public void writeStringCp1252NullTerminated(String var1) { if (var2 >= 0) { throw new IllegalArgumentException(""); } else { - this.offset += LoginPacket.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); + this.offset += NewShit.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); this.array[++this.offset - 1] = 0; } } - @ObfuscatedName("cw") + @ObfuscatedName("bk") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "2010597854" + garbageValue = "1205300061" ) @Export("writeStringCp1252NullCircumfixed") public void writeStringCp1252NullCircumfixed(String var1) { @@ -193,28 +193,41 @@ public void writeStringCp1252NullCircumfixed(String var1) { throw new IllegalArgumentException(""); } else { this.array[++this.offset - 1] = 0; - this.offset += LoginPacket.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); + this.offset += NewShit.encodeStringCp1252(var1, 0, var1.length(), this.array, this.offset); this.array[++this.offset - 1] = 0; } } - @ObfuscatedName("cf") + @ObfuscatedName("br") @ObfuscatedSignature( descriptor = "(Ljava/lang/CharSequence;I)V", - garbageValue = "-2085392381" + garbageValue = "395083018" ) @Export("writeCESU8") public void writeCESU8(CharSequence var1) { - int var2 = InvDefinition.method937(var1); + int var3 = var1.length(); + int var4 = 0; + + for (int var5 = 0; var5 < var3; ++var5) { + char var6 = var1.charAt(var5); + if (var6 <= 127) { + ++var4; + } else if (var6 <= 2047) { + var4 += 2; + } else { + var4 += 3; + } + } + this.array[++this.offset - 1] = 0; - this.writeVarInt(var2); - this.offset += FloorDecoration.method1179(this.array, this.offset, var1); + this.writeVarInt(var4); + this.offset += class344.method1877(this.array, this.offset, var1); } - @ObfuscatedName("cm") + @ObfuscatedName("bq") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1427589221" + garbageValue = "1351924623" ) @Export("writeBytes") public void writeBytes(byte[] var1, int var2, int var3) { @@ -224,19 +237,20 @@ public void writeBytes(byte[] var1, int var2, int var3) { } - @ObfuscatedName("cn") + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "51362349" + descriptor = "(Luj;I)V", + garbageValue = "-1328772504" ) - public void method2537(Buffer var1) { + @Export("writeBuffer") + public void writeBuffer(Buffer var1) { this.writeBytes(var1.array, 0, var1.offset); } - @ObfuscatedName("cs") + @ObfuscatedName("cg") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "82" + garbageValue = "31" ) @Export("writeLengthInt") public void writeLengthInt(int var1) { @@ -250,10 +264,10 @@ public void writeLengthInt(int var1) { } } - @ObfuscatedName("cx") + @ObfuscatedName("cv") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-44738618" + garbageValue = "1632479764" ) @Export("writeLengthShort") public void writeLengthShort(int var1) { @@ -265,12 +279,13 @@ public void writeLengthShort(int var1) { } } - @ObfuscatedName("cr") + @ObfuscatedName("cx") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1799868177" + garbageValue = "-579744730" ) - public void method2540(int var1) { + @Export("writeLengthByte") + public void writeLengthByte(int var1) { if (var1 >= 0 && var1 <= 255) { this.array[this.offset - var1 - 1] = (byte)var1; } else { @@ -278,10 +293,10 @@ public void method2540(int var1) { } } - @ObfuscatedName("cd") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "15989" + descriptor = "(IB)V", + garbageValue = "1" ) @Export("writeSmartByteShort") public void writeSmartByteShort(int var1) { @@ -297,7 +312,7 @@ public void writeSmartByteShort(int var1) { @ObfuscatedName("ce") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "26" + garbageValue = "-24" ) @Export("writeVarInt") public void writeVarInt(int var1) { @@ -320,30 +335,30 @@ public void writeVarInt(int var1) { this.writeByte(var1 & 127); } - @ObfuscatedName("cq") + @ObfuscatedName("ci") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "515674060" + garbageValue = "-2140703005" ) @Export("readUnsignedByte") public int readUnsignedByte() { return this.array[++this.offset - 1] & 255; } - @ObfuscatedName("cp") + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "(I)B", - garbageValue = "130364470" + descriptor = "(B)B", + garbageValue = "-38" ) @Export("readByte") public byte readByte() { return this.array[++this.offset - 1]; } - @ObfuscatedName("cv") + @ObfuscatedName("cw") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "-85" + garbageValue = "118" ) @Export("readUnsignedShort") public int readUnsignedShort() { @@ -351,10 +366,10 @@ public int readUnsignedShort() { return (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); } - @ObfuscatedName("co") + @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1858143695" + descriptor = "(B)I", + garbageValue = "100" ) @Export("readShort") public int readShort() { @@ -370,7 +385,7 @@ public int readShort() { @ObfuscatedName("cl") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "87" + garbageValue = "-100" ) @Export("readMedium") public int readMedium() { @@ -378,12 +393,12 @@ public int readMedium() { return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); } - @ObfuscatedName("cu") + @ObfuscatedName("cs") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "618141055" + descriptor = "(B)I", + garbageValue = "89" ) - public int method2548() { + public int notRUBA() { this.offset += 3; int var1 = ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8); if (var1 > 8388607) { @@ -393,10 +408,10 @@ public int method2548() { return var1; } - @ObfuscatedName("ch") + @ObfuscatedName("co") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-85665102" + descriptor = "(B)I", + garbageValue = "-12" ) @Export("readInt") public int readInt() { @@ -404,10 +419,10 @@ public int readInt() { return ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 2] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 24); } - @ObfuscatedName("ci") + @ObfuscatedName("cm") @ObfuscatedSignature( descriptor = "(I)J", - garbageValue = "-1147621862" + garbageValue = "1536717051" ) @Export("readLong") public long readLong() { @@ -416,29 +431,29 @@ public long readLong() { return var3 + (var1 << 32); } - @ObfuscatedName("ca") + @ObfuscatedName("cn") @ObfuscatedSignature( - descriptor = "(B)F", - garbageValue = "1" + descriptor = "(I)F", + garbageValue = "346642387" ) - public float method2551() { + public float method2565() { return Float.intBitsToFloat(this.readInt()); } - @ObfuscatedName("cb") + @ObfuscatedName("cr") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "8" + descriptor = "(I)Z", + garbageValue = "2040454969" ) @Export("readBoolean") public boolean readBoolean() { return (this.readUnsignedByte() & 1) == 1; } - @ObfuscatedName("cg") + @ObfuscatedName("cj") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "1848740572" + garbageValue = "-1977045355" ) @Export("readStringCp1252NullTerminatedOrNull") public String readStringCp1252NullTerminatedOrNull() { @@ -450,10 +465,10 @@ public String readStringCp1252NullTerminatedOrNull() { } } - @ObfuscatedName("cj") + @ObfuscatedName("ca") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "262549745" + garbageValue = "1287732949" ) @Export("readStringCp1252NullTerminated") public String readStringCp1252NullTerminated() { @@ -463,13 +478,13 @@ public String readStringCp1252NullTerminated() { } int var2 = this.offset - var1 - 1; - return var2 == 0 ? "" : class325.decodeStringCp1252(this.array, var1, var2); + return var2 == 0 ? "" : World.decodeStringCp1252(this.array, var1, var2); } - @ObfuscatedName("cz") + @ObfuscatedName("cc") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1654554633" + garbageValue = "-716580944" ) @Export("readStringCp1252NullCircumfixed") public String readStringCp1252NullCircumfixed() { @@ -483,16 +498,17 @@ public String readStringCp1252NullCircumfixed() { } int var3 = this.offset - var2 - 1; - return var3 == 0 ? "" : class325.decodeStringCp1252(this.array, var2, var3); + return var3 == 0 ? "" : World.decodeStringCp1252(this.array, var2, var3); } } - @ObfuscatedName("ct") + @ObfuscatedName("cu") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "-935649711" + garbageValue = "-780563964" ) - public String method2556() { + @Export("readCESUB") + public String readCESUB() { byte var1 = this.array[++this.offset - 1]; if (var1 != 0) { throw new IllegalStateException(""); @@ -559,10 +575,10 @@ public String method2556() { } } - @ObfuscatedName("cy") + @ObfuscatedName("ch") @ObfuscatedSignature( - descriptor = "([BIIB)V", - garbageValue = "37" + descriptor = "([BIII)V", + garbageValue = "-2014110901" ) @Export("readBytes") public void readBytes(byte[] var1, int var2, int var3) { @@ -572,10 +588,10 @@ public void readBytes(byte[] var1, int var2, int var3) { } - @ObfuscatedName("ck") + @ObfuscatedName("cb") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "234174840" + garbageValue = "875734256" ) @Export("readShortSmart") public int readShortSmart() { @@ -583,10 +599,10 @@ public int readShortSmart() { return var1 < 128 ? this.readUnsignedByte() - 64 : this.readUnsignedShort() - 49152; } - @ObfuscatedName("cc") + @ObfuscatedName("cz") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1174509102" + garbageValue = "1283658901" ) @Export("readUShortSmart") public int readUShortSmart() { @@ -594,22 +610,24 @@ public int readUShortSmart() { return var1 < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 32768; } - @ObfuscatedName("dh") + @ObfuscatedName("cy") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1553236934" + garbageValue = "1077896012" ) - public int method2560() { + @Export("readShortSmartSub") + public int readShortSmartSub() { int var1 = this.array[this.offset] & 255; return var1 < 128 ? this.readUnsignedByte() - 1 : this.readUnsignedShort() - 32769; } - @ObfuscatedName("dj") + @ObfuscatedName("ck") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "-94" + garbageValue = "75" ) - public int method2561() { + @Export("readIncrSmallSmart") + public int readIncrSmallSmart() { int var1 = 0; int var2; @@ -621,21 +639,23 @@ public int method2561() { return var1; } - @ObfuscatedName("di") + @ObfuscatedName("cd") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "776176450" + garbageValue = "-2102511661" ) - public int method2562() { + @Export("readLargeSmart") + public int readLargeSmart() { return this.array[this.offset] < 0 ? this.readInt() & Integer.MAX_VALUE : this.readUnsignedShort(); } - @ObfuscatedName("du") + @ObfuscatedName("dt") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1431150361" + garbageValue = "1637265381" ) - public int method2563() { + @Export("readNullableLargeSmart") + public int readNullableLargeSmart() { if (this.array[this.offset] < 0) { return this.readInt() & Integer.MAX_VALUE; } else { @@ -644,10 +664,10 @@ public int method2563() { } } - @ObfuscatedName("dn") + @ObfuscatedName("di") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-29" ) @Export("readVarInt") public int readVarInt() { @@ -661,12 +681,13 @@ public int readVarInt() { return var2 | var1; } - @ObfuscatedName("dg") + @ObfuscatedName("dk") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "-28338" + descriptor = "(I)I", + garbageValue = "-1675409719" ) - public int method2565() { + @Export("packBytesToInt") + public int packBytesToInt() { int var2 = 0; int var3 = 0; @@ -682,8 +703,8 @@ public int method2565() { @ObfuscatedName("dd") @ObfuscatedSignature( - descriptor = "([IB)V", - garbageValue = "2" + descriptor = "([II)V", + garbageValue = "2139836666" ) @Export("xteaEncryptAll") public void xteaEncryptAll(int[] var1) { @@ -708,10 +729,10 @@ public void xteaEncryptAll(int[] var1) { } - @ObfuscatedName("da") + @ObfuscatedName("dx") @ObfuscatedSignature( descriptor = "([II)V", - garbageValue = "-1321598468" + garbageValue = "-1034826768" ) @Export("xteaDecryptAll") public void xteaDecryptAll(int[] var1) { @@ -736,10 +757,10 @@ public void xteaDecryptAll(int[] var1) { } - @ObfuscatedName("ds") + @ObfuscatedName("dh") @ObfuscatedSignature( - descriptor = "([IIII)V", - garbageValue = "1099130018" + descriptor = "([IIIB)V", + garbageValue = "-6" ) @Export("xteaEncrypt") public void xteaEncrypt(int[] var1, int var2, int var3) { @@ -766,10 +787,10 @@ public void xteaEncrypt(int[] var1, int var2, int var3) { this.offset = var4; } - @ObfuscatedName("dy") + @ObfuscatedName("du") @ObfuscatedSignature( - descriptor = "([IIIB)V", - garbageValue = "-14" + descriptor = "([IIII)V", + garbageValue = "1763762234" ) @Export("xteaDecrypt") public void xteaDecrypt(int[] var1, int var2, int var3) { @@ -796,10 +817,10 @@ public void xteaDecrypt(int[] var1, int var2, int var3) { this.offset = var4; } - @ObfuscatedName("dt") + @ObfuscatedName("dg") @ObfuscatedSignature( descriptor = "(Ljava/math/BigInteger;Ljava/math/BigInteger;I)V", - garbageValue = "849520517" + garbageValue = "-2126574510" ) @Export("encryptRsa") public void encryptRsa(BigInteger var1, BigInteger var2) { @@ -815,151 +836,135 @@ public void encryptRsa(BigInteger var1, BigInteger var2) { this.writeBytes(var7, 0, var7.length); } - @ObfuscatedName("dl") + @ObfuscatedName("dc") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1394849822" + descriptor = "(IB)I", + garbageValue = "36" ) @Export("writeCrc") public int writeCrc(int var1) { - byte[] var3 = this.array; - int var4 = this.offset; - int var5 = -1; - - for (int var6 = var1; var6 < var4; ++var6) { - var5 = var5 >>> 8 ^ crc32Table[(var5 ^ var3[var6]) & 255]; - } - - var5 = ~var5; - this.writeInt(var5); - return var5; + int var2 = class174.method885(this.array, var1, this.offset); + this.writeInt(var2); + return var2; } - @ObfuscatedName("dk") + @ObfuscatedName("do") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1935079225" + garbageValue = "-1490830987" ) @Export("checkCrc") public boolean checkCrc() { this.offset -= 4; - byte[] var2 = this.array; - int var3 = this.offset; - int var4 = -1; - - int var5; - for (var5 = 0; var5 < var3; ++var5) { - var4 = var4 >>> 8 ^ crc32Table[(var4 ^ var2[var5]) & 255]; - } - - var4 = ~var4; - var5 = this.readInt(); - return var5 == var4; + int var1 = class174.method885(this.array, 0, this.offset); + int var2 = this.readInt(); + return var2 == var1; } - @ObfuscatedName("df") + @ObfuscatedName("db") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1286227217" + garbageValue = "1106007511" ) public void writeByteAdd(int var1) { this.array[++this.offset - 1] = (byte)(var1 + 128); } - @ObfuscatedName("dz") + @ObfuscatedName("dm") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "73" + garbageValue = "110" ) - @Export("writeMed0") + @Export("writeByteNeg") public void writeByteNeg(int var1) { this.array[++this.offset - 1] = (byte)(0 - var1); } - @ObfuscatedName("dw") + @ObfuscatedName("dr") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1646305705" + garbageValue = "-861052915" ) @Export("writeByteSub") public void writeByteSub(int var1) { this.array[++this.offset - 1] = (byte)(128 - var1); } - @ObfuscatedName("dv") + @ObfuscatedName("ds") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "316083007" + garbageValue = "-756845354" ) @Export("readUnsignedByteAdd") public int readUnsignedByteAdd() { return this.array[++this.offset - 1] - 128 & 255; } - @ObfuscatedName("dr") + @ObfuscatedName("da") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1007097777" + garbageValue = "-2085859197" ) - @Export("readUnsignedByteNeg") - public int readUnsignedByteNeg() { + @Export("readUnsignedByteSub") + public int readUnsignedByteSub() { return 0 - this.array[++this.offset - 1] & 255; } - @ObfuscatedName("do") + @ObfuscatedName("dw") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1108822306" + garbageValue = "-2004918107" ) - @Export("readUnsignedByteSub") - public int readUnsignedByteSub() { + @Export("readUnsignedByteNeg") + public int readUnsignedByteNeg() { return 128 - this.array[++this.offset - 1] & 255; } - @ObfuscatedName("db") + @ObfuscatedName("dp") @ObfuscatedSignature( descriptor = "(I)B", - garbageValue = "-302199246" + garbageValue = "21885876" ) @Export("readByteAdd") public byte readByteAdd() { return (byte)(this.array[++this.offset - 1] - 128); } - @ObfuscatedName("dp") + @ObfuscatedName("df") @ObfuscatedSignature( descriptor = "(B)B", - garbageValue = "-122" + garbageValue = "101" ) + @Export("readByteNeg") public byte readByteNeg() { return (byte)(0 - this.array[++this.offset - 1]); } - @ObfuscatedName("dm") + @ObfuscatedName("dv") @ObfuscatedSignature( descriptor = "(I)B", - garbageValue = "1035435646" + garbageValue = "1189405453" ) - @Export("readSignedByteSub") - public byte readSignedByteSub() { + @Export("readByteSub") + public byte readByteSub() { return (byte)(128 - this.array[++this.offset - 1]); } - @ObfuscatedName("dx") + @ObfuscatedName("dz") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-792934648" + garbageValue = "642088344" ) - @Export("writeIntME") - public void writeIntME(int var1) { + @Export("writeShortAdd") + public void writeShortAdd(int var1) { this.array[++this.offset - 1] = (byte)var1; this.array[++this.offset - 1] = (byte)(var1 >> 8); } - @ObfuscatedName("dq") + @ObfuscatedName("dl") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1242931377" + garbageValue = "-2051245858" ) @Export("writeShortAddLE") public void writeShortAddLE(int var1) { @@ -970,52 +975,53 @@ public void writeShortAddLE(int var1) { @ObfuscatedName("de") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1382454914" + garbageValue = "-436427063" ) - @Export("writeShortAdd") - public void writeShortAdd(int var1) { + @Export("writeShortLE") + public void writeShortLE(int var1) { this.array[++this.offset - 1] = (byte)(var1 + 128); this.array[++this.offset - 1] = (byte)(var1 >> 8); } - @ObfuscatedName("dc") + @ObfuscatedName("dn") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1918488867" + descriptor = "(B)I", + garbageValue = "113" ) - @Export("readIntME") - public int readIntME() { + @Export("readUnsignedIntLE") + public int readUnsignedShortLE() { this.offset += 2; return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] & 255); } - @ObfuscatedName("ed") + @ObfuscatedName("dq") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1798524926" + garbageValue = "201481069" ) - @Export("readUnsignedShortLE") - public int readUnsignedShortLE() { + @Export("readUnsignedShortAdd") + public int readUnsignedShortAdd() { this.offset += 2; return (this.array[this.offset - 1] - 128 & 255) + ((this.array[this.offset - 2] & 255) << 8); } - @ObfuscatedName("eh") + @ObfuscatedName("dj") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "73" + garbageValue = "1" ) - public int method2587() { + @Export("readUnsignedShortAddLE") + public int readUnsignedShortAddLE() { this.offset += 2; return ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); } - @ObfuscatedName("ey") + @ObfuscatedName("dy") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "2113595632" + descriptor = "(B)I", + garbageValue = "88" ) - public int method2588() { + public int readShortLE() { this.offset += 2; int var1 = ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] & 255); if (var1 > 32767) { @@ -1025,13 +1031,13 @@ public int method2588() { return var1; } - @ObfuscatedName("ee") + @ObfuscatedName("ec") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1366788649" + garbageValue = "-1774495709" ) - @Export("readSignedShortAdd") - public int readSignedShortAdd() { + @Export("readShortAdd") + public int readShortAdd() { this.offset += 2; int var1 = (this.array[this.offset - 1] - 128 & 255) + ((this.array[this.offset - 2] & 255) << 8); if (var1 > 32767) { @@ -1041,44 +1047,58 @@ public int readSignedShortAdd() { return var1; } - @ObfuscatedName("eq") + @ObfuscatedName("ew") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1535378058" + ) + public int readShortAddLE() { + this.offset += 2; + int var1 = ((this.array[this.offset - 1] & 255) << 8) + (this.array[this.offset - 2] - 128 & 255); + if (var1 > 32767) { + var1 -= 65536; + } + + return var1; + } + + @ObfuscatedName("ex") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-614629253" + garbageValue = "228979090" ) - @Export("writeMediumLE") - public void writeMediumLE(int var1) { - this.array[++this.offset - 1] = (byte)var1; + public void method2605(int var1) { this.array[++this.offset - 1] = (byte)(var1 >> 8); this.array[++this.offset - 1] = (byte)(var1 >> 16); + this.array[++this.offset - 1] = (byte)var1; } - @ObfuscatedName("ej") + @ObfuscatedName("ev") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-535659552" + descriptor = "(B)I", + garbageValue = "6" ) - public int method2591() { + public int method2606() { this.offset += 3; - return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 2] & 255); + return (this.array[this.offset - 3] & 255) + ((this.array[this.offset - 2] & 255) << 8) + ((this.array[this.offset - 1] & 255) << 16); } - @ObfuscatedName("ea") + @ObfuscatedName("ek") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "1" + garbageValue = "104" ) - public int method2592() { + public int method2607() { this.offset += 3; - return (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16); + return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 2] & 255); } - @ObfuscatedName("er") + @ObfuscatedName("em") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "117" + garbageValue = "-46" ) - public int method2593() { + public int method2608() { this.offset += 3; int var1 = (this.array[this.offset - 3] & 255) + ((this.array[this.offset - 2] & 255) << 8) + ((this.array[this.offset - 1] & 255) << 16); if (var1 > 8388607) { @@ -1088,12 +1108,12 @@ public int method2593() { return var1; } - @ObfuscatedName("ev") + @ObfuscatedName("eo") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "-73" + garbageValue = "71" ) - public int method2594() { + public int method2609() { this.offset += 3; int var1 = ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 3] & 255) << 16) + (this.array[this.offset - 2] & 255); if (var1 > 8388607) { @@ -1103,10 +1123,25 @@ public int method2594() { return var1; } - @ObfuscatedName("ez") + @ObfuscatedName("ef") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "55" + ) + public int method2610() { + this.offset += 3; + int var1 = (this.array[this.offset - 1] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16); + if (var1 > 8388607) { + var1 -= 16777216; + } + + return var1; + } + + @ObfuscatedName("el") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1615991822" + garbageValue = "392771780" ) @Export("writeIntLE") public void writeIntLE(int var1) { @@ -1116,23 +1151,23 @@ public void writeIntLE(int var1) { this.array[++this.offset - 1] = (byte)(var1 >> 24); } - @ObfuscatedName("et") + @ObfuscatedName("es") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "46" + garbageValue = "20" ) - - public void writeIntIME_(int var1) { + @Export("writeIntME") + public void writeIntME(int var1) { this.array[++this.offset - 1] = (byte)(var1 >> 8); this.array[++this.offset - 1] = (byte)var1; this.array[++this.offset - 1] = (byte)(var1 >> 24); this.array[++this.offset - 1] = (byte)(var1 >> 16); } - @ObfuscatedName("en") + @ObfuscatedName("ea") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-2112145568" + garbageValue = "116974832" ) @Export("writeIntIME") public void writeIntIME(int var1) { @@ -1142,44 +1177,57 @@ public void writeIntIME(int var1) { this.array[++this.offset - 1] = (byte)(var1 >> 8); } - @ObfuscatedName("eb") + @ObfuscatedName("en") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "10" + descriptor = "(I)I", + garbageValue = "1727101871" ) - public int method2598() { + @Export("readIntME") + public int readIntME() { this.offset += 4; return (this.array[this.offset - 4] & 255) + ((this.array[this.offset - 3] & 255) << 8) + ((this.array[this.offset - 2] & 255) << 16) + ((this.array[this.offset - 1] & 255) << 24); } - @ObfuscatedName("ei") + @ObfuscatedName("eh") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-2095905136" + descriptor = "(B)I", + garbageValue = "126" ) - @Export("readUnsignedByteNeg") public int readUnsignedIntIME() { this.offset += 4; return ((this.array[this.offset - 2] & 255) << 24) + ((this.array[this.offset - 4] & 255) << 8) + (this.array[this.offset - 3] & 255) + ((this.array[this.offset - 1] & 255) << 16); } - @ObfuscatedName("es") + @ObfuscatedName("ei") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "0" + descriptor = "(I)I", + garbageValue = "1456274575" ) - @Export("readUnsignedShortAddLE") - public int readIntIME() { + public int readUnsignedIntME() { this.offset += 4; return ((this.array[this.offset - 1] & 255) << 8) + ((this.array[this.offset - 4] & 255) << 16) + (this.array[this.offset - 2] & 255) + ((this.array[this.offset - 3] & 255) << 24); } - @ObfuscatedName("el") + @ObfuscatedName("et") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1107296257" + garbageValue = "1299498311" + ) + public void method2617(byte[] var1, int var2, int var3) { + for (int var4 = var3 + var2 - 1; var4 >= var2; --var4) { + var1[var4] = this.array[++this.offset - 1]; + } + + } + + + @ObfuscatedName("er") + @ObfuscatedSignature( + descriptor = "([BIIB)V", + garbageValue = "22" ) - public void method2601(byte[] var1, int var2, int var3) { + + public void method2618(byte[] var1, int var2, int var3) { for (int var4 = var2; var4 < var3 + var2; ++var4) { var1[var4] = (byte)(this.array[++this.offset - 1] - 128); } diff --git a/osrs/src/main/java/BufferedFile.java b/osrs/src/main/java/BufferedFile.java index 6ac6a3269..e9e872fd1 100644 --- a/osrs/src/main/java/BufferedFile.java +++ b/osrs/src/main/java/BufferedFile.java @@ -6,48 +6,48 @@ import java.io.EOFException; import java.io.IOException; -@ObfuscatedName("td") +@ObfuscatedName("tr") @Implements("BufferedFile") public class BufferedFile { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ltu;" + descriptor = "Lto;" ) @Export("accessFile") AccessFile accessFile; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("readBuffer") byte[] readBuffer; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("readBufferOffset") long readBufferOffset; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("readBufferLength") int readBufferLength; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("writeBuffer") byte[] writeBuffer; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("writeBufferOffset") long writeBufferOffset; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("writeBufferLength") int writeBufferLength; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("offset") long offset; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("fileLength") long fileLength; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("length") long length; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("fileOffset") long fileOffset; @ObfuscatedSignature( - descriptor = "(Ltu;II)V" + descriptor = "(Lto;II)V" ) public BufferedFile(AccessFile var1, int var2, int var3) throws IOException { this.readBufferOffset = -1L; @@ -60,10 +60,10 @@ public BufferedFile(AccessFile var1, int var2, int var3) throws IOException { this.offset = 0L; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "22" + garbageValue = "4" ) @Export("close") public void close() throws IOException { @@ -71,7 +71,7 @@ public void close() throws IOException { this.accessFile.close(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("seek") public void seek(long var1) throws IOException { if (var1 < 0L) { @@ -81,30 +81,30 @@ public void seek(long var1) throws IOException { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)J", - garbageValue = "109" + descriptor = "(I)J", + garbageValue = "-955462674" ) @Export("length") public long length() { return this.length; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "-560983071" + descriptor = "([BB)V", + garbageValue = "0" ) @Export("readFully") public void readFully(byte[] var1) throws IOException { this.read(var1, 0, var1.length); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "-639853271" + garbageValue = "1020211310" ) @Export("read") public void read(byte[] var1, int var2, int var3) throws IOException { @@ -113,7 +113,7 @@ public void read(byte[] var1, int var2, int var3) throws IOException { throw new ArrayIndexOutOfBoundsException(var3 + var2 - var1.length); } - if (-1L != this.writeBufferOffset && this.offset >= this.writeBufferOffset && this.offset + (long)var3 <= this.writeBufferOffset + (long)this.writeBufferLength) { + if (this.writeBufferOffset != -1L && this.offset >= this.writeBufferOffset && this.offset + (long)var3 <= this.writeBufferOffset + (long)this.writeBufferLength) { System.arraycopy(this.writeBuffer, (int)(this.offset - this.writeBufferOffset), var1, var2, var3); this.offset += (long)var3; return; @@ -176,16 +176,16 @@ public void read(byte[] var1, int var2, int var3) throws IOException { long var13 = -1L; long var10 = -1L; - if (this.writeBufferOffset >= var4 && this.writeBufferOffset < (long)var7 + var4) { + if (this.writeBufferOffset >= var4 && this.writeBufferOffset < var4 + (long)var7) { var13 = this.writeBufferOffset; } else if (var4 >= this.writeBufferOffset && var4 < this.writeBufferOffset + (long)this.writeBufferLength) { var13 = var4; } - if (this.writeBufferOffset + (long)this.writeBufferLength > var4 && (long)this.writeBufferLength + this.writeBufferOffset <= (long)var7 + var4) { - var10 = this.writeBufferOffset + (long)this.writeBufferLength; + if (this.writeBufferOffset + (long)this.writeBufferLength > var4 && this.writeBufferOffset + (long)this.writeBufferLength <= (long)var7 + var4) { + var10 = (long)this.writeBufferLength + this.writeBufferOffset; } else if (var4 + (long)var7 > this.writeBufferOffset && var4 + (long)var7 <= (long)this.writeBufferLength + this.writeBufferOffset) { - var10 = (long)var7 + var4; + var10 = var4 + (long)var7; } if (var13 > -1L && var10 > var13) { @@ -207,15 +207,15 @@ public void read(byte[] var1, int var2, int var3) throws IOException { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-960197049" + descriptor = "(B)V", + garbageValue = "16" ) @Export("load") void load() throws IOException { this.readBufferLength = 0; - if (this.offset != this.fileOffset) { + if (this.fileOffset != this.offset) { this.accessFile.seek(this.offset); this.fileOffset = this.offset; } @@ -237,10 +237,10 @@ void load() throws IOException { } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "480897367" + garbageValue = "267822914" ) @Export("write") public void write(byte[] var1, int var2, int var3) throws IOException { @@ -249,7 +249,7 @@ public void write(byte[] var1, int var2, int var3) throws IOException { this.length = this.offset + (long)var3; } - if (-1L != this.writeBufferOffset && (this.offset < this.writeBufferOffset || this.offset > (long)this.writeBufferLength + this.writeBufferOffset)) { + if (this.writeBufferOffset != -1L && (this.offset < this.writeBufferOffset || this.offset > (long)this.writeBufferLength + this.writeBufferOffset)) { this.flush(); } @@ -265,7 +265,7 @@ public void write(byte[] var1, int var2, int var3) throws IOException { if (var3 <= this.writeBuffer.length) { if (var3 > 0) { - if (-1L == this.writeBufferOffset) { + if (this.writeBufferOffset == -1L) { this.writeBufferOffset = this.offset; } @@ -277,7 +277,7 @@ public void write(byte[] var1, int var2, int var3) throws IOException { } } else { - if (this.offset != this.fileOffset) { + if (this.fileOffset != this.offset) { this.accessFile.seek(this.offset); this.fileOffset = this.offset; } @@ -292,19 +292,19 @@ public void write(byte[] var1, int var2, int var3) throws IOException { long var6 = -1L; if (this.offset >= this.readBufferOffset && this.offset < this.readBufferOffset + (long)this.readBufferLength) { var9 = this.offset; - } else if (this.readBufferOffset >= this.offset && this.readBufferOffset < (long)var3 + this.offset) { + } else if (this.readBufferOffset >= this.offset && this.readBufferOffset < this.offset + (long)var3) { var9 = this.readBufferOffset; } if ((long)var3 + this.offset > this.readBufferOffset && (long)var3 + this.offset <= this.readBufferOffset + (long)this.readBufferLength) { - var6 = this.offset + (long)var3; - } else if ((long)this.readBufferLength + this.readBufferOffset > this.offset && this.readBufferOffset + (long)this.readBufferLength <= (long)var3 + this.offset) { - var6 = this.readBufferOffset + (long)this.readBufferLength; + var6 = (long)var3 + this.offset; + } else if (this.readBufferOffset + (long)this.readBufferLength > this.offset && (long)this.readBufferLength + this.readBufferOffset <= this.offset + (long)var3) { + var6 = (long)this.readBufferLength + this.readBufferOffset; } if (var9 > -1L && var6 > var9) { int var8 = (int)(var6 - var9); - System.arraycopy(var1, (int)(var9 + (long)var2 - this.offset), this.readBuffer, (int)(var9 - this.readBufferOffset), var8); + System.arraycopy(var1, (int)((long)var2 + var9 - this.offset), this.readBuffer, (int)(var9 - this.readBufferOffset), var8); } this.offset += (long)var3; @@ -315,10 +315,10 @@ public void write(byte[] var1, int var2, int var3) throws IOException { } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1104225308" + garbageValue = "16711680" ) @Export("flush") void flush() throws IOException { @@ -338,13 +338,13 @@ void flush() throws IOException { long var3 = -1L; if (this.writeBufferOffset >= this.readBufferOffset && this.writeBufferOffset < (long)this.readBufferLength + this.readBufferOffset) { var1 = this.writeBufferOffset; - } else if (this.readBufferOffset >= this.writeBufferOffset && this.readBufferOffset < this.writeBufferOffset + (long)this.writeBufferLength) { + } else if (this.readBufferOffset >= this.writeBufferOffset && this.readBufferOffset < (long)this.writeBufferLength + this.writeBufferOffset) { var1 = this.readBufferOffset; } - if (this.writeBufferOffset + (long)this.writeBufferLength > this.readBufferOffset && this.writeBufferOffset + (long)this.writeBufferLength <= this.readBufferOffset + (long)this.readBufferLength) { - var3 = this.writeBufferOffset + (long)this.writeBufferLength; - } else if (this.readBufferOffset + (long)this.readBufferLength > this.writeBufferOffset && (long)this.readBufferLength + this.readBufferOffset <= this.writeBufferOffset + (long)this.writeBufferLength) { + if ((long)this.writeBufferLength + this.writeBufferOffset > this.readBufferOffset && (long)this.writeBufferLength + this.writeBufferOffset <= (long)this.readBufferLength + this.readBufferOffset) { + var3 = (long)this.writeBufferLength + this.writeBufferOffset; + } else if ((long)this.readBufferLength + this.readBufferOffset > this.writeBufferOffset && this.readBufferOffset + (long)this.readBufferLength <= this.writeBufferOffset + (long)this.writeBufferLength) { var3 = this.readBufferOffset + (long)this.readBufferLength; } diff --git a/osrs/src/main/java/BufferedNetSocket.java b/osrs/src/main/java/BufferedNetSocket.java index 2e572fd9f..99cfc7069 100644 --- a/osrs/src/main/java/BufferedNetSocket.java +++ b/osrs/src/main/java/BufferedNetSocket.java @@ -6,28 +6,26 @@ import java.io.IOException; import java.net.Socket; -@ObfuscatedName("qy") +@ObfuscatedName("re") @Implements("BufferedNetSocket") public class BufferedNetSocket extends AbstractSocket { - @ObfuscatedName("ar") - static int[][][] field3820; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("socket") Socket socket; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lqa;" + descriptor = "Lra;" ) @Export("source") BufferedSource source; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lqh;" + descriptor = "Lrs;" ) @Export("sink") BufferedSink sink; - public BufferedNetSocket(Socket var1, int var2, int var3) throws IOException { + BufferedNetSocket(Socket var1, int var2, int var3) throws IOException { this.socket = var1; this.socket.setSoTimeout(30000); this.socket.setTcpNoDelay(true); @@ -37,20 +35,20 @@ public BufferedNetSocket(Socket var1, int var2, int var3) throws IOException { this.sink = new BufferedSink(this.socket.getOutputStream(), var3); } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-67" + descriptor = "(II)Z", + garbageValue = "278911957" ) @Export("isAvailable") public boolean isAvailable(int var1) throws IOException { return this.source.isAvailable(var1); } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1947351494" + garbageValue = "1133909296" ) @Export("available") public int available() throws IOException { @@ -60,37 +58,37 @@ public int available() throws IOException { @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "969166986" + garbageValue = "-1251290768" ) @Export("readUnsignedByte") public int readUnsignedByte() throws IOException { return this.source.readUnsignedByte(); } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "([BIIS)I", - garbageValue = "206" + descriptor = "([BIIB)I", + garbageValue = "-54" ) @Export("read") public int read(byte[] var1, int var2, int var3) throws IOException { return this.source.read(var1, var2, var3); } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "1371855899" + garbageValue = "-1734190943" ) @Export("write") public void write(byte[] var1, int var2, int var3) throws IOException { this.sink.write(var1, var2, var3); } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1457160931" + garbageValue = "1195407219" ) @Export("close") public void close() { @@ -109,13 +107,4 @@ public void close() { protected void finalize() { this.close(); } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[Lub;", - garbageValue = "-1" - ) - static PrivateChatMode[] method2261() { - return new PrivateChatMode[]{PrivateChatMode.field4273, PrivateChatMode.field4272, PrivateChatMode.field4271}; - } } \ No newline at end of file diff --git a/osrs/src/main/java/BufferedSink.java b/osrs/src/main/java/BufferedSink.java index 979ed2d82..919deb6b4 100644 --- a/osrs/src/main/java/BufferedSink.java +++ b/osrs/src/main/java/BufferedSink.java @@ -6,31 +6,31 @@ import java.io.IOException; import java.io.OutputStream; -@ObfuscatedName("qh") +@ObfuscatedName("rs") @Implements("BufferedSink") public class BufferedSink implements Runnable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("thread") Thread thread; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("outputStream") OutputStream outputStream; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("capacity") int capacity; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("buffer") byte[] buffer; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("position") int position; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("limit") int limit; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("exception") IOException exception; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("closed") boolean closed; @@ -45,10 +45,10 @@ public class BufferedSink implements Runnable { this.thread.start(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(S)Z", - garbageValue = "8226" + descriptor = "(I)Z", + garbageValue = "-1028287550" ) @Export("isClosed") boolean isClosed() { @@ -70,10 +70,10 @@ boolean isClosed() { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "([BIIB)V", - garbageValue = "37" + garbageValue = "-81" ) @Export("write") void write(byte[] var1, int var2, int var3) throws IOException { @@ -110,10 +110,10 @@ void write(byte[] var1, int var2, int var3) throws IOException { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-210183735" + garbageValue = "1504320255" ) @Export("close") void close() { diff --git a/osrs/src/main/java/BufferedSource.java b/osrs/src/main/java/BufferedSource.java index e77f799b6..c43e069ae 100644 --- a/osrs/src/main/java/BufferedSource.java +++ b/osrs/src/main/java/BufferedSource.java @@ -7,28 +7,28 @@ import java.io.IOException; import java.io.InputStream; -@ObfuscatedName("qa") +@ObfuscatedName("ra") @Implements("BufferedSource") public class BufferedSource implements Runnable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("thread") Thread thread; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("inputStream") InputStream inputStream; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("capacity") int capacity; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("buffer") byte[] buffer; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("position") int position; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("limit") int limit; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("exception") IOException exception; @@ -43,10 +43,10 @@ public class BufferedSource implements Runnable { this.thread.start(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "23" + descriptor = "(II)Z", + garbageValue = "-1783973158" ) @Export("isAvailable") boolean isAvailable(int var1) throws IOException { @@ -77,10 +77,10 @@ boolean isAvailable(int var1) throws IOException { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "719652359" + garbageValue = "1286803903" ) @Export("available") int available() throws IOException { @@ -101,10 +101,10 @@ int available() throws IOException { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "102" + descriptor = "(I)I", + garbageValue = "-125616841" ) @Export("readUnsignedByte") int readUnsignedByte() throws IOException { @@ -124,10 +124,10 @@ int readUnsignedByte() throws IOException { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BIII)I", - garbageValue = "360959196" + descriptor = "([BIIB)I", + garbageValue = "-29" ) @Export("read") int read(byte[] var1, int var2, int var3) throws IOException { @@ -165,10 +165,10 @@ int read(byte[] var1, int var2, int var3) throws IOException { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-20258" + descriptor = "(I)V", + garbageValue = "1957181554" ) @Export("close") void close() { @@ -236,13 +236,4 @@ public void run() { } } } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;B)V", - garbageValue = "-122" - ) - public static void method2268(AbstractArchive var0) { - DbTableType.field4110 = var0; - } } \ No newline at end of file diff --git a/osrs/src/main/java/ByteArrayPool.java b/osrs/src/main/java/ByteArrayPool.java index 0d8d95a03..125973a5b 100644 --- a/osrs/src/main/java/ByteArrayPool.java +++ b/osrs/src/main/java/ByteArrayPool.java @@ -3,287 +3,137 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; -@ObfuscatedName("pb") +@ObfuscatedName("qq") @Implements("ByteArrayPool") public class ByteArrayPool { - @ObfuscatedName("ac") + @ObfuscatedName("ab") + static final Object field3781; + @ObfuscatedName("au") @Export("ByteArrayPool_smallCount") static int ByteArrayPool_smallCount; - @ObfuscatedName("ai") + @ObfuscatedName("aa") @Export("ByteArrayPool_mediumCount") static int ByteArrayPool_mediumCount; - @ObfuscatedName("az") + @ObfuscatedName("ac") @Export("ByteArrayPool_largeCount") static int ByteArrayPool_largeCount; - @ObfuscatedName("ap") - static int field3743; - @ObfuscatedName("aa") - static int field3738; - @ObfuscatedName("af") - static int field3741; - @ObfuscatedName("ad") - static int field3740; - @ObfuscatedName("aq") - static int field3744; @ObfuscatedName("al") + static int field3774; + @ObfuscatedName("az") + static int field3779; + @ObfuscatedName("ap") + static int field3775; + @ObfuscatedName("av") + static int field3777; + @ObfuscatedName("ax") + static int field3778; + @ObfuscatedName("as") @Export("ByteArrayPool_small") static byte[][] ByteArrayPool_small; - @ObfuscatedName("an") + @ObfuscatedName("ay") @Export("ByteArrayPool_medium") static byte[][] ByteArrayPool_medium; - @ObfuscatedName("ar") + @ObfuscatedName("ak") @Export("ByteArrayPool_large") static byte[][] ByteArrayPool_large; - @ObfuscatedName("ab") - static byte[][] field3734; - @ObfuscatedName("ah") - static ArrayList field3746; + @ObfuscatedName("aj") + static byte[][] field3768; + @ObfuscatedName("aw") + static ArrayList field3780; static { + field3781 = new Object(); ByteArrayPool_smallCount = 0; ByteArrayPool_mediumCount = 0; ByteArrayPool_largeCount = 0; - field3743 = 0; - field3738 = 1000; - field3741 = 250; - field3740 = 100; - field3744 = 50; + field3774 = 0; + field3779 = 1000; + field3775 = 250; + field3777 = 100; + field3778 = 50; ByteArrayPool_small = new byte[1000][]; ByteArrayPool_medium = new byte[250][]; ByteArrayPool_large = new byte[100][]; - field3734 = new byte[50][]; - field3746 = new ArrayList(); - class101.method599(); + field3768 = new byte[50][]; + field3780 = new ArrayList(); + Renderable.method1514(); new HashMap(); } - @ObfuscatedName("ao") + @ObfuscatedName("hb") @ObfuscatedSignature( - descriptor = "(IZI)[B", - garbageValue = "1767173651" + descriptor = "(I)V", + garbageValue = "1234231525" ) - @Export("ByteArrayPool_getArrayBool") - public static synchronized byte[] ByteArrayPool_getArrayBool(int var0, boolean var1) { - byte[] var2; - if ((var0 == 100 || var0 < 100 && var1) && ByteArrayPool_smallCount > 0) { - var2 = ByteArrayPool_small[--ByteArrayPool_smallCount]; - ByteArrayPool_small[ByteArrayPool_smallCount] = null; - return var2; - } else if ((var0 == 5000 || var0 < 5000 && var1) && ByteArrayPool_mediumCount > 0) { - var2 = ByteArrayPool_medium[--ByteArrayPool_mediumCount]; - ByteArrayPool_medium[ByteArrayPool_mediumCount] = null; - return var2; - } else if ((var0 == 10000 || var0 < 10000 && var1) && ByteArrayPool_largeCount > 0) { - var2 = ByteArrayPool_large[--ByteArrayPool_largeCount]; - ByteArrayPool_large[ByteArrayPool_largeCount] = null; - return var2; - } else if ((var0 == 30000 || var0 < 30000 && var1) && field3743 > 0) { - var2 = field3734[--field3743]; - field3734[field3743] = null; - return var2; - } else { - int var4; - if (class410.ByteArrayPool_arrays != null) { - for (var4 = 0; var4 < class416.ByteArrayPool_alternativeSizes.length; ++var4) { - if ((class416.ByteArrayPool_alternativeSizes[var4] == var0 || var0 < class416.ByteArrayPool_alternativeSizes[var4] && var1) && StructComposition.ByteArrayPool_altSizeArrayCounts[var4] > 0) { - byte[] var3 = class410.ByteArrayPool_arrays[var4][--StructComposition.ByteArrayPool_altSizeArrayCounts[var4]]; - class410.ByteArrayPool_arrays[var4][StructComposition.ByteArrayPool_altSizeArrayCounts[var4]] = null; - return var3; - } - } - } - - if (var1 && class416.ByteArrayPool_alternativeSizes != null) { - for (var4 = 0; var4 < class416.ByteArrayPool_alternativeSizes.length; ++var4) { - if (var0 <= class416.ByteArrayPool_alternativeSizes[var4] && StructComposition.ByteArrayPool_altSizeArrayCounts[var4] < class410.ByteArrayPool_arrays[var4].length) { - return new byte[class416.ByteArrayPool_alternativeSizes[var4]]; - } - } - } + @Export("reloadJS5") + static void reloadJS5() { + if (class176.varcs.hasUnwrittenChanges()) { + class176.varcs.write(); + } - return new byte[var0]; + class53.method307(); + if (Message.mouseRecorder != null) { + Message.mouseRecorder.isRunning = false; } - } - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-8" - ) - static void method2148() { - Iterator var0 = class305.musicSongs.iterator(); + Message.mouseRecorder = null; + Client.packetWriter.close(); + if (GameEngine.taskHandler != null) { + try { + GameEngine.taskHandler.close(); + } catch (Exception var3) { + } + } - while (true) { - MusicSong var1; - do { - if (!var0.hasNext()) { - class305.musicSongs.clear(); - return; - } + GameEngine.taskHandler = null; + ObjectSound.method424(); + class182.method921(); + class36.scene.clear(); - var1 = (MusicSong)var0.next(); - } while(var1 == null); + for (int var1 = 0; var1 < 4; ++var1) { + Client.collisionMaps[var1].clear(); + } - var1.midiPcmStream.clear(); - var1.midiPcmStream.method1633(); - var1.midiPcmStream.setPcmStreamVolume(0); - var1.midiPcmStream.field2809 = 0; - int var2 = var1.musicTrackGroupId; - int var3 = var1.musicTrackFileId; - Iterator var4 = class305.field2778.iterator(); + NewShit.worldMap = null; + WorldMapManager.method1265(0, 0); + class472.method2350(); + Client.playingJingle = false; + WorldMapSectionType.method1311(); + if (MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.shutdown(); + } - while (var4.hasNext()) { - class311 var5 = (class311)var4.next(); - var5.vmethod1644(var2, var3); - } + WorldMapSectionType.field2038.method1962(); + class227.method1164(); + if (class60.urlRequester != null) { + class60.urlRequester.close(); } - } - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-2055623953" - ) - static int method2149(int var0, Script var1, boolean var2) { - Widget var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var0 == 2600) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollX; - return 1; - } else if (var0 == 2601) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollY; - return 1; - } else if (var0 == 2602) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.text; - return 1; - } else if (var0 == 2603) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollWidth; - return 1; - } else if (var0 == 2604) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollHeight; - return 1; - } else if (var0 == 2605) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelZoom; - return 1; - } else if (var0 == 2606) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleX; - return 1; - } else if (var0 == 2607) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleZ; - return 1; - } else if (var0 == 2608) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleY; - return 1; - } else if (var0 == 2609) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.transparencyTop; - return 1; - } else if (var0 == 2610) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.transparencyBot; - return 1; - } else if (var0 == 2611) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.color; - return 1; - } else if (var0 == 2612) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.color2; - return 1; - } else if (var0 == 2613) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); - return 1; - } else if (var0 == 2614) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; - return 1; - } else { - class324 var4; - if (var0 == 2617) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2892 * -1007608077 * 1891510843 : 0; - } + HealthBarDefinition.method916(); + JagexCache.JagexCache_dat2File = null; + JagexCache.JagexCache_idx255File = null; + KeyHandler.JagexCache_idxFiles = null; + ObjTypeCustomisation.method876(); + class302.field2511 = null; + Client.archiveLoaders.clear(); + Client.field549 = 0; + WorldMapSectionType.field2038 = new JagNetThread(); + class60.urlRequester = new class113(SpriteMask.client.field661, 218); - if (var0 == 2618) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2890 * -113152143 * 439316881 : 0; - return 1; - } else { - class329 var7; - if (var0 == 2619) { - var7 = var3.method1844(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1780().method2041() : ""; - return 1; - } else if (var0 == 2620) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2891 * 1092445257 * -767308295 : 0; - return 1; - } else if (var0 == 2621) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1790() : 0; - return 1; - } else if (var0 == 2622) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1791() : 0; - return 1; - } else if (var0 == 2623) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1792() : 0; - return 1; - } else if (var0 == 2624) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null && var7.method1782() ? 1 : 0; - return 1; - } else if (var0 != 2625) { - if (var0 == 2626) { - var7 = var3.method1844(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1781().method2113() : ""; - return 1; - } else if (var0 == 2627) { - var7 = var3.method1844(); - int var5 = var7 != null ? var7.method1786() : 0; - int var6 = var7 != null ? var7.method1785() : 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Math.min(var5, var6); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Math.max(var5, var6); - return 1; - } else if (var0 == 2628) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1785() : 0; - return 1; - } else if (var0 == 2629) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1794() : 0; - return 1; - } else if (var0 == 2630) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1793() : 0; - return 1; - } else if (var0 == 2631) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1795() : 0; - return 1; - } else if (var0 == 2632) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1796() : 0; - return 1; - } else { - class27 var8; - if (var0 == 2633) { - var8 = var3.method1846(); - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = var8 != null ? var8.method98(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]) : 0; - return 1; - } else if (var0 == 2634) { - var8 = var3.method1846(); - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = var8 != null ? var8.method99((char)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]) : 0; - return 1; - } else { - return 2; - } - } - } else { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null && var7.method1783() ? 1 : 0; - return 1; - } - } + try { + class339.method1744("oldschool", ItemLayer.field2109, class191.field1585.name, 0, 23); + } catch (IOException var2) { + throw new RuntimeException(var2); } + + class302.field2511 = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); + GameEngine.taskHandler = new TaskHandler(); + SpriteMask.client.method164(); + Client.field414 = class92.field942; + WorldMapSection2.updateGameState(0); } } \ No newline at end of file diff --git a/osrs/src/main/java/Calendar.java b/osrs/src/main/java/Calendar.java index dca6510c1..1d9a24a37 100644 --- a/osrs/src/main/java/Calendar.java +++ b/osrs/src/main/java/Calendar.java @@ -4,16 +4,16 @@ import java.util.TimeZone; -@ObfuscatedName("mo") +@ObfuscatedName("nc") @Implements("Calendar") public class Calendar { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("MONTH_NAMES_ENGLISH_GERMAN") public static final String[][] MONTH_NAMES_ENGLISH_GERMAN; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("DAYS_OF_THE_WEEK") public static final String[] DAYS_OF_THE_WEEK; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("Calendar_calendar") public static java.util.Calendar Calendar_calendar; diff --git a/osrs/src/main/java/Canvas.java b/osrs/src/main/java/Canvas.java index 57ff334b9..b0e7fc3c0 100644 --- a/osrs/src/main/java/Canvas.java +++ b/osrs/src/main/java/Canvas.java @@ -4,30 +4,18 @@ import net.runelite.mapping.ObfuscatedSignature; import java.awt.*; -import java.util.ArrayList; +import java.net.URL; import java.util.Iterator; -@ObfuscatedName("av") +@ObfuscatedName("ag") @Implements("Canvas") public final class Canvas extends java.awt.Canvas { - @ObfuscatedName("wb") + @ObfuscatedName("fk") @ObfuscatedSignature( - descriptor = "Lsi;" + descriptor = "Loh;" ) - @Export("worldMap") - static WorldMap worldMap; - @ObfuscatedName("ae") - static long field61; - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lbe;" - ) - @Export("soundSystem") - static SoundSystem soundSystem; - @ObfuscatedName("pr") - @Export("selectedSpellFlags") - static int selectedSpellFlags; - @ObfuscatedName("au") + static Archive field68; + @ObfuscatedName("at") @Export("component") Component component; @@ -43,124 +31,182 @@ public final void paint(Graphics var1) { this.component.paint(var1); } - @ObfuscatedName("hr") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1772266899" + descriptor = "(II)Lhd;", + garbageValue = "-1413317241" ) - static final void method77() { - int var3; - for (int var0 = 0; var0 < Client.soundEffectCount; ++var0) { - int var10002 = Client.queuedSoundEffectDelays[var0]--; - if (Client.queuedSoundEffectDelays[var0] >= -10) { - SoundEffect var9 = Client.soundEffects[var0]; - if (var9 == null) { - Object var10000 = null; - var9 = SoundEffect.readSoundEffect(class28.field81, Client.soundEffectIds[var0], 0); - if (var9 == null) { - continue; - } - - int[] var18 = Client.queuedSoundEffectDelays; - var18[var0] += var9.calculateDelay(); - Client.soundEffects[var0] = var9; - } + public static FloorOverlayDefinition method85(int var0) { + FloorOverlayDefinition var1 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var0); + var1 = new FloorOverlayDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2), var0); + } - if (Client.queuedSoundEffectDelays[var0] < 0) { - int var2; - if (Client.soundLocations[var0] != 0) { - var3 = (Client.soundLocations[var0] & 255) * 128; - int var4 = Client.soundLocations[var0] >> 16 & 255; - int var5 = var4 * 128 + 64 - VarbitComposition.localPlayer.x; - if (var5 < 0) { - var5 = -var5; - } + var1.postDecode(); + FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var1, (long)var0); + return var1; + } + } - int var6 = Client.soundLocations[var0] >> 8 & 255; - int var7 = var6 * 128 + 64 - VarbitComposition.localPlayer.y; - if (var7 < 0) { - var7 = -var7; - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Lha;", + garbageValue = "-2114676262" + ) + @Export("SpotAnimationDefinition_get") + public static SpotAnimationDefinition SpotAnimationDefinition_get(int var0) { + SpotAnimationDefinition var1 = (SpotAnimationDefinition)SpotAnimationDefinition.SpotAnimationDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = SpotAnimationDefinition.SpotAnimationDefinition_archive.takeFile(13, var0); + var1 = new SpotAnimationDefinition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); + } - int var8 = var7 + var5 - 128; - if (var8 > var3) { - Client.queuedSoundEffectDelays[var0] = -100; - continue; - } + SpotAnimationDefinition.SpotAnimationDefinition_cached.put(var1, (long)var0); + return var1; + } + } - if (var8 < 0) { - var8 = 0; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ILjava/lang/String;B)Z", + garbageValue = "50" + ) + static boolean method88(String var0, int var1, String var2) { + if (var1 == 0) { + try { + if (!class31.field86.startsWith("win")) { + throw new Exception(); + } else if (!var0.startsWith("http://") && !var0.startsWith("https://")) { + throw new Exception(); + } else { + String var10 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*"; + + for (int var4 = 0; var4 < var0.length(); ++var4) { + if (var10.indexOf(var0.charAt(var4)) == -1) { + throw new Exception(); } - - var2 = (var3 - var8) * class449.clientPreferences.getAreaSoundEffectsVolume() / var3; - } else { - var2 = class449.clientPreferences.getCurrentSoundEffectsVolume(); - } - - if (var2 > 0) { - RawSound var10 = var9.toRawSound().resample(class330.decimator); - RawPcmStream var11 = RawPcmStream.createRawPcmStream(var10, 100, var2); - var11.setNumLoops(Client.queuedSoundEffectLoops[var0] - 1); - class162.pcmStreamMixer.addSubStream(var11); } - Client.queuedSoundEffectDelays[var0] = -100; - } - } else { - --Client.soundEffectCount; - - for (int var1 = var0; var1 < Client.soundEffectCount; ++var1) { - Client.soundEffectIds[var1] = Client.soundEffectIds[var1 + 1]; - Client.soundEffects[var1] = Client.soundEffects[var1 + 1]; - Client.queuedSoundEffectLoops[var1] = Client.queuedSoundEffectLoops[var1 + 1]; - Client.queuedSoundEffectDelays[var1] = Client.queuedSoundEffectDelays[var1 + 1]; - Client.soundLocations[var1] = Client.soundLocations[var1 + 1]; + Runtime.getRuntime().exec("cmd /c start \"j\" \"" + var0 + "\""); + return true; } + } catch (Throwable var5) { + return false; + } + } else if (var1 == 1) { + try { + Object var3 = class26.invoke(class31.field85, var2, new Object[]{(new URL(class31.field85.getCodeBase(), var0)).toString()}); + return var3 != null; + } catch (Throwable var6) { + return false; + } + } else if (var1 == 2) { + try { + class31.field85.getAppletContext().showDocument(new URL(class31.field85.getCodeBase(), var0), "_blank"); + return true; + } catch (Exception var7) { + return false; + } + } else if (var1 == 3) { + try { + class26.method108(class31.field85, "loggedout"); + } catch (Throwable var9) { + } - --var0; + try { + class31.field85.getAppletContext().showDocument(new URL(class31.field85.getCodeBase(), var0), "_top"); + return true; + } catch (Exception var8) { + return false; } + } else { + throw new IllegalArgumentException(); + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(FFFFLfm;I)V", + garbageValue = "-2092193307" + ) + static void method90(float var0, float var1, float var2, float var3, class131 var4) { + float var5 = var1 - var0; + float var6 = var2 - var1; + float var7 = var3 - var2; + float var8 = var6 - var5; + var4.field1262 = var7 - var6 - var8; + var4.field1269 = var8 + var8 + var8; + var4.field1266 = var5 + var5 + var5; + var4.field1268 = var0; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "6" + ) + static void method89() { + Script.Script_cached.clear(); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-18" + ) + static void method87() { + Iterator var0 = Messages.Messages_hashTable.iterator(); + + while (var0.hasNext()) { + Message var1 = (Message)var0.next(); + var1.clearIsFromIgnored(); } - if (Client.playingJingle) { - boolean var15; - if (!class305.field2771.isEmpty()) { - var15 = true; - } else if (!class305.musicSongs.isEmpty() && class305.musicSongs.get(0) != null && ((MusicSong)class305.musicSongs.get(0)).midiPcmStream != null) { - var15 = ((MusicSong)class305.musicSongs.get(0)).midiPcmStream.isReady(); - } else { - var15 = false; + } + + @ObfuscatedName("js") + @ObfuscatedSignature( + descriptor = "(Ldf;II)V", + garbageValue = "330156995" + ) + static final void method91(Actor var0, int var1) { + class514.worldToScreen(var0.x, var0.y, var1); + } + + @ObfuscatedName("ln") + @ObfuscatedSignature( + descriptor = "(IIIIIIIII)V", + garbageValue = "1842329520" + ) + @Export("drawWidgets") + static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + UserComparator10.field1197 = null; + SoundSystem.drawInterface(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6, var7); + if (UserComparator10.field1197 != null) { + SoundSystem.drawInterface(UserComparator10.field1197, -1412584499, var1, var2, var3, var4, ParamComposition.field1629, PendingSpawn.field950, var7); + UserComparator10.field1197 = null; } - if (!var15) { - if (class449.clientPreferences.getCurrentMusicVolume() != 0) { - boolean var16 = !class305.field2773.isEmpty(); - if (var16) { - Archive var12 = class385.archive6; - var3 = class449.clientPreferences.getCurrentMusicVolume(); - if (!class305.field2773.isEmpty()) { - ArrayList var17 = new ArrayList(); - Iterator var13 = class305.field2773.iterator(); - - while (var13.hasNext()) { - MusicSong var14 = (MusicSong)var13.next(); - var14.field2865 = false; - var14.field2866 = false; - var14.field2862 = false; - var14.field2863 = false; - var14.musicTrackArchive = var12; - var14.musicTrackVolume = var3; - var14.field2867 = 0.0F; - var17.add(var14); - } - - class53.method291(var17, class305.musicPlayerStatus, class305.field2766, class305.field2769, class305.field2768, false); - } - } + } else { + if (var7 != -1) { + Client.field407[var7] = true; + } else { + for (int var8 = 0; var8 < 100; ++var8) { + Client.field407[var8] = true; } - - Client.playingJingle = false; } - } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/ChatChannel.java b/osrs/src/main/java/ChatChannel.java index bf3d34cdc..9ff7711e6 100644 --- a/osrs/src/main/java/ChatChannel.java +++ b/osrs/src/main/java/ChatChannel.java @@ -3,16 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("di") +@ObfuscatedName("dk") @Implements("ChatChannel") public class ChatChannel { - @ObfuscatedName("ae") + @ObfuscatedName("al") + static int[] field835; + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "[Lco;" ) @Export("messages") Message[] messages; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("count") int count; @@ -20,10 +22,10 @@ public class ChatChannel { this.messages = new Message[100]; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;B)Lco;", - garbageValue = "100" + descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lco;", + garbageValue = "-698368105" ) @Export("addMessage") Message addMessage(int var1, String var2, String var3, String var4) { @@ -51,57 +53,23 @@ Message addMessage(int var1, String var2, String var3, String var4) { return var5; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(II)Lco;", - garbageValue = "-1297953730" + garbageValue = "-649876518" ) @Export("getMessage") Message getMessage(int var1) { return var1 >= 0 && var1 < this.count ? this.messages[var1] : null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1659980687" + garbageValue = "519230888" ) @Export("size") int size() { return this.count; } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "818523875" - ) - static void method451() { - Messages.Messages_channels.clear(); - Messages.Messages_hashTable.clear(); - Messages.Messages_queue.clear(); - Messages.Messages_count = 0; - } - - @ObfuscatedName("hg") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "130826002" - ) - static boolean method455() { - if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { - while (Client.archiveLoadersDone < Client.archiveLoaders.size()) { - ArchiveLoader var0 = (ArchiveLoader)Client.archiveLoaders.get(Client.archiveLoadersDone); - if (!var0.isLoaded()) { - return false; - } - - ++Client.archiveLoadersDone; - } - - return true; - } else { - return true; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/ClanChannel.java b/osrs/src/main/java/ClanChannel.java index 7bb0f931d..cb597445a 100644 --- a/osrs/src/main/java/ClanChannel.java +++ b/osrs/src/main/java/ClanChannel.java @@ -7,46 +7,48 @@ import java.util.BitSet; import java.util.List; -@ObfuscatedName("go") +@ObfuscatedName("gn") @Implements("ClanChannel") public class ClanChannel extends Node { - @ObfuscatedName("au") - boolean field1423; - @ObfuscatedName("ae") - boolean field1422; - @ObfuscatedName("ao") + @ObfuscatedName("aw") + public static String field1413; + @ObfuscatedName("at") + boolean field1415; + @ObfuscatedName("ah") + boolean field1414; + @ObfuscatedName("ar") @Export("members") public List members; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("sortedMembers") int[] sortedMembers; - @ObfuscatedName("ac") - public long field1429; - @ObfuscatedName("ai") + @ObfuscatedName("ab") + public long field1421; + @ObfuscatedName("au") @Export("name") public String name; - @ObfuscatedName("az") - public byte field1426; - @ObfuscatedName("ap") - public byte field1425; + @ObfuscatedName("aa") + public byte field1417; + @ObfuscatedName("ac") + public byte field1418; static { new BitSet(65536); } @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) public ClanChannel(Buffer var1) { - this.field1422 = true; + this.field1414 = true; this.name = null; - this.method861(var1); + this.method859(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)[I", - garbageValue = "74" + garbageValue = "85" ) @Export("getSortedMembers") public int[] getSortedMembers() { @@ -55,20 +57,20 @@ public int[] getSortedMembers() { this.sortedMembers = new int[this.members.size()]; for (int var2 = 0; var2 < this.members.size(); this.sortedMembers[var2] = var2++) { - var1[var2] = ((ClanChannelMember)this.members.get(var2)).username.method2700(); + var1[var2] = ((ClanChannelMember)this.members.get(var2)).username.method2718(); } int[] var3 = this.sortedMembers; - VerticalAlignment.method998(var1, var3, 0, var1.length - 1); + class475.method2362(var1, var3, 0, var1.length - 1); } return this.sortedMembers; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfu;I)V", - garbageValue = "2089443829" + descriptor = "(Lft;I)V", + garbageValue = "1476937216" ) @Export("addMember") void addMember(ClanChannelMember var1) { @@ -76,10 +78,10 @@ void addMember(ClanChannelMember var1) { this.sortedMembers = null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-753870503" + descriptor = "(IB)V", + garbageValue = "93" ) @Export("removeMember") void removeMember(int var1) { @@ -87,22 +89,22 @@ void removeMember(int var1) { this.sortedMembers = null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "65" + garbageValue = "0" ) - public int method859() { + public int method857() { return this.members.size(); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;S)I", - garbageValue = "179" + descriptor = "(Ljava/lang/String;B)I", + garbageValue = "-62" ) - public int method860(String var1) { - if (!this.field1422) { + public int method858(String var1) { + if (!this.field1414) { throw new RuntimeException("Displaynames not available"); } else { for (int var2 = 0; var2 < this.members.size(); ++var2) { @@ -115,19 +117,19 @@ public int method860(String var1) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1748777408" + descriptor = "(Luj;B)V", + garbageValue = "92" ) - void method861(Buffer var1) { + void method859(Buffer var1) { int var2 = var1.readUnsignedByte(); if ((var2 & 1) != 0) { - this.field1423 = true; + this.field1415 = true; } if ((var2 & 2) != 0) { - this.field1422 = true; + this.field1414 = true; } int var3 = 2; @@ -136,22 +138,22 @@ void method861(Buffer var1) { } super.key = var1.readLong(); - this.field1429 = var1.readLong(); + this.field1421 = var1.readLong(); this.name = var1.readStringCp1252NullTerminated(); var1.readBoolean(); - this.field1425 = var1.readByte(); - this.field1426 = var1.readByte(); + this.field1418 = var1.readByte(); + this.field1417 = var1.readByte(); int var4 = var1.readUnsignedShort(); if (var4 > 0) { this.members = new ArrayList(var4); for (int var5 = 0; var5 < var4; ++var5) { ClanChannelMember var6 = new ClanChannelMember(); - if (this.field1423) { + if (this.field1415) { var1.readLong(); } - if (this.field1422) { + if (this.field1414) { var6.username = new Username(var1.readStringCp1252NullTerminated()); } @@ -167,81 +169,53 @@ void method861(Buffer var1) { } - @ObfuscatedName("au") + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "-18" + ) + public static boolean method853(int var0) { + return (var0 >> 22 & 1) != 0; + } + + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(II)Lhz;", - garbageValue = "1042028592" + descriptor = "(IIB)I", + garbageValue = "-82" ) - @Export("KitDefinition_get") - public static KitDefinition KitDefinition_get(int var0) { - KitDefinition var1 = (KitDefinition)KitDefinition.KitDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; + static final int method861(int var0, int var1) { + if (var0 == -1) { + return 12345678; } else { - byte[] var2 = KitDefinition.KitDefinition_archive.takeFile(3, var0); - var1 = new KitDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); + var1 = (var0 & 127) * var1 / 128; + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; } - KitDefinition.KitDefinition_cached.put(var1, (long)var0); - return var1; + return (var0 & 65408) + var1; } } - @ObfuscatedName("jx") + @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(Lie;S)V", - garbageValue = "12208" + descriptor = "(Ljava/lang/String;I)I", + garbageValue = "1458009071" ) - static void method862(class211 var0) { - if (var0 != null && var0.field1878 != null) { - if (var0.field1878.childIndex >= 0) { - Widget var1 = class92.getWidget(var0.field1878.parentId); - if (var1 == null || var1.children == null || var1.children.length == 0 || var0.field1878.childIndex >= var1.children.length || var0.field1878 != var1.children[var0.field1878.childIndex]) { - return; - } - } - - if (var0.field1878.type == 11 && var0.field1875 == 0) { - if (var0.field1878.method1833(var0.field1876, var0.field1877, 0, 0)) { - switch(var0.field1878.method1837()) { - case 0: - class30.openURL(var0.field1878.method1839(), true, false); - break; - case 1: - int var2 = NewShit.getWidgetFlags(var0.field1878); - boolean var5 = (var2 >> 22 & 1) != 0; - if (var5) { - int[] var3 = var0.field1878.method1840(); - if (var3 != null) { - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2583, Client.packetWriter.isaacCipher); - var4.packetBuffer.writeIntIME_(var3[1]); - var4.packetBuffer.writeIntIME(var0.field1878.id); - var4.packetBuffer.writeIntME(var0.field1878.childIndex); - var4.packetBuffer.writeInt(var0.field1878.method1838()); - var4.packetBuffer.writeIntIME(var3[2]); - var4.packetBuffer.writeIntIME(var3[0]); - Client.packetWriter.addNode(var4); - } - } - } - } - } else if (var0.field1878.type == 12) { - class329 var6 = var0.field1878.method1844(); - if (var6 != null && var6.method1783()) { - switch(var0.field1875) { - case 0: - Client.field423.method1088(var0.field1878); - var6.method1731(true); - var6.method1770(var0.field1876, var0.field1877, Client.keyHandlerInstance.getKeyPressed(82), Client.keyHandlerInstance.getKeyPressed(81)); - break; - case 1: - var6.method1771(var0.field1876, var0.field1877); - } - } - } + @Export("stringCp1252NullTerminatedByteSize") + public static int stringCp1252NullTerminatedByteSize(String var0) { + return var0.length() + 1; + } + @ObfuscatedName("ml") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1117566535" + ) + static final void method862(int var0) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + SoundCache.drawModelComponents(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0], -1); } } } \ No newline at end of file diff --git a/osrs/src/main/java/ClanChannelMember.java b/osrs/src/main/java/ClanChannelMember.java index 28628609a..60775c583 100644 --- a/osrs/src/main/java/ClanChannelMember.java +++ b/osrs/src/main/java/ClanChannelMember.java @@ -3,29 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fu") +@ObfuscatedName("ft") @Implements("ClanChannelMember") public class ClanChannelMember { - @ObfuscatedName("cd") - @ObfuscatedSignature( - descriptor = "Lon;" - ) - @Export("clientLanguage") - static Language clientLanguage; - @ObfuscatedName("fa") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field1339; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("rank") public byte rank; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("world") public int world; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("username") public Username username; @@ -33,237 +22,33 @@ public class ClanChannelMember { ClanChannelMember() { } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIIII)I", - garbageValue = "-485826730" - ) - static final int method775(int var0, int var1, int var2, int var3) { - return var3 * var0 + var2 * var1 >> 16; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "2" - ) - static int method776(int var0) { - Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); - if (var1 == null) { - return -1; - } else { - return var1.nextDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.nextDual).count; - } - } - - @ObfuscatedName("iu") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(Ldr;I)V", - garbageValue = "-973066355" + descriptor = "(ILdt;ZI)I", + garbageValue = "-1206628329" ) - static final void method777(Actor var0) { - int var2; - int var3; - int var4; - int var6; - if (var0.targetIndex != -1) { - Object var1 = null; - var2 = 65536; - if (var0.targetIndex < var2) { - var1 = Client.npcs[var0.targetIndex]; - } else { - var1 = Client.players[var0.targetIndex - var2]; - } - - if (var1 != null) { - var3 = var0.x - ((Actor)var1).x; - var4 = var0.y - ((Actor)var1).y; - if (var3 != 0 || var4 != 0) { - var6 = (int)(Math.atan2((double)var3, (double)var4) * 325.94932345220167D) & 2047; - var0.orientation = var6; - } - } else if (var0.false0) { - var0.targetIndex = -1; - var0.false0 = false; - } - } - - int var7; - if (var0.pathLength == 0 || var0.field1021 > 0) { - var7 = -1; - if (var0.field988 != -1 && var0.field989 != -1) { - var2 = var0.field988 * 128 - UrlRequester.baseX * 128 + 64; - var3 = var0.field989 * 128 - class47.baseY * 128 + 64; - var4 = var0.x - var2; - int var8 = var0.y - var3; - if (var4 != 0 || var8 != 0) { - var6 = (int)(Math.atan2((double)var4, (double)var8) * 325.94932345220167D) & 2047; - var7 = var6; - } - } else if (var0.movingOrientation != -1) { - var7 = var0.movingOrientation; - } - - if (var7 != -1) { - var0.orientation = var7; - if (var0.field959) { - var0.rotation = var0.orientation; - } - } - - var0.method521(); - } - - var7 = var0.orientation - var0.rotation & 2047; - if (var7 != 0) { - boolean var10 = true; - boolean var11 = true; - ++var0.field1010; - var4 = var7 > 1024 ? -1 : 1; - var0.rotation += var0.field1017 * var4; - boolean var12 = true; - if (var7 < var0.field1017 || var7 > 2048 - var0.field1017) { - var0.rotation = var0.orientation; - var12 = false; - } - - if (var0.field1017 > 0 && var0.movementSequence == var0.idleSequence && (var0.field1010 > 25 || var12)) { - if (var4 == -1 && var0.turnLeftSequence != -1) { - var0.movementSequence = var0.turnLeftSequence; - } else if (var4 == 1 && var0.turnRightSequence != -1) { - var0.movementSequence = var0.turnRightSequence; - } else { - var0.movementSequence = var0.walkSequence; - } - } - - var0.rotation &= 2047; + static int method768(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + if (var0 == 1500) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.x; + return 1; + } else if (var0 == 1501) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.y; + return 1; + } else if (var0 == 1502) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.width; + return 1; + } else if (var0 == 1503) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.height; + return 1; + } else if (var0 == 1504) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; + return 1; + } else if (var0 == 1505) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.parentId; + return 1; } else { - if (var0.false0) { - var0.targetIndex = -1; - var0.false0 = false; - } - - var0.field1010 = 0; + return 2; } - - } - - @ObfuscatedName("me") - @ObfuscatedSignature( - descriptor = "(Lmi;B)V", - garbageValue = "70" - ) - static final void method778(Widget var0) { - String var1; - int var2; - int var3; - if (var0.buttonType == 1) { - var1 = var0.buttonText; - var2 = var0.id; - var3 = var0.itemId; - UserComparator8.insertMenuItem(var1, "", 24, 0, 0, var2, var3, false); - } - - int var4; - String var9; - if (var0.buttonType == 2 && !Client.isSpellSelected) { - var1 = class300.Widget_getSpellActionName(var0); - if (var1 != null) { - var9 = MoveSpeed.colorStartTag(65280) + var0.field3097; - var3 = var0.id; - var4 = var0.itemId; - UserComparator8.insertMenuItem(var1, var9, 25, 0, -1, var3, var4, false); - } - } - - if (var0.buttonType == 3) { - class385.insertMenuItemNoShift("Close", "", 26, 0, 0, var0.id); - } - - if (var0.buttonType == 4) { - class385.insertMenuItemNoShift(var0.buttonText, "", 28, 0, 0, var0.id); - } - - if (var0.buttonType == 5) { - class385.insertMenuItemNoShift(var0.buttonText, "", 29, 0, 0, var0.id); - } - - if (var0.buttonType == 6 && Client.meslayerContinueWidget == null) { - class385.insertMenuItemNoShift(var0.buttonText, "", 30, 0, -1, var0.id); - } - - if (var0.isIf3) { - int var5; - int var6; - int var7; - String var11; - String var12; - if (Client.isSpellSelected) { - var2 = NewShit.getWidgetFlags(var0); - boolean var10 = (var2 >> 21 & 1) != 0; - if (var10 && (Canvas.selectedSpellFlags & 32) == 32) { - var11 = Client.field600; - var12 = Client.field601 + " " + "->" + " " + var0.dataText; - var5 = var0.childIndex; - var6 = var0.id; - var7 = var0.itemId; - UserComparator8.insertMenuItem(var11, var12, 58, 0, var5, var6, var7, false); - } - } else { - for (int var16 = 9; var16 >= 5; --var16) { - var4 = NewShit.getWidgetFlags(var0); - boolean var14 = (var4 >> var16 + 1 & 1) != 0; - if (!var14 && var0.onOp == null) { - var9 = null; - } else if (var0.actions != null && var0.actions.length > var16 && var0.actions[var16] != null && var0.actions[var16].trim().length() != 0) { - var9 = var0.actions[var16]; - } else { - var9 = null; - } - - if (var9 != null) { - var12 = var0.dataText; - var5 = var16 + 1; - var6 = var0.childIndex; - var7 = var0.id; - int var8 = var0.itemId; - UserComparator8.insertMenuItem(var9, var12, 1007, var5, var6, var7, var8, false); - } - } - - var1 = class300.Widget_getSpellActionName(var0); - if (var1 != null) { - var9 = var0.dataText; - var3 = var0.childIndex; - var4 = var0.id; - var5 = var0.itemId; - UserComparator8.insertMenuItem(var1, var9, 25, 0, var3, var4, var5, false); - } - - for (var2 = 4; var2 >= 0; --var2) { - var5 = NewShit.getWidgetFlags(var0); - boolean var15 = (var5 >> var2 + 1 & 1) != 0; - if (!var15 && var0.onOp == null) { - var11 = null; - } else if (var0.actions != null && var0.actions.length > var2 && var0.actions[var2] != null && var0.actions[var2].trim().length() != 0) { - var11 = var0.actions[var2]; - } else { - var11 = null; - } - - if (var11 != null) { - UserComparator8.insertMenuItem(var11, var0.dataText, 57, var2 + 1, var0.childIndex, var0.id, var0.itemId, var0.prioritizeMenuEntry); - } - } - - var3 = NewShit.getWidgetFlags(var0); - boolean var13 = (var3 & 1) != 0; - if (var13) { - class385.insertMenuItemNoShift("Continue", "", 30, 0, var0.childIndex, var0.id); - } - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/ClanMate.java b/osrs/src/main/java/ClanMate.java index 62c1b2b9c..acf4958d3 100644 --- a/osrs/src/main/java/ClanMate.java +++ b/osrs/src/main/java/ClanMate.java @@ -3,18 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qx") +@ObfuscatedName("rp") @Implements("ClanMate") public class ClanMate extends Buddy { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("friend") TriBool friend; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("ignored") TriBool ignored; @@ -24,20 +24,20 @@ public class ClanMate extends Buddy { this.ignored = TriBool.TriBool_unknown; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "298547326" + descriptor = "(S)V", + garbageValue = "-19628" ) @Export("clearIsFriend") void clearIsFriend() { this.friend = TriBool.TriBool_unknown; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1361963631" + garbageValue = "-1857487386" ) @Export("isFriend") public final boolean isFriend() { @@ -48,30 +48,30 @@ public final boolean isFriend() { return this.friend == TriBool.TriBool_true; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "9" + descriptor = "(I)V", + garbageValue = "-711176995" ) @Export("fillIsFriend") void fillIsFriend() { - this.friend = class299.friendSystem.friendsList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.friend = class12.friendSystem.friendsList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } - @ObfuscatedName("ai") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "678229771" + descriptor = "(B)V", + garbageValue = "66" ) @Export("clearIsIgnored") void clearIsIgnored() { this.ignored = TriBool.TriBool_unknown; } - @ObfuscatedName("ap") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "1" + descriptor = "(S)Z", + garbageValue = "-21149" ) @Export("isIgnored") public final boolean isIgnored() { @@ -82,13 +82,13 @@ public final boolean isIgnored() { return this.ignored == TriBool.TriBool_true; } - @ObfuscatedName("aa") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-63" + descriptor = "(I)V", + garbageValue = "1915523322" ) @Export("fillIsIgnored") void fillIsIgnored() { - this.ignored = class299.friendSystem.ignoreList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.ignored = class12.friendSystem.ignoreList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } } \ No newline at end of file diff --git a/osrs/src/main/java/ClanSettings.java b/osrs/src/main/java/ClanSettings.java index 6d96f8087..931a2d60d 100644 --- a/osrs/src/main/java/ClanSettings.java +++ b/osrs/src/main/java/ClanSettings.java @@ -3,95 +3,95 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fi") +@ObfuscatedName("fc") @Implements("ClanSettings") public class ClanSettings { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("useHashes") boolean useHashes; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("useNames") boolean useNames; - @ObfuscatedName("at") - long field1377; - @ObfuscatedName("ac") - public int field1388; - @ObfuscatedName("ai") + @ObfuscatedName("ao") + long field1374; + @ObfuscatedName("ab") + public int field1385; + @ObfuscatedName("au") @Export("name") public String name; - @ObfuscatedName("az") - int field1374; - @ObfuscatedName("ap") + @ObfuscatedName("aa") + int field1371; + @ObfuscatedName("ac") @Export("allowGuests") public boolean allowGuests; - @ObfuscatedName("aa") - public byte field1383; - @ObfuscatedName("af") - public byte field1385; - @ObfuscatedName("ad") - public byte field1384; - @ObfuscatedName("aq") - public byte field1386; @ObfuscatedName("al") + public byte field1380; + @ObfuscatedName("az") + public byte field1383; + @ObfuscatedName("ap") + public byte field1381; + @ObfuscatedName("av") + public byte field1382; + @ObfuscatedName("ax") @Export("memberCount") public int memberCount; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("memberHashes") long[] memberHashes; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("memberRanks") public byte[] memberRanks; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("sortedMembers") int[] sortedMembers; - @ObfuscatedName("ag") - int[] field1376; + @ObfuscatedName("aj") + int[] field1372; @ObfuscatedName("am") - public int[] field1393; - @ObfuscatedName("ax") - public boolean[] field1382; - @ObfuscatedName("ah") + public int[] field1390; + @ObfuscatedName("aq") + public boolean[] field1379; + @ObfuscatedName("ai") @Export("currentOwner") public int currentOwner; - @ObfuscatedName("as") - public int field1391; - @ObfuscatedName("ay") + @ObfuscatedName("aw") + public int field1388; + @ObfuscatedName("ae") @Export("bannedMemberCount") public int bannedMemberCount; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("bannedMemberHashes") long[] bannedMemberHashes; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("memberNames") public String[] memberNames; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("bannedMemberNames") public String[] bannedMemberNames; - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("parameters") IterableNodeHashTable parameters; @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) public ClanSettings(Buffer var1) { - this.field1388 = 0; + this.field1385 = 0; this.name = null; - this.field1374 = 0; + this.field1371 = 0; this.currentOwner = -1; - this.field1391 = -1; - this.method825(var1); + this.field1388 = -1; + this.method818(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1511272498" + descriptor = "(IB)V", + garbageValue = "95" ) - void method806(int var1) { + void method798(int var1) { if (this.useHashes) { if (this.memberHashes != null) { System.arraycopy(this.memberHashes, 0, this.memberHashes = new long[var1], 0, this.memberCount); @@ -114,32 +114,32 @@ void method806(int var1) { this.memberRanks = new byte[var1]; } - if (this.field1376 != null) { - System.arraycopy(this.field1376, 0, this.field1376 = new int[var1], 0, this.memberCount); + if (this.field1372 != null) { + System.arraycopy(this.field1372, 0, this.field1372 = new int[var1], 0, this.memberCount); } else { - this.field1376 = new int[var1]; + this.field1372 = new int[var1]; } - if (this.field1393 != null) { - System.arraycopy(this.field1393, 0, this.field1393 = new int[var1], 0, this.memberCount); + if (this.field1390 != null) { + System.arraycopy(this.field1390, 0, this.field1390 = new int[var1], 0, this.memberCount); } else { - this.field1393 = new int[var1]; + this.field1390 = new int[var1]; } - if (this.field1382 != null) { - System.arraycopy(this.field1382, 0, this.field1382 = new boolean[var1], 0, this.memberCount); + if (this.field1379 != null) { + System.arraycopy(this.field1379, 0, this.field1379 = new boolean[var1], 0, this.memberCount); } else { - this.field1382 = new boolean[var1]; + this.field1379 = new boolean[var1]; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "7" + descriptor = "(II)V", + garbageValue = "-1189145621" ) - void method807(int var1) { + void method799(int var1) { if (this.useHashes) { if (this.bannedMemberHashes != null) { System.arraycopy(this.bannedMemberHashes, 0, this.bannedMemberHashes = new long[var1], 0, this.bannedMemberCount); @@ -158,12 +158,12 @@ void method807(int var1) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-849658856" + descriptor = "(Ljava/lang/String;B)I", + garbageValue = "1" ) - public int method808(String var1) { + public int method800(String var1) { if (var1 != null && var1.length() != 0) { for (int var2 = 0; var2 < this.memberCount; ++var2) { if (this.memberNames[var2].equals(var1)) { @@ -177,20 +177,20 @@ public int method808(String var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(IIII)I", - garbageValue = "1158045265" + garbageValue = "1718718774" ) - public int method809(int var1, int var2, int var3) { + public int method801(int var1, int var2, int var3) { int var4 = var3 == 31 ? -1 : (1 << var3 + 1) - 1; - return (this.field1376[var1] & var4) >>> var2; + return (this.field1372[var1] & var4) >>> var2; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(II)Ljava/lang/Integer;", - garbageValue = "1038796157" + garbageValue = "2128934080" ) @Export("getTitleGroupValue") public Integer getTitleGroupValue(int var1) { @@ -202,10 +202,10 @@ public Integer getTitleGroupValue(int var1) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(I)[I", - garbageValue = "-521962752" + garbageValue = "-672366104" ) @Export("getSortedMembers") public int[] getSortedMembers() { @@ -221,29 +221,29 @@ public int[] getSortedMembers() { } int[] var3 = this.sortedMembers; - VerticalAlignment.method998(var1, var3, 0, var1.length - 1); + class475.method2362(var1, var3, 0, var1.length - 1); } return this.sortedMembers; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(JLjava/lang/String;IB)V", - garbageValue = "-21" + descriptor = "(JLjava/lang/String;II)V", + garbageValue = "613838614" ) - void method812(long var1, String var3, int var4) { + void method804(long var1, String var3, int var4) { if (var3 != null && var3.length() == 0) { var3 = null; } - if (this.useHashes != var1 > 0L) { + if (var1 > 0L != this.useHashes) { throw new RuntimeException(""); - } else if (this.useNames != (var3 != null)) { + } else if (var3 != null != this.useNames) { throw new RuntimeException(""); } else { if (var1 > 0L && (this.memberHashes == null || this.memberCount >= this.memberHashes.length) || var3 != null && (this.memberNames == null || this.memberCount >= this.memberNames.length)) { - this.method806(this.memberCount + 5); + this.method798(this.memberCount + 5); } if (this.memberHashes != null) { @@ -261,20 +261,20 @@ void method812(long var1, String var3, int var4) { this.memberRanks[this.memberCount] = 0; } - this.field1376[this.memberCount] = 0; - this.field1393[this.memberCount] = var4; - this.field1382[this.memberCount] = false; + this.field1372[this.memberCount] = 0; + this.field1390[this.memberCount] = var4; + this.field1379[this.memberCount] = false; ++this.memberCount; this.sortedMembers = null; } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-22" + descriptor = "(II)V", + garbageValue = "2072484175" ) - void method813(int var1) { + void method806(int var1) { if (var1 >= 0 && var1 < this.memberCount) { --this.memberCount; this.sortedMembers = null; @@ -282,16 +282,16 @@ void method813(int var1) { this.memberHashes = null; this.memberNames = null; this.memberRanks = null; - this.field1376 = null; - this.field1393 = null; - this.field1382 = null; + this.field1372 = null; + this.field1390 = null; + this.field1379 = null; this.currentOwner = -1; - this.field1391 = -1; + this.field1388 = -1; } else { System.arraycopy(this.memberRanks, var1 + 1, this.memberRanks, var1, this.memberCount - var1); - System.arraycopy(this.field1376, var1 + 1, this.field1376, var1, this.memberCount - var1); - System.arraycopy(this.field1393, var1 + 1, this.field1393, var1, this.memberCount - var1); - System.arraycopy(this.field1382, var1 + 1, this.field1382, var1, this.memberCount - var1); + System.arraycopy(this.field1372, var1 + 1, this.field1372, var1, this.memberCount - var1); + System.arraycopy(this.field1390, var1 + 1, this.field1390, var1, this.memberCount - var1); + System.arraycopy(this.field1379, var1 + 1, this.field1379, var1, this.memberCount - var1); if (this.memberHashes != null) { System.arraycopy(this.memberHashes, var1 + 1, this.memberHashes, var1, this.memberCount - var1); } @@ -308,32 +308,32 @@ void method813(int var1) { } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1152334560" + descriptor = "(B)V", + garbageValue = "-7" ) @Export("updateOwner") void updateOwner() { if (this.memberCount == 0) { this.currentOwner = -1; - this.field1391 = -1; + this.field1388 = -1; } else { this.currentOwner = -1; - this.field1391 = -1; + this.field1388 = -1; int var1 = 0; byte var2 = this.memberRanks[0]; for (int var3 = 1; var3 < this.memberCount; ++var3) { if (this.memberRanks[var3] > var2) { if (var2 == 125) { - this.field1391 = var1; + this.field1388 = var1; } var1 = var3; var2 = this.memberRanks[var3]; - } else if (this.field1391 == -1 && this.memberRanks[var3] == 125) { - this.field1391 = var3; + } else if (this.field1388 == -1 && this.memberRanks[var3] == 125) { + this.field1388 = var3; } } @@ -345,23 +345,23 @@ void updateOwner() { } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(JLjava/lang/String;I)V", - garbageValue = "-1457470912" + garbageValue = "-1952730404" ) - void method815(long var1, String var3) { + void method808(long var1, String var3) { if (var3 != null && var3.length() == 0) { var3 = null; } if (this.useHashes != var1 > 0L) { throw new RuntimeException(""); - } else if (var3 != null != this.useNames) { + } else if (this.useNames != (var3 != null)) { throw new RuntimeException(""); } else { if (var1 > 0L && (this.bannedMemberHashes == null || this.bannedMemberCount >= this.bannedMemberHashes.length) || var3 != null && (this.bannedMemberNames == null || this.bannedMemberCount >= this.bannedMemberNames.length)) { - this.method807(this.bannedMemberCount + 5); + this.method799(this.bannedMemberCount + 5); } if (this.bannedMemberHashes != null) { @@ -376,12 +376,12 @@ void method815(long var1, String var3) { } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "509826850" + garbageValue = "-1253930747" ) - void method816(int var1) { + void method809(int var1) { --this.bannedMemberCount; if (this.bannedMemberCount == 0) { this.bannedMemberHashes = null; @@ -398,14 +398,14 @@ void method816(int var1) { } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(IBB)I", - garbageValue = "91" + garbageValue = "-88" ) - int method817(int var1, byte var2) { + int method810(int var1, byte var2) { if (var2 != 126 && var2 != 127) { - if (this.currentOwner == var1 && (this.field1391 == -1 || this.memberRanks[this.field1391] < 125)) { + if (this.currentOwner == var1 && (this.field1388 == -1 || this.memberRanks[this.field1388] < 125)) { return -1; } else if (this.memberRanks[var1] == var2) { return -1; @@ -419,15 +419,15 @@ int method817(int var1, byte var2) { } } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1652565060" + descriptor = "(IB)Z", + garbageValue = "7" ) - boolean method818(int var1) { + boolean method811(int var1) { if (this.currentOwner != var1 && this.memberRanks[var1] != 126) { this.memberRanks[this.currentOwner] = 125; - this.field1391 = this.currentOwner; + this.field1388 = this.currentOwner; this.memberRanks[var1] = 126; this.currentOwner = var1; return true; @@ -436,47 +436,47 @@ boolean method818(int var1) { } } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(IZI)I", - garbageValue = "-1953931812" + garbageValue = "-1328118008" ) - int method819(int var1, boolean var2) { - if (this.field1382[var1] == var2) { + int method812(int var1, boolean var2) { + if (this.field1379[var1] == var2) { return -1; } else { - this.field1382[var1] = var2; + this.field1379[var1] = var2; return var1; } } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(IIIII)I", - garbageValue = "-637099928" + garbageValue = "2048454468" ) - int method820(int var1, int var2, int var3, int var4) { + int method813(int var1, int var2, int var3, int var4) { int var5 = (1 << var3) - 1; int var6 = var4 == 31 ? -1 : (1 << var4 + 1) - 1; int var7 = var6 ^ var5; var2 <<= var3; var2 &= var7; - int var8 = this.field1376[var1]; + int var8 = this.field1372[var1]; if ((var8 & var7) == var2) { return -1; } else { var8 &= ~var7; - this.field1376[var1] = var8 | var2; + this.field1372[var1] = var8 | var2; return var1; } } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(III)Z", - garbageValue = "-2075021651" + garbageValue = "2056023373" ) - boolean method821(int var1, int var2) { + boolean method814(int var1, int var2) { if (this.parameters != null) { Node var3 = this.parameters.get((long)var1); if (var3 != null) { @@ -500,12 +500,12 @@ boolean method821(int var1, int var2) { return true; } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(IIIIB)Z", - garbageValue = "0" + descriptor = "(IIIII)Z", + garbageValue = "-303137716" ) - boolean method822(int var1, int var2, int var3, int var4) { + boolean method815(int var1, int var2, int var3, int var4) { int var5 = (1 << var3) - 1; int var6 = var4 == 31 ? -1 : (1 << var4 + 1) - 1; int var7 = var6 ^ var5; @@ -536,7 +536,7 @@ boolean method822(int var1, int var2, int var3, int var4) { } @ObfuscatedName("am") - boolean method823(int var1, long var2) { + boolean method816(int var1, long var2) { if (this.parameters != null) { Node var4 = this.parameters.get((long)var1); if (var4 != null) { @@ -560,12 +560,12 @@ boolean method823(int var1, long var2) { return true; } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)Z", - garbageValue = "-713995944" + garbageValue = "-1755861280" ) - boolean method824(int var1, String var2) { + boolean method817(int var1, String var2) { if (var2 == null) { var2 = ""; } else if (var2.length() > 80) { @@ -598,12 +598,12 @@ boolean method824(int var1, String var2) { return true; } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "633008304" + descriptor = "(Luj;B)V", + garbageValue = "-1" ) - void method825(Buffer var1) { + void method818(Buffer var1) { int var2 = var1.readUnsignedByte(); if (var2 >= 1 && var2 <= 6) { int var3 = var1.readUnsignedByte(); @@ -625,10 +625,10 @@ void method825(Buffer var1) { this.bannedMemberNames = null; } - this.field1388 = var1.readInt(); - this.field1374 = var1.readInt(); - if (var2 <= 3 && this.field1374 != 0) { - this.field1374 += 16912800; + this.field1385 = var1.readInt(); + this.field1371 = var1.readInt(); + if (var2 <= 3 && this.field1371 != 0) { + this.field1371 += 16912800; } this.memberCount = var1.readUnsignedShort(); @@ -639,10 +639,10 @@ void method825(Buffer var1) { } this.allowGuests = var1.readUnsignedByte() == 1; + this.field1380 = var1.readByte(); this.field1383 = var1.readByte(); - this.field1385 = var1.readByte(); - this.field1384 = var1.readByte(); - this.field1386 = var1.readByte(); + this.field1381 = var1.readByte(); + this.field1382 = var1.readByte(); int var4; if (this.memberCount > 0) { if (this.useHashes && (this.memberHashes == null || this.memberHashes.length < this.memberCount)) { @@ -657,16 +657,16 @@ void method825(Buffer var1) { this.memberRanks = new byte[this.memberCount]; } - if (this.field1376 == null || this.field1376.length < this.memberCount) { - this.field1376 = new int[this.memberCount]; + if (this.field1372 == null || this.field1372.length < this.memberCount) { + this.field1372 = new int[this.memberCount]; } - if (this.field1393 == null || this.field1393.length < this.memberCount) { - this.field1393 = new int[this.memberCount]; + if (this.field1390 == null || this.field1390.length < this.memberCount) { + this.field1390 = new int[this.memberCount]; } - if (this.field1382 == null || this.field1382.length < this.memberCount) { - this.field1382 = new boolean[this.memberCount]; + if (this.field1379 == null || this.field1379.length < this.memberCount) { + this.field1379 = new boolean[this.memberCount]; } for (var4 = 0; var4 < this.memberCount; ++var4) { @@ -680,19 +680,19 @@ void method825(Buffer var1) { this.memberRanks[var4] = var1.readByte(); if (var2 >= 2) { - this.field1376[var4] = var1.readInt(); + this.field1372[var4] = var1.readInt(); } if (var2 >= 5) { - this.field1393[var4] = var1.readUnsignedShort(); + this.field1390[var4] = var1.readUnsignedShort(); } else { - this.field1393[var4] = 0; + this.field1390[var4] = 0; } if (var2 >= 6) { - this.field1382[var4] = var1.readUnsignedByte() == 1; + this.field1379[var4] = var1.readUnsignedByte() == 1; } else { - this.field1382[var4] = false; + this.field1379[var4] = false; } } @@ -722,7 +722,7 @@ void method825(Buffer var1) { if (var2 >= 3) { var4 = var1.readUnsignedShort(); if (var4 > 0) { - this.parameters = new IterableNodeHashTable(var4 < 16 ? WorldMapIcon_1.method1401(var4) : 16); + this.parameters = new IterableNodeHashTable(var4 < 16 ? class184.method927(var4) : 16); while (var4-- > 0) { int var5 = var1.readInt(); @@ -746,4 +746,200 @@ void method825(Buffer var1) { throw new RuntimeException("" + var2); } } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Lri;FFFI)F", + garbageValue = "-584068586" + ) + static float method805(class464 var0, float var1, float var2, float var3) { + float var4 = class251.method1335(var0.field3921, var0.field3922, var1); + if (Math.abs(var4) < class127.field1219) { + return var1; + } else { + float var5 = class251.method1335(var0.field3921, var0.field3922, var2); + if (Math.abs(var5) < class127.field1219) { + return var2; + } else { + float var6 = 0.0F; + float var7 = 0.0F; + float var8 = 0.0F; + float var13 = 0.0F; + boolean var14 = true; + boolean var15 = false; + + do { + var15 = false; + if (var14) { + var6 = var1; + var13 = var4; + var7 = var2 - var1; + var8 = var7; + var14 = false; + } + + if (Math.abs(var13) < Math.abs(var5)) { + var1 = var2; + var2 = var6; + var6 = var1; + var4 = var5; + var5 = var13; + var13 = var4; + } + + float var16 = class127.field1218 * Math.abs(var2) + 0.5F * var3; + float var17 = (var6 - var2) * 0.5F; + boolean var18 = Math.abs(var17) > var16 && var5 != 0.0F; + if (var18) { + if (Math.abs(var8) >= var16 && Math.abs(var4) > Math.abs(var5)) { + float var12 = var5 / var4; + float var9; + float var10; + if (var6 == var1) { + var9 = var12 * var17 * 2.0F; + var10 = 1.0F - var12; + } else { + var10 = var4 / var13; + float var11 = var5 / var13; + var9 = (var17 * 2.0F * var10 * (var10 - var11) - (var2 - var1) * (var11 - 1.0F)) * var12; + var10 = (var12 - 1.0F) * (var11 - 1.0F) * (var10 - 1.0F); + } + + if ((double)var9 > 0.0D) { + var10 = -var10; + } else { + var9 = -var9; + } + + var12 = var8; + var8 = var7; + if (var9 * 2.0F < var17 * 3.0F * var10 - Math.abs(var16 * var10) && var9 < Math.abs(var12 * 0.5F * var10)) { + var7 = var9 / var10; + } else { + var7 = var17; + var8 = var17; + } + } else { + var7 = var17; + var8 = var17; + } + + var1 = var2; + var4 = var5; + if (Math.abs(var7) > var16) { + var2 += var7; + } else if ((double)var17 > 0.0D) { + var2 += var16; + } else { + var2 -= var16; + } + + var5 = class251.method1335(var0.field3921, var0.field3922, var2); + if ((double)(var5 * (var13 / Math.abs(var13))) > 0.0D) { + var14 = true; + var15 = true; + } else { + var15 = true; + } + } + } while(var15); + + return var2; + } + } + } + + @ObfuscatedName("ki") + @ObfuscatedSignature( + descriptor = "(IIS)V", + garbageValue = "25188" + ) + @Export("updateItemPile") + static final void updateItemPile(int var0, int var1) { + NodeDeque var2 = Client.groundItems[ItemLayer.Client_plane][var0][var1]; + if (var2 == null) { + class36.scene.removeGroundItemPile(ItemLayer.Client_plane, var0, var1); + } else { + long var3 = -99999999L; + TileItem var5 = null; + + TileItem var6; + for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { + ItemComposition var7 = class214.ItemDefinition_get(var6.id); + long var8 = (long)var7.price; + if (var7.isStackable == 1) { + var8 *= var6.quantity < Integer.MAX_VALUE ? (long)(var6.quantity + 1) : (long)var6.quantity; + } + + if (var8 > var3) { + var3 = var8; + var5 = var6; + } + } + + if (var5 == null) { + class36.scene.removeGroundItemPile(ItemLayer.Client_plane, var0, var1); + } else { + var2.addLast(var5); + TileItem var12 = null; + TileItem var11 = null; + + for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { + if (var6.id != var5.id) { + if (var12 == null) { + var12 = var6; + } + + if (var6.id != var12.id && var11 == null) { + var11 = var6; + } + } + } + + long var9 = Player.calculateTag(var0, var1, 3, false, 0); + class36.scene.newGroundItemPile(ItemLayer.Client_plane, var0, var1, WorldMapDecorationType.getTileHeight(var0 * 128 + 64, var1 * 128 + 64, ItemLayer.Client_plane), var5, var9, var12, var11); + } + } + } + + @ObfuscatedName("ko") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "1" + ) + static final void method820() { + int var0 = FriendSystem.menuX; + int var1 = class60.menuY; + int var2 = class428.menuWidth; + int var3 = class515.menuHeight; + int var4 = 6116423; + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, var4); + Rasterizer2D.Rasterizer2D_fillRectangle(var0 + 1, var1 + 1, var2 - 2, 16, 0); + Rasterizer2D.Rasterizer2D_drawRectangle(var0 + 1, var1 + 18, var2 - 2, var3 - 19, 0); + GrandExchangeOfferTotalQuantityComparator.fontBold12.draw("Choose Option", var0 + 3, var1 + 14, var4, -1); + int var5 = MouseHandler.MouseHandler_x; + int var6 = MouseHandler.MouseHandler_y; + + for (int var7 = 0; var7 < Client.menuOptionsCount; ++var7) { + int var8 = var1 + (Client.menuOptionsCount - 1 - var7) * 15 + 31; + int var9 = 16777215; + if (var5 > var0 && var5 < var2 + var0 && var6 > var8 - 13 && var6 < var8 + 3) { + var9 = 16776960; + } + + Font var10 = GrandExchangeOfferTotalQuantityComparator.fontBold12; + String var11; + if (var7 < 0) { + var11 = ""; + } else if (Client.menuTargets[var7].length() > 0) { + var11 = Client.menuActions[var7] + " " + Client.menuTargets[var7]; + } else { + var11 = Client.menuActions[var7]; + } + + var10.draw(var11, var0 + 3, var8, var9, 0); + } + + SoundSystem.method233(FriendSystem.menuX, class60.menuY, class428.menuWidth, class515.menuHeight); + } } \ No newline at end of file diff --git a/osrs/src/main/java/Client.java b/osrs/src/main/java/Client.java index 71b681489..35a250356 100644 --- a/osrs/src/main/java/Client.java +++ b/osrs/src/main/java/Client.java @@ -7,978 +7,986 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.api.RSClient; -import netscape.js.JSObject; import org.json.JSONException; import org.json.JSONObject; import java.io.IOException; import java.net.Socket; import java.net.URL; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.concurrent.Future; @Implements("Client") @ObfuscatedName("client") -public final class Client extends GameEngine implements Usernamed, OAuthApi, class311 { - boolean shouldProcessClick() { +public final class Client extends GameEngine implements Usernamed, OAuthApi, class322 { + + boolean shouldProcessClick(){ return false; } - @ObfuscatedName("vd") + @ObfuscatedName("vg") @Export("viewportOffsetX") static int viewportOffsetX; - @ObfuscatedName("vc") + @ObfuscatedName("vr") @Export("viewportOffsetY") static int viewportOffsetY; - @ObfuscatedName("wd") + @ObfuscatedName("wi") public static int field369; - @ObfuscatedName("xy") - static int[] field593; - @ObfuscatedName("uh") - static boolean field400; - @ObfuscatedName("xf") - static int[] field592; - @ObfuscatedName("xm") + @ObfuscatedName("wv") @ObfuscatedSignature( - descriptor = "Lcl;" + descriptor = "Liy;" ) - static final ApproximateRouteStrategy field652; - @ObfuscatedName("vb") - static int field542; - @ObfuscatedName("vw") - @Export("cameraShaking") - static boolean[] cameraShaking; - @ObfuscatedName("vy") + static final class229 field654; + @ObfuscatedName("xl") @ObfuscatedSignature( - descriptor = "Lmt;" + descriptor = "Lcm;" ) - @Export("playerAppearance") - static PlayerComposition playerAppearance; - @ObfuscatedName("vs") - static int field547; - @ObfuscatedName("wx") + static final ApproximateRouteStrategy field651; + @ObfuscatedName("xn") + static int[] field592; + @ObfuscatedName("xf") + static int[] field591; + @ObfuscatedName("wl") + static int field546; + @ObfuscatedName("wk") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "[Low;" ) - @Export("Widget_cachedModels") - static EvictingDualNodeHashTable Widget_cachedModels; - @ObfuscatedName("wj") + @Export("grandExchangeOffers") + static GrandExchangeOffer[] grandExchangeOffers; + @ObfuscatedName("wq") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Lnb;" ) - @Export("Widget_cachedFonts") - static EvictingDualNodeHashTable Widget_cachedFonts; - @ObfuscatedName("wv") + @Export("playerAppearance") + static PlayerComposition playerAppearance; + @ObfuscatedName("ww") + static int field547; + @ObfuscatedName("xe") @Export("archiveLoaders") static ArrayList archiveLoaders; - @ObfuscatedName("wk") + @ObfuscatedName("xd") @Export("archiveLoadersDone") static int archiveLoadersDone; - @ObfuscatedName("ws") - @ObfuscatedSignature( - descriptor = "Lqv;" - ) - @Export("archive5") - static class423 archive5; - @ObfuscatedName("wo") + @ObfuscatedName("xi") + static int field549; + @ObfuscatedName("wr") @ObfuscatedSignature( - descriptor = "Lsv;" + descriptor = "Lsz;" ) - static class475 field645; - @ObfuscatedName("vl") - static short field638; - @ObfuscatedName("vp") + static class487 field645; + @ObfuscatedName("vt") static short field640; - @ObfuscatedName("vu") - static short field641; - @ObfuscatedName("vj") - static short field637; - @ObfuscatedName("ve") + @ObfuscatedName("vd") + static short field636; + @ObfuscatedName("vp") + static short field638; + @ObfuscatedName("vb") static short field634; - @ObfuscatedName("vx") + @ObfuscatedName("vk") + static short field637; + @ObfuscatedName("vn") @Export("viewportZoom") static int viewportZoom; - @ObfuscatedName("vf") - static short field635; - @ObfuscatedName("vo") + @ObfuscatedName("vs") + static short field639; + @ObfuscatedName("vu") @Export("viewportWidth") static int viewportWidth; - @ObfuscatedName("we") - static int field550; - @ObfuscatedName("vn") + @ObfuscatedName("vm") @Export("viewportHeight") static int viewportHeight; - @ObfuscatedName("vm") - @Export("zoomHeight") - static short zoomHeight; @ObfuscatedName("vi") - @Export("zoomWidth") - static short zoomWidth; - @ObfuscatedName("vq") - @Export("cameraMoveIntensity") - static int[] cameraMoveIntensity; - @ObfuscatedName("vh") + @Export("cameraShaking") + static boolean[] cameraShaking; + @ObfuscatedName("vo") @Export("cameraShakeIntensity") static int[] cameraShakeIntensity; - @ObfuscatedName("vk") + @ObfuscatedName("va") + @Export("cameraMoveIntensity") + static int[] cameraMoveIntensity; + @ObfuscatedName("vy") @Export("cameraShakeSpeed") static int[] cameraShakeSpeed; - @ObfuscatedName("vz") + @ObfuscatedName("vw") @Export("cameraShakeCycle") static int[] cameraShakeCycle; + @ObfuscatedName("vc") + @Export("zoomHeight") + static short zoomHeight; + @ObfuscatedName("vx") + @Export("zoomWidth") + static short zoomWidth; @ObfuscatedName("wf") + static List field607; + @ObfuscatedName("wc") @ObfuscatedSignature( - descriptor = "[Loh;" - ) - @Export("grandExchangeOffers") - static GrandExchangeOffer[] grandExchangeOffers; - @ObfuscatedName("wy") - @ObfuscatedSignature( - descriptor = "Lcu;" + descriptor = "Lcn;" ) @Export("GrandExchangeEvents_worldComparator") static GrandExchangeOfferOwnWorldComparator GrandExchangeEvents_worldComparator; - @ObfuscatedName("wa") - static int field549; - @ObfuscatedName("wt") - static List field609; - @ObfuscatedName("bc") + @ObfuscatedName("wb") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("archive11") + static EvictingDualNodeHashTable archive11; + @ObfuscatedName("wm") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedModels") + static EvictingDualNodeHashTable Widget_cachedModels; + @ObfuscatedName("wh") + static int field545; + @ObfuscatedName("wo") + @ObfuscatedSignature( + descriptor = "Lqc;" + ) + static class435 field631; + @ObfuscatedName("br") @Export("lockMouseRecorder") static boolean lockMouseRecorder; - @ObfuscatedName("bg") + @ObfuscatedName("bq") @Export("worldId") public static int worldId; - @ObfuscatedName("cw") + @ObfuscatedName("cf") @Export("worldProperties") static int worldProperties; - @ObfuscatedName("cm") + @ObfuscatedName("cv") @Export("gameBuild") static int gameBuild; - @ObfuscatedName("cx") + @ObfuscatedName("ce") @Export("isMembersWorld") public static boolean isMembersWorld; - @ObfuscatedName("cr") + @ObfuscatedName("ci") @Export("isLowDetail") static boolean isLowDetail; - @ObfuscatedName("cv") + @ObfuscatedName("cs") @Export("param21") static int param21; @ObfuscatedName("co") @Export("clientType") static int clientType; - @ObfuscatedName("cl") + @ObfuscatedName("cm") static int field424; - @ObfuscatedName("cu") + @ObfuscatedName("cn") @Export("onMobile") static boolean onMobile; - @ObfuscatedName("ch") + @ObfuscatedName("cr") @Export("param25") public static int param25; - @ObfuscatedName("dj") + @ObfuscatedName("di") @Export("gameState") static int gameState; - @ObfuscatedName("di") + @ObfuscatedName("dk") @Export("reloadJS5") static boolean reloadJS5; - @ObfuscatedName("ed") + @ObfuscatedName("ec") @Export("isLoading") static boolean isLoading; - @ObfuscatedName("eh") + @ObfuscatedName("ew") @Export("cycle") static int cycle; - @ObfuscatedName("ey") + @ObfuscatedName("ex") @Export("mouseLastLastPressedTimeMillis") static long mouseLastLastPressedTimeMillis; - @ObfuscatedName("eq") + @ObfuscatedName("ek") @Export("lastMouseRecordX") static int lastMouseRecordX; - @ObfuscatedName("ej") + @ObfuscatedName("em") @Export("lastMouseRecordY") static int lastMouseRecordY; - @ObfuscatedName("ea") - static long field612; - @ObfuscatedName("er") + @ObfuscatedName("eo") + static long field610; + @ObfuscatedName("ef") @Export("hadFocus") static boolean hadFocus; - @ObfuscatedName("ev") + @ObfuscatedName("el") @Export("rebootTimer") static int rebootTimer; - @ObfuscatedName("ez") + @ObfuscatedName("es") @Export("hintArrowType") static int hintArrowType; - @ObfuscatedName("et") + @ObfuscatedName("ea") @Export("hintArrowNpcIndex") static int hintArrowNpcIndex; @ObfuscatedName("en") @Export("hintArrowPlayerIndex") static int hintArrowPlayerIndex; - @ObfuscatedName("eb") + @ObfuscatedName("eh") @Export("hintArrowX") static int hintArrowX; @ObfuscatedName("ei") @Export("hintArrowY") static int hintArrowY; - @ObfuscatedName("es") + @ObfuscatedName("et") @Export("hintArrowHeight") static int hintArrowHeight; - @ObfuscatedName("el") + @ObfuscatedName("er") @Export("hintArrowSubX") static int hintArrowSubX; - @ObfuscatedName("em") + @ObfuscatedName("ez") @Export("hintArrowSubY") static int hintArrowSubY; - @ObfuscatedName("ek") + @ObfuscatedName("eg") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) @Export("playerAttackOption") static AttackOption playerAttackOption; - @ObfuscatedName("ec") + @ObfuscatedName("ey") @ObfuscatedSignature( - descriptor = "Ldc;" + descriptor = "Ldy;" ) @Export("npcAttackOption") static AttackOption npcAttackOption; - @ObfuscatedName("eu") + @ObfuscatedName("ed") @Export("renderSelf") static boolean renderSelf; - @ObfuscatedName("fl") + @ObfuscatedName("fe") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static class92 field419; - @ObfuscatedName("fj") + static class92 field414; + @ObfuscatedName("fr") @Export("js5ConnectState") static int js5ConnectState; - @ObfuscatedName("fv") + @ObfuscatedName("fi") @Export("js5Cycles") static int js5Cycles; - @ObfuscatedName("gg") + @ObfuscatedName("gp") @Export("js5Errors") static int js5Errors; - @ObfuscatedName("gi") + @ObfuscatedName("gn") @Export("loginState") static int loginState; - @ObfuscatedName("go") - static int field448; - @ObfuscatedName("gl") - static int field447; @ObfuscatedName("gb") static int field444; - @ObfuscatedName("gj") + @ObfuscatedName("gu") + static int field447; + @ObfuscatedName("ga") + static int field443; + @ObfuscatedName("gf") @ObfuscatedSignature( - descriptor = "Lfr;" + descriptor = "Leb;" ) - static class139 field421; - @ObfuscatedName("ge") + static class124 field419; + @ObfuscatedName("gx") @ObfuscatedSignature( - descriptor = "Ltv;" + descriptor = "Lus;" ) - static class519 field648; - @ObfuscatedName("hl") + static class531 field648; + @ObfuscatedName("hc") static final String field656; - @ObfuscatedName("hg") + @ObfuscatedName("ha") static final String field655; - @ObfuscatedName("hm") + @ObfuscatedName("hn") @Export("Login_isUsernameRemembered") static boolean Login_isUsernameRemembered; - @ObfuscatedName("hv") + @ObfuscatedName("ic") @ObfuscatedSignature( - descriptor = "Lcc;" + descriptor = "Lcd;" ) @Export("secureRandomFuture") static SecureRandomFuture secureRandomFuture; - @ObfuscatedName("ie") + @ObfuscatedName("ib") @Export("randomDatData") static byte[] randomDatData; - @ObfuscatedName("ij") + @ObfuscatedName("iq") @ObfuscatedSignature( - descriptor = "[Ldx;" + descriptor = "[Ldn;" ) @Export("npcs") static NPC[] npcs; - @ObfuscatedName("in") + @ObfuscatedName("ia") @Export("npcCount") static int npcCount; - @ObfuscatedName("ih") + @ObfuscatedName("iu") @Export("npcIndices") static int[] npcIndices; + @ObfuscatedName("ij") + static int field449; + @ObfuscatedName("il") + static int[] field550; @ObfuscatedName("it") - static String field599; - @ObfuscatedName("ir") - static int field451; - @ObfuscatedName("ic") - static int[] field552; - @ObfuscatedName("ia") + static String field597; + @ObfuscatedName("ig") @ObfuscatedSignature( - descriptor = "Ler;" + descriptor = "Lef;" ) @Export("packetWriter") public static final PacketWriter packetWriter; - @ObfuscatedName("im") + @ObfuscatedName("ip") @Export("logoutTimer") static int logoutTimer; - @ObfuscatedName("id") + @ObfuscatedName("ii") @Export("hadNetworkError") static boolean hadNetworkError; - @ObfuscatedName("iu") + @ObfuscatedName("ik") @ObfuscatedSignature( - descriptor = "Lpy;" + descriptor = "Lqn;" ) @Export("timer") static Timer timer; - @ObfuscatedName("jn") + @ObfuscatedName("jf") @Export("fontsMap") static HashMap fontsMap; - @ObfuscatedName("jg") + @ObfuscatedName("jm") static int field452; - @ObfuscatedName("ji") - static int field453; - @ObfuscatedName("jl") + @ObfuscatedName("jy") static int field455; - @ObfuscatedName("jj") + @ObfuscatedName("js") + static int field453; + @ObfuscatedName("ju") static int field454; - @ObfuscatedName("jq") - static int field456; - @ObfuscatedName("jz") + @ObfuscatedName("jk") + static int field451; + @ObfuscatedName("jx") @ObfuscatedSignature( - descriptor = "[Lis;" + descriptor = "[Liw;" ) @Export("collisionMaps") static CollisionMap[] collisionMaps; - @ObfuscatedName("jp") + @ObfuscatedName("ja") @Export("isInInstance") static boolean isInInstance; - @ObfuscatedName("jf") + @ObfuscatedName("jt") @Export("instanceChunkTemplates") static int[][][] instanceChunkTemplates; - @ObfuscatedName("jm") - static final int[] field653; - @ObfuscatedName("kb") - static int field457; - @ObfuscatedName("kt") - @ObfuscatedSignature( - descriptor = "Lui;" - ) - @Export("compass") - static SpritePixels compass; - @ObfuscatedName("kx") - static int field462; - @ObfuscatedName("ky") - static int field463; - @ObfuscatedName("kp") - static int field459; - @ObfuscatedName("kr") + @ObfuscatedName("kj") + static final int[] field652; + @ObfuscatedName("ks") static int field460; @ObfuscatedName("kw") + static int field461; + @ObfuscatedName("kg") + static int field458; + @ObfuscatedName("kl") + static int field459; + @ObfuscatedName("kc") + static int field457; + @ObfuscatedName("ka") static boolean field382; - @ObfuscatedName("kv") + @ObfuscatedName("kb") @Export("alternativeScrollbarWidth") static int alternativeScrollbarWidth; - @ObfuscatedName("kg") + @ObfuscatedName("lw") @Export("camAngleX") static int camAngleX; - @ObfuscatedName("lx") + @ObfuscatedName("lj") @Export("camAngleY") static int camAngleY; @ObfuscatedName("le") @Export("camAngleDY") static int camAngleDY; - @ObfuscatedName("lu") + @ObfuscatedName("lm") @Export("camAngleDX") static int camAngleDX; - @ObfuscatedName("lo") - static int field473; - @ObfuscatedName("ld") - static int field465; - @ObfuscatedName("lm") + @ObfuscatedName("lz") + static int field478; + @ObfuscatedName("lc") + static int field464; + @ObfuscatedName("lb") @Export("oculusOrbState") static int oculusOrbState; - @ObfuscatedName("lp") + @ObfuscatedName("lr") @Export("camFollowHeight") static int camFollowHeight; - @ObfuscatedName("ly") - static int field480; - @ObfuscatedName("lg") - static int field468; - @ObfuscatedName("lk") + @ObfuscatedName("ll") static int field471; - @ObfuscatedName("lc") + @ObfuscatedName("la") + static int field462; + @ObfuscatedName("lx") + static int field477; + @ObfuscatedName("lh") @Export("oculusOrbNormalSpeed") static int oculusOrbNormalSpeed; - @ObfuscatedName("lv") + @ObfuscatedName("li") @Export("oculusOrbSlowedSpeed") static int oculusOrbSlowedSpeed; - @ObfuscatedName("lr") - static int field476; - @ObfuscatedName("lt") + @ObfuscatedName("lq") + public static int field367; + @ObfuscatedName("ly") @Export("oculusOrbOnLocalPlayer") static boolean oculusOrbOnLocalPlayer; - @ObfuscatedName("lj") + @ObfuscatedName("ld") @Export("packetIndicator") static int packetIndicator; - @ObfuscatedName("lz") + @ObfuscatedName("lu") @Export("emitPackets") static boolean emitPackets; - @ObfuscatedName("lf") - static int field467; - @ObfuscatedName("lq") + @ObfuscatedName("lo") + static int field473; + @ObfuscatedName("lg") @Export("overheadTextLimit") static int overheadTextLimit; - @ObfuscatedName("lh") + @ObfuscatedName("lt") @Export("overheadTextCount") static int overheadTextCount; - @ObfuscatedName("li") + @ObfuscatedName("mb") @Export("overheadTextXs") static int[] overheadTextXs; - @ObfuscatedName("ll") + @ObfuscatedName("md") @Export("overheadTextYs") static int[] overheadTextYs; - @ObfuscatedName("lb") + @ObfuscatedName("my") @Export("overheadTextAscents") static int[] overheadTextAscents; - @ObfuscatedName("md") + @ObfuscatedName("mk") @Export("overheadTextXOffsets") static int[] overheadTextXOffsets; - @ObfuscatedName("mh") + @ObfuscatedName("mi") @Export("overheadTextColors") static int[] overheadTextColors; - @ObfuscatedName("mv") + @ObfuscatedName("mn") @Export("overheadTextEffects") static int[] overheadTextEffects; - @ObfuscatedName("mg") + @ObfuscatedName("mx") static int[][] field594; - @ObfuscatedName("mq") + @ObfuscatedName("mv") @Export("overheadTextCyclesRemaining") static int[] overheadTextCyclesRemaining; - @ObfuscatedName("mu") - static String[] field603; - @ObfuscatedName("mk") + @ObfuscatedName("mm") + static String[] field601; + @ObfuscatedName("mq") @Export("tileLastDrawnActor") static int[][] tileLastDrawnActor; - @ObfuscatedName("mr") + @ObfuscatedName("mf") @Export("viewportDrawCount") static int viewportDrawCount; - @ObfuscatedName("me") + @ObfuscatedName("mo") @Export("viewportTempX") static int viewportTempX; - @ObfuscatedName("mz") + @ObfuscatedName("mj") @Export("viewportTempY") static int viewportTempY; - @ObfuscatedName("mc") + @ObfuscatedName("ms") @Export("mouseCrossX") static int mouseCrossX; - @ObfuscatedName("mf") + @ObfuscatedName("mw") @Export("mouseCrossY") static int mouseCrossY; - @ObfuscatedName("ml") + @ObfuscatedName("mu") @Export("mouseCrossState") static int mouseCrossState; - @ObfuscatedName("mj") + @ObfuscatedName("mt") @Export("mouseCrossColor") static int mouseCrossColor; - @ObfuscatedName("mw") + @ObfuscatedName("ml") @Export("showMouseCross") static boolean showMouseCross; - @ObfuscatedName("mp") - static int field486; - @ObfuscatedName("mb") + @ObfuscatedName("ma") + static int field479; + @ObfuscatedName("mg") @Export("showLoadingMessages") static boolean showLoadingMessages; - @ObfuscatedName("mi") + @ObfuscatedName("mc") @ObfuscatedSignature( - descriptor = "[Ldf;" + descriptor = "[Lds;" ) @Export("players") static Player[] players; - @ObfuscatedName("mx") + @ObfuscatedName("mp") @Export("localPlayerIndex") static int localPlayerIndex; - @ObfuscatedName("my") + @ObfuscatedName("mz") @Export("isMembers") static int isMembers; - @ObfuscatedName("ma") + @ObfuscatedName("nd") @Export("playerUUID") static long playerUUID; - @ObfuscatedName("ms") - static boolean field386; - @ObfuscatedName("nd") + @ObfuscatedName("nb") + static boolean field387; + @ObfuscatedName("np") @Export("drawPlayerNames") static int drawPlayerNames; - @ObfuscatedName("ng") - static int field492; - @ObfuscatedName("nt") - static int[] field564; - @ObfuscatedName("nb") + @ObfuscatedName("nc") + static int field489; + @ObfuscatedName("na") + static int[] field559; + @ObfuscatedName("nh") @Export("playerMenuOpcodes") static final int[] playerMenuOpcodes; - @ObfuscatedName("ns") + @ObfuscatedName("ny") @Export("playerMenuActions") static String[] playerMenuActions; - @ObfuscatedName("nz") + @ObfuscatedName("nu") @Export("playerOptionsPriorities") static boolean[] playerOptionsPriorities; - @ObfuscatedName("ne") - static int[] field561; - @ObfuscatedName("ni") + @ObfuscatedName("nx") + static int[] field563; + @ObfuscatedName("nj") @Export("combatTargetPlayerIndex") static int combatTargetPlayerIndex; - @ObfuscatedName("nr") + @ObfuscatedName("nf") @ObfuscatedSignature( - descriptor = "[[[Low;" + descriptor = "[[[Lon;" ) @Export("groundItems") static NodeDeque[][][] groundItems; - @ObfuscatedName("np") + @ObfuscatedName("nk") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("pendingSpawns") static NodeDeque pendingSpawns; - @ObfuscatedName("nn") + @ObfuscatedName("ns") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("projectiles") static NodeDeque projectiles; - @ObfuscatedName("nw") + @ObfuscatedName("nm") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("graphicsObjects") static NodeDeque graphicsObjects; - @ObfuscatedName("ny") + @ObfuscatedName("nv") @Export("currentLevels") static int[] currentLevels; - @ObfuscatedName("nk") + @ObfuscatedName("nt") @Export("levels") static int[] levels; - @ObfuscatedName("nj") + @ObfuscatedName("ne") @Export("experience") static int[] experience; - @ObfuscatedName("nu") + @ObfuscatedName("nz") + static int[] field564; + @ObfuscatedName("nl") @Export("leftClickOpensMenu") static boolean leftClickOpensMenu; - @ObfuscatedName("nf") + @ObfuscatedName("nr") @Export("isMenuOpen") static boolean isMenuOpen; - @ObfuscatedName("om") + @ObfuscatedName("oy") @Export("menuOptionsCount") static int menuOptionsCount; - @ObfuscatedName("oz") + @ObfuscatedName("ol") @Export("menuArguments1") static int[] menuArguments1; - @ObfuscatedName("oh") + @ObfuscatedName("oz") @Export("menuArguments2") static int[] menuArguments2; - @ObfuscatedName("oy") + @ObfuscatedName("ov") @Export("menuOpcodes") static int[] menuOpcodes; - @ObfuscatedName("od") + @ObfuscatedName("oq") @Export("menuIdentifiers") static int[] menuIdentifiers; - @ObfuscatedName("og") + @ObfuscatedName("oo") @Export("menuItemIds") static int[] menuItemIds; - @ObfuscatedName("ob") + @ObfuscatedName("oa") @Export("menuActions") static String[] menuActions; - @ObfuscatedName("ok") + @ObfuscatedName("ou") @Export("menuTargets") static String[] menuTargets; - @ObfuscatedName("on") + @ObfuscatedName("om") @Export("menuShiftClick") static boolean[] menuShiftClick; - @ObfuscatedName("oe") + @ObfuscatedName("og") @Export("followerOpsLowPriority") static boolean followerOpsLowPriority; - @ObfuscatedName("os") + @ObfuscatedName("ob") @Export("tapToDrop") static boolean tapToDrop; - @ObfuscatedName("ow") + @ObfuscatedName("os") @Export("showMouseOverText") static boolean showMouseOverText; @ObfuscatedName("ot") @Export("viewportX") static int viewportX; - @ObfuscatedName("oc") + @ObfuscatedName("oj") @Export("viewportY") static int viewportY; - @ObfuscatedName("oi") - static int field496; - @ObfuscatedName("oq") - static int field498; - @ObfuscatedName("ov") + @ObfuscatedName("oe") + static int field493; + @ObfuscatedName("od") + static int field492; + @ObfuscatedName("on") @Export("isItemSelected") static int isItemSelected; - @ObfuscatedName("or") + @ObfuscatedName("pm") @Export("isSpellSelected") static boolean isSpellSelected; - @ObfuscatedName("of") + @ObfuscatedName("ph") @Export("selectedSpellChildIndex") static int selectedSpellChildIndex; - @ObfuscatedName("ps") + @ObfuscatedName("po") @Export("selectedSpellItemId") static int selectedSpellItemId; - @ObfuscatedName("pa") - static String field600; - @ObfuscatedName("pi") - static String field601; - @ObfuscatedName("pj") + @ObfuscatedName("pp") + static String field599; + @ObfuscatedName("pb") + static String field598; + @ObfuscatedName("pl") @Export("rootInterface") static int rootInterface; - @ObfuscatedName("pu") + @ObfuscatedName("pz") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) @Export("interfaceParents") static NodeHashTable interfaceParents; - @ObfuscatedName("po") + @ObfuscatedName("ps") static int field505; + @ObfuscatedName("pf") + static int field499; @ObfuscatedName("pv") - static int field508; - @ObfuscatedName("pn") @Export("chatEffects") static int chatEffects; - @ObfuscatedName("pd") + @ObfuscatedName("px") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("meslayerContinueWidget") static Widget meslayerContinueWidget; - @ObfuscatedName("px") + @ObfuscatedName("pn") @Export("runEnergy") static int runEnergy; - @ObfuscatedName("pt") + @ObfuscatedName("pa") @Export("weight") static int weight; - @ObfuscatedName("pm") + @ObfuscatedName("pd") @Export("staffModLevel") public static int staffModLevel; - @ObfuscatedName("pe") + @ObfuscatedName("pj") @Export("followerIndex") static int followerIndex; - @ObfuscatedName("pp") + @ObfuscatedName("pi") @Export("playerMod") static boolean playerMod; - @ObfuscatedName("pg") + @ObfuscatedName("pq") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("viewportWidget") static Widget viewportWidget; - @ObfuscatedName("ph") + @ObfuscatedName("pt") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("clickedWidget") - public static Widget clickedWidget; - @ObfuscatedName("pb") + static Widget clickedWidget; + @ObfuscatedName("py") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("clickedWidgetParent") static Widget clickedWidgetParent; - @ObfuscatedName("pc") + @ObfuscatedName("qb") @Export("widgetClickX") static int widgetClickX; - @ObfuscatedName("py") + @ObfuscatedName("qt") @Export("widgetClickY") static int widgetClickY; - @ObfuscatedName("pq") + @ObfuscatedName("ql") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("draggedOnWidget") static Widget draggedOnWidget; - @ObfuscatedName("pw") - static boolean field395; - @ObfuscatedName("qe") + @ObfuscatedName("qu") + static boolean field396; + @ObfuscatedName("qo") + static int field512; + @ObfuscatedName("qp") + static int field513; + @ObfuscatedName("qy") + static boolean field397; + @ObfuscatedName("qq") static int field514; @ObfuscatedName("qd") - static int field513; + static int field508; @ObfuscatedName("qn") - static boolean field397; - @ObfuscatedName("qf") - static int field515; - @ObfuscatedName("qr") - static int field521; - @ObfuscatedName("qm") @Export("isDraggingWidget") static boolean isDraggingWidget; - @ObfuscatedName("ql") + @ObfuscatedName("qr") @Export("cycleCntr") static int cycleCntr; - @ObfuscatedName("qo") + @ObfuscatedName("qm") @Export("changedVarps") static int[] changedVarps; - @ObfuscatedName("qg") + @ObfuscatedName("qv") @Export("changedVarpCount") static int changedVarpCount; - @ObfuscatedName("qx") + @ObfuscatedName("qc") @Export("changedItemContainers") static int[] changedItemContainers; - @ObfuscatedName("qs") + @ObfuscatedName("qe") @Export("changedItemContainersCount") static int changedItemContainersCount; - @ObfuscatedName("qz") + @ObfuscatedName("qs") @Export("changedSkills") static int[] changedSkills; - @ObfuscatedName("qt") + @ObfuscatedName("qz") @Export("changedSkillsCount") static int changedSkillsCount; - @ObfuscatedName("qu") - static int[] field572; - @ObfuscatedName("qb") - static int field512; - @ObfuscatedName("qp") + @ObfuscatedName("qh") + static int[] field571; + @ObfuscatedName("qi") + static int field510; + @ObfuscatedName("qk") @Export("chatCycle") static int chatCycle; - @ObfuscatedName("qi") - static int field518; - @ObfuscatedName("qy") + @ObfuscatedName("rm") static int field524; - @ObfuscatedName("qa") - static int field511; - @ObfuscatedName("qh") - static int field517; - @ObfuscatedName("ru") - static int field529; - @ObfuscatedName("rh") + @ObfuscatedName("rp") + static int field526; + @ObfuscatedName("rf") + static int field520; + @ObfuscatedName("rn") static int field525; + @ObfuscatedName("rc") + static int field519; @ObfuscatedName("rr") - static int field528; - @ObfuscatedName("rz") + static int field527; + @ObfuscatedName("rh") + static int field522; + @ObfuscatedName("ra") + @ObfuscatedSignature( + descriptor = "Lrx;" + ) + @Export("varclan") + static class466 varclan; + @ObfuscatedName("rg") @Export("mouseWheelRotation") static int mouseWheelRotation; - @ObfuscatedName("rm") + @ObfuscatedName("rk") @ObfuscatedSignature( - descriptor = "Luo;" + descriptor = "Lut;" ) - static class532 field651; - @ObfuscatedName("rc") + static class544 field649; + @ObfuscatedName("rl") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("scriptEvents") static NodeDeque scriptEvents; - @ObfuscatedName("rq") + @ObfuscatedName("rv") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) - static NodeDeque field629; - @ObfuscatedName("rs") + static NodeDeque field627; + @ObfuscatedName("ry") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) - static NodeDeque field630; - @ObfuscatedName("rp") + static NodeDeque field628; + @ObfuscatedName("rd") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) - static NodeDeque field628; - @ObfuscatedName("rg") + static NodeDeque field625; + @ObfuscatedName("rb") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) @Export("widgetFlags") static NodeHashTable widgetFlags; - @ObfuscatedName("ry") + @ObfuscatedName("rz") @Export("rootWidgetCount") static int rootWidgetCount; - @ObfuscatedName("rk") - static int field527; - @ObfuscatedName("re") + @ObfuscatedName("rj") + static int field523; + @ObfuscatedName("ri") static boolean[] field407; - @ObfuscatedName("rf") + @ObfuscatedName("ru") static boolean[] field408; - @ObfuscatedName("rl") + @ObfuscatedName("rx") static boolean[] field409; @ObfuscatedName("rt") @Export("rootWidgetXs") static int[] rootWidgetXs; - @ObfuscatedName("rx") + @ObfuscatedName("sg") @Export("rootWidgetYs") static int[] rootWidgetYs; - @ObfuscatedName("rw") + @ObfuscatedName("sj") @Export("rootWidgetWidths") static int[] rootWidgetWidths; - @ObfuscatedName("rn") + @ObfuscatedName("sr") @Export("rootWidgetHeights") static int[] rootWidgetHeights; - @ObfuscatedName("ri") + @ObfuscatedName("sa") @Export("gameDrawingMode") static int gameDrawingMode; - @ObfuscatedName("sq") - static long field615; + @ObfuscatedName("si") + static long field613; @ObfuscatedName("sd") @Export("isResizable") static boolean isResizable; - @ObfuscatedName("se") - static int[] field579; - @ObfuscatedName("sk") + @ObfuscatedName("sn") + static int[] field578; + @ObfuscatedName("sw") @Export("publicChatMode") static int publicChatMode; - @ObfuscatedName("sn") + @ObfuscatedName("sy") @Export("tradeChatMode") static int tradeChatMode; - @ObfuscatedName("sc") - static String field602; - @ObfuscatedName("si") + @ObfuscatedName("sh") + static String field600; + @ObfuscatedName("sb") static long[] crossWorldMessageIds; - @ObfuscatedName("sr") + @ObfuscatedName("sz") static int crossWorldMessageIdsIndex; @ObfuscatedName("sp") @ObfuscatedSignature( - descriptor = "Liz;" + descriptor = "Lil;" ) @Export("keyHandlerInstance") - static class212 keyHandlerInstance; - @ObfuscatedName("ss") + public static class223 keyHandlerInstance; + @ObfuscatedName("sf") @ObfuscatedSignature( - descriptor = "Lig;" + descriptor = "Lij;" ) - static class210 field423; - @ObfuscatedName("sf") - static int field532; + static class221 field422; + @ObfuscatedName("sq") + static int field530; @ObfuscatedName("so") - static int[] field580; - @ObfuscatedName("su") - static int[] field581; - @ObfuscatedName("sx") + static int[] field579; + @ObfuscatedName("sl") + static int[] field577; + @ObfuscatedName("tn") @Export("timeOfPreviousKeyPress") static long timeOfPreviousKeyPress; - @ObfuscatedName("tu") + @ObfuscatedName("tp") @ObfuscatedSignature( - descriptor = "[Lfi;" + descriptor = "[Lfc;" ) @Export("currentClanSettings") static ClanSettings[] currentClanSettings; - @ObfuscatedName("tn") + @ObfuscatedName("tw") @ObfuscatedSignature( - descriptor = "[Lgo;" + descriptor = "[Lgn;" ) @Export("currentClanChannels") static ClanChannel[] currentClanChannels; - @ObfuscatedName("tj") - static int field538; - @ObfuscatedName("tl") + @ObfuscatedName("tq") + static int field535; + @ObfuscatedName("ts") @Export("mapIconCount") static int mapIconCount; - @ObfuscatedName("tq") + @ObfuscatedName("tt") @Export("mapIconXs") static int[] mapIconXs; @ObfuscatedName("tg") @Export("mapIconYs") static int[] mapIconYs; - @ObfuscatedName("tb") + @ObfuscatedName("to") @ObfuscatedSignature( - descriptor = "[Lui;" + descriptor = "[Luz;" ) @Export("mapIcons") static SpritePixels[] mapIcons; - @ObfuscatedName("tz") + @ObfuscatedName("tr") @Export("destinationX") static int destinationX; - @ObfuscatedName("ti") + @ObfuscatedName("tx") @Export("destinationY") static int destinationY; @ObfuscatedName("ta") @Export("minimapState") static int minimapState; - @ObfuscatedName("tp") + @ObfuscatedName("tj") @Export("playingJingle") static boolean playingJingle; - @ObfuscatedName("tt") + @ObfuscatedName("ue") @Export("soundEffectCount") static int soundEffectCount; - @ObfuscatedName("tf") + @ObfuscatedName("ug") @Export("soundEffectIds") static int[] soundEffectIds; - @ObfuscatedName("tv") + @ObfuscatedName("ui") @Export("queuedSoundEffectLoops") static int[] queuedSoundEffectLoops; - @ObfuscatedName("ua") + @ObfuscatedName("uv") @Export("queuedSoundEffectDelays") static int[] queuedSoundEffectDelays; - @ObfuscatedName("uj") + @ObfuscatedName("uo") @Export("soundLocations") static int[] soundLocations; - @ObfuscatedName("uu") + @ObfuscatedName("uj") @ObfuscatedSignature( - descriptor = "[Lbp;" + descriptor = "[Lbo;" ) @Export("soundEffects") static SoundEffect[] soundEffects; - @ObfuscatedName("ut") + @ObfuscatedName("uq") @Export("isCameraLocked") static boolean isCameraLocked; @ObfuscatedName("ur") static boolean field402; @ObfuscatedName("ux") static boolean field404; - @ObfuscatedName("uo") - static boolean field401; - @ObfuscatedName("uv") + @ObfuscatedName("uw") + static boolean field403; + @ObfuscatedName("ub") @ObfuscatedSignature( - descriptor = "Lsn;" + descriptor = "Lsq;" ) - static class479 field642; - @ObfuscatedName("ue") + static class491 field644; + @ObfuscatedName("uy") @ObfuscatedSignature( - descriptor = "Lsy;" + descriptor = "Lsm;" ) - static class478 field646; - @ObfuscatedName("uy") + static class490 field643; + @ObfuscatedName("ut") @ObfuscatedSignature( - descriptor = "Lsy;" + descriptor = "Lsm;" ) - static class478 field647; - @ObfuscatedName("gz") + static class490 field642; + @ObfuscatedName("un") + static boolean field400; + @ObfuscatedName("hb") String field665; - @ObfuscatedName("gn") + @ObfuscatedName("hp") @ObfuscatedSignature( - descriptor = "Lar;" + descriptor = "Lay;" ) - class14 field658; - @ObfuscatedName("ht") + class14 field660; + @ObfuscatedName("hl") @ObfuscatedSignature( - descriptor = "Lax;" + descriptor = "Laq;" ) - class18 field660; - @ObfuscatedName("ho") + class18 field659; + @ObfuscatedName("hi") @ObfuscatedSignature( descriptor = "Lcom/jagex/oldscape/pub/OtlTokenRequester;" ) OtlTokenRequester field662; - @ObfuscatedName("hj") - Future field666; - @ObfuscatedName("hh") + @ObfuscatedName("hq") + Future field667; + @ObfuscatedName("hf") boolean field661; - @ObfuscatedName("hi") + @ObfuscatedName("hw") int field664; - @ObfuscatedName("hd") + @ObfuscatedName("hj") @ObfuscatedSignature( - descriptor = "Lax;" + descriptor = "Laq;" ) - class18 field659; - @ObfuscatedName("hk") + class18 field658; + @ObfuscatedName("hg") @ObfuscatedSignature( descriptor = "Lcom/jagex/oldscape/pub/RefreshAccessTokenRequester;" ) RefreshAccessTokenRequester field663; - @ObfuscatedName("hz") - Future field667; - @ObfuscatedName("ib") + @ObfuscatedName("hk") + Future field666; + @ObfuscatedName("if") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Luj;" ) Buffer field669; - @ObfuscatedName("il") + @ObfuscatedName("is") @ObfuscatedSignature( - descriptor = "Lap;" + descriptor = "Lac;" ) class7 field657; - @ObfuscatedName("ig") + @ObfuscatedName("im") long field668; static { @@ -992,7 +1000,7 @@ boolean shouldProcessClick() { clientType = -1; field424 = -1; onMobile = false; - param25 = 216; + param25 = 218; gameState = 0; reloadJS5 = false; isLoading = true; @@ -1000,7 +1008,7 @@ boolean shouldProcessClick() { mouseLastLastPressedTimeMillis = -1L; lastMouseRecordX = -1; lastMouseRecordY = -1; - field612 = -1L; + field610 = -1L; hadFocus = true; rebootTimer = 0; hintArrowType = 0; @@ -1014,93 +1022,91 @@ boolean shouldProcessClick() { playerAttackOption = AttackOption.AttackOption_hidden; npcAttackOption = AttackOption.AttackOption_hidden; renderSelf = false; - field419 = class92.field940; + field414 = class92.field942; js5ConnectState = 0; js5Cycles = 0; js5Errors = 0; loginState = 0; - field448 = 0; - field447 = 0; field444 = 0; - field421 = class139.field1320; - field648 = class519.field4205; - int var2 = "com_jagex_auth_desktop_osrs:public".length(); - byte[] var3 = new byte[var2]; + field447 = 0; + field443 = 0; + field419 = class124.field1207; + field648 = class531.field4234; + int var1 = "com_jagex_auth_desktop_osrs:public".length(); + byte[] var2 = new byte[var1]; - int var4; - char var5; - for (var4 = 0; var4 < var2; ++var4) { - var5 = "com_jagex_auth_desktop_osrs:public".charAt(var4); - if (var5 > 127) { - var3[var4] = 63; + int var3; + char var4; + for (var3 = 0; var3 < var1; ++var3) { + var4 = "com_jagex_auth_desktop_osrs:public".charAt(var3); + if (var4 > 127) { + var2[var3] = 63; } else { - var3[var4] = (byte)var5; + var2[var3] = (byte)var4; } } - String var0 = class11.method32(var3, 0, var3.length); - field656 = var0; - var2 = "com_jagex_auth_desktop_runelite:public".length(); - var3 = new byte[var2]; + field656 = class415.method2150(var2); + var1 = "com_jagex_auth_desktop_runelite:public".length(); + var2 = new byte[var1]; - for (var4 = 0; var4 < var2; ++var4) { - var5 = "com_jagex_auth_desktop_runelite:public".charAt(var4); - if (var5 > 127) { - var3[var4] = 63; + for (var3 = 0; var3 < var1; ++var3) { + var4 = "com_jagex_auth_desktop_runelite:public".charAt(var3); + if (var4 > 127) { + var2[var3] = 63; } else { - var3[var4] = (byte)var5; + var2[var3] = (byte)var4; } } - var0 = class11.method32(var3, 0, var3.length); - field655 = var0; + field655 = class415.method2150(var2); Login_isUsernameRemembered = false; secureRandomFuture = new SecureRandomFuture(); randomDatData = null; npcs = new NPC[65536]; npcCount = 0; npcIndices = new int[65536]; - field451 = 0; - field552 = new int[250]; + field449 = 0; + field550 = new int[250]; packetWriter = new PacketWriter(); logoutTimer = 0; hadNetworkError = false; timer = new Timer(); fontsMap = new HashMap(); field452 = 0; - field453 = 1; - field455 = 0; + field455 = 1; + field453 = 0; field454 = 1; - field456 = 0; + field451 = 0; collisionMaps = new CollisionMap[4]; isInInstance = false; instanceChunkTemplates = new int[4][13][13]; - field653 = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3}; - field457 = 0; - field462 = 2301979; - field463 = 5063219; + field652 = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3}; + field460 = 0; + field461 = 2301979; + field458 = 5063219; field459 = 3353893; - field460 = 7759444; + field457 = 7759444; field382 = false; alternativeScrollbarWidth = 0; camAngleX = 128; camAngleY = 0; camAngleDY = 0; camAngleDX = 0; - field473 = 0; - field465 = 0; + field478 = 0; + field464 = 0; oculusOrbState = 0; camFollowHeight = 50; - field480 = 0; - field468 = 0; field471 = 0; + field462 = 0; + field477 = 0; oculusOrbNormalSpeed = 12; oculusOrbSlowedSpeed = 6; - field476 = 0; + field367 = 0; oculusOrbOnLocalPlayer = false; packetIndicator = 0; emitPackets = false; - field467 = 0; + field473 = 0; overheadTextLimit = 0; overheadTextCount = 50; overheadTextXs = new int[overheadTextCount]; @@ -1111,7 +1117,7 @@ boolean shouldProcessClick() { overheadTextEffects = new int[overheadTextCount]; field594 = new int[overheadTextCount][]; overheadTextCyclesRemaining = new int[overheadTextCount]; - field603 = new String[overheadTextCount]; + field601 = new String[overheadTextCount]; tileLastDrawnActor = new int[104][104]; viewportDrawCount = 0; viewportTempX = -1; @@ -1121,20 +1127,20 @@ boolean shouldProcessClick() { mouseCrossState = 0; mouseCrossColor = 0; showMouseCross = true; - field486 = 0; + field479 = 0; showLoadingMessages = true; players = new Player[2048]; localPlayerIndex = -1; isMembers = 0; playerUUID = -1L; - field386 = true; + field387 = true; drawPlayerNames = 0; - field492 = 0; - field564 = new int[1000]; + field489 = 0; + field559 = new int[1000]; playerMenuOpcodes = new int[]{44, 45, 46, 47, 48, 49, 50, 51}; playerMenuActions = new String[8]; playerOptionsPriorities = new boolean[8]; - field561 = new int[]{768, 1024, 1280, 512, 1536, 256, 0, 1792}; + field563 = new int[]{768, 1024, 1280, 512, 1536, 256, 0, 1792}; combatTargetPlayerIndex = -1; groundItems = new NodeDeque[4][104][104]; pendingSpawns = new NodeDeque(); @@ -1143,6 +1149,7 @@ boolean shouldProcessClick() { currentLevels = new int[25]; levels = new int[25]; experience = new int[25]; + field564 = new int[25]; leftClickOpensMenu = false; isMenuOpen = false; menuOptionsCount = 0; @@ -1159,19 +1166,19 @@ boolean shouldProcessClick() { showMouseOverText = true; viewportX = -1; viewportY = -1; - field496 = 0; - field498 = 50; + field493 = 0; + field492 = 50; isItemSelected = 0; - field599 = null; + field597 = null; isSpellSelected = false; selectedSpellChildIndex = -1; selectedSpellItemId = -1; - field600 = null; - field601 = null; + field599 = null; + field598 = null; rootInterface = -1; interfaceParents = new NodeHashTable(8); field505 = 0; - field508 = -1; + field499 = -1; chatEffects = 0; meslayerContinueWidget = null; runEnergy = 0; @@ -1185,12 +1192,12 @@ boolean shouldProcessClick() { widgetClickX = 0; widgetClickY = 0; draggedOnWidget = null; - field395 = false; - field514 = -1; + field396 = false; + field512 = -1; field513 = -1; field397 = false; - field515 = -1; - field521 = -1; + field514 = -1; + field508 = -1; isDraggingWidget = false; cycleCntr = 1; changedVarps = new int[32]; @@ -1199,25 +1206,25 @@ boolean shouldProcessClick() { changedItemContainersCount = 0; changedSkills = new int[32]; changedSkillsCount = 0; - field572 = new int[32]; - field512 = 0; + field571 = new int[32]; + field510 = 0; chatCycle = 0; - field518 = 0; field524 = 0; - field511 = 0; - field517 = 0; - field529 = 0; + field526 = 0; + field520 = 0; field525 = 0; - field528 = 0; + field519 = 0; + field527 = 0; + field522 = 0; mouseWheelRotation = 0; - field651 = new class532(); + field649 = new class544(); scriptEvents = new NodeDeque(); - field629 = new NodeDeque(); - field630 = new NodeDeque(); + field627 = new NodeDeque(); field628 = new NodeDeque(); + field625 = new NodeDeque(); widgetFlags = new NodeHashTable(512); rootWidgetCount = 0; - field527 = -2; + field523 = -2; field407 = new boolean[100]; field408 = new boolean[100]; field409 = new boolean[100]; @@ -1226,23 +1233,23 @@ boolean shouldProcessClick() { rootWidgetWidths = new int[100]; rootWidgetHeights = new int[100]; gameDrawingMode = 0; - field615 = 0L; + field613 = 0L; isResizable = true; - field579 = new int[]{16776960, 16711680, 65280, 65535, 16711935, 16777215}; + field578 = new int[]{16776960, 16711680, 65280, 65535, 16711935, 16777215}; publicChatMode = 0; tradeChatMode = 0; - field602 = ""; + field600 = ""; crossWorldMessageIds = new long[100]; crossWorldMessageIdsIndex = 0; - keyHandlerInstance = new class212(); - field423 = new class210(); - field532 = 0; - field580 = new int[128]; - field581 = new int[128]; + keyHandlerInstance = new class223(); + field422 = new class221(); + field530 = 0; + field579 = new int[128]; + field577 = new int[128]; timeOfPreviousKeyPress = -1L; currentClanSettings = new ClanSettings[4]; currentClanChannels = new ClanChannel[4]; - field538 = -1; + field535 = -1; mapIconCount = 0; mapIconXs = new int[1000]; mapIconYs = new int[1000]; @@ -1260,47 +1267,48 @@ boolean shouldProcessClick() { isCameraLocked = false; field402 = false; field404 = false; - field401 = false; + field403 = false; + field644 = null; + field643 = null; field642 = null; - field646 = null; - field647 = null; field400 = false; cameraShaking = new boolean[5]; cameraShakeIntensity = new int[5]; cameraMoveIntensity = new int[5]; cameraShakeSpeed = new int[5]; cameraShakeCycle = new int[5]; - field638 = 256; - field640 = 205; + field640 = 256; + field636 = 205; zoomHeight = 256; zoomWidth = 320; - field635 = 1; - field634 = 32767; - field641 = 1; + field639 = 1; field637 = 32767; + field638 = 1; + field634 = 32767; viewportOffsetX = 0; viewportOffsetY = 0; viewportWidth = 0; viewportHeight = 0; viewportZoom = 0; playerAppearance = new PlayerComposition(); - field542 = -1; + field546 = -1; field547 = -1; field645 = new DesktopPlatformInfoProvider(); grandExchangeOffers = new GrandExchangeOffer[8]; GrandExchangeEvents_worldComparator = new GrandExchangeOfferOwnWorldComparator(); - archive5 = new class423(8, class421.field3766); + field631 = new class435(8, class433.field3801); Widget_cachedModels = new EvictingDualNodeHashTable(64); - Widget_cachedFonts = new EvictingDualNodeHashTable(64); - field549 = -1; + archive11 = new EvictingDualNodeHashTable(64); + field545 = -1; field369 = -1; - field609 = new ArrayList(); + field607 = new ArrayList(); + field654 = new class229(); archiveLoaders = new ArrayList(10); archiveLoadersDone = 0; - field550 = 0; - field652 = new ApproximateRouteStrategy(); - field593 = new int[50]; + field549 = 0; + field651 = new ApproximateRouteStrategy(); field592 = new int[50]; + field591 = new int[50]; } public Client() { @@ -1309,48 +1317,49 @@ public Client() { this.field668 = -1L; } - @ObfuscatedName("ar") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "59" + garbageValue = "101" ) @Export("resizeGame") protected final void resizeGame() { - field615 = GameEngine.clockNow() + 500L; + field613 = SpotAnimationDefinition.method962() + 500L; this.resizeJS(); if (rootInterface != -1) { - this.resizeRoot(true); + this.method389(true); } } - @ObfuscatedName("by") + @ObfuscatedName("bm") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "208117174" + garbageValue = "-550390769" ) @Export("setUp") protected final void setUp() { - PacketBufferNode.method1611(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); - class480.worldPort = gameBuild == 0 ? 43594 : worldId + 40000; - class129.js5Port = gameBuild == 0 ? 443 : worldId + 50000; - class4.currentPort = class480.worldPort; - UrlRequest.field1174 = class330.field2941; - class140.field1328 = class330.field2942; - PlayerComposition.field2904 = class330.field2940; - PlayerComposition.field2905 = class330.field2943; - FriendsChat.urlRequester = new class113(this.field661, 216); + class4.method5(new int[]{20, 260, 10000}, new int[]{1000, 100, 500}); + WorldMapCacheName.worldPort = gameBuild == 0 ? 43594 : worldId + 40000; + AbstractSocket.js5Port = gameBuild == 0 ? 443 : worldId + 50000; + class252.currentPort = WorldMapCacheName.worldPort; + WorldMapLabelSize.field1939 = class342.field2973; + class90.field892 = class342.field2974; + class503.field4091 = class342.field2972; + PlayerComposition.field2935 = class342.field2975; + class60.urlRequester = new class113(this.field661, 218); this.setUpKeyboard(); - this.method143(); - class12.mouseWheel = this.mouseWheel(); - this.method142(field423, 0); - this.method142(keyHandlerInstance, 1); - class6.masterDisk = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); + this.method155(); + class396.mouseWheel = this.mouseWheel(); + this.method154(field422, 0); + this.method154(keyHandlerInstance, 1); + this.setUpClipboard(); + class302.field2511 = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); AccessFile var2 = null; ClientPreferences var3 = new ClientPreferences(); try { - var2 = Decimator.getPreferencesFile("", WorldMapSectionType.field2417.name, false); + var2 = class131.getPreferencesFile("", Messages.field1156.name, false); byte[] var4 = new byte[(int)var2.length()]; int var6; @@ -1372,25 +1381,22 @@ protected final void setUp() { } catch (Exception var7) { } - class449.clientPreferences = var3; - this.setUpClipboard(); - KeyHandler.method85(this, class18.field50); - class270.setWindowedMode(class449.clientPreferences.method566()); - class299.friendSystem = new FriendSystem(Language.loginType); - this.field658 = new class14("tokenRequest", 1, 1); - if (!class305.field2778.contains(this)) { - class305.field2778.add(this); + WorldMapIcon_1.clientPreferences = var3; + class27.method112(this, class14.field44); + class9.setWindowedMode(WorldMapIcon_1.clientPreferences.method563()); + class12.friendSystem = new FriendSystem(class89.loginType); + this.field660 = new class14("tokenRequest", 1, 1); + if (!class316.field2793.contains(this)) { + class316.field2793.add(this); } - class218.field1926 = new class216[1]; - class214 var9 = class214.field1898; - class218.field1926[0] = new class216(var9.field1907, var9.field1908); + field654.method1169(); } - @ObfuscatedName("bs") + @ObfuscatedName("bp") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1753601126" + garbageValue = "564244601" ) @Export("doCycle") protected final void doCycle() { @@ -1404,14 +1410,14 @@ protected final void doCycle() { } if (var1 == null) { - boolean var5 = WorldMapArea.method1425(); - if (var5 && playingJingle && AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.tryDiscard(); + boolean var5 = class516.method2513(); + if (var5 && playingJingle && MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.tryDiscard(); } - class301.method1622(); - keyHandlerInstance.method1104(); - this.method141(); + class102.method604(); + keyHandlerInstance.method1127(); + this.method153(); synchronized(MouseHandler.MouseHandler_instance) { MouseHandler.MouseHandler_currentButton = MouseHandler.MouseHandler_currentButtonVolatile; MouseHandler.MouseHandler_x = MouseHandler.MouseHandler_xVolatile; @@ -1424,30 +1430,30 @@ protected final void doCycle() { MouseHandler.MouseHandler_lastButtonVolatile = 0; } - if (class12.mouseWheel != null) { - int var6 = class12.mouseWheel.useRotation(); + if (class396.mouseWheel != null) { + int var6 = class396.mouseWheel.useRotation(); mouseWheelRotation = var6; } if (gameState == 0) { - ParamComposition.method1017(); - PacketWriter.method645(); + WorldMapCacheName.method1354(); + WorldMapManager.method1277(); } else if (gameState == 5) { - GrandExchangeOfferWorldComparator.method1950(this, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); - ParamComposition.method1017(); - PacketWriter.method645(); + Actor.method516(this, class369.fontPlain11, ItemLayer.fontPlain12); + WorldMapCacheName.method1354(); + WorldMapManager.method1277(); } else if (gameState != 10 && gameState != 11) { if (gameState == 20) { - GrandExchangeOfferWorldComparator.method1950(this, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + Actor.method516(this, class369.fontPlain11, ItemLayer.fontPlain12); this.doCycleLoggedOut(); } else if (gameState == 50) { - GrandExchangeOfferWorldComparator.method1950(this, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + Actor.method516(this, class369.fontPlain11, ItemLayer.fontPlain12); this.doCycleLoggedOut(); } else if (gameState == 25) { - class370.method1968(); + ModeWhere.method2002(); } } else { - GrandExchangeOfferWorldComparator.method1950(this, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + Actor.method516(this, class369.fontPlain11, ItemLayer.fontPlain12); } if (gameState == 30) { @@ -1463,15 +1469,15 @@ protected final void doCycle() { } } - @ObfuscatedName("bm") + @ObfuscatedName("bw") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-1944984067" + garbageValue = "-851092167" ) @Export("draw") protected final void draw(boolean var1) { - if ((gameState == 10 || gameState == 20 || gameState == 30) && 0L != field615 && GameEngine.clockNow() > field615) { - class270.setWindowedMode(class218.getWindowedMode()); + if ((gameState == 10 || gameState == 20 || gameState == 30) && field613 != 0L && SpotAnimationDefinition.method962() > field613) { + class9.setWindowedMode(ApproximateRouteStrategy.getWindowedMode()); } int var2; @@ -1484,50 +1490,50 @@ protected final void draw(boolean var1) { if (gameState == 0) { this.drawInitial(Login.Login_loadingPercent, Login.Login_loadingText, var1); } else if (gameState == 5) { - class105.drawTitle(class59.fontBold12, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + UrlRequest.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class369.fontPlain11, ItemLayer.fontPlain12); } else if (gameState != 10 && gameState != 11) { if (gameState == 20) { - class105.drawTitle(class59.fontBold12, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + UrlRequest.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class369.fontPlain11, ItemLayer.fontPlain12); } else if (gameState == 50) { - class105.drawTitle(class59.fontBold12, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + UrlRequest.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class369.fontPlain11, ItemLayer.fontPlain12); } else if (gameState == 25) { - if (field456 == 1) { - if (field452 > field453) { - field453 = field452; + if (field451 == 1) { + if (field452 > field455) { + field455 = field452; } - var2 = (field453 * 50 - field452 * 50) / field453; - FadeInTask.drawLoadingMessage("Loading - please wait." + "
" + " (" + var2 + "%" + ")", false); - } else if (field456 == 2) { - if (field455 > field454) { - field454 = field455; + var2 = (field455 * 50 - field452 * 50) / field455; + LoginPacket.drawLoadingMessage("Loading - please wait." + "
" + " (" + var2 + "%" + ")", false); + } else if (field451 == 2) { + if (field453 > field454) { + field454 = field453; } - var2 = (field454 * 50 - field455 * 50) / field454 + 50; - FadeInTask.drawLoadingMessage("Loading - please wait." + "
" + " (" + var2 + "%" + ")", false); + var2 = (field454 * 50 - field453 * 50) / field454 + 50; + LoginPacket.drawLoadingMessage("Loading - please wait." + "
" + " (" + var2 + "%" + ")", false); } else { - FadeInTask.drawLoadingMessage("Loading - please wait.", false); + LoginPacket.drawLoadingMessage("Loading - please wait.", false); } } else if (gameState == 30) { this.drawLoggedIn(); } else if (gameState == 40) { - FadeInTask.drawLoadingMessage("Connection lost" + "
" + "Please wait - attempting to reestablish", false); + LoginPacket.drawLoadingMessage("Connection lost" + "
" + "Please wait - attempting to reestablish", false); } else if (gameState == 45) { - FadeInTask.drawLoadingMessage("Please wait...", false); + LoginPacket.drawLoadingMessage("Please wait...", false); } } else { - class105.drawTitle(class59.fontBold12, HealthBarUpdate.fontPlain11, SecureRandomCallable.fontPlain12); + UrlRequest.drawTitle(GrandExchangeOfferTotalQuantityComparator.fontBold12, class369.fontPlain11, ItemLayer.fontPlain12); } if (gameState == 30 && gameDrawingMode == 0 && !var1 && !isResizable) { for (var2 = 0; var2 < rootWidgetCount; ++var2) { if (field408[var2]) { - AttackOption.rasterProvider.draw(rootWidgetXs[var2], rootWidgetYs[var2], rootWidgetWidths[var2], rootWidgetHeights[var2]); + class338.rasterProvider.draw(rootWidgetXs[var2], rootWidgetYs[var2], rootWidgetWidths[var2], rootWidgetHeights[var2]); field408[var2] = false; } } } else if (gameState > 0) { - AttackOption.rasterProvider.drawFull(0, 0); + class338.rasterProvider.drawFull(0, 0); for (var2 = 0; var2 < rootWidgetCount; ++var2) { field408[var2] = false; @@ -1536,22 +1542,22 @@ protected final void draw(boolean var1) { } - @ObfuscatedName("bf") + @ObfuscatedName("bj") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1298916795" + garbageValue = "1863199463" ) @Export("kill0") protected final void kill0() { - if (KeyHandler.varcs.hasUnwrittenChanges()) { - KeyHandler.varcs.write(); + if (class176.varcs.hasUnwrittenChanges()) { + class176.varcs.write(); } - if (class126.mouseRecorder != null) { - class126.mouseRecorder.isRunning = false; + if (Message.mouseRecorder != null) { + Message.mouseRecorder.isRunning = false; } - class126.mouseRecorder = null; + Message.mouseRecorder = null; packetWriter.close(); if (MouseHandler.MouseHandler_instance != null) { synchronized(MouseHandler.MouseHandler_instance) { @@ -1559,222 +1565,220 @@ protected final void kill0() { } } - class12.mouseWheel = null; - if (AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.shutdown(); + class396.mouseWheel = null; + if (MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.shutdown(); } - class308.field2819.method1940(); - class214.method1124(); - if (FriendsChat.urlRequester != null) { - FriendsChat.urlRequester.close(); - FriendsChat.urlRequester = null; + WorldMapSectionType.field2038.method1962(); + class227.method1164(); + if (class60.urlRequester != null) { + class60.urlRequester.close(); + class60.urlRequester = null; } - class510.method2513(); - this.field658.method40(); + HealthBarDefinition.method916(); + this.field660.method56(); } - @ObfuscatedName("br") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1929688897" + descriptor = "(B)V", + garbageValue = "-94" ) @Export("vmethod1485") protected final void vmethod1485() { } - @ObfuscatedName("gx") + @ObfuscatedName("gv") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "920896355" + garbageValue = "2071645038" ) - boolean method351() { + boolean method363() { return this.field664 == 1; } - @ObfuscatedName("gq") + @ObfuscatedName("gc") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1597201922" + descriptor = "(S)Z", + garbageValue = "-22117" ) - boolean method352() { - return class27.field76 != null && !class27.field76.trim().isEmpty() && class9.field20 != null && !class9.field20.trim().isEmpty(); + boolean method364() { + return Messages.field1155 != null && !Messages.field1155.trim().isEmpty() && ObjectComposition.field1664 != null && !ObjectComposition.field1664.trim().isEmpty(); } - @ObfuscatedName("gt") + @ObfuscatedName("gr") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "106" + garbageValue = "74" ) - boolean method353() { - return class157.field1407 != null && !class157.field1407.trim().isEmpty() && Varcs.field1140 != null && !Varcs.field1140.trim().isEmpty(); + boolean method365() { + return class369.field3560 != null && !class369.field3560.trim().isEmpty() && InterfaceParent.field862 != null && !InterfaceParent.field862.trim().isEmpty(); } - @ObfuscatedName("gr") + @ObfuscatedName("gk") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "13" + descriptor = "(I)Z", + garbageValue = "-1304458364" ) - boolean method354() { + boolean method366() { return this.field662 != null; } - @ObfuscatedName("gz") + @ObfuscatedName("go") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1881627729" + garbageValue = "-191398087" ) - void method355(String var1) throws IOException { + void method367(String var1) throws IOException { HashMap var2 = new HashMap(); var2.put("grant_type", "refresh_token"); var2.put("scope", "gamesso.token.create"); var2.put("refresh_token", var1); - URL var3 = new URL(class510.field4133 + "shield/oauth/token" + (new class463(var2)).method2342()); - class419 var4 = new class419(); - if (this.method351()) { - var4.method2169(field655); + URL var3 = new URL(class314.field2776 + "shield/oauth/token" + (new class475(var2)).method2361()); + class431 var4 = new class431(); + if (this.method363()) { + var4.method2185(field655); } else { - var4.method2169(field656); + var4.method2185(field656); } - var4.method2166("Host", (new URL(class510.field4133)).getHost()); - var4.method2173(class460.field3901); - class9 var5 = class9.field18; + var4.method2182("Host", (new URL(class314.field2776)).getHost()); + var4.method2189(class472.field3931); + class9 var5 = class9.field22; RefreshAccessTokenRequester var6 = this.field663; if (var6 != null) { - this.field667 = var6.request(var5.method22(), var3, var4.method2165(), ""); + this.field666 = var6.request(var5.method24(), var3, var4.method2181(), ""); } else { class10 var7 = new class10(var3, var5, var4, this.field661); - this.field659 = this.field658.method38(var7); + this.field658 = this.field660.method54(var7); } } - @ObfuscatedName("gn") + @ObfuscatedName("gh") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)V", - garbageValue = "1" + garbageValue = "-43" ) - void method356(String var1) throws IOException { - URL var2 = new URL(class510.field4133 + "public/v1/games/YCfdbvr2pM1zUYMxJRexZY/play"); - class419 var3 = new class419(); - var3.method2170(var1); - class9 var4 = class9.field17; + void method368(String var1) throws IOException { + URL var2 = new URL(class314.field2776 + "public/v1/games/YCfdbvr2pM1zUYMxJRexZY/play"); + class431 var3 = new class431(); + var3.method2186(var1); + class9 var4 = class9.field21; OtlTokenRequester var5 = this.field662; if (var5 != null) { - this.field666 = var5.request(var4.method22(), var2, var3.method2165(), ""); + this.field667 = var5.request(var4.method24(), var2, var3.method2181(), ""); } else { class10 var6 = new class10(var2, var4, var3, this.field661); - this.field660 = this.field658.method38(var6); + this.field659 = this.field660.method54(var6); } } - @ObfuscatedName("ht") + @ObfuscatedName("gd") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "1347426796" + garbageValue = "169401816" ) - void method358(String var1, String var2) throws IOException, JSONException { - URL var3 = new URL(class510.field4133 + "game-session/v1/tokens"); - class10 var4 = new class10(var3, class9.field18, this.field661); - var4.method27().method2170(var1); - var4.method27().method2173(class460.field3901); + void method369(String var1, String var2) throws IOException, JSONException { + URL var3 = new URL(FriendsChat.field3821 + "game-session/v1/tokens"); + class10 var4 = new class10(var3, class9.field22, this.field661); + var4.method34().method2186(var1); + var4.method34().method2189(class472.field3931); JSONObject var5 = new JSONObject(); - var5.method2709("accountId", var2); - var4.method28(new class462(var5)); - this.field660 = this.field658.method38(var4); + var5.method2727("accountId", var2); + var4.method35(new class474(var5)); + this.field659 = this.field660.method54(var4); } - @ObfuscatedName("hd") + @ObfuscatedName("hi") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "286321361" + garbageValue = "121204254" ) @Export("doCycleJs5") void doCycleJs5() { if (gameState != 1000) { - boolean var1 = class308.field2819.method1930(); + boolean var1 = WorldMapSectionType.field2038.method1953(); if (!var1) { - this.method364(); + this.method375(); } } } - @ObfuscatedName("hk") + @ObfuscatedName("hq") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "375037576" + garbageValue = "-1703369019" ) - void method364() { - if (class308.field2819.field3570 >= 4) { + void method375() { + if (WorldMapSectionType.field2038.field3605 >= 4) { this.error("js5crc"); - MusicSong.updateGameState(1000); + WorldMapSection2.updateGameState(1000); } else { - if (class308.field2819.field3569 >= 4) { + if (WorldMapSectionType.field2038.field3606 >= 4) { if (gameState <= 5) { this.error("js5io"); - MusicSong.updateGameState(1000); + WorldMapSection2.updateGameState(1000); return; } js5Cycles = 3000; - class308.field2819.field3569 = 3; + WorldMapSectionType.field2038.field3606 = 3; } if (--js5Cycles + 1 <= 0) { try { if (js5ConnectState == 0) { - class126.js5SocketTask = GameEngine.taskHandler.newSocketTask(class292.worldHost, class4.currentPort); + class101.js5SocketTask = GameEngine.taskHandler.newSocketTask(Friend.worldHost, class252.currentPort); ++js5ConnectState; } if (js5ConnectState == 1) { - if (class126.js5SocketTask.status == 2) { + if (class101.js5SocketTask.status == 2) { this.js5Error(-1); return; } - if (class126.js5SocketTask.status == 1) { + if (class101.js5SocketTask.status == 1) { ++js5ConnectState; } } if (js5ConnectState == 2) { - Socket var2 = (Socket)class126.js5SocketTask.result; - BufferedNetSocket var1 = new BufferedNetSocket(var2, 40000, 5000); - class59.js5Socket = var1; - Buffer var3 = new Buffer(5); - var3.writeByte(15); - var3.writeInt(216); - class59.js5Socket.write(var3.array, 0, 5); + class167.js5Socket = WorldMapData_0.method1178((Socket)class101.js5SocketTask.result, 40000, 5000); + Buffer var1 = new Buffer(5); + var1.writeByte(15); + var1.writeInt(218); + class167.js5Socket.write(var1.array, 0, 5); ++js5ConnectState; - class270.field2451 = GameEngine.clockNow(); + class310.field2769 = SpotAnimationDefinition.method962(); } if (js5ConnectState == 3) { - if (class59.js5Socket.available() > 0) { - int var4 = class59.js5Socket.readUnsignedByte(); - if (var4 != 0) { - this.js5Error(var4); + if (class167.js5Socket.available() > 0) { + int var2 = class167.js5Socket.readUnsignedByte(); + if (var2 != 0) { + this.js5Error(var2); return; } ++js5ConnectState; - } else if (GameEngine.clockNow() - class270.field2451 > 30000L) { + } else if (SpotAnimationDefinition.method962() - class310.field2769 > 30000L) { this.js5Error(-2); return; } } if (js5ConnectState == 4) { - class308.field2819.method1933(class59.js5Socket, gameState > 20); - class126.js5SocketTask = null; - class59.js5Socket = null; + WorldMapSectionType.field2038.method1955(class167.js5Socket, gameState > 20); + class101.js5SocketTask = null; + class167.js5Socket = null; js5ConnectState = 0; js5Errors = 0; } - } catch (IOException var5) { + } catch (IOException var3) { this.js5Error(-3); } @@ -1782,828 +1786,698 @@ void method364() { } } - @ObfuscatedName("hz") + @ObfuscatedName("hf") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "17" + descriptor = "(II)V", + garbageValue = "-383870339" ) @Export("js5Error") void js5Error(int var1) { - class126.js5SocketTask = null; - class59.js5Socket = null; + class101.js5SocketTask = null; + class167.js5Socket = null; js5ConnectState = 0; - if (class4.currentPort == class480.worldPort) { - class4.currentPort = class129.js5Port; + if (class252.currentPort == WorldMapCacheName.worldPort) { + class252.currentPort = AbstractSocket.js5Port; } else { - class4.currentPort = class480.worldPort; + class252.currentPort = WorldMapCacheName.worldPort; } ++js5Errors; if (js5Errors < 2 || var1 != 7 && var1 != 9) { if (js5Errors >= 2 && var1 == 6) { this.error("js5connect_outofdate"); - MusicSong.updateGameState(1000); + WorldMapSection2.updateGameState(1000); } else if (js5Errors >= 4) { if (gameState <= 5) { this.error("js5connect"); - MusicSong.updateGameState(1000); + WorldMapSection2.updateGameState(1000); } else { js5Cycles = 3000; } } } else if (gameState <= 5) { this.error("js5connect_full"); - MusicSong.updateGameState(1000); + WorldMapSection2.updateGameState(1000); } else { js5Cycles = 3000; } } - @ObfuscatedName("hy") + @ObfuscatedName("hh") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "70" + descriptor = "(I)V", + garbageValue = "-1040776320" ) @Export("doCycleLoggedOut") final void doCycleLoggedOut() { - Object var1 = packetWriter.getSocket(); + AbstractSocket var1 = packetWriter.getSocket(); PacketBuffer var2 = packetWriter.packetBuffer; try { if (loginState == 0) { - if (GraphicsObject.secureRandom == null && (secureRandomFuture.isDone() || field448 > 250)) { - GraphicsObject.secureRandom = secureRandomFuture.get(); + if (EnumComposition.secureRandom == null && (secureRandomFuture.isDone() || field444 > 250)) { + EnumComposition.secureRandom = secureRandomFuture.get(); secureRandomFuture.shutdown(); secureRandomFuture = null; } - if (GraphicsObject.secureRandom != null) { + if (EnumComposition.secureRandom != null) { if (var1 != null) { - ((AbstractSocket)var1).close(); + var1.close(); var1 = null; } - VarcInt.socketTask = null; + Player.socketTask = null; hadNetworkError = false; - field448 = 0; - if (field648.method2616()) { - if (this.method352()) { + field444 = 0; + if (field648.method2633()) { + if (this.method364()) { try { - this.method355(class9.field20); - class316.method1700(21); - } catch (Throwable var25) { - Messages.RunException_sendStackTrace((String)null, var25); - class387.getLoginError(65); + this.method367(ObjectComposition.field1664); + class19.method73(21); + } catch (Throwable var22) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var22); + class149.getLoginError(65); return; } } else { - if (!this.method353()) { - class387.getLoginError(65); + if (!this.method365()) { + class149.getLoginError(65); return; } try { - this.method358(class157.field1407, Varcs.field1140); - class316.method1700(20); - } catch (Exception var24) { - Messages.RunException_sendStackTrace((String)null, var24); - class387.getLoginError(65); + this.method369(class369.field3560, InterfaceParent.field862); + class19.method73(20); + } catch (Exception var21) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var21); + class149.getLoginError(65); return; } } } else { - class316.method1700(1); + class19.method73(1); } } } - class20 var27; + class20 var24; if (loginState == 21) { - if (this.field667 != null) { - if (!this.field667.isDone()) { + if (this.field666 != null) { + if (!this.field666.isDone()) { return; } - if (this.field667.isCancelled()) { - class387.getLoginError(65); - this.field667 = null; + if (this.field666.isCancelled()) { + class149.getLoginError(65); + this.field666 = null; return; } try { - RefreshAccessTokenResponse var3 = (RefreshAccessTokenResponse)this.field667.get(); + RefreshAccessTokenResponse var3 = (RefreshAccessTokenResponse)this.field666.get(); if (!var3.isSuccess()) { - class387.getLoginError(65); - this.field667 = null; + class149.getLoginError(65); + this.field666 = null; return; } - class27.field76 = var3.getAccessToken(); - class9.field20 = var3.getRefreshToken(); - this.field667 = null; - } catch (Exception var23) { - Messages.RunException_sendStackTrace((String)null, var23); - class387.getLoginError(65); - this.field667 = null; + Messages.field1155 = var3.getAccessToken(); + ObjectComposition.field1664 = var3.getRefreshToken(); + this.field666 = null; + } catch (Exception var20) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var20); + class149.getLoginError(65); + this.field666 = null; return; } } else { - if (this.field659 == null) { - class387.getLoginError(65); + if (this.field658 == null) { + class149.getLoginError(65); return; } - if (!this.field659.method54()) { + if (!this.field658.method68()) { return; } - if (this.field659.method53()) { - Messages.RunException_sendStackTrace(this.field659.method52(), (Throwable)null); - class387.getLoginError(65); - this.field659 = null; + if (this.field658.method67()) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace(this.field658.method66(), (Throwable)null); + class149.getLoginError(65); + this.field658 = null; return; } - var27 = this.field659.method55(); - if (var27.method63() != 200) { - class387.getLoginError(65); - this.field659 = null; + var24 = this.field658.method69(); + if (var24.method74() != 200) { + class149.getLoginError(65); + this.field658 = null; return; } - field448 = 0; - class462 var4 = new class462(var27.method66()); + field444 = 0; + class474 var4 = new class474(var24.method76()); try { - class27.field76 = var4.method2338().getString("access_token"); - class9.field20 = var4.method2338().getString("refresh_token"); - } catch (Exception var22) { - Messages.RunException_sendStackTrace("Error parsing tokens", var22); - class387.getLoginError(65); - this.field659 = null; + Messages.field1155 = var4.method2357().getString("access_token"); + ObjectComposition.field1664 = var4.method2357().getString("refresh_token"); + } catch (Exception var19) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Error parsing tokens", var19); + class149.getLoginError(65); + this.field658 = null; return; } } - this.method356(class27.field76); - class316.method1700(20); + this.method368(Messages.field1155); + class19.method73(20); } if (loginState == 20) { - if (this.field666 != null) { - if (!this.field666.isDone()) { + if (this.field667 != null) { + if (!this.field667.isDone()) { return; } - if (this.field666.isCancelled()) { - class387.getLoginError(65); - this.field666 = null; - return; + if (this.field667.isCancelled()) { + class149.getLoginError(65); + this.field667 = null; + return; } try { - OtlTokenResponse var28 = (OtlTokenResponse)this.field666.get(); - if (!var28.isSuccess()) { - class387.getLoginError(65); - this.field666 = null; + OtlTokenResponse var25 = (OtlTokenResponse)this.field667.get(); + if (!var25.isSuccess()) { + class149.getLoginError(65); + this.field667 = null; return; } - this.field665 = var28.getToken(); - this.field666 = null; - } catch (Exception var21) { - Messages.RunException_sendStackTrace((String)null, var21); - class387.getLoginError(65); - this.field666 = null; + this.field665 = var25.getToken(); + this.field667 = null; + } catch (Exception var18) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var18); + class149.getLoginError(65); + this.field667 = null; return; } } else { - if (this.field660 == null) { - class387.getLoginError(65); + if (this.field659 == null) { + class149.getLoginError(65); return; } - if (!this.field660.method54()) { + if (!this.field659.method68()) { return; } - if (this.field660.method53()) { - Messages.RunException_sendStackTrace(this.field660.method52(), (Throwable)null); - class387.getLoginError(65); - this.field660 = null; + if (this.field659.method67()) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace(this.field659.method66(), (Throwable)null); + class149.getLoginError(65); + this.field659 = null; return; } - var27 = this.field660.method55(); - if (var27.method63() != 200) { - Messages.RunException_sendStackTrace("Response code: " + var27.method63() + "Response body: " + var27.method66(), (Throwable)null); - class387.getLoginError(65); - this.field660 = null; + var24 = this.field659.method69(); + if (var24.method74() != 200) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("Response code: " + var24.method74() + "Response body: " + var24.method76(), (Throwable)null); + class149.getLoginError(65); + this.field659 = null; return; } - List var30 = (List)var27.method65().get("Content-Type"); - if (var30 != null && var30.contains(class460.field3901.method2331())) { + List var27 = (List)var24.method75().get("Content-Type"); + if (var27 != null && var27.contains(class472.field3931.method2348())) { try { - JSONObject var5 = new JSONObject(var27.method66()); + JSONObject var5 = new JSONObject(var24.method76()); this.field665 = var5.getString("token"); - } catch (JSONException var20) { - Messages.RunException_sendStackTrace((String)null, var20); - class387.getLoginError(65); - this.field660 = null; + } catch (JSONException var17) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var17); + class149.getLoginError(65); + this.field659 = null; return; } } else { - this.field665 = var27.method66(); + this.field665 = var24.method76(); } - this.field660 = null; + this.field659 = null; } - field448 = 0; - class316.method1700(1); + field444 = 0; + class19.method73(1); } if (loginState == 1) { - if (VarcInt.socketTask == null) { - VarcInt.socketTask = GameEngine.taskHandler.newSocketTask(class292.worldHost, class4.currentPort); + if (Player.socketTask == null) { + Player.socketTask = GameEngine.taskHandler.newSocketTask(Friend.worldHost, class252.currentPort); } - if (VarcInt.socketTask.status == 2) { + if (Player.socketTask.status == 2) { throw new IOException(); } - if (VarcInt.socketTask.status == 1) { - Socket var31 = (Socket)VarcInt.socketTask.result; - BufferedNetSocket var29 = new BufferedNetSocket(var31, 40000, 5000); - var1 = var29; - packetWriter.setSocket(var29); - VarcInt.socketTask = null; - class316.method1700(2); + if (Player.socketTask.status == 1) { + var1 = WorldMapData_0.method1178((Socket)Player.socketTask.result, 40000, 5000); + packetWriter.setSocket(var1); + Player.socketTask = null; + class19.method73(2); } } - PacketBufferNode var33; + PacketBufferNode var26; if (loginState == 2) { packetWriter.clearBuffer(); - var33 = class146.method779(); - var33.clientPacket = null; - var33.clientPacketLength = 0; - var33.packetBuffer = new PacketBuffer(5000); - var33.packetBuffer.writeByte(LoginPacket.field2746.id); - packetWriter.addNode(var33); + var26 = HorizontalAlignment.method931(); + var26.packetBuffer.writeByte(LoginPacket.field2764.id); + packetWriter.addNode(var26); packetWriter.flush(); var2.offset = 0; - class316.method1700(3); + class19.method73(3); } - int var13; + int var12; if (loginState == 3) { - if (AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.method200(); + if (MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.method213(); } - if (((AbstractSocket)var1).isAvailable(1)) { - var13 = ((AbstractSocket)var1).readUnsignedByte(); - if (AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.method200(); + if (var1.isAvailable(1)) { + var12 = var1.readUnsignedByte(); + if (MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.method213(); } - if (var13 != 0) { - class387.getLoginError(var13); + if (var12 != 0) { + class149.getLoginError(var12); return; } var2.offset = 0; - class316.method1700(4); + class19.method73(4); } } if (loginState == 4) { if (var2.offset < 8) { - var13 = ((AbstractSocket)var1).available(); - if (var13 > 8 - var2.offset) { - var13 = 8 - var2.offset; + var12 = var1.available(); + if (var12 > 8 - var2.offset) { + var12 = 8 - var2.offset; } - if (var13 > 0) { - ((AbstractSocket)var1).read(var2.array, var2.offset, var13); - var2.offset += var13; + if (var12 > 0) { + var1.read(var2.array, var2.offset, var12); + var2.offset += var12; } } if (var2.offset == 8) { var2.offset = 0; - class125.field1195 = var2.readLong(); - class316.method1700(5); + Clock.field1876 = var2.readLong(); + class19.method73(5); } } + int var6; if (loginState == 5) { packetWriter.packetBuffer.offset = 0; packetWriter.clearBuffer(); - PacketBuffer var32 = new PacketBuffer(500); - int[] var35 = new int[]{GraphicsObject.secureRandom.nextInt(), GraphicsObject.secureRandom.nextInt(), GraphicsObject.secureRandom.nextInt(), GraphicsObject.secureRandom.nextInt()}; - var32.offset = 0; - var32.writeByte(1); - var32.writeInt(var35[0]); - var32.writeInt(var35[1]); - var32.writeInt(var35[2]); - var32.writeInt(var35[3]); - var32.writeLong(class125.field1195); + PacketBuffer var28 = new PacketBuffer(500); + int[] var29 = new int[]{EnumComposition.secureRandom.nextInt(), EnumComposition.secureRandom.nextInt(), EnumComposition.secureRandom.nextInt(), EnumComposition.secureRandom.nextInt()}; + var28.offset = 0; + var28.writeByte(1); + var28.writeInt(var29[0]); + var28.writeInt(var29[1]); + var28.writeInt(var29[2]); + var28.writeInt(var29[3]); + var28.writeLong(Clock.field1876); if (gameState == 40) { - var32.writeInt(NewShit.field1577[0]); - var32.writeInt(NewShit.field1577[1]); - var32.writeInt(NewShit.field1577[2]); - var32.writeInt(NewShit.field1577[3]); + var28.writeInt(class215.field1854[0]); + var28.writeInt(class215.field1854[1]); + var28.writeInt(class215.field1854[2]); + var28.writeInt(class215.field1854[3]); } else { if (gameState == 50) { - var32.writeByte(class139.field1318.rsOrdinal()); - var32.writeInt(class72.field730); + var28.writeByte(class124.field1204.rsOrdinal()); + var28.writeInt(class160.field1406); } else { - var32.writeByte(field421.rsOrdinal()); - switch(field421.field1327) { + var28.writeByte(field419.rsOrdinal()); + switch(field419.field1210) { case 0: - var32.writeInt(class449.clientPreferences.method569(Login.Login_username)); case 1: - default: + var28.writeMedium(class53.field256); + ++var28.offset; break; case 2: - case 4: - var32.writeMedium(class503.field4107); - ++var32.offset; + var28.offset += 4; break; case 3: - var32.offset += 4; + var28.writeInt(WorldMapIcon_1.clientPreferences.method566(Login.Login_username)); } } - if (field648.method2616()) { - var32.writeByte(class519.field4204.rsOrdinal()); - var32.writeStringCp1252NullTerminated(this.field665); + if (field648.method2633()) { + var28.writeByte(class531.field4233.rsOrdinal()); + var28.writeStringCp1252NullTerminated(this.field665); } else { - var32.writeByte(class519.field4205.rsOrdinal()); - var32.writeStringCp1252NullTerminated(Login.Login_password); + var28.writeByte(class531.field4234.rsOrdinal()); + var28.writeStringCp1252NullTerminated(Login.Login_password); } } - var32.encryptRsa(class74.field742, class74.field741); - NewShit.field1577 = var35; - PacketBufferNode var6 = class146.method779(); - var6.clientPacket = null; - var6.clientPacketLength = 0; - var6.packetBuffer = new PacketBuffer(5000); - var6.packetBuffer.offset = 0; + var28.encryptRsa(class74.field742, class74.field741); + class215.field1854 = var29; + PacketBufferNode var32 = HorizontalAlignment.method931(); + var32.packetBuffer.offset = 0; if (gameState == 40) { - var6.packetBuffer.writeByte(LoginPacket.RECONNECT_LOGIN_CONNECTION.id); + var32.packetBuffer.writeByte(LoginPacket.RECONNECT_LOGIN_CONNECTION.id); } else { - var6.packetBuffer.writeByte(LoginPacket.NEW_LOGIN_CONNECTION.id); - } - - var6.packetBuffer.writeShort(0); - int var7 = var6.packetBuffer.offset; - var6.packetBuffer.writeInt(216); - var6.packetBuffer.writeInt(1); - var6.packetBuffer.writeByte(clientType); - var6.packetBuffer.writeByte(field424); - byte var8 = 0; - var6.packetBuffer.writeByte(var8); - var6.packetBuffer.writeBytes(var32.array, 0, var32.offset); - int var9 = var6.packetBuffer.offset; - var6.packetBuffer.writeStringCp1252NullTerminated(Login.Login_username); - var6.packetBuffer.writeByte((isResizable ? 1 : 0) << 1 | (isLowDetail ? 1 : 0)); - var6.packetBuffer.writeShort(class113.canvasWidth); - var6.packetBuffer.writeShort(class177.canvasHeight); - class177.method919(var6.packetBuffer); - var6.packetBuffer.writeStringCp1252NullTerminated(MusicPatchPcmStream.param9); - var6.packetBuffer.writeInt(WorldMapSectionType.field2416); + var32.packetBuffer.writeByte(LoginPacket.NEW_LOGIN_CONNECTION.id); + } + + var32.packetBuffer.writeShort(0); + var6 = var32.packetBuffer.offset; + var32.packetBuffer.writeInt(218); + var32.packetBuffer.writeInt(1); + var32.packetBuffer.writeByte(clientType); + var32.packetBuffer.writeByte(field424); + byte var7 = 0; + var32.packetBuffer.writeByte(var7); + var32.packetBuffer.writeBytes(var28.array, 0, var28.offset); + int var8 = var32.packetBuffer.offset; + var32.packetBuffer.writeStringCp1252NullTerminated(Login.Login_username); + var32.packetBuffer.writeByte((isResizable ? 1 : 0) << 1 | (isLowDetail ? 1 : 0)); + var32.packetBuffer.writeShort(Language.canvasWidth); + var32.packetBuffer.writeShort(class47.canvasHeight); + class354.method1897(var32.packetBuffer); + var32.packetBuffer.writeStringCp1252NullTerminated(MenuAction.param9); + var32.packetBuffer.writeInt(DevicePcmPlayerProvider.field66); if (param25 > 213) { - var6.packetBuffer.writeByte(0); - } - - Buffer var10 = new Buffer(class18.field51.size()); - class18.field51.write(var10); - var6.packetBuffer.writeBytes(var10.array, 0, var10.array.length); - var6.packetBuffer.writeByte(clientType); - var6.packetBuffer.writeInt(0); - var6.packetBuffer.writeIntLE(class499.archive9.hash); - var6.packetBuffer.writeIntLE(Tiles.field838.hash); - var6.packetBuffer.writeIntLE(class106.field1107.hash); - var6.packetBuffer.writeIntLE(class147.field1348.hash); - var6.packetBuffer.writeIntLE(class388.field3655.hash); - var6.packetBuffer.writeIntIME(ObjectSound.archive4.hash); - var6.packetBuffer.writeInt(class227.field2040.hash); - var6.packetBuffer.writeIntIME_(class28.field81.hash); - var6.packetBuffer.writeInt(AttackOption.field1096.hash); - var6.packetBuffer.writeIntLE(class10.field28.hash); - var6.packetBuffer.writeIntLE(0); - var6.packetBuffer.writeIntIME(ClanChannelMember.field1339.hash); - var6.packetBuffer.writeIntLE(Player.archive13.hash); - var6.packetBuffer.writeIntIME_(class141.archive10.hash); - var6.packetBuffer.writeIntLE(class1.archive2.hash); - var6.packetBuffer.writeIntIME(class318.archive7.hash); - var6.packetBuffer.writeIntIME_(class385.archive6.hash); - var6.packetBuffer.writeInt(WorldMapElement.field1509.hash); - var6.packetBuffer.writeIntIME_(Message.archive11.hash); - var6.packetBuffer.writeIntIME(PcmPlayer.archive8.hash); - var6.packetBuffer.writeInt(GrandExchangeOffer.archive12.hash); - var6.packetBuffer.xteaEncrypt(var35, var9, var6.packetBuffer.offset); - var6.packetBuffer.writeLengthShort(var6.packetBuffer.offset - var7); - packetWriter.addNode(var6); + var32.packetBuffer.writeByte(0); + } + + Buffer var9 = new Buffer(class60.field312.size()); + class60.field312.write(var9); + var32.packetBuffer.writeBytes(var9.array, 0, var9.array.length); + var32.packetBuffer.writeByte(clientType); + var32.packetBuffer.writeInt(0); + var32.packetBuffer.writeIntLE(PcmPlayer.field181.hash); + var32.packetBuffer.writeIntIME(SoundSystem.field209.hash); + var32.packetBuffer.writeIntME(class145.field1338.hash); + var32.packetBuffer.writeIntIME(class7.field12.hash); + var32.packetBuffer.writeIntME(class514.archive6.hash); + var32.packetBuffer.writeIntME(StructComposition.field1637.hash); + var32.packetBuffer.writeIntIME(class313.archive4.hash); + var32.packetBuffer.writeIntLE(UserComparator7.field1190.hash); + var32.packetBuffer.writeIntME(WorldMapDecorationType.archive10.hash); + var32.packetBuffer.writeIntLE(SpotAnimationDefinition.field1597.hash); + var32.packetBuffer.writeIntIME(Canvas.field68.hash); + var32.packetBuffer.writeIntLE(VarbitComposition.archive13.hash); + var32.packetBuffer.writeInt(WorldMapData_0.field1938.hash); + var32.packetBuffer.writeIntIME(0); + var32.packetBuffer.writeIntME(class47.archive12.hash); + var32.packetBuffer.writeIntME(GrandExchangeOfferOwnWorldComparator.archive8.hash); + var32.packetBuffer.writeIntME(Language.field3643.hash); + var32.packetBuffer.writeInt(WorldMapSection0.archive9.hash); + var32.packetBuffer.writeIntME(class19.field59.hash); + var32.packetBuffer.writeIntLE(class344.archive2.hash); + var32.packetBuffer.writeIntLE(BuddyRankComparator.field1200.hash); + var32.packetBuffer.xteaEncrypt(var29, var8, var32.packetBuffer.offset); + var32.packetBuffer.writeLengthShort(var32.packetBuffer.offset - var6); + packetWriter.addNode(var32); packetWriter.flush(); - packetWriter.isaacCipher = new IsaacCipher(var35); - int[] var11 = new int[4]; + packetWriter.isaacCipher = new IsaacCipher(var29); + int[] var10 = new int[4]; - for (int var12 = 0; var12 < 4; ++var12) { - var11[var12] = var35[var12] + 50; + for (int var11 = 0; var11 < 4; ++var11) { + var10[var11] = var29[var11] + 50; } - var2.newIsaacCipher(var11); - class316.method1700(6); + var2.newIsaacCipher(var10); + class19.method73(6); } - int var14; - if (loginState == 6 && ((AbstractSocket)var1).available() > 0) { - var13 = ((AbstractSocket)var1).readUnsignedByte(); - if (var13 == 61) { - var14 = ((AbstractSocket)var1).available(); - ModeWhere.field3613 = var14 == 1 && ((AbstractSocket)var1).readUnsignedByte() == 1; - class316.method1700(5); - } - - if (var13 == 21 && gameState == 20) { - class316.method1700(12); - } else if (var13 == 2) { - class316.method1700(14); - } else if (var13 == 15 && gameState == 40) { + int var13; + if (loginState == 6 && var1.available() > 0) { + var12 = var1.readUnsignedByte(); + if (var12 == 61) { + var13 = var1.available(); + PendingSpawn.field949 = var13 == 1 && var1.readUnsignedByte() == 1; + class19.method73(5); + } + + if (var12 == 21 && gameState == 20) { + class19.method73(12); + } else if (var12 == 2) { + class19.method73(14); + } else if (var12 == 15 && gameState == 40) { packetWriter.serverPacketLength = -1; - class316.method1700(19); - } else if (var13 == 64) { - class316.method1700(10); - } else if (var13 == 23 && field447 < 1) { + class19.method73(19); + } else if (var12 == 64) { + class19.method73(10); + } else if (var12 == 23 && field447 < 1) { ++field447; - class316.method1700(0); - } else if (var13 == 29) { - class316.method1700(17); + class19.method73(0); + } else if (var12 == 29) { + class19.method73(17); } else { - if (var13 != 69) { - class387.getLoginError(var13); + if (var12 != 69) { + class149.getLoginError(var12); return; } - class316.method1700(7); + class19.method73(7); } } - if (loginState == 7 && ((AbstractSocket)var1).available() >= 2) { - ((AbstractSocket)var1).read(var2.array, 0, 2); + if (loginState == 7 && var1.available() >= 2) { + var1.read(var2.array, 0, 2); var2.offset = 0; - class12.field37 = var2.readUnsignedShort(); - class316.method1700(8); + Language.field3642 = var2.readUnsignedShort(); + class19.method73(8); } - if (loginState == 8 && ((AbstractSocket)var1).available() >= class12.field37) { + if (loginState == 8 && var1.available() >= Language.field3642) { var2.offset = 0; - ((AbstractSocket)var1).read(var2.array, var2.offset, class12.field37); - class6 var34 = class303.method1624()[var2.readUnsignedByte()]; + var1.read(var2.array, var2.offset, Language.field3642); + class6 var30 = class221.method1111()[var2.readUnsignedByte()]; try { - switch(var34.field8) { - case 0: - class0 var38 = new class0(); - this.field657 = new class7(var2, var38); - class316.method1700(9); - break; - default: - throw new IllegalArgumentException(); - } - } catch (Exception var19) { - class387.getLoginError(22); + class3 var31 = WorldMapElement.method890(var30); + this.field657 = new class7(var2, var31); + class19.method73(9); + } catch (Exception var16) { + class149.getLoginError(22); return; } } - if (loginState == 9 && this.field657.method14()) { - this.field669 = this.field657.method16(); - this.field657.method15(); + if (loginState == 9 && this.field657.method17()) { + this.field669 = this.field657.method19(); + this.field657.method18(); this.field657 = null; if (this.field669 == null) { - class387.getLoginError(22); + class149.getLoginError(22); return; } packetWriter.clearBuffer(); - var33 = class146.method779(); - var33.clientPacket = null; - var33.clientPacketLength = 0; - var33.packetBuffer = new PacketBuffer(5000); - var33.packetBuffer.writeByte(LoginPacket.field2743.id); - var33.packetBuffer.writeShort(this.field669.offset); - var33.packetBuffer.method2537(this.field669); - packetWriter.addNode(var33); + var26 = HorizontalAlignment.method931(); + var26.packetBuffer.writeByte(LoginPacket.field2761.id); + var26.packetBuffer.writeShort(this.field669.offset); + var26.packetBuffer.writeBuffer(this.field669); + packetWriter.addNode(var26); packetWriter.flush(); this.field669 = null; - class316.method1700(6); + class19.method73(6); } - if (loginState == 10 && ((AbstractSocket)var1).available() > 0) { - KeyHandler.field69 = ((AbstractSocket)var1).readUnsignedByte(); - class316.method1700(11); + if (loginState == 10 && var1.available() > 0) { + class223.field1885 = var1.readUnsignedByte(); + class19.method73(11); } - if (loginState == 11 && ((AbstractSocket)var1).available() >= KeyHandler.field69) { - ((AbstractSocket)var1).read(var2.array, 0, KeyHandler.field69); + if (loginState == 11 && var1.available() >= class223.field1885) { + var1.read(var2.array, 0, class223.field1885); var2.offset = 0; - class316.method1700(6); + class19.method73(6); } - if (loginState == 12 && ((AbstractSocket)var1).available() > 0) { - field444 = (((AbstractSocket)var1).readUnsignedByte() + 3) * 60; - class316.method1700(13); + if (loginState == 12 && var1.available() > 0) { + field443 = (var1.readUnsignedByte() + 3) * 60; + class19.method73(13); } if (loginState == 13) { - field448 = 0; - class318.setLoginResponseString("You have only just left another world.", "Your profile will be transferred in:", field444 / 60 + " seconds."); - if (--field444 <= 0) { - class316.method1700(0); + field444 = 0; + class139.setLoginResponseString("You have only just left another world.", "Your profile will be transferred in:", field443 / 60 + " seconds."); + if (--field443 <= 0) { + class19.method73(0); } } else { - if (loginState == 14 && ((AbstractSocket)var1).available() >= 1) { - class398.playerUUIDLength = ((AbstractSocket)var1).readUnsignedByte(); - class316.method1700(15); + if (loginState == 14 && var1.available() >= 1) { + SoundCache.playerUUIDLength = var1.readUnsignedByte(); + class19.method73(15); } - if (loginState == 15 && ((AbstractSocket)var1).available() >= class398.playerUUIDLength) { - boolean var44 = ((AbstractSocket)var1).readUnsignedByte() == 1; - ((AbstractSocket)var1).read(var2.array, 0, 4); + if (loginState == 15 && var1.available() >= SoundCache.playerUUIDLength) { + boolean var38 = var1.readUnsignedByte() == 1; + var1.read(var2.array, 0, 4); var2.offset = 0; - boolean var43 = false; - if (var44) { - var14 = var2.readByteIsaac() << 24; - var14 |= var2.readByteIsaac() << 16; - var14 |= var2.readByteIsaac() << 8; - var14 |= var2.readByteIsaac(); - class449.clientPreferences.method567(Login.Login_username, var14); + boolean var37 = false; + if (var38) { + var13 = var2.readByteIsaac() << 24; + var13 |= var2.readByteIsaac() << 16; + var13 |= var2.readByteIsaac() << 8; + var13 |= var2.readByteIsaac(); + WorldMapIcon_1.clientPreferences.method564(Login.Login_username, var13); } if (Login_isUsernameRemembered) { - class449.clientPreferences.setUsernameToRemember(Login.Login_username); + WorldMapIcon_1.clientPreferences.setUsernameToRemember(Login.Login_username); } else { - class449.clientPreferences.setUsernameToRemember((String)null); + WorldMapIcon_1.clientPreferences.setUsernameToRemember((String)null); } - class338.savePreferences(); - staffModLevel = ((AbstractSocket)var1).readUnsignedByte(); - playerMod = ((AbstractSocket)var1).readUnsignedByte() == 1; - localPlayerIndex = ((AbstractSocket)var1).readUnsignedByte(); + TextureProvider.savePreferences(); + staffModLevel = var1.readUnsignedByte(); + playerMod = var1.readUnsignedByte() == 1; + localPlayerIndex = var1.readUnsignedByte(); localPlayerIndex <<= 8; - localPlayerIndex += ((AbstractSocket)var1).readUnsignedByte(); - isMembers = ((AbstractSocket)var1).readUnsignedByte(); - ((AbstractSocket)var1).read(var2.array, 0, 8); + localPlayerIndex += var1.readUnsignedByte(); + isMembers = var1.readUnsignedByte(); + var1.read(var2.array, 0, 8); var2.offset = 0; this.field668 = var2.readLong(); - ((AbstractSocket)var1).read(var2.array, 0, 8); + var1.read(var2.array, 0, 8); var2.offset = 0; playerUUID = var2.readLong(); if (param25 >= 214) { - ((AbstractSocket)var1).read(var2.array, 0, 8); + var1.read(var2.array, 0, 8); var2.offset = 0; var2.readLong(); } - ((AbstractSocket)var1).read(var2.array, 0, 1); + var1.read(var2.array, 0, 1); var2.offset = 0; - ServerPacket[] var36 = class176.method916(); - int var15 = var2.readSmartByteShortIsaac(); - if (var15 < 0 || var15 >= var36.length) { - throw new IOException(var15 + " " + var2.offset); + ServerPacket[] var35 = class12.method46(); + var6 = var2.readSmartByteShortIsaac(); + if (var6 < 0 || var6 >= var35.length) { + throw new IOException(var6 + " " + var2.offset); } - packetWriter.serverPacket = var36[var15]; + packetWriter.serverPacket = var35[var6]; packetWriter.serverPacketLength = packetWriter.serverPacket.length; - ((AbstractSocket)var1).read(var2.array, 0, 2); + var1.read(var2.array, 0, 2); var2.offset = 0; packetWriter.serverPacketLength = var2.readUnsignedShort(); try { - Client var16 = class219.client; - JSObject.getWindow(var16).call("zap", (Object[])null); - } catch (Throwable var18) { + class26.method108(SpriteMask.client, "zap"); + } catch (Throwable var15) { } - class316.method1700(16); + class19.method73(16); } - if (loginState != 16) { - if (loginState == 17 && ((AbstractSocket)var1).available() >= 2) { + if (loginState == 16) { + if (var1.available() >= packetWriter.serverPacketLength) { + var2.offset = 0; + var1.read(var2.array, 0, packetWriter.serverPacketLength); + timer.method2173(); + class53.method307(); + Players.updatePlayer(var2); + DefaultsGroup.timeOfPreviousKeyPress = -1; + GrandExchangeOfferUnitPriceComparator.loadRegions(false, var2, param25 >= 218); + packetWriter.serverPacket = null; + } + + } else { + if (loginState == 17 && var1.available() >= 2) { var2.offset = 0; - ((AbstractSocket)var1).read(var2.array, 0, 2); + var1.read(var2.array, 0, 2); var2.offset = 0; - class342.field3146 = var2.readUnsignedShort(); - class316.method1700(18); + GrandExchangeOfferOwnWorldComparator.field360 = var2.readUnsignedShort(); + class19.method73(18); } - if (loginState == 18 && ((AbstractSocket)var1).available() >= class342.field3146) { + if (loginState == 18 && var1.available() >= GrandExchangeOfferOwnWorldComparator.field360) { var2.offset = 0; - ((AbstractSocket)var1).read(var2.array, 0, class342.field3146); + var1.read(var2.array, 0, GrandExchangeOfferOwnWorldComparator.field360); var2.offset = 0; - String var40 = var2.readStringCp1252NullTerminated(); - String var42 = var2.readStringCp1252NullTerminated(); - String var39 = var2.readStringCp1252NullTerminated(); - class318.setLoginResponseString(var40, var42, var39); - MusicSong.updateGameState(10); - if (field648.method2616()) { - PcmPlayer.method212(9); + String var34 = var2.readStringCp1252NullTerminated(); + String var33 = var2.readStringCp1252NullTerminated(); + String var36 = var2.readStringCp1252NullTerminated(); + class139.setLoginResponseString(var34, var33, var36); + WorldMapSection2.updateGameState(10); + if (field648.method2633()) { + UserComparator7.method674(9); } } if (loginState == 19) { if (packetWriter.serverPacketLength == -1) { - if (((AbstractSocket)var1).available() < 2) { + if (var1.available() < 2) { return; } - ((AbstractSocket)var1).read(var2.array, 0, 2); + var1.read(var2.array, 0, 2); var2.offset = 0; packetWriter.serverPacketLength = var2.readUnsignedShort(); } - if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { - ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); + if (var1.available() >= packetWriter.serverPacketLength) { + var1.read(var2.array, 0, packetWriter.serverPacketLength); var2.offset = 0; - var13 = packetWriter.serverPacketLength; - timer.method2155(); - class105.method615(); - Actor.updatePlayer(var2); - if (var13 != var2.offset) { + var12 = packetWriter.serverPacketLength; + timer.method2175(); + class17.method61(); + Players.updatePlayer(var2); + if (var12 != var2.offset) { throw new RuntimeException(); } } } else { - ++field448; - if (field448 > 2000) { + ++field444; + if (field444 > 2000) { if (field447 < 1) { - if (class480.worldPort == class4.currentPort) { - class4.currentPort = class129.js5Port; + if (WorldMapCacheName.worldPort == class252.currentPort) { + class252.currentPort = AbstractSocket.js5Port; } else { - class4.currentPort = class480.worldPort; + class252.currentPort = WorldMapCacheName.worldPort; } ++field447; - class316.method1700(0); + class19.method73(0); } else { - class387.getLoginError(-3); - } - } - } - } else { - if (((AbstractSocket)var1).available() >= packetWriter.serverPacketLength) { - var2.offset = 0; - ((AbstractSocket)var1).read(var2.array, 0, packetWriter.serverPacketLength); - timer.method2153(); - mouseLastLastPressedTimeMillis = -1L; - class126.mouseRecorder.index = 0; - class370.hasFocus = true; - hadFocus = true; - timeOfPreviousKeyPress = -1L; - GrandExchangeOfferTotalQuantityComparator.method1943(); - packetWriter.clearBuffer(); - packetWriter.packetBuffer.offset = 0; - packetWriter.serverPacket = null; - packetWriter.field1159 = null; - packetWriter.field1157 = null; - packetWriter.field1158 = null; - packetWriter.serverPacketLength = 0; - packetWriter.field1154 = 0; - rebootTimer = 0; - logoutTimer = 0; - hintArrowType = 0; - Frames.method1297(); - class20.method64(0); - ChatChannel.method451(); - isItemSelected = 0; - isSpellSelected = false; - soundEffectCount = 0; - camAngleY = 0; - oculusOrbState = 0; - class390.field3656 = null; - minimapState = 0; - field538 = -1; - destinationX = 0; - destinationY = 0; - playerAttackOption = AttackOption.AttackOption_hidden; - npcAttackOption = AttackOption.AttackOption_hidden; - npcCount = 0; - Players.Players_count = 0; - - for (var13 = 0; var13 < 2048; ++var13) { - Players.cachedAppearanceBuffer[var13] = null; - Players.playerMovementSpeeds[var13] = MoveSpeed.WALK; - } - - for (var13 = 0; var13 < 2048; ++var13) { - players[var13] = null; - } - - for (var13 = 0; var13 < 65536; ++var13) { - npcs[var13] = null; - } - - combatTargetPlayerIndex = -1; - projectiles.clear(); - graphicsObjects.clear(); - - for (var13 = 0; var13 < 4; ++var13) { - for (var14 = 0; var14 < 104; ++var14) { - for (int var17 = 0; var17 < 104; ++var17) { - groundItems[var13][var14][var17] = null; - } + class149.getLoginError(-3); } } - - pendingSpawns = new NodeDeque(); - class299.friendSystem.clear(); - - for (var13 = 0; var13 < VarpDefinition.field1498; ++var13) { - VarpDefinition var41 = ApproximateRouteStrategy.VarpDefinition_get(var13); - if (var41 != null) { - Varps.Varps_temp[var13] = 0; - Varps.Varps_main[var13] = 0; - } - } - - KeyHandler.varcs.clearTransient(); - followerIndex = -1; - if (rootInterface != -1) { - Skeleton.method1232(rootInterface); - } - - for (InterfaceParent var37 = (InterfaceParent)interfaceParents.first(); var37 != null; var37 = (InterfaceParent)interfaceParents.next()) { - class92.closeInterface(var37, true); - } - - rootInterface = -1; - interfaceParents = new NodeHashTable(8); - meslayerContinueWidget = null; - Frames.method1297(); - playerAppearance.method1718((int[])null, (int[])null, new int[]{0, 0, 0, 0, 0}, 0, -1); - - for (var13 = 0; var13 < 8; ++var13) { - playerMenuActions[var13] = null; - playerOptionsPriorities[var13] = false; - } - - LoginPacket.method1614(); - isLoading = true; - - for (var13 = 0; var13 < 100; ++var13) { - field407[var13] = true; - } - - Message.method341(); - ReflectionCheck.friendsChat = null; - Players.guestClanSettings = null; - Arrays.fill(currentClanSettings, (Object)null); - VerticalAlignment.guestClanChannel = null; - Arrays.fill(currentClanChannels, (Object)null); - - for (var13 = 0; var13 < 8; ++var13) { - grandExchangeOffers[var13] = new GrandExchangeOffer(); - } - - class392.grandExchangeEvents = null; - reloadJS5 = false; - Actor.updatePlayer(var2); - Tiles.timeOfPreviousKeyPress = -1; - class271.loadRegions(false, var2); - packetWriter.serverPacket = null; } - } } - } catch (IOException var26) { + } catch (IOException var23) { if (field447 < 1) { - if (class480.worldPort == class4.currentPort) { - class4.currentPort = class129.js5Port; + if (WorldMapCacheName.worldPort == class252.currentPort) { + class252.currentPort = AbstractSocket.js5Port; } else { - class4.currentPort = class480.worldPort; + class252.currentPort = WorldMapCacheName.worldPort; } ++field447; - class316.method1700(0); + class19.method73(0); } else { - class387.getLoginError(-2); + class149.getLoginError(-2); } } } - @ObfuscatedName("hv") + @ObfuscatedName("hm") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1704146678" + garbageValue = "-614967617" ) @Export("doCycleLoggedIn") final void doCycleLoggedIn() { @@ -2617,290 +2491,431 @@ final void doCycleLoggedIn() { if (hadNetworkError) { hadNetworkError = false; - Renderable.method1291(); + class9.method29(); } else { if (!isMenuOpen) { - class349.addCancelMenuEntry(); + UserComparator10.addCancelMenuEntry(); } int var1; - for (var1 = 0; var1 < 100 && this.method374(packetWriter); ++var1) { + for (var1 = 0; var1 < 100 && this.method385(packetWriter); ++var1) { } if (gameState == 30) { - while (true) { - ReflectionCheck var2 = (ReflectionCheck)class36.reflectionChecks.last(); - boolean var29; - if (var2 == null) { - var29 = false; - } else { - var29 = true; - } - - int var3; - PacketBufferNode var30; - if (!var29) { - PacketBufferNode var14; - int var15; - if (timer.field3756) { - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.LOGIN_STATISTICS, packetWriter.isaacCipher); - var14.packetBuffer.writeByte(0); - var15 = var14.packetBuffer.offset; - timer.write(var14.packetBuffer); - var14.packetBuffer.method2540(var14.packetBuffer.offset - var15); - packetWriter.addNode(var14); - timer.method2154(); - } - - int var4; - int var5; - synchronized(class126.mouseRecorder.lock) { - if (!lockMouseRecorder) { - class126.mouseRecorder.index = 0; - } else if (MouseHandler.MouseHandler_lastButton != 0 || class126.mouseRecorder.index >= 40) { - var30 = null; - var3 = 0; - var4 = 0; - var5 = 0; - int var6 = 0; - - int var7; - for (var7 = 0; var7 < class126.mouseRecorder.index && (var30 == null || var30.packetBuffer.offset - var3 < 246); ++var7) { - var4 = var7; - int var8 = class126.mouseRecorder.ys[var7]; - if (var8 < -1) { - var8 = -1; - } else if (var8 > 65534) { - var8 = 65534; - } - - int var9 = class126.mouseRecorder.xs[var7]; - if (var9 < -1) { - var9 = -1; - } else if (var9 > 65534) { - var9 = 65534; - } + int var2; + PacketBufferNode var14; + while (class216.method1096()) { + var14 = class113.getPacketBufferNode(ClientPacket.REFLECTION_CHECK_REPLY, packetWriter.isaacCipher); + var14.packetBuffer.writeByte(0); + var2 = var14.packetBuffer.offset; + class415.performReflectionCheck(var14.packetBuffer); + var14.packetBuffer.writeLengthByte(var14.packetBuffer.offset - var2); + packetWriter.addNode(var14); + } + + if (timer.field3792) { + var14 = class113.getPacketBufferNode(ClientPacket.LOGIN_TIMINGS, packetWriter.isaacCipher); + var14.packetBuffer.writeByte(0); + var2 = var14.packetBuffer.offset; + timer.write(var14.packetBuffer); + var14.packetBuffer.writeLengthByte(var14.packetBuffer.offset - var2); + packetWriter.addNode(var14); + timer.method2174(); + } + + int var3; + int var4; + int var5; + int var6; + int var7; + int var8; + int var9; + int var10; + int var11; + int var12; + PacketBuffer var10000; + synchronized(Message.mouseRecorder.lock) { + if (!lockMouseRecorder) { + Message.mouseRecorder.index = 0; + } else if (MouseHandler.MouseHandler_lastButton != 0 || Message.mouseRecorder.index >= 40) { + PacketBufferNode var15 = null; + var3 = 0; + var4 = 0; + var5 = 0; + var6 = 0; + + for (var7 = 0; var7 < Message.mouseRecorder.index && (var15 == null || var15.packetBuffer.offset - var3 < 246); ++var7) { + var4 = var7; + var8 = Message.mouseRecorder.ys[var7]; + if (var8 < -1) { + var8 = -1; + } else if (var8 > 65534) { + var8 = 65534; + } - if (var9 != lastMouseRecordX || var8 != lastMouseRecordY) { - if (var30 == null) { - var30 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.notsure, packetWriter.isaacCipher); - var30.packetBuffer.writeByte(0); - var3 = var30.packetBuffer.offset; - PacketBuffer var10000 = var30.packetBuffer; - var10000.offset += 2; - var5 = 0; - var6 = 0; - } - - int var10; - int var11; - int var12; - if (field612 != -1L) { - var10 = var9 - lastMouseRecordX; - var11 = var8 - lastMouseRecordY; - var12 = (int)((class126.mouseRecorder.millis[var7] - field612) / 20L); - var5 = (int)((long)var5 + (class126.mouseRecorder.millis[var7] - field612) % 20L); - } else { - var10 = var9; - var11 = var8; - var12 = Integer.MAX_VALUE; - } - - lastMouseRecordX = var9; - lastMouseRecordY = var8; - if (var12 < 8 && var10 >= -32 && var10 <= 31 && var11 >= -32 && var11 <= 31) { - var10 += 32; - var11 += 32; - var30.packetBuffer.writeShort((var12 << 12) + var11 + (var10 << 6)); - } else if (var12 < 32 && var10 >= -128 && var10 <= 127 && var11 >= -128 && var11 <= 127) { - var10 += 128; - var11 += 128; - var30.packetBuffer.writeByte(var12 + 128); - var30.packetBuffer.writeShort(var11 + (var10 << 8)); - } else if (var12 < 32) { - var30.packetBuffer.writeByte(var12 + 192); - if (var9 != -1 && var8 != -1) { - var30.packetBuffer.writeInt(var9 | var8 << 16); - } else { - var30.packetBuffer.writeInt(Integer.MIN_VALUE); - } - } else { - var30.packetBuffer.writeShort((var12 & 8191) + 57344); - if (var9 != -1 && var8 != -1) { - var30.packetBuffer.writeInt(var9 | var8 << 16); - } else { - var30.packetBuffer.writeInt(Integer.MIN_VALUE); - } - } + var9 = Message.mouseRecorder.xs[var7]; + if (var9 < -1) { + var9 = -1; + } else if (var9 > 65534) { + var9 = 65534; + } - ++var6; - field612 = class126.mouseRecorder.millis[var7]; - } + if (var9 != lastMouseRecordX || var8 != lastMouseRecordY) { + if (var15 == null) { + var15 = class113.getPacketBufferNode(ClientPacket.f52, packetWriter.isaacCipher); + var15.packetBuffer.writeByte(0); + var3 = var15.packetBuffer.offset; + var10000 = var15.packetBuffer; + var10000.offset += 2; + var5 = 0; + var6 = 0; } - if (var30 != null) { - var30.packetBuffer.method2540(var30.packetBuffer.offset - var3); - var7 = var30.packetBuffer.offset; - var30.packetBuffer.offset = var3; - var30.packetBuffer.writeByte(var5 / var6); - var30.packetBuffer.writeByte(var5 % var6); - var30.packetBuffer.offset = var7; - packetWriter.addNode(var30); + if (-1L != field610) { + var10 = var9 - lastMouseRecordX; + var11 = var8 - lastMouseRecordY; + var12 = (int)((Message.mouseRecorder.millis[var7] - field610) / 20L); + var5 = (int)((long)var5 + (Message.mouseRecorder.millis[var7] - field610) % 20L); + } else { + var10 = var9; + var11 = var8; + var12 = Integer.MAX_VALUE; } - if (var4 >= class126.mouseRecorder.index) { - class126.mouseRecorder.index = 0; + lastMouseRecordX = var9; + lastMouseRecordY = var8; + if (var12 < 8 && var10 >= -32 && var10 <= 31 && var11 >= -32 && var11 <= 31) { + var10 += 32; + var11 += 32; + var15.packetBuffer.writeShort((var12 << 12) + var11 + (var10 << 6)); + } else if (var12 < 32 && var10 >= -128 && var10 <= 127 && var11 >= -128 && var11 <= 127) { + var10 += 128; + var11 += 128; + var15.packetBuffer.writeByte(var12 + 128); + var15.packetBuffer.writeShort(var11 + (var10 << 8)); + } else if (var12 < 32) { + var15.packetBuffer.writeByte(var12 + 192); + if (var9 != -1 && var8 != -1) { + var15.packetBuffer.writeInt(var9 | var8 << 16); + } else { + var15.packetBuffer.writeInt(Integer.MIN_VALUE); + } } else { - MouseRecorder var43 = class126.mouseRecorder; - var43.index -= var4; - System.arraycopy(class126.mouseRecorder.xs, var4, class126.mouseRecorder.xs, 0, class126.mouseRecorder.index); - System.arraycopy(class126.mouseRecorder.ys, var4, class126.mouseRecorder.ys, 0, class126.mouseRecorder.index); - System.arraycopy(class126.mouseRecorder.millis, var4, class126.mouseRecorder.millis, 0, class126.mouseRecorder.index); + var15.packetBuffer.writeShort((var12 & 8191) + 57344); + if (var9 != -1 && var8 != -1) { + var15.packetBuffer.writeInt(var9 | var8 << 16); + } else { + var15.packetBuffer.writeInt(Integer.MIN_VALUE); + } } + + ++var6; + field610 = Message.mouseRecorder.millis[var7]; } } - PacketBufferNode var18; - if (MouseHandler.MouseHandler_lastButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_lastButton == 4 || MouseHandler.MouseHandler_lastButton == 2) { - long var16 = MouseHandler.MouseHandler_lastPressedTimeMillis - mouseLastLastPressedTimeMillis; - if (var16 > 32767L) { - var16 = 32767L; - } + if (var15 != null) { + var15.packetBuffer.writeLengthByte(var15.packetBuffer.offset - var3); + var7 = var15.packetBuffer.offset; + var15.packetBuffer.offset = var3; + var15.packetBuffer.writeByte(var5 / var6); + var15.packetBuffer.writeByte(var5 % var6); + var15.packetBuffer.offset = var7; + packetWriter.addNode(var15); + } - mouseLastLastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillis; - var3 = MouseHandler.MouseHandler_lastPressedY; - if (var3 < 0) { - var3 = 0; - } else if (var3 > class177.canvasHeight) { - var3 = class177.canvasHeight; - } + if (var4 >= Message.mouseRecorder.index) { + Message.mouseRecorder.index = 0; + } else { + MouseRecorder var52 = Message.mouseRecorder; + var52.index -= var4; + System.arraycopy(Message.mouseRecorder.xs, var4, Message.mouseRecorder.xs, 0, Message.mouseRecorder.index); + System.arraycopy(Message.mouseRecorder.ys, var4, Message.mouseRecorder.ys, 0, Message.mouseRecorder.index); + System.arraycopy(Message.mouseRecorder.millis, var4, Message.mouseRecorder.millis, 0, Message.mouseRecorder.index); + } + } + } - var4 = MouseHandler.MouseHandler_lastPressedX; - if (var4 < 0) { - var4 = 0; - } else if (var4 > class113.canvasWidth) { - var4 = class113.canvasWidth; - } + if (MouseHandler.MouseHandler_lastButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_lastButton == 4 || MouseHandler.MouseHandler_lastButton == 2) { + long var16 = MouseHandler.MouseHandler_lastPressedTimeMillis - mouseLastLastPressedTimeMillis; + if (var16 > 32767L) { + var16 = 32767L; + } - var5 = (int)var16; - if (shouldProcessClick()) { - var18 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_MOUSE_CLICK, packetWriter.isaacCipher); - var18.packetBuffer.writeShort((MouseHandler.MouseHandler_lastButton == 2 ? 1 : 0) + (var5 << 1)); - var18.packetBuffer.writeShort(var4); - var18.packetBuffer.writeShort(var3); - packetWriter.addNode(var18); - } + mouseLastLastPressedTimeMillis = MouseHandler.MouseHandler_lastPressedTimeMillis; + var3 = MouseHandler.MouseHandler_lastPressedY; + if (var3 < 0) { + var3 = 0; + } else if (var3 > class47.canvasHeight) { + var3 = class47.canvasHeight; + } + + var4 = MouseHandler.MouseHandler_lastPressedX; + if (var4 < 0) { + var4 = 0; + } else if (var4 > Language.canvasWidth) { + var4 = Language.canvasWidth; + } + + var5 = (int)var16; + if(shouldProcessClick()) { + PacketBufferNode var18 = class113.getPacketBufferNode(ClientPacket.EVENT_MOUSE_CLICK, packetWriter.isaacCipher); + var18.packetBuffer.writeShort((var5 << 1) + (MouseHandler.MouseHandler_lastButton == 2 ? 1 : 0)); + var18.packetBuffer.writeShort(var4); + var18.packetBuffer.writeShort(var3); + packetWriter.addNode(var18); + } + } + + if (mouseWheelRotation != 0) { + var14 = class113.getPacketBufferNode(ClientPacket.MIDDLE_MOUSE, packetWriter.isaacCipher); + var14.packetBuffer.writeShort(mouseWheelRotation); + packetWriter.addNode(var14); + } + + if (keyHandlerInstance.pressedKeysCount > 0) { + var14 = class113.getPacketBufferNode(ClientPacket.IDLE, packetWriter.isaacCipher); + var14.packetBuffer.writeShort(0); + var2 = var14.packetBuffer.offset; + long var19 = SpotAnimationDefinition.method962(); + + for (var5 = 0; var5 < keyHandlerInstance.pressedKeysCount; ++var5) { + long var21 = var19 - timeOfPreviousKeyPress; + if (var21 > 16777215L) { + var21 = 16777215L; } - if (mouseWheelRotation != 0) { - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_MOUSE_SCROLl, packetWriter.isaacCipher); - var14.packetBuffer.writeShort(mouseWheelRotation); - packetWriter.addNode(var14); + timeOfPreviousKeyPress = var19; + var14.packetBuffer.method2605((int)var21); + var14.packetBuffer.writeByteNeg(keyHandlerInstance.field1900[var5]); + } + + var14.packetBuffer.writeLengthShort(var14.packetBuffer.offset - var2); + packetWriter.addNode(var14); + } + + if (packetIndicator > 0) { + --packetIndicator; + } + + if (keyHandlerInstance.getKeyPressed(96) || keyHandlerInstance.getKeyPressed(97) || keyHandlerInstance.getKeyPressed(98) || keyHandlerInstance.getKeyPressed(99)) { + emitPackets = true; + } + + if (emitPackets && packetIndicator <= 0) { + packetIndicator = 20; + emitPackets = false; + var14 = class113.getPacketBufferNode(ClientPacket.EVENT_CAMERA_FOCUS, packetWriter.isaacCipher); + var14.packetBuffer.writeShortAdd(camAngleX); + var14.packetBuffer.writeShortAdd(camAngleY); + packetWriter.addNode(var14); + } + + if (class357.hasFocus && !hadFocus) { + hadFocus = true; + var14 = class113.getPacketBufferNode(ClientPacket.EVENT_APPLET_FOCUS, packetWriter.isaacCipher); + var14.packetBuffer.writeByte(1); + packetWriter.addNode(var14); + } + + if (!class357.hasFocus && hadFocus) { + hadFocus = false; + var14 = class113.getPacketBufferNode(ClientPacket.EVENT_APPLET_FOCUS, packetWriter.isaacCipher); + var14.packetBuffer.writeByte(0); + packetWriter.addNode(var14); + } + + if (NewShit.worldMap != null) { + NewShit.worldMap.method2398(); + } + + if (class344.ClanChat_inClanChat) { + if (class20.friendsChat != null) { + class20.friendsChat.sort(); + } + + for (var1 = 0; var1 < Players.Players_count; ++var1) { + Player var35 = players[Players.Players_indices[var1]]; + var35.clearIsInFriendsChat(); + } + + class344.ClanChat_inClanChat = false; + } + + class153.method794(); + class435.method2201(); + if (gameState == 30) { + for (PendingSpawn var34 = (PendingSpawn)pendingSpawns.last(); var34 != null; var34 = (PendingSpawn)pendingSpawns.previous()) { + if (var34.endCycle > 0) { + --var34.endCycle; } - if (keyHandlerInstance.pressedKeysCount > 0) { - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_KEYBOARD, packetWriter.isaacCipher); - var14.packetBuffer.writeShort(0); - var15 = var14.packetBuffer.offset; - long var19 = GameEngine.clockNow(); + if (var34.endCycle == 0) { + if (var34.objectId >= 0) { + var3 = var34.objectId; + var4 = var34.field951; + ObjectComposition var23 = WorldMapSection2.getObjectDefinition(var3); + if (var4 == 11) { + var4 = 10; + } - for (var5 = 0; var5 < keyHandlerInstance.pressedKeysCount; ++var5) { - long var21 = var19 - timeOfPreviousKeyPress; - if (var21 > 16777215L) { - var21 = 16777215L; + if (var4 >= 5 && var4 <= 8) { + var4 = 4; } - timeOfPreviousKeyPress = var19; - var14.packetBuffer.writeByteNeg(keyHandlerInstance.field1892[var5]); - var14.packetBuffer.writeMediumLE((int)var21); + boolean var30 = var23.method1003(var4); + if (!var30) { + continue; + } } - var14.packetBuffer.writeLengthShort(var14.packetBuffer.offset - var15); - packetWriter.addNode(var14); - } + WorldMapAreaData.addPendingSpawnToScene(var34.plane, var34.type, var34.x, var34.y, var34.objectId, var34.field961, var34.field951, var34.field957); + var34.remove(); + } else { + if (var34.startCycle > 0) { + --var34.startCycle; + } - if (packetIndicator > 0) { - --packetIndicator; + if (var34.startCycle == 0 && var34.x >= 1 && var34.y >= 1 && var34.x <= 102 && var34.y <= 102 && (var34.id < 0 || class141.method755(var34.id, var34.objectType))) { + WorldMapAreaData.addPendingSpawnToScene(var34.plane, var34.type, var34.x, var34.y, var34.id, var34.rotation, var34.objectType, var34.field957); + var34.startCycle = -1; + if (var34.id == var34.objectId && var34.objectId == -1) { + var34.remove(); + } else if (var34.id == var34.objectId && var34.field961 == var34.rotation && var34.objectType == var34.field951) { + var34.remove(); + } + } } + } - if (keyHandlerInstance.getKeyPressed(96) || keyHandlerInstance.getKeyPressed(97) || keyHandlerInstance.getKeyPressed(98) || keyHandlerInstance.getKeyPressed(99)) { - emitPackets = true; - } + int var10002; + for (var1 = 0; var1 < soundEffectCount; ++var1) { + var10002 = queuedSoundEffectDelays[var1]--; + if (queuedSoundEffectDelays[var1] >= -10) { + SoundEffect var37 = soundEffects[var1]; + if (var37 == null) { + var10000 = null; + var37 = SoundEffect.readSoundEffect(Language.field3643, soundEffectIds[var1], 0); + if (var37 == null) { + continue; + } - if (emitPackets && packetIndicator <= 0) { - packetIndicator = 20; - emitPackets = false; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_CAMERA_POSITION, packetWriter.isaacCipher); - var14.packetBuffer.writeShort(camAngleY); - var14.packetBuffer.writeShortAddLE(camAngleX); - packetWriter.addNode(var14); - } + int[] var53 = queuedSoundEffectDelays; + var53[var1] += var37.calculateDelay(); + soundEffects[var1] = var37; + } - if (class370.hasFocus && !hadFocus) { - hadFocus = true; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_APPLET_FOCUS, packetWriter.isaacCipher); - var14.packetBuffer.writeByte(1); - packetWriter.addNode(var14); - } + if (queuedSoundEffectDelays[var1] < 0) { + if (soundLocations[var1] != 0) { + var4 = (soundLocations[var1] & 255) * 128; + var5 = soundLocations[var1] >> 16 & 255; + var6 = var5 * 128 + 64 - class229.localPlayer.x; + if (var6 < 0) { + var6 = -var6; + } - if (!class370.hasFocus && hadFocus) { - hadFocus = false; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EVENT_APPLET_FOCUS, packetWriter.isaacCipher); - var14.packetBuffer.writeByte(0); - packetWriter.addNode(var14); - } + var7 = soundLocations[var1] >> 8 & 255; + var8 = var7 * 128 + 64 - class229.localPlayer.y; + if (var8 < 0) { + var8 = -var8; + } - if (Canvas.worldMap != null) { - Canvas.worldMap.method2384(); - } + var9 = var8 + var6 - 128; + if (var9 > var4) { + queuedSoundEffectDelays[var1] = -100; + continue; + } - if (SpotAnimationDefinition.ClanChat_inClanChat) { - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.sort(); - } + if (var9 < 0) { + var9 = 0; + } + + var3 = (var4 - var9) * WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() / var4; + } else { + var3 = WorldMapIcon_1.clientPreferences.getCurrentSoundEffectsVolume(); + } + + if (var3 > 0) { + RawSound var24 = var37.toRawSound().resample(class521.decimator); + RawPcmStream var44 = RawPcmStream.createRawPcmStream(var24, 100, var3); + var44.setNumLoops(queuedSoundEffectLoops[var1] - 1); + LoginScreenAnimation.pcmStreamMixer.addSubStream(var44); + } - for (var1 = 0; var1 < Players.Players_count; ++var1) { - Player var31 = players[Players.Players_indices[var1]]; - var31.clearIsInFriendsChat(); + queuedSoundEffectDelays[var1] = -100; + } + } else { + --soundEffectCount; + + for (var2 = var1; var2 < soundEffectCount; ++var2) { + soundEffectIds[var2] = soundEffectIds[var2 + 1]; + soundEffects[var2] = soundEffects[var2 + 1]; + queuedSoundEffectLoops[var2] = queuedSoundEffectLoops[var2 + 1]; + queuedSoundEffectDelays[var2] = queuedSoundEffectDelays[var2 + 1]; + soundLocations[var2] = soundLocations[var2 + 1]; } - SpotAnimationDefinition.ClanChat_inClanChat = false; + --var1; } + } - AddRequestTask.method2124(); - class164.method864(); - if (gameState != 30) { - return; + if (playingJingle && !BuddyRankComparator.method687()) { + if (WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() != 0) { + boolean var31 = !class316.field2787.isEmpty(); + if (var31) { + class72.method433(class514.archive6, WorldMapIcon_1.clientPreferences.getCurrentMusicVolume()); + } } - Ignored.method2249(); - Canvas.method77(); - ++packetWriter.field1154; - if (packetWriter.field1154 > 750) { - Renderable.method1291(); - return; - } + playingJingle = false; + } + ++packetWriter.field1164; + if (packetWriter.field1164 > 750) { + class9.method29(); + } else { var1 = Players.Players_count; - int[] var32 = Players.Players_indices; + int[] var39 = Players.Players_indices; for (var3 = 0; var3 < var1; ++var3) { - Player var23 = players[var32[var3]]; - if (var23 != null) { - class318.updateActorSequence(var23, 1); + Player var46 = players[var39[var3]]; + if (var46 != null) { + MoveSpeed.updateActorSequence(var46, 1); } } for (var1 = 0; var1 < npcCount; ++var1) { - var15 = npcIndices[var1]; - NPC var24 = npcs[var15]; - if (var24 != null) { - class318.updateActorSequence(var24, var24.definition.size); + var2 = npcIndices[var1]; + NPC var25 = npcs[var2]; + if (var25 != null) { + MoveSpeed.updateActorSequence(var25, var25.definition.size); + } + } + + int[] var36 = Players.Players_indices; + + for (var2 = 0; var2 < Players.Players_count; ++var2) { + Player var50 = players[var36[var2]]; + if (var50 != null && var50.overheadTextCyclesRemaining > 0) { + --var50.overheadTextCyclesRemaining; + if (var50.overheadTextCyclesRemaining == 0) { + var50.overheadText = null; + } + } + } + + for (var2 = 0; var2 < npcCount; ++var2) { + var3 = npcIndices[var2]; + NPC var47 = npcs[var3]; + if (var47 != null && var47.overheadTextCyclesRemaining > 0) { + --var47.overheadTextCyclesRemaining; + if (var47.overheadTextCyclesRemaining == 0) { + var47.overheadText = null; + } } } - WorldMapManager.method1482(); - ++field457; + ++field460; if (mouseCrossColor != 0) { mouseCrossState += 20; if (mouseCrossState >= 400) { @@ -2908,255 +2923,322 @@ final void doCycleLoggedIn() { } } - Widget var35 = class146.mousedOverWidgetIf1; - Widget var33 = class343.field3147; - class146.mousedOverWidgetIf1 = null; - class343.field3147 = null; + Widget var38 = Interpreter.mousedOverWidgetIf1; + Widget var41 = SwapSongTask.field3744; + Interpreter.mousedOverWidgetIf1 = null; + SwapSongTask.field3744 = null; draggedOnWidget = null; field397 = false; - field395 = false; - field532 = 0; - - while (keyHandlerInstance.method1105() && field532 < 128) { - if (staffModLevel >= 2 && keyHandlerInstance.getKeyPressed(82) && keyHandlerInstance.field1890 == 66) { - StringBuilder var38 = new StringBuilder(); - - Message var36; - for (Iterator var25 = Messages.Messages_hashTable.iterator(); var25.hasNext(); var38.append(var36.text).append('\n')) { - var36 = (Message)var25.next(); - if (var36.sender != null && !var36.sender.isEmpty()) { - var38.append(var36.sender).append(':'); - } - } - - String var40 = var38.toString(); - class219.client.method138(var40); - } else if (oculusOrbState != 1 || keyHandlerInstance.field1889 <= 0) { - field581[field532] = keyHandlerInstance.field1890; - field580[field532] = keyHandlerInstance.field1889; - ++field532; + field396 = false; + field530 = 0; + + while (keyHandlerInstance.method1128() && field530 < 128) { + if (staffModLevel >= 2 && keyHandlerInstance.getKeyPressed(82) && keyHandlerInstance.field1899 == 66) { + String var51 = class250.method1332(); + SpriteMask.client.method150(var51); + } else if (oculusOrbState != 1 || keyHandlerInstance.field1897 <= 0) { + field577[field530] = keyHandlerInstance.field1899; + field579[field530] = keyHandlerInstance.field1897; + ++field530; } } - boolean var34 = staffModLevel >= 2; - if (var34 && keyHandlerInstance.getKeyPressed(82) && keyHandlerInstance.getKeyPressed(81) && mouseWheelRotation != 0) { - var4 = VarbitComposition.localPlayer.plane - mouseWheelRotation; + boolean var32 = staffModLevel >= 2; + PacketBufferNode var26; + if (var32 && keyHandlerInstance.getKeyPressed(82) && keyHandlerInstance.getKeyPressed(81) && mouseWheelRotation != 0) { + var4 = class229.localPlayer.plane - mouseWheelRotation; if (var4 < 0) { var4 = 0; } else if (var4 > 3) { var4 = 3; } - if (var4 != VarbitComposition.localPlayer.plane) { - NPC.method597(VarbitComposition.localPlayer.pathX[0] + UrlRequester.baseX, VarbitComposition.localPlayer.pathY[0] + class47.baseY, var4, false); + if (var4 != class229.localPlayer.plane) { + var5 = class229.localPlayer.pathX[0] + NewShit.baseX; + var6 = class229.localPlayer.pathY[0] + class101.baseY; + var26 = class113.getPacketBufferNode(ClientPacket.f20, packetWriter.isaacCipher); + var26.packetBuffer.writeInt(0); + var26.packetBuffer.writeShortAddLE(var5); + var26.packetBuffer.writeShortAddLE(var6); + var26.packetBuffer.writeByte(var4); + packetWriter.addNode(var26); } mouseWheelRotation = 0; } - if (MouseHandler.MouseHandler_lastButton == 1) { - field423.method1090(); - } - if (rootInterface != -1) { - LoginScreenAnimation.updateRootInterface(rootInterface, 0, 0, class113.canvasWidth, class177.canvasHeight, 0, 0); + class406.updateRootInterface(rootInterface, 0, 0, Language.canvasWidth, class47.canvasHeight, 0, 0); } ++cycleCntr; while (true) { - Widget var37; - ScriptEvent var39; - Widget var42; + Widget var40; + Widget var45; + ScriptEvent var49; do { - var39 = (ScriptEvent)field629.removeLast(); - if (var39 == null) { + var49 = (ScriptEvent)field627.removeLast(); + if (var49 == null) { while (true) { do { - var39 = (ScriptEvent)field630.removeLast(); - if (var39 == null) { + var49 = (ScriptEvent)field628.removeLast(); + if (var49 == null) { while (true) { do { - var39 = (ScriptEvent)scriptEvents.removeLast(); - if (var39 == null) { + var49 = (ScriptEvent)scriptEvents.removeLast(); + if (var49 == null) { + boolean var33 = false; + while (true) { - class211 var41 = (class211)field628.removeLast(); - if (var41 == null) { + class222 var48 = (class222)field625.removeLast(); + if (var48 == null) { + if (!var33 && MouseHandler.MouseHandler_lastButton == 1) { + field422.method1114(); + } + this.menu(); - WorldMapRectangle.method1529(); + class127.method692(); if (clickedWidget != null) { - this.method380(); + this.method391(); } if (Scene.shouldSendWalk()) { - var4 = Scene.Scene_selectedX; - var5 = Scene.Scene_selectedY; - var18 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.MOVE_GAMECLICK, packetWriter.isaacCipher); - var18.packetBuffer.writeByte(5); - var18.packetBuffer.writeShortAddLE(var4 + UrlRequester.baseX); - var18.packetBuffer.writeShortAdd(var5 + class47.baseY); - var18.packetBuffer.writeByteSub(keyHandlerInstance.getKeyPressed(82) ? (keyHandlerInstance.getKeyPressed(81) ? 2 : 1) : 0); - packetWriter.addNode(var18); - Scene.method1275(); + var5 = Scene.Scene_selectedX; + var6 = Scene.Scene_selectedY; + var26 = class113.getPacketBufferNode(ClientPacket.MOVE_GAMECLICK, packetWriter.isaacCipher); + var26.packetBuffer.writeByte(5); + var26.packetBuffer.writeShort(var5 + NewShit.baseX); + var26.packetBuffer.writeShortAdd(var6 + class101.baseY); + var26.packetBuffer.writeByteSub(keyHandlerInstance.getKeyPressed(82) ? (keyHandlerInstance.getKeyPressed(81) ? 2 : 1) : 0); + packetWriter.addNode(var26); + Scene.method1499(); mouseCrossX = MouseHandler.MouseHandler_lastPressedX; mouseCrossY = MouseHandler.MouseHandler_lastPressedY; mouseCrossColor = 1; mouseCrossState = 0; - destinationX = var4; - destinationY = var5; + destinationX = var5; + destinationY = var6; } - if (var35 != class146.mousedOverWidgetIf1) { - if (var35 != null) { - class218.invalidateWidget(var35); + if (var38 != Interpreter.mousedOverWidgetIf1) { + if (var38 != null) { + class159.invalidateWidget(var38); } - if (class146.mousedOverWidgetIf1 != null) { - class218.invalidateWidget(class146.mousedOverWidgetIf1); + if (Interpreter.mousedOverWidgetIf1 != null) { + class159.invalidateWidget(Interpreter.mousedOverWidgetIf1); } + } - if (var33 != class343.field3147 && field496 == field498) { - if (var33 != null) { - class218.invalidateWidget(var33); + if (var41 != SwapSongTask.field3744 && field493 == field492) { + if (var41 != null) { + class159.invalidateWidget(var41); } - if (class343.field3147 != null) { - class218.invalidateWidget(class343.field3147); + if (SwapSongTask.field3744 != null) { + class159.invalidateWidget(SwapSongTask.field3744); } } - if (class343.field3147 != null) { - if (field496 < field498) { - ++field496; - if (field496 == field498) { - class218.invalidateWidget(class343.field3147); + if (SwapSongTask.field3744 != null) { + if (field493 < field492) { + ++field493; + if (field492 == field493) { + class159.invalidateWidget(SwapSongTask.field3744); } } - } else if (field496 > 0) { - --field496; + } else if (field493 > 0) { + --field493; } - class415.method2159(); + class336.method1740(); if (field400) { - class126.method702(FontName.field4045, KeyHandler.field70, class31.field84); - class416.method2161(UserComparator4.field1180, VertexNormal.field2255); - if (NPCComposition.cameraX == FontName.field4045 && class133.cameraY == KeyHandler.field70 && class139.cameraZ == class31.field84 && class129.cameraPitch == UserComparator4.field1180 && UserComparator10.cameraYaw == VertexNormal.field2255) { - field400 = false; - isCameraLocked = false; - field402 = false; - field404 = false; - PendingSpawn.cameraLookAtX = 0; - VarbitComposition.cameraLookAtY = 0; - MusicPatchNode2.cameraLookAtHeight = 0; - class33.cameraLookAtSpeed = 0; - WorldMapElement.cameraLookAtAcceleration = 0; - MouseHandler.cameraMoveToAcceleration = 0; - class344.cameraMoveToSpeed = 0; - Players.cameraMoveToX = 0; - class33.cameraMoveToY = 0; - VarpDefinition.cameraMoveToHeight = 0; - field642 = null; - field647 = null; - field646 = null; - } + TextureProvider.method1529(); } else if (isCameraLocked) { - class140.method762(); + if (!field402) { + var5 = ScriptFrame.cameraLookAtX * 128 + 64; + var6 = class216.cameraLookAtY * 128 + 64; + var7 = WorldMapDecorationType.getTileHeight(var5, var6, ItemLayer.Client_plane) - class127.cameraLookAtHeight; + class314.method1649(var5, var7, var6); + } else if (field644 != null) { + ViewportMouse.cameraX = field644.vmethod2386(); + class36.cameraZ = field644.vmethod2387(); + if (field403) { + SecureRandomFuture.cameraY = field644.vmethod2320(); + } else { + SecureRandomFuture.cameraY = WorldMapDecorationType.getTileHeight(ViewportMouse.cameraX, class36.cameraZ, ItemLayer.Client_plane) - field644.vmethod2320(); + } + + field644.method2389(); + } + + if (!field404) { + var5 = Messages.cameraMoveToX * 128 + 64; + var6 = AbstractWorldMapData.cameraMoveToY * 128 + 64; + var7 = WorldMapDecorationType.getTileHeight(var5, var6, ItemLayer.Client_plane) - class302.cameraMoveToHeight; + var8 = var5 - ViewportMouse.cameraX; + var9 = var7 - SecureRandomFuture.cameraY; + var10 = var6 - class36.cameraZ; + var11 = (int)Math.sqrt((double)(var10 * var10 + var8 * var8)); + var12 = (int)(Math.atan2((double)var9, (double)var11) * 325.9490051269531D) & 2047; + int var27 = (int)(Math.atan2((double)var8, (double)var10) * -325.9490051269531D) & 2047; + class303.method1628(var12, var27); + } else { + if (field642 != null) { + Varcs.cameraPitch = field642.method2385(); + Varcs.cameraPitch = Math.min(Math.max(Varcs.cameraPitch, 128), 383); + field642.method2389(); + } + + if (field643 != null) { + class192.cameraYaw = field643.method2385() & 2047; + field643.method2389(); + } + } } - for (var4 = 0; var4 < 5; ++var4) { - int var10002 = cameraShakeCycle[var4]++; + for (var5 = 0; var5 < 5; ++var5) { + var10002 = cameraShakeCycle[var5]++; } - KeyHandler.varcs.tryWrite(); - var4 = MusicPatchPcmStream.method1690(); - var5 = GameEngine.keyHandler.getIdleCycles(); - PacketBufferNode var26; - if (var4 > 15000 && var5 > 15000) { + class176.varcs.tryWrite(); + var5 = InterfaceParent.method463(); + var6 = class181.method919(); + if (var5 > 15000 && var6 > 15000) { logoutTimer = 250; - class20.method64(14500); - var26 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IDLE_LOGOUT, packetWriter.isaacCipher); + WorldMapEvent.method1382(14500); + var26 = class113.getPacketBufferNode(ClientPacket.field2515, packetWriter.isaacCipher); packetWriter.addNode(var26); } - class299.friendSystem.processFriendUpdates(); - FileSystem.method915(); + class12.friendSystem.processFriendUpdates(); + + for (var7 = 0; var7 < field607.size(); ++var7) { + if (MouseRecorder.method469((Integer)field607.get(var7)) != 2) { + field607.remove(var7); + --var7; + } + } + ++packetWriter.pendingWrites; if (packetWriter.pendingWrites > 50) { - var26 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.NO_TIMEOUT, packetWriter.isaacCipher); + var26 = class113.getPacketBufferNode(ClientPacket.NO_TIMEOUT, packetWriter.isaacCipher); packetWriter.addNode(var26); } try { packetWriter.flush(); - } catch (IOException var27) { - Renderable.method1291(); + } catch (IOException var28) { + class9.method29(); } return; } - ClanChannel.method862(var41); + if (var48.field1884.type == 12) { + var33 = true; + } + + if (var48 != null && var48.field1884 != null) { + if (var48.field1884.childIndex >= 0) { + var40 = HealthBarDefinition.widgetDefinition.method1733(var48.field1884.parentId); + if (var40 == null || var40.children == null || var40.children.length == 0 || var48.field1884.childIndex >= var40.children.length || var48.field1884 != var40.children[var48.field1884.childIndex]) { + continue; + } + } + + if (var48.field1884.type == 11 && var48.field1881 == 0) { + if (var48.field1884.method1860(var48.field1883, var48.field1882, 0, 0)) { + switch(var48.field1884.method1864()) { + case 0: + HealthBar.openURL(var48.field1884.method1866(), true, false); + break; + case 1: + if (ClanChannel.method853(class361.getWidgetFlags(var48.field1884))) { + int[] var43 = var48.field1884.method1867(); + if (var43 != null) { + var26 = class113.getPacketBufferNode(ClientPacket.f97, packetWriter.isaacCipher); + var26.packetBuffer.writeIntLE(var43[1]); + var26.packetBuffer.writeInt(var43[0]); + var26.packetBuffer.writeShortLE(var48.field1884.childIndex); + var26.packetBuffer.writeInt(var43[2]); + var26.packetBuffer.writeIntLE(var48.field1884.id); + var26.packetBuffer.writeIntME(var48.field1884.method1865()); + packetWriter.addNode(var26); + } + } + } + } + } else if (var48.field1884.type == 12) { + class341 var42 = var48.field1884.method1871(); + if (var42 != null && var42.method1811()) { + switch(var48.field1881) { + case 0: + field422.method1112(var48.field1884); + var42.method1759(true); + var42.method1798(var48.field1883, var48.field1882, keyHandlerInstance.getKeyPressed(82), keyHandlerInstance.getKeyPressed(81)); + break; + case 1: + var42.method1799(var48.field1883, var48.field1882); + } + } + } + } } } - var42 = var39.widget; - if (var42.childIndex < 0) { + var45 = var49.widget; + if (var45.childIndex < 0) { break; } - var37 = class92.getWidget(var42.parentId); - } while(var37 == null || var37.children == null || var42.childIndex >= var37.children.length || var42 != var37.children[var42.childIndex]); + var40 = HealthBarDefinition.widgetDefinition.method1733(var45.parentId); + } while(var40 == null || var40.children == null || var45.childIndex >= var40.children.length || var45 != var40.children[var45.childIndex]); - WorldMapSection1.runScriptEvent(var39); + class157.runScriptEvent(var49); } } - var42 = var39.widget; - if (var42.childIndex < 0) { + var45 = var49.widget; + if (var45.childIndex < 0) { break; } - var37 = class92.getWidget(var42.parentId); - } while(var37 == null || var37.children == null || var42.childIndex >= var37.children.length || var42 != var37.children[var42.childIndex]); + var40 = HealthBarDefinition.widgetDefinition.method1733(var45.parentId); + } while(var40 == null || var40.children == null || var45.childIndex >= var40.children.length || var45 != var40.children[var45.childIndex]); - WorldMapSection1.runScriptEvent(var39); + class157.runScriptEvent(var49); } } - var42 = var39.widget; - if (var42.childIndex < 0) { + var45 = var49.widget; + if (var45.childIndex < 0) { break; } - var37 = class92.getWidget(var42.parentId); - } while(var37 == null || var37.children == null || var42.childIndex >= var37.children.length || var42 != var37.children[var42.childIndex]); + var40 = HealthBarDefinition.widgetDefinition.method1733(var45.parentId); + } while(var40 == null || var40.children == null || var45.childIndex >= var40.children.length || var45 != var40.children[var45.childIndex]); - WorldMapSection1.runScriptEvent(var39); + class157.runScriptEvent(var49); } } - - var30 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.REFLECTION_CHECK_REPLY, packetWriter.isaacCipher); - var30.packetBuffer.writeByte(0); - var3 = var30.packetBuffer.offset; - SceneTilePaint.performReflectionCheck(var30.packetBuffer); - var30.packetBuffer.method2540(var30.packetBuffer.offset - var3); - packetWriter.addNode(var30); } } } } - @ObfuscatedName("iw") + @ObfuscatedName("im") @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "-9429" + descriptor = "(III)V", + garbageValue = "-1786579284" ) @Export("vmethod1644") public void vmethod1644(int var1, int var2) { if (packetWriter != null && packetWriter.isaacCipher != null) { - if (var1 > -1 && class449.clientPreferences.getCurrentMusicVolume() > 0 && !playingJingle) { - PacketBufferNode var3 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.SOUND_SONGEND, packetWriter.isaacCipher); + if (var1 > -1 && WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() > 0 && !playingJingle) { + PacketBufferNode var3 = class113.getPacketBufferNode(ClientPacket.SOUND_SONGEND, packetWriter.isaacCipher); var3.packetBuffer.writeInt(var1); packetWriter.addNode(var3); } @@ -3164,15 +3246,15 @@ public void vmethod1644(int var1, int var2) { } } - @ObfuscatedName("jk") + @ObfuscatedName("ii") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "347895574" + descriptor = "(B)V", + garbageValue = "58" ) @Export("resizeJS") void resizeJS() { - int var1 = class113.canvasWidth; - int var2 = class177.canvasHeight; + int var1 = Language.canvasWidth; + int var2 = class47.canvasHeight; if (super.contentWidth < var1) { var1 = super.contentWidth; } @@ -3181,24 +3263,24 @@ void resizeJS() { var2 = super.contentHeight; } - if (class449.clientPreferences != null) { + if (WorldMapIcon_1.clientPreferences != null) { try { - class26.method95(class219.client, "resize", new Object[]{class218.getWindowedMode()}); + class26.invoke(SpriteMask.client, "resize", new Object[]{ApproximateRouteStrategy.getWindowedMode()}); } catch (Throwable var4) { } } } - @ObfuscatedName("jv") + @ObfuscatedName("ik") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "1" + garbageValue = "-37" ) @Export("drawLoggedIn") final void drawLoggedIn() { if (rootInterface != -1) { - class316.method1699(rootInterface); + ClanChannel.method862(rootInterface); } int var1; @@ -3211,85 +3293,31 @@ final void drawLoggedIn() { field407[var1] = false; } - field527 = cycle; + field523 = cycle; viewportX = -1; viewportY = -1; if (rootInterface != -1) { rootWidgetCount = 0; - class36.drawWidgets(rootInterface, 0, 0, class113.canvasWidth, class177.canvasHeight, 0, 0, -1); + Canvas.drawWidgets(rootInterface, 0, 0, Language.canvasWidth, class47.canvasHeight, 0, 0, -1); } Rasterizer2D.Rasterizer2D_resetClip(); if (showMouseCross) { if (mouseCrossColor == 1) { - class152.crossSprites[mouseCrossState / 100].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); + VarpDefinition.crossSprites[mouseCrossState / 100].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); } if (mouseCrossColor == 2) { - class152.crossSprites[mouseCrossState / 100 + 4].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); + VarpDefinition.crossSprites[mouseCrossState / 100 + 4].drawTransBgAt(mouseCrossX - 8, mouseCrossY - 8); } } - int var2; - int var3; if (!isMenuOpen) { if (viewportX != -1) { - var1 = viewportX; - var2 = viewportY; - if ((menuOptionsCount >= 2 || isItemSelected != 0 || isSpellSelected) && showMouseOverText) { - var3 = menuOptionsCount - 1; - String var5; - if (isItemSelected == 1 && menuOptionsCount < 2) { - var5 = "Use" + " " + field599 + " " + "->"; - } else if (isSpellSelected && menuOptionsCount < 2) { - var5 = field600 + " " + field601 + " " + "->"; - } else { - var5 = class181.method928(var3); - } - - if (menuOptionsCount > 2) { - var5 = var5 + MoveSpeed.colorStartTag(16777215) + " " + '/' + " " + (menuOptionsCount - 2) + " more options"; - } - - class59.fontBold12.drawRandomAlphaAndSpacing(var5, var1 + 4, var2 + 15, 16777215, 0, cycle / 1000); - } + class478.method2366(viewportX, viewportY); } } else { - var1 = class12.menuX; - var2 = class419.menuY; - var3 = class316.menuWidth; - int var4 = Occluder.menuHeight; - int var13 = 6116423; - Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, var13); - Rasterizer2D.Rasterizer2D_fillRectangle(var1 + 1, var2 + 1, var3 - 2, 16, 0); - Rasterizer2D.Rasterizer2D_drawRectangle(var1 + 1, var2 + 18, var3 - 2, var4 - 19, 0); - class59.fontBold12.draw("Choose Option", var1 + 3, var2 + 14, var13, -1); - int var6 = MouseHandler.MouseHandler_x; - int var7 = MouseHandler.MouseHandler_y; - - int var8; - int var9; - int var10; - for (var8 = 0; var8 < menuOptionsCount; ++var8) { - var9 = var2 + (menuOptionsCount - 1 - var8) * 15 + 31; - var10 = 16777215; - if (var6 > var1 && var6 < var3 + var1 && var7 > var9 - 13 && var7 < var9 + 3) { - var10 = 16776960; - } - - class59.fontBold12.draw(class181.method928(var8), var1 + 3, var9, var10, 0); - } - - var8 = class12.menuX; - var9 = class419.menuY; - var10 = class316.menuWidth; - int var11 = Occluder.menuHeight; - - for (int var12 = 0; var12 < rootWidgetCount; ++var12) { - if (rootWidgetXs[var12] + rootWidgetWidths[var12] > var8 && rootWidgetXs[var12] < var8 + var10 && rootWidgetYs[var12] + rootWidgetHeights[var12] > var9 && rootWidgetYs[var12] < var9 + var11) { - field408[var12] = true; - } - } + ClanSettings.method820(); } if (gameDrawingMode == 3) { @@ -3302,86 +3330,86 @@ final void drawLoggedIn() { } } - class131.method729(HealthBar.Client_plane, VarbitComposition.localPlayer.x, VarbitComposition.localPlayer.y, field457); - field457 = 0; + IgnoreList.method2206(ItemLayer.Client_plane, class229.localPlayer.x, class229.localPlayer.y, field460); + field460 = 0; } - @ObfuscatedName("ks") + @ObfuscatedName("jx") @ObfuscatedSignature( - descriptor = "(Ler;II)Z", - garbageValue = "692591213" + descriptor = "(Lef;II)Z", + garbageValue = "-2137639716" ) - boolean method372(PacketWriter var1, int var2) { + boolean method383(PacketWriter var1, int var2) { if (var1.serverPacketLength == 0) { - ReflectionCheck.friendsChat = null; + class20.friendsChat = null; } else { - if (ReflectionCheck.friendsChat == null) { - ReflectionCheck.friendsChat = new FriendsChat(Language.loginType, class219.client); + if (class20.friendsChat == null) { + class20.friendsChat = new FriendsChat(class89.loginType, SpriteMask.client); } - ReflectionCheck.friendsChat.method2201(var1.packetBuffer, var2); + class20.friendsChat.method2218(var1.packetBuffer, var2); } - field524 = cycleCntr; - SpotAnimationDefinition.ClanChat_inClanChat = true; + field526 = cycleCntr; + class344.ClanChat_inClanChat = true; var1.serverPacket = null; return true; } - @ObfuscatedName("kn") + @ObfuscatedName("ja") @ObfuscatedSignature( - descriptor = "(Ler;I)Z", - garbageValue = "-1865308830" + descriptor = "(Lef;B)Z", + garbageValue = "-16" ) - boolean method373(PacketWriter var1) { - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.method2202(var1.packetBuffer); + boolean method384(PacketWriter var1) { + if (class20.friendsChat != null) { + class20.friendsChat.method2220(var1.packetBuffer); } - field524 = cycleCntr; - SpotAnimationDefinition.ClanChat_inClanChat = true; + field526 = cycleCntr; + class344.ClanChat_inClanChat = true; var1.serverPacket = null; return true; } - @ObfuscatedName("kd") + @ObfuscatedName("jt") @ObfuscatedSignature( - descriptor = "(Ler;I)Z", - garbageValue = "-1722622027" + descriptor = "(Lef;B)Z", + garbageValue = "1" ) - final boolean method374(PacketWriter var1) { + final boolean method385(PacketWriter var1) { AbstractSocket var2 = var1.getSocket(); PacketBuffer var3 = var1.packetBuffer; if (var2 == null) { return false; } else { int var6; - String var21; + String var20; try { int var5; if (var1.serverPacket == null) { - if (var1.field1152) { + if (var1.field1160) { if (!var2.isAvailable(1)) { return false; } var2.read(var1.packetBuffer.array, 0, 1); - var1.field1154 = 0; - var1.field1152 = false; + var1.field1164 = 0; + var1.field1160 = false; } var3.offset = 0; - if (var3.method2518()) { + if (var3.method2532()) { if (!var2.isAvailable(1)) { return false; } var2.read(var1.packetBuffer.array, 1, 1); - var1.field1154 = 0; + var1.field1164 = 0; } - var1.field1152 = true; - ServerPacket[] var4 = class176.method916(); + var1.field1160 = true; + ServerPacket[] var4 = class12.method46(); var5 = var3.readSmartByteShortIsaac(); if (var5 < 0 || var5 >= var4.length) { throw new IOException(var5 + " " + var3.offset); @@ -3416,13 +3444,47 @@ final boolean method374(PacketWriter var1) { var3.offset = 0; var2.read(var3.array, 0, var1.serverPacketLength); - var1.field1154 = 0; - timer.method2150(); - var1.field1158 = var1.field1157; - var1.field1157 = var1.field1159; - var1.field1159 = var1.serverPacket; - if (ServerPacket.UPDATE_UID192 == var1.serverPacket) { - class128.privateChatMode = DevicePcmPlayerProvider.method74(var3.readUnsignedByte()); + var1.field1164 = 0; + timer.method2170(); + var1.field1166 = var1.field1168; + var1.field1168 = var1.field1167; + var1.field1167 = var1.serverPacket; + String var52; + if (ServerPacket.TRADING_POST_RESULTS == var1.serverPacket) { + var52 = var3.readStringCp1252NullTerminated(); + var20 = AbstractFont.escapeBrackets(class20.method77(class128.readString(var3))); + GrandExchangeOfferUnitPriceComparator.addGameMessage(6, var52, var20); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.VARP_SMALL == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.LOC_ADD_CHANGE); + var1.serverPacket = null; + return true; + } + + byte var76; + if (ServerPacket.SET_MAP_FLAG == var1.serverPacket) { + class316.method1650(); + var76 = var3.readByte(); + if (var1.serverPacketLength == 1) { + if (var76 >= 0) { + currentClanSettings[var76] = null; + } else { + class478.guestClanSettings = null; + } + + var1.serverPacket = null; + return true; + } + + if (var76 >= 0) { + currentClanSettings[var76] = new ClanSettings(var3); + } else { + class478.guestClanSettings = new ClanSettings(var3); + } + var1.serverPacket = null; return true; } @@ -3430,232 +3492,13 @@ final boolean method374(PacketWriter var1) { int var7; int var8; int var9; - int var10; - int var13; - int var15; - int var56; - int var59; - int var68; - if (ServerPacket.IF_SETMODEL == var1.serverPacket) { - var6 = var3.method2591(); - var68 = var6 >> 16; - var5 = var6 >> 8 & 255; - var7 = var68 + (var6 >> 4 & 7); - var8 = var5 + (var6 & 7); - var9 = var3.readUnsignedByteSub(); - var10 = var9 >> 2; - var56 = var9 & 3; - var59 = field653[var10]; - var13 = var3.readUnsignedShort(); - if (var7 >= 0 && var8 >= 0 && var7 < 103 && var8 < 103) { - if (var59 == 0) { - BoundaryObject var67 = class130.scene.method1255(HealthBar.Client_plane, var7, var8); - if (var67 != null) { - var15 = InvDefinition.Entity_unpackID(var67.tag); - if (var10 == 2) { - var67.renderable1 = new DynamicObject(var15, 2, var56 + 4, HealthBar.Client_plane, var7, var8, var13, false, var67.renderable1); - var67.renderable2 = new DynamicObject(var15, 2, var56 + 1 & 3, HealthBar.Client_plane, var7, var8, var13, false, var67.renderable2); - } else { - var67.renderable1 = new DynamicObject(var15, var10, var56, HealthBar.Client_plane, var7, var8, var13, false, var67.renderable1); - } - } - } else if (var59 == 1) { - WallDecoration var66 = class130.scene.method1256(HealthBar.Client_plane, var7, var8); - if (var66 != null) { - var15 = InvDefinition.Entity_unpackID(var66.tag); - if (var10 != 4 && var10 != 5) { - if (var10 == 6) { - var66.renderable1 = new DynamicObject(var15, 4, var56 + 4, HealthBar.Client_plane, var7, var8, var13, false, var66.renderable1); - } else if (var10 == 7) { - var66.renderable1 = new DynamicObject(var15, 4, (var56 + 2 & 3) + 4, HealthBar.Client_plane, var7, var8, var13, false, var66.renderable1); - } else if (var10 == 8) { - var66.renderable1 = new DynamicObject(var15, 4, var56 + 4, HealthBar.Client_plane, var7, var8, var13, false, var66.renderable1); - var66.renderable2 = new DynamicObject(var15, 4, (var56 + 2 & 3) + 4, HealthBar.Client_plane, var7, var8, var13, false, var66.renderable2); - } - } else { - var66.renderable1 = new DynamicObject(var15, 4, var56, HealthBar.Client_plane, var7, var8, var13, false, var66.renderable1); - } - } - } else if (var59 == 2) { - GameObject var64 = class130.scene.getGameObject(HealthBar.Client_plane, var7, var8); - if (var10 == 11) { - var10 = 10; - } - - if (var64 != null) { - var64.renderable = new DynamicObject(InvDefinition.Entity_unpackID(var64.tag), var10, var56, HealthBar.Client_plane, var7, var8, var13, false, var64.renderable); - } - } else if (var59 == 3) { - FloorDecoration var65 = class130.scene.getFloorDecoration(HealthBar.Client_plane, var7, var8); - if (var65 != null) { - var65.renderable = new DynamicObject(InvDefinition.Entity_unpackID(var65.tag), 22, var56, HealthBar.Client_plane, var7, var8, var13, false, var65.renderable); - } - } - } - - var1.serverPacket = null; - return true; - } - - Widget var76; - if (ServerPacket.IF_SETANIM == var1.serverPacket) { - var68 = var3.readInt(); - var76 = class92.getWidget(var68); - var76.modelType = 3; - var76.modelId = VarbitComposition.localPlayer.appearance.getChatHeadId(); - class218.invalidateWidget(var76); - var1.serverPacket = null; - return true; - } - - if (ServerPacket.CAM_LOOKAT == var1.serverPacket) { - field400 = false; - isCameraLocked = false; - field402 = false; - field404 = false; - PendingSpawn.cameraLookAtX = 0; - VarbitComposition.cameraLookAtY = 0; - MusicPatchNode2.cameraLookAtHeight = 0; - field401 = false; - class33.cameraLookAtSpeed = 0; - WorldMapElement.cameraLookAtAcceleration = 0; - MouseHandler.cameraMoveToAcceleration = 0; - class344.cameraMoveToSpeed = 0; - Players.cameraMoveToX = 0; - class33.cameraMoveToY = 0; - VarpDefinition.cameraMoveToHeight = 0; - field642 = null; - field647 = null; - field646 = null; - - for (var68 = 0; var68 < 5; ++var68) { - cameraShaking[var68] = false; - } - - var1.serverPacket = null; - return true; - } - - if (ServerPacket.SET_PLAYER_OP == var1.serverPacket) { - class139.varclan = null; - var1.serverPacket = null; - return true; - } - - if (ServerPacket.LOC_DEL == var1.serverPacket) { - var68 = var3.readInt(); - var5 = var3.readInt(); - var6 = WorldMapManager.getGcDuration(); - PacketBufferNode var79 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2581, packetWriter.isaacCipher); - var79.packetBuffer.writeByte(GameEngine.fps); - var79.packetBuffer.writeIntLE(var68); - var79.packetBuffer.writeIntIME(var5); - var79.packetBuffer.writeByteAdd(var6); - packetWriter.addNode(var79); - var1.serverPacket = null; - return true; - } - - if (ServerPacket.VARCLAN_ENABLE == var1.serverPacket) { - class113.process(); - weight = var3.readShort(); - field528 = cycleCntr; - var1.serverPacket = null; - return true; - } - - if (ServerPacket.OBJ_COUNT == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.LOC_ANIM); - var1.serverPacket = null; - return true; - } - - if (ServerPacket.OBJ_ADD == var1.serverPacket) { - var68 = var3.readIntME(); - KeyHandler.method93(var68); - changedItemContainers[++changedItemContainersCount - 1 & 31] = var68 & 32767; - var1.serverPacket = null; - return true; - } - - if (ServerPacket.CAM_LOOKAT_EASED_ANGLE_RELATIVE == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.AREA_SOUND); - var1.serverPacket = null; - return true; - } - - boolean var11; - byte var20; - long var23; - long var25; - long var27; - String var30; - int var85; - if (ServerPacket.LOGOUT_FULL == var1.serverPacket) { - var20 = var3.readByte(); - var23 = (long)var3.readUnsignedShort(); - var25 = (long)var3.readMedium(); - var27 = (var23 << 32) + var25; - var11 = false; - ClanChannel var81 = var20 >= 0 ? currentClanChannels[var20] : VerticalAlignment.guestClanChannel; - if (var81 == null) { - var11 = true; - } else { - for (var13 = 0; var13 < 100; ++var13) { - if (crossWorldMessageIds[var13] == var27) { - var11 = true; - break; - } - } - } - - if (!var11) { - crossWorldMessageIds[crossWorldMessageIdsIndex] = var27; - crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; - var30 = DirectByteArrayCopier.readString(var3); - var85 = var20 >= 0 ? 43 : 46; - class416.addChatMessage(var85, "", var30, var81.name); - } - - var1.serverPacket = null; - return true; - } - - if (ServerPacket.MAP_ANIM == var1.serverPacket) { - UserComparator8.updatePlayers(var3, var1.serverPacketLength); - class383.method2021(); - var1.serverPacket = null; - return true; - } - - if (ServerPacket.SYNTH_SOUND == var1.serverPacket) { - isCameraLocked = true; - field400 = false; - field404 = true; - PendingSpawn.cameraLookAtX = var3.readUnsignedByte(); - VarbitComposition.cameraLookAtY = var3.readUnsignedByte(); - MusicPatchNode2.cameraLookAtHeight = var3.readUnsignedShort(); - var68 = var3.readUnsignedShort(); - var5 = var3.readUnsignedByte(); - var6 = PendingSpawn.cameraLookAtX * 128 + 64; - var7 = VarbitComposition.cameraLookAtY * 128 + 64; - var8 = class18.getTileHeight(var6, var7, HealthBar.Client_plane) - MusicPatchNode2.cameraLookAtHeight; - var9 = var6 - NPCComposition.cameraX; - var10 = var8 - class133.cameraY; - var56 = var7 - class139.cameraZ; - double var84 = Math.sqrt((double)(var56 * var56 + var9 * var9)); - var85 = UserComparator8.method674((int)(Math.atan2((double)var10, var84) * 325.9490051269531D) & 2047); - var15 = class7.method18((int)(Math.atan2((double)var9, (double)var56) * -325.9490051269531D) & 2047); - field647 = new class478(class129.cameraPitch, var85, var68, var5); - field646 = new class478(UserComparator10.cameraYaw, var15, var68, var5); - var1.serverPacket = null; - return true; - } - - long var32; - InterfaceParent var74; - if (ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL_V2 == var1.serverPacket) { - var68 = var3.offset + var1.serverPacketLength; + int var11; + int var21; + int var23; + long var63; + InterfaceParent var75; + if (ServerPacket.NPC_SPOTANIM_SPECIFIC == var1.serverPacket) { + var21 = var3.offset + var1.serverPacketLength; var5 = var3.readUnsignedShort(); if (var5 == 65535) { var5 = -1; @@ -3664,50 +3507,50 @@ final boolean method374(PacketWriter var1) { var6 = var3.readUnsignedShort(); if (var5 != rootInterface) { rootInterface = var5; - this.resizeRoot(false); - class19.Widget_resetModelFrames(rootInterface); - MoveSpeed.runWidgetOnLoadListener(rootInterface); + this.method389(false); + class130.method713(rootInterface); + class106.runWidgetOnLoadListener(rootInterface); for (var7 = 0; var7 < 100; ++var7) { field407[var7] = true; } } - InterfaceParent var88; - for (; var6-- > 0; var88.field858 = true) { + InterfaceParent var59; + for (; var6-- > 0; var59.field863 = true) { var7 = var3.readInt(); var8 = var3.readUnsignedShort(); var9 = var3.readUnsignedByte(); - var88 = (InterfaceParent)interfaceParents.get((long)var7); - if (var88 != null && var8 != var88.group) { - class92.closeInterface(var88, true); - var88 = null; + var59 = (InterfaceParent)interfaceParents.get((long)var7); + if (var59 != null && var8 != var59.group) { + class302.closeInterface(var59, true); + var59 = null; } - if (var88 == null) { - var88 = class339.ifOpenSub(var7, var8, var9); + if (var59 == null) { + var59 = UserComparator8.openInterface(var7, var8, var9); } } - for (var74 = (InterfaceParent)interfaceParents.first(); var74 != null; var74 = (InterfaceParent)interfaceParents.next()) { - if (var74.field858) { - var74.field858 = false; + for (var75 = (InterfaceParent)interfaceParents.first(); var75 != null; var75 = (InterfaceParent)interfaceParents.next()) { + if (var75.field863) { + var75.field863 = false; } else { - class92.closeInterface(var74, true); + class302.closeInterface(var75, true); } } widgetFlags = new NodeHashTable(512); - while (var3.offset < var68) { + while (var3.offset < var21) { var7 = var3.readInt(); var8 = var3.readUnsignedShort(); var9 = var3.readUnsignedShort(); - var10 = var3.readInt(); + var23 = var3.readInt(); - for (var56 = var8; var56 <= var9; ++var56) { - var32 = ((long)var7 << 32) + (long)var56; - widgetFlags.put(new IntegerNode(var10), var32); + for (var11 = var8; var11 <= var9; ++var11) { + var63 = ((long)var7 << 32) + (long)var11; + widgetFlags.put(new IntegerNode(var23), var63); } } @@ -3715,552 +3558,551 @@ final boolean method374(PacketWriter var1) { return true; } - Widget var93; - if (ServerPacket.TOGGLE_OCULUS_ORB == var1.serverPacket) { - var68 = var3.readInt(); - var5 = var3.method2598(); - InterfaceParent var97 = (InterfaceParent)interfaceParents.get((long)var5); - var74 = (InterfaceParent)interfaceParents.get((long)var68); - if (var74 != null) { - class92.closeInterface(var74, var97 == null || var74.group != var97.group); - } - - if (var97 != null) { - var97.remove(); - interfaceParents.put(var97, (long)var68); - } - - var93 = class92.getWidget(var5); - if (var93 != null) { - class218.invalidateWidget(var93); - } + if (ServerPacket.LOGOUT_FULL == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + var5 = var3.readUnsignedByte(); + var6 = var3.readUnsignedShort(); + class460.queueSoundEffect(var21, var5, var6); + var1.serverPacket = null; + return true; + } - var93 = class92.getWidget(var68); - if (var93 != null) { - class218.invalidateWidget(var93); - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var93.id >>> 16], var93, true); + int var24; + boolean var62; + boolean var82; + if (ServerPacket.VARP_LARGE == var1.serverPacket) { + isCameraLocked = true; + field400 = false; + field402 = true; + ScriptFrame.cameraLookAtX = var3.readUnsignedByte(); + class216.cameraLookAtY = var3.readUnsignedByte(); + var21 = var3.readUnsignedShort(); + var5 = var3.readUnsignedByte() * 128 + 64; + var6 = var3.readUnsignedByte() * 128 + 64; + var7 = var3.readUnsignedShort(); + field403 = var3.readBoolean(); + var8 = var3.readUnsignedByte(); + var9 = ScriptFrame.cameraLookAtX * 128 + 64; + var23 = class216.cameraLookAtY * 128 + 64; + var62 = false; + var82 = false; + if (field403) { + var11 = SecureRandomFuture.cameraY; + var24 = WorldMapDecorationType.getTileHeight(var9, var23, ItemLayer.Client_plane) - var21; + } else { + var11 = WorldMapDecorationType.getTileHeight(ViewportMouse.cameraX, class36.cameraZ, ItemLayer.Client_plane) - SecureRandomFuture.cameraY; + var24 = var21; } - if (rootInterface != -1) { - class385.runIntfCloseListeners(rootInterface, 1); - } + field644 = new class488(ViewportMouse.cameraX, class36.cameraZ, var11, var9, var23, var24, var5, var6, var7, var8); + var1.serverPacket = null; + return true; + } + if (ServerPacket.field2648 == var1.serverPacket) { + publicChatMode = var3.readUnsignedByteNeg(); + tradeChatMode = var3.readUnsignedByteAdd(); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_INV_FULL == var1.serverPacket) { - WorldMapSection2.method1410(); - var20 = var3.readByte(); - if (var1.serverPacketLength == 1) { - if (var20 >= 0) { - currentClanSettings[var20] = null; - } else { - Players.guestClanSettings = null; + Widget var25; + if (ServerPacket.SEND_PING == var1.serverPacket) { + var21 = var3.readUnsignedShortAdd(); + var5 = var3.readUnsignedIntME(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var25 != null && var25.type == 0) { + if (var21 > var25.scrollHeight - var25.height) { + var21 = var25.scrollHeight - var25.height; } - var1.serverPacket = null; - return true; - } + if (var21 < 0) { + var21 = 0; + } - if (var20 >= 0) { - currentClanSettings[var20] = new ClanSettings(var3); - } else { - Players.guestClanSettings = new ClanSettings(var3); + if (var21 != var25.scrollY) { + var25.scrollY = var21; + class159.invalidateWidget(var25); + } } var1.serverPacket = null; return true; } - if (ServerPacket.CHAT_FILTER_SETTINGS_PRIVATECHAT == var1.serverPacket) { - var68 = var3.readInt(); - InterfaceParent var78 = (InterfaceParent)interfaceParents.get((long)var68); - if (var78 != null) { - class92.closeInterface(var78, true); - } - - if (meslayerContinueWidget != null) { - class218.invalidateWidget(meslayerContinueWidget); - meslayerContinueWidget = null; - } - + if (ServerPacket.field2651 == var1.serverPacket) { + class90.updateNpcs(true, var3); var1.serverPacket = null; return true; } - if (ServerPacket.LOGOUT == var1.serverPacket) { - var9 = var3.readUnsignedShort(); - var6 = var3.method2591(); - var68 = var6 >> 16; - var5 = var6 >> 8 & 255; - var7 = var68 + (var6 >> 4 & 7); - var8 = var5 + (var6 & 7); - var10 = var3.readUnsignedByteAdd(); - var56 = var3.readUnsignedShortLE(); - if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104) { - var7 = var7 * 128 + 64; - var8 = var8 * 128 + 64; - GraphicsObject var29 = new GraphicsObject(var9, HealthBar.Client_plane, var7, var8, class18.getTileHeight(var7, var8, HealthBar.Client_plane) - var10, var56, cycle); - graphicsObjects.addFirst(var29); - } - + if (ServerPacket.CAM_LOOKAT_EASED_ANGLE_RELATIVE == var1.serverPacket) { + varclan = null; var1.serverPacket = null; return true; } - if (ServerPacket.CAM_RESET == var1.serverPacket) { - field517 = cycleCntr; - var20 = var3.readByte(); - if (var1.serverPacketLength == 1) { - if (var20 >= 0) { - currentClanChannels[var20] = null; - } else { - VerticalAlignment.guestClanChannel = null; + boolean var98; + if (ServerPacket.field2641 == var1.serverPacket) { + var98 = var3.readBoolean(); + if (var98) { + if (MidiPcmStream.field2799 == null) { + MidiPcmStream.field2799 = new class381(); } - - var1.serverPacket = null; - return true; - } - - if (var20 >= 0) { - currentClanChannels[var20] = new ClanChannel(var3); } else { - VerticalAlignment.guestClanChannel = new ClanChannel(var3); + MidiPcmStream.field2799 = null; } var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_INV_PARTIAL == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.PREFETCH_GAMEOBJECTS); + if (ServerPacket.MIDI_SONG_STOP == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + var5 = var3.readUnsignedIntME(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var25.modelType != 6 || var21 != var25.modelId) { + var25.modelType = 6; + var25.modelId = var21; + class159.invalidateWidget(var25); + } + var1.serverPacket = null; return true; } - if (ServerPacket.RESET_CLIENT_VARCACHE == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.LOC_ADD_CHANGE); + if (ServerPacket.SYNTH_SOUND == var1.serverPacket) { + return this.method383(var1, 1); + } + + if (ServerPacket.field2748 == var1.serverPacket) { + class153.readReflectionCheck(var3, var1.serverPacketLength); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETPLAYERMODEL_SELF == var1.serverPacket) { - var68 = var3.readIntME(); - var5 = var3.readUnsignedByteSub(); - if (var68 == 65535) { - var68 = -1; + if (ServerPacket.TOGGLE_OCULUS_ORB == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + if (var3.readUnsignedByte() == 0) { + grandExchangeOffers[var21] = new GrandExchangeOffer(); + var3.offset += 18; + } else { + --var3.offset; + grandExchangeOffers[var21] = new GrandExchangeOffer(var3, false); } - LoginType.performPlayerAnimation(VarbitComposition.localPlayer, var68, var5); + field519 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.MIDI_SWAP == var1.serverPacket) { - class271.loadRegions(true, var1.packetBuffer); + if (ServerPacket.CAM_MOVETO == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.OBJ_COUNT); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_RUNWEIGHT == var1.serverPacket) { - if (rootInterface != -1) { - class385.runIntfCloseListeners(rootInterface, 0); - } - + if (ServerPacket.field2682 == var1.serverPacket) { + minimapState = var3.readUnsignedByte(); var1.serverPacket = null; return true; } - Widget var71; - if (ServerPacket.HEAT_MAP == var1.serverPacket) { - var68 = var3.readIntIME(); - var5 = var3.method2587(); - var6 = var3.readUnsignedShortLE(); - var71 = class92.getWidget(var68); - var71.rotationKey = var6 + (var5 << 16); + if (ServerPacket.TRADING_POST_UPDATE == var1.serverPacket) { + Interpreter.updatePlayers(var3, var1.serverPacketLength); + WorldMapSectionType.method1314(); var1.serverPacket = null; return true; } - if (ServerPacket.CAM_MOVETO_EASED_CIRCULAR == var1.serverPacket) { - minimapState = var3.readUnsignedByte(); + if (ServerPacket.IF_OPENSUB == var1.serverPacket) { + for (var21 = 0; var21 < Varps.Varps_main.length; ++var21) { + if (Varps.Varps_main[var21] != Varps.Varps_temp[var21]) { + Varps.Varps_main[var21] = Varps.Varps_temp[var21]; + Projectile.changeGameOptions(var21); + changedVarps[++changedVarpCount - 1 & 31] = var21; + } + } + var1.serverPacket = null; return true; } - int var16; - String var43; - if (ServerPacket.UPDATE_ZONE_PARTIAL_ENCLOSED == var1.serverPacket) { - var20 = var3.readByte(); - var21 = var3.readStringCp1252NullTerminated(); - long var37 = (long)var3.readUnsignedShort(); - long var39 = (long)var3.readMedium(); - PlayerType var87 = (PlayerType)KeyHandler.findEnumerated(MidiPcmStream.PlayerType_values(), var3.readUnsignedByte()); - long var41 = (var37 << 32) + var39; - boolean var63 = false; - ClanChannel var14 = null; - var14 = var20 >= 0 ? currentClanChannels[var20] : VerticalAlignment.guestClanChannel; - if (var14 == null) { - var63 = true; - } else { - var15 = 0; - - while (true) { - if (var15 >= 100) { - if (var87.isUser && class299.friendSystem.isIgnored(new Username(var21, Language.loginType))) { - var63 = true; - } - break; - } - - if (crossWorldMessageIds[var15] == var41) { - var63 = true; - break; - } - - ++var15; - } + if (ServerPacket.field2670 == var1.serverPacket) { + var21 = var3.readInt(); + InterfaceParent var80 = (InterfaceParent)interfaceParents.get((long)var21); + if (var80 != null) { + class302.closeInterface(var80, true); } - if (!var63) { - crossWorldMessageIds[crossWorldMessageIdsIndex] = var41; - crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; - var43 = AbstractFont.escapeBrackets(DirectByteArrayCopier.readString(var3)); - var16 = var20 >= 0 ? 41 : 44; - if (var87.modIcon != -1) { - class416.addChatMessage(var16, Tile.addImageTag(var87.modIcon) + var21, var43, var14.name); - } else { - class416.addChatMessage(var16, var21, var43, var14.name); - } + if (meslayerContinueWidget != null) { + class159.invalidateWidget(meslayerContinueWidget); + meslayerContinueWidget = null; } var1.serverPacket = null; return true; } - if (ServerPacket.VARCLAN == var1.serverPacket) { - var3.offset += 28; - if (var3.checkCrc()) { - class27.method109(var3, var3.offset - 28); + if (ServerPacket.field2719 == var1.serverPacket) { + class316.method1650(); + var76 = var3.readByte(); + class147 var78 = new class147(var3); + ClanSettings var91; + if (var76 >= 0) { + var91 = currentClanSettings[var76]; + } else { + var91 = class478.guestClanSettings; } - var1.serverPacket = null; - return true; - } + if (var91 == null) { + this.method395(var76); + var1.serverPacket = null; + return true; + } - String var51; - if (ServerPacket.CAM_MOVETO == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - var5 = var3.readUnsignedByteAdd(); - var6 = var3.readUnsignedByteSub(); - if (var6 >= 1 && var6 <= 8) { - if (var51.equalsIgnoreCase("null")) { - var51 = null; - } + if (var78.field1346 > var91.field1385) { + this.method395(var76); + var1.serverPacket = null; + return true; + } - playerMenuActions[var6 - 1] = var51; - playerOptionsPriorities[var6 - 1] = var5 == 0; + if (var78.field1346 < var91.field1385) { + var1.serverPacket = null; + return true; } + var78.method770(var91); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETPLAYERMODEL_BASECOLOUR == var1.serverPacket) { - var68 = var3.readUnsignedShort(); - if (var68 == 65535) { - var68 = -1; + int var15; + int var65; + if (ServerPacket.IF_SETPLAYERMODEL_SELF == var1.serverPacket) { + var9 = var3.readUnsignedByteSub(); + var23 = var9 >> 2; + var11 = var9 & 3; + var24 = field652[var23]; + var65 = var3.readUnsignedShort(); + var6 = var3.readMedium(); + var21 = var6 >> 16; + var5 = var6 >> 8 & 255; + var7 = var21 + (var6 >> 4 & 7); + var8 = var5 + (var6 & 7); + if (var7 >= 0 && var8 >= 0 && var7 < 103 && var8 < 103) { + if (var24 == 0) { + BoundaryObject var68 = class36.scene.method1479(ItemLayer.Client_plane, var7, var8); + if (var68 != null) { + var15 = class232.Entity_unpackID(var68.tag); + if (var23 == 2) { + var68.renderable1 = new DynamicObject(var15, 2, var11 + 4, ItemLayer.Client_plane, var7, var8, var65, false, var68.renderable1); + var68.renderable2 = new DynamicObject(var15, 2, var11 + 1 & 3, ItemLayer.Client_plane, var7, var8, var65, false, var68.renderable2); + } else { + var68.renderable1 = new DynamicObject(var15, var23, var11, ItemLayer.Client_plane, var7, var8, var65, false, var68.renderable1); + } + } + } else if (var24 == 1) { + WallDecoration var67 = class36.scene.method1480(ItemLayer.Client_plane, var7, var8); + if (var67 != null) { + var15 = class232.Entity_unpackID(var67.tag); + if (var23 != 4 && var23 != 5) { + if (var23 == 6) { + var67.renderable1 = new DynamicObject(var15, 4, var11 + 4, ItemLayer.Client_plane, var7, var8, var65, false, var67.renderable1); + } else if (var23 == 7) { + var67.renderable1 = new DynamicObject(var15, 4, (var11 + 2 & 3) + 4, ItemLayer.Client_plane, var7, var8, var65, false, var67.renderable1); + } else if (var23 == 8) { + var67.renderable1 = new DynamicObject(var15, 4, var11 + 4, ItemLayer.Client_plane, var7, var8, var65, false, var67.renderable1); + var67.renderable2 = new DynamicObject(var15, 4, (var11 + 2 & 3) + 4, ItemLayer.Client_plane, var7, var8, var65, false, var67.renderable2); + } + } else { + var67.renderable1 = new DynamicObject(var15, 4, var11, ItemLayer.Client_plane, var7, var8, var65, false, var67.renderable1); + } + } + } else if (var24 == 2) { + GameObject var64 = class36.scene.getGameObject(ItemLayer.Client_plane, var7, var8); + if (var23 == 11) { + var23 = 10; + } + + if (var64 != null) { + var64.renderable = new DynamicObject(class232.Entity_unpackID(var64.tag), var23, var11, ItemLayer.Client_plane, var7, var8, var65, false, var64.renderable); + } + } else if (var24 == 3) { + FloorDecoration var66 = class36.scene.getFloorDecoration(ItemLayer.Client_plane, var7, var8); + if (var66 != null) { + var66.renderable = new DynamicObject(class232.Entity_unpackID(var66.tag), 22, var11, ItemLayer.Client_plane, var7, var8, var65, false, var66.renderable); + } + } } - WorldMapSection1.playSong(var68); var1.serverPacket = null; return true; } + int var16; + int var17; + int var18; + Projectile var19; + int var26; + byte var57; + byte var81; if (ServerPacket.NPC_ANIM_SPECIFIC == var1.serverPacket) { - var68 = var3.method2587(); - if (var68 == 65535) { - var68 = -1; + var15 = var3.readUnsignedShort(); + var17 = var3.readUnsignedByte(); + var6 = var3.readMedium(); + var21 = var6 >> 16; + var5 = var6 >> 8 & 255; + var7 = var21 + (var6 >> 4 & 7); + var8 = var5 + (var6 & 7); + var57 = var3.readByte(); + var16 = var3.readUnsignedShortAddLE(); + var24 = var3.readUnsignedShort(); + var11 = var3.method2610(); + var26 = var3.readUnsignedByteAdd() * 4; + var65 = var3.readUnsignedByte() * 4; + var18 = var3.readUnsignedShortAdd(); + var81 = var3.readByteAdd(); + var9 = var57 + var7; + var23 = var81 + var8; + if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104 && var9 >= 0 && var23 >= 0 && var9 < 104 && var23 < 104 && var24 != 65535) { + var7 = var7 * 128 + 64; + var8 = var8 * 128 + 64; + var9 = var9 * 128 + 64; + var23 = var23 * 128 + 64; + var19 = new Projectile(var24, ItemLayer.Client_plane, var7, var8, WorldMapDecorationType.getTileHeight(var7, var8, ItemLayer.Client_plane) - var65, var15 + cycle, var16 + cycle, var17, var18, var11, var26); + var19.setDestination(var9, var23, WorldMapDecorationType.getTileHeight(var9, var23, ItemLayer.Client_plane) - var26, var15 + cycle); + projectiles.addFirst(var19); } - var5 = var3.method2592(); - Login.playJingle(var68, var5); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_STAT == var1.serverPacket) { - ArchiveDisk.logOut(); + if (ServerPacket.field2724 == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.MAPPROJ_ANIM); var1.serverPacket = null; - return false; + return true; } - if (ServerPacket.MIDI_SONG_WITH_SECONDARY == var1.serverPacket) { - var68 = var3.readUnsignedIntIME(); - var5 = var3.readUnsignedByteSub(); - var6 = var3.method2587(); - var74 = (InterfaceParent)interfaceParents.get((long)var68); - if (var74 != null) { - class92.closeInterface(var74, var6 != var74.group); - } - - class339.ifOpenSub(var68, var6, var5); + Widget var22; + if (ServerPacket.UPDATE_ZONE_FULL_FOLLOWS == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + var5 = var3.readUnsignedByteAdd(); + var6 = var3.readInt(); + var22 = HealthBarDefinition.widgetDefinition.method1733(var6); + ZoneOperation.method1633(var22, var21, var5); + class159.invalidateWidget(var22); var1.serverPacket = null; return true; } - boolean var80; - Widget var89; - if (ServerPacket.LOC_ANIM_SPECIFIC == var1.serverPacket) { - var80 = var3.readUnsignedByteNeg() == 1; - var5 = var3.readInt(); - var89 = class92.getWidget(var5); - if (var80 != var89.isHidden) { - var89.isHidden = var80; - class218.invalidateWidget(var89); + if (ServerPacket.HINT_ARROW == var1.serverPacket) { + var21 = var3.readUnsignedShortLE(); + var5 = var3.readUnsignedIntIME(); + var6 = var3.readUnsignedByteAdd(); + var75 = (InterfaceParent)interfaceParents.get((long)var5); + if (var75 != null) { + class302.closeInterface(var75, var21 != var75.group); } + UserComparator8.openInterface(var5, var21, var6); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETEVENTS == var1.serverPacket) { - var68 = var3.method2587(); + if (ServerPacket.UPDATE_ZONE_PARTIAL_ENCLOSED == var1.serverPacket) { + var21 = var3.readInt(); var5 = var3.readUnsignedShort(); - var6 = var3.readIntIME(); - var7 = var3.readUnsignedShort(); - var93 = class92.getWidget(var6); - if (var7 != var93.modelAngleX || var68 != var93.modelAngleY || var5 != var93.modelZoom) { - var93.modelAngleX = var7; - var93.modelAngleY = var68; - var93.modelZoom = var5; - class218.invalidateWidget(var93); + if (var21 < -70000) { + var5 += 32768; } - var1.serverPacket = null; - return true; - } + if (var21 >= 0) { + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); + } else { + var25 = null; + } - if (ServerPacket.REFLECTIONCHECK_FRIENDLIST == var1.serverPacket) { - var68 = var3.readUnsignedShortLE(); - var5 = var3.readUnsignedIntIME(); - var89 = class92.getWidget(var5); - if (var89.modelType != 1 || var68 != var89.modelId) { - var89.modelType = 1; - var89.modelId = var68; - class218.invalidateWidget(var89); + if (var25 != null) { + for (var7 = 0; var7 < var25.itemIds.length; ++var7) { + var25.itemIds[var7] = 0; + var25.field3077[var7] = 0; + } } - var1.serverPacket = null; - return true; - } + class28.clearItemContainer(var5); + var7 = var3.readUnsignedShort(); + + for (var8 = 0; var8 < var7; ++var8) { + var9 = var3.readUnsignedShortAdd(); + var23 = var3.readUnsignedByteAdd(); + if (var23 == 255) { + var23 = var3.readInt(); + } + + if (var25 != null && var8 < var25.itemIds.length) { + var25.itemIds[var8] = var9; + var25.field3077[var8] = var23; + } - if (ServerPacket.CLANSETTINGS_DELTA == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.MAPPROJ_ANIM); - var1.serverPacket = null; - return true; - } + class185.itemContainerSetItem(var5, var8, var9 - 1, var23); + } - if (ServerPacket.IF1_MODELROTATE == var1.serverPacket) { - var8 = var3.readUnsignedShortLE(); - var6 = var3.readIntME(); - var7 = var3.readIntME(); - var68 = var3.method2587(); - var5 = var3.method2587(); - if (var68 == 65535) { - var68 = -1; + if (var25 != null) { + class159.invalidateWidget(var25); } - ArrayList var98 = new ArrayList(); - var98.add(var68); - class157.method836(var98, var5, var6, var7, var8); + class396.method2042(); + changedItemContainers[++changedItemContainersCount - 1 & 31] = var5 & 32767; var1.serverPacket = null; return true; } - if (ServerPacket.MAPPROJ_ANIM_SPECIFIC == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.LOC_DEL); - var1.serverPacket = null; - return true; - } + Widget var74; + if (ServerPacket.field2674 == var1.serverPacket) { + var21 = var3.readUnsignedIntIME(); + var74 = HealthBarDefinition.widgetDefinition.method1733(var21); - if (ServerPacket.RUN_CLIENTSCRIPT == var1.serverPacket) { - class299.friendSystem.method399(); - field518 = cycleCntr; + for (var6 = 0; var6 < var74.itemIds.length; ++var6) { + var74.itemIds[var6] = -1; + var74.itemIds[var6] = 0; + } + + class159.invalidateWidget(var74); var1.serverPacket = null; return true; } - String var94; + long var27; + long var29; + String var34; if (ServerPacket.NPC_HEADICON_SPECIFIC == var1.serverPacket) { - byte[] var54 = new byte[var1.serverPacketLength]; - var3.method2520(var54, 0, var54.length); - Buffer var77 = new Buffer(var54); - var94 = var77.readStringCp1252NullTerminated(); - class30.openURL(var94, true, false); - var1.serverPacket = null; - return true; - } + var52 = var3.readStringCp1252NullTerminated(); + var27 = (long)var3.readUnsignedShort(); + var29 = (long)var3.readMedium(); + PlayerType var90 = (PlayerType)class12.findEnumerated(class320.PlayerType_values(), var3.readUnsignedByte()); + long var32 = (var27 << 32) + var29; + var82 = false; + + for (var65 = 0; var65 < 100; ++var65) { + if (crossWorldMessageIds[var65] == var32) { + var82 = true; + break; + } + } - if (ServerPacket.IF_SETPLAYERMODEL_BODYTYPE == var1.serverPacket) { - World var53 = new World(); - var53.host = var3.readStringCp1252NullTerminated(); - var53.id = var3.readUnsignedShort(); - var5 = var3.readInt(); - var53.properties = var5; - if (var53.isDeadman()) { - var53.field679 = "beta"; + if (class12.friendSystem.isIgnored(new Username(var52, class89.loginType))) { + var82 = true; } - MusicSong.updateGameState(45); - var2.close(); - var2 = null; - ModeWhere.changeWorld(var53); - var1.serverPacket = null; - return false; - } + if (!var82 && field479 == 0) { + crossWorldMessageIds[crossWorldMessageIdsIndex] = var32; + crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; + var34 = AbstractFont.escapeBrackets(class20.method77(class128.readString(var3))); + byte var87; + if (var90.isPrivileged) { + var87 = 7; + } else { + var87 = 3; + } + + if (var90.modIcon != -1) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var87, FloorUnderlayDefinition.addImageTag(var90.modIcon) + var52, var34); + } else { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var87, var52, var34); + } + } - if (ServerPacket.MIDI_JINGLE == var1.serverPacket) { - rebootTimer = var3.readUnsignedShortLE() * 30; - field528 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.CHAT_FILTER_SETTINGS == var1.serverPacket) { - var68 = var3.readUnsignedShort(); - if (var68 == 65535) { - var68 = -1; - } - - rootInterface = var68; - this.resizeRoot(false); - class19.Widget_resetModelFrames(var68); - MoveSpeed.runWidgetOnLoadListener(rootInterface); - - for (var5 = 0; var5 < 100; ++var5) { - field407[var5] = true; - } - + if (ServerPacket.IF_SETPLAYERMODEL_BASECOLOUR == var1.serverPacket) { + ObjTypeCustomisation.privateChatMode = WorldMapArea.method1204(var3.readUnsignedByte()); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETCOLOUR == var1.serverPacket) { + if (ServerPacket.UPDATE_FRIENDLIST == var1.serverPacket) { isCameraLocked = true; field400 = false; - field402 = true; - Players.cameraMoveToX = var3.readUnsignedByte(); - class33.cameraMoveToY = var3.readUnsignedByte(); - var68 = var3.readUnsignedShort(); - var5 = var3.readUnsignedShort(); - field401 = var3.readBoolean(); - var6 = var3.readUnsignedByte(); - var7 = Players.cameraMoveToX * 128 + 64; - var8 = class33.cameraMoveToY * 128 + 64; - boolean var62 = false; - boolean var60 = false; - if (field401) { - var9 = class133.cameraY; - var10 = class18.getTileHeight(var7, var8, HealthBar.Client_plane) - var68; - } else { - var9 = class18.getTileHeight(NPCComposition.cameraX, class139.cameraZ, HealthBar.Client_plane) - class133.cameraY; - var10 = var68; - } - - field642 = new class477(NPCComposition.cameraX, class139.cameraZ, var9, var7, var8, var10, var5, var6); + field404 = true; + var21 = class319.method1705(var3.readShort() & 2027); + var5 = class240.method1293(var3.readShort() & 2027); + var6 = var3.readUnsignedShort(); + var7 = var3.readUnsignedByte(); + field642 = new class490(Varcs.cameraPitch, var5, var6, var7); + field643 = new class490(class192.cameraYaw, var21, var6, var7); var1.serverPacket = null; return true; } - if (ServerPacket.PLAYER_SPOTANIM_SPECIFIC == var1.serverPacket) { - class271.loadRegions(false, var1.packetBuffer); + if (ServerPacket.field2656 == var1.serverPacket) { + rebootTimer = var3.readUnsignedShort() * 30; + field522 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.IF_OPENTOP == var1.serverPacket) { - var68 = var3.method2598(); - var76 = class92.getWidget(var68); - - for (var6 = 0; var6 < var76.itemIds.length; ++var6) { - var76.itemIds[var6] = -1; - var76.itemIds[var6] = 0; - } - - class218.invalidateWidget(var76); + if (ServerPacket.MIDI_SONG_WITH_SECONDARY == var1.serverPacket) { + var21 = var3.readInt(); + var74 = HealthBarDefinition.widgetDefinition.method1733(var21); + var74.modelType = 3; + var74.modelId = class229.localPlayer.appearance.getChatHeadId(); + class159.invalidateWidget(var74); var1.serverPacket = null; return true; } - if (ServerPacket.MINIMAP_TOGGLE == var1.serverPacket) { - var68 = var3.readIntME(); - var5 = var3.method2598(); - var89 = class92.getWidget(var5); - if (var89 != null && var89.type == 0) { - if (var68 > var89.scrollHeight - var89.height) { - var68 = var89.scrollHeight - var89.height; - } - - if (var68 < 0) { - var68 = 0; - } - - if (var68 != var89.scrollY) { - var89.scrollY = var68; - class218.invalidateWidget(var89); - } + if (ServerPacket.UPDATE_STAT == var1.serverPacket) { + var21 = var3.readShortLE(); + var5 = var3.readInt(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var21 != var25.sequenceId || var21 == -1) { + var25.sequenceId = var21; + var25.modelFrame = 0; + var25.modelFrameCycle = 0; + class159.invalidateWidget(var25); } var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_REBOOT_TIMER == var1.serverPacket) { - tradeChatMode = var3.readUnsignedByte(); - publicChatMode = var3.readUnsignedByteAdd(); + if (ServerPacket.MIDI_SONG == var1.serverPacket) { + class396.method2042(); + runEnergy = var3.readUnsignedShort(); + field522 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.CLANCHANNEL_FULL == var1.serverPacket) { - isCameraLocked = true; - field400 = false; - field404 = false; - PendingSpawn.cameraLookAtX = var3.readUnsignedByte(); - VarbitComposition.cameraLookAtY = var3.readUnsignedByte(); - MusicPatchNode2.cameraLookAtHeight = var3.readUnsignedShort(); - class33.cameraLookAtSpeed = var3.readUnsignedByte(); - WorldMapElement.cameraLookAtAcceleration = var3.readUnsignedByte(); - if (WorldMapElement.cameraLookAtAcceleration >= 100) { - var68 = PendingSpawn.cameraLookAtX * 128 + 64; - var5 = VarbitComposition.cameraLookAtY * 128 + 64; - var6 = class18.getTileHeight(var68, var5, HealthBar.Client_plane) - MusicPatchNode2.cameraLookAtHeight; - var7 = var68 - NPCComposition.cameraX; - var8 = var6 - class133.cameraY; - var9 = var5 - class139.cameraZ; - var10 = (int)Math.sqrt((double)(var9 * var9 + var7 * var7)); - class129.cameraPitch = (int)(Math.atan2((double)var8, (double)var10) * 325.9490051269531D) & 2047; - UserComparator10.cameraYaw = (int)(Math.atan2((double)var7, (double)var9) * -325.9490051269531D) & 2047; - if (class129.cameraPitch < 128) { - class129.cameraPitch = 128; - } - - if (class129.cameraPitch > 383) { - class129.cameraPitch = 383; - } + if (ServerPacket.REFLECTIONCHECK_FRIENDLIST == var1.serverPacket) { + var76 = var3.readByteNeg(); + var5 = var3.readUnsignedShort(); + Varps.Varps_temp[var5] = var76; + if (Varps.Varps_main[var5] != var76) { + Varps.Varps_main[var5] = var76; } + Projectile.changeGameOptions(var5); + changedVarps[++changedVarpCount - 1 & 31] = var5; var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETANGLE == var1.serverPacket) { - return this.method372(var1, 1); + if (ServerPacket.field2756 == var1.serverPacket) { + return this.method383(var1, 2); } - if (ServerPacket.IF_OPENSUB == var1.serverPacket) { + if (ServerPacket.SET_PLAYER_OP == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.field2622); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.UPDATE_IGNORELIST == var1.serverPacket) { hintArrowType = var3.readUnsignedByte(); if (hintArrowType == 1) { hintArrowNpcIndex = var3.readUnsignedShort(); @@ -4306,145 +4148,243 @@ final boolean method374(PacketWriter var1) { return true; } - if (ServerPacket.GAMEFRAME_FULL == var1.serverPacket) { - WorldMapSection2.method1410(); - var20 = var3.readByte(); - class146 var75 = new class146(var3); - ClanSettings var96; - if (var20 >= 0) { - var96 = currentClanSettings[var20]; - } else { - var96 = Players.guestClanSettings; + if (ServerPacket.RUN_CLIENTSCRIPT == var1.serverPacket) { + if (varclan == null) { + varclan = new class466(Players.Widget_cachedFonts); } - if (var96 == null) { - this.method384(var20); - var1.serverPacket = null; - return true; + class535 var53 = Players.Widget_cachedFonts.method2340(var3); + varclan.field3929.vmethod8143(var53.field4244, var53.field4243); + field571[++field510 - 1 & 31] = var53.field4244; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.UPDATE_RUNWEIGHT == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + var5 = var3.readIntME(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var25.modelType != 1 || var21 != var25.modelId) { + var25.modelType = 1; + var25.modelId = var21; + class159.invalidateWidget(var25); } - if (var75.field1347 > var96.field1388) { - this.method384(var20); - var1.serverPacket = null; - return true; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.MESSAGE_GAME == var1.serverPacket) { + var5 = var3.readUnsignedShortLE(); + var7 = var3.readUnsignedByteAdd(); + var6 = var3.readUnsignedIntME(); + var21 = var3.readUnsignedShortAdd(); + Player var95; + if (var21 == localPlayerIndex) { + var95 = class229.localPlayer; + } else { + var95 = players[var21]; } - if (var75.field1347 < var96.field1388) { - var1.serverPacket = null; - return true; + if (var95 != null) { + var95.updateSpotAnimation(var7, var5, var6 >> 16, var6 & 65535); } - var75.method781(var96); var1.serverPacket = null; return true; } - if (ServerPacket.LOC_ANIM == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.OBJ_DEL_LEGACY); + if (ServerPacket.MIDI_JINGLE == var1.serverPacket) { + var21 = var3.readUnsignedShortAdd(); + WorldMapEvent.method1383(var21); + changedItemContainers[++changedItemContainersCount - 1 & 31] = var21 & 32767; var1.serverPacket = null; return true; } - if (ServerPacket.CAM_LOOKAT_EASED_ANGLE_ABSOLUTE == var1.serverPacket) { - var68 = var3.method2588(); + if (ServerPacket.field2698 == var1.serverPacket) { + var21 = var3.readInt(); var5 = var3.readInt(); - var6 = var3.readShort(); - var71 = class92.getWidget(var5); - if (var6 != var71.rawX || var68 != var71.rawY || var71.xAlignment != 0 || var71.yAlignment != 0) { - var71.rawX = var6; - var71.rawY = var68; - var71.xAlignment = 0; - var71.yAlignment = 0; - class218.invalidateWidget(var71); - this.alignWidget(var71); - if (var71.type == 0) { - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var5 >> 16], var71, false); + var6 = class167.getGcDuration(); + PacketBufferNode var79 = class113.getPacketBufferNode(ClientPacket.OPHELDD, packetWriter.isaacCipher); + var79.packetBuffer.writeIntIME(var21); + var79.packetBuffer.writeIntME(var5); + var79.packetBuffer.writeByteNeg(var6); + var79.packetBuffer.writeByte(GameEngine.fps); + packetWriter.addNode(var79); + var1.serverPacket = null; + return true; + } + + String var84; + if (ServerPacket.LOGIN_SCREEN_PACKET == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + var5 = var3.readUnsignedByteNeg(); + var84 = var3.readStringCp1252NullTerminated(); + if (var21 >= 1 && var21 <= 8) { + if (var84.equalsIgnoreCase("null")) { + var84 = null; } + + playerMenuActions[var21 - 1] = var84; + playerOptionsPriorities[var21 - 1] = var5 == 0; } var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETPLAYERHEAD == var1.serverPacket) { - var68 = var3.readIntIME(); - var5 = var3.readUnsignedIntIME(); - var89 = class92.getWidget(var5); - ReflectionCheck.method174(var89, var68); - class218.invalidateWidget(var89); + if (ServerPacket.MESSAGE_CLANCHANNEL_SYSTEM == var1.serverPacket) { + class12.friendSystem.method409(); + field524 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.NEW_PACKET_CAM_RESET_V2 == var1.serverPacket) { - var68 = var3.readUnsignedShort(); - var5 = var3.method2598(); - var89 = class92.getWidget(var5); - if (var89.modelType != 6 || var68 != var89.modelId) { - var89.modelType = 6; - var89.modelId = var68; - class218.invalidateWidget(var89); + if (ServerPacket.IF_SETANIM == var1.serverPacket) { + varclan = new class466(Players.Widget_cachedFonts); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.VARCLAN_ENABLE == var1.serverPacket) { + var1.serverPacket = null; + return true; + } + + if (ServerPacket.UPDATE_REBOOT_TIMER == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + var5 = var3.readUnsignedByte(); + var6 = var3.readUnsignedByte(); + var7 = var3.readUnsignedByte(); + cameraShaking[var21] = true; + cameraShakeIntensity[var21] = var5; + cameraMoveIntensity[var21] = var6; + cameraShakeSpeed[var21] = var7; + cameraShakeCycle[var21] = 0; + var1.serverPacket = null; + return true; + } + + Widget var93; + if (ServerPacket.UPDATE_UID192 == var1.serverPacket) { + var21 = var3.readUnsignedShortAdd(); + var5 = var3.readInt(); + var6 = var3.readUnsignedShortLE(); + var7 = var3.readUnsignedShortAddLE(); + var93 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var21 != var93.modelAngleX || var6 != var93.modelAngleY || var7 != var93.modelZoom) { + var93.modelAngleX = var21; + var93.modelAngleY = var6; + var93.modelZoom = var7; + class159.invalidateWidget(var93); } var1.serverPacket = null; return true; } - if (ServerPacket.SEND_PING == var1.serverPacket) { - byte var58 = var3.readByteAdd(); - var85 = var3.readUnsignedByteNeg() * 4; - byte var57 = var3.readByteAdd(); - var59 = var3.readUnsignedShortLE(); - var56 = var3.method2548(); - var16 = var3.readIntME(); - var13 = var3.readUnsignedByteAdd() * 4; - var15 = var3.method2587(); - var6 = var3.method2591(); - var68 = var6 >> 16; - var5 = var6 >> 8 & 255; - var7 = var68 + (var6 >> 4 & 7); - var8 = var5 + (var6 & 7); - int var18 = var3.readUnsignedByte(); - int var17 = var3.readUnsignedByteSub(); - var9 = var58 + var7; - var10 = var57 + var8; - if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104 && var9 >= 0 && var10 >= 0 && var9 < 104 && var10 < 104 && var59 != 65535) { - var7 = var7 * 128 + 64; - var8 = var8 * 128 + 64; - var9 = var9 * 128 + 64; - var10 = var10 * 128 + 64; - Projectile var19 = new Projectile(var59, HealthBar.Client_plane, var7, var8, class18.getTileHeight(var7, var8, HealthBar.Client_plane) - var13, var15 + cycle, var16 + cycle, var17, var18, var56, var85); - var19.setDestination(var9, var10, class18.getTileHeight(var9, var10, HealthBar.Client_plane) - var85, var15 + cycle); - projectiles.addFirst(var19); + if (ServerPacket.IF_SETNPCHEAD == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.field2620); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.UPDATE_SITESETTINGS == var1.serverPacket) { + var21 = var3.readInt(); + if (var21 != field367) { + field367 = var21; + VerticalAlignment.method960(); } var1.serverPacket = null; return true; } - if (ServerPacket.VARCLAN_DISABLE == var1.serverPacket) { - class139.varclan = new class454(SwapSongTask.HitSplatDefinition_cached); + if (ServerPacket.CLANSETTINGS_FULL == var1.serverPacket) { + class12.friendSystem.readUpdate(var3, var1.serverPacketLength); + field524 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.FRIENDLIST_LOADED == var1.serverPacket) { - ObjectSound.field686 = var3.readUnsignedByteNeg(); - class125.field1193 = var3.readUnsignedByteSub(); + if (ServerPacket.MESSAGE_FRIENDCHANNEL == var1.serverPacket) { + var98 = var3.readUnsignedByte() == 1; + if (var98) { + class489.field3990 = SpotAnimationDefinition.method962() - var3.readLong(); + class6.grandExchangeEvents = new GrandExchangeEvents(var3, true); + } else { + class6.grandExchangeEvents = null; + } + + field527 = cycleCntr; var1.serverPacket = null; return true; } - if (ServerPacket.MIDI_SONG_STOP == var1.serverPacket) { - for (var68 = 0; var68 < players.length; ++var68) { - if (players[var68] != null) { - players[var68].sequence = -1; + if (ServerPacket.REBUILD_REGION_NORMAL == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + if (var21 == 65535) { + var21 = -1; + } + + rootInterface = var21; + this.method389(false); + class130.method713(var21); + class106.runWidgetOnLoadListener(rootInterface); + + for (var5 = 0; var5 < 100; ++var5) { + field407[var5] = true; + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2642 == var1.serverPacket) { + var21 = var3.readUnsignedShortAddLE(); + var6 = var3.readUnsignedByteNeg(); + var5 = var3.readUnsignedShortLE(); + if (var5 == 65535) { + var5 = -1; + } + + NPC var77 = npcs[var21]; + if (var77 != null) { + if (var5 == var77.sequence && var5 != -1) { + var8 = DynamicObject.SequenceDefinition_get(var5).replyMode; + if (var8 == 1) { + var77.sequenceFrame = 0; + var77.sequenceFrameCycle = 0; + var77.sequenceDelay = var6; + var77.currentSequenceFrameIndex = 0; + } else if (var8 == 2) { + var77.currentSequenceFrameIndex = 0; + } + } else if (var5 == -1 || var77.sequence == -1 || DynamicObject.SequenceDefinition_get(var5).forcedPriority >= DynamicObject.SequenceDefinition_get(var77.sequence).forcedPriority) { + var77.sequence = var5; + var77.sequenceFrame = 0; + var77.sequenceFrameCycle = 0; + var77.sequenceDelay = var6; + var77.currentSequenceFrameIndex = 0; + var77.field1029 = var77.pathLength; + } + } + + var1.serverPacket = null; + return true; + } + + if (ServerPacket.NEW_PACKET_CAM_RESET_V2 == var1.serverPacket) { + for (var21 = 0; var21 < players.length; ++var21) { + if (players[var21] != null) { + players[var21].sequence = -1; } } - for (var68 = 0; var68 < npcs.length; ++var68) { - if (npcs[var68] != null) { - npcs[var68].sequence = -1; + for (var21 = 0; var21 < npcs.length; ++var21) { + if (npcs[var21] != null) { + npcs[var21].sequence = -1; } } @@ -4452,895 +4392,1053 @@ final boolean method374(PacketWriter var1) { return true; } + if (ServerPacket.field2753 == var1.serverPacket) { + class90.updateNpcs(false, var3); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.field2713 == var1.serverPacket) { + class13.method51(); + var1.serverPacket = null; + return false; + } + + if (ServerPacket.OBJ_ADD == var1.serverPacket) { + class396.method2042(); + weight = var3.readShort(); + field522 = cycleCntr; + var1.serverPacket = null; + return true; + } + + if (ServerPacket.PLAYER_INFO == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.LOC_DEL); + var1.serverPacket = null; + return true; + } + if (ServerPacket.REBUILD_REGION == var1.serverPacket) { - Frames.updateNpcs(false, var3); + isCameraLocked = true; + field400 = false; + field402 = false; + ScriptFrame.cameraLookAtX = var3.readUnsignedByte(); + class216.cameraLookAtY = var3.readUnsignedByte(); + class127.cameraLookAtHeight = var3.readUnsignedShort(); + WorldMapIcon_0.cameraLookAtSpeed = var3.readUnsignedByte(); + class1.cameraLookAtAcceleration = var3.readUnsignedByte(); + if (class1.cameraLookAtAcceleration >= 100) { + ViewportMouse.cameraX = ScriptFrame.cameraLookAtX * 128 + 64; + class36.cameraZ = class216.cameraLookAtY * 128 + 64; + SecureRandomFuture.cameraY = WorldMapDecorationType.getTileHeight(ViewportMouse.cameraX, class36.cameraZ, ItemLayer.Client_plane) - class127.cameraLookAtHeight; + } + var1.serverPacket = null; return true; } if (ServerPacket.SPOTANIM_SPECIFIC == var1.serverPacket) { - NPCComposition.readReflectionCheck(var3, var1.serverPacketLength); + return this.method384(var1); + } + + if (ServerPacket.field2736 == var1.serverPacket) { + destinationX = var3.readUnsignedByte(); + if (destinationX == 255) { + destinationX = 0; + } + + destinationY = var3.readUnsignedByte(); + if (destinationY == 255) { + destinationY = 0; + } + var1.serverPacket = null; return true; } - if (ServerPacket.REFLECTION_CHECK == var1.serverPacket) { - Frames.updateNpcs(true, var3); + if (ServerPacket.field2694 == var1.serverPacket) { + var3.offset += 28; + if (var3.checkCrc()) { + class336.method1741(var3, var3.offset - 28); + } + var1.serverPacket = null; return true; } - if (ServerPacket.VARP_SMALL == var1.serverPacket) { - var68 = var3.readUnsignedByteAdd(); - var5 = var3.readUnsignedByteAdd(); - var6 = var3.method2598(); - var71 = class92.getWidget(var6); - Tiles.method460(var71, var5, var68); - class218.invalidateWidget(var71); + long var36; + if (ServerPacket.field2673 == var1.serverPacket) { + var76 = var3.readByte(); + var27 = (long)var3.readUnsignedShort(); + var29 = (long)var3.readMedium(); + var36 = (var27 << 32) + var29; + var62 = false; + ClanChannel var96 = var76 >= 0 ? currentClanChannels[var76] : ItemContainer.guestClanChannel; + if (var96 == null) { + var62 = true; + } else { + for (var65 = 0; var65 < 100; ++var65) { + if (var36 == crossWorldMessageIds[var65]) { + var62 = true; + break; + } + } + } + + if (!var62) { + crossWorldMessageIds[crossWorldMessageIdsIndex] = var36; + crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; + var34 = class128.readString(var3); + var26 = var76 >= 0 ? 43 : 46; + ArchiveLoader.addChatMessage(var26, "", var34, var96.name); + } + var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_INV_CLEAR == var1.serverPacket) { - var5 = var3.readUnsignedShort(); - var68 = var3.readIntME(); - Script.method445(var68, var5); + if (ServerPacket.UPDATE_INV_FULL == var1.serverPacket) { + var8 = var3.readUnsignedShortAddLE(); + var5 = var3.readUnsignedShortLE(); + var7 = var3.readUnsignedShortAdd(); + var6 = var3.readUnsignedShortLE(); + var21 = var3.readUnsignedShortAddLE(); + if (var21 == 65535) { + var21 = -1; + } + + ArrayList var31 = new ArrayList(); + var31.add(var21); + class135.method734(var31, var5, var6, var7, var8); var1.serverPacket = null; return true; } - if (ServerPacket.SET_MAP_FLAG == var1.serverPacket) { - var80 = var3.readBoolean(); - if (var80) { - if (class390.field3656 == null) { - class390.field3656 = new class369(); - } - } else { - class390.field3656 = null; + if (ServerPacket.OBJ_DEL_LEGACY == var1.serverPacket) { + var21 = var3.readUnsignedIntIME(); + var20 = var3.readStringCp1252NullTerminated(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); + if (!var20.equals(var25.text)) { + var25.text = var20; + class159.invalidateWidget(var25); } var1.serverPacket = null; return true; } - if (ServerPacket.MIDI_SONG_LEGACY == var1.serverPacket) { - isCameraLocked = true; - field400 = false; - field404 = true; - var68 = class7.method18(var3.readShort() & 2027); - var5 = UserComparator8.method674(var3.readShort() & 2027); - var6 = var3.readUnsignedShort(); - var7 = var3.readUnsignedByte(); - field647 = new class478(class129.cameraPitch, var5, var6, var7); - field646 = new class478(UserComparator10.cameraYaw, var68, var6, var7); + if (ServerPacket.field2757 == var1.serverPacket) { + var5 = var3.readUnsignedShort(); + var7 = var3.readUnsignedShortAdd(); + var21 = var3.readUnsignedShortLE(); + var6 = var3.readUnsignedShortAddLE(); + class191.someMusicMethod(var21, var5, var6, var7); var1.serverPacket = null; return true; } - if (ServerPacket.TRADING_POST_RESULTS == var1.serverPacket) { - return this.method373(var1); + if (ServerPacket.field2745 == var1.serverPacket) { + class12.friendSystem.ignoreList.read(var3, var1.serverPacketLength); + DelayFadeTask.FriendSystem_invalidateIgnoreds(); + field524 = cycleCntr; + var1.serverPacket = null; + return true; } - if (ServerPacket.VARP_LARGE == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.OBJ_COUNT); + if (ServerPacket.MESSAGE_PRIVATE == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.field2618); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETNPCHEAD == var1.serverPacket) { - var68 = var3.readUnsignedIntIME(); - var5 = var3.readUnsignedShort(); - if (var5 == 65535) { - var5 = -1; - } - - var6 = var3.readIntIME(); - var7 = var3.method2587(); - if (var7 == 65535) { - var7 = -1; - } + String var40; + if (ServerPacket.PREFETCH_GAMEOBJECTS == var1.serverPacket) { + var52 = var3.readStringCp1252NullTerminated(); + var27 = var3.readLong(); + var29 = (long)var3.readUnsignedShort(); + var36 = (long)var3.readMedium(); + PlayerType var97 = (PlayerType)class12.findEnumerated(class320.PlayerType_values(), var3.readUnsignedByte()); + var63 = (var29 << 32) + var36; + boolean var85 = false; - for (var8 = var7; var8 <= var5; ++var8) { - var27 = ((long)var6 << 32) + (long)var8; - Node var99 = widgetFlags.get(var27); - if (var99 != null) { - var99.remove(); + for (var15 = 0; var15 < 100; ++var15) { + if (crossWorldMessageIds[var15] == var63) { + var85 = true; + break; } - - widgetFlags.put(new IntegerNode(var68), var27); } - var1.serverPacket = null; - return true; - } - - if (ServerPacket.PREFETCH_GAMEOBJECTS == var1.serverPacket) { - var7 = var3.readUnsignedShortLE(); - var5 = var3.method2587(); - if (var5 == 65535) { - var5 = -1; + if (var97.isUser && class12.friendSystem.isIgnored(new Username(var52, class89.loginType))) { + var85 = true; } - var8 = var3.method2587(); - var6 = var3.readIntME(); - var9 = var3.readIntME(); - var68 = var3.readUnsignedShortLE(); - if (var68 == 65535) { - var68 = -1; + if (!var85 && field479 == 0) { + crossWorldMessageIds[crossWorldMessageIdsIndex] = var63; + crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; + var40 = AbstractFont.escapeBrackets(class20.method77(class128.readString(var3))); + if (var97.modIcon != -1) { + ArchiveLoader.addChatMessage(9, FloorUnderlayDefinition.addImageTag(var97.modIcon) + var52, var40, HitSplatDefinition.base37DecodeLong(var27)); + } else { + ArchiveLoader.addChatMessage(9, var52, var40, HitSplatDefinition.base37DecodeLong(var27)); + } } - ArrayList var86 = new ArrayList(); - var86.add(var68); - var86.add(var5); - class157.method836(var86, var6, var7, var8, var9); var1.serverPacket = null; return true; } - if (ServerPacket.HINT_ARROW == var1.serverPacket) { - class113.process(); - var68 = var3.readUnsignedByteSub(); - var5 = var3.readUnsignedByteAdd(); - var6 = var3.method2598(); - experience[var5] = var6; - currentLevels[var5] = var68; - levels[var5] = 1; + if (ServerPacket.IF_OPENTOP == var1.serverPacket) { + var52 = var3.readStringCp1252NullTerminated(); + Object[] var73 = new Object[var52.length() + 1]; - for (var7 = 0; var7 < 98; ++var7) { - if (var6 >= Skills.Skills_experienceTable[var7]) { - levels[var5] = var7 + 2; + for (var6 = var52.length() - 1; var6 >= 0; --var6) { + if (var52.charAt(var6) == 's') { + var73[var6 + 1] = var3.readStringCp1252NullTerminated(); + } else { + var73[var6 + 1] = new Integer(var3.readInt()); } } - changedSkills[++changedSkillsCount - 1 & 31] = var5; + var73[0] = new Integer(var3.readInt()); + ScriptEvent var89 = new ScriptEvent(); + var89.args = var73; + class157.runScriptEvent(var89); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_SITESETTINGS == var1.serverPacket) { - var68 = var3.readUnsignedShort(); - var5 = var3.readUnsignedByte(); - var6 = var3.readUnsignedShort(); - class27.queueSoundEffect(var68, var5, var6); + if (ServerPacket.field2722 == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + WorldMapIcon_1.method1194(var21); var1.serverPacket = null; return true; } - if (ServerPacket.CLANSETTINGS_FULL == var1.serverPacket) { - var68 = var3.readUnsignedByte(); - var5 = var3.readIntIME(); - var89 = class92.getWidget(var5); - class135.method742(var89, VarbitComposition.localPlayer.appearance.field2916, var68); - class218.invalidateWidget(var89); + if (ServerPacket.VARCLAN_DISABLE == var1.serverPacket) { + if (rootInterface != -1) { + class514.runIntfCloseListener(rootInterface, 0); + } + var1.serverPacket = null; return true; } - if (ServerPacket.NPC_SPOTANIM_SPECIFIC == var1.serverPacket) { - var68 = var3.readIntIME(); - var5 = var3.readUnsignedShort(); - var89 = class92.getWidget(var68); - if (var89.modelType != 2 || var5 != var89.modelId) { - var89.modelType = 2; - var89.modelId = var5; - class218.invalidateWidget(var89); + if (ServerPacket.OBJ_COUNT == var1.serverPacket && isCameraLocked) { + field400 = true; + field404 = false; + field402 = false; + + for (var21 = 0; var21 < 5; ++var21) { + cameraShaking[var21] = false; } var1.serverPacket = null; return true; } - if (ServerPacket.TRADING_POST_UPDATE == var1.serverPacket) { - var68 = var3.readUnsignedByte(); - Script.forceDisconnect(var68); + if (ServerPacket.field2740 == var1.serverPacket) { + var21 = var3.readUnsignedShortLE(); + var5 = var3.readInt(); + var6 = var21 >> 10 & 31; + var7 = var21 >> 5 & 31; + var8 = var21 & 31; + var9 = (var7 << 11) + (var6 << 19) + (var8 << 3); + Widget var58 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var9 != var58.color) { + var58.color = var9; + class159.invalidateWidget(var58); + } + var1.serverPacket = null; - return false; + return true; } + NPC var94; if (ServerPacket.UPDATE_INV_STOP_TRANSMIT == var1.serverPacket) { - class113.process(); - runEnergy = var3.readUnsignedShort(); - field528 = cycleCntr; + var21 = var3.readUnsignedShortAddLE(); + var94 = npcs[var21]; + var6 = var3.readUnsignedShortAddLE(); + var5 = var3.readUnsignedIntIME(); + var7 = var3.readUnsignedByteAdd(); + if (var94 != null) { + var94.updateSpotAnimation(var7, var6, var5 >> 16, var5 & 65535); + } + var1.serverPacket = null; return true; } - boolean var61; - if (ServerPacket.LOGIN_SCREEN_PACKET == var1.serverPacket) { - var68 = var3.readIntIME(); - var61 = var3.readUnsignedByte() == 1; - var89 = class92.getWidget(var68); - class160.method846(var89, VarbitComposition.localPlayer.appearance, var61); - class218.invalidateWidget(var89); + if (ServerPacket.MESSAGE_CLANCHANNEL == var1.serverPacket) { + field525 = cycleCntr; + var76 = var3.readByte(); + if (var1.serverPacketLength == 1) { + if (var76 >= 0) { + currentClanChannels[var76] = null; + } else { + ItemContainer.guestClanChannel = null; + } + + var1.serverPacket = null; + return true; + } + + if (var76 >= 0) { + currentClanChannels[var76] = new ClanChannel(var3); + } else { + ItemContainer.guestClanChannel = new ClanChannel(var3); + } + var1.serverPacket = null; return true; } if (ServerPacket.RESET_ANIMS == var1.serverPacket) { - var20 = var3.readByteNeg(); + var21 = var3.readUnsignedIntME(); var5 = var3.readUnsignedShortLE(); - Varps.Varps_temp[var5] = var20; - if (Varps.Varps_main[var5] != var20) { - Varps.Varps_main[var5] = var20; + short var60 = (short)var3.readShort(); + var7 = var3.readUnsignedByteAdd(); + var94 = npcs[var5]; + if (var94 != null) { + var94.method586(var7, var21, var60); } - WorldMapDecoration.changeGameOptions(var5); - changedVarps[++changedVarpCount - 1 & 31] = var5; var1.serverPacket = null; return true; } - boolean var12; if (ServerPacket.CAM_SHAKE == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - var23 = (long)var3.readUnsignedShort(); - var25 = (long)var3.readMedium(); - PlayerType var44 = (PlayerType)KeyHandler.findEnumerated(MidiPcmStream.PlayerType_values(), var3.readUnsignedByte()); - long var46 = (var23 << 32) + var25; - var12 = false; - - for (var13 = 0; var13 < 100; ++var13) { - if (var46 == crossWorldMessageIds[var13]) { - var12 = true; - break; - } - } - - if (class299.friendSystem.isIgnored(new Username(var51, Language.loginType))) { - var12 = true; - } - - if (!var12 && field486 == 0) { - crossWorldMessageIds[crossWorldMessageIdsIndex] = var46; - crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; - var30 = AbstractFont.escapeBrackets(World.method385(DirectByteArrayCopier.readString(var3))); - byte var83; - if (var44.isPrivileged) { - var83 = 7; - } else { - var83 = 3; - } + class18.field55 = var3.readUnsignedByteNeg(); + class6.field6 = var3.readUnsignedByteSub(); - if (var44.modIcon != -1) { - MouseHandler.addGameMessage(var83, Tile.addImageTag(var44.modIcon) + var51, var30); - } else { - MouseHandler.addGameMessage(var83, var51, var30); - } + while (var3.offset < var1.serverPacketLength) { + var21 = var3.readUnsignedByte(); + ZoneOperation var72 = class520.method2524()[var21]; + class106.processZoneOperation(var72); } var1.serverPacket = null; return true; } - if (ServerPacket.NEW_PACK_215 == var1.serverPacket) { - if (class139.varclan == null) { - class139.varclan = new class454(SwapSongTask.HitSplatDefinition_cached); + if (ServerPacket.RESET_CLIENT_VARCACHE == var1.serverPacket) { + field525 = cycleCntr; + var76 = var3.readByte(); + class161 var71 = new class161(var3); + ClanChannel var88; + if (var76 >= 0) { + var88 = currentClanChannels[var76]; + } else { + var88 = ItemContainer.guestClanChannel; + } + + if (var88 == null) { + this.method394(var76); + var1.serverPacket = null; + return true; + } + + if (var71.field1409 > var88.field1421) { + this.method394(var76); + var1.serverPacket = null; + return true; + } + + if (var71.field1409 < var88.field1421) { + var1.serverPacket = null; + return true; } - class523 var52 = SwapSongTask.HitSplatDefinition_cached.method2324(var3); - class139.varclan.field3899.vmethod8143(var52.field4216, var52.field4215); - field572[++field512 - 1 & 31] = var52.field4216; + var71.method844(var88); var1.serverPacket = null; return true; } - if (ServerPacket.SYNC_CLIENT_VARCACHE == var1.serverPacket) { + if (ServerPacket.field2709 == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.OBJ_DEL); var1.serverPacket = null; return true; } - NPC var91; if (ServerPacket.IF_CLOSESUB == var1.serverPacket) { - short var82 = (short)var3.method2588(); - var5 = var3.readUnsignedByte(); - var6 = var3.readUnsignedShort(); - var7 = var3.readUnsignedIntIME(); - var91 = npcs[var6]; - if (var91 != null) { - var91.method589(var5, var7, var82); - } - + class106.processZoneOperation(ZoneOperation.field2616); var1.serverPacket = null; return true; } - if (ServerPacket.REBUILD_REGION_NORMAL == var1.serverPacket) { - var68 = var3.readInt(); - if (var68 != field476) { - field476 = var68; - WorldMapSection2.method1411(); + if (ServerPacket.CHAT_FILTER_SETTINGS_PRIVATECHAT == var1.serverPacket) { + class396.method2042(); + var21 = var3.readUnsignedByteSub(); + var5 = var3.readIntME(); + var6 = var3.readUnsignedByte(); + experience[var21] = var5; + currentLevels[var21] = var6; + levels[var21] = 1; + field564[var21] = var6; + + for (var7 = 0; var7 < 98; ++var7) { + if (var5 >= Skills.Skills_experienceTable[var7]) { + levels[var21] = var7 + 2; + } } + changedSkills[++changedSkillsCount - 1 & 31] = var21; var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETPOSITION == var1.serverPacket) { - for (var68 = 0; var68 < VarpDefinition.field1498; ++var68) { - VarpDefinition var73 = ApproximateRouteStrategy.VarpDefinition_get(var68); - if (var73 != null) { - Varps.Varps_temp[var68] = 0; - Varps.Varps_main[var68] = 0; - } - } - - class113.process(); - changedVarpCount += 32; + if (ServerPacket.LOC_ANIM_SPECIFIC == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.field2625); var1.serverPacket = null; return true; } if (ServerPacket.UPDATE_ZONE_PARTIAL_FOLLOWS == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - Object[] var72 = new Object[var51.length() + 1]; - - for (var6 = var51.length() - 1; var6 >= 0; --var6) { - if (var51.charAt(var6) == 's') { - var72[var6 + 1] = var3.readStringCp1252NullTerminated(); - } else { - var72[var6 + 1] = new Integer(var3.readInt()); - } - } - - var72[0] = new Integer(var3.readInt()); - ScriptEvent var95 = new ScriptEvent(); - var95.args = var72; - WorldMapSection1.runScriptEvent(var95); + class410.method2140(var3.readStringCp1252NullTerminated()); var1.serverPacket = null; return true; } - if (ServerPacket.PLAYER_INFO == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - var21 = AbstractFont.escapeBrackets(World.method385(DirectByteArrayCopier.readString(var3))); - MouseHandler.addGameMessage(6, var51, var21); + boolean var55; + if (ServerPacket.field2697 == var1.serverPacket) { + var21 = var3.readIntME(); + var55 = var3.readUnsignedByte() == 1; + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); + if (var55 != var25.isHidden) { + var25.isHidden = var55; + class159.invalidateWidget(var25); + } + var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETHIDE == var1.serverPacket) { - class299.friendSystem.ignoreList.read(var3, var1.serverPacketLength); - AbstractSocket.FriendSystem_invalidateIgnoreds(); - field518 = cycleCntr; + if (ServerPacket.field2655 == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.PREFETCH_GAMEOBJECTS); var1.serverPacket = null; return true; } if (ServerPacket.UPDATE_RUNENERGY == var1.serverPacket) { - var68 = var3.readUShortSmart(); - var61 = var3.readUnsignedByte() == 1; - var94 = ""; - boolean var55 = false; - if (var61) { - var94 = var3.readStringCp1252NullTerminated(); - if (class299.friendSystem.isIgnored(new Username(var94, Language.loginType))) { - var55 = true; - } - } - - String var92 = var3.readStringCp1252NullTerminated(); - if (!var55) { - MouseHandler.addGameMessage(var68, var94, var92); - } - + class18.field55 = var3.readUnsignedByteAdd(); + class6.field6 = var3.readUnsignedByteSub(); var1.serverPacket = null; return true; } - if (ServerPacket.MAPPROJ_ANIM == var1.serverPacket) { - var80 = var3.readUnsignedByte() == 1; - if (var80) { - class132.field1272 = GameEngine.clockNow() - var3.readLong(); - class392.grandExchangeEvents = new GrandExchangeEvents(var3, true); - } else { - class392.grandExchangeEvents = null; + if (ServerPacket.CAM_RESET == var1.serverPacket) { + for (var21 = 0; var21 < VarpDefinition.field1443; ++var21) { + VarpDefinition var70 = FloorOverlayDefinition.VarpDefinition_get(var21); + if (var70 != null) { + Varps.Varps_temp[var21] = 0; + Varps.Varps_main[var21] = 0; + } } - field525 = cycleCntr; + class396.method2042(); + changedVarpCount += 32; var1.serverPacket = null; return true; } - if (ServerPacket.CAM_MOVETO_EASED == var1.serverPacket) { - var68 = var3.readUnsignedShortLE(); - var91 = npcs[var68]; - var7 = var3.readUnsignedByteAdd(); - var6 = var3.readUnsignedShortLE(); - var5 = var3.readUnsignedIntIME(); - if (var91 != null) { - var91.updateSpotAnimation(var7, var6, var5 >> 16, var5 & 65535); - } - + if (ServerPacket.IF_SETOBJECT == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.AREA_SOUND); var1.serverPacket = null; return true; } if (ServerPacket.MESSAGE_PRIVATE_ECHO == var1.serverPacket) { - var68 = var3.readIntME(); - if (var68 == 65535) { - var68 = -1; + var21 = var3.readInt(); + var5 = var3.readUnsignedShort(); + if (var21 < -70000) { + var5 += 32768; } - var5 = var3.readInt(); - var6 = var3.readIntIME(); - var71 = class92.getWidget(var5); - ItemComposition var90; - if (!var71.isIf3) { - if (var68 == -1) { - var71.modelType = 0; - var1.serverPacket = null; - return true; - } - - var90 = InvDefinition.ItemDefinition_get(var68).getCountObj(var6); - var71.modelType = 4; - var71.modelId = var68; - var71.modelAngleX = var90.xan2d; - var71.modelAngleY = var90.yan2d; - var71.modelZoom = var90.zoom2d * 100 / var6; - class218.invalidateWidget(var71); + if (var21 >= 0) { + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); } else { - var71.itemId = var68; - var71.itemQuantity = var6; - var90 = InvDefinition.ItemDefinition_get(var68).getCountObj(var6); - var71.modelAngleX = var90.xan2d; - var71.modelAngleY = var90.yan2d; - var71.modelAngleZ = var90.zan2d; - var71.modelOffsetX = var90.offsetX2d; - var71.modelOffsetY = var90.offsetY2d; - var71.modelZoom = var90.zoom2d; - if (var90.isStackable == 1) { - var71.itemQuantityMode = 1; - } else { - var71.itemQuantityMode = 2; + var25 = null; + } + + for (; var3.offset < var1.serverPacketLength; class185.itemContainerSetItem(var5, var7, var8 - 1, var9)) { + var7 = var3.readUShortSmart(); + var8 = var3.readUnsignedShort(); + var9 = 0; + if (var8 != 0) { + var9 = var3.readUnsignedByte(); + if (var9 == 255) { + var9 = var3.readInt(); + } } - if (var71.modelRotation > 0) { - var71.modelZoom = var71.modelZoom * 32 / var71.modelRotation; - } else if (var71.rawWidth > 0) { - var71.modelZoom = var71.modelZoom * 32 / var71.rawWidth; + if (var25 != null && var7 >= 0 && var7 < var25.itemIds.length) { + var25.itemIds[var7] = var8; + var25.field3077[var7] = var9; } + } - class218.invalidateWidget(var71); + if (var25 != null) { + class159.invalidateWidget(var25); } + class396.method2042(); + changedItemContainers[++changedItemContainersCount - 1 & 31] = var5 & 32767; var1.serverPacket = null; return true; } if (ServerPacket.PLAYER_ANIM_SPECIFIC == var1.serverPacket) { - var5 = var3.method2587(); - var6 = var3.readUnsignedByteAdd(); - var68 = var3.readIntME(); - if (var5 == 65535) { - var5 = -1; - } - - NPC var22 = npcs[var68]; - if (var22 != null) { - if (var5 == var22.sequence && var5 != -1) { - var8 = EnumComposition.SequenceDefinition_get(var5).replyMode; - if (var8 == 1) { - var22.sequenceFrame = 0; - var22.sequenceFrameCycle = 0; - var22.sequenceDelay = var6; - var22.currentSequenceFrameIndex = 0; - } else if (var8 == 2) { - var22.currentSequenceFrameIndex = 0; - } - } else if (var5 == -1 || var22.sequence == -1 || EnumComposition.SequenceDefinition_get(var5).forcedPriority >= EnumComposition.SequenceDefinition_get(var22.sequence).forcedPriority) { - var22.sequence = var5; - var22.sequenceFrame = 0; - var22.sequenceFrameCycle = 0; - var22.sequenceDelay = var6; - var22.currentSequenceFrameIndex = 0; - var22.field1022 = var22.pathLength; - } + World var51 = new World(); + var51.host = var3.readStringCp1252NullTerminated(); + var51.id = var3.readUnsignedShort(); + var5 = var3.readInt(); + var51.properties = var5; + if (var51.isDeadman()) { + var51.field679 = "beta"; } + WorldMapSection2.updateGameState(45); + var2.close(); + var2 = null; + class28.changeWorld(var51); var1.serverPacket = null; - return true; + return false; } if (ServerPacket.IF_SETTEXT == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - var23 = var3.readLong(); - var25 = (long)var3.readUnsignedShort(); - var27 = (long)var3.readMedium(); - PlayerType var45 = (PlayerType)KeyHandler.findEnumerated(MidiPcmStream.PlayerType_values(), var3.readUnsignedByte()); - var32 = var27 + (var25 << 32); - boolean var31 = false; + var21 = var3.readUnsignedIntME(); + var5 = var3.readUnsignedIntIME(); + InterfaceParent var86 = (InterfaceParent)interfaceParents.get((long)var5); + var75 = (InterfaceParent)interfaceParents.get((long)var21); + if (var75 != null) { + class302.closeInterface(var75, var86 == null || var86.group != var75.group); + } - for (var15 = 0; var15 < 100; ++var15) { - if (crossWorldMessageIds[var15] == var32) { - var31 = true; - break; - } + if (var86 != null) { + var86.remove(); + interfaceParents.put(var86, (long)var21); } - if (var45.isUser && class299.friendSystem.isIgnored(new Username(var51, Language.loginType))) { - var31 = true; + var93 = HealthBarDefinition.widgetDefinition.method1733(var5); + if (var93 != null) { + class159.invalidateWidget(var93); } - if (!var31 && field486 == 0) { - crossWorldMessageIds[crossWorldMessageIdsIndex] = var32; - crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; - var43 = AbstractFont.escapeBrackets(World.method385(DirectByteArrayCopier.readString(var3))); - if (var45.modIcon != -1) { - class416.addChatMessage(9, Tile.addImageTag(var45.modIcon) + var51, var43, class211.base37DecodeLong(var23)); - } else { - class416.addChatMessage(9, var51, var43, class211.base37DecodeLong(var23)); - } + var93 = HealthBarDefinition.widgetDefinition.method1733(var21); + if (var93 != null) { + class159.invalidateWidget(var93); + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var93.id >>> 16], var93, true); } - var1.serverPacket = null; - return true; - } + if (rootInterface != -1) { + class514.runIntfCloseListener(rootInterface, 1); + } - if (ServerPacket.IF_SETPLAYERMODEL_OBJ == var1.serverPacket) { - var68 = var3.readUnsignedByte(); - MusicPatchNode2.method1625(var68); var1.serverPacket = null; return true; } - if (ServerPacket.CLANCHANNEL_DELTA == var1.serverPacket) { - var68 = var3.readUnsignedByte(); - var5 = var3.readUnsignedByte(); + if (ServerPacket.IF_SETPLAYERMODEL_OBJ == var1.serverPacket) { + isCameraLocked = true; + field400 = false; + field402 = true; + ScriptFrame.cameraLookAtX = var3.readUnsignedByte(); + class216.cameraLookAtY = var3.readUnsignedByte(); + var21 = var3.readUnsignedShort(); + var5 = var3.readUnsignedShort(); + field403 = var3.readBoolean(); var6 = var3.readUnsignedByte(); - var7 = var3.readUnsignedByte(); - cameraShaking[var68] = true; - cameraShakeIntensity[var68] = var5; - cameraMoveIntensity[var68] = var6; - cameraShakeSpeed[var68] = var7; - cameraShakeCycle[var68] = 0; + var7 = ScriptFrame.cameraLookAtX * 128 + 64; + var8 = class216.cameraLookAtY * 128 + 64; + boolean var61 = false; + boolean var83 = false; + if (field403) { + var9 = SecureRandomFuture.cameraY; + var23 = WorldMapDecorationType.getTileHeight(var7, var8, ItemLayer.Client_plane) - var21; + } else { + var9 = WorldMapDecorationType.getTileHeight(ViewportMouse.cameraX, class36.cameraZ, ItemLayer.Client_plane) - SecureRandomFuture.cameraY; + var23 = var21; + } + + field644 = new class489(ViewportMouse.cameraX, class36.cameraZ, var9, var7, var8, var23, var5, var6); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_FRIENDLIST == var1.serverPacket) { - var68 = var3.readInt(); - var5 = var3.readUnsignedShort(); - if (var68 < -70000) { - var5 += 32768; + if (ServerPacket.TRIGGER_ONDIALOGABORT == var1.serverPacket) { + var9 = var3.readUnsignedShortLE(); + var8 = var3.readUnsignedShortAddLE(); + var21 = var3.readUnsignedShortAddLE(); + if (var21 == 65535) { + var21 = -1; } - if (var68 >= 0) { - var89 = class92.getWidget(var68); - } else { - var89 = null; + var7 = var3.readUnsignedShortLE(); + var6 = var3.readUnsignedShortLE(); + var5 = var3.readUnsignedShortLE(); + if (var5 == 65535) { + var5 = -1; } - for (; var3.offset < var1.serverPacketLength; FriendsChat.itemContainerSetItem(var5, var7, var8 - 1, var9)) { - var7 = var3.readUShortSmart(); - var8 = var3.readUnsignedShort(); - var9 = 0; - if (var8 != 0) { - var9 = var3.readUnsignedByte(); - if (var9 == 255) { - var9 = var3.readInt(); - } - } + ArrayList var56 = new ArrayList(); + var56.add(var21); + var56.add(var5); + class135.method734(var56, var6, var7, var8, var9); + var1.serverPacket = null; + return true; + } - if (var89 != null && var7 >= 0 && var7 < var89.itemIds.length) { - var89.itemIds[var7] = var8; - var89.field3054[var7] = var9; - } + if (ServerPacket.MIDI_SWAP == var1.serverPacket) { + GrandExchangeOfferUnitPriceComparator.loadRegions(true, var1.packetBuffer, false); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.SYNC_CLIENT_VARCACHE == var1.serverPacket) { + var11 = var3.method2610(); + var26 = var3.readUnsignedByteNeg() * 4; + var24 = var3.readUnsignedShortAddLE(); + var6 = var3.method2606(); + var21 = var6 >> 16; + var5 = var6 >> 8 & 255; + var7 = var21 + (var6 >> 4 & 7); + var8 = var5 + (var6 & 7); + var15 = var3.readUnsignedShortLE(); + var57 = var3.readByte(); + var18 = var3.readUnsignedByteSub(); + var16 = var3.readUnsignedShortAdd(); + var17 = var3.readUnsignedByteAdd(); + var81 = var3.readByteAdd(); + var65 = var3.readUnsignedByte() * 4; + var9 = var57 + var7; + var23 = var81 + var8; + if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104 && var9 >= 0 && var23 >= 0 && var9 < 104 && var23 < 104 && var24 != 65535) { + var7 = var7 * 128 + 64; + var8 = var8 * 128 + 64; + var9 = var9 * 128 + 64; + var23 = var23 * 128 + 64; + var19 = new Projectile(var24, ItemLayer.Client_plane, var7, var8, WorldMapDecorationType.getTileHeight(var7, var8, ItemLayer.Client_plane) - var65, var15 + cycle, var16 + cycle, var17, var18, var11, var26); + var19.setDestination(var9, var23, WorldMapDecorationType.getTileHeight(var9, var23, ItemLayer.Client_plane) - var26, var15 + cycle); + projectiles.addFirst(var19); } - if (var89 != null) { - class218.invalidateWidget(var89); - } + var1.serverPacket = null; + return true; + } + + if (ServerPacket.NPC_INFO_LARGE == var1.serverPacket) { + GrandExchangeOfferUnitPriceComparator.loadRegions(false, var1.packetBuffer, false); + var1.serverPacket = null; + return true; + } - class113.process(); - changedItemContainers[++changedItemContainersCount - 1 & 31] = var5 & 32767; + if (ServerPacket.ENTER_FREECAM == var1.serverPacket) { + GrandExchangeOfferUnitPriceComparator.loadRegions(false, var1.packetBuffer, true); var1.serverPacket = null; return true; } - if (ServerPacket.IF_SETOBJECT == var1.serverPacket) { - isCameraLocked = true; - field400 = false; - field404 = true; - var68 = var3.readShort(); - var5 = var3.readShort(); - var6 = UserComparator8.method674(var5 + class129.cameraPitch & 2027); - var7 = var68 + UserComparator10.cameraYaw; - var8 = var3.readUnsignedShort(); - var9 = var3.readUnsignedByte(); - field647 = new class478(class129.cameraPitch, var6, var8, var9); - field646 = new class478(UserComparator10.cameraYaw, var7, var8, var9); + if (ServerPacket.field2707 == var1.serverPacket) { + var5 = var3.readUnsignedShortAddLE(); + var21 = var3.readUnsignedShortLE(); + WorldMapManager.method1265(var21, var5); var1.serverPacket = null; return true; } - if (ServerPacket.NPC_INFO_LARGE == var1.serverPacket) { - var7 = var3.readUnsignedByteAdd(); + if (ServerPacket.NEW_PACK_215 == var1.serverPacket) { + var21 = var3.readShortLE(); + var5 = var3.readShortAddLE(); var6 = var3.readUnsignedIntIME(); - var5 = var3.readUnsignedShort(); - var68 = var3.readIntME(); - Player var36; - if (var68 == localPlayerIndex) { - var36 = VarbitComposition.localPlayer; - } else { - var36 = players[var68]; + var22 = HealthBarDefinition.widgetDefinition.method1733(var6); + if (var5 != var22.rawX || var21 != var22.rawY || var22.xAlignment != 0 || var22.yAlignment != 0) { + var22.rawX = var5; + var22.rawY = var21; + var22.xAlignment = 0; + var22.yAlignment = 0; + class159.invalidateWidget(var22); + this.alignWidget(var22); + if (var22.type == 0) { + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var6 >> 16], var22, false); + } } - if (var36 != null) { - var36.updateSpotAnimation(var7, var5, var6 >> 16, var6 & 65535); + var1.serverPacket = null; + return true; + } + + if (ServerPacket.VARCLAN == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + if (var21 == 65535) { + var21 = -1; } + class102.playSong(var21); var1.serverPacket = null; return true; } - if (ServerPacket.ENTER_FREECAM == var1.serverPacket) { - for (var68 = 0; var68 < Varps.Varps_main.length; ++var68) { - if (Varps.Varps_main[var68] != Varps.Varps_temp[var68]) { - Varps.Varps_main[var68] = Varps.Varps_temp[var68]; - WorldMapDecoration.changeGameOptions(var68); - changedVarps[++changedVarpCount - 1 & 31] = var68; - } + if (ServerPacket.IF_SETSCROLLPOS == var1.serverPacket) { + var21 = var3.method2607(); + var5 = var3.readUnsignedShortAdd(); + if (var5 == 65535) { + var5 = -1; } + FileSystem.playJingle(var5, var21); var1.serverPacket = null; return true; } - if (ServerPacket.field2725 == var1.serverPacket) { - Interpreter.method421(var3.readStringCp1252NullTerminated()); + if (ServerPacket.MINIMAP_TOGGLE == var1.serverPacket) { + isCameraLocked = true; + field400 = false; + field404 = true; + var21 = var3.readShort(); + var5 = var3.readShort(); + var6 = class240.method1293(var5 + Varcs.cameraPitch & 2027); + var7 = var21 + class192.cameraYaw; + var8 = var3.readUnsignedShort(); + var9 = var3.readUnsignedByte(); + field642 = new class490(Varcs.cameraPitch, var6, var8, var9); + field643 = new class490(class192.cameraYaw, var7, var8, var9); var1.serverPacket = null; return true; } - if (ServerPacket.AREA_SOUND == var1.serverPacket) { - var68 = var3.readIntIME(); - var5 = var3.readSignedShortAdd(); - var89 = class92.getWidget(var68); - if (var5 != var89.sequenceId || var5 == -1) { - var89.sequenceId = var5; - var89.modelFrame = 0; - var89.modelFrameCycle = 0; - class218.invalidateWidget(var89); - } - + if (ServerPacket.OPEN_URL == var1.serverPacket) { + var21 = var3.readUnsignedShortLE(); + var5 = var3.readUnsignedShortLE(); + var6 = var3.readUnsignedIntIME(); + var22 = HealthBarDefinition.widgetDefinition.method1733(var6); + var22.rotationKey = var5 + (var21 << 16); var1.serverPacket = null; return true; } - if (ServerPacket.TRIGGER_ONDIALOGABORT == var1.serverPacket) { - ObjectSound.field686 = var3.readUnsignedByte(); - class125.field1193 = var3.readUnsignedByteSub(); + if (ServerPacket.field2728 == var1.serverPacket) { + class18.field55 = var3.readUnsignedByteAdd(); + class6.field6 = var3.readUnsignedByteAdd(); - while (var3.offset < var1.serverPacketLength) { - var68 = var3.readUnsignedByte(); - ZoneOperation var70 = WorldMapSection0.method1506()[var68]; - World.processZoneOperation(var70); + for (var21 = class18.field55; var21 < class18.field55 + 8; ++var21) { + for (var5 = class6.field6; var5 < class6.field6 + 8; ++var5) { + if (groundItems[ItemLayer.Client_plane][var21][var5] != null) { + groundItems[ItemLayer.Client_plane][var21][var5] = null; + ClanSettings.updateItemPile(var21, var5); + } + } } - var1.serverPacket = null; - return true; - } + for (PendingSpawn var50 = (PendingSpawn)pendingSpawns.last(); var50 != null; var50 = (PendingSpawn)pendingSpawns.previous()) { + if (var50.x >= class18.field55 && var50.x < class18.field55 + 8 && var50.y >= class6.field6 && var50.y < class6.field6 + 8 && var50.plane == ItemLayer.Client_plane) { + var50.endCycle = 0; + } + } - if (ServerPacket.IF_SETSCROLLPOS == var1.serverPacket) { - var68 = var3.readUnsignedShortLE(); - var5 = var3.method2587(); - var7 = var3.method2587(); - var6 = var3.readIntME(); - PacketWriter.someMusicMethod(var68, var5, var6, var7); var1.serverPacket = null; return true; } - if (ServerPacket.MESSAGE_PRIVATE == var1.serverPacket) { + if (ServerPacket.field2684 == var1.serverPacket) { isCameraLocked = true; field400 = false; - field402 = true; - Players.cameraMoveToX = var3.readUnsignedByte(); - class33.cameraMoveToY = var3.readUnsignedByte(); - var68 = var3.readUnsignedShort(); - var5 = var3.readUnsignedByte() * 128 + 64; - var6 = var3.readUnsignedByte() * 128 + 64; - var7 = var3.readUnsignedShort(); - field401 = var3.readBoolean(); - var8 = var3.readUnsignedByte(); - var9 = Players.cameraMoveToX * 128 + 64; - var10 = class33.cameraMoveToY * 128 + 64; - var11 = false; - var12 = false; - if (field401) { - var56 = class133.cameraY; - var59 = class18.getTileHeight(var9, var10, HealthBar.Client_plane) - var68; - } else { - var56 = class18.getTileHeight(NPCComposition.cameraX, class139.cameraZ, HealthBar.Client_plane) - class133.cameraY; - var59 = var68; - } - - field642 = new class476(NPCComposition.cameraX, class139.cameraZ, var56, var9, var10, var59, var5, var6, var7, var8); + field404 = true; + Messages.cameraMoveToX = var3.readUnsignedByte(); + AbstractWorldMapData.cameraMoveToY = var3.readUnsignedByte(); + class302.cameraMoveToHeight = var3.readUnsignedShort(); + var21 = var3.readUnsignedShort(); + var5 = var3.readUnsignedByte(); + var6 = Messages.cameraMoveToX * 128 + 64; + var7 = AbstractWorldMapData.cameraMoveToY * 128 + 64; + var8 = WorldMapDecorationType.getTileHeight(var6, var7, ItemLayer.Client_plane) - class302.cameraMoveToHeight; + var9 = var6 - ViewportMouse.cameraX; + var23 = var8 - SecureRandomFuture.cameraY; + var11 = var7 - class36.cameraZ; + double var12 = Math.sqrt((double)(var9 * var9 + var11 * var11)); + var26 = class240.method1293((int)(Math.atan2((double)var23, var12) * 325.9490051269531D) & 2047); + var15 = class319.method1705((int)(Math.atan2((double)var9, (double)var11) * -325.9490051269531D) & 2047); + field642 = new class490(Varcs.cameraPitch, var26, var21, var5); + field643 = new class490(class192.cameraYaw, var15, var21, var5); var1.serverPacket = null; return true; } - if (ServerPacket.OPEN_URL == var1.serverPacket) { - class299.friendSystem.readUpdate(var3, var1.serverPacketLength); - field518 = cycleCntr; + if (ServerPacket.field2637 == var1.serverPacket) { + var21 = var3.readIntME(); + var55 = var3.readUnsignedByteNeg() == 1; + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); + class18.method70(var25, class229.localPlayer.appearance, var55); + class159.invalidateWidget(var25); var1.serverPacket = null; return true; } - if (ServerPacket.NPC_INFO_SMALL == var1.serverPacket) { - isCameraLocked = true; - field400 = false; - field402 = false; - Players.cameraMoveToX = var3.readUnsignedByte(); - class33.cameraMoveToY = var3.readUnsignedByte(); - VarpDefinition.cameraMoveToHeight = var3.readUnsignedShort(); - class344.cameraMoveToSpeed = var3.readUnsignedByte(); - MouseHandler.cameraMoveToAcceleration = var3.readUnsignedByte(); - if (MouseHandler.cameraMoveToAcceleration >= 100) { - NPCComposition.cameraX = Players.cameraMoveToX * 128 + 64; - class139.cameraZ = class33.cameraMoveToY * 128 + 64; - class133.cameraY = class18.getTileHeight(NPCComposition.cameraX, class139.cameraZ, HealthBar.Client_plane) - VarpDefinition.cameraMoveToHeight; - } - + if (ServerPacket.LOC_ADD_CHANGE == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + var5 = var3.readInt(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + class302.method1626(var25, class229.localPlayer.appearance.field2947, var21); + class159.invalidateWidget(var25); var1.serverPacket = null; return true; } - if (ServerPacket.OBJ_DEL_LEGACY == var1.serverPacket) { - var68 = var3.readIntIME(); - var5 = var3.readUnsignedShortLE(); - var6 = var5 >> 10 & 31; - var7 = var5 >> 5 & 31; - var8 = var5 & 31; - var9 = (var7 << 11) + (var6 << 19) + (var8 << 3); - Widget var34 = class92.getWidget(var68); - if (var9 != var34.color) { - var34.color = var9; - class218.invalidateWidget(var34); + if (ServerPacket.IF_SETPOSITION == var1.serverPacket) { + var21 = var3.readUShortSmart(); + var55 = var3.readUnsignedByte() == 1; + var84 = ""; + boolean var54 = false; + if (var55) { + var84 = var3.readStringCp1252NullTerminated(); + if (class12.friendSystem.isIgnored(new Username(var84, class89.loginType))) { + var54 = true; + } + } + + String var92 = var3.readStringCp1252NullTerminated(); + if (!var54) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var21, var84, var92); } var1.serverPacket = null; return true; } - if (ServerPacket.MESSAGE_GAME == var1.serverPacket) { - var51 = var3.readStringCp1252NullTerminated(); - var5 = var3.method2598(); - var89 = class92.getWidget(var5); - if (!var51.equals(var89.text)) { - var89.text = var51; - class218.invalidateWidget(var89); + if (ServerPacket.NPC_INFO_SMALL == var1.serverPacket) { + var9 = var3.readUnsignedShortAddLE(); + var23 = var3.readUnsignedByteAdd(); + var6 = var3.readMedium(); + var21 = var6 >> 16; + var5 = var6 >> 8 & 255; + var7 = var21 + (var6 >> 4 & 7); + var8 = var5 + (var6 & 7); + var11 = var3.readUnsignedShortLE(); + if (var7 >= 0 && var8 >= 0 && var7 < 104 && var8 < 104) { + var7 = var7 * 128 + 64; + var8 = var8 * 128 + 64; + GraphicsObject var38 = new GraphicsObject(var9, ItemLayer.Client_plane, var7, var8, WorldMapDecorationType.getTileHeight(var7, var8, ItemLayer.Client_plane) - var23, var11, cycle); + graphicsObjects.addFirst(var38); } var1.serverPacket = null; return true; } - if (ServerPacket.MESSAGE_FRIENDCHANNEL == var1.serverPacket) { - var68 = var3.readInt(); - var5 = var3.readUnsignedShort(); - if (var68 < -70000) { - var5 += 32768; - } + if (ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL == var1.serverPacket) { + var21 = var3.readUnsignedIntME(); + var5 = var3.readIntME(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var5); + AbstractWorldMapData.method1323(var25, var21); + class159.invalidateWidget(var25); + var1.serverPacket = null; + return true; + } - if (var68 >= 0) { - var89 = class92.getWidget(var68); - } else { - var89 = null; + if (ServerPacket.field2718 == var1.serverPacket) { + var21 = var3.readUnsignedIntME(); + var5 = var3.readUnsignedShortAdd(); + if (var5 == 65535) { + var5 = -1; } - if (var89 != null) { - for (var7 = 0; var7 < var89.itemIds.length; ++var7) { - var89.itemIds[var7] = 0; - var89.field3054[var7] = 0; + var6 = var3.readIntME(); + var22 = HealthBarDefinition.widgetDefinition.method1733(var6); + ItemComposition var35; + if (!var22.isIf3) { + if (var5 == -1) { + var22.modelType = 0; + var1.serverPacket = null; + return true; } - } - - SoundCache.clearItemContainer(var5); - var7 = var3.readUnsignedShort(); - for (var8 = 0; var8 < var7; ++var8) { - var9 = var3.readUnsignedShort(); - var10 = var3.readUnsignedByteSub(); - if (var10 == 255) { - var10 = var3.method2598(); + var35 = class214.ItemDefinition_get(var5).getCountObj(var21); + var22.modelType = 4; + var22.modelId = var5; + var22.modelAngleX = var35.xan2d; + var22.modelAngleY = var35.yan2d; + var22.modelZoom = var35.zoom2d * 100 / var21; + class159.invalidateWidget(var22); + } else { + var22.itemId = var5; + var22.itemQuantity = var21; + var35 = class214.ItemDefinition_get(var5).getCountObj(var21); + var22.modelAngleX = var35.xan2d; + var22.modelAngleY = var35.yan2d; + var22.modelAngleZ = var35.zan2d; + var22.modelOffsetX = var35.offsetX2d; + var22.modelOffsetY = var35.offsetY2d; + var22.modelZoom = var35.zoom2d; + if (var35.isStackable == 1) { + var22.itemQuantityMode = 1; + } else { + var22.itemQuantityMode = 2; } - if (var89 != null && var8 < var89.itemIds.length) { - var89.itemIds[var8] = var9; - var89.field3054[var8] = var10; + if (var22.modelRotation > 0) { + var22.modelZoom = var22.modelZoom * 32 / var22.modelRotation; + } else if (var22.rawWidth > 0) { + var22.modelZoom = var22.modelZoom * 32 / var22.rawWidth; } - FriendsChat.itemContainerSetItem(var5, var8, var9 - 1, var10); - } - - if (var89 != null) { - class218.invalidateWidget(var89); + class159.invalidateWidget(var22); } - class113.process(); - changedItemContainers[++changedItemContainersCount - 1 & 31] = var5 & 32767; var1.serverPacket = null; return true; } - if (ServerPacket.MESSAGE_CLANCHANNEL == var1.serverPacket) { - var68 = var3.readIntME(); - var5 = var3.method2598(); - Varps.Varps_temp[var68] = var5; - if (Varps.Varps_main[var68] != var5) { - Varps.Varps_main[var68] = var5; + if (ServerPacket.PLAYER_SPOTANIM_SPECIFIC == var1.serverPacket) { + field400 = false; + isCameraLocked = false; + field402 = false; + field404 = false; + Messages.cameraMoveToX = 0; + AbstractWorldMapData.cameraMoveToY = 0; + class302.cameraMoveToHeight = 0; + field403 = false; + class60.cameraMoveToSpeed = 0; + class134.cameraMoveToAcceleration = 0; + class1.cameraLookAtAcceleration = 0; + WorldMapIcon_0.cameraLookAtSpeed = 0; + ScriptFrame.cameraLookAtX = 0; + class216.cameraLookAtY = 0; + class127.cameraLookAtHeight = 0; + field644 = null; + field642 = null; + field643 = null; + + for (var21 = 0; var21 < 5; ++var21) { + cameraShaking[var21] = false; } - WorldMapDecoration.changeGameOptions(var68); - changedVarps[++changedVarpCount - 1 & 31] = var68; var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_IGNORELIST == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.field2607); + if (ServerPacket.UPDATE_INV_CLEAR == var1.serverPacket) { + byte[] var49 = new byte[var1.serverPacketLength]; + var3.method2534(var49, 0, var49.length); + Buffer var69 = new Buffer(var49); + var84 = var69.readStringCp1252NullTerminated(); + HealthBar.openURL(var84, true, false); var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.MAP_ANIM); + if (ServerPacket.field2639 == var1.serverPacket) { + isCameraLocked = true; + field400 = false; + field404 = false; + Messages.cameraMoveToX = var3.readUnsignedByte(); + AbstractWorldMapData.cameraMoveToY = var3.readUnsignedByte(); + class302.cameraMoveToHeight = var3.readUnsignedShort(); + class60.cameraMoveToSpeed = var3.readUnsignedByte(); + class134.cameraMoveToAcceleration = var3.readUnsignedByte(); + if (class134.cameraMoveToAcceleration >= 100) { + var21 = Messages.cameraMoveToX * 128 + 64; + var5 = AbstractWorldMapData.cameraMoveToY * 128 + 64; + var6 = WorldMapDecorationType.getTileHeight(var21, var5, ItemLayer.Client_plane) - class302.cameraMoveToHeight; + var7 = var21 - ViewportMouse.cameraX; + var8 = var6 - SecureRandomFuture.cameraY; + var9 = var5 - class36.cameraZ; + var23 = (int)Math.sqrt((double)(var9 * var9 + var7 * var7)); + Varcs.cameraPitch = (int)(Math.atan2((double)var8, (double)var23) * 325.9490051269531D) & 2047; + class192.cameraYaw = (int)(Math.atan2((double)var7, (double)var9) * -325.9490051269531D) & 2047; + if (Varcs.cameraPitch < 128) { + Varcs.cameraPitch = 128; + } + + if (Varcs.cameraPitch > 383) { + Varcs.cameraPitch = 383; + } + } + var1.serverPacket = null; return true; } - if (ServerPacket.UPDATE_ZONE_FULL_FOLLOWS == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.OBJ_ADD); + if (ServerPacket.IF_SETHIDE == var1.serverPacket) { + class396.method2042(); + var21 = var3.readUnsignedByteNeg(); + var5 = var3.readUnsignedIntIME(); + var6 = var3.readUnsignedByte(); + var7 = var3.readUnsignedByteSub(); + experience[var6] = var5; + currentLevels[var6] = var7; + levels[var6] = 1; + field564[var6] = var21; + + for (var8 = 0; var8 < 98; ++var8) { + if (var5 >= Skills.Skills_experienceTable[var8]) { + levels[var6] = var8 + 2; + } + } + + changedSkills[++changedSkillsCount - 1 & 31] = var6; var1.serverPacket = null; return true; } - if (ServerPacket.EMPTY_PACKET == var1.serverPacket) { - var68 = var3.readUnsignedByte(); - if (var3.readUnsignedByte() == 0) { - grandExchangeOffers[var68] = new GrandExchangeOffer(); - var3.offset += 18; - } else { - --var3.offset; - grandExchangeOffers[var68] = new GrandExchangeOffer(var3, false); + if (ServerPacket.field2633 == var1.serverPacket) { + var21 = var3.readUnsignedShort(); + var5 = var3.readInt(); + Varps.Varps_temp[var21] = var5; + if (Varps.Varps_main[var21] != var5) { + Varps.Varps_main[var21] = var5; } - field529 = cycleCntr; + Projectile.changeGameOptions(var21); + changedVarps[++changedVarpCount - 1 & 31] = var21; var1.serverPacket = null; return true; } - if (ServerPacket.OBJ_DEL == var1.serverPacket && isCameraLocked) { - field400 = true; - field404 = false; - field402 = false; - - for (var68 = 0; var68 < 5; ++var68) { - cameraShaking[var68] = false; - } - + if (ServerPacket.EMPTY_PACKET == var1.serverPacket) { + class106.processZoneOperation(ZoneOperation.LOC_ANIM); var1.serverPacket = null; return true; } - if (ServerPacket.IF_MOVESUB == var1.serverPacket) { - ObjectSound.field686 = var3.readUnsignedByteNeg(); - class125.field1193 = var3.readUnsignedByteSub(); + if (ServerPacket.field2754 == var1.serverPacket) { + var76 = var3.readByte(); + var20 = var3.readStringCp1252NullTerminated(); + long var41 = (long)var3.readUnsignedShort(); + long var43 = (long)var3.readMedium(); + PlayerType var10 = (PlayerType)class12.findEnumerated(class320.PlayerType_values(), var3.readUnsignedByte()); + long var45 = var43 + (var41 << 32); + boolean var13 = false; + ClanChannel var14 = null; + var14 = var76 >= 0 ? currentClanChannels[var76] : ItemContainer.guestClanChannel; + if (var14 == null) { + var13 = true; + } else { + var15 = 0; + + while (true) { + if (var15 >= 100) { + if (var10.isUser && class12.friendSystem.isIgnored(new Username(var20, class89.loginType))) { + var13 = true; + } + break; + } - for (var68 = ObjectSound.field686; var68 < ObjectSound.field686 + 8; ++var68) { - for (var5 = class125.field1193; var5 < class125.field1193 + 8; ++var5) { - if (groundItems[HealthBar.Client_plane][var68][var5] != null) { - groundItems[HealthBar.Client_plane][var68][var5] = null; - class135.updateItemPile(var68, var5); + if (var45 == crossWorldMessageIds[var15]) { + var13 = true; + break; } + + ++var15; } } - for (PendingSpawn var50 = (PendingSpawn)pendingSpawns.last(); var50 != null; var50 = (PendingSpawn)pendingSpawns.previous()) { - if (var50.x >= ObjectSound.field686 && var50.x < ObjectSound.field686 + 8 && var50.y >= class125.field1193 && var50.y < class125.field1193 + 8 && var50.plane == HealthBar.Client_plane) { - var50.endCycle = 0; + if (!var13) { + crossWorldMessageIds[crossWorldMessageIdsIndex] = var45; + crossWorldMessageIdsIndex = (crossWorldMessageIdsIndex + 1) % 100; + var40 = AbstractFont.escapeBrackets(class128.readString(var3)); + var16 = var76 >= 0 ? 41 : 44; + if (var10.modIcon != -1) { + ArchiveLoader.addChatMessage(var16, FloorUnderlayDefinition.addImageTag(var10.modIcon) + var20, var40, var14.name); + } else { + ArchiveLoader.addChatMessage(var16, var20, var40, var14.name); } } @@ -5348,87 +5446,89 @@ final boolean method374(PacketWriter var1) { return true; } - if (ServerPacket.LOC_ADD_CHANGE == var1.serverPacket) { - return this.method372(var1, 2); - } + if (ServerPacket.IF_SETPLAYERHEAD == var1.serverPacket) { + var21 = var3.readUnsignedIntME(); + var5 = var3.readUnsignedShortLE(); + if (var5 == 65535) { + var5 = -1; + } - if (ServerPacket.CAM_LOOKAT_EASED_COORD == var1.serverPacket) { - destinationX = var3.readUnsignedByte(); - if (destinationX == 255) { - destinationX = 0; + var6 = var3.readUnsignedIntIME(); + var7 = var3.readUnsignedShort(); + if (var7 == 65535) { + var7 = -1; } - destinationY = var3.readUnsignedByte(); - if (destinationY == 255) { - destinationY = 0; + for (var8 = var7; var8 <= var5; ++var8) { + var36 = ((long)var6 << 32) + (long)var8; + Node var39 = widgetFlags.get(var36); + if (var39 != null) { + var39.remove(); + } + + widgetFlags.put(new IntegerNode(var21), var36); } var1.serverPacket = null; return true; } - if (ServerPacket.MESSAGE_CLANCHANNEL_SYSTEM == var1.serverPacket) { - field517 = cycleCntr; - var20 = var3.readByte(); - class160 var69 = new class160(var3); - ClanChannel var35; - if (var20 >= 0) { - var35 = currentClanChannels[var20]; - } else { - var35 = VerticalAlignment.guestClanChannel; - } - - if (var35 == null) { - this.method383(var20); - var1.serverPacket = null; - return true; + if (ServerPacket.MAPPROJ_ANIM == var1.serverPacket) { + var21 = var3.readUnsignedShortAddLE(); + var5 = var3.readUnsignedByteNeg(); + if (var21 == 65535) { + var21 = -1; } - if (var69.field1415 > var35.field1429) { - this.method383(var20); - var1.serverPacket = null; - return true; - } + WorldMapLabelSize.performPlayerAnimation(class229.localPlayer, var21, var5); + var1.serverPacket = null; + return true; + } - if (var69.field1415 < var35.field1429) { - var1.serverPacket = null; - return true; + if (ServerPacket.field2743 == var1.serverPacket) { + var21 = var3.readUnsignedIntIME(); + var5 = var3.readUnsignedShortLE(); + var25 = HealthBarDefinition.widgetDefinition.method1733(var21); + if (var25.modelType != 2 || var5 != var25.modelId) { + var25.modelType = 2; + var25.modelId = var5; + class159.invalidateWidget(var25); } - var69.method844(var35); var1.serverPacket = null; return true; } - if (ServerPacket.field2730 == var1.serverPacket) { - World.processZoneOperation(ZoneOperation.OBJ_DEL); + if (ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL_V2 == var1.serverPacket) { + var21 = var3.readUnsignedByte(); + PacketWriter.forceDisconnect(var21); var1.serverPacket = null; - return true; + return false; } - Messages.RunException_sendStackTrace("" + (var1.serverPacket != null ? var1.serverPacket.id * -908169793 * 1400406591 : -1) + "," + (var1.field1157 != null ? var1.field1157.id * -908169793 * 1400406591 : -1) + "," + (var1.field1158 != null ? var1.field1158.id * -908169793 * 1400406591 : -1) + "," + var1.serverPacketLength, (Throwable)null); - ArchiveDisk.logOut(); - } catch (IOException var48) { - Renderable.method1291(); - } catch (Exception var49) { - var21 = "" + (var1.serverPacket != null ? var1.serverPacket.id * -908169793 * 1400406591 : -1) + "," + (var1.field1157 != null ? var1.field1157.id * -908169793 * 1400406591 : -1) + "," + (var1.field1158 != null ? var1.field1158.id * -908169793 * 1400406591 : -1) + "," + var1.serverPacketLength + "," + (VarbitComposition.localPlayer.pathX[0] + UrlRequester.baseX) + "," + (VarbitComposition.localPlayer.pathY[0] + class47.baseY) + ","; + GrandExchangeOfferWorldComparator.RunException_sendStackTrace("" + (var1.serverPacket != null ? var1.serverPacket.id : -1) + "," + (var1.field1168 != null ? var1.field1168.id : -1) + "," + (var1.field1166 != null ? var1.field1166.id : -1) + "," + var1.serverPacketLength, (Throwable)null); + class13.method51(); + } catch (IOException var47) { + class9.method29(); + } catch (Exception var48) { + var20 = "" + (var1.serverPacket != null ? var1.serverPacket.id : -1) + "," + (var1.field1168 != null ? var1.field1168.id : -1) + "," + (var1.field1166 != null ? var1.field1166.id : -1) + "," + var1.serverPacketLength + "," + (class229.localPlayer.pathX[0] + NewShit.baseX) + "," + (class229.localPlayer.pathY[0] + class101.baseY) + ","; for (var6 = 0; var6 < var1.serverPacketLength && var6 < 50; ++var6) { - var21 = var21 + var3.array[var6] + ","; + var20 = var20 + var3.array[var6] + ","; } - Messages.RunException_sendStackTrace(var21, var49); - ArchiveDisk.logOut(); + GrandExchangeOfferWorldComparator.RunException_sendStackTrace(var20, var48); + class13.method51(); } return true; } } - @ObfuscatedName("lx") + @ObfuscatedName("kl") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-90" + descriptor = "(I)V", + garbageValue = "1598980943" ) @Export("menu") final void menu() { @@ -5478,36 +5578,36 @@ final void menu() { int var20; if (isMenuOpen) { int var15; - if (var19 != 1 && (ObjTypeCustomisation.mouseCam || var19 != 4)) { + if (var19 != 1 && (class19.mouseCam || var19 != 4)) { var2 = MouseHandler.MouseHandler_x; var15 = MouseHandler.MouseHandler_y; - if (var2 < class12.menuX - 10 || var2 > class12.menuX + class316.menuWidth + 10 || var15 < class419.menuY - 10 || var15 > class419.menuY + Occluder.menuHeight + 10) { + if (var2 < FriendSystem.menuX - 10 || var2 > FriendSystem.menuX + class428.menuWidth + 10 || var15 < class60.menuY - 10 || var15 > class515.menuHeight + class60.menuY + 10) { isMenuOpen = false; - var16 = class12.menuX; - var5 = class419.menuY; - var20 = class316.menuWidth; - var7 = Occluder.menuHeight; + var16 = FriendSystem.menuX; + var5 = class60.menuY; + var20 = class428.menuWidth; + var7 = class515.menuHeight; for (var8 = 0; var8 < rootWidgetCount; ++var8) { - if (rootWidgetWidths[var8] + rootWidgetXs[var8] > var16 && rootWidgetXs[var8] < var16 + var20 && rootWidgetYs[var8] + rootWidgetHeights[var8] > var5 && rootWidgetYs[var8] < var5 + var7) { + if (rootWidgetWidths[var8] + rootWidgetXs[var8] > var16 && rootWidgetXs[var8] < var20 + var16 && rootWidgetHeights[var8] + rootWidgetYs[var8] > var5 && rootWidgetYs[var8] < var5 + var7) { field407[var8] = true; } } } } - if (var19 == 1 || !ObjTypeCustomisation.mouseCam && var19 == 4) { - var2 = class12.menuX; - var15 = class419.menuY; - var16 = class316.menuWidth; + if (var19 == 1 || !class19.mouseCam && var19 == 4) { + var2 = FriendSystem.menuX; + var15 = class60.menuY; + var16 = class428.menuWidth; var5 = MouseHandler.MouseHandler_lastPressedX; var20 = MouseHandler.MouseHandler_lastPressedY; var7 = -1; int var9; for (var8 = 0; var8 < menuOptionsCount; ++var8) { - var9 = (menuOptionsCount - 1 - var8) * 15 + var15 + 31; - if (var5 > var2 && var5 < var16 + var2 && var20 > var9 - 13 && var20 < var9 + 3) { + var9 = var15 + (menuOptionsCount - 1 - var8) * 15 + 31; + if (var5 > var2 && var5 < var2 + var16 && var20 > var9 - 13 && var20 < var9 + 3) { var7 = var8; } } @@ -5523,28 +5623,28 @@ final void menu() { var12 = menuItemIds[var7]; String var13 = menuActions[var7]; String var14 = menuTargets[var7]; - IgnoreList.menuAction(var8, var9, var10, var11, var12, var13, var14, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + class407.menuAction(var8, var9, var10, var11, var12, var13, var14, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); } isMenuOpen = false; - var8 = class12.menuX; - var9 = class419.menuY; - var10 = class316.menuWidth; - var11 = Occluder.menuHeight; + var8 = FriendSystem.menuX; + var9 = class60.menuY; + var10 = class428.menuWidth; + var11 = class515.menuHeight; for (var12 = 0; var12 < rootWidgetCount; ++var12) { - if (rootWidgetWidths[var12] + rootWidgetXs[var12] > var8 && rootWidgetXs[var12] < var8 + var10 && rootWidgetHeights[var12] + rootWidgetYs[var12] > var9 && rootWidgetYs[var12] < var9 + var11) { + if (rootWidgetWidths[var12] + rootWidgetXs[var12] > var8 && rootWidgetXs[var12] < var8 + var10 && rootWidgetYs[var12] + rootWidgetHeights[var12] > var9 && rootWidgetYs[var12] < var11 + var9) { field407[var12] = true; } } } } else { var2 = menuOptionsCount - 1; - if ((var19 == 1 || !ObjTypeCustomisation.mouseCam && var19 == 4) && this.shouldLeftClickOpenMenu()) { + if ((var19 == 1 || !class19.mouseCam && var19 == 4) && this.shouldLeftClickOpenMenu()) { var19 = 2; } - if ((var19 == 1 || !ObjTypeCustomisation.mouseCam && var19 == 4) && menuOptionsCount > 0 && var2 >= 0) { + if ((var19 == 1 || !class19.mouseCam && var19 == 4) && menuOptionsCount > 0 && var2 >= 0) { var16 = menuArguments1[var2]; var5 = menuArguments2[var2]; var20 = menuOpcodes[var2]; @@ -5552,7 +5652,7 @@ final void menu() { var8 = menuItemIds[var2]; String var17 = menuActions[var2]; String var18 = menuTargets[var2]; - IgnoreList.menuAction(var16, var5, var20, var7, var8, var17, var18, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); + class407.menuAction(var16, var5, var20, var7, var8, var17, var18, MouseHandler.MouseHandler_lastPressedX, MouseHandler.MouseHandler_lastPressedY); } if (var19 == 2 && menuOptionsCount > 0) { @@ -5563,90 +5663,81 @@ final void menu() { } } - @ObfuscatedName("le") + @ObfuscatedName("kc") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-84" + descriptor = "(I)Z", + garbageValue = "-1230030345" ) @Export("shouldLeftClickOpenMenu") final boolean shouldLeftClickOpenMenu() { int var1 = menuOptionsCount - 1; - return (leftClickOpensMenu && menuOptionsCount > 2 || class53.method298(var1)) && !menuShiftClick[var1]; + return (leftClickOpensMenu && menuOptionsCount > 2 || class514.method2508(var1)) && !menuShiftClick[var1]; } - @ObfuscatedName("lu") + @ObfuscatedName("ka") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1301595463" + descriptor = "(IIB)V", + garbageValue = "-26" ) @Export("openMenu") final void openMenu(int var1, int var2) { - class342.method1867(var1, var2); + Decimator.method322(var1, var2); var1 -= viewportOffsetX; var2 -= viewportOffsetY; - class130.scene.menuOpen(HealthBar.Client_plane, var1, var2, false); + class36.scene.menuOpen(ItemLayer.Client_plane, var1, var2, false); isMenuOpen = true; } - @ObfuscatedName("li") + @ObfuscatedName("lp") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "571828087" + garbageValue = "-577799502" ) - @Export("resizeRoot") - final void resizeRoot(boolean var1) { - int var2 = rootInterface; - int var3 = class113.canvasWidth; - int var4 = class177.canvasHeight; - if (ModeWhere.loadInterface(var2)) { - PcmPlayer.resizeInterface(PacketBufferNode.Widget_interfaceComponents[var2], -1, var3, var4, var1); - } - + final void method389(boolean var1) { + NPCComposition.method952(rootInterface, Language.canvasWidth, class47.canvasHeight, var1); } - @ObfuscatedName("ll") + @ObfuscatedName("lh") @ObfuscatedSignature( - descriptor = "(Lmi;I)V", - garbageValue = "649704501" + descriptor = "(Lnn;I)V", + garbageValue = "1484692020" ) @Export("alignWidget") void alignWidget(Widget var1) { - Widget var2 = var1.parentId == -1 ? null : class92.getWidget(var1.parentId); + Widget var2 = var1.parentId == -1 ? null : HealthBarDefinition.widgetDefinition.method1733(var1.parentId); int var3; int var4; if (var2 == null) { - var3 = class113.canvasWidth; - var4 = class177.canvasHeight; + var3 = Language.canvasWidth; + var4 = class47.canvasHeight; } else { var3 = var2.width; var4 = var2.height; } - class369.alignWidgetSize(var1, var3, var4, false); - WorldMapArea.alignWidgetPosition(var1, var3, var4); + Renderable.alignWidgetSize(var1, var3, var4, false); + JagexCache.alignWidgetPosition(var1, var3, var4); } - @ObfuscatedName("mb") + @ObfuscatedName("mf") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-332488970" + descriptor = "(B)V", + garbageValue = "-74" ) - final void method380() { - class218.invalidateWidget(clickedWidget); - ++class159.widgetDragDuration; - int var1; - int var2; - if (field397 && field395) { - var1 = MouseHandler.MouseHandler_x; - var2 = MouseHandler.MouseHandler_y; + final void method391() { + class159.invalidateWidget(clickedWidget); + ++class148.widgetDragDuration; + if (field397 && field396) { + int var1 = MouseHandler.MouseHandler_x; + int var2 = MouseHandler.MouseHandler_y; var1 -= widgetClickX; var2 -= widgetClickY; - if (var1 < field514) { - var1 = field514; + if (var1 < field512) { + var1 = field512; } - if (var1 + clickedWidget.width > field514 + clickedWidgetParent.width) { - var1 = field514 + clickedWidgetParent.width - clickedWidget.width; + if (var1 + clickedWidget.width > field512 + clickedWidgetParent.width) { + var1 = field512 + clickedWidgetParent.width - clickedWidget.width; } if (var2 < field513) { @@ -5657,14 +5748,14 @@ final void method380() { var2 = field513 + clickedWidgetParent.height - clickedWidget.height; } - int var3 = var1 - field515; - int var4 = var2 - field521; + int var3 = var1 - field514; + int var4 = var2 - field508; int var5 = clickedWidget.dragZoneSize; - if (class159.widgetDragDuration > clickedWidget.dragThreshold && (var3 > var5 || var3 < -var5 || var4 > var5 || var4 < -var5)) { + if (class148.widgetDragDuration > clickedWidget.dragThreshold && (var3 > var5 || var3 < -var5 || var4 > var5 || var4 < -var5)) { isDraggingWidget = true; } - int var6 = var1 - field514 + clickedWidgetParent.scrollX; + int var6 = var1 - field512 + clickedWidgetParent.scrollX; int var7 = var2 - field513 + clickedWidgetParent.scrollY; ScriptEvent var8; if (clickedWidget.onDrag != null && isDraggingWidget) { @@ -5673,7 +5764,7 @@ final void method380() { var8.mouseX = var6; var8.mouseY = var7; var8.args = clickedWidget.onDrag; - WorldMapSection1.runScriptEvent(var8); + class157.runScriptEvent(var8); } if (MouseHandler.MouseHandler_currentButton == 0) { @@ -5685,39 +5776,32 @@ final void method380() { var8.mouseY = var7; var8.dragTarget = draggedOnWidget; var8.args = clickedWidget.onDragComplete; - WorldMapSection1.runScriptEvent(var8); + class157.runScriptEvent(var8); } - if (draggedOnWidget != null && BuddyRankComparator.method691(clickedWidget) != null) { - PacketBufferNode var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTOND, packetWriter.isaacCipher); - var10.packetBuffer.writeIntIME_(clickedWidget.id); - var10.packetBuffer.writeIntLE(draggedOnWidget.id); - var10.packetBuffer.writeShort(clickedWidget.childIndex); - var10.packetBuffer.writeShort(draggedOnWidget.itemId); - var10.packetBuffer.writeShortAdd(draggedOnWidget.childIndex); - var10.packetBuffer.writeShortAdd(clickedWidget.itemId); - packetWriter.addNode(var10); + if (draggedOnWidget != null && class227.method1165(clickedWidget) != null) { + PacketBufferNode var9 = class113.getPacketBufferNode(ClientPacket.field2559, packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(clickedWidget.itemId); + var9.packetBuffer.writeShortAddLE(draggedOnWidget.childIndex); + var9.packetBuffer.writeIntME(clickedWidget.id); + var9.packetBuffer.writeInt(draggedOnWidget.id); + var9.packetBuffer.writeShortAdd(clickedWidget.childIndex); + var9.packetBuffer.writeShortAddLE(draggedOnWidget.itemId); + packetWriter.addNode(var9); } } else if (this.shouldLeftClickOpenMenu()) { - this.openMenu(field515 + widgetClickX, field521 + widgetClickY); + this.openMenu(field514 + widgetClickX, field508 + widgetClickY); } else if (menuOptionsCount > 0) { - method381(widgetClickX + field515, widgetClickY + field521); + method392(widgetClickX + field514, field508 + widgetClickY); } clickedWidget = null; } } else { - if (class159.widgetDragDuration > 1) { + if (class148.widgetDragDuration > 1) { if (!isDraggingWidget && menuOptionsCount > 0) { - var1 = widgetClickX + field515; - var2 = widgetClickY + field521; - MenuAction var9 = class9.tempMenuAction; - if (var9 != null) { - IgnoreList.menuAction(var9.param0, var9.param1, var9.opcode, var9.identifier, var9.itemId, var9.action, var9.target, var1, var2); - } - - class9.tempMenuAction = null; + method392(widgetClickX + field514, widgetClickY + field508); } clickedWidget = null; @@ -5726,38 +5810,38 @@ final void method380() { } } - @ObfuscatedName("ok") + @ObfuscatedName("or") @ObfuscatedSignature( - descriptor = "(S)Luc;", - garbageValue = "-775" + descriptor = "(I)Lvj;", + garbageValue = "-1748725154" ) @Export("username") public Username username() { - return VarbitComposition.localPlayer != null ? VarbitComposition.localPlayer.username : null; + return class229.localPlayer != null ? class229.localPlayer.username : null; } - @ObfuscatedName("of") + @ObfuscatedName("ob") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "516" + descriptor = "(II)V", + garbageValue = "-1572672090" ) - void method383(int var1) { + void method394(int var1) { if (param25 >= 216) { - PacketBufferNode var2 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2582, packetWriter.isaacCipher); + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.UNKNOWN2, packetWriter.isaacCipher); var2.packetBuffer.writeByte(var1); packetWriter.addNode(var2); } } - @ObfuscatedName("ps") + @ObfuscatedName("os") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1345860990" + garbageValue = "-1728239313" ) - void method384(int var1) { + void method395(int var1) { if (param25 >= 216) { - PacketBufferNode var2 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2572, packetWriter.isaacCipher); + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.f1, packetWriter.isaacCipher); var2.packetBuffer.writeByte(var1); packetWriter.addNode(var2); } @@ -5789,49 +5873,48 @@ public final void init() { worldProperties = Integer.parseInt(var2); break; case 6: - ClanChannelMember.clientLanguage = Language.method1976(Integer.parseInt(var2)); + class85.clientLanguage = Language.method1995(Integer.parseInt(var2)); break; case 7: int var4 = Integer.parseInt(var2); - GameBuild[] var5 = UrlRequest.method664(); + GameBuild[] var5 = class13.method50(); int var6 = 0; - GameBuild var13; + GameBuild var8; while (true) { if (var6 >= var5.length) { - var13 = null; + var8 = null; break; } GameBuild var7 = var5[var6]; if (var4 == var7.buildId) { - var13 = var7; + var8 = var7; break; } ++var6; } - WorldMapLabelSize.field2323 = var13; + class191.field1585 = var8; break; case 8: if (var2.equalsIgnoreCase("true")) { } break; case 9: - MusicPatchPcmStream.param9 = var2; + MenuAction.param9 = var2; break; case 10: - StudioGame[] var3 = new StudioGame[]{StudioGame.stellardawn, StudioGame.game5, StudioGame.game4, StudioGame.runescape, StudioGame.game3, StudioGame.oldscape}; - WorldMapSectionType.field2417 = (StudioGame)KeyHandler.findEnumerated(var3, Integer.parseInt(var2)); - if (StudioGame.oldscape == WorldMapSectionType.field2417) { - Language.loginType = LoginType.oldscape; + Messages.field1156 = (StudioGame)class12.findEnumerated(VerticalAlignment.method955(), Integer.parseInt(var2)); + if (Messages.field1156 == StudioGame.oldscape) { + class89.loginType = LoginType.oldscape; } else { - Language.loginType = LoginType.field4066; + class89.loginType = LoginType.field4092; } break; case 11: - class510.field4133 = var2; + class314.field2776 = var2; break; case 12: worldId = Integer.parseInt(var2); @@ -5840,30 +5923,32 @@ public final void init() { case 18: case 19: case 20: - case 22: case 23: case 24: default: break; case 14: - WorldMapSectionType.field2416 = Integer.parseInt(var2); + DevicePcmPlayerProvider.field66 = Integer.parseInt(var2); break; case 15: gameBuild = Integer.parseInt(var2); break; case 17: - class200.field1669 = var2; + MoveSpeed.field1933 = var2; break; case 21: param21 = Integer.parseInt(var2); break; + case 22: + FriendsChat.field3821 = var2; + break; case 25: - int var8 = var2.indexOf("."); - if (var8 == -1) { + int var3 = var2.indexOf("."); + if (var3 == -1) { param25 = Integer.parseInt(var2); } else { - param25 = Integer.parseInt(var2.substring(0, var8)); - Integer.parseInt(var2.substring(var8 + 1)); + param25 = Integer.parseInt(var2.substring(0, var3)); + Integer.parseInt(var2.substring(var3 + 1)); } } } @@ -5871,89 +5956,101 @@ public final void init() { Scene.Scene_isLowDetail = false; isLowDetail = false; - class292.worldHost = this.getCodeBase().getHost(); - class308.field2819 = new JagNetThread(); - String var9 = WorldMapLabelSize.field2323.name; + Friend.worldHost = this.getCodeBase().getHost(); + WorldMapSectionType.field2038 = new JagNetThread(); + String var9 = class191.field1585.name; byte var10 = 0; - if ((worldProperties & class510.field4125.rsOrdinal()) != 0) { - class30.field83 = "beta"; + if ((worldProperties & class522.field4153.rsOrdinal()) != 0) { + ItemLayer.field2109 = "beta"; } try { - SecureRandomCallable.method462("oldschool", class30.field83, var9, var10, 22); - } catch (Exception var11) { - Messages.RunException_sendStackTrace((String)null, var11); + class339.method1744("oldschool", ItemLayer.field2109, var9, var10, 23); + } catch (Exception var12) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var12); + } + + SpriteMask.client = this; + RuneLiteMenuEntry.client = (RSClient)(Object) this; + RunException.field4317 = clientType; + Messages.field1155 = System.getenv("JX_ACCESS_TOKEN"); + ObjectComposition.field1664 = System.getenv("JX_REFRESH_TOKEN"); + class369.field3560 = System.getenv("JX_SESSION_ID"); + InterfaceParent.field862 = System.getenv("JX_CHARACTER_ID"); + String var14 = System.getenv("JX_DISPLAY_NAME"); + String var11; + if (var14 != null && !var14.isEmpty() && var14.charAt(0) != '#') { + var11 = var14; + } else { + var11 = ""; } - class219.client = this; - RuneLiteMenuEntry.client = (RSClient) (Object) this; - RunException.field4285 = clientType; - class18.method58(); + Login.field763 = var11; if (Boolean.parseBoolean(System.getProperty("jagex.disableBouncyCastle"))) { this.field661 = true; } if (field424 == -1) { - if (!this.method352() && !this.method353()) { + if (!this.method364() && !this.method365()) { field424 = 0; } else { field424 = 5; } } - this.startThread(765, 503, 216, 1); + this.startThread(765, 503, 218, 1); } - } catch (RuntimeException var12) { - throw SecureRandomFuture.method438(var12, "client.init(" + ')'); + } catch (RuntimeException var13) { + throw CollisionMap.method1136(var13, "client.init(" + ')'); } } @Export("finalize") @ObfuscatedName("finalize") protected void finalize() throws Throwable { - HorizontalAlignment.method975(this); + InterfaceParent.method462(this); super.finalize(); } - @ObfuscatedName("ax") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "24" + descriptor = "(Luo;B)I", + garbageValue = "80" ) - static final int method357(int var0, int var1) { - if (var0 == -2) { - return 12345678; - } else if (var0 == -1) { - if (var1 < 2) { - var1 = 2; - } else if (var1 > 126) { - var1 = 126; - } - - return var1; + static int method361(PacketBuffer var0) { + int var1 = var0.readBits(2); + int var2; + if (var1 == 0) { + var2 = 0; + } else if (var1 == 1) { + var2 = var0.readBits(5); + } else if (var1 == 2) { + var2 = var0.readBits(8); } else { - var1 = (var0 & 127) * var1 / 128; - if (var1 < 2) { - var1 = 2; - } else if (var1 > 126) { - var1 = 126; - } - - return (var0 & 65408) + var1; + var2 = var0.readBits(11); } + + return var2; } - @ObfuscatedName("mm") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "18" + descriptor = "(I)V", + garbageValue = "743374996" ) - static void method381(int var0, int var1) { - MenuAction var2 = class9.tempMenuAction; - if (var2 != null) { - IgnoreList.menuAction(var2.param0, var2.param1, var2.opcode, var2.identifier, var2.itemId, var2.action, var2.target, var0, var1); - } + public static void method360() { + HitSplatDefinition.HitSplatDefinition_cached.clear(); + HitSplatDefinition.HitSplatDefinition_cachedSprites.clear(); + HitSplatDefinition.HitSplatDefinition_cachedFonts.clear(); + } - class9.tempMenuAction = null; + @ObfuscatedName("mj") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "2100775885" + ) + static void method392(int var0, int var1) { + class59.method334(class174.tempMenuAction, var0, var1); + class174.tempMenuAction = null; } } \ No newline at end of file diff --git a/osrs/src/main/java/ClientPacket.java b/osrs/src/main/java/ClientPacket.java index 6bb6d1198..f369171a9 100644 --- a/osrs/src/main/java/ClientPacket.java +++ b/osrs/src/main/java/ClientPacket.java @@ -3,679 +3,690 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lw") +@ObfuscatedName("lq") @Implements("ClientPacket") -public class ClientPacket implements class293 { - @ObfuscatedName("au") +public class ClientPacket implements class304 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - static final ClientPacket field2592; - @ObfuscatedName("ae") + @Export("EVENT_MOUSE_IDLE") + public static final ClientPacket EVENT_MOUSE_IDLE; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON8") - public static final ClientPacket IF_BUTTON8; + @Export("OPNPC2") + public static final ClientPacket OPNPC2; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Llq;" + ) + @Export("OPNPC3") + public static final ClientPacket OPNPC3; @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("RESUME_P_NAMEDIALOG") - public static final ClientPacket RESUME_P_NAMEDIALOG; - @ObfuscatedName("at") + @Export("f49") + public static final ClientPacket f49; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("NATIVE_PACKET3") - public static final ClientPacket OPLOC2; + @Export("f10") + public static final ClientPacket f10; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Llq;" + ) + @Export("IF_BUTTON10") + public static final ClientPacket IF_BUTTON10; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Llq;" + ) + @Export("OPPLAYERT") + public static final ClientPacket OPPLAYERT; @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IGNORELIST_ADD") - public static final ClientPacket IGNORELIST_ADD; - @ObfuscatedName("ai") + public static final ClientPacket field2515; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON4") - public static final ClientPacket IF_BUTTON4; + @Export("IGNORE_DELUSER") + public static final ClientPacket IGNORE_DELUSER; @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON6") - public static final ClientPacket IF_BUTTON6; + @Export("DETECT_MODIFIED_CLIENT") + public static final ClientPacket DETECT_MODIFIED_CLIENT; @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CLICKWORLDMAP") - public static final ClientPacket CLICKWORLDMAP; - @ObfuscatedName("aa") + @Export("MOVE_GAMECLICK") + public static final ClientPacket MOVE_GAMECLICK; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CLOSE_MODAL") - public static final ClientPacket CLOSE_MODAL; - @ObfuscatedName("af") + @Export("f2") + public static final ClientPacket f2; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPOBJ2") - static final ClientPacket OPOBJ2_; - @ObfuscatedName("ad") + @Export("f20") + public static final ClientPacket f20; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) @Export("OPPLAYER1") public static final ClientPacket OPPLAYER1; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Llw;" - ) - @Export("CLIENT_CHEAT") - public static final ClientPacket CLIENT_CHEAT; - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Llw;" - ) - @Export("OPLOC6") - public static final ClientPacket OPLOC6; - @ObfuscatedName("an") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPPLAYER5; - @ObfuscatedName("ar") + @Export("IF_BUTTONT") + public static final ClientPacket IF_BUTTONT; + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket IF_BUTTONT; - @ObfuscatedName("ab") + @Export("OPNPC1") + public static final ClientPacket OPNPC1; + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("LOGIN_STATISTICS") - public static final ClientPacket LOGIN_STATISTICS; - @ObfuscatedName("ag") + @Export("OPNPCT") + public static final ClientPacket OPNPCT; + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) @Export("IF_BUTTON2") public static final ClientPacket IF_BUTTON2; - @ObfuscatedName("am") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("MAP_BUILD_COMPLETE") - public static final ClientPacket MAP_BUILD_COMPLETE; - @ObfuscatedName("ax") + @Export("CHAT_SETFILTER") + public static final ClientPacket CHAT_SETFILTER; + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPLOCT; - @ObfuscatedName("ah") + @Export("IF_BUTTON4") + public static final ClientPacket IF_BUTTON4; + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("FRIENDLIST_ADD") - public static final ClientPacket FRIENDLIST_ADD; - @ObfuscatedName("as") + @Export("IF_BUTTON5") + public static final ClientPacket IF_BUTTON5; + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPPLAYER7") - public static final ClientPacket OPPLAYER7; - @ObfuscatedName("ay") + @Export("IF_BUTTON9") + public static final ClientPacket IF_BUTTON9; + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("AFFINEDCLANSETTINGS_SETMUTED_FROMCHANNEL") - public static final ClientPacket AFFINEDCLANSETTINGS_SETMUTED_FROMCHANNEL; - @ObfuscatedName("aj") + @Export("OPOBJ2") + public static final ClientPacket OPOBJ2; + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("BUG_REPORT") - public static final ClientPacket BUG_REPORT; - @ObfuscatedName("av") + @Export("OPPLAYER2") + public static final ClientPacket OPPLAYER2; + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("EVENT_CAMERA_POSITION") - public static final ClientPacket EVENT_CAMERA_POSITION; - @ObfuscatedName("aw") + @Export("f88") + public static final ClientPacket f88; + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IDLE_LOGOUT") - public static final ClientPacket IDLE_LOGOUT; - @ObfuscatedName("ak") + @Export("IDLE") + public static final ClientPacket IDLE; + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPC6") - public static final ClientPacket OPNPC6; - @ObfuscatedName("bh") + public static final ClientPacket f1; + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON1") - public static final ClientPacket IF_BUTTON1; - @ObfuscatedName("bj") + @Export("IF_BUTTON8") + public static final ClientPacket IF_BUTTON8; + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("TELEPORT") - public static final ClientPacket TELEPORT; - @ObfuscatedName("bk") + @Export("NO_TIMEOUT") + public static final ClientPacket NO_TIMEOUT; + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPOBJ1; + @Export("OPNPC5") + public static final ClientPacket OPNPC5; @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("EVENT_KEYBOARD") - public static final ClientPacket EVENT_KEYBOARD; - @ObfuscatedName("bt") + @Export("OPOBJ3") + public static final ClientPacket OPOBJ3; + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPC5") - static final ClientPacket OPNPC5_; - @ObfuscatedName("bd") + @Export("IF_BUTTON3") + public static final ClientPacket IF_BUTTON3; + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPC1") - public static final ClientPacket OPPLAYER2; - @ObfuscatedName("by") + @Export("f66") + public static final ClientPacket f66; + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON10") - public static final ClientPacket IF_BUTTON10; - @ObfuscatedName("bs") + static final ClientPacket field2606; + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("SEND_PING_REPLY") - public static final ClientPacket EVENT_MOUSE_CLICK; - @ObfuscatedName("bm") + @Export("OPPLAYER5") + public static final ClientPacket OPPLAYER5; + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPNPC1; - @ObfuscatedName("bf") + @Export("FREECAM_EXIT") + public static final ClientPacket FREECAM_EXIT; + @ObfuscatedName("bw") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPOBJU") - public static final ClientPacket OPNPC5; - @ObfuscatedName("bq") + public static final ClientPacket field2559; + @ObfuscatedName("bj") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPLOCU") - public static final ClientPacket OPLOC5; - @ObfuscatedName("ba") + @Export("OPOBJ4") + public static final ClientPacket OPOBJ4; + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("MESSAGE_PUBLIC") - public static final ClientPacket MESSAGE_PUBLIC; - @ObfuscatedName("bl") + @Export("OPOBJT") + public static final ClientPacket OPOBJT; + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("MOVE_GAMECLICK") - public static final ClientPacket MOVE_GAMECLICK; - @ObfuscatedName("bp") + @Export("EVENT_MOUSE_CLICK") + public static final ClientPacket EVENT_MOUSE_CLICK; + @ObfuscatedName("bt") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) + @Export("OPLOC3") public static final ClientPacket OPLOC3; @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "Llw;" - ) - @Export("NO_TIMEOUT") - public static final ClientPacket NO_TIMEOUT; - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("MOVE_MINIMAPCLICK") - public static final ClientPacket MOVE_MINIMAPCLICK; - @ObfuscatedName("bb") + @Export("OPPLAYER4") + public static final ClientPacket OPPLAYER4; + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPOBJ3") - static final ClientPacket OPOBJ3; - @ObfuscatedName("br") + @Export("RESUME_NAMEDIALOG") + public static final ClientPacket RESUME_NAMEDIALOG; + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("REFLECTION_CHECK_REPLY") - public static final ClientPacket REFLECTION_CHECK_REPLY; - @ObfuscatedName("be") + static final ClientPacket field2607; + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPOBJ4; - @ObfuscatedName("bi") + @Export("LOGIN_TIMINGS") + public static final ClientPacket LOGIN_TIMINGS; + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPOBJ5") - public static final ClientPacket OPOBJ5_; - @ObfuscatedName("bz") + @Export("f53") + public static final ClientPacket f53; + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPOBJE; + @Export("f4") + public static final ClientPacket MIDDLE_MOUSE; @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("EVENT_APPLET_FOCUS") - public static final ClientPacket EVENT_APPLET_FOCUS; - @ObfuscatedName("bn") + @Export("SOUND_SONGEND") + public static final ClientPacket SOUND_SONGEND; + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPPLAYER6") - public static final ClientPacket OPPLAYER6; - @ObfuscatedName("bw") + @Export("CLAN_KICKUSER") + public static final ClientPacket CLAN_KICKUSER; + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("RESUME_P_STRINGDIALOG") - public static final ClientPacket RESUME_P_STRINGDIALOG; - @ObfuscatedName("bc") + @Export("IF_BUTTON7") + public static final ClientPacket IF_BUTTON7; + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPOBJ2; - @ObfuscatedName("bg") + @Export("OPOBJ1") + public static final ClientPacket OPOBJ1; + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPC4") - public static final ClientPacket OPNPCU; - @ObfuscatedName("cw") + @Export("OPPLAYER7") + public static final ClientPacket OPPLAYER7; + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2567; - @ObfuscatedName("cf") + @Export("f51") + public static final ClientPacket f51; + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPCT") - public static final ClientPacket OPNPC2; - @ObfuscatedName("cm") + @Export("OPPLAYER2") + public static final ClientPacket WIDGET_TYPE5; + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("EXIT_FREECAM") - public static final ClientPacket EXIT_FREECAM; - @ObfuscatedName("cn") + @Export("RESUME_STRINGDIALOG") + public static final ClientPacket RESUME_STRINGDIALOG; + @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON7") - public static final ClientPacket IF_BUTTON7; - @ObfuscatedName("cs") + @Export("CLOSE_MODAL") + public static final ClientPacket CLOSE_MODAL; + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CONTINUE") - public static final ClientPacket CONTINUE; - @ObfuscatedName("cx") + @Export("OPNPC4") + public static final ClientPacket OPNPC4; + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IGNORELIST_DEL") - public static final ClientPacket IGNORELIST_DEL; - @ObfuscatedName("cr") + @Export("RESUME_COUNTDIALOG") + public static final ClientPacket RESUME_COUNTDIALOG; + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPLOC2") - public static final ClientPacket OPPLAYERT; - @ObfuscatedName("cd") + @Export("DOCHEAT") + public static final ClientPacket DOCHEAT; + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPNPCU") - public static final ClientPacket OPNPC4; - @ObfuscatedName("ce") + @Export("RESUME_OBJDIALOG") + public static final ClientPacket RESUME_OBJDIALOG; + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("UPDATE_APPEARANCE") - public static final ClientPacket UPDATE_APPEARANCE; + @Export("f96") + public static final ClientPacket f96; @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPPLAYER5") - public static final ClientPacket OPPLAYER8; - @ObfuscatedName("cp") + @Export("OPLOCT") + public static final ClientPacket OPLOCT; + @ObfuscatedName("cl") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("EVENT_MOUSE_SCROLl") - public static final ClientPacket EVENT_MOUSE_SCROLl; - @ObfuscatedName("cv") + @Export("OPLOC1") + public static final ClientPacket OPLOC1; + @ObfuscatedName("cs") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("NATIVE_PACKET2") - public static final ClientPacket OPPLAYER3; + public static final ClientPacket field2580; @ObfuscatedName("co") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPLOCE; - @ObfuscatedName("cl") + @Export("OPPLAYER6") + public static final ClientPacket OPPLAYER6; + @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPNPCE; - @ObfuscatedName("cu") + public static final ClientPacket UNKNOWN2; + @ObfuscatedName("cn") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPPLAYER4") - public static final ClientPacket OPPLAYER4; - @ObfuscatedName("ch") + @Export("FRIEND_DELETE_USER") + public static final ClientPacket FRIEND_DELETE_USER; + @ObfuscatedName("cr") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CLAN_JOINCHAT_LEAVECHAT") - public static final ClientPacket CLAN_JOINCHAT_LEAVECHAT; - @ObfuscatedName("ci") + @Export("CHAT_SEND_ABUSE_REPORT") + public static final ClientPacket CHAT_SEND_ABUSE_REPORT; + @ObfuscatedName("cj") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON3") - public static final ClientPacket IF_BUTTON3; + static final ClientPacket field2608; @ObfuscatedName("ca") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPPLAYERU") - public static final ClientPacket OPPLAYERU; - @ObfuscatedName("cb") + @Export("OPOBJE") + public static final ClientPacket OPOBJE; + @ObfuscatedName("cc") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("AFFINEDCLANSETTINGS_ADDBANNED_FROMCHANNEL") - public static final ClientPacket AFFINEDCLANSETTINGS_ADDBANNED_FROMCHANNEL; - @ObfuscatedName("cg") + @Export("IF_BUTTON1") + public static final ClientPacket IF_BUTTON1; + @ObfuscatedName("cu") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("OPOBJ6") - public static final ClientPacket OPOBJ5; - @ObfuscatedName("cj") + @Export("EVENT_APPLET_FOCUS") + public static final ClientPacket EVENT_APPLET_FOCUS; + @ObfuscatedName("ch") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket notsure; - @ObfuscatedName("cz") + @Export("f52") + public static final ClientPacket f52; + @ObfuscatedName("cb") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPLOC4; - @ObfuscatedName("ct") + @Export("OPPLAYERU") + public static final ClientPacket OPPLAYERU; + @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("FRIEND_SETRANK") - public static final ClientPacket FRIEND_SETRANK; + public static final ClientPacket field2587; @ObfuscatedName("cy") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2569; + @Export("f9") + public static final ClientPacket f9; @ObfuscatedName("ck") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON9") - public static final ClientPacket IF_BUTTON9; - @ObfuscatedName("cc") + @Export("RESUME_PAUSEBUTTON") + public static final ClientPacket RESUME_PAUSEBUTTON; + @ObfuscatedName("cd") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPOBJT; - @ObfuscatedName("dh") + @Export("CHAT_SENDPRIVATE") + public static final ClientPacket CHAT_SENDPRIVATE; + @ObfuscatedName("dt") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPNPCT; - @ObfuscatedName("dj") + @Export("REFLECTION_CHECK_REPLY") + public static final ClientPacket REFLECTION_CHECK_REPLY; + @ObfuscatedName("di") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPLOC1; - @ObfuscatedName("di") + @Export("IF_BUTTON6") + public static final ClientPacket IF_BUTTON6; + @ObfuscatedName("dk") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("SET_CHATFILTERSETTINGS") - public static final ClientPacket SET_CHATFILTERSETTINGS; - @ObfuscatedName("du") + @Export("OPLOC2") + public static final ClientPacket OPLOC2; + @ObfuscatedName("dd") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket OPNPC3; - @ObfuscatedName("dn") + @Export("FIREND_ADDUSER") + public static final ClientPacket FIREND_ADDUSER; + @ObfuscatedName("dx") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2581; - @ObfuscatedName("dg") + public static final ClientPacket field2604; + @ObfuscatedName("dh") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CLANCHANNEL_KICKUSER") - public static final ClientPacket CLANCHANNEL_KICKUSER; - @ObfuscatedName("dd") + public static final ClientPacket field2593; + @ObfuscatedName("du") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("SEND_SNAPSHOT") - public static final ClientPacket SEND_SNAPSHOT; - @ObfuscatedName("da") + @Export("OPPLAYER3") + public static final ClientPacket OPPLAYER3; + @ObfuscatedName("dg") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("MESSAGE_PRIVATE") - public static final ClientPacket MESSAGE_PRIVATE; - @ObfuscatedName("ds") + @Export("f65") + public static final ClientPacket f65; + @ObfuscatedName("dc") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("FRIENDLIST_DEL") - public static final ClientPacket FRIENDLIST_DEL; - @ObfuscatedName("dy") + public static final ClientPacket NOTUSED1; + @ObfuscatedName("do") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("CLAN_KICKUSER") - public static final ClientPacket CLAN_KICKUSER; - @ObfuscatedName("dt") + @Export("f83") + public static final ClientPacket f83; + @ObfuscatedName("db") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("DETECT_MODIFIED_CLIENT") - public static final ClientPacket DETECT_MODIFIED_CLIENT; - @ObfuscatedName("dl") + @Export("OPLOC5") + public static final ClientPacket OPLOC5; + @ObfuscatedName("dm") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTON5") - public static final ClientPacket IF_BUTTON5; - @ObfuscatedName("dk") + @Export("f22") + public static final ClientPacket f22; + @ObfuscatedName("dr") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("WINDOW_STATUS") - public static final ClientPacket WINDOW_STATUS; - @ObfuscatedName("df") + @Export("OPLOCE") + public static final ClientPacket OPLOCE; + @ObfuscatedName("ds") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("RESUME_P_OBJDIALOG") - public static final ClientPacket RESUME_P_OBJDIALOG; - @ObfuscatedName("dz") + @Export("EVENT_CAMERA_FOCUS") + public static final ClientPacket EVENT_CAMERA_FOCUS; + @ObfuscatedName("da") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("SOUND_SONGEND") - public static final ClientPacket SOUND_SONGEND; + @Export("f97") + public static final ClientPacket f97; @ObfuscatedName("dw") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("IF_BUTTOND") - public static final ClientPacket IF_BUTTOND; - @ObfuscatedName("dv") + static final ClientPacket field2610; + @ObfuscatedName("dp") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - @Export("RESUME_P_COUNTDIALOG") - public static final ClientPacket RESUME_P_COUNTDIALOG; - @ObfuscatedName("dr") + @Export("OPLOC4") + public static final ClientPacket OPLOC4; + @ObfuscatedName("df") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2583; - @ObfuscatedName("do") + @Export("OPPLAYER8") + public static final ClientPacket OPPLAYER8; + @ObfuscatedName("dv") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2582; - @ObfuscatedName("db") + @Export("OPHELDD") + public static final ClientPacket OPHELDD; + @ObfuscatedName("dz") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) - public static final ClientPacket field2572; - @ObfuscatedName("dp") + @Export("OPOBJ5") + public static final ClientPacket OPOBJ5; + @ObfuscatedName("dl") @Export("id") public final int id; - @ObfuscatedName("dm") + @ObfuscatedName("de") @Export("length") public final int length; static { - field2592 = new ClientPacket(0, 2); - IF_BUTTON8 = new ClientPacket(1, 8); - RESUME_P_NAMEDIALOG = new ClientPacket(2, -1); - OPLOC2 = new ClientPacket(3, 7); - IGNORELIST_ADD = new ClientPacket(4, -1); - IF_BUTTON4 = new ClientPacket(5, 8); - IF_BUTTON6 = new ClientPacket(6, 8); - CLICKWORLDMAP = new ClientPacket(7, 4); - CLOSE_MODAL = new ClientPacket(8, 0); - OPOBJ2_ = new ClientPacket(9, -1); - OPPLAYER1 = new ClientPacket(10, 3); - CLIENT_CHEAT = new ClientPacket(11, -1); - OPLOC6 = new ClientPacket(12, 15); - OPPLAYER5 = new ClientPacket(13, 3); + EVENT_MOUSE_IDLE = new ClientPacket(0, 5); + OPNPC2 = new ClientPacket(1, 3); + OPNPC3 = new ClientPacket(2, 3); + f49 = new ClientPacket(3, 0); + f10 = new ClientPacket(4, -1); + IF_BUTTON10 = new ClientPacket(5, 8); + OPPLAYERT = new ClientPacket(6, 11); + field2515 = new ClientPacket(7, 0); + IGNORE_DELUSER = new ClientPacket(8, -1); + DETECT_MODIFIED_CLIENT = new ClientPacket(9, 4); + MOVE_GAMECLICK = new ClientPacket(10, -1); + f2 = new ClientPacket(11, -1); + f20 = new ClientPacket(12, 9); + OPPLAYER1 = new ClientPacket(13, 3); IF_BUTTONT = new ClientPacket(14, 16); - LOGIN_STATISTICS = new ClientPacket(15, -1); - IF_BUTTON2 = new ClientPacket(16, 8); - MAP_BUILD_COMPLETE = new ClientPacket(17, 0); - OPLOCT = new ClientPacket(18, 15); - FRIENDLIST_ADD = new ClientPacket(19, -1); - OPPLAYER7 = new ClientPacket(20, 3); - AFFINEDCLANSETTINGS_SETMUTED_FROMCHANNEL = new ClientPacket(21, -1); - BUG_REPORT = new ClientPacket(22, -2); - EVENT_CAMERA_POSITION = new ClientPacket(23, 4); - IDLE_LOGOUT = new ClientPacket(24, 0); - OPNPC6 = new ClientPacket(25, 7); - IF_BUTTON1 = new ClientPacket(26, 8); - TELEPORT = new ClientPacket(27, 9); - OPOBJ1 = new ClientPacket(28, 7); - EVENT_KEYBOARD = new ClientPacket(29, -2); - OPNPC5_ = new ClientPacket(30, 2); - OPPLAYER2 = new ClientPacket(31, 3); - IF_BUTTON10 = new ClientPacket(32, 8); - EVENT_MOUSE_CLICK = new ClientPacket(33, 6); - OPNPC1 = new ClientPacket(34, 3); - OPNPC5 = new ClientPacket(35, 3); - OPLOC5 = new ClientPacket(36, 7); - MESSAGE_PUBLIC = new ClientPacket(37, -1); - MOVE_GAMECLICK = new ClientPacket(38, -1); - OPLOC3 = new ClientPacket(39, 7); - NO_TIMEOUT = new ClientPacket(40, 0); - MOVE_MINIMAPCLICK = new ClientPacket(41, -1); - OPOBJ3 = new ClientPacket(42, -1); - REFLECTION_CHECK_REPLY = new ClientPacket(43, -1); - OPOBJ4 = new ClientPacket(44, 7); - OPOBJ5_ = new ClientPacket(45, 7); - OPOBJE = new ClientPacket(46, 6); - EVENT_APPLET_FOCUS = new ClientPacket(47, 1); - OPPLAYER6 = new ClientPacket(48, 3); - RESUME_P_STRINGDIALOG = new ClientPacket(49, -1); - OPOBJ2 = new ClientPacket(50, 7); - OPNPCU = new ClientPacket(51, 11); - field2567 = new ClientPacket(52, 4); - OPNPC2 = new ClientPacket(53, 3); - EXIT_FREECAM = new ClientPacket(54, 15); - IF_BUTTON7 = new ClientPacket(55, 8); - CONTINUE = new ClientPacket(56, 6); - IGNORELIST_DEL = new ClientPacket(57, -1); - OPPLAYERT = new ClientPacket(58, 11); - OPNPC4 = new ClientPacket(59, 3); - UPDATE_APPEARANCE = new ClientPacket(60, 13); - OPPLAYER8 = new ClientPacket(61, 3); - EVENT_MOUSE_SCROLl = new ClientPacket(62, 2); - OPPLAYER3 = new ClientPacket(63, 3); - OPLOCE = new ClientPacket(64, 2); - OPNPCE = new ClientPacket(65, 2); - OPPLAYER4 = new ClientPacket(66, 3); - CLAN_JOINCHAT_LEAVECHAT = new ClientPacket(67, -1); - IF_BUTTON3 = new ClientPacket(68, 8); - OPPLAYERU = new ClientPacket(69, 11); - AFFINEDCLANSETTINGS_ADDBANNED_FROMCHANNEL = new ClientPacket(70, -1); - OPOBJ5 = new ClientPacket(71, 7); - notsure = new ClientPacket(72, -1); - OPLOC4 = new ClientPacket(73, 7); - FRIEND_SETRANK = new ClientPacket(74, -1); - field2569 = new ClientPacket(75, 0); - IF_BUTTON9 = new ClientPacket(76, 8); - OPOBJT = new ClientPacket(77, 15); - OPNPCT = new ClientPacket(78, 11); - OPLOC1 = new ClientPacket(79, 7); - SET_CHATFILTERSETTINGS = new ClientPacket(80, 3); - OPNPC3 = new ClientPacket(81, 3); - field2581 = new ClientPacket(82, 10); - CLANCHANNEL_KICKUSER = new ClientPacket(83, -1); - SEND_SNAPSHOT = new ClientPacket(84, -1); - MESSAGE_PRIVATE = new ClientPacket(85, -2); - FRIENDLIST_DEL = new ClientPacket(86, -1); - CLAN_KICKUSER = new ClientPacket(87, -1); - DETECT_MODIFIED_CLIENT = new ClientPacket(88, 4); - IF_BUTTON5 = new ClientPacket(89, 8); - WINDOW_STATUS = new ClientPacket(90, 5); - RESUME_P_OBJDIALOG = new ClientPacket(91, 2); - SOUND_SONGEND = new ClientPacket(92, 4); - IF_BUTTOND = new ClientPacket(93, 16); - RESUME_P_COUNTDIALOG = new ClientPacket(94, 4); - field2583 = new ClientPacket(95, 22); - field2582 = new ClientPacket(96, 1); - field2572 = new ClientPacket(97, 1); + OPNPC1 = new ClientPacket(15, 3); + OPNPCT = new ClientPacket(16, 11); + IF_BUTTON2 = new ClientPacket(17, 8); + CHAT_SETFILTER = new ClientPacket(18, 3); + IF_BUTTON4 = new ClientPacket(19, 8); + IF_BUTTON5 = new ClientPacket(20, 8); + IF_BUTTON9 = new ClientPacket(21, 8); + OPOBJ2 = new ClientPacket(22, 7); + OPPLAYER2 = new ClientPacket(23, 3); + f88 = new ClientPacket(24, -1); + IDLE = new ClientPacket(25, -2); + f1 = new ClientPacket(26, 1); + IF_BUTTON8 = new ClientPacket(27, 8); + NO_TIMEOUT = new ClientPacket(28, 0); + OPNPC5 = new ClientPacket(29, 3); + OPOBJ3 = new ClientPacket(30, 7); + IF_BUTTON3 = new ClientPacket(31, 8); + f66 = new ClientPacket(32, -2); + field2606 = new ClientPacket(33, 2); + OPPLAYER5 = new ClientPacket(34, 3); + FREECAM_EXIT = new ClientPacket(35, 0); + field2559 = new ClientPacket(36, 16); + OPOBJ4 = new ClientPacket(37, 7); + OPOBJT = new ClientPacket(38, 15); + EVENT_MOUSE_CLICK = new ClientPacket(39, 6); + OPLOC3 = new ClientPacket(40, 7); + OPPLAYER4 = new ClientPacket(41, 3); + RESUME_NAMEDIALOG = new ClientPacket(42, -1); + field2607 = new ClientPacket(43, -1); + LOGIN_TIMINGS = new ClientPacket(44, -1); + f53 = new ClientPacket(45, 15); + MIDDLE_MOUSE = new ClientPacket(46, 2); + SOUND_SONGEND = new ClientPacket(47, 4); + CLAN_KICKUSER = new ClientPacket(48, -1); + IF_BUTTON7 = new ClientPacket(49, 8); + OPOBJ1 = new ClientPacket(50, 7); + OPPLAYER7 = new ClientPacket(51, 3); + f51 = new ClientPacket(52, -1); + WIDGET_TYPE5 = new ClientPacket(53, 4); + RESUME_STRINGDIALOG = new ClientPacket(54, -1); + CLOSE_MODAL = new ClientPacket(55, 2); + OPNPC4 = new ClientPacket(56, 3); + RESUME_COUNTDIALOG = new ClientPacket(57, 4); + DOCHEAT = new ClientPacket(58, -1); + RESUME_OBJDIALOG = new ClientPacket(59, 2); + f96 = new ClientPacket(60, -1); + OPLOCT = new ClientPacket(61, 15); + OPLOC1 = new ClientPacket(62, 7); + field2580 = new ClientPacket(63, 4); + OPPLAYER6 = new ClientPacket(64, 3); + UNKNOWN2 = new ClientPacket(65, 1); + FRIEND_DELETE_USER = new ClientPacket(66, -1); + CHAT_SEND_ABUSE_REPORT = new ClientPacket(67, -1); + field2608 = new ClientPacket(68, 2); + OPOBJE = new ClientPacket(69, 6); + IF_BUTTON1 = new ClientPacket(70, 8); + EVENT_APPLET_FOCUS = new ClientPacket(71, 1); + f52 = new ClientPacket(72, -1); + OPPLAYERU = new ClientPacket(73, 11); + field2587 = new ClientPacket(74, 11); + f9 = new ClientPacket(75, 13); + RESUME_PAUSEBUTTON = new ClientPacket(76, 6); + CHAT_SENDPRIVATE = new ClientPacket(77, -2); + REFLECTION_CHECK_REPLY = new ClientPacket(78, -1); + IF_BUTTON6 = new ClientPacket(79, 8); + OPLOC2 = new ClientPacket(80, 7); + FIREND_ADDUSER = new ClientPacket(81, -1); + field2604 = new ClientPacket(82, 15); + field2593 = new ClientPacket(83, 0); + OPPLAYER3 = new ClientPacket(84, 3); + f65 = new ClientPacket(85, -1); + NOTUSED1 = new ClientPacket(86, -1); + f83 = new ClientPacket(87, -1); + OPLOC5 = new ClientPacket(88, 7); + f22 = new ClientPacket(89, -1); + OPLOCE = new ClientPacket(90, 2); + EVENT_CAMERA_FOCUS = new ClientPacket(91, 4); + f97 = new ClientPacket(92, 22); + field2610 = new ClientPacket(93, 7); + OPLOC4 = new ClientPacket(94, 7); + OPPLAYER8 = new ClientPacket(95, 3); + OPHELDD = new ClientPacket(96, 10); + OPOBJ5 = new ClientPacket(97, 7); } ClientPacket(int var1, int var2) { @@ -683,52 +694,13 @@ public class ClientPacket implements class293 { this.length = var2; } - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-712911733" - ) - @Export("Messages_getLastChatID") - static int Messages_getLastChatID(int var0) { - Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); - if (var1 == null) { - return -1; - } else { - return var1.previousDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.previousDual).count; - } - } - - @ObfuscatedName("af") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)[Lui;", - garbageValue = "14" + descriptor = "(Ljava/lang/CharSequence;B)Z", + garbageValue = "1" ) - static SpritePixels[] method1608() { - SpritePixels[] var0 = new SpritePixels[class529.SpriteBuffer_spriteCount]; - - for (int var1 = 0; var1 < class529.SpriteBuffer_spriteCount; ++var1) { - SpritePixels var2 = var0[var1] = new SpritePixels(); - var2.width = class529.SpriteBuffer_spriteWidth; - var2.height = class420.SpriteBuffer_spriteHeight; - var2.xOffset = class529.SpriteBuffer_xOffsets[var1]; - var2.yOffset = class152.SpriteBuffer_yOffsets[var1]; - var2.subWidth = HealthBarUpdate.SpriteBuffer_spriteWidths[var1]; - var2.subHeight = SpriteMask.SpriteBuffer_spriteHeights[var1]; - int var3 = var2.subWidth * var2.subHeight; - byte[] var4 = Coord.SpriteBuffer_pixels[var1]; - var2.pixels = new int[var3]; - - for (int var5 = 0; var5 < var3; ++var5) { - var2.pixels[var5] = DbTableType.SpriteBuffer_spritePalette[var4[var5] & 255]; - } - } - - class529.SpriteBuffer_xOffsets = null; - class152.SpriteBuffer_yOffsets = null; - HealthBarUpdate.SpriteBuffer_spriteWidths = null; - SpriteMask.SpriteBuffer_spriteHeights = null; - DbTableType.SpriteBuffer_spritePalette = null; - Coord.SpriteBuffer_pixels = null; - return var0; + @Export("isNumber") + public static boolean isNumber(CharSequence var0) { + return Script.method447(var0, 10, true); } } \ No newline at end of file diff --git a/osrs/src/main/java/ClientPreferences.java b/osrs/src/main/java/ClientPreferences.java index ff00dfd6a..0c1a62bd7 100644 --- a/osrs/src/main/java/ClientPreferences.java +++ b/osrs/src/main/java/ClientPreferences.java @@ -8,44 +8,44 @@ import java.util.Map; import java.util.Map.Entry; -@ObfuscatedName("dp") +@ObfuscatedName("dl") @Implements("ClientPreferences") public class ClientPreferences { - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("roofsHidden") boolean roofsHidden; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("hideUsername") boolean hideUsername; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("titleMusicDisabled") boolean titleMusicDisabled; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("displayFps") boolean displayFps; - @ObfuscatedName("aa") - int field1061; - @ObfuscatedName("af") + @ObfuscatedName("al") + int field1070; + @ObfuscatedName("az") @Export("brightness") double brightness; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("musicVolume") int musicVolume; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("soundEffectsVolume") int soundEffectsVolume; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("areaSoundEffectsVolume") int areaSoundEffectsVolume; - @ObfuscatedName("an") - int field1065; - @ObfuscatedName("ar") + @ObfuscatedName("as") + int field1072; + @ObfuscatedName("ay") @Export("rememberedUsername") String rememberedUsername; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("windowMode") int windowMode; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("parameters") final Map parameters; @@ -56,15 +56,15 @@ public class ClientPreferences { this.musicVolume = 127; this.soundEffectsVolume = 127; this.areaSoundEffectsVolume = 127; - this.field1065 = -1; + this.field1072 = -1; this.rememberedUsername = null; this.windowMode = 1; this.parameters = new LinkedHashMap(); - this.method540(true); + this.method537(true); } @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) ClientPreferences(Buffer var1) { this.hideUsername = false; @@ -73,7 +73,7 @@ public class ClientPreferences { this.musicVolume = 127; this.soundEffectsVolume = 127; this.areaSoundEffectsVolume = 127; - this.field1065 = -1; + this.field1072 = -1; this.rememberedUsername = null; this.windowMode = 1; this.parameters = new LinkedHashMap(); @@ -118,7 +118,7 @@ public class ClientPreferences { } if (var2 > 7) { - this.field1065 = var1.readUnsignedByte(); + this.field1072 = var1.readUnsignedByte(); } if (var2 > 8) { @@ -126,29 +126,29 @@ public class ClientPreferences { } if (var2 > 9) { - this.field1061 = var1.readInt(); + this.field1070 = var1.readInt(); } } else { - this.method540(true); + this.method537(true); } } else { - this.method540(true); + this.method537(true); } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(ZB)V", - garbageValue = "-35" + garbageValue = "65" ) - void method540(boolean var1) { + void method537(boolean var1) { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ltm;", - garbageValue = "1941143653" + descriptor = "(I)Luj;", + garbageValue = "1617415071" ) @Export("toBuffer") Buffer toBuffer() { @@ -168,272 +168,272 @@ Buffer toBuffer() { var1.writeStringCp1252NullTerminated(this.rememberedUsername != null ? this.rememberedUsername : ""); var1.writeBoolean(this.hideUsername); - var1.writeByte((int)(100.0D * this.brightness)); + var1.writeByte((int)(this.brightness * 100.0D)); var1.writeByte(this.musicVolume); var1.writeByte(this.soundEffectsVolume); var1.writeByte(this.areaSoundEffectsVolume); - var1.writeByte(this.field1065); + var1.writeByte(this.field1072); var1.writeByte(this.displayFps ? 1 : 0); - var1.writeInt(this.field1061); + var1.writeInt(this.field1070); return var1; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "932955968" + descriptor = "(ZB)V", + garbageValue = "-10" ) @Export("setRoofsHidden") void setRoofsHidden(boolean var1) { this.roofsHidden = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-767626364" + garbageValue = "-194443239" ) @Export("getRoofsHidden") boolean getRoofsHidden() { return this.roofsHidden; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-211242200" + garbageValue = "-2140370030" ) @Export("setIsUsernameHidden") void setIsUsernameHidden(boolean var1) { this.hideUsername = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1977526319" + garbageValue = "190376852" ) @Export("getIsUsernameHidden") boolean getIsUsernameHidden() { return this.hideUsername; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-973658923" + descriptor = "(ZS)V", + garbageValue = "-5895" ) @Export("getTitleMusicDisabled") void getTitleMusicDisabled(boolean var1) { this.titleMusicDisabled = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "120" + descriptor = "(I)Z", + garbageValue = "1853874202" ) @Export("getTitleMusicDisabled") boolean getTitleMusicDisabled() { return this.titleMusicDisabled; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "534613668" + garbageValue = "-1108077215" ) - void method548(boolean var1) { + void method545(boolean var1) { this.displayFps = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1847880996" + garbageValue = "-482539852" ) - void method549() { - this.method548(!this.displayFps); + void method546() { + this.method545(!this.displayFps); } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1017741261" + garbageValue = "682721054" ) - boolean method550() { + boolean method547() { return this.displayFps; } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-11" + descriptor = "(IS)V", + garbageValue = "-12427" ) - void method551(int var1) { - this.field1061 = var1; - class338.savePreferences(); + void method548(int var1) { + this.field1070 = var1; + TextureProvider.savePreferences(); } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1963125343" + descriptor = "(B)I", + garbageValue = "0" ) - int method552() { - return this.field1061; + int method549() { + return this.field1070; } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("setBrightness") void setBrightness(double var1) { this.brightness = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(I)D", - garbageValue = "-1673173244" + garbageValue = "-2063080274" ) @Export("getBrightness") double getBrightness() { return this.brightness; } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-631794357" + garbageValue = "1063115901" ) @Export("setCurrentMusicVolume") void setCurrentMusicVolume(int var1) { this.musicVolume = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "121" + descriptor = "(I)I", + garbageValue = "2102721692" ) @Export("getCurrentMusicVolume") int getCurrentMusicVolume() { return this.musicVolume; } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-18" + descriptor = "(IS)V", + garbageValue = "256" ) @Export("setCurrentSoundEffectVolume") void setCurrentSoundEffectVolume(int var1) { this.soundEffectsVolume = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1509566185" + garbageValue = "782450849" ) @Export("getCurrentSoundEffectsVolume") int getCurrentSoundEffectsVolume() { return this.soundEffectsVolume; } - @ObfuscatedName("as") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "291571755" + garbageValue = "-568127597" ) @Export("setAreaSoundEffectsVolume") void setAreaSoundEffectsVolume(int var1) { this.areaSoundEffectsVolume = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-76" + descriptor = "(I)I", + garbageValue = "-1804486619" ) @Export("getAreaSoundEffectsVolume") int getAreaSoundEffectsVolume() { return this.areaSoundEffectsVolume; } - @ObfuscatedName("aj") + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1859632471" + garbageValue = "1092362617" ) @Export("setUsernameToRemember") void setUsernameToRemember(String var1) { this.rememberedUsername = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("av") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(B)Ljava/lang/String;", - garbageValue = "63" + garbageValue = "-25" ) @Export("getUsernameToRemember") String getUsernameToRemember() { return this.rememberedUsername; } - @ObfuscatedName("aw") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1109709806" + garbageValue = "608118295" ) - void method563(int var1) { - this.field1065 = var1; - class338.savePreferences(); + void method560(int var1) { + this.field1072 = var1; + TextureProvider.savePreferences(); } - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1749033471" + descriptor = "(B)I", + garbageValue = "-12" ) - int method564() { - return this.field1065; + int method561() { + return this.field1072; } - @ObfuscatedName("bh") + @ObfuscatedName("be") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "23" + garbageValue = "32" ) - void method565(int var1) { + void method562(int var1) { this.windowMode = var1; - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("bj") + @ObfuscatedName("bd") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1232255249" + garbageValue = "-1248539592" ) - int method566() { + int method563() { return this.windowMode; } - @ObfuscatedName("bk") + @ObfuscatedName("bl") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;II)V", - garbageValue = "-867564338" + garbageValue = "-1748399566" ) - void method567(String var1, int var2) { - int var3 = this.method570(var1); + void method564(String var1, int var2) { + int var3 = this.method567(var1); if (this.parameters.size() >= 10 && !this.parameters.containsKey(var3)) { Iterator var4 = this.parameters.entrySet().iterator(); var4.next(); @@ -441,149 +441,96 @@ void method567(String var1, int var2) { } this.parameters.put(var3, var2); - class338.savePreferences(); + TextureProvider.savePreferences(); } - @ObfuscatedName("bv") + @ObfuscatedName("bi") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)Z", - garbageValue = "-1796045546" + garbageValue = "-885731567" ) - boolean method568(String var1) { - int var2 = this.method570(var1); + boolean method565(String var1) { + int var2 = this.method567(var1); return this.parameters.containsKey(var2); } - @ObfuscatedName("bt") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;S)I", - garbageValue = "-25926" + descriptor = "(Ljava/lang/String;I)I", + garbageValue = "1978025457" ) - int method569(String var1) { - int var2 = this.method570(var1); + int method566(String var1) { + int var2 = this.method567(var1); return !this.parameters.containsKey(var2) ? 0 : (Integer)this.parameters.get(var2); } - @ObfuscatedName("bd") + @ObfuscatedName("bf") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)I", - garbageValue = "-112" - ) - int method570(String var1) { - return VarbitComposition.method1012(var1.toLowerCase()); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1544580715" + garbageValue = "8" ) - @Export("getVarbit") - public static int getVarbit(int var0) { - VarbitComposition var1 = class384.method2022(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; + int method567(String var1) { + return Message.method354(var1.toLowerCase()); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "31" + descriptor = "(II)Lht;", + garbageValue = "1728806709" ) - public static final boolean method537(char var0) { - if (Character.isISOControl(var0)) { - return false; - } else if (WorldMapLabel.isAlphaNumeric(var0)) { - return true; + @Export("getWidget") + public static VarbitComposition getWidget(int var0) { + VarbitComposition var1 = (VarbitComposition)VarbitComposition.VarbitDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - char[] var1 = class493.field4077; - - int var2; - char var3; - for (var2 = 0; var2 < var1.length; ++var2) { - var3 = var1[var2]; - if (var0 == var3) { - return true; - } - } - - var1 = class493.field4078; - - for (var2 = 0; var2 < var1.length; ++var2) { - var3 = var1[var2]; - if (var0 == var3) { - return true; - } + byte[] var2 = VarbitComposition.VarbitDefinition_archive.takeFile(14, var0); + var1 = new VarbitComposition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); } - return false; - } - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(Ltm;J)V" - ) - static void method539(Buffer var0, long var1) { - var1 /= 10L; - if (var1 < 0L) { - var1 = 0L; - } else if (var1 > 65535L) { - var1 = 65535L; + VarbitComposition.VarbitDefinition_cached.put(var1, (long)var0); + return var1; } - - var0.writeShort((int)var1); } - @ObfuscatedName("ar") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-51" + descriptor = "(III)I", + garbageValue = "2085182056" ) - public static int method571(int var0) { - class137 var1 = class338.method1862(var0); - if (var1 == null) { - return 2; + static int method535(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return -1; } else { - return var1.method746() ? 0 : 1; + return var1 >= 0 && var1 < var2.ids.length ? var2.ids[var1] : -1; } } - @ObfuscatedName("ka") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(IIIIIIIIIIS)V", - garbageValue = "10324" - ) - @Export("updatePendingSpawn") - static final void updatePendingSpawn(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9) { - PendingSpawn var10 = null; - - for (PendingSpawn var11 = (PendingSpawn)Client.pendingSpawns.last(); var11 != null; var11 = (PendingSpawn)Client.pendingSpawns.previous()) { - if (var0 == var11.plane && var11.x == var1 && var2 == var11.y && var3 == var11.type) { - var10 = var11; - break; - } + descriptor = "(ZB)V", + garbageValue = "-77" + ) + static void method568(boolean var0) { + byte var1 = 0; + if (!class4.method7()) { + var1 = 12; + } else if (SpriteMask.client.method364() || SpriteMask.client.method366() || SpriteMask.client.method365()) { + var1 = 10; } - if (var10 == null) { - var10 = new PendingSpawn(); - var10.plane = var0; - var10.type = var3; - var10.x = var1; - var10.y = var2; - var10.field945 = -1; - PacketWriter.method646(var10); - Client.pendingSpawns.addFirst(var10); + UserComparator7.method674(var1); + if (var0) { + Login.Login_username = ""; + Login.Login_password = ""; + class53.field256 = 0; + NewShit.otp = ""; } - var10.id = var4; - var10.objectType = var5; - var10.rotation = var6; - var10.startCycle = var8; - var10.endCycle = var9; - var10.method506(var7); + Frames.method1519(); + class150.method785(); } } \ No newline at end of file diff --git a/osrs/src/main/java/Clips.java b/osrs/src/main/java/Clips.java index 4250f0242..136ad06f5 100644 --- a/osrs/src/main/java/Clips.java +++ b/osrs/src/main/java/Clips.java @@ -3,75 +3,75 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jl") +@ObfuscatedName("kh") @Implements("Clips") public class Clips { + @ObfuscatedName("at") + boolean field2446; + @ObfuscatedName("ah") + public boolean field2457; + @ObfuscatedName("ar") + int field2452; @ObfuscatedName("au") - boolean field2268; - @ObfuscatedName("ae") - public boolean field2279; - @ObfuscatedName("ao") - int field2275; - @ObfuscatedName("ai") - public int field2280; - @ObfuscatedName("az") + public int field2458; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Ljs;" + descriptor = "Llw;" ) @Export("Rasterizer3D_textureLoader") public TextureLoader Rasterizer3D_textureLoader; - @ObfuscatedName("al") - int field2272; - @ObfuscatedName("an") - int field2274; - @ObfuscatedName("ar") - int field2276; - @ObfuscatedName("ab") - int field2269; - @ObfuscatedName("ag") + @ObfuscatedName("ax") + int field2454; + @ObfuscatedName("as") + int field2453; + @ObfuscatedName("ay") + int field2455; + @ObfuscatedName("ak") + int field2449; + @ObfuscatedName("aj") @Export("clipNegativeMidX") int clipNegativeMidX; @ObfuscatedName("am") - int field2273; - @ObfuscatedName("ax") + int field2450; + @ObfuscatedName("aq") @Export("clipNegativeMidY") int clipNegativeMidY; - @ObfuscatedName("ah") - int field2271; - @ObfuscatedName("as") + @ObfuscatedName("ai") + int field2447; + @ObfuscatedName("aw") @Export("Rasterizer3D_rowOffsets") int[] Rasterizer3D_rowOffsets; Clips() { - this.field2268 = false; - this.field2279 = true; - this.field2275 = 0; - this.field2280 = 512; + this.field2446 = false; + this.field2457 = true; + this.field2452 = 0; + this.field2458 = 512; this.Rasterizer3D_rowOffsets = new int[1024]; } - @ObfuscatedName("au") - void method1361() { - this.field2272 = this.field2276 / 2; - this.field2274 = this.field2269 / 2; - this.clipNegativeMidX = -this.field2272; - this.field2273 = this.field2276 - this.field2272; - this.clipNegativeMidY = -this.field2274; - this.field2271 = this.field2269 - this.field2274; + @ObfuscatedName("at") + void method1578() { + this.field2454 = this.field2455 / 2; + this.field2453 = this.field2449 / 2; + this.clipNegativeMidX = -this.field2454; + this.field2450 = this.field2455 - this.field2454; + this.clipNegativeMidY = -this.field2453; + this.field2447 = this.field2449 - this.field2453; } - @ObfuscatedName("ae") - void method1362(int var1, int var2, int var3, int var4) { - this.field2272 = var1 - var2; - this.field2274 = var3 - var4; - this.clipNegativeMidX = -this.field2272; - this.field2273 = this.field2276 - this.field2272; - this.clipNegativeMidY = -this.field2274; - this.field2271 = this.field2269 - this.field2274; + @ObfuscatedName("ah") + void method1579(int var1, int var2, int var3, int var4) { + this.field2454 = var1 - var2; + this.field2453 = var3 - var4; + this.clipNegativeMidX = -this.field2454; + this.field2450 = this.field2455 - this.field2454; + this.clipNegativeMidY = -this.field2453; + this.field2447 = this.field2449 - this.field2453; } - @ObfuscatedName("ao") - void method1363(int var1, int var2, int var3) { - this.field2268 = var1 < 0 || var1 > this.field2276 || var2 < 0 || var2 > this.field2276 || var3 < 0 || var3 > this.field2276; + @ObfuscatedName("ar") + void method1580(int var1, int var2, int var3) { + this.field2446 = var1 < 0 || var1 > this.field2455 || var2 < 0 || var2 > this.field2455 || var3 < 0 || var3 > this.field2455; } } \ No newline at end of file diff --git a/osrs/src/main/java/Clock.java b/osrs/src/main/java/Clock.java index 17fc338b6..eaf7caa50 100644 --- a/osrs/src/main/java/Clock.java +++ b/osrs/src/main/java/Clock.java @@ -3,55 +3,31 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ht") +@ObfuscatedName("iu") @Implements("Clock") public abstract class Clock { + @ObfuscatedName("am") + @Export("ByteArrayPool_alternativeSizes") + static int[] ByteArrayPool_alternativeSizes; + @ObfuscatedName("iw") + static long field1876; + Clock() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1021685028" + garbageValue = "-1366277024" ) @Export("mark") public abstract void mark(); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "20" + descriptor = "(III)I", + garbageValue = "-2001388980" ) @Export("wait") public abstract int wait(int var1, int var2); - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(DDII)[D", - garbageValue = "1988860737" - ) - public static double[] method930(double var0, double var2, int var4) { - int var5 = var4 * 2 + 1; - double[] var6 = new double[var5]; - int var7 = -var4; - - for (int var8 = 0; var7 <= var4; ++var8) { - double var15 = ((double)var7 - var0) / var2; - double var13 = Math.exp(-var15 * var15 / 2.0D) / Math.sqrt(6.283185307179586D); - double var11 = var13 / var2; - var6[var8] = var11; - ++var7; - } - - return var6; - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-322311297" - ) - static final void method931() { - UserComparator8.method673("You can't add yourself to your own friend list"); - } } \ No newline at end of file diff --git a/osrs/src/main/java/CollisionMap.java b/osrs/src/main/java/CollisionMap.java index 260605987..3b0998f74 100644 --- a/osrs/src/main/java/CollisionMap.java +++ b/osrs/src/main/java/CollisionMap.java @@ -3,22 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("is") +@ObfuscatedName("iw") @Implements("CollisionMap") public class CollisionMap { - @ObfuscatedName("bs") + @ObfuscatedName("vj") + static int field1901; + @ObfuscatedName("ba") @Export("xInset") int xInset; @ObfuscatedName("bm") @Export("yInset") int yInset; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("xSize") int xSize; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("ySize") int ySize; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("flags") public int[][] flags; @@ -31,10 +33,10 @@ public CollisionMap(int var1, int var2) { this.clear(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "594753621" + garbageValue = "-1902574063" ) @Export("clear") public void clear() { @@ -50,12 +52,12 @@ public void clear() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(IIIIZI)V", - garbageValue = "927391421" + garbageValue = "-1712724177" ) - public void method1113(int var1, int var2, int var3, int var4, boolean var5) { + public void method1137(int var1, int var2, int var3, int var4, boolean var5) { var1 -= this.xInset; var2 -= this.yInset; if (var3 == 0) { @@ -202,10 +204,10 @@ public void method1113(int var1, int var2, int var3, int var4, boolean var5) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(IIIIZB)V", - garbageValue = "-55" + garbageValue = "68" ) @Export("addGameObject") public void addGameObject(int var1, int var2, int var3, int var4, boolean var5) { @@ -229,10 +231,10 @@ public void addGameObject(int var1, int var2, int var3, int var4, boolean var5) } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-52" + descriptor = "(III)V", + garbageValue = "-1907019996" ) @Export("setBlockedByFloor") public void setBlockedByFloor(int var1, int var2) { @@ -242,10 +244,10 @@ public void setBlockedByFloor(int var1, int var2) { var10000[var2] |= 2097152; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "952149721" + garbageValue = "-1671554834" ) @Export("setBlockedByFloorDec") public void setBlockedByFloorDec(int var1, int var2) { @@ -255,10 +257,10 @@ public void setBlockedByFloorDec(int var1, int var2) { var10000[var2] |= 262144; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(IIIB)V", - garbageValue = "-70" + garbageValue = "1" ) @Export("setFlag") void setFlag(int var1, int var2, int var3) { @@ -266,12 +268,12 @@ void setFlag(int var1, int var2, int var3) { var10000[var2] |= var3; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(IIIIZI)V", - garbageValue = "-191479302" + garbageValue = "1877141157" ) - public void method1118(int var1, int var2, int var3, int var4, boolean var5) { + public void method1142(int var1, int var2, int var3, int var4, boolean var5) { var1 -= this.xInset; var2 -= this.yInset; if (var3 == 0) { @@ -418,10 +420,10 @@ public void method1118(int var1, int var2, int var3, int var4, boolean var5) { } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(IIIIIZI)V", - garbageValue = "-320113584" + garbageValue = "-1490436324" ) @Export("setFlagOffNonSquare") public void setFlagOffNonSquare(int var1, int var2, int var3, int var4, int var5, boolean var6) { @@ -451,10 +453,10 @@ public void setFlagOffNonSquare(int var1, int var2, int var3, int var4, int var5 } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "-675298247" + garbageValue = "1035067169" ) @Export("setFlagOff") void setFlagOff(int var1, int var2, int var3) { @@ -462,24 +464,69 @@ void setFlagOff(int var1, int var2, int var3) { var10000[var2] &= ~var3; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "2112024151" + descriptor = "(IIB)V", + garbageValue = "-95" ) - public void method1121(int var1, int var2) { + public void method1145(int var1, int var2) { var1 -= this.xInset; var2 -= this.yInset; int[] var10000 = this.flags[var1]; var10000[var2] &= -262145; } - @ObfuscatedName("oo") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I[BLrg;I)V", + garbageValue = "412809840" + ) + static void method1134(int var0, byte[] var1, ArchiveDisk var2) { + ArchiveDiskAction var3 = new ArchiveDiskAction(); + var3.type = 0; + var3.key = (long)var0; + var3.data = var1; + var3.archiveDisk = var2; + synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var3); + } + + synchronized(ArchiveDiskActionHandler.field3543) { + if (ArchiveDiskActionHandler.field3542 == 0) { + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.setDaemon(true); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.start(); + ArchiveDiskActionHandler.ArchiveDiskActionHandler_thread.setPriority(5); + } + + ArchiveDiskActionHandler.field3542 = 600; + ArchiveDiskActionHandler.field3541 = false; + } + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Lnf;", - garbageValue = "-74" + descriptor = "(Ljava/lang/Throwable;Ljava/lang/String;)Lvf;" + ) + public static RunException method1136(Throwable var0, String var1) { + RunException var2; + if (var0 instanceof RunException) { + var2 = (RunException)var0; + var2.field4320 = var2.field4320 + ' ' + var1; + } else { + var2 = new RunException(var0, var1); + } + + return var2; + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2056075058" ) - static JagNetThread method1122() { - return class308.field2819; + static void method1146() { + UserComparator7.method674(24); + class139.setLoginResponseString("The game servers are currently being updated.", "Please wait a few minutes and try again.", ""); } } \ No newline at end of file diff --git a/osrs/src/main/java/ConcurrentMidiTask.java b/osrs/src/main/java/ConcurrentMidiTask.java index 7b72e5f5f..985325f30 100644 --- a/osrs/src/main/java/ConcurrentMidiTask.java +++ b/osrs/src/main/java/ConcurrentMidiTask.java @@ -1,53 +1,55 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import java.util.ArrayList; -@ObfuscatedName("pe") +@ObfuscatedName("qu") @Implements("ConcurrentMidiTask") public class ConcurrentMidiTask extends SongTask { - @ObfuscatedName("au") - ArrayList field3725; + @ObfuscatedName("at") + ArrayList field3759; @ObfuscatedSignature( - descriptor = "(Lpm;Ljava/util/ArrayList;)V" + descriptor = "(Lql;Ljava/util/ArrayList;)V" ) public ConcurrentMidiTask(SongTask var1, ArrayList var2) { super(var1); - this.field3725 = var2; - super.field3722 = "ConcurrentMidiTask"; + this.field3759 = var2; + super.field3756 = "ConcurrentMidiTask"; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - for (int var1 = 0; var1 < this.field3725.size(); ++var1) { - SongTask var2 = (SongTask)this.field3725.get(var1); + for (int var1 = 0; var1 < this.field3759.size(); ++var1) { + SongTask var2 = (SongTask)this.field3759.get(var1); if (var2 == null) { - this.field3725.remove(var1); + this.field3759.remove(var1); --var1; } else if (var2.vmethod2142()) { - if (var2.method2132()) { - this.method2138(var2.method2135()); - this.field3725.clear(); + if (var2.method2156()) { + this.method2160(var2.method2158()); + this.field3759.clear(); return true; } - if (var2.method2136() != null) { - this.field3725.add(var2.method2136()); + if (var2.method2159() != null) { + this.field3759.add(var2.method2159()); } - super.field3721 = var2.field3721; - this.field3725.remove(var1); + super.field3754 = var2.field3754; + this.field3759.remove(var1); --var1; } } - if (this.field3725.isEmpty()) { + if (this.field3759.isEmpty()) { return true; } else { return false; diff --git a/osrs/src/main/java/Coord.java b/osrs/src/main/java/Coord.java index 3e2e09955..80eb4cf2b 100644 --- a/osrs/src/main/java/Coord.java +++ b/osrs/src/main/java/Coord.java @@ -3,24 +3,21 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mc") +@ObfuscatedName("mh") @Implements("Coord") public class Coord { - @ObfuscatedName("aa") - @Export("SpriteBuffer_pixels") - static byte[][] SpriteBuffer_pixels; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("plane") public int plane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") public int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") public int y; @ObfuscatedSignature( - descriptor = "(Lmc;)V" + descriptor = "(Lmh;)V" ) public Coord(Coord var1) { this.plane = var1.plane; @@ -45,24 +42,20 @@ public Coord(int var1) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1852623783" + garbageValue = "-497441948" ) @Export("packed") public int packed() { - int var2 = this.plane; - int var3 = this.x; - int var4 = this.y; - int var1 = var2 << 28 | var3 << 14 | var4; - return var1; + return VarpDefinition.method886(this.plane, this.x, this.y); } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lmc;B)Z", - garbageValue = "-109" + descriptor = "(Lmh;I)Z", + garbageValue = "-578750151" ) @Export("equalsCoord") boolean equalsCoord(Coord var1) { @@ -78,7 +71,7 @@ boolean equalsCoord(Coord var1) { @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "1357161194" + garbageValue = "-1754319501" ) @Export("toString") String toString(String var1) { diff --git a/osrs/src/main/java/DbRowType.java b/osrs/src/main/java/DbRowType.java index c2a9af279..f4e6d6b53 100644 --- a/osrs/src/main/java/DbRowType.java +++ b/osrs/src/main/java/DbRowType.java @@ -3,26 +3,32 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tc") +@ObfuscatedName("tf") @Implements("DbRowType") public class DbRowType extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) - static AbstractArchive field4116; - @ObfuscatedName("ae") + public static AbstractArchive field4140; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("DBRowType_cache") static EvictingDualNodeHashTable DBRowType_cache; - @ObfuscatedName("ao") + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("ItemDefinition_archive") + public static AbstractArchive ItemDefinition_archive; + @ObfuscatedName("ar") @Export("columnTypes") Object[][] columnTypes; - @ObfuscatedName("at") - int[][] field4117; - @ObfuscatedName("ac") + @ObfuscatedName("ao") + int[][] field4143; + @ObfuscatedName("ab") @Export("tableId") public int tableId; @@ -34,43 +40,43 @@ public class DbRowType extends DualNode { this.tableId = -1; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1552202999" + descriptor = "(Luj;S)V", + garbageValue = "2044" ) - void method2508(Buffer var1) { + void method2520(Buffer var1) { while (true) { int var2 = var1.readUnsignedByte(); if (var2 == 0) { return; } - this.method2510(var1, var2); + this.method2522(var1, var2); } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(II)[Ljava/lang/Object;", - garbageValue = "1717778174" + descriptor = "(IB)[Ljava/lang/Object;", + garbageValue = "14" ) @Export("getColumnType") public Object[] getColumnType(int var1) { return this.columnTypes == null ? null : this.columnTypes[var1]; } - @ObfuscatedName("ac") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1262873215" + descriptor = "(Luj;IB)V", + garbageValue = "55" ) - void method2510(Buffer var1, int var2) { + void method2522(Buffer var1, int var2) { if (var2 == 3) { int var3 = var1.readUnsignedByte(); if (this.columnTypes == null) { this.columnTypes = new Object[var3][]; - this.field4117 = new int[var3][]; + this.field4143 = new int[var3][]; } for (int var4 = var1.readUnsignedByte(); var4 != 255; var4 = var1.readUnsignedByte()) { @@ -81,20 +87,32 @@ void method2510(Buffer var1, int var2) { var6[var7] = var1.readUShortSmart(); } - this.columnTypes[var4] = KeyHandler.method88(var1, var6); - this.field4117[var4] = var6; + Object[][] var16 = this.columnTypes; + int var10 = var1.readUShortSmart(); + Object[] var11 = new Object[var6.length * var10]; + + for (int var12 = 0; var12 < var10; ++var12) { + for (int var13 = 0; var13 < var6.length; ++var13) { + int var14 = var13 + var6.length * var12; + class514 var15 = class472.method2349(var6[var13]); + var11[var14] = var15.method2506(var1); + } + } + + var16[var4] = var11; + this.field4143[var4] = var6; } } else if (var2 == 4) { - this.tableId = var1.method2565(); + this.tableId = var1.packBytesToInt(); } } - @ObfuscatedName("ai") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-55" + descriptor = "(I)V", + garbageValue = "-1202767644" ) - void method2511() { + void method2523() { } } \ No newline at end of file diff --git a/osrs/src/main/java/DbTable.java b/osrs/src/main/java/DbTable.java new file mode 100644 index 000000000..f9a6a0cf7 --- /dev/null +++ b/osrs/src/main/java/DbTable.java @@ -0,0 +1,107 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@ObfuscatedName("te") +public class DbTable extends DualNode { + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "[Ltu;" + ) + class514[] field4139; + @ObfuscatedName("ab") + @Export("columns") + List columns; + + @ObfuscatedSignature( + descriptor = "(Lol;I)V" + ) + public DbTable(AbstractArchive var1, int var2) { + byte[] var3 = var1.takeFile(var2, 0); + this.method2517(new Buffer(var3)); + } + + @ObfuscatedSignature( + descriptor = "(Lol;II)V" + ) + public DbTable(AbstractArchive var1, int var2, int var3) { + byte[] var4 = var1.takeFile(var2, var3 + 1); + this.method2517(new Buffer(var4)); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-1944052091" + ) + void method2517(Buffer var1) { + int var2 = var1.packBytesToInt(); + this.field4139 = new class514[var2]; + this.columns = new ArrayList(var2); + + for (int var3 = 0; var3 < var2; ++var3) { + this.field4139[var3] = (class514)class12.findEnumerated(class514.method2503(), var1.readUnsignedByte()); + int var4 = var1.packBytesToInt(); + HashMap var5 = new HashMap(var4); + + while (var4-- > 0) { + Object var6 = this.field4139[var3].method2506(var1); + int var7 = var1.packBytesToInt(); + ArrayList var8 = new ArrayList(); + + while (var7-- > 0) { + int var9 = var1.packBytesToInt(); + var8.add(var9); + } + + var5.put(var6, var8); + } + + this.columns.add(var3, var5); + } + + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;IB)Ljava/util/List;", + garbageValue = "40" + ) + public List method2518(Object var1, int var2) { + if (var2 < 0) { + var2 = 0; + } + + Map var3 = (Map)this.columns.get(var2); + return (List)var3.get(var1); + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(I)[Lup;", + garbageValue = "-1344314706" + ) + public static IndexedSprite[] method2519() { + IndexedSprite[] var0 = new IndexedSprite[class541.SpriteBuffer_spriteCount]; + + for (int var1 = 0; var1 < class541.SpriteBuffer_spriteCount; ++var1) { + IndexedSprite var2 = var0[var1] = new IndexedSprite(); + var2.width = class541.SpriteBuffer_spriteWidth; + var2.height = GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight; + var2.xOffset = class541.SpriteBuffer_xOffsets[var1]; + var2.yOffset = class541.SpriteBuffer_yOffsets[var1]; + var2.subWidth = class541.SpriteBuffer_spriteWidths[var1]; + var2.subHeight = class520.SpriteBuffer_spriteHeights[var1]; + var2.palette = class541.SpriteBuffer_spritePalette; + var2.pixels = class396.SpriteBuffer_pixels[var1]; + } + + class458.method2306(); + return var0; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/DbTableType.java b/osrs/src/main/java/DbTableType.java index 26836e8c2..c0739ca4b 100644 --- a/osrs/src/main/java/DbTableType.java +++ b/osrs/src/main/java/DbTableType.java @@ -3,27 +3,27 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tk") +@ObfuscatedName("tb") @Implements("DbTableType") public class DbTableType extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) - static AbstractArchive field4110; - @ObfuscatedName("ae") + public static AbstractArchive field4134; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("DBTableType_cache") - static EvictingDualNodeHashTable DBTableType_cache; - @ObfuscatedName("ap") - @Export("SpriteBuffer_spritePalette") - static int[] SpriteBuffer_spritePalette; - @ObfuscatedName("ao") + public static EvictingDualNodeHashTable DBTableType_cache; + @ObfuscatedName("al") + @Export("Interpreter_intStackSize") + static int Interpreter_intStackSize; + @ObfuscatedName("ar") @Export("types") public int[][] types; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("defaultValues") public Object[][] defaultValues; @@ -34,28 +34,28 @@ public class DbTableType extends DualNode { DbTableType() { } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "2" + descriptor = "(Luj;I)V", + garbageValue = "-2001833472" ) - void method2503(Buffer var1) { + void method2514(Buffer var1) { while (true) { int var2 = var1.readUnsignedByte(); if (var2 == 0) { return; } - this.method2504(var1, var2); + this.method2515(var1, var2); } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-1215696705" + descriptor = "(Luj;II)V", + garbageValue = "268630673" ) - void method2504(Buffer var1, int var2) { + void method2515(Buffer var1, int var2) { if (var2 == 1) { int var3 = var1.readUnsignedByte(); if (this.types == null) { @@ -77,18 +77,30 @@ void method2504(Buffer var1, int var2) { this.defaultValues = new Object[this.types.length][]; } - this.defaultValues[var5] = KeyHandler.method88(var1, var7); + Object[][] var17 = this.defaultValues; + int var11 = var1.readUShortSmart(); + Object[] var12 = new Object[var7.length * var11]; + + for (int var13 = 0; var13 < var11; ++var13) { + for (int var14 = 0; var14 < var7.length; ++var14) { + int var15 = var14 + var7.length * var13; + class514 var16 = class472.method2349(var7[var14]); + var12[var15] = var16.method2506(var1); + } + } + + var17[var5] = var12; } } } } - @ObfuscatedName("ac") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2013883832" + descriptor = "(B)V", + garbageValue = "-34" ) - void method2505() { + void method2516() { } } \ No newline at end of file diff --git a/osrs/src/main/java/Decimator.java b/osrs/src/main/java/Decimator.java index ab3e4457a..43293cf52 100644 --- a/osrs/src/main/java/Decimator.java +++ b/osrs/src/main/java/Decimator.java @@ -3,29 +3,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.File; -import java.io.IOException; -import java.util.Date; -import java.util.Iterator; - -@ObfuscatedName("cx") +@ObfuscatedName("ce") @Implements("Decimator") public class Decimator { - @ObfuscatedName("wm") - static Iterator field296; - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("Widget_archive") - public static AbstractArchive Widget_archive; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("inputRate") int inputRate; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("outputRate") int outputRate; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("table") int[][] table; @@ -52,7 +39,7 @@ public Decimator(int var1, int var2) { for (int var7 = 0; var7 < var1; ++var7) { int[] var8 = this.table[var7]; - double var9 = 6.0D + (double)var7 / (double)var1; + double var9 = (double)var7 / (double)var1 + 6.0D; int var11 = (int)Math.floor(1.0D + (var9 - 7.0D)); if (var11 < 0) { var11 = 0; @@ -64,24 +51,24 @@ public Decimator(int var1, int var2) { } for (double var13 = (double)var2 / (double)var1; var11 < var12; ++var11) { - double var15 = ((double)var11 - var9) * 3.141592653589793D; + double var15 = 3.141592653589793D * ((double)var11 - var9); double var17 = var13; if (var15 < -1.0E-4D || var15 > 1.0E-4D) { var17 = var13 * (Math.sin(var15) / var15); } - var17 *= 0.54D + 0.46D * Math.cos(0.2243994752564138D * ((double)var11 - var9)); - var8[var11] = (int)Math.floor(0.5D + var17 * 65536.0D); + var17 *= 0.54D + 0.46D * Math.cos(((double)var11 - var9) * 0.2243994752564138D); + var8[var11] = (int)Math.floor(65536.0D * var17 + 0.5D); } } } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([BS)[B", - garbageValue = "31853" + descriptor = "([BI)[B", + garbageValue = "2088613185" ) @Export("resample") byte[] resample(byte[] var1) { @@ -98,7 +85,7 @@ byte[] resample(byte[] var1) { int var9; for (var9 = 0; var9 < 14; ++var9) { - var3[var9 + var4] += var7 * var8[var9]; + var3[var4 + var9] += var7 * var8[var9]; } var5 += this.outputRate; @@ -124,10 +111,10 @@ byte[] resample(byte[] var1) { return var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(IB)I", - garbageValue = "1" + garbageValue = "114" ) @Export("scaleRate") int scaleRate(int var1) { @@ -138,10 +125,10 @@ int scaleRate(int var1) { return var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "429071526" + descriptor = "(IB)I", + garbageValue = "-9" ) @Export("scalePosition") int scalePosition(int var1) { @@ -152,300 +139,177 @@ int scalePosition(int var1) { return var1; } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;Lsf;I)Lsf;", - garbageValue = "-738926216" + descriptor = "(Lfm;FZI)F", + garbageValue = "2138001774" ) - @Export("readStringIntParameters") - static final IterableNodeHashTable readStringIntParameters(Buffer var0, IterableNodeHashTable var1) { - int var2 = var0.readUnsignedByte(); - int var3; - if (var1 == null) { - var3 = WorldMapIcon_1.method1401(var2); - var1 = new IterableNodeHashTable(var3); - } - - for (var3 = 0; var3 < var2; ++var3) { - boolean var4 = var0.readUnsignedByte() == 1; - int var5 = var0.readMedium(); - Object var6; - if (var4) { - var6 = new ObjectNode(var0.readStringCp1252NullTerminated()); + static float method321(class131 var0, float var1, boolean var2) { + float var3 = 0.0F; + if (var0 != null && var0.method722() != 0) { + float var4 = (float)var0.field1258[0].field1217; + float var5 = (float)var0.field1258[var0.method722() - 1].field1217; + float var6 = var5 - var4; + if (0.0D == (double)var6) { + return var0.field1258[0].field1213; } else { - var6 = new IntegerNode(var0.readInt()); - } + float var7 = 0.0F; + if (var1 > var5) { + var7 = (var1 - var5) / var6; + } else { + var7 = (var1 - var4) / var6; + } - var1.put((Node)var6, (long)var5); - } + double var8 = (double)((int)var7); + float var10 = Math.abs((float)((double)var7 - var8)); + float var11 = var10 * var6; + var8 = Math.abs(var8 + 1.0D); + double var12 = var8 / 2.0D; + double var14 = (double)((int)var12); + var10 = (float)(var12 - var14); + float var16; + float var17; + if (var2) { + if (var0.field1257 == class129.field1240) { + if (0.0D != (double)var10) { + var11 += var4; + } else { + var11 = var5 - var11; + } + } else if (var0.field1257 != class129.field1243 && var0.field1257 != class129.field1242) { + if (var0.field1257 == class129.field1241) { + var11 = var4 - var1; + var16 = var0.field1258[0].field1215; + var17 = var0.field1258[0].field1214; + var3 = var0.field1258[0].field1213; + if (0.0D != (double)var16) { + var3 -= var17 * var11 / var16; + } - return var1; + return var3; + } + } else { + var11 = var5 - var11; + } + } else if (var0.field1256 == class129.field1240) { + if (0.0D != (double)var10) { + var11 = var5 - var11; + } else { + var11 += var4; + } + } else if (var0.field1256 != class129.field1243 && var0.field1256 != class129.field1242) { + if (var0.field1256 == class129.field1241) { + var11 = var1 - var5; + var16 = var0.field1258[var0.method722() - 1].field1212; + var17 = var0.field1258[var0.method722() - 1].field1216; + var3 = var0.field1258[var0.method722() - 1].field1213; + if (0.0D != (double)var16) { + var3 += var11 * var17 / var16; + } + + return var3; + } + } else { + var11 += var4; + } + + var3 = class404.method2045(var0, var11); + float var18; + if (var2 && var0.field1257 == class129.field1242) { + var18 = var0.field1258[var0.method722() - 1].field1213 - var0.field1258[0].field1213; + var3 = (float)((double)var3 - var8 * (double)var18); + } else if (!var2 && var0.field1256 == class129.field1242) { + var18 = var0.field1258[var0.method722() - 1].field1213 - var0.field1258[0].field1213; + var3 = (float)((double)var3 + var8 * (double)var18); + } + + return var3; + } + } else { + return var3; + } } - @ObfuscatedName("at") + @ObfuscatedName("kb") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;ZI)Ltu;", - garbageValue = "1734618555" + descriptor = "(IIB)V", + garbageValue = "-17" ) - @Export("getPreferencesFile") - public static AccessFile getPreferencesFile(String var0, String var1, boolean var2) { - File var3 = new File(JagexCache.cacheDir, "preferences" + var0 + ".dat"); - if (var3.exists()) { - try { - AccessFile var10 = new AccessFile(var3, "rw", 10000L); - return var10; - } catch (IOException var9) { + static void method322(int var0, int var1) { + int var2 = GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth("Choose Option"); + + int var3; + for (var3 = 0; var3 < Client.menuOptionsCount; ++var3) { + Font var4 = GrandExchangeOfferTotalQuantityComparator.fontBold12; + String var5; + if (var3 < 0) { + var5 = ""; + } else if (Client.menuTargets[var3].length() > 0) { + var5 = Client.menuActions[var3] + " " + Client.menuTargets[var3]; + } else { + var5 = Client.menuActions[var3]; } - } - String var4 = ""; - if (JagexCache.cacheGamebuild == 33) { - var4 = "_rc"; - } else if (JagexCache.cacheGamebuild == 34) { - var4 = "_wip"; + int var6 = var4.stringWidth(var5); + if (var6 > var2) { + var2 = var6; + } } - File var5 = new File(class36.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); - AccessFile var6; - if (!var2 && var5.exists()) { - try { - var6 = new AccessFile(var5, "rw", 10000L); - return var6; - } catch (IOException var8) { - } + var2 += 8; + var3 = Client.menuOptionsCount * 15 + 22; + int var7 = var0 - var2 / 2; + if (var2 + var7 > Language.canvasWidth) { + var7 = Language.canvasWidth - var2; } - try { - var6 = new AccessFile(var3, "rw", 10000L); - return var6; - } catch (IOException var7) { - throw new RuntimeException(); + if (var7 < 0) { + var7 = 0; } - } - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "88" - ) - static final boolean method312() { - return ViewportMouse.ViewportMouse_isInViewport; - } + int var8 = var1; + if (var1 + var3 > class47.canvasHeight) { + var8 = class47.canvasHeight - var3; + } - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(Lnu;IB)Z", - garbageValue = "0" - ) - public static boolean method313(AbstractArchive var0, int var1) { - byte[] var2 = var0.takeFileFlat(var1); - if (var2 == null) { - return false; - } else { - class137.SpriteBuffer_decode(var2); - return true; + if (var8 < 0) { + var8 = 0; } + + FriendSystem.menuX = var7; + class60.menuY = var8; + class428.menuWidth = var2; + class515.menuHeight = Client.menuOptionsCount * 15 + 22; } - @ObfuscatedName("bm") + @ObfuscatedName("mh") @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-94" + descriptor = "(IS)V", + garbageValue = "-14068" ) - static int method315(int var0, Script var1, boolean var2) { - String var3; - int var4; - if (var0 == 4100) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3 + var4; - return 1; - } else { - String var9; - if (var0 == 4101) { - class137.Interpreter_stringStackSize -= 2; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - var9 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3 + var9; - return 1; - } else if (var0 == 4102) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3 + class60.intToString(var4, true); - return 1; - } else if (var0 == 4103) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.toLowerCase(); - return 1; - } else { - int var6; - int var10; - if (var0 == 4104) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - long var11 = 86400000L * ((long)var10 + 11745L); - Interpreter.Interpreter_calendar.setTime(new Date(var11)); - var6 = Interpreter.Interpreter_calendar.get(5); - int var17 = Interpreter.Interpreter_calendar.get(2); - int var8 = Interpreter.Interpreter_calendar.get(1); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var17] + "-" + var8; - return 1; - } else if (var0 != 4105) { - if (var0 == 4106) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = Integer.toString(var10); - return 1; - } else if (var0 == 4107) { - class137.Interpreter_stringStackSize -= 2; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ItemComposition.method1054(StudioGame.compareStrings(Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize], Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1], ClanChannelMember.clientLanguage)); - return 1; - } else { - int var5; - byte[] var13; - Font var14; - if (var0 == 4108) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var13 = Player.archive13.takeFile(var5, 0); - var14 = new Font(var13); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var14.lineCount(var3, var4); - return 1; - } else if (var0 == 4109) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var13 = Player.archive13.takeFile(var5, 0); - var14 = new Font(var13); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var14.lineWidth(var3, var4); - return 1; - } else if (var0 == 4110) { - class137.Interpreter_stringStackSize -= 2; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - var9 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - if (Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9; - } - - return 1; - } else if (var0 == 4111) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = AbstractFont.escapeBrackets(var3); - return 1; - } else if (var0 == 4112) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3 + (char)var4; - return 1; - } else if (var0 == 4113) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = GrandExchangeOfferOwnWorldComparator.isCharPrintable((char)var10) ? 1 : 0; - return 1; - } else if (var0 == 4114) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = WorldMapLabel.isAlphaNumeric((char)var10) ? 1 : 0; - return 1; - } else if (var0 == 4115) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class200.isCharAlphabetic((char)var10) ? 1 : 0; - return 1; - } else if (var0 == 4116) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class330.isDigit((char)var10) ? 1 : 0; - return 1; - } else if (var0 == 4117) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - if (var3 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.length(); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 4118) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.substring(var4, var5); - return 1; - } else if (var0 == 4119) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - StringBuilder var18 = new StringBuilder(var3.length()); - boolean var16 = false; - - for (var6 = 0; var6 < var3.length(); ++var6) { - char var7 = var3.charAt(var6); - if (var7 == '<') { - var16 = true; - } else if (var7 == '>') { - var16 = false; - } else if (!var16) { - var18.append(var7); - } - } - - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var18.toString(); - return 1; - } else if (var0 == 4120) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.indexOf(var4); - return 1; - } else if (var0 == 4121) { - class137.Interpreter_stringStackSize -= 2; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - var9 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.indexOf(var9, var5); - return 1; - } else if (var0 == 4122) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.toUpperCase(); - return 1; - } else if (var0 == 4123) { - class137.Interpreter_stringStackSize -= 3; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - var9 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - String var15 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 2]; - if (VarbitComposition.localPlayer.appearance == null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var15; - return 1; - } else { - switch(VarbitComposition.localPlayer.appearance.field2918) { - case 0: - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3; - break; - case 1: - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9; - break; - case 2: - default: - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var15; - } - - return 1; - } - } else { - return 2; - } - } - } else { - class137.Interpreter_stringStackSize -= 2; - var3 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - var9 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - if (VarbitComposition.localPlayer.appearance != null && VarbitComposition.localPlayer.appearance.field2916 != 0) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var9; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3; + static final void method323(int var0) { + var0 = Math.min(Math.max(var0, 0), 255); + if (var0 != WorldMapIcon_1.clientPreferences.getCurrentMusicVolume()) { + label22: { + if (WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() == 0) { + boolean var1 = !class316.field2787.isEmpty(); + if (var1) { + class72.method433(class514.archive6, var0); + Client.playingJingle = false; + break label22; } + } - return 1; + if (var0 == 0) { + WorldMapManager.method1265(0, 0); + Client.playingJingle = false; + } else { + class251.method1334(var0); } } + + WorldMapIcon_1.clientPreferences.setCurrentMusicVolume(var0); } + } } \ No newline at end of file diff --git a/osrs/src/main/java/DefaultsGroup.java b/osrs/src/main/java/DefaultsGroup.java index 38b93dfc9..b0a306bc2 100644 --- a/osrs/src/main/java/DefaultsGroup.java +++ b/osrs/src/main/java/DefaultsGroup.java @@ -3,20 +3,29 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("rh") +@ObfuscatedName("rk") @Implements("DefaultsGroup") public class DefaultsGroup { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lrh;" + descriptor = "Lrk;" ) - static final DefaultsGroup field3844; - @ObfuscatedName("ae") + static final DefaultsGroup field3879; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lrk;" + ) + static final DefaultsGroup field3878; + @ObfuscatedName("jh") + @Export("timeOfPreviousKeyPress") + static int timeOfPreviousKeyPress; + @ObfuscatedName("ar") @Export("group") final int group; static { - field3844 = new DefaultsGroup(3); + field3879 = new DefaultsGroup(1); + field3878 = new DefaultsGroup(3); } DefaultsGroup(int var1) { diff --git a/osrs/src/main/java/DelayFadeTask.java b/osrs/src/main/java/DelayFadeTask.java index ef894cfce..7335837b7 100644 --- a/osrs/src/main/java/DelayFadeTask.java +++ b/osrs/src/main/java/DelayFadeTask.java @@ -1,37 +1,57 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pn") +@ObfuscatedName("pt") @Implements("DelayFadeTask") public class DelayFadeTask extends SongTask { - @ObfuscatedName("ag") - static String[] field3712; - @ObfuscatedName("au") - long field3714; - @ObfuscatedName("ae") - int field3713; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lbz;" + ) + @Export("soundSystem") + public static SoundSystem soundSystem; + @ObfuscatedName("at") + long field3748; + @ObfuscatedName("ah") + int field3747; @ObfuscatedSignature( - descriptor = "(Lpm;I)V" + descriptor = "(Lql;I)V" ) public DelayFadeTask(SongTask var1, int var2) { super(var1); - this.field3713 = var2; - super.field3722 = "DelayFadeTask"; + this.field3747 = var2; + super.field3756 = "DelayFadeTask"; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - if (this.field3714 < (long)this.field3713) { - ++this.field3714; + if (this.field3748 < (long)this.field3747) { + ++this.field3748; return false; } else { return true; } } + + @ObfuscatedName("nc") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-52" + ) + @Export("FriendSystem_invalidateIgnoreds") + static final void FriendSystem_invalidateIgnoreds() { + Canvas.method87(); + if (class20.friendsChat != null) { + class20.friendsChat.invalidateIgnoreds(); + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/DemotingHashTable.java b/osrs/src/main/java/DemotingHashTable.java index 7889f4673..eefa1071b 100644 --- a/osrs/src/main/java/DemotingHashTable.java +++ b/osrs/src/main/java/DemotingHashTable.java @@ -3,32 +3,32 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kg") +@ObfuscatedName("ls") @Implements("DemotingHashTable") public final class DemotingHashTable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("capacity") int capacity; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("remaining") int remaining; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lou;" + descriptor = "Lpo;" ) @Export("queue") IterableDualNodeQueue queue; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lkh;" + descriptor = "Llr;" ) - class284 field2485; + class295 field2499; public DemotingHashTable(int var1, int var2) { this.queue = new IterableDualNodeQueue(); @@ -46,7 +46,7 @@ public DemotingHashTable(int var1) { this(var1, var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("get") public Object get(long var1) { Wrapper var3 = (Wrapper)this.hashTable.get(var1); @@ -77,16 +77,16 @@ public Object get(long var1) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("remove") void remove(long var1) { Wrapper var3 = (Wrapper)this.hashTable.get(var1); this.removeWrapper(var3); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Llo;)V" + descriptor = "(Lla;)V" ) @Export("removeWrapper") void removeWrapper(Wrapper var1) { @@ -98,12 +98,12 @@ void removeWrapper(Wrapper var1) { } - @ObfuscatedName("at") - public void method1593(Object var1, long var2) { + @ObfuscatedName("ao") + public void method1611(Object var1, long var2) { this.put(var1, var2, 1); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("put") public void put(Object var1, long var2, int var4) { this.remove(var2); @@ -119,8 +119,8 @@ public void put(Object var1, long var2, int var4) { } this.removeWrapper(var5); - if (this.field2485 != null) { - this.field2485.method1589(var5.get()); + if (this.field2499 != null) { + this.field2499.method1607(var5.get()); } } @@ -130,7 +130,7 @@ public void put(Object var1, long var2, int var4) { var6.keyDual = 0L; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("demote") public void demote(int var1) { for (Wrapper var2 = (Wrapper)this.queue.last(); var2 != null; var2 = (Wrapper)this.queue.previous()) { @@ -151,7 +151,7 @@ public void demote(int var1) { } - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("clear") public void clear() { this.queue.clear(); diff --git a/osrs/src/main/java/DesktopPlatformInfoProvider.java b/osrs/src/main/java/DesktopPlatformInfoProvider.java index a07796a9a..cf1eda782 100644 --- a/osrs/src/main/java/DesktopPlatformInfoProvider.java +++ b/osrs/src/main/java/DesktopPlatformInfoProvider.java @@ -3,29 +3,29 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sw") +@ObfuscatedName("st") @Implements("DesktopPlatformInfoProvider") -public class DesktopPlatformInfoProvider implements class475 { - @ObfuscatedName("at") - int field3928; - @ObfuscatedName("ac") - int field3926; - @ObfuscatedName("ai") - int field3927; - +public class DesktopPlatformInfoProvider implements class487 { + @ObfuscatedName("ao") + int field3955; + @ObfuscatedName("ab") + int field3954; @ObfuscatedName("au") + int field3956; + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(S)Lsm;", - garbageValue = "256" + descriptor = "(B)Lsb;", + garbageValue = "-87" ) @Export("get") public PlatformInfo get() { byte var1; - if (Messages.field1146.startsWith("win")) { + if (ClanChannel.field1413.startsWith("win")) { var1 = 1; - } else if (Messages.field1146.startsWith("mac")) { + } else if (ClanChannel.field1413.startsWith("mac")) { var1 = 2; - } else if (Messages.field1146.startsWith("linux")) { + } else if (ClanChannel.field1413.startsWith("linux")) { var1 = 3; } else { var1 = 4; @@ -123,11 +123,11 @@ public PlatformInfo get() { var8 = 4; } - this.method2358(var5); + this.method2372(var5); boolean var9 = false; int var10 = (int)(Runtime.getRuntime().maxMemory() / 1048576L) + 1; int var11; - if (this.field3928 > 3) { + if (this.field3955 > 3) { var11 = Runtime.getRuntime().availableProcessors(); } else { var11 = 0; @@ -149,53 +149,53 @@ public PlatformInfo get() { String var25 = ""; String var26 = ""; boolean var27 = false; - return new PlatformInfo(var1, var28, var7, var8, this.field3928, this.field3926, this.field3927, false, var10, var11, var12, 0, var13, var14, var15, var16, 0, 0, 0, 0, var17, var18, var23, 0, "", ""); + return new PlatformInfo(var1, var28, var7, var8, this.field3955, this.field3954, this.field3956, false, var10, var11, var12, 0, var13, var14, var15, var16, 0, 0, 0, 0, var17, var18, var23, 0, "", ""); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)V", - garbageValue = "10" + garbageValue = "118" ) - void method2358(String var1) { + void method2372(String var1) { if (var1.startsWith("1.")) { - this.method2359(var1); + this.method2373(var1); } else { - this.method2360(var1); + this.method2374(var1); } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "133401339" + garbageValue = "804463097" ) - void method2359(String var1) { + void method2373(String var1) { String[] var2 = var1.split("\\."); try { - this.field3928 = Integer.parseInt(var2[1]); + this.field3955 = Integer.parseInt(var2[1]); var2 = var2[2].split("_"); - this.field3926 = Integer.parseInt(var2[0]); - this.field3927 = Integer.parseInt(var2[1]); + this.field3954 = Integer.parseInt(var2[0]); + this.field3956 = Integer.parseInt(var2[1]); } catch (Exception var4) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1874487348" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "51" ) - void method2360(String var1) { + void method2374(String var1) { String[] var2 = var1.split("\\."); try { - this.field3928 = Integer.parseInt(var2[0]); - this.field3926 = Integer.parseInt(var2[1]); - this.field3927 = Integer.parseInt(var2[2]); + this.field3955 = Integer.parseInt(var2[0]); + this.field3954 = Integer.parseInt(var2[1]); + this.field3956 = Integer.parseInt(var2[2]); } catch (Exception var4) { } diff --git a/osrs/src/main/java/DevicePcmPlayer.java b/osrs/src/main/java/DevicePcmPlayer.java index d25121fd9..d29ad5a07 100644 --- a/osrs/src/main/java/DevicePcmPlayer.java +++ b/osrs/src/main/java/DevicePcmPlayer.java @@ -9,52 +9,52 @@ import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.SourceDataLine; -@ObfuscatedName("aw") +@ObfuscatedName("ad") @Implements("DevicePcmPlayer") public class DevicePcmPlayer extends PcmPlayer { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("format") AudioFormat format; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("line") SourceDataLine line; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("capacity2") int capacity2; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("byteSamples") byte[] byteSamples; DevicePcmPlayer() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1766369380" + descriptor = "(B)V", + garbageValue = "95" ) @Export("init") - protected void init() { - this.format = new AudioFormat((float)PcmPlayer.field181, 16, PcmPlayer.PcmPlayer_stereo ? 2 : 1, true, false); - this.byteSamples = new byte[256 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)]; + public void init() { + this.format = new AudioFormat((float)PcmPlayer.field179, 16, WorldMapRectangle.PcmPlayer_stereo ? 2 : 1, true, false); + this.byteSamples = new byte[256 << (WorldMapRectangle.PcmPlayer_stereo ? 2 : 1)]; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-83" + descriptor = "(II)V", + garbageValue = "1706445518" ) @Export("open") - protected void open(int var1) throws LineUnavailableException { + public void open(int var1) throws LineUnavailableException { try { - Info var2 = new Info(SourceDataLine.class, this.format, var1 << (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); + Info var2 = new Info(SourceDataLine.class, this.format, var1 << (WorldMapRectangle.PcmPlayer_stereo ? 2 : 1)); this.line = (SourceDataLine)AudioSystem.getLine(var2); this.line.open(); this.line.start(); this.capacity2 = var1; } catch (LineUnavailableException var3) { - if (PacketBufferNode.method1609(var1) != 1) { - this.open(WorldMapIcon_1.method1401(var1)); + if (UserComparator4.method665(var1) != 1) { + this.open(class184.method927(var1)); } else { this.line = null; throw var3; @@ -62,21 +62,21 @@ protected void open(int var1) throws LineUnavailableException { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1982834691" + garbageValue = "-79725090" ) @Export("position") protected int position() { - return this.capacity2 - (this.line.available() >> (PcmPlayer.PcmPlayer_stereo ? 2 : 1)); + return this.capacity2 - (this.line.available() >> (WorldMapRectangle.PcmPlayer_stereo ? 2 : 1)); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("write") protected void write() { int var1 = 256; - if (PcmPlayer.PcmPlayer_stereo) { + if (WorldMapRectangle.PcmPlayer_stereo) { var1 <<= 1; } @@ -93,10 +93,10 @@ protected void write() { this.line.write(this.byteSamples, 0, var1 << 1); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1874015336" + garbageValue = "1254913818" ) @Export("close") protected void close() { @@ -107,10 +107,10 @@ protected void close() { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "54" + descriptor = "(I)V", + garbageValue = "-264971545" ) @Export("discard") protected void discard() { diff --git a/osrs/src/main/java/DevicePcmPlayerProvider.java b/osrs/src/main/java/DevicePcmPlayerProvider.java index 2224c693b..8af441337 100644 --- a/osrs/src/main/java/DevicePcmPlayerProvider.java +++ b/osrs/src/main/java/DevicePcmPlayerProvider.java @@ -3,116 +3,245 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("aj") +import java.util.List; + +@ObfuscatedName("an") @Implements("DevicePcmPlayerProvider") public class DevicePcmPlayerProvider implements class51 { + @ObfuscatedName("wu") + static List field67; + @ObfuscatedName("cl") + static int field66; + DevicePcmPlayerProvider() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)Lbb;", - garbageValue = "74" + descriptor = "(S)Lby;", + garbageValue = "-2211" ) @Export("player") public PcmPlayer player() { return new DevicePcmPlayer(); } - @ObfuscatedName("ae") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)Lub;", - garbageValue = "13212181" + descriptor = "(Luj;II)Ljava/lang/String;", + garbageValue = "1966437671" ) - public static PrivateChatMode method74(int var0) { - PrivateChatMode[] var1 = BufferedNetSocket.method2261(); - - for (int var2 = 0; var2 < var1.length; ++var2) { - PrivateChatMode var3 = var1[var2]; - if (var0 == var3.id) { - return var3; + static String method82(Buffer var0, int var1) { + try { + int var2 = var0.readUShortSmart(); + if (var2 > var1) { + var2 = var1; } + + byte[] var3 = new byte[var2]; + var0.offset += class350.huffman.decompress(var0.array, var0.offset, var3, 0, var2); + String var4 = World.decodeStringCp1252(var3, 0, var2); + return var4; + } catch (Exception var6) { + return "Cabbage"; } + } - return null; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-26053498" + ) + static final int method83(int var0, int var1) { + int var2 = WorldMapIcon_0.method1301(45365 + var0, var1 + 91923, 4) - 128 + (WorldMapIcon_0.method1301(var0 + 10294, var1 + 37821, 2) - 128 >> 1) + (WorldMapIcon_0.method1301(var0, var1, 1) - 128 >> 2); + var2 = (int)((double)var2 * 0.3D) + 35; + if (var2 < 10) { + var2 = 10; + } else if (var2 > 60) { + var2 = 60; + } + + return var2; } - @ObfuscatedName("ac") + @ObfuscatedName("ir") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;IZB)I", - garbageValue = "-2" + descriptor = "(Ldf;I)V", + garbageValue = "1536572289" ) - public static int method75(CharSequence var0, int var1, boolean var2) { - if (var1 >= 2 && var1 <= 36) { - boolean var3 = false; - boolean var4 = false; - int var5 = 0; - int var6 = var0.length(); - - for (int var7 = 0; var7 < var6; ++var7) { - char var8 = var0.charAt(var7); - if (var7 == 0) { - if (var8 == '-') { - var3 = true; - continue; + static final void method84(Actor var0) { + var0.movementSequence = var0.idleSequence; + if (var0.pathLength == 0) { + var0.field1028 = 0; + } else { + if (var0.sequence != -1 && var0.sequenceDelay == 0) { + SequenceDefinition var1 = DynamicObject.SequenceDefinition_get(var0.sequence); + if (var0.field1029 > 0 && var1.precedenceAnimating == 0) { + ++var0.field1028; + return; + } + + if (var0.field1029 <= 0 && var1.priority == 0) { + ++var0.field1028; + return; + } + } + + int var10 = var0.x; + int var2 = var0.y; + int var3 = var0.field983 * 64 + var0.pathX[var0.pathLength - 1] * 128; + int var4 = var0.field983 * 64 + var0.pathY[var0.pathLength - 1] * 128; + if (var10 < var3) { + if (var2 < var4) { + var0.orientation = 1280; + } else if (var2 > var4) { + var0.orientation = 1792; + } else { + var0.orientation = 1536; + } + } else if (var10 > var3) { + if (var2 < var4) { + var0.orientation = 768; + } else if (var2 > var4) { + var0.orientation = 256; + } else { + var0.orientation = 512; + } + } else if (var2 < var4) { + var0.orientation = 1024; + } else if (var2 > var4) { + var0.orientation = 0; + } + + MoveSpeed var5 = var0.pathTraversed[var0.pathLength - 1]; + if (var3 - var10 <= 256 && var3 - var10 >= -256 && var4 - var2 <= 256 && var4 - var2 >= -256) { + int var6 = var0.orientation - var0.rotation & 2047; + if (var6 > 1024) { + var6 -= 2048; + } + + int var7 = var0.walkBackSequence; + if (var6 >= -256 && var6 <= 256) { + var7 = var0.walkSequence; + } else if (var6 >= 256 && var6 < 768) { + var7 = var0.walkRightSequence; + } else if (var6 >= -768 && var6 <= -256) { + var7 = var0.walkLeftSequence; + } + + if (var7 == -1) { + var7 = var0.walkSequence; + } + + var0.movementSequence = var7; + int var8 = 4; + boolean var9 = true; + if (var0 instanceof NPC) { + var9 = ((NPC)var0).definition.isClickable; + } + + if (var9) { + if (var0.rotation != var0.orientation && var0.targetIndex == -1 && var0.field1018 != 0) { + var8 = 2; } - if (var8 == '+') { - continue; + if (var0.pathLength > 2) { + var8 = 6; } - } - int var10; - if (var8 >= '0' && var8 <= '9') { - var10 = var8 - '0'; - } else if (var8 >= 'A' && var8 <= 'Z') { - var10 = var8 - '7'; + if (var0.pathLength > 3) { + var8 = 8; + } + + if (var0.field1028 > 0 && var0.pathLength > 1) { + var8 = 8; + --var0.field1028; + } } else { - if (var8 < 'a' || var8 > 'z') { - throw new NumberFormatException(); + if (var0.pathLength > 1) { + var8 = 6; } - var10 = var8 - 'W'; + if (var0.pathLength > 2) { + var8 = 8; + } + + if (var0.field1028 > 0 && var0.pathLength > 1) { + var8 = 8; + --var0.field1028; + } } - if (var10 >= var1) { - throw new NumberFormatException(); + if (var5 == MoveSpeed.RUN) { + var8 <<= 1; + } else if (var5 == MoveSpeed.CRAWL) { + var8 >>= 1; } - if (var3) { - var10 = -var10; + if (var8 >= 8) { + if (var0.walkSequence == var0.movementSequence && var0.runSequence != -1) { + var0.movementSequence = var0.runSequence; + } else if (var0.movementSequence == var0.walkBackSequence && var0.runBackSequence != -1) { + var0.movementSequence = var0.runBackSequence; + } else if (var0.movementSequence == var0.walkLeftSequence && var0.runLeftSequence != -1) { + var0.movementSequence = var0.runLeftSequence; + } else if (var0.walkRightSequence == var0.movementSequence && var0.runRightSequence != -1) { + var0.movementSequence = var0.runRightSequence; + } + } else if (var8 <= 2) { + if (var0.walkSequence == var0.movementSequence && var0.crawlSequence != -1) { + var0.movementSequence = var0.crawlSequence; + } else if (var0.walkBackSequence == var0.movementSequence && var0.crawlBackSequence != -1) { + var0.movementSequence = var0.crawlBackSequence; + } else if (var0.walkLeftSequence == var0.movementSequence && var0.crawlLeftSequence != -1) { + var0.movementSequence = var0.crawlLeftSequence; + } else if (var0.walkRightSequence == var0.movementSequence && var0.crawlRightSequence != -1) { + var0.movementSequence = var0.crawlRightSequence; + } } - int var9 = var10 + var5 * var1; - if (var9 / var1 != var5) { - throw new NumberFormatException(); + if (var3 != var10 || var4 != var2) { + if (var10 < var3) { + var0.x += var8; + if (var0.x > var3) { + var0.x = var3; + } + } else if (var10 > var3) { + var0.x -= var8; + if (var0.x < var3) { + var0.x = var3; + } + } + + if (var2 < var4) { + var0.y += var8; + if (var0.y > var4) { + var0.y = var4; + } + } else if (var2 > var4) { + var0.y -= var8; + if (var0.y < var4) { + var0.y = var4; + } + } } - var5 = var9; - var4 = true; - } + if (var3 == var0.x && var4 == var0.y) { + --var0.pathLength; + if (var0.field1029 > 0) { + --var0.field1029; + } + } - if (!var4) { - throw new NumberFormatException(); } else { - return var5; - } - } else { - throw new IllegalArgumentException("" + var1); - } - } + var0.x = var3; + var0.y = var4; + --var0.pathLength; + if (var0.field1029 > 0) { + --var0.field1029; + } - @ObfuscatedName("kg") - @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "41" - ) - static final void method76(int var0, int var1, int var2, int var3) { - for (int var4 = 0; var4 < Client.rootWidgetCount; ++var4) { - if (Client.rootWidgetWidths[var4] + Client.rootWidgetXs[var4] > var0 && Client.rootWidgetXs[var4] < var0 + var2 && Client.rootWidgetHeights[var4] + Client.rootWidgetYs[var4] > var1 && Client.rootWidgetYs[var4] < var3 + var1) { - Client.field408[var4] = true; } } - } } \ No newline at end of file diff --git a/osrs/src/main/java/DirectByteArrayCopier.java b/osrs/src/main/java/DirectByteArrayCopier.java index 55cfde764..247ec4145 100644 --- a/osrs/src/main/java/DirectByteArrayCopier.java +++ b/osrs/src/main/java/DirectByteArrayCopier.java @@ -5,17 +5,22 @@ import java.nio.ByteBuffer; -@ObfuscatedName("ms") +@ObfuscatedName("na") @Implements("DirectByteArrayCopier") public class DirectByteArrayCopier extends AbstractByteArrayCopier { - @ObfuscatedName("au") + @ObfuscatedName("ao") + static int field3136; + @ObfuscatedName("at") @Export("directBuffer") ByteBuffer directBuffer; - @ObfuscatedName("ae") + DirectByteArrayCopier() { + } + + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-962589916" + descriptor = "(B)[B", + garbageValue = "5" ) @Export("get") byte[] get() { @@ -27,46 +32,37 @@ byte[] get() { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "1426025249" + descriptor = "([BB)V", + garbageValue = "67" ) @Export("set") - public void set(byte[] var1) { + void set(byte[] var1) { this.directBuffer = ByteBuffer.allocateDirect(var1.length); this.directBuffer.position(0); this.directBuffer.put(var1); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;I)Ljava/lang/String;", - garbageValue = "1088330937" + descriptor = "(CI)Z", + garbageValue = "-946296977" ) - @Export("readString") - public static String readString(Buffer var0) { - return class155.method826(var0, 32767); - } + public static boolean method1884(char var0) { + if ((var0 < ' ' || var0 >= 127) && (var0 <= 127 || var0 >= 160) && (var0 <= 160 || var0 > 255)) { + if (var0 != 0) { + char[] var1 = class396.cp1252AsciiExtension; - @ObfuscatedName("la") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "625731844" - ) - @Export("selectSpell") - static void selectSpell(int var0, int var1, int var2, int var3) { - Widget var4 = SoundCache.getWidgetChild(var0, var1); - if (var4 != null && var4.onTargetEnter != null) { - ScriptEvent var5 = new ScriptEvent(); - var5.widget = var4; - var5.args = var4.onTargetEnter; - WorldMapSection1.runScriptEvent(var5); - } + for (int var2 = 0; var2 < var1.length; ++var2) { + char var3 = var1[var2]; + if (var0 == var3) { + return true; + } + } + } - Client.selectedSpellItemId = var3; - Client.isSpellSelected = true; - ModeWhere.selectedSpellWidget = var0; - Client.selectedSpellChildIndex = var1; - Canvas.selectedSpellFlags = var2; - class218.invalidateWidget(var4); + return false; + } else { + return true; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/DirectWrapper.java b/osrs/src/main/java/DirectWrapper.java index 15bb5f6df..7a71ce01c 100644 --- a/osrs/src/main/java/DirectWrapper.java +++ b/osrs/src/main/java/DirectWrapper.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("lu") +@ObfuscatedName("ll") @Implements("DirectWrapper") public class DirectWrapper extends Wrapper { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("obj") Object obj; @@ -14,13 +14,13 @@ public class DirectWrapper extends Wrapper { this.obj = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("get") Object get() { return this.obj; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("isSoft") boolean isSoft() { return false; diff --git a/osrs/src/main/java/DualNode.java b/osrs/src/main/java/DualNode.java index dbd473d6d..a7859293e 100644 --- a/osrs/src/main/java/DualNode.java +++ b/osrs/src/main/java/DualNode.java @@ -3,26 +3,26 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sq") +@ObfuscatedName("sn") @Implements("DualNode") public class DualNode extends Node { - @ObfuscatedName("ej") + @ObfuscatedName("em") @Export("keyDual") public long keyDual; - @ObfuscatedName("ea") + @ObfuscatedName("eo") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("previousDual") public DualNode previousDual; - @ObfuscatedName("er") + @ObfuscatedName("ef") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("nextDual") public DualNode nextDual; - @ObfuscatedName("ex") + @ObfuscatedName("fd") @Export("removeDual") public void removeDual() { if (this.nextDual != null) { diff --git a/osrs/src/main/java/DualNodeDeque.java b/osrs/src/main/java/DualNodeDeque.java index 9abd5539d..edca07bc6 100644 --- a/osrs/src/main/java/DualNodeDeque.java +++ b/osrs/src/main/java/DualNodeDeque.java @@ -3,12 +3,12 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("os") +@ObfuscatedName("od") @Implements("DualNodeDeque") public final class DualNodeDeque { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("sentinel") DualNode sentinel; @@ -19,11 +19,11 @@ public DualNodeDeque() { this.sentinel.nextDual = this.sentinel; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lsq;)V" + descriptor = "(Lsn;)V" ) - public void method1984(DualNode var1) { + public void method2003(DualNode var1) { if (var1.nextDual != null) { var1.removeDual(); } @@ -34,11 +34,11 @@ public void method1984(DualNode var1) { var1.previousDual.nextDual = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsq;)V" + descriptor = "(Lsn;)V" ) - public void method1985(DualNode var1) { + public void method2004(DualNode var1) { if (var1.nextDual != null) { var1.removeDual(); } @@ -49,9 +49,9 @@ public void method1985(DualNode var1) { var1.previousDual.nextDual = var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "()Lsq;" + descriptor = "()Lsn;" ) @Export("removeLast") public DualNode removeLast() { diff --git a/osrs/src/main/java/DynamicObject.java b/osrs/src/main/java/DynamicObject.java index 77df1db7e..2ba5ea017 100644 --- a/osrs/src/main/java/DynamicObject.java +++ b/osrs/src/main/java/DynamicObject.java @@ -3,42 +3,42 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dj") +@ObfuscatedName("di") @Implements("DynamicObject") public class DynamicObject extends Renderable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("type") int type; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("orientation") int orientation; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("plane") int plane; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("x") int x; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("y") int y; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lib;" + descriptor = "Lhx;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("frame") int frame; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("cycleStart") int cycleStart; @ObfuscatedSignature( - descriptor = "(IIIIIIIZLik;)V" + descriptor = "(IIIIIIIZLkt;)V" ) DynamicObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, boolean var8, Renderable var9) { this.id = var1; @@ -48,12 +48,12 @@ public class DynamicObject extends Renderable { this.x = var5; this.y = var6; if (var7 != -1) { - this.sequenceDefinition = EnumComposition.SequenceDefinition_get(var7); + this.sequenceDefinition = SequenceDefinition_get(var7); this.frame = 0; this.cycleStart = Client.cycle - 1; if (this.sequenceDefinition.replyMode == 0 && var9 != null && var9 instanceof DynamicObject) { DynamicObject var10 = (DynamicObject)var9; - if (this.sequenceDefinition == var10.sequenceDefinition) { + if (var10.sequenceDefinition == this.sequenceDefinition) { this.frame = var10.frame; this.cycleStart = var10.cycleStart; return; @@ -65,17 +65,17 @@ public class DynamicObject extends Renderable { this.frame = (int)(Math.random() * (double)this.sequenceDefinition.frameIds.length); this.cycleStart -= (int)(Math.random() * (double)this.sequenceDefinition.frameLengths[this.frame]); } else { - this.frame = (int)(Math.random() * (double)this.sequenceDefinition.method1085()); + this.frame = (int)(Math.random() * (double)this.sequenceDefinition.method1052()); } } } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { @@ -87,7 +87,7 @@ protected final Model getModel() { } if (this.sequenceDefinition.isCachedModelIdSet()) { - var2 = this.sequenceDefinition.method1085(); + var2 = this.sequenceDefinition.method1052(); this.frame += var1; var1 = 0; if (this.frame >= var2) { @@ -97,11 +97,11 @@ protected final Model getModel() { } } } else { - label70: { + label69: { do { do { if (var1 <= this.sequenceDefinition.frameLengths[this.frame]) { - break label70; + break label69; } var1 -= this.sequenceDefinition.frameLengths[this.frame]; @@ -118,7 +118,7 @@ protected final Model getModel() { this.cycleStart = Client.cycle - var1; } - ObjectComposition var12 = WorldMapElement.getObjectDefinition(this.id); + ObjectComposition var12 = WorldMapSection2.getObjectDefinition(this.id); if (var12.transforms != null) { var12 = var12.transform(); } @@ -140,56 +140,75 @@ protected final Model getModel() { int var6 = (var3 >> 1) + this.y; int var7 = (var3 + 1 >> 1) + this.y; int[][] var8 = Tiles.Tiles_heights[this.plane]; - int var9 = var8[var4][var7] + var8[var4][var6] + var8[var5][var6] + var8[var5][var7] >> 2; + int var9 = var8[var5][var7] + var8[var5][var6] + var8[var4][var6] + var8[var4][var7] >> 2; int var10 = (this.x << 7) + (var2 << 6); int var11 = (this.y << 7) + (var3 << 6); return var12.getModelDynamic(this.type, this.orientation, var8, var10, var9, var11, this.sequenceDefinition, this.frame); } } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "43" + descriptor = "(II)Lhx;", + garbageValue = "-1047374686" ) - @Export("ItemContainer_getCount") - static int ItemContainer_getCount(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var2 == null) { - return 0; + @Export("SequenceDefinition_get") + public static SequenceDefinition SequenceDefinition_get(int var0) { + SequenceDefinition var1 = (SequenceDefinition)SequenceDefinition.SequenceDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - return var1 >= 0 && var1 < var2.quantities.length ? var2.quantities[var1] : 0; + byte[] var2 = class369.SequenceDefinition_archive.takeFile(12, var0); + var1 = new SequenceDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + SequenceDefinition.SequenceDefinition_cached.put(var1, (long)var0); + return var1; } } - @ObfuscatedName("ab") + @ObfuscatedName("hn") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-173700764" + descriptor = "(Lhx;IIILdf;I)V", + garbageValue = "732979691" ) - static int method450(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - if (var0 == 1700) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.itemId; - return 1; - } else if (var0 == 1701) { - if (var3.itemId != -1) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.itemQuantity; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } + static void method451(SequenceDefinition var0, int var1, int var2, int var3, Actor var4) { + if (Client.soundEffectCount < 50) { + if (var0.soundEffects != null && var1 < var0.soundEffects.length) { + int var5 = var0.soundEffects[var1] & 15; + if ((var5 <= 0 || WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() != 0) && (var5 != 0 || WorldMapIcon_1.clientPreferences.getCurrentSoundEffectsVolume() != 0)) { + int var6 = var0.soundEffects[var1]; + boolean var9 = var4 == class229.localPlayer; + if (var6 != 0) { + int var10 = var6 & 15; + int var11; + int var12; + if (var10 == 0) { + if (!var9) { + return; + } - return 1; - } else if (var0 == 1702) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.childIndex; - return 1; - } else if (var0 == 1707) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.method1834() ? 1 : 0; - return 1; - } else if (var0 == 1708) { - return WorldMapDecoration.method1530(var3); - } else { - return var0 == 1709 ? class390.method2030(var3) : 2; + Client.soundLocations[Client.soundEffectCount] = 0; + } else { + var11 = (var2 - 64) / 128; + var12 = (var3 - 64) / 128; + Client.soundLocations[Client.soundEffectCount] = var10 + (var12 << 8) + (var11 << 16); + } + + var11 = var6 >> 8; + var12 = var6 >> 4 & 7; + Client.soundEffectIds[Client.soundEffectCount] = var11; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var12; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0; + Client.soundEffects[Client.soundEffectCount] = null; + ++Client.soundEffectCount; + } + + } + } } } } \ No newline at end of file diff --git a/osrs/src/main/java/EnumComposition.java b/osrs/src/main/java/EnumComposition.java index bcf02ba58..d6dc52860 100644 --- a/osrs/src/main/java/EnumComposition.java +++ b/osrs/src/main/java/EnumComposition.java @@ -3,43 +3,53 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hu") +import java.security.SecureRandom; + +@ObfuscatedName("hp") @Implements("EnumComposition") public class EnumComposition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("EnumDefinition_archive") public static AbstractArchive EnumDefinition_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("EnumDefinition_cached") - static EvictingDualNodeHashTable EnumDefinition_cached; - @ObfuscatedName("ao") + public static EvictingDualNodeHashTable EnumDefinition_cached; + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "Ldz;" + ) + static LoginScreenAnimation field1505; + @ObfuscatedName("ih") + @Export("secureRandom") + static SecureRandom secureRandom; + @ObfuscatedName("ar") @Export("inputType") public char inputType; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("outputType") public char outputType; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("defaultStr") public String defaultStr; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("defaultInt") public int defaultInt; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("outputCount") public int outputCount; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("keys") public int[] keys; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("intVals") public int[] intVals; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("strVals") public String[] strVals; @@ -52,10 +62,10 @@ public class EnumComposition extends DualNode { this.outputCount = 0; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-388021324" + descriptor = "(Luj;I)V", + garbageValue = "-673581219" ) @Export("decode") void decode(Buffer var1) { @@ -69,10 +79,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-227336783" + descriptor = "(Luj;II)V", + garbageValue = "225113863" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -109,36 +119,40 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "55" + descriptor = "(I)I", + garbageValue = "-1812244472" ) @Export("size") public int size() { return this.outputCount; } - @ObfuscatedName("ae") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(II)Lib;", - garbageValue = "2100193586" + descriptor = "(Lol;IB)Z", + garbageValue = "120" ) - @Export("SequenceDefinition_get") - public static SequenceDefinition SequenceDefinition_get(int var0) { - SequenceDefinition var1 = (SequenceDefinition)SequenceDefinition.SequenceDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; + public static boolean method926(AbstractArchive var0, int var1) { + byte[] var2 = var0.takeFileFlat(var1); + if (var2 == null) { + return false; } else { - byte[] var2 = UserComparator2.SequenceDefinition_archive.takeFile(12, var0); - var1 = new SequenceDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); - SequenceDefinition.SequenceDefinition_cached.put(var1, (long)var0); - return var1; + class162.SpriteBuffer_decode(var2); + return true; } } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-264971545" + ) + public static void method925(int var0, int var1, int var2, int var3) { + class316.musicPlayerStatus = var0; + class316.field2794 = var1; + class316.field2795 = var2; + class316.field2796 = var3; + } } \ No newline at end of file diff --git a/osrs/src/main/java/EvictingDualNodeHashTable.java b/osrs/src/main/java/EvictingDualNodeHashTable.java index bc56c154a..928649acb 100644 --- a/osrs/src/main/java/EvictingDualNodeHashTable.java +++ b/osrs/src/main/java/EvictingDualNodeHashTable.java @@ -3,30 +3,30 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("le") +@ObfuscatedName("lk") @Implements("EvictingDualNodeHashTable") public final class EvictingDualNodeHashTable { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("dualNode") DualNode dualNode; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("capacity") int capacity; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("remainingCapacity") int remainingCapacity; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lou;" + descriptor = "Lpo;" ) @Export("deque") IterableDualNodeQueue deque; @@ -44,9 +44,9 @@ public EvictingDualNodeHashTable(int var1) { this.hashTable = new IterableNodeHashTable(var2); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(J)Lsq;" + descriptor = "(J)Lsn;" ) @Export("get") public DualNode get(long var1) { @@ -58,7 +58,7 @@ public DualNode get(long var1) { return var3; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("remove") public void remove(long var1) { DualNode var3 = (DualNode)this.hashTable.get(var1); @@ -70,9 +70,9 @@ public void remove(long var1) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lsq;J)V" + descriptor = "(Lsn;J)V" ) @Export("put") public void put(DualNode var1, long var2) { @@ -93,7 +93,7 @@ public void put(DualNode var1, long var2) { this.deque.add(var1); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("clear") public void clear() { this.deque.clear(); diff --git a/osrs/src/main/java/FaceNormal.java b/osrs/src/main/java/FaceNormal.java index d3bfed12c..101f532f6 100644 --- a/osrs/src/main/java/FaceNormal.java +++ b/osrs/src/main/java/FaceNormal.java @@ -1,20 +1,30 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iq") +@ObfuscatedName("kp") @Implements("FaceNormal") public class FaceNormal { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("x") int x; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("y") int y; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("z") int z; FaceNormal() { } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Lld;", + garbageValue = "1253542503" + ) + static PacketBufferNode method1516() { + return PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0 ? new PacketBufferNode() : PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; + } } \ No newline at end of file diff --git a/osrs/src/main/java/FadeInTask.java b/osrs/src/main/java/FadeInTask.java index 01c622a4e..c2338d0c1 100644 --- a/osrs/src/main/java/FadeInTask.java +++ b/osrs/src/main/java/FadeInTask.java @@ -3,102 +3,67 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pt") +@ObfuscatedName("qt") @Implements("FadeInTask") public class FadeInTask extends SongTask { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lmu;" + descriptor = "Lmt;" ) - MusicSong field3719; - @ObfuscatedName("ae") - int field3718; + MusicSong field3753; + @ObfuscatedName("ah") + int field3752; @ObfuscatedSignature( - descriptor = "(Lpm;IZI)V" + descriptor = "(Lql;IZI)V" ) public FadeInTask(SongTask var1, int var2, boolean var3, int var4) { super(var1); - this.field3719 = null; - this.field3718 = 0; - super.field3722 = "FadeInTask"; + this.field3753 = null; + this.field3752 = 0; + super.field3756 = "FadeInTask"; if (var2 >= 0) { - if (var3 && var2 < class305.field2774.size()) { - this.field3719 = (MusicSong)class305.field2774.get(var2); - } else if (!var3 && var2 < class305.musicSongs.size()) { - this.field3719 = (MusicSong)class305.musicSongs.get(var2); + if (var3 && var2 < class316.field2790.size()) { + this.field3753 = (MusicSong)class316.field2790.get(var2); + } else if (!var3 && var2 < class316.musicSongs.size()) { + this.field3753 = (MusicSong)class316.musicSongs.get(var2); } - this.field3718 = var4; + this.field3752 = var4; } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - if (this.field3719 != null && this.field3719.midiPcmStream != null) { - this.field3719.field2862 = true; + if (this.field3753 != null && this.field3753.midiPcmStream != null) { + this.field3753.field2884 = true; try { - if (this.field3719.field2867 < (float)this.field3719.musicTrackVolume && this.field3719.midiPcmStream.isReady()) { - float var1 = this.field3718 == 0 ? (float)this.field3718 : (float)this.field3719.musicTrackVolume / (float)this.field3718; - MusicSong var10000 = this.field3719; - var10000.field2867 += 0.0F == var1 ? (float)this.field3719.musicTrackVolume : var1; - if (this.field3719.field2867 > (float)this.field3719.musicTrackVolume) { - this.field3719.field2867 = (float)this.field3719.musicTrackVolume; + if (this.field3753.field2886 < (float)this.field3753.musicTrackVolume && this.field3753.midiPcmStream.isReady()) { + float var1 = this.field3752 == 0 ? (float)this.field3752 : (float)this.field3753.musicTrackVolume / (float)this.field3752; + MusicSong var10000 = this.field3753; + var10000.field2886 += var1 == 0.0F ? (float)this.field3753.musicTrackVolume : var1; + if (this.field3753.field2886 > (float)this.field3753.musicTrackVolume) { + this.field3753.field2886 = (float)this.field3753.musicTrackVolume; } - this.field3719.midiPcmStream.setPcmStreamVolume((int)this.field3719.field2867); + this.field3753.midiPcmStream.setPcmStreamVolume((int)this.field3753.field2886); return false; } } catch (Exception var3) { - this.method2138(var3.getMessage()); + this.method2160(var3.getMessage()); return true; } - this.field3719.field2862 = false; + this.field3753.field2884 = false; return true; } else { return true; } } - - @ObfuscatedName("je") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZB)V", - garbageValue = "0" - ) - @Export("drawLoadingMessage") - static final void drawLoadingMessage(String var0, boolean var1) { - if (Client.showLoadingMessages) { - byte var2 = 4; - int var3 = var2 + 6; - int var4 = var2 + 6; - int var5 = SecureRandomCallable.fontPlain12.lineWidth(var0, 250); - int var6 = SecureRandomCallable.fontPlain12.lineCount(var0, 250) * 13; - Rasterizer2D.Rasterizer2D_fillRectangle(var3 - var2, var4 - var2, var5 + var2 + var2, var6 + var2 + var2, 0); - Rasterizer2D.Rasterizer2D_drawRectangle(var3 - var2, var4 - var2, var2 + var2 + var5, var2 + var6 + var2, 16777215); - SecureRandomCallable.fontPlain12.drawLines(var0, var3, var4, var5, var6, 16777215, -1, 1, 1, 0); - int var7 = var3 - var2; - int var8 = var4 - var2; - int var9 = var2 + var5 + var2; - int var10 = var2 + var6 + var2; - - for (int var11 = 0; var11 < Client.rootWidgetCount; ++var11) { - if (Client.rootWidgetXs[var11] + Client.rootWidgetWidths[var11] > var7 && Client.rootWidgetXs[var11] < var9 + var7 && Client.rootWidgetYs[var11] + Client.rootWidgetHeights[var11] > var8 && Client.rootWidgetYs[var11] < var10 + var8) { - Client.field407[var11] = true; - } - } - - if (var1) { - AttackOption.rasterProvider.drawFull(0, 0); - } else { - DevicePcmPlayerProvider.method76(var3, var4, var5, var6); - } - - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/FadeOutTask.java b/osrs/src/main/java/FadeOutTask.java index 86ef5681c..0f9d3fcd1 100644 --- a/osrs/src/main/java/FadeOutTask.java +++ b/osrs/src/main/java/FadeOutTask.java @@ -1,67 +1,131 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("px") +@ObfuscatedName("qb") @Implements("FadeOutTask") public class FadeOutTask extends SongTask { - @ObfuscatedName("au") + @ObfuscatedName("do") @ObfuscatedSignature( - descriptor = "Lmu;" + descriptor = "Lup;" ) - MusicSong field3717; - @ObfuscatedName("ae") - int field3716; + static IndexedSprite field3749; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lmt;" + ) + MusicSong field3751; + @ObfuscatedName("ah") + int field3750; @ObfuscatedSignature( - descriptor = "(Lpm;IZI)V" + descriptor = "(Lql;IZI)V" ) public FadeOutTask(SongTask var1, int var2, boolean var3, int var4) { super(var1); - this.field3717 = null; - this.field3716 = 0; - super.field3722 = "FadeOutTask"; + this.field3751 = null; + this.field3750 = 0; + super.field3756 = "FadeOutTask"; if (var2 >= 0) { - if (var3 && var2 < class305.field2774.size()) { - this.field3717 = (MusicSong)class305.field2774.get(var2); - } else if (!var3 && var2 < class305.musicSongs.size()) { - this.field3717 = (MusicSong)class305.musicSongs.get(var2); + if (var3 && var2 < class316.field2790.size()) { + this.field3751 = (MusicSong)class316.field2790.get(var2); + } else if (!var3 && var2 < class316.musicSongs.size()) { + this.field3751 = (MusicSong)class316.musicSongs.get(var2); } - this.field3716 = var4; + this.field3750 = var4; } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - if (this.field3717 != null && this.field3717.midiPcmStream != null) { - this.field3717.field2862 = true; + if (this.field3751 != null && this.field3751.midiPcmStream != null) { + this.field3751.field2884 = true; try { - if (this.field3717.field2867 > 0.0F && this.field3717.midiPcmStream.isReady()) { - float var1 = this.field3716 == 0 ? (float)this.field3716 : (float)this.field3717.musicTrackVolume / (float)this.field3716; - MusicSong var10000 = this.field3717; - var10000.field2867 -= var1 == 0.0F ? (float)this.field3717.musicTrackVolume : var1; - if (this.field3717.field2867 < 0.0F) { - this.field3717.field2867 = 0.0F; + if (this.field3751.field2886 > 0.0F && this.field3751.midiPcmStream.isReady()) { + float var1 = this.field3750 == 0 ? (float)this.field3750 : (float)this.field3751.musicTrackVolume / (float)this.field3750; + MusicSong var10000 = this.field3751; + var10000.field2886 -= 0.0F == var1 ? (float)this.field3751.musicTrackVolume : var1; + if (this.field3751.field2886 < 0.0F) { + this.field3751.field2886 = 0.0F; } - this.field3717.midiPcmStream.setPcmStreamVolume((int)this.field3717.field2867); + this.field3751.midiPcmStream.setPcmStreamVolume((int)this.field3751.field2886); return false; } } catch (Exception var3) { - this.method2138(var3.getMessage()); + this.method2160(var3.getMessage()); return true; } - this.field3717.field2862 = false; + this.field3751.field2884 = false; return true; } else { return true; } } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Ltb;", + garbageValue = "419212113" + ) + @Export("getDbTableType") + public static DbTableType getDbTableType(int var0) { + DbTableType var1 = (DbTableType)DbTableType.DBTableType_cache.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = DbTableType.field4134.takeFile(39, var0); + var1 = new DbTableType(); + if (var2 != null) { + var1.method2514(new Buffer(var2)); + } + + var1.method2516(); + DbTableType.DBTableType_cache.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "82" + ) + static final int method2153(int var0, int var1) { + int var2 = NPC.method595(var0 - 1, var1 - 1) + NPC.method595(1 + var0, var1 - 1) + NPC.method595(var0 - 1, 1 + var1) + NPC.method595(var0 + 1, 1 + var1); + int var3 = NPC.method595(var0 - 1, var1) + NPC.method595(var0 + 1, var1) + NPC.method595(var0, var1 - 1) + NPC.method595(var0, 1 + var1); + int var4 = NPC.method595(var0, var1); + return var2 / 16 + var3 / 8 + var4 / 4; + } + + @ObfuscatedName("kk") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-1205562248" + ) + static void method2154(int var0, int var1, int var2, int var3) { + Widget var4 = HealthBarDefinition.widgetDefinition.getWidgetChild(var0, var1); + if (var4 != null && var4.onTargetEnter != null) { + ScriptEvent var5 = new ScriptEvent(); + var5.widget = var4; + var5.args = var4.onTargetEnter; + class157.runScriptEvent(var5); + } + + Client.selectedSpellItemId = var3; + Client.isSpellSelected = true; + class348.selectedSpellWidget = var0; + Client.selectedSpellChildIndex = var1; + UrlRequest.selectedSpellFlags = var2; + class159.invalidateWidget(var4); + } } \ No newline at end of file diff --git a/osrs/src/main/java/FileSystem.java b/osrs/src/main/java/FileSystem.java index 0d3b32991..631a8cae4 100644 --- a/osrs/src/main/java/FileSystem.java +++ b/osrs/src/main/java/FileSystem.java @@ -4,20 +4,19 @@ import net.runelite.mapping.ObfuscatedSignature; import java.io.File; -import java.io.IOException; -import java.io.RandomAccessFile; +import java.util.ArrayList; import java.util.Hashtable; -@ObfuscatedName("ga") +@ObfuscatedName("im") @Implements("FileSystem") public class FileSystem { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("FileSystem_hasPermissions") static boolean FileSystem_hasPermissions; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("FileSystem_cacheDir") static File FileSystem_cacheDir; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("FileSystem_cacheFiles") static Hashtable FileSystem_cacheFiles; @@ -26,88 +25,29 @@ public class FileSystem { FileSystem_cacheFiles = new Hashtable(16); } - @ObfuscatedName("au") + @ObfuscatedName("is") @ObfuscatedSignature( - descriptor = "(B)[Lew;", - garbageValue = "-66" + descriptor = "(IIB)V", + garbageValue = "52" ) - static class128[] method912() { - return new class128[]{class128.field1229, class128.field1226, class128.field1227, class128.field1228, class128.field1225}; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "1743339101" - ) - public static void method911(AbstractArchive var0) { - VarpDefinition.VarpDefinition_archive = var0; - VarpDefinition.field1498 = VarpDefinition.VarpDefinition_archive.getGroupFileCount(16); - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-1" - ) - static void method913() { - try { - File var0 = new File(class36.userHomeDirectory, "random.dat"); - int var2; - if (var0.exists()) { - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); - } else { - label34: - for (int var1 = 0; var1 < JagexCache.field1464.length; ++var1) { - for (var2 = 0; var2 < DelayFadeTask.field3712.length; ++var2) { - File var3 = new File(DelayFadeTask.field3712[var2] + JagexCache.field1464[var1] + File.separatorChar + "random.dat"); - if (var3.exists()) { - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); - break label34; - } - } - } - } - - if (JagexCache.JagexCache_randomDat == null) { - RandomAccessFile var4 = new RandomAccessFile(var0, "rw"); - var2 = var4.read(); - var4.seek(0L); - var4.write(var2); - var4.seek(0L); - var4.close(); - JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); - } - } catch (IOException var5) { + @Export("playJingle") + static void playJingle(int var0, int var1) { + if (WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() != 0 && var0 != -1) { + ArrayList var2 = new ArrayList(); + var2.add(new MusicSong(PcmPlayer.field181, var0, 0, WorldMapIcon_1.clientPreferences.getCurrentMusicVolume(), false)); + PendingSpawn.method505(var2, 0, 0, 0, 0, true); + Client.playingJingle = true; } } - @ObfuscatedName("ib") - @ObfuscatedSignature( - descriptor = "(Lib;IIII)V", - garbageValue = "-1577193721" - ) - static void method914(SequenceDefinition var0, int var1, int var2, int var3) { - if (Client.soundEffectCount < 50 && class449.clientPreferences.getAreaSoundEffectsVolume() != 0) { - if (var0.soundEffects != null && var1 < var0.soundEffects.length) { - MouseHandler.method172(var0.soundEffects[var1], var2, var3); - } - } - } - - @ObfuscatedName("or") + @ObfuscatedName("jq") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1893759044" + descriptor = "(I)Lon;", + garbageValue = "-187710170" ) - static void method915() { - for (int var0 = 0; var0 < Client.field609.size(); ++var0) { - if (ClientPreferences.method571((Integer)Client.field609.get(var0)) != 2) { - Client.field609.remove(var0); - --var0; - } - } - + @Export("getScriptEvents") + public static NodeDeque getScriptEvents() { + return Client.scriptEvents; } } \ No newline at end of file diff --git a/osrs/src/main/java/FillMode.java b/osrs/src/main/java/FillMode.java index 0e272fbcc..17b3f8bcb 100644 --- a/osrs/src/main/java/FillMode.java +++ b/osrs/src/main/java/FillMode.java @@ -2,42 +2,42 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("um") -public enum FillMode implements class371 { - @ObfuscatedName("au") +@ObfuscatedName("uk") +public enum FillMode implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lum;" + descriptor = "Luk;" ) @Export("SOLID") SOLID(0, 0), - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lum;" + descriptor = "Luk;" ) - field4230(1, 1), - @ObfuscatedName("ao") + field4258(1, 1), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lum;" + descriptor = "Luk;" ) - field4231(2, 2); + field4259(2, 2); - @ObfuscatedName("at") - public final int field4233; - @ObfuscatedName("ac") - final int field4232; + @ObfuscatedName("ao") + public final int field4261; + @ObfuscatedName("ab") + final int field4260; FillMode(int var3, int var4) { - this.field4233 = var3; - this.field4232 = var4; + this.field4261 = var3; + this.field4260 = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field4232; + return this.field4260; } } \ No newline at end of file diff --git a/osrs/src/main/java/FloorDecoration.java b/osrs/src/main/java/FloorDecoration.java index f9f5ee009..d19d4c4ad 100644 --- a/osrs/src/main/java/FloorDecoration.java +++ b/osrs/src/main/java/FloorDecoration.java @@ -3,63 +3,33 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iy") +@ObfuscatedName("km") @Implements("FloorDecoration") public final class FloorDecoration { - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lbg;" - ) - @Export("pcmPlayerProvider") - public static class51 pcmPlayerProvider; - @ObfuscatedName("au") + @ObfuscatedName("aa") + static int field2162; + @ObfuscatedName("at") @Export("z") int z; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") int y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable") public Renderable renderable; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("tag") public long tag; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("flags") int flags; FloorDecoration() { } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "([BILjava/lang/CharSequence;I)I", - garbageValue = "-2024995343" - ) - public static int method1179(byte[] var0, int var1, CharSequence var2) { - int var3 = var2.length(); - int var4 = var1; - - for (int var5 = 0; var5 < var3; ++var5) { - char var6 = var2.charAt(var5); - if (var6 <= 127) { - var0[var4++] = (byte)var6; - } else if (var6 <= 2047) { - var0[var4++] = (byte)(192 | var6 >> 6); - var0[var4++] = (byte)(128 | var6 & '?'); - } else { - var0[var4++] = (byte)(224 | var6 >> '\f'); - var0[var4++] = (byte)(128 | var6 >> 6 & 63); - var0[var4++] = (byte)(128 | var6 & '?'); - } - } - - return var4 - var1; - } } \ No newline at end of file diff --git a/osrs/src/main/java/FloorOverlayDefinition.java b/osrs/src/main/java/FloorOverlayDefinition.java index b85c290dd..71225c456 100644 --- a/osrs/src/main/java/FloorOverlayDefinition.java +++ b/osrs/src/main/java/FloorOverlayDefinition.java @@ -2,56 +2,53 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; -@ObfuscatedName("hr") +@ObfuscatedName("hd") @Implements("FloorOverlayDefinition") public class FloorOverlayDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("FloorOverlayDefinition_archive") public static AbstractArchive FloorOverlayDefinition_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("FloorOverlayDefinition_cached") - public static EvictingDualNodeHashTable FloorOverlayDefinition_cached; - @ObfuscatedName("kq") - @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("mapDotSprites") - static SpritePixels[] mapDotSprites; - @ObfuscatedName("ao") + static EvictingDualNodeHashTable FloorOverlayDefinition_cached; + @ObfuscatedName("ve") + static int field1772; + @ObfuscatedName("ar") @Export("primaryRgb") public int primaryRgb; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("texture") public int texture; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("hideUnderlay") public boolean hideUnderlay; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("secondaryRgb") public int secondaryRgb; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("hue") public int hue; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("saturation") public int saturation; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("lightness") public int lightness; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("secondaryHue") public int secondaryHue; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("secondarySaturation") public int secondarySaturation; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("secondaryLightness") public int secondaryLightness; @@ -59,20 +56,20 @@ public class FloorOverlayDefinition extends DualNode { FloorOverlayDefinition_cached = new EvictingDualNodeHashTable(64); } - public FloorOverlayDefinition() { + FloorOverlayDefinition() { this.primaryRgb = 0; this.texture = -1; this.hideUnderlay = true; this.secondaryRgb = -1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "32" + descriptor = "(I)V", + garbageValue = "563834011" ) @Export("postDecode") - public void postDecode() { + void postDecode() { if (this.secondaryRgb != -1) { this.setHsl(this.secondaryRgb); this.secondaryHue = this.hue; @@ -83,13 +80,13 @@ public void postDecode() { this.setHsl(this.primaryRgb); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "7" + descriptor = "(Luj;II)V", + garbageValue = "1543407873" ) @Export("decode") - public void decode(Buffer var1, int var2) { + void decode(Buffer var1, int var2) { while (true) { int var3 = var1.readUnsignedByte(); if (var3 == 0) { @@ -100,10 +97,10 @@ public void decode(Buffer var1, int var2) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;IIB)V", - garbageValue = "42" + descriptor = "(Luj;IIB)V", + garbageValue = "2" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2, int var3) { @@ -120,10 +117,10 @@ void decodeNext(Buffer var1, int var2, int var3) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-718150791" + garbageValue = "-1030496121" ) @Export("setHsl") void setHsl(int var1) { @@ -150,8 +147,8 @@ void setHsl(int var1) { double var12 = 0.0D; double var14 = 0.0D; - double var16 = (var8 + var10) / 2.0D; - if (var10 != var8) { + double var16 = (var10 + var8) / 2.0D; + if (var8 != var10) { if (var16 < 0.5D) { var14 = (var10 - var8) / (var10 + var8); } @@ -160,17 +157,17 @@ void setHsl(int var1) { var14 = (var10 - var8) / (2.0D - var10 - var8); } - if (var10 == var2) { + if (var2 == var10) { var12 = (var4 - var6) / (var10 - var8); } else if (var10 == var4) { - var12 = 2.0D + (var6 - var2) / (var10 - var8); + var12 = (var6 - var2) / (var10 - var8) + 2.0D; } else if (var10 == var6) { var12 = (var2 - var4) / (var10 - var8) + 4.0D; } } var12 /= 6.0D; - this.hue = (int)(var12 * 256.0D); + this.hue = (int)(256.0D * var12); this.saturation = (int)(256.0D * var14); this.lightness = (int)(256.0D * var16); if (this.saturation < 0) { @@ -186,4 +183,213 @@ void setHsl(int var1) { } } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Lgv;", + garbageValue = "202631143" + ) + @Export("VarpDefinition_get") + public static VarpDefinition VarpDefinition_get(int var0) { + VarpDefinition var1 = (VarpDefinition)VarpDefinition.VarpDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = VarpDefinition.VarpDefinition_archive.takeFile(16, var0); + var1 = new VarpDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + VarpDefinition.VarpDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)Ljava/lang/Class;", + garbageValue = "92814810" + ) + @Export("loadClassFromDescriptor") + static Class loadClassFromDescriptor(String var0) throws ClassNotFoundException { + if (var0.equals("B")) { + return Byte.TYPE; + } else if (var0.equals("I")) { + return Integer.TYPE; + } else if (var0.equals("S")) { + return Short.TYPE; + } else if (var0.equals("J")) { + return Long.TYPE; + } else if (var0.equals("Z")) { + return Boolean.TYPE; + } else if (var0.equals("F")) { + return Float.TYPE; + } else if (var0.equals("D")) { + return Double.TYPE; + } else if (var0.equals("C")) { + return Character.TYPE; + } else { + return var0.equals("void") ? Void.TYPE : Reflection.findClass(var0); + } + } + + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "-19" + ) + static int method1038(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 == 2700) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.itemId; + return 1; + } else if (var0 == 2701) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var3.itemId != -1) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.itemQuantity; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 2702) { + int var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var5); + if (var4 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 2706) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.rootInterface; + return 1; + } else if (var0 == 2707) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.method1861() ? 1 : 0; + return 1; + } else if (var0 == 2708) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return class310.method1645(var3); + } else if (var0 == 2709) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return GrandExchangeOfferTotalQuantityComparator.method1965(var3); + } else { + return 2; + } + } + + @ObfuscatedName("lw") + @ObfuscatedSignature( + descriptor = "(IIIILjava/lang/String;B)V", + garbageValue = "8" + ) + @Export("widgetDefaultMenuAction") + static void widgetDefaultMenuAction(int var0, int var1, int var2, int var3, String var4) { + Widget var5 = HealthBarDefinition.widgetDefinition.getWidgetChild(var1, var2); + if (var5 != null) { + if (var5.onOp != null) { + ScriptEvent var6 = new ScriptEvent(); + var6.widget = var5; + var6.opIndex = var0; + var6.targetName = var4; + var6.args = var5.onOp; + class157.runScriptEvent(var6); + } + + boolean var8 = true; + if (var5.contentType > 0) { + var8 = class101.method597(var5); + } + + if (var8) { + if (GraphicsObject.method428(class361.getWidgetFlags(var5), var0 - 1)) { + PacketBufferNode var7; + if (var0 == 1) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON1, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 2) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON2, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 3) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON3, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 4) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON4, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 5) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON5, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 6) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON6, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 7) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON7, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 8) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON8, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 9) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON9, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + if (var0 == 10) { + var7 = class113.getPacketBufferNode(ClientPacket.IF_BUTTON10, Client.packetWriter.isaacCipher); + var7.packetBuffer.writeInt(var1); + var7.packetBuffer.writeShort(var2); + var7.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var7); + } + + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/FloorUnderlayDefinition.java b/osrs/src/main/java/FloorUnderlayDefinition.java index 16dcd393a..c9f9c6732 100644 --- a/osrs/src/main/java/FloorUnderlayDefinition.java +++ b/osrs/src/main/java/FloorUnderlayDefinition.java @@ -3,34 +3,34 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hs") +@ObfuscatedName("hu") @Implements("FloorUnderlayDefinition") public class FloorUnderlayDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("FloorUnderlayDefinition_archive") public static AbstractArchive FloorUnderlayDefinition_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("FloorUnderlayDefinition_cached") - public static EvictingDualNodeHashTable FloorUnderlayDefinition_cached; - @ObfuscatedName("ao") + static EvictingDualNodeHashTable FloorUnderlayDefinition_cached; + @ObfuscatedName("ar") @Export("rgb") int rgb; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("hue") public int hue; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("saturation") public int saturation; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("lightness") public int lightness; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("hueMultiplier") public int hueMultiplier; @@ -38,27 +38,27 @@ public class FloorUnderlayDefinition extends DualNode { FloorUnderlayDefinition_cached = new EvictingDualNodeHashTable(64); } - public FloorUnderlayDefinition() { + FloorUnderlayDefinition() { this.rgb = 0; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-525788142" + descriptor = "(B)V", + garbageValue = "110" ) @Export("postDecode") - public void postDecode() { + void postDecode() { this.setHsl(this.rgb); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1362647388" + descriptor = "(Luj;II)V", + garbageValue = "-1456833472" ) @Export("decode") - public void decode(Buffer var1, int var2) { + void decode(Buffer var1, int var2) { while (true) { int var3 = var1.readUnsignedByte(); if (var3 == 0) { @@ -69,10 +69,10 @@ public void decode(Buffer var1, int var2) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;IIB)V", - garbageValue = "34" + descriptor = "(Luj;IIS)V", + garbageValue = "29369" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2, int var3) { @@ -82,10 +82,10 @@ void decodeNext(Buffer var1, int var2, int var3) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-628456834" + garbageValue = "511229306" ) @Export("setHsl") void setHsl(int var1) { @@ -113,7 +113,7 @@ void setHsl(int var1) { double var12 = 0.0D; double var14 = 0.0D; double var16 = (var8 + var10) / 2.0D; - if (var10 != var8) { + if (var8 != var10) { if (var16 < 0.5D) { var14 = (var10 - var8) / (var8 + var10); } @@ -133,7 +133,7 @@ void setHsl(int var1) { var12 /= 6.0D; this.saturation = (int)(var14 * 256.0D); - this.lightness = (int)(256.0D * var16); + this.lightness = (int)(var16 * 256.0D); if (this.saturation < 0) { this.saturation = 0; } else if (this.saturation > 255) { @@ -147,9 +147,9 @@ void setHsl(int var1) { } if (var16 > 0.5D) { - this.hueMultiplier = (int)((1.0D - var16) * var14 * 512.0D); + this.hueMultiplier = (int)(512.0D * (1.0D - var16) * var14); } else { - this.hueMultiplier = (int)(var14 * var16 * 512.0D); + this.hueMultiplier = (int)(512.0D * var16 * var14); } if (this.hueMultiplier < 1) { @@ -158,4 +158,123 @@ void setHsl(int var1) { this.hue = (int)(var12 * (double)this.hueMultiplier); } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "1839424065" + ) + @Export("addImageTag") + static String addImageTag(int var0) { + return ""; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([FIFZFZ[FI)I", + garbageValue = "-1537766732" + ) + public static int method967(float[] var0, int var1, float var2, boolean var3, float var4, boolean var5, float[] var6) { + float var7 = 0.0F; + + for (int var8 = 0; var8 < var1 + 1; ++var8) { + var7 += Math.abs(var0[var8]); + } + + float var24 = (Math.abs(var2) + Math.abs(var4)) * (float)(var1 + 1) * class127.field1219; + if (var7 <= var24) { + return -1; + } else { + float[] var9 = new float[var1 + 1]; + + int var10; + for (var10 = 0; var10 < var1 + 1; ++var10) { + var9[var10] = var0[var10] * (1.0F / var7); + } + + while (Math.abs(var9[var1]) < var24) { + --var1; + } + + var10 = 0; + if (var1 == 0) { + return var10; + } else if (var1 == 1) { + var6[0] = -var9[0] / var9[1]; + boolean var11 = var3 ? var2 < var6[0] + var24 : var2 < var6[0] - var24; + boolean var12 = var5 ? var4 > var6[0] - var24 : var4 > var24 + var6[0]; + var10 = var11 && var12 ? 1 : 0; + if (var10 > 0) { + if (var3 && var6[0] < var2) { + var6[0] = var2; + } else if (var5 && var6[0] > var4) { + var6[0] = var4; + } + } + + return var10; + } else { + class464 var21 = new class464(var9, var1); + float[] var22 = new float[var1 + 1]; + + for (int var13 = 1; var13 <= var1; ++var13) { + var22[var13 - 1] = (float)var13 * var9[var13]; + } + + float[] var23 = new float[var1 + 1]; + int var14 = method967(var22, var1 - 1, var2, false, var4, false, var23); + if (var14 == -1) { + return 0; + } else { + boolean var15 = false; + float var17 = 0.0F; + float var18 = 0.0F; + float var19 = 0.0F; + + for (int var20 = 0; var20 <= var14; ++var20) { + if (var10 > var1) { + return var10; + } + + float var16; + if (var20 == 0) { + var16 = var2; + var18 = class251.method1335(var9, var1, var2); + if (Math.abs(var18) <= var24 && var3) { + var6[var10++] = var2; + } + } else { + var16 = var19; + var18 = var17; + } + + if (var20 == var14) { + var19 = var4; + var15 = false; + } else { + var19 = var23[var20]; + } + + var17 = class251.method1335(var9, var1, var19); + if (var15) { + var15 = false; + } else if (Math.abs(var17) < var24) { + if (var14 != var20 || var5) { + var6[var10++] = var19; + var15 = true; + } + } else if (var18 < 0.0F && var17 > 0.0F || var18 > 0.0F && var17 < 0.0F) { + var6[var10++] = ClanSettings.method805(var21, var16, var19, 0.0F); + if (var10 > 1 && var6[var10 - 2] >= var6[var10 - 1] - var24) { + var6[var10 - 2] = (var6[var10 - 2] + var6[var10 - 1]) * 0.5F; + --var10; + } + } + } + + return var10; + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/Font.java b/osrs/src/main/java/Font.java index 8626f2ccf..e7fa1c4fc 100644 --- a/osrs/src/main/java/Font.java +++ b/osrs/src/main/java/Font.java @@ -2,7 +2,7 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("pi") +@ObfuscatedName("pf") @Implements("Font") public final class Font extends AbstractFont { public Font(byte[] var1, int[] var2, int[] var3, int[] var4, int[] var5, int[] var6, byte[][] var7) { @@ -13,7 +13,7 @@ public Font(byte[] var1) { super(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("drawGlyph") final void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int var6) { int var7 = var3 * Rasterizer2D.Rasterizer2D_width + var2; @@ -55,7 +55,7 @@ final void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int va } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("drawGlyphAlpha") final void drawGlyphAlpha(byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7) { int var8 = var3 * Rasterizer2D.Rasterizer2D_width + var2; diff --git a/osrs/src/main/java/FontName.java b/osrs/src/main/java/FontName.java index e3ada27b5..3cedcbfc2 100644 --- a/osrs/src/main/java/FontName.java +++ b/osrs/src/main/java/FontName.java @@ -3,48 +3,46 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sp") +@ObfuscatedName("th") @Implements("FontName") public class FontName { - @ObfuscatedName("up") - static int field4045; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_plain11") public static final FontName FontName_plain11; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_plain12") public static final FontName FontName_plain12; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_bold12") public static final FontName FontName_bold12; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_verdana11") public static final FontName FontName_verdana11; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_verdana13") public static final FontName FontName_verdana13; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("FontName_verdana15") public static final FontName FontName_verdana15; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("name") String name; @@ -61,250 +59,23 @@ public class FontName { this.name = var1; } - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IIILiw;Lis;Lij;I)Z", - garbageValue = "-287593620" - ) - static final boolean method2446(int var0, int var1, int var2, RouteStrategy var3, CollisionMap var4, class216 var5) { - int var6 = var5.method1132(); - int var7 = var5.method1133(); - int[][] var8 = var5.method1135(); - int[][] var9 = var5.method1134(); - int[] var10 = var5.method1136(); - int[] var11 = var5.method1137(); - int var12 = var5.method1138(); - int var13 = var0; - int var14 = var1; - int var15 = var6 >> 1; - int var16 = var7 >> 1; - int var17 = var0 - var15; - int var18 = var1 - var16; - var9[var15][var16] = 99; - var8[var15][var16] = 0; - byte var19 = 0; - int var20 = 0; - var10[var19] = var0; - int var26 = var19 + 1; - var11[var19] = var1; - int[][] var21 = var4.flags; - - while (true) { - label265: - while (true) { - int var22; - int var23; - int var24; - int var25; - do { - do { - do { - label242: - do { - if (var20 == var26) { - var5.method1129(var13, var14); - return false; - } - - var13 = var10[var20]; - var14 = var11[var20]; - var20 = var20 + 1 & var12; - var15 = var13 - var17; - var16 = var14 - var18; - var22 = var13 - var4.xInset; - var23 = var14 - var4.yInset; - if (var3.hasArrived(var2, var13, var14, var4)) { - var5.method1129(var13, var14); - return true; - } - - var24 = var8[var15][var16] + 1; - if (var15 > 0 && var9[var15 - 1][var16] == 0 && (var21[var22 - 1][var23] & 19136782) == 0 && (var21[var22 - 1][var23 + var2 - 1] & 19136824) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2 - 1) { - var10[var26] = var13 - 1; - var11[var26] = var14; - var26 = var26 + 1 & var12; - var9[var15 - 1][var16] = 2; - var8[var15 - 1][var16] = var24; - break; - } - - if ((var21[var22 - 1][var25 + var23] & 19136830) != 0) { - break; - } - - ++var25; - } - } - - if (var15 < var6 - var2 && var9[var15 + 1][var16] == 0 && (var21[var22 + var2][var23] & 19136899) == 0 && (var21[var22 + var2][var23 + var2 - 1] & 19136992) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2 - 1) { - var10[var26] = var13 + 1; - var11[var26] = var14; - var26 = var26 + 1 & var12; - var9[var15 + 1][var16] = 8; - var8[var15 + 1][var16] = var24; - break; - } - - if ((var21[var22 + var2][var25 + var23] & 19136995) != 0) { - break; - } - - ++var25; - } - } - - if (var16 > 0 && var9[var15][var16 - 1] == 0 && (var21[var22][var23 - 1] & 19136782) == 0 && (var21[var22 + var2 - 1][var23 - 1] & 19136899) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2 - 1) { - var10[var26] = var13; - var11[var26] = var14 - 1; - var26 = var26 + 1 & var12; - var9[var15][var16 - 1] = 1; - var8[var15][var16 - 1] = var24; - break; - } - - if ((var21[var22 + var25][var23 - 1] & 19136911) != 0) { - break; - } - - ++var25; - } - } - - if (var16 < var7 - var2 && var9[var15][var16 + 1] == 0 && (var21[var22][var23 + var2] & 19136824) == 0 && (var21[var22 + var2 - 1][var23 + var2] & 19136992) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2 - 1) { - var10[var26] = var13; - var11[var26] = var14 + 1; - var26 = var26 + 1 & var12; - var9[var15][var16 + 1] = 4; - var8[var15][var16 + 1] = var24; - break; - } - - if ((var21[var25 + var22][var23 + var2] & 19137016) != 0) { - break; - } - - ++var25; - } - } - - if (var15 > 0 && var16 > 0 && var9[var15 - 1][var16 - 1] == 0 && (var21[var22 - 1][var23 - 1] & 19136782) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2) { - var10[var26] = var13 - 1; - var11[var26] = var14 - 1; - var26 = var26 + 1 & var12; - var9[var15 - 1][var16 - 1] = 3; - var8[var15 - 1][var16 - 1] = var24; - break; - } - - if ((var21[var22 - 1][var25 + (var23 - 1)] & 19136830) != 0 || (var21[var25 + (var22 - 1)][var23 - 1] & 19136911) != 0) { - break; - } - - ++var25; - } - } - - if (var15 < var6 - var2 && var16 > 0 && var9[var15 + 1][var16 - 1] == 0 && (var21[var22 + var2][var23 - 1] & 19136899) == 0) { - var25 = 1; - - while (true) { - if (var25 >= var2) { - var10[var26] = var13 + 1; - var11[var26] = var14 - 1; - var26 = var26 + 1 & var12; - var9[var15 + 1][var16 - 1] = 9; - var8[var15 + 1][var16 - 1] = var24; - break; - } - - if ((var21[var22 + var2][var25 + (var23 - 1)] & 19136995) != 0 || (var21[var22 + var25][var23 - 1] & 19136911) != 0) { - break; - } - - ++var25; - } - } - - if (var15 > 0 && var16 < var7 - var2 && var9[var15 - 1][var16 + 1] == 0 && (var21[var22 - 1][var23 + var2] & 19136824) == 0) { - for (var25 = 1; var25 < var2; ++var25) { - if ((var21[var22 - 1][var23 + var25] & 19136830) != 0 || (var21[var25 + (var22 - 1)][var23 + var2] & 19137016) != 0) { - continue label242; - } - } - - var10[var26] = var13 - 1; - var11[var26] = var14 + 1; - var26 = var26 + 1 & var12; - var9[var15 - 1][var16 + 1] = 6; - var8[var15 - 1][var16 + 1] = var24; - } - } while(var15 >= var6 - var2); - } while(var16 >= var7 - var2); - } while(var9[var15 + 1][var16 + 1] != 0); - } while((var21[var22 + var2][var23 + var2] & 19136992) != 0); - - for (var25 = 1; var25 < var2; ++var25) { - if ((var21[var22 + var25][var23 + var2] & 19137016) != 0 || (var21[var22 + var2][var23 + var25] & 19136995) != 0) { - continue label265; - } - } - - var10[var26] = var13 + 1; - var11[var26] = var14 + 1; - var26 = var26 + 1 & var12; - var9[var15 + 1][var16 + 1] = 12; - var8[var15 + 1][var16 + 1] = var24; - } - } - } - - @ObfuscatedName("ai") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIZIB)J", - garbageValue = "0" + descriptor = "(IB)V", + garbageValue = "-56" ) - @Export("calculateTag") - public static long calculateTag(int var0, int var1, int var2, boolean var3, int var4) { - long var5 = (long)((var0 & 127) << 0 | (var1 & 127) << 7 | (var2 & 3) << 14) | ((long)var4 & 4294967295L) << 17; - if (var3) { - var5 |= 65536L; - } - - return var5; + static void method2459(int var0) { + class461.field3899 = var0; + class461.field3900 = new class461[var0]; + IgnoreList.field3815 = 0; } - @ObfuscatedName("op") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-80" + descriptor = "(B)[Lth;", + garbageValue = "50" ) - static void method2447(int var0) { - SequenceDefinition var1 = EnumComposition.SequenceDefinition_get(var0); - if (var1.isCachedModelIdSet()) { - if (ClientPreferences.method571(var1.SequenceDefinition_cachedModelId) == 2) { - Client.field609.add(var1.SequenceDefinition_cachedModelId); - } - - } + public static FontName[] method2458() { + return new FontName[]{FontName_verdana13, FontName_bold12, FontName_verdana15, FontName_plain11, FontName_plain12, FontName_verdana11}; } } \ No newline at end of file diff --git a/osrs/src/main/java/Fonts.java b/osrs/src/main/java/Fonts.java index 6732fd4ac..3d2504a3b 100644 --- a/osrs/src/main/java/Fonts.java +++ b/osrs/src/main/java/Fonts.java @@ -5,30 +5,27 @@ import java.util.HashMap; -@ObfuscatedName("sr") +@ObfuscatedName("tk") @Implements("Fonts") public class Fonts { - @ObfuscatedName("af") - @Export("Tiles_hue") - static int[] Tiles_hue; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("spritesArchive") AbstractArchive spritesArchive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("fontsArchive") AbstractArchive fontsArchive; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("map") HashMap map; @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;)V" + descriptor = "(Lol;Lol;)V" ) public Fonts(AbstractArchive var1, AbstractArchive var2) { this.spritesArchive = var1; @@ -36,10 +33,10 @@ public Fonts(AbstractArchive var1, AbstractArchive var2) { this.map = new HashMap(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([Lsp;I)Ljava/util/HashMap;", - garbageValue = "-537170056" + descriptor = "([Lth;I)Ljava/util/HashMap;", + garbageValue = "-926554557" ) @Export("createMap") public HashMap createMap(FontName[] var1) { @@ -51,18 +48,7 @@ public HashMap createMap(FontName[] var1) { if (this.map.containsKey(var5)) { var2.put(var5, this.map.get(var5)); } else { - AbstractArchive var7 = this.spritesArchive; - AbstractArchive var8 = this.fontsArchive; - String var9 = var5.name; - Font var6; - if (!var7.isValidFileName(var9, "")) { - var6 = null; - } else { - int var10 = var7.getGroupId(var9); - int var11 = var7.getFileId(var10, ""); - var6 = LoginPacket.method1613(var7, var8, var10, var11); - } - + Font var6 = class10.method40(this.spritesArchive, this.fontsArchive, var5.name, ""); if (var6 != null) { this.map.put(var5, var6); var2.put(var5, var6); diff --git a/osrs/src/main/java/Frames.java b/osrs/src/main/java/Frames.java index ca60cda53..37d29e543 100644 --- a/osrs/src/main/java/Frames.java +++ b/osrs/src/main/java/Frames.java @@ -3,20 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jt") +@ObfuscatedName("ko") @Implements("Frames") public class Frames extends DualNode { - @ObfuscatedName("af") - static int field2121; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lia;" + descriptor = "[Lkr;" ) @Export("frames") Animation[] frames; @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;IZ)V" + descriptor = "(Lol;Lol;IZ)V" ) Frames(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) { NodeDeque var5 = new NodeDeque(); @@ -53,255 +51,53 @@ public class Frames extends DualNode { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-8394863" + descriptor = "(IB)Z", + garbageValue = "-58" ) @Export("hasAlphaTransform") public boolean hasAlphaTransform(int var1) { return this.frames[var1].hasAlphaTransform; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-292158439" + descriptor = "(II)Lhr;", + garbageValue = "-1830265159" ) - public static void method1293(int var0, int var1) { - VarbitComposition var2 = class384.method2022(var0); - int var3 = var2.baseVar; - int var4 = var2.startBit; - int var5 = var2.endBit; - int var6 = Varps.Varps_masks[var5 - var4]; - if (var1 < 0 || var1 > var6) { - var1 = 0; - } - - var6 <<= var4; - Varps.Varps_main[var3] = Varps.Varps_main[var3] & ~var6 | var1 << var4 & var6; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1760053534" - ) - public static int method1292(int var0) { - return class464.field3907[var0 & 16383]; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-8" - ) - static int method1295(int var0, Script var1, boolean var2) { - int var3; - int var4; - if (var0 == 100) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - int var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - if (var4 == 0) { - throw new RuntimeException(); - } else { - Widget var6 = class92.getWidget(var3); - if (var6.children == null) { - var6.children = new Widget[var5 + 1]; - } - - if (var6.children.length <= var5) { - Widget[] var7 = new Widget[var5 + 1]; - - for (int var8 = 0; var8 < var6.children.length; ++var8) { - var7[var8] = var6.children[var8]; - } - - var6.children = var7; - } - - if (var5 > 0 && var6.children[var5 - 1] == null) { - throw new RuntimeException("" + (var5 - 1)); - } else { - Widget var12 = new Widget(); - var12.type = var4; - var12.parentId = var12.id = var6.id; - var12.childIndex = var5; - var12.isIf3 = true; - if (var4 == 12) { - var12.method1843(); - var12.method1844().method1778(new class105(var12)); - var12.method1844().method1777(new class106(var12)); - } - - var6.children[var5] = var12; - if (var2) { - GameObject.scriptDotWidget = var12; - } else { - SceneTilePaint.scriptActiveWidget = var12; - } - - class218.invalidateWidget(var6); - return 1; - } - } + @Export("getParamDefinition") + public static ParamComposition getParamDefinition(int var0) { + ParamComposition var1 = (ParamComposition)ParamComposition.ParamDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - Widget var9; - if (var0 == 101) { - var9 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - Widget var10 = class92.getWidget(var9.id); - var10.children[var9.childIndex] = null; - class218.invalidateWidget(var10); - return 1; - } else if (var0 == 102) { - var9 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - var9.children = null; - class218.invalidateWidget(var9); - return 1; - } else if (var0 != 200) { - if (var0 == 201) { - var9 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var9 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - if (var2) { - GameObject.scriptDotWidget = var9; - } else { - SceneTilePaint.scriptActiveWidget = var9; - } - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else { - return 2; - } - } else { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Widget var11 = SoundCache.getWidgetChild(var3, var4); - if (var11 != null && var4 != -1) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - if (var2) { - GameObject.scriptDotWidget = var11; - } else { - SceneTilePaint.scriptActiveWidget = var11; - } - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; + byte[] var2 = ParamComposition.ParamDefinition_archive.takeFile(11, var0); + var1 = new ParamComposition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); } + + var1.postDecode(); + ParamComposition.ParamDefinition_cached.put(var1, (long)var0); + return var1; } } - @ObfuscatedName("kv") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ZLto;I)V", - garbageValue = "101109035" + descriptor = "(B)V", + garbageValue = "-34" ) - @Export("updateNpcs") - static final void updateNpcs(boolean var0, PacketBuffer var1) { - Client.field492 = 0; - Client.field451 = 0; - var1.importIndex(); - int var2 = var1.readBits(8); - int var3; - if (var2 < Client.npcCount) { - for (var3 = var2; var3 < Client.npcCount; ++var3) { - Client.field564[++Client.field492 - 1] = Client.npcIndices[var3]; - } - } - - if (var2 > Client.npcCount) { - throw new RuntimeException(""); - } else { - Client.npcCount = 0; - - for (var3 = 0; var3 < var2; ++var3) { - int var4 = Client.npcIndices[var3]; - NPC var5 = Client.npcs[var4]; - int var6 = var1.readBits(1); - if (var6 == 0) { - Client.npcIndices[++Client.npcCount - 1] = var4; - var5.npcCycle = Client.cycle; - } else { - int var7 = var1.readBits(2); - if (var7 == 0) { - Client.npcIndices[++Client.npcCount - 1] = var4; - var5.npcCycle = Client.cycle; - Client.field552[++Client.field451 - 1] = var4; - } else { - int var8; - int var9; - if (var7 == 1) { - Client.npcIndices[++Client.npcCount - 1] = var4; - var5.npcCycle = Client.cycle; - var8 = var1.readBits(3); - var5.move(var8, MoveSpeed.WALK); - var9 = var1.readBits(1); - if (var9 == 1) { - Client.field552[++Client.field451 - 1] = var4; - } - } else if (var7 == 2) { - Client.npcIndices[++Client.npcCount - 1] = var4; - var5.npcCycle = Client.cycle; - if (var1.readBits(1) == 1) { - var8 = var1.readBits(3); - var5.move(var8, MoveSpeed.RUN); - var9 = var1.readBits(3); - var5.move(var9, MoveSpeed.RUN); - } else { - var8 = var1.readBits(3); - var5.move(var8, MoveSpeed.CRAWL); - } - - var8 = var1.readBits(1); - if (var8 == 1) { - Client.field552[++Client.field451 - 1] = var4; - } - } else if (var7 == 3) { - Client.field564[++Client.field492 - 1] = var4; - } - } - } - } - - class349.method1874(var0, var1); - class151.method795(var1); - - for (var2 = 0; var2 < Client.field492; ++var2) { - var3 = Client.field564[var2]; - if (Client.npcs[var3].npcCycle != Client.cycle) { - Client.npcs[var3].definition = null; - Client.npcs[var3] = null; - } - } - - if (var1.offset != Client.packetWriter.serverPacketLength) { - throw new RuntimeException(var1.offset + "," + Client.packetWriter.serverPacketLength); + static void method1519() { + if (Login.Login_username == null || Login.Login_username.length() <= 0) { + if (WorldMapIcon_1.clientPreferences.getUsernameToRemember() != null) { + Login.Login_username = WorldMapIcon_1.clientPreferences.getUsernameToRemember(); + Client.Login_isUsernameRemembered = true; } else { - for (var2 = 0; var2 < Client.npcCount; ++var2) { - if (Client.npcs[Client.npcIndices[var2]] == null) { - throw new RuntimeException(var2 + "," + Client.npcCount); - } - } - + Client.Login_isUsernameRemembered = false; } - } - } - @ObfuscatedName("km") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1066961664" - ) - static void method1297() { - Client.menuOptionsCount = 0; - Client.isMenuOpen = false; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/Friend.java b/osrs/src/main/java/Friend.java index 5dae40e82..b6de5aa53 100644 --- a/osrs/src/main/java/Friend.java +++ b/osrs/src/main/java/Friend.java @@ -3,21 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qo") +@ObfuscatedName("qk") @Implements("Friend") public class Friend extends Buddy { - @ObfuscatedName("au") - boolean field3794; - @ObfuscatedName("ae") - boolean field3793; + @ObfuscatedName("gz") + @Export("worldHost") + static String worldHost; + @ObfuscatedName("at") + boolean field3831; + @ObfuscatedName("ah") + boolean field3830; Friend() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqo;I)I", - garbageValue = "-1434956269" + descriptor = "(Lqk;I)I", + garbageValue = "1155977086" ) @Export("compareToFriend") int compareToFriend(Friend var1) { @@ -29,23 +32,23 @@ int compareToFriend(Friend var1) { return -1; } else if (var1.world != 0 && super.world == 0) { return 1; - } else if (this.field3794 && !var1.field3794) { + } else if (this.field3831 && !var1.field3831) { return -1; - } else if (!this.field3794 && var1.field3794) { + } else if (!this.field3831 && var1.field3831) { return 1; - } else if (this.field3793 && !var1.field3793) { + } else if (this.field3830 && !var1.field3830) { return -1; - } else if (!this.field3793 && var1.field3793) { + } else if (!this.field3830 && var1.field3830) { return 1; } else { return super.world != 0 ? super.int2 - var1.int2 : var1.int2 - super.int2; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lqs;I)I", - garbageValue = "1756748027" + descriptor = "(Lrf;B)I", + garbageValue = "-95" ) @Export("compareTo_user") public int compareTo_user(User var1) { diff --git a/osrs/src/main/java/FriendLoginUpdate.java b/osrs/src/main/java/FriendLoginUpdate.java index 7db9f27df..37d8f2e0a 100644 --- a/osrs/src/main/java/FriendLoginUpdate.java +++ b/osrs/src/main/java/FriendLoginUpdate.java @@ -3,30 +3,69 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qg") +@ObfuscatedName("rm") @Implements("FriendLoginUpdate") public class FriendLoginUpdate extends Link { - @ObfuscatedName("la") - @Export("oculusOrbFocalPointX") - static int oculusOrbFocalPointX; - @ObfuscatedName("au") - public int field3796; - @ObfuscatedName("ae") + @ObfuscatedName("at") + public int field3832; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("friendUsername") public Username friendUsername; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("worldId") public short worldId; @ObfuscatedSignature( - descriptor = "(Luc;I)V" + descriptor = "(Lvj;I)V" ) FriendLoginUpdate(Username var1, int var2) { - this.field3796 = (int)(GameEngine.clockNow() / 1000L); + this.field3832 = (int)(SpotAnimationDefinition.method962() / 1000L); this.friendUsername = var1; this.worldId = (short)var2; } + + @ObfuscatedName("ic") + @ObfuscatedSignature( + descriptor = "(Lhx;IIILdf;B)V", + garbageValue = "-64" + ) + static void method2227(SequenceDefinition var0, int var1, int var2, int var3, Actor var4) { + if (Client.soundEffectCount < 50) { + if (var0.animMayaFrameSounds != null && var0.animMayaFrameSounds.containsKey(var1)) { + int var5 = (Integer)var0.animMayaFrameSounds.get(var1) & 15; + if ((var5 <= 0 || WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() != 0) && (var5 != 0 || WorldMapIcon_1.clientPreferences.getCurrentSoundEffectsVolume() != 0)) { + int var6 = (Integer)var0.animMayaFrameSounds.get(var1); + boolean var9 = var4 == class229.localPlayer; + if (var6 != 0) { + int var10 = var6 & 15; + int var11; + int var12; + if (var10 == 0) { + if (!var9) { + return; + } + + Client.soundLocations[Client.soundEffectCount] = 0; + } else { + var11 = (var2 - 64) / 128; + var12 = (var3 - 64) / 128; + Client.soundLocations[Client.soundEffectCount] = var10 + (var12 << 8) + (var11 << 16); + } + + var11 = var6 >> 8; + var12 = var6 >> 4 & 7; + Client.soundEffectIds[Client.soundEffectCount] = var11; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var12; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0; + Client.soundEffects[Client.soundEffectCount] = null; + ++Client.soundEffectCount; + } + + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/FriendSystem.java b/osrs/src/main/java/FriendSystem.java index b7aff205d..32bdef46b 100644 --- a/osrs/src/main/java/FriendSystem.java +++ b/osrs/src/main/java/FriendSystem.java @@ -5,33 +5,36 @@ import java.util.Iterator; -@ObfuscatedName("ci") +@ObfuscatedName("cj") @Implements("FriendSystem") public class FriendSystem { - @ObfuscatedName("at") + @ObfuscatedName("oi") + @Export("menuX") + static int menuX; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lqk;" + descriptor = "Lqh;" ) @Export("friendsList") public final FriendsList friendsList; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lqq;" + descriptor = "Lqs;" ) @Export("ignoreList") public final IgnoreList ignoreList; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("friendListStatus") int friendListStatus; @ObfuscatedSignature( - descriptor = "(Lsl;)V" + descriptor = "(Ltt;)V" ) FriendSystem(LoginType var1) { this.friendListStatus = 0; @@ -40,28 +43,28 @@ public class FriendSystem { this.ignoreList = new IgnoreList(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1751365649" + descriptor = "(B)Z", + garbageValue = "-69" ) - boolean method398() { + boolean method408() { return this.friendListStatus == 2; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-641955560" + garbageValue = "-207858450" ) - final void method399() { + final void method409() { this.friendListStatus = 1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-479200024" + descriptor = "(Luj;II)V", + garbageValue = "-1145524939" ) @Export("readUpdate") final void readUpdate(Buffer var1, int var2) { @@ -80,27 +83,27 @@ final void readUpdate(Buffer var1, int var2) { var6.clearIsFromFriend(); } - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.clearFriends(); + if (class20.friendsChat != null) { + class20.friendsChat.clearFriends(); } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-676446193" + garbageValue = "1225915073" ) @Export("processFriendUpdates") final void processFriendUpdates() { for (FriendLoginUpdate var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.last(); var1 != null; var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.previous()) { - if ((long)var1.field3796 < GameEngine.clockNow() / 1000L - 5L) { + if ((long)var1.field3832 < SpotAnimationDefinition.method962() / 1000L - 5L) { if (var1.worldId > 0) { - MouseHandler.addGameMessage(5, "", var1.friendUsername + " has logged in."); + GrandExchangeOfferUnitPriceComparator.addGameMessage(5, "", var1.friendUsername + " has logged in."); } if (var1.worldId == 0) { - MouseHandler.addGameMessage(5, "", var1.friendUsername + " has logged out."); + GrandExchangeOfferUnitPriceComparator.addGameMessage(5, "", var1.friendUsername + " has logged out."); } var1.remove(); @@ -109,10 +112,10 @@ final void processFriendUpdates() { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "60" + descriptor = "(I)V", + garbageValue = "-2013654454" ) @Export("clear") final void clear() { @@ -121,26 +124,26 @@ final void clear() { this.ignoreList.clear(); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Luc;ZI)Z", - garbageValue = "496878304" + descriptor = "(Lvj;ZI)Z", + garbageValue = "1878561272" ) @Export("isFriended") final boolean isFriended(Username var1, boolean var2) { if (var1 == null) { return false; - } else if (var1.equals(VarbitComposition.localPlayer.username)) { + } else if (var1.equals(class229.localPlayer.username)) { return true; } else { return this.friendsList.isFriended(var1, var2); } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Luc;I)Z", - garbageValue = "-1644388901" + descriptor = "(Lvj;I)Z", + garbageValue = "150326624" ) @Export("isIgnored") final boolean isIgnored(Username var1) { @@ -151,10 +154,10 @@ final boolean isIgnored(Username var1) { } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "76" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1173246505" ) @Export("addFriend") final void addFriend(String var1) { @@ -162,34 +165,37 @@ final void addFriend(String var1) { Username var2 = new Username(var1, this.loginType); if (var2.hasCleanName()) { if (this.friendsListIsFull()) { - UserComparator8.method673("Your friend list is full. Max of 200 for free users, and 400 for members"); - } else if (VarbitComposition.localPlayer.username.equals(var2)) { - Clock.method931(); + AttackOption.method607(); + } else if (class229.localPlayer.username.equals(var2)) { + class163.method849(); } else if (this.isFriended(var2, false)) { - Strings.method1877(var1); + class222.method1121(var1); } else if (this.isIgnored(var2)) { - UserComparator8.method673("Please remove " + var1 + " from your ignore list first"); + AbstractUserComparator.method2242(var1); } else { - MouseHandler.method171(var1); + PacketBufferNode var3 = class113.getPacketBufferNode(ClientPacket.f88, Client.packetWriter.isaacCipher); + var3.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var1)); + var3.packetBuffer.writeStringCp1252NullTerminated(var1); + Client.packetWriter.addNode(var3); } } } } - @ObfuscatedName("al") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1246160052" + garbageValue = "-1130501973" ) @Export("friendsListIsFull") final boolean friendsListIsFull() { return this.friendsList.isFull() || this.friendsList.getSize() >= 200 && Client.isMembers != 1; } - @ObfuscatedName("an") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "541901649" + garbageValue = "2025283192" ) @Export("addIgnore") final void addIgnore(String var1) { @@ -197,37 +203,34 @@ final void addIgnore(String var1) { Username var2 = new Username(var1, this.loginType); if (var2.hasCleanName()) { if (this.canAddIgnore()) { - UserComparator8.method673("Your ignore list is full. Max of 100 for free users, and 400 for members"); - } else if (VarbitComposition.localPlayer.username.equals(var2)) { - class503.method2501(); + WorldMapArea.method1213("Your ignore list is full. Max of 100 for free users, and 400 for members"); + } else if (class229.localPlayer.username.equals(var2)) { + class158.method829(); } else if (this.isIgnored(var2)) { - class31.method121(var1); + WorldMapArea.method1213(var1 + " is already on your ignore list"); } else if (this.isFriended(var2, false)) { - UserComparator8.method673("Please remove " + var1 + " from your friend list first"); + WorldMapArea.method1213("Please remove " + var1 + " from your friend list first"); } else { - PacketBufferNode var3 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IGNORELIST_ADD, Client.packetWriter.isaacCipher); - var3.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var1)); - var3.packetBuffer.writeStringCp1252NullTerminated(var1); - Client.packetWriter.addNode(var3); + ScriptFrame.method343(var1); } } } } - @ObfuscatedName("ag") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "203788977" + garbageValue = "431528192" ) @Export("canAddIgnore") final boolean canAddIgnore() { return this.ignoreList.isFull() || this.ignoreList.getSize() >= 100 && Client.isMembers != 1; } - @ObfuscatedName("am") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "2045043911" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-125" ) @Export("removeFriend") final void removeFriend(String var1) { @@ -235,9 +238,9 @@ final void removeFriend(String var1) { Username var2 = new Username(var1, this.loginType); if (var2.hasCleanName()) { if (this.friendsList.removeByUsername(var2)) { - class113.method663(); - PacketBufferNode var3 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.FRIENDLIST_DEL, Client.packetWriter.isaacCipher); - var3.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var1)); + JagexCache.method1088(); + PacketBufferNode var3 = class113.getPacketBufferNode(ClientPacket.FRIEND_DELETE_USER, Client.packetWriter.isaacCipher); + var3.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var1)); var3.packetBuffer.writeStringCp1252NullTerminated(var1); Client.packetWriter.addNode(var3); } @@ -254,18 +257,18 @@ final void removeFriend(String var1) { var7.clearIsFromFriend(); } - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.clearFriends(); + if (class20.friendsChat != null) { + class20.friendsChat.clearFriends(); } } } } - @ObfuscatedName("ax") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;ZI)V", - garbageValue = "81642025" + garbageValue = "-462327739" ) @Export("removeIgnore") public final void removeIgnore(String var1, boolean var2) { @@ -273,85 +276,28 @@ public final void removeIgnore(String var1, boolean var2) { Username var3 = new Username(var1, this.loginType); if (var3.hasCleanName()) { if (this.ignoreList.removeByUsername(var3)) { - class113.method663(); + JagexCache.method1088(); if (var2) { - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IGNORELIST_DEL, Client.packetWriter.isaacCipher); - var4.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var1)); + PacketBufferNode var4 = class113.getPacketBufferNode(ClientPacket.IGNORE_DELUSER, Client.packetWriter.isaacCipher); + var4.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var1)); var4.packetBuffer.writeStringCp1252NullTerminated(var1); Client.packetWriter.addNode(var4); } } - AbstractSocket.FriendSystem_invalidateIgnoreds(); + DelayFadeTask.FriendSystem_invalidateIgnoreds(); } } } - @ObfuscatedName("as") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(Luc;I)Z", - garbageValue = "1021453892" + descriptor = "(Lvj;I)Z", + garbageValue = "-94470483" ) @Export("isFriendAndHasWorld") final boolean isFriendAndHasWorld(Username var1) { Friend var2 = (Friend)this.friendsList.getByUsername(var1); return var2 != null && var2.hasWorld(); } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "([Ljava/lang/String;[SIIB)V", - garbageValue = "108" - ) - @Export("sortItemsByName") - public static void sortItemsByName(String[] var0, short[] var1, int var2, int var3) { - if (var2 < var3) { - int var4 = (var3 + var2) / 2; - int var5 = var2; - String var6 = var0[var4]; - var0[var4] = var0[var3]; - var0[var3] = var6; - short var7 = var1[var4]; - var1[var4] = var1[var3]; - var1[var3] = var7; - - for (int var8 = var2; var8 < var3; ++var8) { - if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { - String var9 = var0[var8]; - var0[var8] = var0[var5]; - var0[var5] = var9; - short var10 = var1[var8]; - var1[var8] = var1[var5]; - var1[var5++] = var10; - } - } - - var0[var3] = var0[var5]; - var0[var5] = var6; - var1[var3] = var1[var5]; - var1[var5] = var7; - sortItemsByName(var0, var1, var2, var5 - 1); - sortItemsByName(var0, var1, var5 + 1, var3); - } - - } - - @ObfuscatedName("hu") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "284694724" - ) - static int method412() { - if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { - int var0 = 0; - - for (int var1 = 0; var1 <= Client.archiveLoadersDone; ++var1) { - var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).loadedCount; - } - - return var0 * 10000 / Client.field550; - } else { - return 10000; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/FriendsChat.java b/osrs/src/main/java/FriendsChat.java index 51e95480c..d058b00f1 100644 --- a/osrs/src/main/java/FriendsChat.java +++ b/osrs/src/main/java/FriendsChat.java @@ -3,45 +3,41 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qc") +@ObfuscatedName("qi") @Implements("FriendsChat") public class FriendsChat extends UserList { - @ObfuscatedName("iv") + @ObfuscatedName("hh") + static String field3821; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lev;" - ) - @Export("urlRequester") - static UrlRequester urlRequester; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lql;" + descriptor = "Lqz;" ) @Export("localUser") final Usernamed localUser; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("name") public String name; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("owner") public String owner; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("minKick") public byte minKick; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("rank") public int rank; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("memberCount") int memberCount; @ObfuscatedSignature( - descriptor = "(Lsl;Lql;)V" + descriptor = "(Ltt;Lqz;)V" ) public FriendsChat(LoginType var1, Usernamed var2) { super(500); @@ -52,51 +48,51 @@ public FriendsChat(LoginType var1, Usernamed var2) { this.localUser = var2; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lqs;", - garbageValue = "-1997275235" + descriptor = "(I)Lrf;", + garbageValue = "794695059" ) @Export("newInstance") User newInstance() { return new ClanMate(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)[Lqs;", - garbageValue = "99" + descriptor = "(II)[Lrf;", + garbageValue = "-190310061" ) @Export("newTypedArray") User[] newTypedArray(int var1) { return new ClanMate[var1]; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1793987000" + garbageValue = "-2021517341" ) - final void method2198(String var1) { - this.name = class385.method2023(var1); + final void method2216(String var1) { + this.name = class128.method696(var1); } - @ObfuscatedName("az") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1839249281" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "111" ) - final void method2199(String var1) { - this.owner = class385.method2023(var1); + final void method2217(String var1) { + this.owner = class128.method696(var1); } - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1203512341" + descriptor = "(Luj;IB)V", + garbageValue = "103" ) - public final void method2201(Buffer var1, int var2) { - this.method2199(var1.readStringCp1252NullTerminated()); + public final void method2218(Buffer var1, int var2) { + this.method2217(var1.readStringCp1252NullTerminated()); long var3 = var1.readLong(); long var6 = var3; String var5; @@ -116,7 +112,7 @@ public final void method2201(Buffer var1, int var2) { while (var6 != 0L) { long var12 = var6; var6 /= 37L; - var11.append(class388.base37Table[(int)(var12 - var6 * 37L)]); + var11.append(class400.base37Table[(int)(var12 - 37L * var6)]); } var5 = var11.reverse().toString(); @@ -125,7 +121,7 @@ public final void method2201(Buffer var1, int var2) { var5 = null; } - this.method2198(var5); + this.method2216(var5); this.minKick = var1.readByte(); short var14; if (var2 == 1) { @@ -136,11 +132,11 @@ public final void method2201(Buffer var1, int var2) { throw new IllegalArgumentException("Invalid friend chat full update version: " + var2); } - var8 = var1.method2560(); + var8 = var1.readShortSmartSub(); var14 = -1; } - if (var14 != var8) { + if (var8 != var14) { int var10 = var8; this.clear(); @@ -156,12 +152,12 @@ public final void method2201(Buffer var1, int var2) { } } - @ObfuscatedName("aa") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-59" + descriptor = "(Luj;I)V", + garbageValue = "-623451894" ) - public final void method2202(Buffer var1) { + public final void method2220(Buffer var1) { Username var2 = new Username(var1.readStringCp1252NullTerminated(), this.loginType); int var3 = var1.readUnsignedShort(); byte var4 = var1.readByte(); @@ -198,10 +194,10 @@ public final void method2202(Buffer var1) { } - @ObfuscatedName("af") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-39" + descriptor = "(I)V", + garbageValue = "-1485871297" ) @Export("clearFriends") public final void clearFriends() { @@ -211,10 +207,10 @@ public final void clearFriends() { } - @ObfuscatedName("ad") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-1" + descriptor = "(I)V", + garbageValue = "511267202" ) @Export("invalidateIgnoreds") public final void invalidateIgnoreds() { @@ -224,10 +220,10 @@ public final void invalidateIgnoreds() { } - @ObfuscatedName("aq") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(Lqx;I)V", - garbageValue = "-617315153" + descriptor = "(Lrp;S)V", + garbageValue = "-25332" ) @Export("isLocalPlayer") final void isLocalPlayer(ClanMate var1) { @@ -237,89 +233,96 @@ final void isLocalPlayer(ClanMate var1) { } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "-652647003" + descriptor = "(CI)C", + garbageValue = "-350707745" ) - @Export("itemContainerSetItem") - static void itemContainerSetItem(int var0, int var1, int var2, int var3) { - ItemContainer var4 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var4 == null) { - var4 = new ItemContainer(); - ItemContainer.itemContainers.put(var4, (long)var0); + public static char method2219(char var0) { + switch(var0) { + case ' ': + case '-': + case '_': + case '\u00a0': + return '_'; + case '#': + case '[': + case ']': + return var0; + case '\u00c0': + case '\u00c1': + case '\u00c2': + case '\u00c3': + case '\u00c4': + case '\u00e0': + case '\u00e1': + case '\u00e2': + case '\u00e3': + case '\u00e4': + return 'a'; + case '\u00c7': + case '\u00e7': + return 'c'; + case '\u00c8': + case '\u00c9': + case '\u00ca': + case '\u00cb': + case '\u00e8': + case '\u00e9': + case '\u00ea': + case '\u00eb': + return 'e'; + case '\u00cd': + case '\u00ce': + case '\u00cf': + case '\u00ed': + case '\u00ee': + case '\u00ef': + return 'i'; + case '\u00d1': + case '\u00f1': + return 'n'; + case '\u00d2': + case '\u00d3': + case '\u00d4': + case '\u00d5': + case '\u00d6': + case '\u00f2': + case '\u00f3': + case '\u00f4': + case '\u00f5': + case '\u00f6': + return 'o'; + case '\u00d9': + case '\u00da': + case '\u00db': + case '\u00dc': + case '\u00f9': + case '\u00fa': + case '\u00fb': + case '\u00fc': + return 'u'; + case '\u00df': + return 'b'; + case '\u00ff': + case '\u0178': + return 'y'; + default: + return Character.toLowerCase(var0); } - - if (var4.ids.length <= var1) { - int[] var5 = new int[var1 + 1]; - int[] var6 = new int[var1 + 1]; - - int var7; - for (var7 = 0; var7 < var4.ids.length; ++var7) { - var5[var7] = var4.ids[var7]; - var6[var7] = var4.quantities[var7]; - } - - for (var7 = var4.ids.length; var7 < var1; ++var7) { - var5[var7] = -1; - var6[var7] = 0; - } - - var4.ids = var5; - var4.quantities = var6; - } - - var4.ids[var1] = var2; - var4.quantities[var1] = var3; } - @ObfuscatedName("aa") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "([BIILiv;[Lis;I)V", - garbageValue = "420755705" + descriptor = "(ILmh;ZI)V", + garbageValue = "-1919128859" ) - static final void method2206(byte[] var0, int var1, int var2, Scene var3, CollisionMap[] var4) { - Buffer var5 = new Buffer(var0); - int var6 = -1; - - while (true) { - int var7 = var5.method2561(); - if (var7 == 0) { - return; - } - - var6 += var7; - int var8 = 0; - - while (true) { - int var9 = var5.readUShortSmart(); - if (var9 == 0) { - break; - } - - var8 += var9 - 1; - int var10 = var8 & 63; - int var11 = var8 >> 6 & 63; - int var12 = var8 >> 12; - int var13 = var5.readUnsignedByte(); - int var14 = var13 >> 2; - int var15 = var13 & 3; - int var16 = var11 + var1; - int var17 = var10 + var2; - if (var16 > 0 && var17 > 0 && var16 < 103 && var17 < 103) { - int var18 = var12; - if ((Tiles.Tiles_renderFlags[1][var16][var17] & 2) == 2) { - var18 = var12 - 1; - } - - CollisionMap var19 = null; - if (var18 >= 0) { - var19 = var4[var18]; - } - - class128.addObjects(var12, var16, var17, var6, var15, var14, var3, var19); - } - } - } + static void method2224(int var0, Coord var1, boolean var2) { + WorldMapArea var3 = WorldMapArchiveLoader.getWorldMap().getMapArea(var0); + int var4 = class229.localPlayer.plane; + int var5 = (class229.localPlayer.x >> 7) + NewShit.baseX; + int var6 = (class229.localPlayer.y >> 7) + class101.baseY; + Coord var7 = new Coord(var4, var5, var6); + WorldMapArchiveLoader.getWorldMap().method2414(var3, var7, var1, var2); } } \ No newline at end of file diff --git a/osrs/src/main/java/FriendsList.java b/osrs/src/main/java/FriendsList.java index e8d70f44b..ec26d5d01 100644 --- a/osrs/src/main/java/FriendsList.java +++ b/osrs/src/main/java/FriendsList.java @@ -3,58 +3,64 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qk") +@ObfuscatedName("qh") @Implements("FriendsList") public class FriendsList extends UserList { - @ObfuscatedName("ao") + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + @Export("options_buttons_2Sprite") + static IndexedSprite options_buttons_2Sprite; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) @Export("loginType") final LoginType loginType; - @ObfuscatedName("at") - int field3782; - @ObfuscatedName("ac") + @ObfuscatedName("ao") + int field3818; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lox;" + descriptor = "Lpu;" ) @Export("friendLoginUpdates") public LinkDeque friendLoginUpdates; @ObfuscatedSignature( - descriptor = "(Lsl;)V" + descriptor = "(Ltt;)V" ) public FriendsList(LoginType var1) { super(400); - this.field3782 = 1; + this.field3818 = 1; this.friendLoginUpdates = new LinkDeque(); this.loginType = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lqs;", - garbageValue = "-1997275235" + descriptor = "(I)Lrf;", + garbageValue = "794695059" ) @Export("newInstance") User newInstance() { return new Friend(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)[Lqs;", - garbageValue = "99" + descriptor = "(II)[Lrf;", + garbageValue = "-190310061" ) @Export("newTypedArray") User[] newTypedArray(int var1) { return new Friend[var1]; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Luc;ZI)Z", - garbageValue = "-1577740414" + descriptor = "(Lvj;ZI)Z", + garbageValue = "645872851" ) @Export("isFriended") public boolean isFriended(Username var1, boolean var2) { @@ -66,10 +72,10 @@ public boolean isFriended(Username var1, boolean var2) { } } - @ObfuscatedName("az") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "-1" + descriptor = "(Luj;II)V", + garbageValue = "-846480965" ) @Export("read") public void read(Buffer var1, int var2) { @@ -94,7 +100,7 @@ public void read(Buffer var1, int var2) { Friend var11 = (Friend)this.getByCurrentUsername(var4); if (var3) { Friend var12 = (Friend)this.getByCurrentUsername(var5); - if (var12 != null && var12 != var11) { + if (var12 != null && var11 != var12) { if (var11 != null) { this.remove(var12); } else { @@ -133,17 +139,17 @@ public void read(Buffer var1, int var2) { } if (var6 != var11.world) { - var11.int2 = ++this.field3782 - 1; + var11.int2 = ++this.field3818 - 1; if (var11.world == -1 && var6 == 0) { - var11.int2 = -(var11.int2 * -1297576351) * -585067103; + var11.int2 = -(var11.int2); } var11.world = var6; } var11.rank = var7; - var11.field3794 = var9; - var11.field3793 = var10; + var11.field3831 = var9; + var11.field3830 = var10; continue; } diff --git a/osrs/src/main/java/GZipDecompressor.java b/osrs/src/main/java/GZipDecompressor.java index fd537682a..0e993efb9 100644 --- a/osrs/src/main/java/GZipDecompressor.java +++ b/osrs/src/main/java/GZipDecompressor.java @@ -5,10 +5,10 @@ import java.util.zip.Inflater; -@ObfuscatedName("us") +@ObfuscatedName("ve") @Implements("GZipDecompressor") public class GZipDecompressor { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("inflater") Inflater inflater; @@ -23,10 +23,10 @@ public GZipDecompressor() { GZipDecompressor(int var1, int var2, int var3) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;[BI)V", - garbageValue = "1223236718" + descriptor = "(Luj;[BI)V", + garbageValue = "1095129019" ) @Export("decompress") public void decompress(Buffer var1, byte[] var2) { diff --git a/osrs/src/main/java/GameBuild.java b/osrs/src/main/java/GameBuild.java index 060329983..53b1a9722 100644 --- a/osrs/src/main/java/GameBuild.java +++ b/osrs/src/main/java/GameBuild.java @@ -3,37 +3,37 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nb") +@ObfuscatedName("nv") @Implements("GameBuild") public class GameBuild { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnb;" + descriptor = "Lnv;" ) @Export("LIVE") static final GameBuild LIVE; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnb;" + descriptor = "Lnv;" ) @Export("BUILDLIVE") static final GameBuild BUILDLIVE; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnb;" + descriptor = "Lnv;" ) @Export("RC") static final GameBuild RC; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lnb;" + descriptor = "Lnv;" ) @Export("WIP") static final GameBuild WIP; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("name") public final String name; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("buildId") public final int buildId; @@ -48,154 +48,4 @@ public class GameBuild { this.name = var1; this.buildId = var2; } - - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1216130805" - ) - static int method1869(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 3903) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].type(); - return 1; - } else if (var0 == 3904) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].id; - return 1; - } else if (var0 == 3905) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].unitPrice; - return 1; - } else if (var0 == 3906) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].totalQuantity; - return 1; - } else if (var0 == 3907) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentQuantity; - return 1; - } else if (var0 == 3908) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.grandExchangeOffers[var3].currentPrice; - return 1; - } else { - int var12; - if (var0 == 3910) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = Client.grandExchangeOffers[var3].status(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var12 == 0 ? 1 : 0; - return 1; - } else if (var0 == 3911) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = Client.grandExchangeOffers[var3].status(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var12 == 2 ? 1 : 0; - return 1; - } else if (var0 == 3912) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = Client.grandExchangeOffers[var3].status(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var12 == 5 ? 1 : 0; - return 1; - } else if (var0 == 3913) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = Client.grandExchangeOffers[var3].status(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var12 == 1 ? 1 : 0; - return 1; - } else { - boolean var13; - if (var0 == 3914) { - var13 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (class392.grandExchangeEvents != null) { - class392.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_nameComparator, var13); - } - - return 1; - } else if (var0 == 3915) { - var13 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (class392.grandExchangeEvents != null) { - class392.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_priceComparator, var13); - } - - return 1; - } else if (var0 == 3916) { - SoundCache.Interpreter_intStackSize -= 2; - var13 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] == 1; - boolean var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1] == 1; - if (class392.grandExchangeEvents != null) { - Client.GrandExchangeEvents_worldComparator.filterWorlds = var4; - class392.grandExchangeEvents.sort(Client.GrandExchangeEvents_worldComparator, var13); - } - - return 1; - } else if (var0 == 3917) { - var13 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (class392.grandExchangeEvents != null) { - class392.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_ageComparator, var13); - } - - return 1; - } else if (var0 == 3918) { - var13 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (class392.grandExchangeEvents != null) { - class392.grandExchangeEvents.sort(GrandExchangeEvents.GrandExchangeEvents_quantityComparator, var13); - } - - return 1; - } else if (var0 == 3919) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class392.grandExchangeEvents == null ? 0 : class392.grandExchangeEvents.events.size(); - return 1; - } else { - GrandExchangeEvent var11; - if (var0 == 3920) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var11.world; - return 1; - } else if (var0 == 3921) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var11.getOfferName(); - return 1; - } else if (var0 == 3922) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var11.getPreviousOfferName(); - return 1; - } else if (var0 == 3923) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - long var5 = GameEngine.clockNow() - class132.field1272 - var11.age; - int var7 = (int)(var5 / 3600000L); - int var8 = (int)((var5 - (long)(var7 * 3600000)) / 60000L); - int var9 = (int)((var5 - (long)(var7 * 3600000) - (long)(var8 * 60000)) / 1000L); - String var10 = var7 + ":" + var8 / 10 + var8 % 10 + ":" + var9 / 10 + var9 % 10; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var10; - return 1; - } else if (var0 == 3924) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.totalQuantity; - return 1; - } else if (var0 == 3925) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.unitPrice; - return 1; - } else if (var0 == 3926) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var11 = (GrandExchangeEvent)class392.grandExchangeEvents.events.get(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var11.grandExchangeOffer.id; - return 1; - } else if (var0 == 3939) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var3).isTradable ? 1 : 0; - return 1; - } else { - return 2; - } - } - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/GameEngine.java b/osrs/src/main/java/GameEngine.java index 3d4d7ee3c..e5f49a2af 100644 --- a/osrs/src/main/java/GameEngine.java +++ b/osrs/src/main/java/GameEngine.java @@ -15,118 +15,118 @@ @ObfuscatedName("bm") @Implements("GameEngine") public abstract class GameEngine extends Applet implements Runnable, FocusListener, WindowListener { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lgh;" + descriptor = "Lih;" ) @Export("taskHandler") protected static TaskHandler taskHandler; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "Lbm;" ) @Export("gameEngine") static GameEngine gameEngine; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("GameEngine_redundantStartThreadCount") static int GameEngine_redundantStartThreadCount; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("stopTimeMs") static long stopTimeMs; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("isKilled") static boolean isKilled; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("gameCyclesToDo") static int gameCyclesToDo; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("cycleDurationMillis") static int cycleDurationMillis; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fiveOrOne") static int fiveOrOne; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("fps") protected static int fps; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("graphicsTickTimes") static long[] graphicsTickTimes; - @ObfuscatedName("ar") + @ObfuscatedName("as") + static int field101; + @ObfuscatedName("ay") @Export("clientTickTimes") static long[] clientTickTimes; - @ObfuscatedName("by") - static Image field103; - @ObfuscatedName("bs") + @ObfuscatedName("ba") static int field102; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("volatileFocus") static volatile boolean volatileFocus; - @ObfuscatedName("be") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "Lak;" + descriptor = "Laf;" ) @Export("keyHandler") - protected static KeyHandler keyHandler; - @ObfuscatedName("bz") + static KeyHandler keyHandler; + @ObfuscatedName("bs") @Export("garbageCollectorLastCollectionTime") static long garbageCollectorLastCollectionTime; @ObfuscatedName("bx") @Export("garbageCollectorLastCheckTimeMs") static long garbageCollectorLastCheckTimeMs; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("hasErrored") boolean hasErrored; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("contentWidth") protected int contentWidth; @ObfuscatedName("am") @Export("contentHeight") protected int contentHeight; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("canvasX") int canvasX; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("canvasY") int canvasY; - @ObfuscatedName("aj") - int field114; - @ObfuscatedName("av") + @ObfuscatedName("an") int field116; - @ObfuscatedName("aw") + @ObfuscatedName("ag") + int field114; + @ObfuscatedName("ad") @Export("maxCanvasWidth") int maxCanvasWidth; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("maxCanvasHeight") int maxCanvasHeight; - @ObfuscatedName("bh") - protected boolean field123; - @ObfuscatedName("bv") + @ObfuscatedName("be") + protected boolean field122; + @ObfuscatedName("bi") @Export("frame") Frame frame; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("canvas") java.awt.Canvas canvas; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("fullRedraw") volatile boolean fullRedraw; @ObfuscatedName("bm") @Export("resizeCanvasNextFrame") boolean resizeCanvasNextFrame; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("isCanvasInvalid") volatile boolean isCanvasInvalid; - @ObfuscatedName("bq") - volatile long field128; - @ObfuscatedName("bp") + @ObfuscatedName("bw") + volatile long field127; + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "Lay;" + descriptor = "Lae;" ) @Export("mouseWheelHandler") MouseWheelHandler mouseWheelHandler; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("clipboard") Clipboard clipboard; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("eventQueue") final EventQueue eventQueue; @@ -151,11 +151,11 @@ protected GameEngine() { this.hasErrored = false; this.canvasX = 0; this.canvasY = 0; - this.field123 = false; + this.field122 = false; this.fullRedraw = true; this.resizeCanvasNextFrame = false; this.isCanvasInvalid = false; - this.field128 = 0L; + this.field127 = 0L; EventQueue var1 = null; try { @@ -165,34 +165,34 @@ protected GameEngine() { this.eventQueue = var1; DevicePcmPlayerProvider var2 = new DevicePcmPlayerProvider(); - FloorDecoration.pcmPlayerProvider = var2; + PcmPlayer.pcmPlayerProvider = var2; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1343076745" + descriptor = "(IIB)V", + garbageValue = "-49" ) @Export("setMaxCanvasSize") protected final void setMaxCanvasSize(int var1, int var2) { if (this.maxCanvasWidth != var1 || var2 != this.maxCanvasHeight) { - this.method155(); + this.method167(); } this.maxCanvasWidth = var1; this.maxCanvasHeight = var2; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(Ljava/lang/Object;I)V", - garbageValue = "-272604069" + garbageValue = "-1974837267" ) @Export("post") final void post(Object var1) { if (this.eventQueue != null) { for (int var2 = 0; var2 < 50 && this.eventQueue.peekEvent() != null; ++var2) { - PendingSpawn.method505(1L); + class219.method1104(1L); } if (var1 != null) { @@ -202,13 +202,13 @@ final void post(Object var1) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)Lgk;", - garbageValue = "24" + descriptor = "(I)Lis;", + garbageValue = "313158588" ) @Export("mouseWheel") - protected class174 mouseWheel() { + protected class212 mouseWheel() { if (this.mouseWheelHandler == null) { this.mouseWheelHandler = new MouseWheelHandler(); this.mouseWheelHandler.addTo(this.canvas); @@ -217,39 +217,39 @@ protected class174 mouseWheel() { return this.mouseWheelHandler; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-84" + descriptor = "(I)V", + garbageValue = "-2071259913" ) @Export("setUpClipboard") protected void setUpClipboard() { this.clipboard = this.getToolkit().getSystemClipboard(); } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;S)V", - garbageValue = "255" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-117" ) - protected void method138(String var1) { + protected void method150(String var1) { this.clipboard.setContents(new StringSelection(var1), (ClipboardOwner)null); } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(I)Ljava/awt/datatransfer/Clipboard;", - garbageValue = "-1215097022" + descriptor = "(B)Ljava/awt/datatransfer/Clipboard;", + garbageValue = "88" ) @Export("getClipboard") - protected Clipboard getClipboard() { + public Clipboard getClipboard() { return this.clipboard; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "216188058" + descriptor = "(B)V", + garbageValue = "57" ) @Export("setUpKeyboard") protected final void setUpKeyboard() { @@ -281,51 +281,51 @@ protected final void setUpKeyboard() { class28.KeyHandler_keyCodes[520] = 59; } - keyHandler.method89(this.canvas); + keyHandler.method101(this.canvas); } - @ObfuscatedName("ad") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "61" + descriptor = "(I)V", + garbageValue = "-379793759" ) - protected final void method141() { - keyHandler.method92(); + protected final void method153() { + keyHandler.method103(); } - @ObfuscatedName("aq") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(Lbv;II)V", - garbageValue = "178768313" + descriptor = "(Lbi;II)V", + garbageValue = "1492984668" ) - protected void method142(class29 var1, int var2) { - keyHandler.method86(var1, var2); + protected void method154(class29 var1, int var2) { + keyHandler.method99(var1, var2); } - @ObfuscatedName("al") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1089439044" + descriptor = "(B)V", + garbageValue = "-1" ) - protected final void method143() { + protected final void method155() { java.awt.Canvas var1 = this.canvas; var1.addMouseListener(MouseHandler.MouseHandler_instance); var1.addMouseMotionListener(MouseHandler.MouseHandler_instance); var1.addFocusListener(MouseHandler.MouseHandler_instance); } - @ObfuscatedName("an") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "122" + descriptor = "(S)V", + garbageValue = "27503" ) @Export("resizeCanvas") final void resizeCanvas() { Container var1 = this.container(); if (var1 != null) { Bounds var2 = this.getFrameContentBounds(); - this.contentWidth = Math.max(var2.highX, this.field114); - this.contentHeight = Math.max(var2.highY, this.field116); + this.contentWidth = Math.max(var2.highX, this.field116); + this.contentHeight = Math.max(var2.highY, this.field114); if (this.contentWidth <= 0) { this.contentWidth = 1; } @@ -334,15 +334,15 @@ final void resizeCanvas() { this.contentHeight = 1; } - class113.canvasWidth = Math.min(this.contentWidth, this.maxCanvasWidth); - class177.canvasHeight = Math.min(this.contentHeight, this.maxCanvasHeight); - this.canvasX = (this.contentWidth - class113.canvasWidth) / 2; + Language.canvasWidth = Math.min(this.contentWidth, this.maxCanvasWidth); + class47.canvasHeight = Math.min(this.contentHeight, this.maxCanvasHeight); + this.canvasX = (this.contentWidth - Language.canvasWidth) / 2; this.canvasY = 0; - this.canvas.setSize(class113.canvasWidth, class177.canvasHeight); - AttackOption.rasterProvider = new RasterProvider(class113.canvasWidth, class177.canvasHeight, this.canvas, this.field123); + this.canvas.setSize(Language.canvasWidth, class47.canvasHeight); + class338.rasterProvider = new RasterProvider(Language.canvasWidth, class47.canvasHeight, this.canvas, this.field122); if (var1 == this.frame) { Insets var3 = this.frame.getInsets(); - this.canvas.setLocation(var3.left + this.canvasX, var3.top + this.canvasY); + this.canvas.setLocation(var3.left + this.canvasX, this.canvasY + var3.top); } else { this.canvas.setLocation(this.canvasX, this.canvasY); } @@ -352,25 +352,25 @@ final void resizeCanvas() { } } - @ObfuscatedName("ar") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "59" + garbageValue = "101" ) @Export("resizeGame") protected abstract void resizeGame(); - @ObfuscatedName("ab") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1724529603" + garbageValue = "103216408" ) @Export("clearBackground") void clearBackground() { int var1 = this.canvasX; int var2 = this.canvasY; - int var3 = this.contentWidth - class113.canvasWidth - var1; - int var4 = this.contentHeight - class177.canvasHeight - var2; + int var3 = this.contentWidth - Language.canvasWidth - var1; + int var4 = this.contentHeight - class47.canvasHeight - var2; if (var1 > 0 || var3 > 0 || var2 > 0 || var4 > 0) { try { Container var5 = this.container(); @@ -405,40 +405,36 @@ void clearBackground() { } - @ObfuscatedName("ag") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "239" + descriptor = "(I)V", + garbageValue = "1609680743" ) @Export("replaceCanvas") final void replaceCanvas() { - keyHandler.method90(this.canvas); - java.awt.Canvas var1 = this.canvas; - var1.removeMouseListener(MouseHandler.MouseHandler_instance); - var1.removeMouseMotionListener(MouseHandler.MouseHandler_instance); - var1.removeFocusListener(MouseHandler.MouseHandler_instance); - MouseHandler.MouseHandler_currentButtonVolatile = 0; + keyHandler.method102(this.canvas); + class339.method1743(this.canvas); if (this.mouseWheelHandler != null) { - this.mouseWheelHandler.method71(this.canvas); + this.mouseWheelHandler.method79(this.canvas); } this.addCanvas(); - keyHandler.method89(this.canvas); - java.awt.Canvas var2 = this.canvas; - var2.addMouseListener(MouseHandler.MouseHandler_instance); - var2.addMouseMotionListener(MouseHandler.MouseHandler_instance); - var2.addFocusListener(MouseHandler.MouseHandler_instance); + keyHandler.method101(this.canvas); + java.awt.Canvas var1 = this.canvas; + var1.addMouseListener(MouseHandler.MouseHandler_instance); + var1.addMouseMotionListener(MouseHandler.MouseHandler_instance); + var1.addFocusListener(MouseHandler.MouseHandler_instance); if (this.mouseWheelHandler != null) { this.mouseWheelHandler.addTo(this.canvas); } - this.method155(); + this.method167(); } - @ObfuscatedName("am") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "-1491001696" + garbageValue = "958927213" ) @Export("startThread") protected final void startThread(int var1, int var2, int var3, int var4) { @@ -455,10 +451,10 @@ protected final void startThread(int var1, int var2, int var3, int var4) { } gameEngine = this; - class113.canvasWidth = var1; - class177.canvasHeight = var2; - RunException.RunException_revision = var3; - RunException.field4287 = var4; + Language.canvasWidth = var1; + class47.canvasHeight = var2; + class145.RunException_revision = var3; + RunException.field4318 = var4; RunException.RunException_applet = this; if (taskHandler == null) { taskHandler = new TaskHandler(); @@ -466,16 +462,16 @@ protected final void startThread(int var1, int var2, int var3, int var4) { taskHandler.newThreadTask(this, 1); } catch (Exception var6) { - Messages.RunException_sendStackTrace((String)null, var6); + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var6); this.error("crash"); } } - @ObfuscatedName("ax") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "3" + descriptor = "(I)V", + garbageValue = "-1184721348" ) @Export("addCanvas") final synchronized void addCanvas() { @@ -485,25 +481,25 @@ final synchronized void addCanvas() { var1.remove(this.canvas); } - class113.canvasWidth = Math.max(var1.getWidth(), this.field114); - class177.canvasHeight = Math.max(var1.getHeight(), this.field116); + Language.canvasWidth = Math.max(var1.getWidth(), this.field116); + class47.canvasHeight = Math.max(var1.getHeight(), this.field114); Insets var2; if (this.frame != null) { var2 = this.frame.getInsets(); - class113.canvasWidth -= var2.right + var2.left; - class177.canvasHeight -= var2.bottom + var2.top; + Language.canvasWidth -= var2.left + var2.right; + class47.canvasHeight -= var2.top + var2.bottom; } this.canvas = new Canvas(this); var1.setBackground(Color.BLACK); var1.setLayout((LayoutManager)null); var1.add(this.canvas); - this.canvas.setSize(class113.canvasWidth, class177.canvasHeight); + this.canvas.setSize(Language.canvasWidth, class47.canvasHeight); this.canvas.setVisible(true); this.canvas.setBackground(Color.BLACK); if (var1 == this.frame) { var2 = this.frame.getInsets(); - this.canvas.setLocation(this.canvasX + var2.left, this.canvasY + var2.top); + this.canvas.setLocation(this.canvasX + var2.left, var2.top + this.canvasY); } else { this.canvas.setLocation(this.canvasX, this.canvasY); } @@ -511,35 +507,35 @@ final synchronized void addCanvas() { this.canvas.addFocusListener(this); this.canvas.requestFocus(); this.fullRedraw = true; - if (AttackOption.rasterProvider != null && class113.canvasWidth == AttackOption.rasterProvider.width && class177.canvasHeight == AttackOption.rasterProvider.height) { - ((RasterProvider)AttackOption.rasterProvider).setComponent(this.canvas); - AttackOption.rasterProvider.drawFull(0, 0); + if (class338.rasterProvider != null && Language.canvasWidth == class338.rasterProvider.width && class47.canvasHeight == class338.rasterProvider.height) { + ((RasterProvider)class338.rasterProvider).setComponent(this.canvas); + class338.rasterProvider.drawFull(0, 0); } else { - AttackOption.rasterProvider = new RasterProvider(class113.canvasWidth, class177.canvasHeight, this.canvas, this.field123); + class338.rasterProvider = new RasterProvider(Language.canvasWidth, class47.canvasHeight, this.canvas, this.field122); } this.isCanvasInvalid = false; - this.field128 = clockNow(); + this.field127 = SpotAnimationDefinition.method962(); } - @ObfuscatedName("ah") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "366742" + garbageValue = "1876817454" ) - protected void method149(boolean var1) { - if (this.field123 != var1) { - this.field123 = var1; - AttackOption.rasterProvider.method2646(var1); - AttackOption.rasterProvider.apply(); + protected void method161(boolean var1) { + if (this.field122 != var1) { + this.field122 = var1; + class338.rasterProvider.method2663(var1); + class338.rasterProvider.apply(); } } - @ObfuscatedName("as") + @ObfuscatedName("ae") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "805251619" + garbageValue = "1264805931" ) @Export("checkHost") protected final boolean checkHost() { @@ -568,48 +564,48 @@ protected final boolean checkHost() { } } - @ObfuscatedName("ay") + @ObfuscatedName("an") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1721255354" + garbageValue = "-1012835334" ) @Export("clientTick") void clientTick() { - long var1 = clockNow(); - long var3 = clientTickTimes[PacketWriter.field1151]; - clientTickTimes[PacketWriter.field1151] = var1; - PacketWriter.field1151 = PacketWriter.field1151 + 1 & 31; - if (0L != var3 && var1 > var3) { + long var1 = SpotAnimationDefinition.method962(); + long var3 = clientTickTimes[class18.field54]; + clientTickTimes[class18.field54] = var1; + class18.field54 = class18.field54 + 1 & 31; + if (var3 != 0L && var1 > var3) { } synchronized(this) { - class370.hasFocus = volatileFocus; + class357.hasFocus = volatileFocus; } this.doCycle(); } - @ObfuscatedName("aj") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1251903818" + descriptor = "(B)V", + garbageValue = "1" ) - protected final void method152() { + protected final void method164() { this.fullRedraw = true; } - @ObfuscatedName("av") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "543987991" + garbageValue = "1866404073" ) @Export("graphicsTick") void graphicsTick() { Container var1 = this.container(); - long var2 = clockNow(); - long var4 = graphicsTickTimes[ParamComposition.field1678]; - graphicsTickTimes[ParamComposition.field1678] = var2; - ParamComposition.field1678 = ParamComposition.field1678 + 1 & 31; + long var2 = SpotAnimationDefinition.method962(); + long var4 = graphicsTickTimes[field101]; + graphicsTickTimes[field101] = var2; + field101 = field101 + 1 & 31; if (var4 != 0L && var2 > var4) { int var6 = (int)(var2 - var4); fps = ((var6 >> 1) + 32000) / var6; @@ -618,11 +614,11 @@ void graphicsTick() { if (++field102 - 1 > 50) { field102 -= 50; this.fullRedraw = true; - this.canvas.setSize(class113.canvasWidth, class177.canvasHeight); + this.canvas.setSize(Language.canvasWidth, class47.canvasHeight); this.canvas.setVisible(true); if (var1 == this.frame) { Insets var7 = this.frame.getInsets(); - this.canvas.setLocation(this.canvasX + var7.left, this.canvasY + var7.top); + this.canvas.setLocation(var7.left + this.canvasX, this.canvasY + var7.top); } else { this.canvas.setLocation(this.canvasX, this.canvasY); } @@ -632,7 +628,7 @@ void graphicsTick() { this.replaceCanvas(); } - this.method154(); + this.method166(); this.draw(this.fullRedraw); if (this.fullRedraw) { this.clearBackground(); @@ -641,12 +637,12 @@ void graphicsTick() { this.fullRedraw = false; } - @ObfuscatedName("aw") + @ObfuscatedName("af") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1664691529" + garbageValue = "-992112857" ) - final void method154() { + final void method166() { Bounds var1 = this.getFrameContentBounds(); if (this.contentWidth != var1.highX || this.contentHeight != var1.highY || this.resizeCanvasNextFrame) { this.resizeCanvas(); @@ -655,19 +651,19 @@ final void method154() { } - @ObfuscatedName("ak") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-327763413" ) - final void method155() { + final void method167() { this.resizeCanvasNextFrame = true; } - @ObfuscatedName("bh") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "785770975" ) @Export("kill") final synchronized void kill() { @@ -702,87 +698,87 @@ final synchronized void kill() { } } - @ObfuscatedName("by") + @ObfuscatedName("bm") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "208117174" + garbageValue = "-550390769" ) @Export("setUp") protected abstract void setUp(); - @ObfuscatedName("bs") + @ObfuscatedName("bp") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1753601126" + garbageValue = "564244601" ) @Export("doCycle") protected abstract void doCycle(); - @ObfuscatedName("bm") + @ObfuscatedName("bw") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-1944984067" + garbageValue = "-851092167" ) @Export("draw") protected abstract void draw(boolean var1); - @ObfuscatedName("bf") + @ObfuscatedName("bj") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1298916795" + garbageValue = "1863199463" ) @Export("kill0") protected abstract void kill0(); - @ObfuscatedName("bq") + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;ZB)V", - garbageValue = "-97" + descriptor = "(ILjava/lang/String;ZI)V", + garbageValue = "1838069290" ) @Export("drawInitial") protected final void drawInitial(int var1, String var2, boolean var3) { try { Graphics var4 = this.canvas.getGraphics(); - if (ObjectSound.fontHelvetica13 == null) { - ObjectSound.fontHelvetica13 = new java.awt.Font("Helvetica", 1, 13); - class85.loginScreenFontMetrics = this.canvas.getFontMetrics(ObjectSound.fontHelvetica13); + if (class28.fontHelvetica13 == null) { + class28.fontHelvetica13 = new java.awt.Font("Helvetica", 1, 13); + class6.loginScreenFontMetrics = this.canvas.getFontMetrics(class28.fontHelvetica13); } if (var3) { var4.setColor(Color.black); - var4.fillRect(0, 0, class113.canvasWidth, class177.canvasHeight); + var4.fillRect(0, 0, Language.canvasWidth, class47.canvasHeight); } Color var5 = new Color(140, 17, 17); try { - if (field103 == null) { - field103 = this.canvas.createImage(304, 34); + if (class151.field1359 == null) { + class151.field1359 = this.canvas.createImage(304, 34); } - Graphics var6 = field103.getGraphics(); + Graphics var6 = class151.field1359.getGraphics(); var6.setColor(var5); var6.drawRect(0, 0, 303, 33); var6.fillRect(2, 2, var1 * 3, 30); var6.setColor(Color.black); var6.drawRect(1, 1, 301, 31); var6.fillRect(var1 * 3 + 2, 2, 300 - var1 * 3, 30); - var6.setFont(ObjectSound.fontHelvetica13); + var6.setFont(class28.fontHelvetica13); var6.setColor(Color.white); - var6.drawString(var2, (304 - class85.loginScreenFontMetrics.stringWidth(var2)) / 2, 22); - var4.drawImage(field103, class113.canvasWidth / 2 - 152, class177.canvasHeight / 2 - 18, (ImageObserver)null); + var6.drawString(var2, (304 - class6.loginScreenFontMetrics.stringWidth(var2)) / 2, 22); + var4.drawImage(class151.field1359, Language.canvasWidth / 2 - 152, class47.canvasHeight / 2 - 18, (ImageObserver)null); } catch (Exception var9) { - int var7 = class113.canvasWidth / 2 - 152; - int var8 = class177.canvasHeight / 2 - 18; + int var7 = Language.canvasWidth / 2 - 152; + int var8 = class47.canvasHeight / 2 - 18; var4.setColor(var5); var4.drawRect(var7, var8, 303, 33); var4.fillRect(var7 + 2, var8 + 2, var1 * 3, 30); var4.setColor(Color.black); var4.drawRect(var7 + 1, var8 + 1, 301, 31); - var4.fillRect(var1 * 3 + var7 + 2, var8 + 2, 300 - var1 * 3, 30); - var4.setFont(ObjectSound.fontHelvetica13); + var4.fillRect(var7 + var1 * 3 + 2, var8 + 2, 300 - var1 * 3, 30); + var4.setFont(class28.fontHelvetica13); var4.setColor(Color.white); - var4.drawString(var2, var7 + (304 - class85.loginScreenFontMetrics.stringWidth(var2)) / 2, var8 + 22); + var4.drawString(var2, var7 + (304 - class6.loginScreenFontMetrics.stringWidth(var2)) / 2, var8 + 22); } } catch (Exception var10) { this.canvas.repaint(); @@ -790,21 +786,21 @@ protected final void drawInitial(int var1, String var2, boolean var3) { } - @ObfuscatedName("ba") + @ObfuscatedName("bo") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-146638494" + garbageValue = "180057214" ) - protected final void method158() { - field103 = null; - ObjectSound.fontHelvetica13 = null; - class85.loginScreenFontMetrics = null; + protected final void method170() { + class151.field1359 = null; + class28.fontHelvetica13 = null; + class6.loginScreenFontMetrics = null; } - @ObfuscatedName("bl") + @ObfuscatedName("bt") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "305949479" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "5" ) @Export("error") protected void error(String var1) { @@ -820,49 +816,49 @@ protected void error(String var1) { } } - @ObfuscatedName("bp") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "(I)Ljava/awt/Container;", - garbageValue = "-1637240751" + descriptor = "(S)Ljava/awt/Container;", + garbageValue = "15421" ) @Export("container") Container container() { return (Container)(this.frame != null ? this.frame : this); } - @ObfuscatedName("bu") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(I)Lrb;", - garbageValue = "790707673" + descriptor = "(B)Lrv;", + garbageValue = "95" ) @Export("getFrameContentBounds") Bounds getFrameContentBounds() { Container var1 = this.container(); - int var2 = Math.max(var1.getWidth(), this.field114); - int var3 = Math.max(var1.getHeight(), this.field116); + int var2 = Math.max(var1.getWidth(), this.field116); + int var3 = Math.max(var1.getHeight(), this.field114); if (this.frame != null) { Insets var4 = this.frame.getInsets(); - var2 -= var4.right + var4.left; - var3 -= var4.top + var4.bottom; + var2 -= var4.left + var4.right; + var3 -= var4.bottom + var4.top; } return new Bounds(var2, var3); } - @ObfuscatedName("bo") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1032464717" + descriptor = "(B)Z", + garbageValue = "50" ) @Export("hasFrame") protected final boolean hasFrame() { return this.frame != null; } - @ObfuscatedName("br") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1929688897" + descriptor = "(B)V", + garbageValue = "-94" ) @Export("vmethod1485") protected abstract void vmethod1485(); @@ -871,8 +867,8 @@ protected final boolean hasFrame() { @ObfuscatedName("destroy") public final void destroy() { if (this == gameEngine && !isKilled) { - stopTimeMs = clockNow(); - PendingSpawn.method505(5000L); + stopTimeMs = SpotAnimationDefinition.method962(); + class219.method1104(5000L); this.kill(); } } @@ -882,9 +878,9 @@ public final void destroy() { public final synchronized void paint(Graphics var1) { if (this == gameEngine && !isKilled) { this.fullRedraw = true; - if (clockNow() - this.field128 > 1000L) { + if (SpotAnimationDefinition.method962() - this.field127 > 1000L) { Rectangle var2 = var1.getClipBounds(); - if (var2 == null || var2.width >= class113.canvasWidth && var2.height >= class177.canvasHeight) { + if (var2 == null || var2.width >= Language.canvasWidth && var2.height >= class47.canvasHeight) { this.isCanvasInvalid = true; } } @@ -899,7 +895,7 @@ public void run() { if (TaskHandler.javaVendor != null) { String var1 = TaskHandler.javaVendor.toLowerCase(); if (var1.indexOf("sun") != -1 || var1.indexOf("apple") != -1) { - String var2 = class106.javaVersion; + String var2 = TaskHandler.javaVersion; if (var2.equals("1.1") || var2.startsWith("1.1.") || var2.equals("1.2") || var2.startsWith("1.2.") || var2.equals("1.3") || var2.startsWith("1.3.") || var2.equals("1.4") || var2.startsWith("1.4.") || var2.equals("1.5") || var2.startsWith("1.5.") || var2.equals("1.6.0")) { this.error("wrongjava"); return; @@ -907,11 +903,11 @@ public void run() { if (var2.startsWith("1.6.0_")) { int var3; - for (var3 = 6; var3 < var2.length() && class330.isDigit(var2.charAt(var3)); ++var3) { + for (var3 = 6; var3 < var2.length() && Player.isDigit(var2.charAt(var3)); ++var3) { } String var4 = var2.substring(6, var3); - if (class218.isNumber(var4) && HealthBarUpdate.method524(var4) < 10) { + if (ClientPacket.isNumber(var4) && Huffman.method1888(var4) < 10) { this.error("wrongjava"); return; } @@ -924,18 +920,10 @@ public void run() { this.setFocusCycleRoot(true); this.addCanvas(); this.setUp(); + ArchiveDiskAction.clock = SoundSystem.method230(); - Object var8; - try { - var8 = new NanoClock(); - } catch (Throwable var6) { - var8 = new MilliClock(); - } - - class332.clock = (Clock)var8; - - while (0L == stopTimeMs || clockNow() < stopTimeMs) { - gameCyclesToDo = class332.clock.wait(cycleDurationMillis, fiveOrOne); + while (stopTimeMs == 0L || SpotAnimationDefinition.method962() < stopTimeMs) { + gameCyclesToDo = ArchiveDiskAction.clock.wait(cycleDurationMillis, fiveOrOne); for (int var5 = 0; var5 < gameCyclesToDo; ++var5) { this.clientTick(); @@ -944,8 +932,8 @@ public void run() { this.graphicsTick(); this.post(this.canvas); } - } catch (Exception var7) { - Messages.RunException_sendStackTrace((String)null, var7); + } catch (Exception var6) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var6); this.error("crash"); } @@ -960,11 +948,9 @@ public final void start() { } } - @Export("stop") - @ObfuscatedName("stop") public final void stop() { if (this == gameEngine && !isKilled) { - stopTimeMs = clockNow() + 4000L; + stopTimeMs = SpotAnimationDefinition.method962() + 4000L; } } @@ -1012,130 +998,52 @@ public final void windowOpened(WindowEvent var1) { @ObfuscatedName("init") public abstract void init(); - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)J", - garbageValue = "1742672473" + descriptor = "([BIIIIIIIII[Liw;B)V", + garbageValue = "48" ) - @Export("clockNow") - public static final synchronized long clockNow() { - long var0 = System.currentTimeMillis(); - if (var0 < class301.field2754) { - Canvas.field61 += class301.field2754 - var0; + static final void method146(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, CollisionMap[] var10) { + int var12; + for (int var11 = 0; var11 < 8; ++var11) { + for (var12 = 0; var12 < 8; ++var12) { + if (var11 + var2 > 0 && var11 + var2 < 103 && var3 + var12 > 0 && var3 + var12 < 103) { + int[] var10000 = var10[var1].flags[var11 + var2]; + var10000[var12 + var3] &= -16777217; + } + } } - class301.field2754 = var0; - return var0 + Canvas.field61; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "([Lch;II[I[II)V", - garbageValue = "1909898083" - ) - @Export("sortWorlds") - static void sortWorlds(World[] var0, int var1, int var2, int[] var3, int[] var4) { - if (var1 < var2) { - int var5 = var1 - 1; - int var6 = var2 + 1; - int var7 = (var2 + var1) / 2; - World var8 = var0[var7]; - var0[var7] = var0[var1]; - var0[var1] = var8; - - while (var5 < var6) { - boolean var9 = true; - - int var10; - int var11; - int var12; - do { - --var6; - - for (var10 = 0; var10 < 4; ++var10) { - if (var3[var10] == 2) { - var11 = var0[var6].index; - var12 = var8.index; - } else if (var3[var10] == 1) { - var11 = var0[var6].population; - var12 = var8.population; - if (var11 == -1 && var4[var10] == 1) { - var11 = 2001; - } - - if (var12 == -1 && var4[var10] == 1) { - var12 = 2001; - } - } else if (var3[var10] == 3) { - var11 = var0[var6].isMembersOnly() ? 1 : 0; - var12 = var8.isMembersOnly() ? 1 : 0; - } else { - var11 = var0[var6].id; - var12 = var8.id; - } - - if (var11 != var12) { - if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) { - var9 = false; - } - break; - } - - if (var10 == 3) { - var9 = false; - } - } - } while(var9); - - var9 = true; - - do { - ++var5; - - for (var10 = 0; var10 < 4; ++var10) { - if (var3[var10] == 2) { - var11 = var0[var5].index; - var12 = var8.index; - } else if (var3[var10] == 1) { - var11 = var0[var5].population; - var12 = var8.population; - if (var11 == -1 && var4[var10] == 1) { - var11 = 2001; - } - - if (var12 == -1 && var4[var10] == 1) { - var12 = 2001; - } - } else if (var3[var10] == 3) { - var11 = var0[var5].isMembersOnly() ? 1 : 0; - var12 = var8.isMembersOnly() ? 1 : 0; + Buffer var24 = new Buffer(var0); + + for (var12 = 0; var12 < 4; ++var12) { + for (int var13 = 0; var13 < 64; ++var13) { + for (int var14 = 0; var14 < 64; ++var14) { + if (var12 == var4 && var13 >= var5 && var13 < var5 + 8 && var14 >= var6 && var14 < var6 + 8) { + int var15 = var2 + class31.method135(var13 & 7, var14 & 7, var7); + int var18 = var13 & 7; + int var19 = var14 & 7; + int var20 = var7 & 3; + int var17; + if (var20 == 0) { + var17 = var19; + } else if (var20 == 1) { + var17 = 7 - var18; + } else if (var20 == 2) { + var17 = 7 - var19; } else { - var11 = var0[var5].id; - var12 = var8.id; + var17 = var18; } - if (var11 != var12) { - if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) { - var9 = false; - } - break; - } - - if (var10 == 3) { - var9 = false; - } + int var21 = var17 + var3; + int var22 = (var13 & 7) + var8 + var2; + int var23 = var3 + (var14 & 7) + var9; + class14.loadTerrain(var24, var1, var15, var21, var22, var23, var7); + } else { + class14.loadTerrain(var24, 0, -1, -1, 0, 0, 0); } - } while(var9); - - if (var5 < var6) { - World var13 = var0[var5]; - var0[var5] = var0[var6]; - var0[var6] = var13; } } - - sortWorlds(var0, var1, var6, var3, var4); - sortWorlds(var0, var6 + 1, var2, var3, var4); } } diff --git a/osrs/src/main/java/GameObject.java b/osrs/src/main/java/GameObject.java index d00a184ea..99bf44ee1 100644 --- a/osrs/src/main/java/GameObject.java +++ b/osrs/src/main/java/GameObject.java @@ -3,57 +3,53 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jy") +@ObfuscatedName("le") @Implements("GameObject") public final class GameObject { - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - @Export("scriptDotWidget") - static Widget scriptDotWidget; - @ObfuscatedName("au") + @ObfuscatedName("aj") + static String[] field2480; + @ObfuscatedName("at") @Export("plane") int plane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("z") int z; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("centerX") int centerX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("centerY") int centerY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable") public Renderable renderable; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("orientation") int orientation; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("startX") int startX; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("endX") int endX; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("startY") int startY; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("endY") int endY; - @ObfuscatedName("ad") - int field2306; - @ObfuscatedName("aq") + @ObfuscatedName("ap") + int field2486; + @ObfuscatedName("av") @Export("lastDrawn") int lastDrawn; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("tag") public long tag; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("flags") int flags; diff --git a/osrs/src/main/java/GrandExchangeEvent.java b/osrs/src/main/java/GrandExchangeEvent.java index 572131270..93f0b9dba 100644 --- a/osrs/src/main/java/GrandExchangeEvent.java +++ b/osrs/src/main/java/GrandExchangeEvent.java @@ -3,30 +3,33 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("oz") +@ObfuscatedName("og") @Implements("GrandExchangeEvent") public class GrandExchangeEvent { - @ObfuscatedName("au") + @ObfuscatedName("jz") + @Export("regionMapArchives") + static byte[][] regionMapArchives; + @ObfuscatedName("at") @Export("world") public final int world; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("age") public final long age; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Loh;" + descriptor = "Low;" ) @Export("grandExchangeOffer") public final GrandExchangeOffer grandExchangeOffer; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("offerName") String offerName; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("previousOfferName") String previousOfferName; @ObfuscatedSignature( - descriptor = "(Ltm;BI)V" + descriptor = "(Luj;BI)V" ) GrandExchangeEvent(Buffer var1, byte var2, int var3) { this.offerName = var1.readStringCp1252NullTerminated(); @@ -36,8 +39,8 @@ public class GrandExchangeEvent { int var4 = var1.readInt(); int var5 = var1.readInt(); this.grandExchangeOffer = new GrandExchangeOffer(); - this.grandExchangeOffer.method1958(2); - this.grandExchangeOffer.method1959(var2); + this.grandExchangeOffer.method1978(2); + this.grandExchangeOffer.method1979(var2); this.grandExchangeOffer.unitPrice = var4; this.grandExchangeOffer.totalQuantity = var5; this.grandExchangeOffer.currentQuantity = 0; @@ -45,38 +48,23 @@ public class GrandExchangeEvent { this.grandExchangeOffer.id = var3; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "366933810" + garbageValue = "1118320286" ) @Export("getOfferName") public String getOfferName() { return this.offerName; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "7" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-2144907217" ) @Export("getPreviousOfferName") public String getPreviousOfferName() { return this.previousOfferName; } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "([FIFI)F", - garbageValue = "-1423774644" - ) - static float method1953(float[] var0, int var1, float var2) { - float var3 = var0[var1]; - - for (int var4 = var1 - 1; var4 >= 0; --var4) { - var3 = var3 * var2 + var0[var4]; - } - - return var3; - } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeEvents.java b/osrs/src/main/java/GrandExchangeEvents.java index f079535d1..2e3d05d56 100644 --- a/osrs/src/main/java/GrandExchangeEvents.java +++ b/osrs/src/main/java/GrandExchangeEvents.java @@ -8,22 +8,27 @@ import java.util.Comparator; import java.util.List; -@ObfuscatedName("no") +@ObfuscatedName("ov") @Implements("GrandExchangeEvents") public class GrandExchangeEvents { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("GrandExchangeEvents_ageComparator") public static Comparator GrandExchangeEvents_ageComparator; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("GrandExchangeEvents_priceComparator") public static Comparator GrandExchangeEvents_priceComparator; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("GrandExchangeEvents_nameComparator") public static Comparator GrandExchangeEvents_nameComparator; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("GrandExchangeEvents_quantityComparator") public static Comparator GrandExchangeEvents_quantityComparator; - @ObfuscatedName("au") + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + static IndexedSprite field3611; + @ObfuscatedName("at") @Export("events") public final List events; @@ -36,7 +41,7 @@ public class GrandExchangeEvents { } @ObfuscatedSignature( - descriptor = "(Ltm;Z)V", + descriptor = "(Luj;Z)V", garbageValue = "1" ) public GrandExchangeEvents(Buffer var1, boolean var2) { @@ -58,10 +63,10 @@ public GrandExchangeEvents(Buffer var1, boolean var2) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/util/Comparator;ZI)V", - garbageValue = "2032347624" + descriptor = "(Ljava/util/Comparator;ZB)V", + garbageValue = "1" ) @Export("sort") public void sort(Comparator var1, boolean var2) { diff --git a/osrs/src/main/java/GrandExchangeOffer.java b/osrs/src/main/java/GrandExchangeOffer.java index 641679895..6b1fefa83 100644 --- a/osrs/src/main/java/GrandExchangeOffer.java +++ b/osrs/src/main/java/GrandExchangeOffer.java @@ -3,31 +3,25 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("oh") +@ObfuscatedName("ow") @Implements("GrandExchangeOffer") public class GrandExchangeOffer { - @ObfuscatedName("fm") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive12") - static Archive archive12; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("state") byte state; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("id") public int id; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("unitPrice") public int unitPrice; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("totalQuantity") public int totalQuantity; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("currentQuantity") public int currentQuantity; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("currentPrice") public int currentPrice; @@ -35,7 +29,7 @@ public GrandExchangeOffer() { } @ObfuscatedSignature( - descriptor = "(Ltm;Z)V", + descriptor = "(Luj;Z)V", garbageValue = "0" ) public GrandExchangeOffer(Buffer var1, boolean var2) { @@ -47,57 +41,46 @@ public GrandExchangeOffer(Buffer var1, boolean var2) { this.currentPrice = var1.readInt(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-104" + descriptor = "(I)I", + garbageValue = "-1302720391" ) @Export("status") public int status() { return this.state & 7; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-247945963" + garbageValue = "-1911768409" ) @Export("type") public int type() { return (this.state & 8) == 8 ? 1 : 0; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-847011160" + garbageValue = "-2128384441" ) - void method1958(int var1) { + void method1978(int var1) { this.state &= -8; this.state = (byte)(this.state | var1 & 7); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-48" + descriptor = "(II)V", + garbageValue = "830444255" ) - void method1959(int var1) { + void method1979(int var1) { this.state &= -9; if (var1 == 1) { this.state = (byte)(this.state | 8); } } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "11520" - ) - static void method1954(int var0) { - class449.field3867 = var0; - class449.field3868 = new class449[var0]; - class338.field3112 = 0; - } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeOfferAgeComparator.java b/osrs/src/main/java/GrandExchangeOfferAgeComparator.java index 6f06cd79f..a1bc762a7 100644 --- a/osrs/src/main/java/GrandExchangeOfferAgeComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferAgeComparator.java @@ -5,13 +5,13 @@ import java.util.Comparator; -@ObfuscatedName("nc") +@ObfuscatedName("oa") @Implements("GrandExchangeOfferAgeComparator") final class GrandExchangeOfferAgeComparator implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "1942939549" + descriptor = "(Log;Log;S)I", + garbageValue = "5269" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { @@ -29,4 +29,28 @@ public int compare(Object var1, Object var2) { public boolean equals(Object var1) { return super.equals(var1); } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-2066613698" + ) + public static int method1969(int var0) { + long var2 = ViewportMouse.ViewportMouse_entityTags[var0]; + int var1 = (int)(var2 >>> 7 & 127L); + return var1; + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "1600616066" + ) + public static int method1970(int var0) { + if (var0 > 0) { + return 1; + } else { + return var0 < 0 ? -1 : 0; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeOfferNameComparator.java b/osrs/src/main/java/GrandExchangeOfferNameComparator.java index d04d98dba..1c4c766e4 100644 --- a/osrs/src/main/java/GrandExchangeOfferNameComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferNameComparator.java @@ -5,13 +5,13 @@ import java.util.Comparator; -@ObfuscatedName("nh") +@ObfuscatedName("oo") @Implements("GrandExchangeOfferNameComparator") final class GrandExchangeOfferNameComparator implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "1380948435" + descriptor = "(Log;Log;I)I", + garbageValue = "1361054844" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { diff --git a/osrs/src/main/java/GrandExchangeOfferOwnWorldComparator.java b/osrs/src/main/java/GrandExchangeOfferOwnWorldComparator.java index 787a6501f..e865bfec7 100644 --- a/osrs/src/main/java/GrandExchangeOfferOwnWorldComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferOwnWorldComparator.java @@ -5,34 +5,28 @@ import java.util.Comparator; -@ObfuscatedName("cu") +@ObfuscatedName("cn") @Implements("GrandExchangeOfferOwnWorldComparator") public class GrandExchangeOfferOwnWorldComparator implements Comparator { - @ObfuscatedName("ao") - static int field361; - @ObfuscatedName("as") + @ObfuscatedName("fp") @ObfuscatedSignature( - descriptor = "Lkl;" + descriptor = "Loh;" ) - @Export("worldMapEvent") - static WorldMapEvent worldMapEvent; - @ObfuscatedName("ka") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - @Export("scrollBarSprites") - static IndexedSprite[] scrollBarSprites; - @ObfuscatedName("au") + @Export("archive8") + static Archive archive8; + @ObfuscatedName("gc") + static int field360; + @ObfuscatedName("at") @Export("filterWorlds") boolean filterWorlds; GrandExchangeOfferOwnWorldComparator() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "117695478" + descriptor = "(Log;Log;I)I", + garbageValue = "-1440367085" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { @@ -64,112 +58,4 @@ public int compare(Object var1, Object var2) { public boolean equals(Object var1) { return super.equals(var1); } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "126" - ) - @Export("isCharPrintable") - public static boolean isCharPrintable(char var0) { - if (var0 >= ' ' && var0 <= '~') { - return true; - } else if (var0 >= 160 && var0 <= 255) { - return true; - } else { - return var0 == 8364 || var0 == 338 || var0 == 8212 || var0 == 339 || var0 == 376; - } - } - - @ObfuscatedName("jc") - @ObfuscatedSignature( - descriptor = "(IIIIZI)V", - garbageValue = "-1589346294" - ) - @Export("setViewportShape") - static final void setViewportShape(int var0, int var1, int var2, int var3, boolean var4) { - if (var2 < 1) { - var2 = 1; - } - - if (var3 < 1) { - var3 = 1; - } - - int var5 = var3 - 334; - int var6; - if (var5 < 0) { - var6 = Client.field638; - } else if (var5 >= 100) { - var6 = Client.field640; - } else { - var6 = (Client.field640 - Client.field638) * var5 / 100 + Client.field638; - } - - int var7 = var3 * var6 * 512 / (var2 * 334); - int var8; - int var9; - short var17; - if (var7 < Client.field641) { - var17 = Client.field641; - var6 = var17 * var2 * 334 / (var3 * 512); - if (var6 > Client.field634) { - var6 = Client.field634; - var8 = var3 * var6 * 512 / (var17 * 334); - var9 = (var2 - var8) / 2; - if (var4) { - Rasterizer2D.Rasterizer2D_resetClip(); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var9, var3, -16777216); - Rasterizer2D.Rasterizer2D_fillRectangle(var0 + var2 - var9, var1, var9, var3, -16777216); - } - - var0 += var9; - var2 -= var9 * 2; - } - } else if (var7 > Client.field637) { - var17 = Client.field637; - var6 = var17 * var2 * 334 / (var3 * 512); - if (var6 < Client.field635) { - var6 = Client.field635; - var8 = var17 * var2 * 334 / (var6 * 512); - var9 = (var3 - var8) / 2; - if (var4) { - Rasterizer2D.Rasterizer2D_resetClip(); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var9, -16777216); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var3 + var1 - var9, var2, var9, -16777216); - } - - var1 += var9; - var3 -= var9 * 2; - } - } - - Client.viewportZoom = var3 * var6 / 334; - if (var2 != Client.viewportWidth || var3 != Client.viewportHeight) { - int[] var16 = new int[9]; - - for (var9 = 0; var9 < var16.length; ++var9) { - int var10 = var9 * 32 + 15 + 128; - int var11 = class172.method907(var10); - int var12 = Rasterizer3D.Rasterizer3D_sine[var10]; - int var14 = var3 - 334; - if (var14 < 0) { - var14 = 0; - } else if (var14 > 100) { - var14 = 100; - } - - int var15 = (Client.zoomWidth - Client.zoomHeight) * var14 / 100 + Client.zoomHeight; - int var13 = var15 * var11 / 256; - var16[var9] = var13 * var12 >> 16; - } - - Scene.Scene_buildVisiblityMap(var16, 500, 800, var2 * 334 / var3, 334); - } - - Client.viewportOffsetX = var0; - Client.viewportOffsetY = var1; - Client.viewportWidth = var2; - Client.viewportHeight = var3; - } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeOfferTotalQuantityComparator.java b/osrs/src/main/java/GrandExchangeOfferTotalQuantityComparator.java index 9118b7b18..93221506d 100644 --- a/osrs/src/main/java/GrandExchangeOfferTotalQuantityComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferTotalQuantityComparator.java @@ -3,16 +3,22 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.awt.datatransfer.Clipboard; import java.util.Comparator; -@ObfuscatedName("nx") +@ObfuscatedName("oq") @Implements("GrandExchangeOfferTotalQuantityComparator") final class GrandExchangeOfferTotalQuantityComparator implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("jl") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "1689920131" + descriptor = "Lpf;" + ) + @Export("fontBold12") + static Font fontBold12; + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Log;Log;I)I", + garbageValue = "-2047796467" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { @@ -31,21 +37,42 @@ public boolean equals(Object var1) { return super.equals(var1); } - @ObfuscatedName("au") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "957509190" + descriptor = "(Lnn;B)I", + garbageValue = "0" ) - public static void method1943() { - class36.reflectionChecks = new IterableNodeDeque(); + static int method1965(Widget var0) { + if (var0.type != 11) { + Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize - 1] = ""; + return 1; + } else { + String var1 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var0.method1863(var1); + return 1; + } } - @ObfuscatedName("ov") + @ObfuscatedName("lm") @ObfuscatedSignature( - descriptor = "(I)Ljava/awt/datatransfer/Clipboard;", - garbageValue = "1573357466" + descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIIZS)V", + garbageValue = "14887" ) - public static Clipboard method1945() { - return class219.client.getClipboard(); + @Export("insertMenuItem") + static final void insertMenuItem(String var0, String var1, int var2, int var3, int var4, int var5, int var6, boolean var7) { + if (!Client.isMenuOpen) { + if (Client.menuOptionsCount < 500) { + Client.menuActions[Client.menuOptionsCount] = var0; + Client.menuTargets[Client.menuOptionsCount] = var1; + Client.menuOpcodes[Client.menuOptionsCount] = var2; + Client.menuIdentifiers[Client.menuOptionsCount] = var3; + Client.menuArguments1[Client.menuOptionsCount] = var4; + Client.menuArguments2[Client.menuOptionsCount] = var5; + Client.menuItemIds[Client.menuOptionsCount] = var6; + Client.menuShiftClick[Client.menuOptionsCount] = var7; + ++Client.menuOptionsCount; + } + + } } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeOfferUnitPriceComparator.java b/osrs/src/main/java/GrandExchangeOfferUnitPriceComparator.java index c0d5abfba..04cd5d2e0 100644 --- a/osrs/src/main/java/GrandExchangeOfferUnitPriceComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferUnitPriceComparator.java @@ -5,13 +5,13 @@ import java.util.Comparator; -@ObfuscatedName("oy") +@ObfuscatedName("ob") @Implements("GrandExchangeOfferUnitPriceComparator") final class GrandExchangeOfferUnitPriceComparator implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "-370241365" + descriptor = "(Log;Log;I)I", + garbageValue = "714689738" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { @@ -29,4 +29,139 @@ public int compare(Object var1, Object var2) { public boolean equals(Object var1) { return super.equals(var1); } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(ILjava/lang/String;Ljava/lang/String;I)V", + garbageValue = "1588481788" + ) + @Export("addGameMessage") + static void addGameMessage(int var0, String var1, String var2) { + ArchiveLoader.addChatMessage(var0, var1, var2, (String)null); + } + + @ObfuscatedName("jd") + @ObfuscatedSignature( + descriptor = "(ZLuo;ZI)V", + garbageValue = "151188621" + ) + @Export("loadRegions") + static final void loadRegions(boolean var0, PacketBuffer var1, boolean var2) { + Client.isInInstance = var0; + int var3; + int var5; + int var6; + int var7; + int var8; + if (!Client.isInInstance) { + int var4; + if (var2) { + var1.readShortAdd(); + var4 = var1.readUnsignedShort(); + var3 = var1.readUnsignedShort(); + var5 = var1.readUnsignedShort(); + } else { + var4 = var1.readUnsignedShort(); + var3 = var1.readUnsignedShortAdd(); + var5 = var1.readUnsignedShort(); + } + + Varcs.xteaKeys = new int[var5][4]; + + for (var6 = 0; var6 < var5; ++var6) { + for (var7 = 0; var7 < 4; ++var7) { + Varcs.xteaKeys[var6][var7] = var1.readInt(); + } + } + + KitDefinition.regions = new int[var5]; + UserComparator7.regionMapArchiveIds = new int[var5]; + UserComparator3.regionLandArchiveIds = new int[var5]; + WorldMapData_1.regionLandArchives = new byte[var5][]; + GrandExchangeEvent.regionMapArchives = new byte[var5][]; + var5 = 0; + + for (var6 = (var3 - 6) / 8; var6 <= (var3 + 6) / 8; ++var6) { + for (var7 = (var4 - 6) / 8; var7 <= (var4 + 6) / 8; ++var7) { + var8 = var7 + (var6 << 8); + KitDefinition.regions[var5] = var8; + UserComparator7.regionMapArchiveIds[var5] = WorldMapSection0.archive9.getGroupId("m" + var6 + "_" + var7); + UserComparator3.regionLandArchiveIds[var5] = WorldMapSection0.archive9.getGroupId("l" + var6 + "_" + var7); + ++var5; + } + } + + class292.method1606(var3, var4, true); + } else { + var3 = var1.readUnsignedShortAdd(); + boolean var16 = var1.readUnsignedByte() == 1; + var5 = var1.readUnsignedShort(); + var6 = var1.readUnsignedShort(); + var1.importIndex(); + + int var9; + int var10; + for (var7 = 0; var7 < 4; ++var7) { + for (var8 = 0; var8 < 13; ++var8) { + for (var9 = 0; var9 < 13; ++var9) { + var10 = var1.readBits(1); + if (var10 == 1) { + Client.instanceChunkTemplates[var7][var8][var9] = var1.readBits(26); + } else { + Client.instanceChunkTemplates[var7][var8][var9] = -1; + } + } + } + } + + var1.exportIndex(); + Varcs.xteaKeys = new int[var6][4]; + + for (var7 = 0; var7 < var6; ++var7) { + for (var8 = 0; var8 < 4; ++var8) { + Varcs.xteaKeys[var7][var8] = var1.readInt(); + } + } + + KitDefinition.regions = new int[var6]; + UserComparator7.regionMapArchiveIds = new int[var6]; + UserComparator3.regionLandArchiveIds = new int[var6]; + WorldMapData_1.regionLandArchives = new byte[var6][]; + GrandExchangeEvent.regionMapArchives = new byte[var6][]; + var6 = 0; + + for (var7 = 0; var7 < 4; ++var7) { + for (var8 = 0; var8 < 13; ++var8) { + for (var9 = 0; var9 < 13; ++var9) { + var10 = Client.instanceChunkTemplates[var7][var8][var9]; + if (var10 != -1) { + int var11 = var10 >> 14 & 1023; + int var12 = var10 >> 3 & 2047; + int var13 = (var11 / 8 << 8) + var12 / 8; + + int var14; + for (var14 = 0; var14 < var6; ++var14) { + if (KitDefinition.regions[var14] == var13) { + var13 = -1; + break; + } + } + + if (var13 != -1) { + KitDefinition.regions[var6] = var13; + var14 = var13 >> 8 & 255; + int var15 = var13 & 255; + UserComparator7.regionMapArchiveIds[var6] = WorldMapSection0.archive9.getGroupId("m" + var14 + "_" + var15); + UserComparator3.regionLandArchiveIds[var6] = WorldMapSection0.archive9.getGroupId("l" + var14 + "_" + var15); + ++var6; + } + } + } + } + } + + class292.method1606(var5, var3, !var16); + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/GrandExchangeOfferWorldComparator.java b/osrs/src/main/java/GrandExchangeOfferWorldComparator.java index 4ca7332d7..f6a8c6860 100644 --- a/osrs/src/main/java/GrandExchangeOfferWorldComparator.java +++ b/osrs/src/main/java/GrandExchangeOfferWorldComparator.java @@ -3,22 +3,21 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.awt.*; -import java.awt.datatransfer.Clipboard; -import java.awt.datatransfer.DataFlavor; -import java.awt.datatransfer.Transferable; -import java.awt.datatransfer.UnsupportedFlavorException; -import java.io.IOException; -import java.util.ArrayList; +import java.io.DataInputStream; +import java.net.URL; import java.util.Comparator; @ObfuscatedName("om") @Implements("GrandExchangeOfferWorldComparator") final class GrandExchangeOfferWorldComparator implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("ar") + @Export("SpriteBuffer_spriteHeight") + public static int SpriteBuffer_spriteHeight; + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loz;Loz;I)I", - garbageValue = "456180240" + descriptor = "(Log;Log;I)I", + garbageValue = "1620655261" ) @Export("compare_bridged") int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) { @@ -37,894 +36,46 @@ public boolean equals(Object var1) { return super.equals(var1); } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIII)Ldh;", - garbageValue = "1291618963" - ) - @Export("getWorldMapScript") - static Script getWorldMapScript(int var0, int var1, int var2) { - int var3 = (var1 << 8) + var0; - Script var5 = ModeWhere.method1981(var3, var0); - if (var5 != null) { - return var5; - } else { - int var6 = (-3 - var2 << 8) + var0; - var5 = ModeWhere.method1981(var6, var0); - if (var5 != null) { - return var5; - } else { - int var7 = var0 + -512; - var5 = ModeWhere.method1981(var7, var0); - return var5 != null ? var5 : null; - } - } - } - @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lbm;Lpi;Lpi;I)V", - garbageValue = "-567709199" + descriptor = "(Ljava/lang/String;Ljava/lang/Throwable;I)V", + garbageValue = "939664876" ) - static void method1950(GameEngine var0, Font var1, Font var2) { - int var5; - boolean var11; - int var35; - int var36; - boolean var45; - if (Login.worldSelectOpen) { - class212 var34 = AbstractWorldMapData.method1526(); - - while (true) { - if (!var34.method1105()) { - if (MouseHandler.MouseHandler_lastButton != 1 && (ObjTypeCustomisation.mouseCam || MouseHandler.MouseHandler_lastButton != 4)) { - break; - } - - int var4 = Login.xPadding + 280; - if (MouseHandler.MouseHandler_lastPressedX >= var4 && MouseHandler.MouseHandler_lastPressedX <= var4 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(0, 0); - break; - } - - if (MouseHandler.MouseHandler_lastPressedX >= var4 + 15 && MouseHandler.MouseHandler_lastPressedX <= var4 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(0, 1); - break; - } - - var5 = Login.xPadding + 390; - if (MouseHandler.MouseHandler_lastPressedX >= var5 && MouseHandler.MouseHandler_lastPressedX <= var5 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(1, 0); - break; - } - - if (MouseHandler.MouseHandler_lastPressedX >= var5 + 15 && MouseHandler.MouseHandler_lastPressedX <= var5 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(1, 1); - break; - } - - var35 = Login.xPadding + 500; - if (MouseHandler.MouseHandler_lastPressedX >= var35 && MouseHandler.MouseHandler_lastPressedX <= var35 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(2, 0); - break; - } - - if (MouseHandler.MouseHandler_lastPressedX >= var35 + 15 && MouseHandler.MouseHandler_lastPressedX <= var35 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(2, 1); - break; - } - - var36 = Login.xPadding + 610; - if (MouseHandler.MouseHandler_lastPressedX >= var36 && MouseHandler.MouseHandler_lastPressedX <= var36 + 14 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(3, 0); - break; - } - - if (MouseHandler.MouseHandler_lastPressedX >= var36 + 15 && MouseHandler.MouseHandler_lastPressedX <= var36 + 80 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedY <= 18) { - class153.changeWorldSelectSorting(3, 1); - break; - } - - if (MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 708 && MouseHandler.MouseHandler_lastPressedY >= 4 && MouseHandler.MouseHandler_lastPressedX <= Login.xPadding + 708 + 50 && MouseHandler.MouseHandler_lastPressedY <= 20) { - WorldMapData_1.method1491(); - break; - } - - if (Login.hoveredWorldIndex != -1) { - World var37 = class176.World_worlds[Login.hoveredWorldIndex]; - if (var37.isDeadman()) { - var37.field679 = "beta"; - } - - var45 = false; - if (var37.properties != Client.worldProperties) { - boolean var46 = (Client.worldProperties & class510.field4125.rsOrdinal()) != 0; - var11 = var37.isDeadman(); - if (var46 && !var11 || !var46 && var11) { - var45 = true; - } - } - - ModeWhere.changeWorld(var37); - WorldMapData_1.method1491(); - if (var45) { - class415.reloadJS5(); - } - } else { - if (Login.worldSelectPage > 0 && class85.worldSelectLeftSprite != null && MouseHandler.MouseHandler_lastPressedX >= 0 && MouseHandler.MouseHandler_lastPressedX <= class85.worldSelectLeftSprite.subWidth && MouseHandler.MouseHandler_lastPressedY >= class177.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= class177.canvasHeight / 2 + 50) { - --Login.worldSelectPage; - } - - if (Login.worldSelectPage < Login.worldSelectPagesCount && Skeleton.worldSelectRightSprite != null && MouseHandler.MouseHandler_lastPressedX >= class113.canvasWidth - Skeleton.worldSelectRightSprite.subWidth - 5 && MouseHandler.MouseHandler_lastPressedX <= class113.canvasWidth && MouseHandler.MouseHandler_lastPressedY >= class177.canvasHeight / 2 - 50 && MouseHandler.MouseHandler_lastPressedY <= class177.canvasHeight / 2 + 50) { - ++Login.worldSelectPage; - } - } - break; - } - - if (var34.field1890 == 13) { - WorldMapData_1.method1491(); - break; - } - - if (var34.field1890 == 96) { - if (Login.worldSelectPage > 0 && class85.worldSelectLeftSprite != null) { - --Login.worldSelectPage; - } - } else if (var34.field1890 == 97 && Login.worldSelectPage < Login.worldSelectPagesCount && Skeleton.worldSelectRightSprite != null) { - ++Login.worldSelectPage; - } - } - + @Export("RunException_sendStackTrace") + public static void RunException_sendStackTrace(String var0, Throwable var1) { + if (var1 != null) { + var1.printStackTrace(); } else { - if ((MouseHandler.MouseHandler_lastButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= Login.xPadding + 765 - 50 && MouseHandler.MouseHandler_lastPressedY >= 453) { - class449.clientPreferences.getTitleMusicDisabled(!class449.clientPreferences.getTitleMusicDisabled()); - if (!class449.clientPreferences.getTitleMusicDisabled()) { - ArrayList var3 = new ArrayList(); - var3.add(new MusicSong(class385.archive6, "scape main", "", 255, false)); - class53.method291(var3, 0, 0, 0, 100, false); - } else { - Script.method445(0, 0); + try { + String var2 = ""; + if (var1 != null) { + var2 = class520.method2525(var1); } - UrlRequester.method652(); - } + if (var0 != null) { + if (var1 != null) { + var2 = var2 + " | "; + } - if (Client.gameState != 5) { - if (-1L == Login.field773) { - Login.field773 = GameEngine.clockNow() + 1000L; + var2 = var2 + var0; } - long var23 = GameEngine.clockNow(); - if (ChatChannel.method455() && -1L == Login.field772) { - Login.field772 = var23; - if (Login.field772 > Login.field773) { - Login.field773 = Login.field772; - } + System.out.println("Error: " + var2); + var2 = var2.replace(':', '.'); + var2 = var2.replace('@', '_'); + var2 = var2.replace('&', '_'); + var2 = var2.replace('#', '_'); + if (RunException.RunException_applet == null) { + return; } - if (Client.gameState == 10 || Client.gameState == 11) { - if (ClanChannelMember.clientLanguage == Language.Language_EN) { - if (MouseHandler.MouseHandler_lastButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_lastButton == 4) { - var5 = Login.xPadding + 5; - short var6 = 463; - byte var7 = 100; - byte var25 = 35; - if (MouseHandler.MouseHandler_lastPressedX >= var5 && MouseHandler.MouseHandler_lastPressedX <= var7 + var5 && MouseHandler.MouseHandler_lastPressedY >= var6 && MouseHandler.MouseHandler_lastPressedY <= var25 + var6) { - if (class125.loadWorlds()) { - Login.worldSelectOpen = true; - Login.worldSelectPage = 0; - Login.worldSelectPagesCount = 0; - } - - return; - } - } - - if (WorldMapLabelSize.World_request != null) { - class53.method296(); - } - } - - var5 = MouseHandler.MouseHandler_lastButton; - var35 = MouseHandler.MouseHandler_lastPressedX; - var36 = MouseHandler.MouseHandler_lastPressedY; - if (var5 == 0) { - var35 = MouseHandler.MouseHandler_x; - var36 = MouseHandler.MouseHandler_y; - } - - if (!ObjTypeCustomisation.mouseCam && var5 == 4) { - var5 = 1; - } - - class212 var8 = AbstractWorldMapData.method1526(); - short var39; - int var40; - if (Login.loginIndex == 0) { - var45 = false; - - while (var8.method1105()) { - if (var8.field1890 == 84) { - var45 = true; - } - } - - var40 = class452.loginBoxCenter - 80; - var39 = 291; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20) { - class30.openURL(HorizontalAlignment.method978("secure", true) + "m=account-creation/g=oldscape/create_account_funnel.ws", true, false); - } - - var40 = class452.loginBoxCenter + 80; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20 || var45) { - if ((Client.worldProperties & class510.field4126.rsOrdinal()) != 0) { - Login.Login_response0 = ""; - Login.Login_response1 = "This is a Beta world."; - Login.Login_response2 = "Your normal account will not be affected."; - Login.Login_response3 = ""; - PcmPlayer.method212(1); - ObjectComposition.method1042(); - } else if ((Client.worldProperties & class510.field4127.rsOrdinal()) != 0) { - if ((Client.worldProperties & class510.field4123.rsOrdinal()) != 0) { - Login.Login_response1 = "This is a High Risk PvP world."; - Login.Login_response2 = "Players can attack each other almost everywhere"; - Login.Login_response3 = "and the Protect Item prayer won't work."; - } else { - Login.Login_response1 = "This is a PvP world."; - Login.Login_response2 = "Players can attack each other"; - Login.Login_response3 = "almost everywhere."; - } - - Login.Login_response0 = "Warning!"; - PcmPlayer.method212(1); - ObjectComposition.method1042(); - } else if ((Client.worldProperties & class510.field4123.rsOrdinal()) != 0) { - Login.Login_response1 = "This is a High Risk world."; - Login.Login_response2 = "The Protect Item prayer will"; - Login.Login_response3 = "not work on this world."; - Login.Login_response0 = "Warning!"; - PcmPlayer.method212(1); - ObjectComposition.method1042(); - } else { - WorldMapAreaData.Login_promptCredentials(false); - } - } - } else { - int var9; - short var10; - if (Login.loginIndex == 1) { - while (true) { - if (!var8.method1105()) { - var9 = class452.loginBoxCenter - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(false); - } - - var9 = class452.loginBoxCenter + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - PcmPlayer.method212(0); - } - break; - } - - if (var8.field1890 == 84) { - WorldMapAreaData.Login_promptCredentials(false); - } else if (var8.field1890 == 13) { - PcmPlayer.method212(0); - } - } - } else { - int var14; - int var29; - short var38; - boolean var47; - if (Login.loginIndex == 2) { - var38 = 201; - var9 = var38 + 52; - if (var5 == 1 && var36 >= var9 - 12 && var36 < var9 + 2) { - Login.currentLoginField = 0; - } - - var9 += 15; - if (var5 == 1 && var36 >= var9 - 12 && var36 < var9 + 2) { - Login.currentLoginField = 1; - } - - var9 += 15; - var38 = 361; - if (class102.field1090 != null) { - var40 = class102.field1090.highX / 2; - if (var5 == 1 && var35 >= class102.field1090.lowX - var40 && var35 <= var40 + class102.field1090.lowX && var36 >= var38 - 15 && var36 < var38) { - switch(Login.field751) { - case 1: - class30.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); - return; - case 2: - class30.openURL("https://support.runescape.com/hc/en-gb", true, false); - } - } - } - - var40 = class452.loginBoxCenter - 80; - var39 = 321; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20) { - Login.Login_username = Login.Login_username.trim(); - if (Login.Login_username.length() == 0) { - class318.setLoginResponseString("", "Please enter your username/email address.", ""); - return; - } - - if (Login.Login_password.length() == 0) { - class318.setLoginResponseString("", "Please enter your password.", ""); - return; - } - - class318.setLoginResponseString("", "Connecting to server...", ""); - PendingSpawn.method509(false); - MusicSong.updateGameState(20); - return; - } - - var40 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20) { - PcmPlayer.method212(0); - Login.Login_username = ""; - Login.Login_password = ""; - class503.field4107 = 0; - class369.otp = ""; - Login.field743 = true; - } - - var40 = class452.loginBoxCenter + -117; - var39 = 277; - Login.field745 = var35 >= var40 && var35 < var40 + class136.field1295 && var36 >= var39 && var36 < var39 + User.field3801; - if (var5 == 1 && Login.field745) { - Client.Login_isUsernameRemembered = !Client.Login_isUsernameRemembered; - if (!Client.Login_isUsernameRemembered && class449.clientPreferences.getUsernameToRemember() != null) { - class449.clientPreferences.setUsernameToRemember((String)null); - } - } - - var40 = class452.loginBoxCenter + 24; - var39 = 277; - Login.field744 = var35 >= var40 && var35 < var40 + class136.field1295 && var36 >= var39 && var36 < var39 + User.field3801; - if (var5 == 1 && Login.field744) { - class449.clientPreferences.setIsUsernameHidden(!class449.clientPreferences.getIsUsernameHidden()); - if (!class449.clientPreferences.getIsUsernameHidden()) { - Login.Login_username = ""; - class449.clientPreferences.setUsernameToRemember((String)null); - ObjectComposition.method1042(); - } - } - - while (true) { - Transferable var42; - do { - while (true) { - label1169: - do { - while (true) { - while (var8.method1105()) { - if (var8.field1890 != 13) { - if (Login.currentLoginField != 0) { - continue label1169; - } - - class148.method788(var8.field1889); - if (var8.field1890 == 85 && Login.Login_username.length() > 0) { - Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); - } - - if (var8.field1890 == 84 || var8.field1890 == 80) { - Login.currentLoginField = 1; - } - - if (class157.method835(var8.field1889) && Login.Login_username.length() < 320) { - Login.Login_username = Login.Login_username + var8.field1889; - } - } else { - PcmPlayer.method212(0); - Login.Login_username = ""; - Login.Login_password = ""; - class503.field4107 = 0; - class369.otp = ""; - Login.field743 = true; - } - } - - return; - } - } while(Login.currentLoginField != 1); - - if (var8.field1890 == 85 && Login.Login_password.length() > 0) { - Login.Login_password = Login.Login_password.substring(0, Login.Login_password.length() - 1); - } else if (var8.field1890 == 84 || var8.field1890 == 80) { - Login.currentLoginField = 0; - if (var8.field1890 == 84) { - Login.Login_username = Login.Login_username.trim(); - if (Login.Login_username.length() == 0) { - class318.setLoginResponseString("", "Please enter your username/email address.", ""); - return; - } - - if (Login.Login_password.length() == 0) { - class318.setLoginResponseString("", "Please enter your password.", ""); - return; - } - - class318.setLoginResponseString("", "Connecting to server...", ""); - PendingSpawn.method509(false); - MusicSong.updateGameState(20); - return; - } - } - - if ((var8.getKeyPressed(82) || var8.getKeyPressed(87)) && var8.field1890 == 67) { - Clipboard var41 = Toolkit.getDefaultToolkit().getSystemClipboard(); - var42 = var41.getContents(class219.client); - var14 = 20 - Login.Login_password.length(); - break; - } - - char var48 = var8.field1889; - if (var48 >= ' ' && var48 < 127 || var48 > 127 && var48 < 160 || var48 > 160 && var48 <= 255) { - var47 = true; - } else { - label1408: { - if (var48 != 0) { - char[] var49 = class384.cp1252AsciiExtension; - - for (var29 = 0; var29 < var49.length; ++var29) { - char var16 = var49[var29]; - if (var16 == var48) { - var47 = true; - break label1408; - } - } - } - - var47 = false; - } - } - - if (var47 && class157.method835(var8.field1889) && Login.Login_password.length() < 20) { - Login.Login_password = Login.Login_password + var8.field1889; - } - } - } while(var14 <= 0); - - try { - String var15 = (String)var42.getTransferData(DataFlavor.stringFlavor); - int var44 = Math.min(var14, var15.length()); - - for (int var17 = 0; var17 < var44; ++var17) { - char var19 = var15.charAt(var17); - boolean var18; - if ((var19 < ' ' || var19 >= 127) && (var19 <= 127 || var19 >= 160) && (var19 <= 160 || var19 > 255)) { - label1392: { - if (var19 != 0) { - char[] var20 = class384.cp1252AsciiExtension; - - for (int var21 = 0; var21 < var20.length; ++var21) { - char var22 = var20[var21]; - if (var22 == var19) { - var18 = true; - break label1392; - } - } - } - - var18 = false; - } - } else { - var18 = true; - } - - if (!var18 || !class157.method835(var15.charAt(var17))) { - PcmPlayer.method212(3); - return; - } - } - - Login.Login_password = Login.Login_password + var15.substring(0, var44); - } catch (UnsupportedFlavorException var32) { - } catch (IOException var33) { - } - } - } else { - Bounds var30; - if (Login.loginIndex == 3) { - var9 = Login.loginBoxX + 180; - var10 = 241; - var30 = var1.method2087(25, "need to log in using the Jagex Launcher instead.".length() - 34, "need to log in using the Jagex Launcher instead.", var9, var10); - if (var5 == 1 && var30.method2284(var35, var36)) { - class30.openURL("https://oldschool.runescape.com/launcher", true, false); - } - - var9 = Login.loginBoxX + 180; - var10 = 276; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.method1574(false); - } - - var9 = Login.loginBoxX + 180; - var10 = 326; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class30.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); - return; - } - } else { - int var27; - if (Login.loginIndex == 4) { - var9 = Login.loginBoxX + 180 - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class369.otp.trim(); - if (class369.otp.length() != 6) { - class318.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); - return; - } - - class503.field4107 = Integer.parseInt(class369.otp); - class369.otp = ""; - PendingSpawn.method509(true); - class318.setLoginResponseString("", "Connecting to server...", ""); - MusicSong.updateGameState(20); - return; - } - - if (var5 == 1 && var35 >= Login.loginBoxX + 180 - 9 && var35 <= Login.loginBoxX + 180 + 130 && var36 >= 263 && var36 <= 296) { - Login.field743 = !Login.field743; - } - - if (var5 == 1 && var35 >= Login.loginBoxX + 180 - 34 && var35 <= Login.loginBoxX + 34 + 180 && var36 >= 351 && var36 <= 363) { - class30.openURL("https://support.runescape.com/hc/en-gb/articles/360001552065", true, false); - } - - var9 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - PcmPlayer.method212(0); - Login.Login_username = ""; - Login.Login_password = ""; - class503.field4107 = 0; - class369.otp = ""; - } - - while (var8.method1105()) { - var11 = false; - - for (var27 = 0; var27 < "1234567890".length(); ++var27) { - if (var8.field1889 == "1234567890".charAt(var27)) { - var11 = true; - break; - } - } - - if (var8.field1890 == 13) { - PcmPlayer.method212(0); - Login.Login_username = ""; - Login.Login_password = ""; - class503.field4107 = 0; - class369.otp = ""; - } else { - if (var8.field1890 == 85 && class369.otp.length() > 0) { - class369.otp = class369.otp.substring(0, class369.otp.length() - 1); - } - - if (var8.field1890 == 84) { - class369.otp.trim(); - if (class369.otp.length() != 6) { - class318.setLoginResponseString("", "Please enter a 6-digit PIN.", ""); - return; - } - - class503.field4107 = Integer.parseInt(class369.otp); - class369.otp = ""; - PendingSpawn.method509(true); - class318.setLoginResponseString("", "Connecting to server...", ""); - MusicSong.updateGameState(20); - return; - } - - if (var11 && class369.otp.length() < 6) { - class369.otp = class369.otp + var8.field1889; - } - } - } - } else { - int var26; - if (Login.loginIndex == 5) { - var9 = Login.loginBoxX + 180 - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class108.method620(); - return; - } - - var9 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - - var39 = 361; - if (class90.field887 != null) { - var27 = class90.field887.highX / 2; - if (var5 == 1 && var35 >= class90.field887.lowX - var27 && var35 <= var27 + class90.field887.lowX && var36 >= var39 - 15 && var36 < var39) { - class30.openURL(HorizontalAlignment.method978("secure", true) + "m=weblogin/g=oldscape/cant_log_in", true, false); - } - } - - while (var8.method1105()) { - var47 = false; - - for (var26 = 0; var26 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var26) { - if (var8.field1889 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var26)) { - var47 = true; - break; - } - } - - if (var8.field1890 == 13) { - WorldMapAreaData.Login_promptCredentials(true); - } else { - if (var8.field1890 == 85 && Login.Login_username.length() > 0) { - Login.Login_username = Login.Login_username.substring(0, Login.Login_username.length() - 1); - } - - if (var8.field1890 == 84) { - class108.method620(); - return; - } - - if (var47 && Login.Login_username.length() < 320) { - Login.Login_username = Login.Login_username + var8.field1889; - } - } - } - } else if (Login.loginIndex != 6) { - if (Login.loginIndex == 7) { - if (ModeWhere.field3613 && !Client.onMobile) { - var9 = class452.loginBoxCenter - 150; - var40 = var9 + 40 + 240 + 25; - var39 = 231; - var27 = var39 + 40; - if (var5 == 1 && var35 >= var9 && var35 <= var40 && var36 >= var39 && var36 <= var27) { - var14 = var9; - var29 = 0; - - while (true) { - if (var29 >= 8) { - var26 = 0; - break; - } - - if (var35 <= var14 + 30) { - var26 = var29; - break; - } - - var14 += 30; - var14 += var29 != 1 && var29 != 3 ? 5 : 20; - ++var29; - } - - Login.field752 = var26; - } - - var26 = Login.loginBoxX + 180 - 80; - short var43 = 321; - boolean var50; - if (var5 == 1 && var35 >= var26 - 75 && var35 <= var26 + 75 && var36 >= var43 - 20 && var36 <= var43 + 20) { - var50 = UserComparator6.method694(); - if (var50) { - MusicSong.updateGameState(50); - return; - } - } - - var26 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var26 - 75 && var35 <= var26 + 75 && var36 >= var43 - 20 && var36 <= var43 + 20) { - Login.field768 = new String[8]; - WorldMapAreaData.Login_promptCredentials(true); - } - - while (var8.method1105()) { - if (var8.field1890 == 101) { - Login.field768[Login.field752] = null; - } - - if (var8.field1890 == 85) { - if (Login.field768[Login.field752] == null && Login.field752 > 0) { - --Login.field752; - } - - Login.field768[Login.field752] = null; - } - - if (var8.field1889 >= '0' && var8.field1889 <= '9') { - Login.field768[Login.field752] = "" + var8.field1889; - if (Login.field752 < 7) { - ++Login.field752; - } - } - - if (var8.field1890 == 84) { - var50 = UserComparator6.method694(); - if (var50) { - MusicSong.updateGameState(50); - } - - return; - } - } - } else { - var9 = Login.loginBoxX + 180 - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class30.openURL(HorizontalAlignment.method978("secure", true) + "m=dob/set_dob.ws", true, false); - class318.setLoginResponseString("", "Page has opened in the browser.", ""); - PcmPlayer.method212(6); - return; - } - - var9 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - } - } else if (Login.loginIndex == 8) { - var9 = Login.loginBoxX + 180 - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class30.openURL("https://www.jagex.com/terms/privacy", true, false); - class318.setLoginResponseString("", "Page has opened in the browser.", ""); - PcmPlayer.method212(6); - return; - } - - var9 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - } else if (Login.loginIndex == 9) { - var9 = Login.loginBoxX + 180; - var10 = 311; - if (var8.field1890 == 84 || var8.field1890 == 13 || var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.method1574(false); - } - } else if (Login.loginIndex == 10) { - var9 = Login.loginBoxX + 180; - var10 = 209; - if (var8.field1890 == 84 || var5 == 1 && var35 >= var9 - 109 && var35 <= var9 + 109 && var36 >= var10 && var36 <= var10 + 68) { - class318.setLoginResponseString("", "Connecting to server...", ""); - Client.field648 = class519.field4204; - PendingSpawn.method509(false); - MusicSong.updateGameState(20); - } - } else if (Login.loginIndex == 12) { - var9 = class452.loginBoxCenter; - var10 = 233; - var30 = var2.method2087(0, 30, "terms of use, privacy policy, and end user licence", var9, var10); - Bounds var12 = var2.method2087(32, 32, "terms of use, privacy policy, and end user licence", var9, var10); - Bounds var13 = var2.method2087(70, 34, "terms of use, privacy policy, and end user licence", var9, var10); - var40 = var10 + 17; - Bounds var28 = var2.method2087(0, 34, "agreement (EULA).", var9, var40); - if (var5 == 1) { - if (var30.method2284(var35, var36)) { - class30.openURL("https://www.jagex.com/terms", true, false); - } else if (var12.method2284(var35, var36)) { - class30.openURL("https://www.jagex.com/terms/privacy", true, false); - } else if (var13.method2284(var35, var36) || var28.method2284(var35, var36)) { - class30.openURL("https://www.jagex.com/en-GB/legal/eula-runescape-oldschool", true, false); - } - } - - var9 = class452.loginBoxCenter - 80; - var10 = 311; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class9.method26(); - WorldMapAreaData.method1574(true); - } - - var9 = class452.loginBoxCenter + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - Login.loginIndex = 13; - } - } else if (Login.loginIndex == 13) { - var9 = class452.loginBoxCenter; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.method1574(true); - } - } else if (Login.loginIndex == 14) { - String var31 = ""; - switch(Login.field750) { - case 0: - var31 = "https://secure.runescape.com/m=offence-appeal/account-history"; - break; - case 1: - var31 = "https://secure.runescape.com/m=accountappeal/passwordrecovery"; - break; - case 2: - var31 = "https://support.runescape.com/hc/en-gb/articles/207256855-Settle-an-Unpaid-Balance"; - break; - default: - WorldMapAreaData.Login_promptCredentials(false); - } - - var40 = Login.loginBoxX + 180; - var39 = 276; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20) { - class30.openURL(var31, true, false); - class318.setLoginResponseString("", "Page has opened in the browser.", ""); - PcmPlayer.method212(6); - return; - } - - var40 = Login.loginBoxX + 180; - var39 = 326; - if (var5 == 1 && var35 >= var40 - 75 && var35 <= var40 + 75 && var36 >= var39 - 20 && var36 <= var39 + 20) { - WorldMapAreaData.Login_promptCredentials(false); - } - } else if (Login.loginIndex == 24) { - var9 = Login.loginBoxX + 180; - var10 = 301; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.method1574(false); - } - } else if (Login.loginIndex == 32) { - var9 = Login.loginBoxX + 180 - 80; - var10 = 321; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class30.openURL(HorizontalAlignment.method978("secure", true) + "m=dob/set_dob.ws", true, false); - class318.setLoginResponseString("", "Page has opened in the browser.", ""); - PcmPlayer.method212(6); - return; - } - - var9 = Login.loginBoxX + 180 + 80; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - } else if (Login.loginIndex == 33) { - var9 = Login.loginBoxX + 180; - var10 = 276; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - class30.openURL("https://oldschool.runescape.com/launcher", true, false); - } - - var9 = Login.loginBoxX + 180; - var10 = 326; - if (var5 == 1 && var35 >= var9 - 75 && var35 <= var9 + 75 && var36 >= var10 - 20 && var36 <= var10 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - } - } else { - while (true) { - do { - if (!var8.method1105()) { - var38 = 321; - if (var5 == 1 && var36 >= var38 - 20 && var36 <= var38 + 20) { - WorldMapAreaData.Login_promptCredentials(true); - } - - return; - } - } while(var8.field1890 != 84 && var8.field1890 != 13); - - WorldMapAreaData.Login_promptCredentials(true); - } - } - } - } - } - } - } - - } + URL var3 = new URL(RunException.RunException_applet.getCodeBase(), "clienterror.ws?cv=" + class145.RunException_revision + "&cs=" + RunException.field4318 + "&u=" + class17.field53 + "&v1=" + TaskHandler.javaVendor + "&v2=" + TaskHandler.javaVersion + "&ct=" + RunException.field4317 + "&e=" + var2); + DataInputStream var4 = new DataInputStream(var3.openStream()); + var4.read(); + var4.close(); + } catch (Exception var5) { } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/GraphicsDefaults.java b/osrs/src/main/java/GraphicsDefaults.java index b353f7697..a3168ccfb 100644 --- a/osrs/src/main/java/GraphicsDefaults.java +++ b/osrs/src/main/java/GraphicsDefaults.java @@ -3,62 +3,57 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.lang.management.GarbageCollectorMXBean; - -@ObfuscatedName("rr") +@ObfuscatedName("rl") @Implements("GraphicsDefaults") public class GraphicsDefaults { - @ObfuscatedName("bi") - @Export("garbageCollector") - static GarbageCollectorMXBean garbageCollector; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("compass") public int compass; - @ObfuscatedName("ae") - public int field3850; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + public int field3884; + @ObfuscatedName("ar") @Export("mapScenes") public int mapScenes; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("headIconsPk") public int headIconsPk; + @ObfuscatedName("ab") + public int field3882; + @ObfuscatedName("au") + public int field3890; + @ObfuscatedName("aa") + public int field3881; @ObfuscatedName("ac") - public int field3848; - @ObfuscatedName("ai") - public int field3852; + public int field3883; + @ObfuscatedName("al") + public int field3885; @ObfuscatedName("az") - public int field3857; + public int field3891; @ObfuscatedName("ap") - public int field3854; - @ObfuscatedName("aa") - public int field3847; - @ObfuscatedName("af") - public int field3851; - @ObfuscatedName("ad") - public int field3849; + public int field3887; public GraphicsDefaults() { this.compass = -1; - this.field3850 = -1; + this.field3884 = -1; this.mapScenes = -1; this.headIconsPk = -1; - this.field3848 = -1; - this.field3852 = -1; - this.field3857 = -1; - this.field3854 = -1; - this.field3847 = -1; - this.field3851 = -1; - this.field3849 = -1; + this.field3882 = -1; + this.field3890 = -1; + this.field3881 = -1; + this.field3883 = -1; + this.field3885 = -1; + this.field3891 = -1; + this.field3887 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "497895580" + descriptor = "(Lol;B)V", + garbageValue = "78" ) @Export("decode") public void decode(AbstractArchive var1) { - byte[] var2 = var1.takeFileFlat(DefaultsGroup.field3844.group); + byte[] var2 = var1.takeFileFlat(DefaultsGroup.field3878.group); Buffer var3 = new Buffer(var2); while (true) { @@ -72,17 +67,17 @@ public void decode(AbstractArchive var1) { var3.readMedium(); break; case 2: - this.compass = var3.method2563(); - this.field3850 = var3.method2563(); - this.mapScenes = var3.method2563(); - this.headIconsPk = var3.method2563(); - this.field3848 = var3.method2563(); - this.field3852 = var3.method2563(); - this.field3857 = var3.method2563(); - this.field3854 = var3.method2563(); - this.field3847 = var3.method2563(); - this.field3851 = var3.method2563(); - this.field3849 = var3.method2563(); + this.compass = var3.readNullableLargeSmart(); + this.field3884 = var3.readNullableLargeSmart(); + this.mapScenes = var3.readNullableLargeSmart(); + this.headIconsPk = var3.readNullableLargeSmart(); + this.field3882 = var3.readNullableLargeSmart(); + this.field3890 = var3.readNullableLargeSmart(); + this.field3881 = var3.readNullableLargeSmart(); + this.field3883 = var3.readNullableLargeSmart(); + this.field3885 = var3.readNullableLargeSmart(); + this.field3891 = var3.readNullableLargeSmart(); + this.field3887 = var3.readNullableLargeSmart(); } } } diff --git a/osrs/src/main/java/GraphicsObject.java b/osrs/src/main/java/GraphicsObject.java index d93418b28..12bc8df7b 100644 --- a/osrs/src/main/java/GraphicsObject.java +++ b/osrs/src/main/java/GraphicsObject.java @@ -3,45 +3,40 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.security.SecureRandom; - -@ObfuscatedName("cg") +@ObfuscatedName("cu") @Implements("GraphicsObject") public class GraphicsObject extends Renderable { - @ObfuscatedName("hn") - @Export("secureRandom") - static SecureRandom secureRandom; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("cycleStart") int cycleStart; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("plane") int plane; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("x") int x; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("y") int y; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("z") int z; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lib;" + descriptor = "Lhx;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("frame") int frame; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("frameCycle") int frameCycle; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("isFinished") boolean isFinished; @@ -55,20 +50,20 @@ public class GraphicsObject extends Renderable { this.y = var4; this.z = var5; this.cycleStart = var7 + var6; - int var8 = StructComposition.SpotAnimationDefinition_get(this.id).sequence; + int var8 = Canvas.SpotAnimationDefinition_get(this.id).sequence; if (var8 != -1) { this.isFinished = false; - this.sequenceDefinition = EnumComposition.SequenceDefinition_get(var8); + this.sequenceDefinition = DynamicObject.SequenceDefinition_get(var8); } else { this.isFinished = true; } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "47" + garbageValue = "-19" ) @Export("advance") final void advance(int var1) { @@ -85,7 +80,7 @@ final void advance(int var1) { } } else { this.frame += var1; - if (this.frame >= this.sequenceDefinition.method1085()) { + if (this.frame >= this.sequenceDefinition.method1052()) { this.isFinished = true; } } @@ -93,14 +88,14 @@ final void advance(int var1) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { - SpotAnimationDefinition var1 = StructComposition.SpotAnimationDefinition_get(this.id); + SpotAnimationDefinition var1 = Canvas.SpotAnimationDefinition_get(this.id); Model var2; if (!this.isFinished) { var2 = var1.getModel(this.frame); @@ -111,6 +106,15 @@ protected final Model getModel() { return var2 == null ? null : var2; } + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IIB)Z", + garbageValue = "-89" + ) + public static boolean method428(int var0, int var1) { + return (var0 >> var1 + 1 & 1) != 0; + } + public GraphicsObject() { } } \ No newline at end of file diff --git a/osrs/src/main/java/HealthBar.java b/osrs/src/main/java/HealthBar.java index d559b5b7e..8a70de7bc 100644 --- a/osrs/src/main/java/HealthBar.java +++ b/osrs/src/main/java/HealthBar.java @@ -3,43 +3,44 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dm") +import java.awt.*; +import java.awt.Desktop.Action; +import java.net.URI; + +@ObfuscatedName("de") @Implements("HealthBar") public class HealthBar extends Node { - @ObfuscatedName("aa") - @Export("ItemDefinition_fileCount") - public static int ItemDefinition_fileCount; - @ObfuscatedName("ls") - @Export("oculusOrbFocalPointY") - static int oculusOrbFocalPointY; - @ObfuscatedName("mn") - @Export("Client_plane") - static int Client_plane; - @ObfuscatedName("ao") + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lnn;" + ) + @Export("scriptActiveWidget") + static Widget scriptActiveWidget; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lhl;" + descriptor = "Lgh;" ) @Export("definition") HealthBarDefinition definition; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Loc;" + descriptor = "Lpm;" ) @Export("updates") IterableNodeDeque updates; @ObfuscatedSignature( - descriptor = "(Lhl;)V" + descriptor = "(Lgh;)V" ) HealthBar(HealthBarDefinition var1) { this.updates = new IterableNodeDeque(); this.definition = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(IIIIB)V", - garbageValue = "0" + garbageValue = "1" ) @Export("put") void put(int var1, int var2, int var3, int var4) { @@ -72,10 +73,10 @@ void put(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)Ldo;", - garbageValue = "-93" + descriptor = "(II)Ldv;", + garbageValue = "478923199" ) @Export("get") HealthBarUpdate get(int var1) { @@ -97,48 +98,66 @@ HealthBarUpdate get(int var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-45" + descriptor = "(I)Z", + garbageValue = "1159323457" ) @Export("isEmpty") boolean isEmpty() { - return this.updates.method2008(); + return this.updates.method2027(); } - @ObfuscatedName("jd") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-1142010157" + descriptor = "(II)I", + garbageValue = "2038355157" ) - @Export("worldToScreen") - static final void worldToScreen(int var0, int var1, int var2) { - if (var0 >= 128 && var1 >= 128 && var0 <= 13056 && var1 <= 13056) { - int var3 = class18.getTileHeight(var0, var1, Client_plane) - var2; - var0 -= NPCComposition.cameraX; - var3 -= class133.cameraY; - var1 -= class139.cameraZ; - int var4 = Rasterizer3D.Rasterizer3D_sine[class129.cameraPitch]; - int var5 = Rasterizer3D.Rasterizer3D_cosine[class129.cameraPitch]; - int var6 = Rasterizer3D.Rasterizer3D_sine[UserComparator10.cameraYaw]; - int var7 = Rasterizer3D.Rasterizer3D_cosine[UserComparator10.cameraYaw]; - int var8 = var6 * var1 + var0 * var7 >> 16; - var1 = var7 * var1 - var0 * var6 >> 16; - var0 = var8; - var8 = var5 * var3 - var4 * var1 >> 16; - var1 = var5 * var1 + var3 * var4 >> 16; - if (var1 >= 50) { - Client.viewportTempX = var0 * Client.viewportZoom / var1 + Client.viewportWidth / 2; - Client.viewportTempY = Client.viewportHeight / 2 + var8 * Client.viewportZoom / var1; - } else { - Client.viewportTempX = -1; - Client.viewportTempY = -1; + @Export("getVarbit") + public static int getVarbit(int var0) { + VarbitComposition var1 = ClientPreferences.getWidget(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; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Ldm;", + garbageValue = "-789514227" + ) + static class89[] method569() { + return new class89[]{class89.field885, class89.field887, class89.field886, class89.field888, class89.field889}; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZZI)V", + garbageValue = "2050033545" + ) + @Export("openURL") + public static void openURL(String var0, boolean var1, boolean var2) { + if (var1) { + if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Action.BROWSE)) { + try { + Desktop.getDesktop().browse(new URI(var0)); + return; + } catch (Exception var4) { + } } + if (class31.field86.startsWith("win")) { + Canvas.method88(var0, 0, "openjs"); + } else if (class31.field86.startsWith("mac")) { + Canvas.method88(var0, 1, "openjs"); + } else { + Canvas.method88(var0, 2, "openjs"); + } } else { - Client.viewportTempX = -1; - Client.viewportTempY = -1; + Canvas.method88(var0, 3, "openjs"); } + } } \ No newline at end of file diff --git a/osrs/src/main/java/HealthBarDefinition.java b/osrs/src/main/java/HealthBarDefinition.java index a8902311d..c37c34028 100644 --- a/osrs/src/main/java/HealthBarDefinition.java +++ b/osrs/src/main/java/HealthBarDefinition.java @@ -3,66 +3,74 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hl") +import java.security.SecureRandom; + +@ObfuscatedName("gh") @Implements("HealthBarDefinition") public class HealthBarDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("HealthBarDefinition_archive") public static AbstractArchive HealthBarDefinition_archive; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("HealthBarDefinition_cached") - public static EvictingDualNodeHashTable HealthBarDefinition_cached; - @ObfuscatedName("at") + static EvictingDualNodeHashTable HealthBarDefinition_cached; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("ItemDefinition_cachedModels") + static EvictingDualNodeHashTable ItemDefinition_cachedModels; + @ObfuscatedName("eb") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Lmr;" ) - @Export("HealthBarDefinition_cachedSprites") - public static EvictingDualNodeHashTable HealthBarDefinition_cachedSprites; + @Export("widgetDefinition") + static WidgetDefinition widgetDefinition; + @ObfuscatedName("ab") + public int field1494; @ObfuscatedName("ac") - public int field1555; - @ObfuscatedName("ap") @Export("int1") public int int1; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("int2") public int int2; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("int3") public int int3; - @ObfuscatedName("ad") - public int field1556; - @ObfuscatedName("aq") + @ObfuscatedName("ap") + public int field1498; + @ObfuscatedName("av") @Export("int5") public int int5; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("frontSpriteID") int frontSpriteID; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("backSpriteID") int backSpriteID; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("width") public int width; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("widthPadding") public int widthPadding; static { HealthBarDefinition_cached = new EvictingDualNodeHashTable(64); - HealthBarDefinition_cachedSprites = new EvictingDualNodeHashTable(64); + ItemDefinition_cachedModels = new EvictingDualNodeHashTable(64); } - public HealthBarDefinition() { + HealthBarDefinition() { this.int1 = 255; this.int2 = 255; this.int3 = -1; - this.field1556 = 1; + this.field1498 = 1; this.int5 = 70; this.frontSpriteID = -1; this.backSpriteID = -1; @@ -70,13 +78,13 @@ public HealthBarDefinition() { this.widthPadding = 0; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-25" + descriptor = "(Luj;I)V", + garbageValue = "-1942652761" ) @Export("decode") - public void decode(Buffer var1) { + void decode(Buffer var1) { while (true) { int var2 = var1.readUnsignedByte(); if (var2 == 0) { @@ -87,10 +95,10 @@ public void decode(Buffer var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1395373315" + descriptor = "(Luj;II)V", + garbageValue = "88568767" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -107,9 +115,9 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 6) { var1.readUnsignedByte(); } else if (var2 == 7) { - this.frontSpriteID = var1.method2563(); + this.frontSpriteID = var1.readNullableLargeSmart(); } else if (var2 == 8) { - this.backSpriteID = var1.method2563(); + this.backSpriteID = var1.readNullableLargeSmart(); } else if (var2 == 11) { this.int3 = var1.readUnsignedShort(); } else if (var2 == 14) { @@ -120,23 +128,23 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)Lui;", - garbageValue = "26" + descriptor = "(I)Luz;", + garbageValue = "-309117701" ) @Export("getFrontSprite") public SpritePixels getFrontSprite() { if (this.frontSpriteID < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HealthBarDefinition_cachedSprites.get((long)this.frontSpriteID); + SpritePixels var1 = (SpritePixels)ItemDefinition_cachedModels.get((long)this.frontSpriteID); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(class422.field3769, this.frontSpriteID, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(SecureRandomCallable.field851, this.frontSpriteID, 0); if (var1 != null) { - HealthBarDefinition_cachedSprites.put(var1, (long)this.frontSpriteID); + ItemDefinition_cachedModels.put(var1, (long)this.frontSpriteID); } return var1; @@ -144,23 +152,23 @@ public SpritePixels getFrontSprite() { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)Lui;", - garbageValue = "314676722" + descriptor = "(B)Luz;", + garbageValue = "54" ) @Export("getBackSprite") public SpritePixels getBackSprite() { if (this.backSpriteID < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HealthBarDefinition_cachedSprites.get((long)this.backSpriteID); + SpritePixels var1 = (SpritePixels)ItemDefinition_cachedModels.get((long)this.backSpriteID); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(class422.field3769, this.backSpriteID, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(SecureRandomCallable.field851, this.backSpriteID, 0); if (var1 != null) { - HealthBarDefinition_cachedSprites.put(var1, (long)this.backSpriteID); + ItemDefinition_cachedModels.put(var1, (long)this.backSpriteID); } return var1; @@ -168,33 +176,34 @@ public SpritePixels getBackSprite() { } } - @ObfuscatedName("au") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-293165010" + descriptor = "(I)Ljava/security/SecureRandom;", + garbageValue = "1872253772" ) - @Export("Widget_unpackTargetMask") - public static int Widget_unpackTargetMask(int var0) { - return var0 >> 11 & 63; + static SecureRandom method911() { + SecureRandom var0 = new SecureRandom(); + var0.nextInt(); + return var0; } - @ObfuscatedName("aq") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "([BI)Lpi;", - garbageValue = "-1270824804" + descriptor = "(I)V", + garbageValue = "-876386223" ) - static Font method969(byte[] var0) { - if (var0 == null) { - return null; - } else { - Font var1 = new Font(var0, class529.SpriteBuffer_xOffsets, class152.SpriteBuffer_yOffsets, HealthBarUpdate.SpriteBuffer_spriteWidths, SpriteMask.SpriteBuffer_spriteHeights, DbTableType.SpriteBuffer_spritePalette, Coord.SpriteBuffer_pixels); - class529.SpriteBuffer_xOffsets = null; - class152.SpriteBuffer_yOffsets = null; - HealthBarUpdate.SpriteBuffer_spriteWidths = null; - SpriteMask.SpriteBuffer_spriteHeights = null; - DbTableType.SpriteBuffer_spritePalette = null; - Coord.SpriteBuffer_pixels = null; - return var1; + public static void method916() { + try { + JagexCache.JagexCache_dat2File.close(); + + for (int var0 = 0; var0 < UserComparator6.field1202; ++var0) { + KeyHandler.JagexCache_idxFiles[var0].close(); + } + + JagexCache.JagexCache_idx255File.close(); + JagexCache.JagexCache_randomDat.close(); + } catch (Exception var2) { } + } } \ No newline at end of file diff --git a/osrs/src/main/java/HealthBarUpdate.java b/osrs/src/main/java/HealthBarUpdate.java index 46ae4a991..bc852c11f 100644 --- a/osrs/src/main/java/HealthBarUpdate.java +++ b/osrs/src/main/java/HealthBarUpdate.java @@ -3,28 +3,19 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("do") +@ObfuscatedName("dv") @Implements("HealthBarUpdate") public class HealthBarUpdate extends Node { - @ObfuscatedName("ai") - @Export("SpriteBuffer_spriteWidths") - static int[] SpriteBuffer_spriteWidths; - @ObfuscatedName("ik") - @ObfuscatedSignature( - descriptor = "Lpi;" - ) - @Export("fontPlain11") - static Font fontPlain11; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("cycle") int cycle; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("health") int health; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("health2") int health2; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("cycleOffset") int cycleOffset; @@ -35,10 +26,10 @@ public class HealthBarUpdate extends Node { this.cycleOffset = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "75" + descriptor = "(IIIII)V", + garbageValue = "857709911" ) @Export("set") void set(int var1, int var2, int var3, int var4) { @@ -50,35 +41,23 @@ void set(int var1, int var2, int var3, int var4) { @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)I", - garbageValue = "-2006181389" + descriptor = "(II)Ldt;", + garbageValue = "-1907419429" ) - public static int method524(CharSequence var0) { - return DevicePcmPlayerProvider.method75(var0, 10, true); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Lch;Lch;IZIZI)I", - garbageValue = "1278568965" - ) - static int method525(World var0, World var1, int var2, boolean var3, int var4, boolean var5) { - int var6 = class139.compareWorlds(var0, var1, var2, var3); - if (var6 != 0) { - return var3 ? -var6 : var6; - } else if (var4 == -1) { - return 0; + @Export("getScript") + static Script getScript(int var0) { + Script var1 = (Script)Script.Script_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - int var7 = class139.compareWorlds(var0, var1, var4, var5); - return var5 ? -var7 : var7; + byte[] var2 = class47.archive12.takeFile(var0, 0); + if (var2 == null) { + return null; + } else { + var1 = NewShit.newScript(var2); + Script.Script_cached.put(var1, (long)var0); + return var1; + } } } - - @ObfuscatedName("na") - static final void method526(double var0) { - Rasterizer3D.method1187(var0); - ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(var0); - UrlRequester.method653(); - class449.clientPreferences.setBrightness(var0); - } } \ No newline at end of file diff --git a/osrs/src/main/java/HitSplatDefinition.java b/osrs/src/main/java/HitSplatDefinition.java index 617346da1..6b99619f9 100644 --- a/osrs/src/main/java/HitSplatDefinition.java +++ b/osrs/src/main/java/HitSplatDefinition.java @@ -3,79 +3,79 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hm") +@ObfuscatedName("hz") @Implements("HitSplatDefinition") public class HitSplatDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("HitSplatDefinition_archive") public static AbstractArchive HitSplatDefinition_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) - public static AbstractArchive field1689; - @ObfuscatedName("ao") + public static AbstractArchive field1640; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("HitSplatDefinition_fontsArchive") public static AbstractArchive HitSplatDefinition_fontsArchive; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("HitSplatDefinition_cached") static EvictingDualNodeHashTable HitSplatDefinition_cached; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("HitSplatDefinition_cachedSprites") static EvictingDualNodeHashTable HitSplatDefinition_cachedSprites; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("HitSplatDefinition_cachedFonts") static EvictingDualNodeHashTable HitSplatDefinition_cachedFonts; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("fontId") int fontId; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("textColor") public int textColor; - @ObfuscatedName("an") - public int field1706; - @ObfuscatedName("ar") - int field1700; - @ObfuscatedName("ab") - int field1695; - @ObfuscatedName("ag") - int field1696; - @ObfuscatedName("am") - int field1698; - @ObfuscatedName("ax") - public int field1709; - @ObfuscatedName("ah") - public int field1703; @ObfuscatedName("as") - public int field1707; + public int field1658; @ObfuscatedName("ay") - String field1702; + int field1651; + @ObfuscatedName("ak") + int field1648; @ObfuscatedName("aj") - public int field1704; - @ObfuscatedName("av") - public int field1708; + int field1647; + @ObfuscatedName("am") + int field1649; + @ObfuscatedName("aq") + public int field1657; + @ObfuscatedName("ai") + public int field1655; @ObfuscatedName("aw") + public int field1659; + @ObfuscatedName("ae") + String field1653; + @ObfuscatedName("an") + public int field1656; + @ObfuscatedName("ag") + public int field1654; + @ObfuscatedName("ad") @Export("transforms") public int[] transforms; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("transformVarp") int transformVarp; @@ -88,25 +88,25 @@ public class HitSplatDefinition extends DualNode { HitSplatDefinition() { this.fontId = -1; this.textColor = 16777215; - this.field1706 = 70; - this.field1700 = -1; - this.field1695 = -1; - this.field1696 = -1; - this.field1698 = -1; - this.field1709 = 0; - this.field1703 = 0; - this.field1707 = -1; - this.field1702 = ""; - this.field1704 = -1; - this.field1708 = 0; + this.field1658 = 70; + this.field1651 = -1; + this.field1648 = -1; + this.field1647 = -1; + this.field1649 = -1; + this.field1657 = 0; + this.field1655 = 0; + this.field1659 = -1; + this.field1653 = ""; + this.field1656 = -1; + this.field1654 = 0; this.transformVarbit = -1; this.transformVarp = -1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-96" + descriptor = "(Luj;B)V", + garbageValue = "76" ) @Export("decode") void decode(Buffer var1) { @@ -120,41 +120,41 @@ void decode(Buffer var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "-17" + descriptor = "(Luj;IB)V", + garbageValue = "-1" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { if (var2 == 1) { - this.fontId = var1.method2563(); + this.fontId = var1.readNullableLargeSmart(); } else if (var2 == 2) { this.textColor = var1.readMedium(); } else if (var2 == 3) { - this.field1700 = var1.method2563(); + this.field1651 = var1.readNullableLargeSmart(); } else if (var2 == 4) { - this.field1696 = var1.method2563(); + this.field1647 = var1.readNullableLargeSmart(); } else if (var2 == 5) { - this.field1695 = var1.method2563(); + this.field1648 = var1.readNullableLargeSmart(); } else if (var2 == 6) { - this.field1698 = var1.method2563(); + this.field1649 = var1.readNullableLargeSmart(); } else if (var2 == 7) { - this.field1709 = var1.readShort(); + this.field1657 = var1.readShort(); } else if (var2 == 8) { - this.field1702 = var1.readStringCp1252NullCircumfixed(); + this.field1653 = var1.readStringCp1252NullCircumfixed(); } else if (var2 == 9) { - this.field1706 = var1.readUnsignedShort(); + this.field1658 = var1.readUnsignedShort(); } else if (var2 == 10) { - this.field1703 = var1.readShort(); + this.field1655 = var1.readShort(); } else if (var2 == 11) { - this.field1707 = 0; + this.field1659 = 0; } else if (var2 == 12) { - this.field1704 = var1.readUnsignedByte(); + this.field1656 = var1.readUnsignedByte(); } else if (var2 == 13) { - this.field1708 = var1.readShort(); + this.field1654 = var1.readShort(); } else if (var2 == 14) { - this.field1707 = var1.readUnsignedShort(); + this.field1659 = var1.readUnsignedShort(); } else if (var2 == 17 || var2 == 18) { this.transformVarbit = var1.readUnsignedShort(); if (this.transformVarbit == 65535) { @@ -189,16 +189,16 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)Lhm;", - garbageValue = "-478851441" + descriptor = "(B)Lhz;", + garbageValue = "14" ) @Export("transform") public final HitSplatDefinition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = ClientPreferences.getVarbit(this.transformVarbit); + var1 = HealthBar.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } @@ -210,17 +210,17 @@ public final HitSplatDefinition transform() { var2 = this.transforms[this.transforms.length - 1]; } - return var2 != -1 ? WorldMapCacheName.method1564(var2) : null; + return var2 != -1 ? class149.method776(var2) : null; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/String;", - garbageValue = "85" + descriptor = "(IS)Ljava/lang/String;", + garbageValue = "184" ) @Export("getString") public String getString(int var1) { - String var2 = this.field1702; + String var2 = this.field1653; while (true) { int var3 = var2.indexOf("%1"); @@ -228,26 +228,26 @@ public String getString(int var1) { return var2; } - var2 = var2.substring(0, var3) + class60.intToString(var1, false) + var2.substring(var3 + 2); + var2 = var2.substring(0, var3) + SceneTilePaint.intToString(var1, false) + var2.substring(var3 + 2); } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)Lui;", - garbageValue = "2088271438" + descriptor = "(B)Luz;", + garbageValue = "87" ) - public SpritePixels method1032() { - if (this.field1700 < 0) { + public SpritePixels method992() { + if (this.field1651 < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1700); + SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1651); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(field1689, this.field1700, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(field1640, this.field1651, 0); if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field1700); + HitSplatDefinition_cachedSprites.put(var1, (long)this.field1651); } return var1; @@ -255,22 +255,22 @@ public SpritePixels method1032() { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)Lui;", - garbageValue = "1718225131" + descriptor = "(I)Luz;", + garbageValue = "-1829294182" ) - public SpritePixels method1033() { - if (this.field1695 < 0) { + public SpritePixels method993() { + if (this.field1648 < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1695); + SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1648); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(field1689, this.field1695, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(field1640, this.field1648, 0); if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field1695); + HitSplatDefinition_cachedSprites.put(var1, (long)this.field1648); } return var1; @@ -278,22 +278,22 @@ public SpritePixels method1033() { } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)Lui;", - garbageValue = "-816789070" + descriptor = "(B)Luz;", + garbageValue = "40" ) - public SpritePixels method1034() { - if (this.field1696 < 0) { + public SpritePixels method995() { + if (this.field1647 < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1696); + SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1647); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(field1689, this.field1696, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(field1640, this.field1647, 0); if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field1696); + HitSplatDefinition_cachedSprites.put(var1, (long)this.field1647); } return var1; @@ -301,22 +301,22 @@ public SpritePixels method1034() { } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)Lui;", - garbageValue = "3" + descriptor = "(I)Luz;", + garbageValue = "-1809532978" ) - public SpritePixels method1035() { - if (this.field1698 < 0) { + public SpritePixels method996() { + if (this.field1649 < 0) { return null; } else { - SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1698); + SpritePixels var1 = (SpritePixels)HitSplatDefinition_cachedSprites.get((long)this.field1649); if (var1 != null) { return var1; } else { - var1 = Tiles.SpriteBuffer_getSprite(field1689, this.field1698, 0); + var1 = IgnoreList.SpriteBuffer_getSprite(field1640, this.field1649, 0); if (var1 != null) { - HitSplatDefinition_cachedSprites.put(var1, (long)this.field1698); + HitSplatDefinition_cachedSprites.put(var1, (long)this.field1649); } return var1; @@ -324,10 +324,10 @@ public SpritePixels method1035() { } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)Lpi;", - garbageValue = "1628284483" + descriptor = "(I)Lpf;", + garbageValue = "1266357542" ) @Export("getFont") public Font getFont() { @@ -338,96 +338,106 @@ public Font getFont() { if (var1 != null) { return var1; } else { - var1 = LoginPacket.method1613(field1689, HitSplatDefinition_fontsArchive, this.fontId, 0); - if (var1 != null) { - HitSplatDefinition_cachedFonts.put(var1, (long)this.fontId); + AbstractArchive var3 = field1640; + AbstractArchive var4 = HitSplatDefinition_fontsArchive; + int var5 = this.fontId; + byte[] var7 = var3.takeFile(var5, 0); + boolean var6; + if (var7 == null) { + var6 = false; + } else { + class162.SpriteBuffer_decode(var7); + var6 = true; } - return var1; + Font var2; + if (!var6) { + var2 = null; + } else { + var2 = WorldMapArea.method1229(var4.takeFile(var5, 0)); + } + + if (var2 != null) { + HitSplatDefinition_cachedFonts.put(var2, (long)this.fontId); + } + + return var2; } } } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "731414958" - ) - static int method1026(int var0, int var1, int var2) { - if (var2 > 179) { - var1 /= 2; - } + @ObfuscatedName("at") + @Export("base37DecodeLong") + public static String base37DecodeLong(long var0) { + if (var0 > 0L && var0 < 6582952005840035281L) { + if (var0 % 37L == 0L) { + return null; + } else { + int var2 = 0; - if (var2 > 192) { - var1 /= 2; - } + for (long var3 = var0; var3 != 0L; var3 /= 37L) { + ++var2; + } - if (var2 > 217) { - var1 /= 2; - } + StringBuilder var5; + char var8; + for (var5 = new StringBuilder(var2); 0L != var0; var5.append(var8)) { + long var6 = var0; + var0 /= 37L; + var8 = class400.base37Table[(int)(var6 - var0 * 37L)]; + if (var8 == '_') { + int var9 = var5.length() - 1; + var5.setCharAt(var9, Character.toUpperCase(var5.charAt(var9))); + var8 = 160; + } + } - if (var2 > 243) { - var1 /= 2; + var5.reverse(); + var5.setCharAt(0, Character.toUpperCase(var5.charAt(0))); + return var5.toString(); + } + } else { + return null; } + } - int var3 = (var1 / 32 << 7) + (var0 / 4 << 10) + var2 / 2; - return var3; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2098653411" + ) + public static void method994() { + KitDefinition.KitDefinition_cached.clear(); } - @ObfuscatedName("at") + @ObfuscatedName("la") @ObfuscatedSignature( - descriptor = "([BB)Ldh;", - garbageValue = "10" + descriptor = "(Ljava/lang/String;Lnn;I)Ljava/lang/String;", + garbageValue = "-1437467043" ) - @Export("newScript") - static Script newScript(byte[] var0) { - Script var1 = new Script(); - Buffer var2 = new Buffer(var0); - var2.offset = var2.array.length - 2; - int var3 = var2.readUnsignedShort(); - int var4 = var2.array.length - 2 - var3 - 12; - var2.offset = var4; - int var5 = var2.readInt(); - var1.localIntCount = var2.readUnsignedShort(); - var1.localStringCount = var2.readUnsignedShort(); - var1.intArgumentCount = var2.readUnsignedShort(); - var1.stringArgumentCount = var2.readUnsignedShort(); - int var6 = var2.readUnsignedByte(); - int var7; - int var8; - if (var6 > 0) { - var1.switches = var1.newIterableNodeHashTable(var6); - - for (var7 = 0; var7 < var6; ++var7) { - var8 = var2.readUnsignedShort(); - IterableNodeHashTable var9 = new IterableNodeHashTable(var8 > 0 ? WorldMapIcon_1.method1401(var8) : 1); - var1.switches[var7] = var9; - - while (var8-- > 0) { - int var10 = var2.readInt(); - int var11 = var2.readInt(); - var9.put(new IntegerNode(var11), (long)var10); + static String method998(String var0, Widget var1) { + if (var0.indexOf("%") != -1) { + for (int var2 = 1; var2 <= 5; ++var2) { + while (true) { + int var3 = var0.indexOf("%" + var2); + if (var3 == -1) { + break; + } + + String var4 = var0.substring(0, var3); + int var6 = UserComparator4.method666(var1, var2 - 1); + String var5; + if (var6 < 999999999) { + var5 = Integer.toString(var6); + } else { + var5 = "*"; + } + + var0 = var4 + var5 + var0.substring(var3 + 2); } } } - var2.offset = 0; - var1.field817 = var2.readStringCp1252NullTerminatedOrNull(); - var1.opcodes = new int[var5]; - var1.intOperands = new int[var5]; - var1.stringOperands = new String[var5]; - - for (var7 = 0; var2.offset < var4; var1.opcodes[var7++] = var8) { - var8 = var2.readUnsignedShort(); - if (var8 == 3) { - var1.stringOperands[var7] = var2.readStringCp1252NullTerminated(); - } else if (var8 < 100 && var8 != 21 && var8 != 38 && var8 != 39) { - var1.intOperands[var7] = var2.readInt(); - } else { - var1.intOperands[var7] = var2.readUnsignedByte(); - } - } - - return var1; + return var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/HorizontalAlignment.java b/osrs/src/main/java/HorizontalAlignment.java index 0a56bc7b9..347ac11d4 100644 --- a/osrs/src/main/java/HorizontalAlignment.java +++ b/osrs/src/main/java/HorizontalAlignment.java @@ -3,30 +3,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("he") +@ObfuscatedName("hq") @Implements("HorizontalAlignment") -public enum HorizontalAlignment implements class371 { - @ObfuscatedName("au") +public enum HorizontalAlignment implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lhe;" + descriptor = "Lhq;" ) - field1574(0, 0), - @ObfuscatedName("ae") + field1521(0, 0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lhe;" + descriptor = "Lhq;" ) @Export("HorizontalAlignment_centered") HorizontalAlignment_centered(2, 1), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lhe;" + descriptor = "Lhq;" ) - field1573(1, 2); + field1520(1, 2); - @ObfuscatedName("at") + @ObfuscatedName("kt") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("mapDotSprites") + static SpritePixels[] mapDotSprites; + @ObfuscatedName("ao") @Export("value") public final int value; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("id") final int id; @@ -35,70 +41,66 @@ public enum HorizontalAlignment implements class371 { this.id = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("au") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Llb;I)V", - garbageValue = "819955380" + descriptor = "(I)Lld;", + garbageValue = "-863810784" ) - public static void method975(class311 var0) { - class305.field2778.remove(var0); - } + public static PacketBufferNode method931() { + PacketBufferNode var0; + if (PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0) { + var0 = new PacketBufferNode(); + } else { + var0 = PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; + } - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "2133819886" - ) - public static String method977(String var0) { - return var0 != null && !var0.isEmpty() && var0.charAt(0) != '#' ? var0 : ""; + var0.clientPacket = null; + var0.clientPacketLength = 0; + var0.packetBuffer = new PacketBuffer(5000); + return var0; } @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "36" + descriptor = "(III)I", + garbageValue = "1945756897" ) - @Export("Messages_getHistorySize") - static int Messages_getHistorySize(int var0) { - ChatChannel var1 = (ChatChannel)Messages.Messages_channels.get(var0); - return var1 == null ? 0 : var1.size(); + public static int method932(int var0, int var1) { + int var2 = var0 >>> 31; + return (var0 + var2) / var1 - var2; } - @ObfuscatedName("oh") + @ObfuscatedName("mq") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZB)Ljava/lang/String;", - garbageValue = "2" + descriptor = "(Lnn;III)V", + garbageValue = "-79973183" ) - static String method978(String var0, boolean var1) { - String var2 = var1 ? "https://" : "http://"; - if (Client.gameBuild == 1) { - var0 = var0 + "-wtrc"; - } else if (Client.gameBuild == 2) { - var0 = var0 + "-wtqa"; - } else if (Client.gameBuild == 3) { - var0 = var0 + "-wtwip"; - } else if (Client.gameBuild == 5) { - var0 = var0 + "-wti"; - } else if (Client.gameBuild == 4) { - var0 = "local"; - } + @Export("clickWidget") + static final void clickWidget(Widget var0, int var1, int var2) { + if (Client.clickedWidget == null && !Client.isMenuOpen) { + if (var0 != null && ArchiveDiskAction.method1911(var0) != null) { + Client.clickedWidget = var0; + Client.clickedWidgetParent = ArchiveDiskAction.method1911(var0); + Client.widgetClickX = var1; + Client.widgetClickY = var2; + class148.widgetDragDuration = 0; + Client.isDraggingWidget = false; + int var3 = Client.menuOptionsCount - 1; + if (var3 != -1) { + PcmPlayer.method225(var3); + } - String var3 = ""; - if (MusicPatchPcmStream.param9 != null) { - var3 = "/p=" + MusicPatchPcmStream.param9; + } } - - String var4 = "runescape.com"; - return var2 + var0 + "." + var4 + "/l=" + ClanChannelMember.clientLanguage + "/a=" + WorldMapSectionType.field2416 + var3 + "/"; } } \ No newline at end of file diff --git a/osrs/src/main/java/Huffman.java b/osrs/src/main/java/Huffman.java index 05fdec341..e8a297eb7 100644 --- a/osrs/src/main/java/Huffman.java +++ b/osrs/src/main/java/Huffman.java @@ -3,16 +3,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mx") +@ObfuscatedName("nh") @Implements("Huffman") public class Huffman { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("masks") int[] masks; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("bits") byte[] bits; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("keys") int[] keys; @@ -41,7 +41,7 @@ public Huffman(byte[] var1) { for (var10 = var6 - 1; var10 >= 1; --var10) { var11 = var3[var10]; - if (var11 != var8) { + if (var8 != var11) { break; } @@ -99,10 +99,10 @@ public Huffman(byte[] var1) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "([BII[BII)I", - garbageValue = "-2112188877" + garbageValue = "938505450" ) @Export("compress") int compress(byte[] var1, int var2, int var3, byte[] var4, int var5) { @@ -150,10 +150,10 @@ int compress(byte[] var1, int var2, int var3, byte[] var4, int var5) { return (var7 + 7 >> 3) - var5; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "([BI[BIIB)I", - garbageValue = "23" + descriptor = "([BI[BIII)I", + garbageValue = "-725308504" ) @Export("decompress") int decompress(byte[] var1, int var2, byte[] var3, int var4, int var5) { @@ -294,18 +294,12 @@ int decompress(byte[] var1, int var2, byte[] var3, int var4, int var5) { } } - @ObfuscatedName("id") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ldr;I)V", - garbageValue = "-652382825" + descriptor = "(Ljava/lang/CharSequence;S)I", + garbageValue = "17247" ) - static final void method1853(Actor var0) { - int var1 = Math.max(1, var0.spotAnimation - Client.cycle); - int var2 = var0.field976 * 64 + var0.field1004 * 128; - int var3 = var0.field976 * 64 + var0.field1001 * 128; - var0.x += (var2 - var0.x) / var1; - var0.y += (var3 - var0.y) / var1; - var0.field1021 = 0; - var0.orientation = var0.exactMoveDirection; + public static int method1888(CharSequence var0) { + return NPC.method580(var0, 10, true); } } \ No newline at end of file diff --git a/osrs/src/main/java/IgnoreList.java b/osrs/src/main/java/IgnoreList.java index 1e59d9aea..b47580739 100644 --- a/osrs/src/main/java/IgnoreList.java +++ b/osrs/src/main/java/IgnoreList.java @@ -3,64 +3,66 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qq") +@ObfuscatedName("qs") @Implements("IgnoreList") public class IgnoreList extends UserList { - @ObfuscatedName("ac") + @ObfuscatedName("ar") + static int field3815; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - final LoginType field3781; + final LoginType field3816; @ObfuscatedSignature( - descriptor = "(Lsl;)V" + descriptor = "(Ltt;)V" ) public IgnoreList(LoginType var1) { super(400); - this.field3781 = var1; + this.field3816 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lqs;", - garbageValue = "-1997275235" + descriptor = "(I)Lrf;", + garbageValue = "794695059" ) @Export("newInstance") User newInstance() { return new Ignored(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)[Lqs;", - garbageValue = "99" + descriptor = "(II)[Lrf;", + garbageValue = "-190310061" ) @Export("newTypedArray") User[] newTypedArray(int var1) { return new Ignored[var1]; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "974375681" + descriptor = "(Luj;IB)V", + garbageValue = "-24" ) @Export("read") public void read(Buffer var1, int var2) { while (var1.offset < var2) { int var3 = var1.readUnsignedByte(); if (var3 == 4) { - Username var4 = new Username(var1.readStringCp1252NullTerminated(), this.field3781); + Username var4 = new Username(var1.readStringCp1252NullTerminated(), this.field3816); if (!var4.hasCleanName()) { throw new IllegalStateException(); } boolean var5 = false; - class299.friendSystem.removeIgnore(var4.getName(), var5); + class12.friendSystem.removeIgnore(var4.getName(), var5); } else { boolean var9 = (var3 & 1) != 0; - Username var10 = new Username(var1.readStringCp1252NullTerminated(), this.field3781); - Username var6 = new Username(var1.readStringCp1252NullTerminated(), this.field3781); + Username var10 = new Username(var1.readStringCp1252NullTerminated(), this.field3816); + Username var6 = new Username(var1.readStringCp1252NullTerminated(), this.field3816); var1.readStringCp1252NullTerminated(); if (!var10.hasCleanName()) { throw new IllegalStateException(); @@ -90,709 +92,110 @@ public void read(Buffer var1, int var2) { } - @ObfuscatedName("lm") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIIILjava/lang/String;Ljava/lang/String;IIB)V", - garbageValue = "5" + descriptor = "(Lol;IIB)Luz;", + garbageValue = "-123" ) - @Export("menuAction") - static final void menuAction(int var0, int var1, int var2, int var3, int var4, String var5, String var6, int var7, int var8) { - if (var2 >= 2000) { - var2 -= 2000; - } - - NPC var9; - PacketBufferNode var10; - if (var2 == 9) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC1, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeShortAdd(var3); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 12) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC4, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } - } - - Player var14; - if (var2 == 45) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER2, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAddLE(var3); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 47) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER4, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAdd(var3); - var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - Widget var15; - if (var2 == 57 || var2 == 1007) { - var15 = SoundCache.getWidgetChild(var1, var0); - if (var15 != null) { - class47.widgetDefaultMenuAction(var3, var1, var0, var4, var6); - } - } - - PacketBufferNode var16; - if (var2 == 19) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJ2, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShort(class47.baseY + var1); - var16.packetBuffer.writeShortAddLE(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeIntME(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 1) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOCT, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAdd(class157.field1406); - var16.packetBuffer.writeInt(class138.field1306); - var16.packetBuffer.writeShort(WorldMapArea.field2343); - var16.packetBuffer.writeShortAddLE(var3); - var16.packetBuffer.writeShortAdd(class47.baseY + var1); - var16.packetBuffer.writeShortAdd(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var16); - } - - if (var2 == 13) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC5, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeIntME(var3); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 14) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPCU, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeIntLE(class138.field1306); - var10.packetBuffer.writeShortAdd(class157.field1406); - var10.packetBuffer.writeShortAdd(WorldMapArea.field2343); - var10.packetBuffer.writeShortAdd(var3); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 1002) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOCE, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAddLE(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 10) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC2, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeIntME(var3); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 1001) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC5, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAddLE(class47.baseY + var1); - var16.packetBuffer.writeIntME(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAdd(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 26) { - WorldMapIcon_1.method1402(); - } - - if (var2 == 8) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPCT, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeShortAdd(var3); - var10.packetBuffer.writeIntME(Client.selectedSpellItemId); - var10.packetBuffer.writeIntIME(ModeWhere.selectedSpellWidget); - var10.packetBuffer.writeShortAddLE(Client.selectedSpellChildIndex); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 18) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJ1, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAdd(var3); - var16.packetBuffer.writeShortAddLE(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShort(class47.baseY + var1); - Client.packetWriter.addNode(var16); - } - - if (var2 == 23) { - if (Client.isMenuOpen) { - class130.scene.setViewportWalking(); - } else { - class130.scene.menuOpen(HealthBar.Client_plane, var0, var1, true); - } - } - - PacketBufferNode var11; - if (var2 == 24) { - var15 = class92.getWidget(var1); - if (var15 != null) { - boolean var12 = true; - if (var15.contentType > 0) { - var12 = Bounds.method2290(var15); - } - - if (var12) { - var11 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2567, Client.packetWriter.isaacCipher); - var11.packetBuffer.writeInt(var1); - Client.packetWriter.addNode(var11); - } - } - } - - if (var2 == 11) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC3, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAddLE(var3); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 49) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER6, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAdd(var3); - var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 16) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.EXIT_FREECAM, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAddLE(class157.field1406); - var16.packetBuffer.writeIntME(var3); - var16.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAdd(WorldMapArea.field2343); - var16.packetBuffer.writeIntME(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShortAdd(class47.baseY + var1); - var16.packetBuffer.writeIntIME_(class138.field1306); - Client.packetWriter.addNode(var16); - } - - if (var2 == 2) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC6, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAddLE(var3); - var16.packetBuffer.writeShortAdd(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShort(class47.baseY + var1); - var16.packetBuffer.writeShortAddLE(Client.selectedSpellChildIndex); - var16.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAddLE(Client.selectedSpellItemId); - var16.packetBuffer.writeIntLE(ModeWhere.selectedSpellWidget); - Client.packetWriter.addNode(var16); - } - - if (var2 == 1008 || var2 == 1009 || var2 == 1010 || var2 == 1011 || var2 == 1012) { - Canvas.worldMap.worldMapMenuAction(var2, var3, new Coord(var0), new Coord(var1)); - } - - if (var2 == 6) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC4, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAdd(var3); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAdd(class47.baseY + var1); - var16.packetBuffer.writeIntLE(var0 + UrlRequester.baseX); - Client.packetWriter.addNode(var16); - } - - if (var2 == 21) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJ4, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeIntME(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShortAdd(class47.baseY + var1); - var16.packetBuffer.writeIntME(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 30 && Client.meslayerContinueWidget == null) { - class466.resumePauseWidget(var1, var0); - Client.meslayerContinueWidget = SoundCache.getWidgetChild(var1, var0); - class218.invalidateWidget(Client.meslayerContinueWidget); - } - - if (var2 == 15) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYERT, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAdd(Client.selectedSpellChildIndex); - var10.packetBuffer.writeIntME(Client.selectedSpellItemId); - var10.packetBuffer.writeIntIME(ModeWhere.selectedSpellWidget); - var10.packetBuffer.writeIntME(var3); - var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - int var13; - Widget var17; - if (var2 == 28) { - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2567, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeInt(var1); - Client.packetWriter.addNode(var16); - var17 = class92.getWidget(var1); - if (var17 != null && var17.cs1Instructions != null && var17.cs1Instructions[0][0] == 5) { - var13 = var17.cs1Instructions[0][1]; - Varps.Varps_main[var13] = 1 - Varps.Varps_main[var13]; - WorldMapDecoration.changeGameOptions(var13); - } - } - - if (var2 == 48) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER5, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAdd(var3); - var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 4) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC2, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShort(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShort(class47.baseY + var1); - var16.packetBuffer.writeIntME(var3); - var16.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var16); - } - - if (var2 == 29) { - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2567, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeInt(var1); - Client.packetWriter.addNode(var16); - var17 = class92.getWidget(var1); - if (var17 != null && var17.cs1Instructions != null && var17.cs1Instructions[0][0] == 5) { - var13 = var17.cs1Instructions[0][1]; - if (Varps.Varps_main[var13] != var17.cs1ComparisonValues[0]) { - Varps.Varps_main[var13] = var17.cs1ComparisonValues[0]; - WorldMapDecoration.changeGameOptions(var13); - } - } + @Export("SpriteBuffer_getSprite") + public static SpritePixels SpriteBuffer_getSprite(AbstractArchive var0, int var1, int var2) { + byte[] var4 = var0.takeFile(var1, var2); + boolean var3; + if (var4 == null) { + var3 = false; + } else { + class162.SpriteBuffer_decode(var4); + var3 = true; } - if (var2 == 1003) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - var9 = Client.npcs[var3]; - if (var9 != null) { - NPCComposition var18 = var9.definition; - if (var18.transforms != null) { - var18 = var18.transform(); - } + return !var3 ? null : WorldMapCacheName.method1353(); + } - if (var18 != null) { - var11 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPCE, Client.packetWriter.isaacCipher); - var11.packetBuffer.writeShortAdd(var18.id); - Client.packetWriter.addNode(var11); + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(IIIIB)V", + garbageValue = "35" + ) + static void method2206(int var0, int var1, int var2, int var3) { + for (ObjectSound var4 = (ObjectSound)ObjectSound.objectSounds.last(); var4 != null; var4 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var4.soundEffectId != -1 || var4.soundEffectIds != null) { + int var5 = 0; + if (var1 > var4.maxX) { + var5 += var1 - var4.maxX; + } else if (var1 < var4.x) { + var5 += var4.x - var1; } - } - } - - if (var2 == 44) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER1, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAddLE(var3); - var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 1004) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJE, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShort(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShortAddLE(var3); - var16.packetBuffer.writeIntME(class47.baseY + var1); - Client.packetWriter.addNode(var16); - } - if (var2 == 46) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER3, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByte(var3); - var10.packetBuffer.writeShort(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 22) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJ5, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShortAddLE(var0 + UrlRequester.baseX); - var16.packetBuffer.writeShort(class47.baseY + var1); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 58) { - var15 = SoundCache.getWidgetChild(var1, var0); - if (var15 != null) { - if (var15.field3076 != null) { - ScriptEvent var19 = new ScriptEvent(); - var19.widget = var15; - var19.opIndex = var3; - var19.targetName = var6; - var19.args = var15.field3076; - WorldMapSection1.runScriptEvent(var19); + if (var2 > var4.maxY) { + var5 += var2 - var4.maxY; + } else if (var2 < var4.y) { + var5 += var4.y - var2; } - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTONT, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeShortAdd(Client.selectedSpellItemId); - var10.packetBuffer.writeShort(var0); - var10.packetBuffer.writeShortAddLE(Client.selectedSpellChildIndex); - var10.packetBuffer.writeShort(var4); - var10.packetBuffer.writeIntIME(ModeWhere.selectedSpellWidget); - var10.packetBuffer.writeIntIME_(var1); - Client.packetWriter.addNode(var10); - } - } - - if (var2 == 5) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC3, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShort(var3); - var16.packetBuffer.writeShortAddLE(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShort(class47.baseY + var1); - Client.packetWriter.addNode(var16); - } - - if (var2 == 50) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER7, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeIntME(var3); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); - } - } + if (var5 - 64 <= var4.field691 && WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() != 0 && var0 == var4.plane) { + var5 -= 64; + if (var5 < 0) { + var5 = 0; + } - if (var2 == 25) { - var15 = SoundCache.getWidgetChild(var1, var0); - if (var15 != null) { - InvDefinition.Widget_runOnTargetLeave(); - DirectByteArrayCopier.selectSpell(var1, var0, HealthBarDefinition.Widget_unpackTargetMask(NewShit.getWidgetFlags(var15)), var4); - Client.isItemSelected = 0; - Client.field600 = class300.Widget_getSpellActionName(var15); - if (Client.field600 == null) { - Client.field600 = "null"; - } + int var6 = (var4.field691 - var5) * WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() / var4.field691; + if (var4.stream1 == null) { + if (var4.soundEffectId >= 0) { + SoundEffect var7 = SoundEffect.readSoundEffect(Language.field3643, var4.soundEffectId, 0); + if (var7 != null) { + RawSound var8 = var7.toRawSound().resample(class521.decimator); + RawPcmStream var9 = RawPcmStream.createRawPcmStream(var8, 100, var6); + var9.setNumLoops(-1); + LoginScreenAnimation.pcmStreamMixer.addSubStream(var9); + var4.stream1 = var9; + } + } + } else { + var4.stream1.method252(var6); + } - if (var15.isIf3) { - Client.field601 = var15.dataText + MoveSpeed.colorStartTag(16777215); + if (var4.stream2 == null) { + if (var4.soundEffectIds != null && (var4.field699 -= var3) <= 0) { + int var11 = (int)(Math.random() * (double)var4.soundEffectIds.length); + SoundEffect var12 = SoundEffect.readSoundEffect(Language.field3643, var4.soundEffectIds[var11], 0); + if (var12 != null) { + RawSound var13 = var12.toRawSound().resample(class521.decimator); + RawPcmStream var10 = RawPcmStream.createRawPcmStream(var13, 100, var6); + var10.setNumLoops(0); + LoginScreenAnimation.pcmStreamMixer.addSubStream(var10); + var4.stream2 = var10; + var4.field699 = var4.field700 + (int)(Math.random() * (double)(var4.field696 - var4.field700)); + } + } + } else { + var4.stream2.method252(var6); + if (!var4.stream2.hasNext()) { + var4.stream2 = null; + } + } } else { - Client.field601 = MoveSpeed.colorStartTag(65280) + var15.field3097 + MoveSpeed.colorStartTag(16777215); - } - } - - } else { - if (var2 == 17) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPOBJT, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeIntME(var0 + UrlRequester.baseX); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAdd(Client.selectedSpellItemId); - var16.packetBuffer.writeShortAddLE(Client.selectedSpellChildIndex); - var16.packetBuffer.writeIntIME(ModeWhere.selectedSpellWidget); - var16.packetBuffer.writeShortAdd(class47.baseY + var1); - var16.packetBuffer.writeShortAdd(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 20) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPNPC6, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeIntME(class47.baseY + var1); - var16.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAddLE(var3); - var16.packetBuffer.writeIntME(var0 + UrlRequester.baseX); - Client.packetWriter.addNode(var16); - } - - if (var2 == 3) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var16 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPLOC1, Client.packetWriter.isaacCipher); - var16.packetBuffer.writeShort(var0 + UrlRequester.baseX); - var16.packetBuffer.writeIntME(class47.baseY + var1); - var16.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var16.packetBuffer.writeShortAddLE(var3); - Client.packetWriter.addNode(var16); - } - - if (var2 == 51) { - var14 = Client.players[var3]; - if (var14 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER8, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - var10.packetBuffer.writeShortAdd(var3); - Client.packetWriter.addNode(var10); - } - } + if (var4.stream1 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var4.stream1); + var4.stream1 = null; + } - if (var2 == 7) { - var9 = Client.npcs[var3]; - if (var9 != null) { - Client.mouseCrossX = var7; - Client.mouseCrossY = var8; - Client.mouseCrossColor = 2; - Client.mouseCrossState = 0; - Client.destinationX = var0; - Client.destinationY = var1; - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYERU, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeIntME(WorldMapArea.field2343); - var10.packetBuffer.writeIntME(class157.field1406); - var10.packetBuffer.writeIntLE(class138.field1306); - var10.packetBuffer.writeIntME(var3); - var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); - Client.packetWriter.addNode(var10); + if (var4.stream2 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var4.stream2); + var4.stream2 = null; + } } } - - if (Client.isItemSelected != 0) { - Client.isItemSelected = 0; - class218.invalidateWidget(class92.getWidget(class138.field1306)); - } - - if (Client.isSpellSelected) { - InvDefinition.Widget_runOnTargetLeave(); - } - } + } - @ObfuscatedName("oq") + @ObfuscatedName("my") @ObfuscatedSignature( - descriptor = "(IS)Ltx;", - garbageValue = "-11165" + descriptor = "(ZB)V", + garbageValue = "-24" ) - static class506 method2190(int var0) { - class506 var1 = (class506)Client.Widget_cachedFonts.get((long)var0); - if (var1 == null) { - var1 = new class506(class343.field3148, var0); - } - - return var1; + @Export("setTapToDrop") + static void setTapToDrop(boolean var0) { + Client.tapToDrop = var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/Ignored.java b/osrs/src/main/java/Ignored.java index fac65f9c5..dbe2549fc 100644 --- a/osrs/src/main/java/Ignored.java +++ b/osrs/src/main/java/Ignored.java @@ -3,30 +3,30 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qu") +@ObfuscatedName("rr") @Implements("Ignored") public class Ignored extends User { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; Ignored() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqu;I)I", - garbageValue = "-1019476190" + descriptor = "(Lrr;I)I", + garbageValue = "-987193014" ) @Export("compareTo_ignored") int compareTo_ignored(Ignored var1) { return this.id - var1.id; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lqs;I)I", - garbageValue = "1756748027" + descriptor = "(Lrf;B)I", + garbageValue = "-95" ) @Export("compareTo_user") public int compareTo_user(User var1) { @@ -37,77 +37,4 @@ public int compareTo_user(User var1) { public int compareTo(Object var1) { return this.compareTo_ignored((Ignored)var1); } - - @ObfuscatedName("kp") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "44" - ) - static final void method2249() { - for (PendingSpawn var0 = (PendingSpawn)Client.pendingSpawns.last(); var0 != null; var0 = (PendingSpawn)Client.pendingSpawns.previous()) { - if (var0.endCycle > 0) { - --var0.endCycle; - } - - boolean var1; - int var2; - int var3; - ObjectComposition var4; - if (var0.endCycle == 0) { - if (var0.objectId >= 0) { - var2 = var0.objectId; - var3 = var0.field956; - var4 = WorldMapElement.getObjectDefinition(var2); - if (var3 == 11) { - var3 = 10; - } - - if (var3 >= 5 && var3 <= 8) { - var3 = 4; - } - - var1 = var4.method1040(var3); - if (!var1) { - continue; - } - } - - WorldMap.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.objectId, var0.field948, var0.field956, var0.field945); - var0.remove(); - } else { - if (var0.startCycle > 0) { - --var0.startCycle; - } - - if (var0.startCycle == 0 && var0.x >= 1 && var0.y >= 1 && var0.x <= 102 && var0.y <= 102) { - if (var0.id >= 0) { - var2 = var0.id; - var3 = var0.objectType; - var4 = WorldMapElement.getObjectDefinition(var2); - if (var3 == 11) { - var3 = 10; - } - - if (var3 >= 5 && var3 <= 8) { - var3 = 4; - } - - var1 = var4.method1040(var3); - if (!var1) { - continue; - } - } - - WorldMap.addPendingSpawnToScene(var0.plane, var0.type, var0.x, var0.y, var0.id, var0.rotation, var0.objectType, var0.field945); - var0.startCycle = -1; - if (var0.id == var0.objectId && var0.objectId == -1) { - var0.remove(); - } else if (var0.id == var0.objectId && var0.rotation == var0.field948 && var0.field956 == var0.objectType) { - var0.remove(); - } - } - } - } - - } } \ No newline at end of file diff --git a/osrs/src/main/java/IndexedSprite.java b/osrs/src/main/java/IndexedSprite.java index 2aabed072..01b0b3cd3 100644 --- a/osrs/src/main/java/IndexedSprite.java +++ b/osrs/src/main/java/IndexedSprite.java @@ -2,38 +2,35 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("uk") +@ObfuscatedName("up") @Implements("IndexedSprite") public final class IndexedSprite extends Rasterizer2D { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("pixels") public byte[] pixels; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("palette") public int[] palette; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("subWidth") public int subWidth; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("subHeight") public int subHeight; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("xOffset") public int xOffset; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("yOffset") public int yOffset; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("width") public int width; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("height") public int height; - IndexedSprite() { - } - - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("normalize") public void normalize() { if (this.subWidth != this.width || this.subHeight != this.height) { @@ -54,7 +51,7 @@ public void normalize() { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("shiftColors") public void shiftColors(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.palette.length; ++var4) { @@ -87,7 +84,7 @@ public void shiftColors(int var1, int var2, int var3) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("drawAt") public void drawAt(int var1, int var2) { var1 += this.xOffset; @@ -133,8 +130,8 @@ public void drawAt(int var1, int var2) { } } - @ObfuscatedName("ac") - public void method2654(int var1, int var2, int var3, int var4) { + @ObfuscatedName("ab") + public void method2671(int var1, int var2, int var3, int var4) { int var5 = this.subWidth; int var6 = this.subHeight; int var7 = 0; @@ -195,7 +192,7 @@ public void method2654(int var1, int var2, int var3, int var4) { IndexedSprite_something(Rasterizer2D.Rasterizer2D_pixels, this.pixels, this.palette, var7, var8, var13, var14, var3, var4, var11, var12, var5); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("IndexedSprite_two") static void IndexedSprite_two(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8) { int var9 = -(var5 >> 2); @@ -249,7 +246,7 @@ static void IndexedSprite_two(int[] var0, byte[] var1, int[] var2, int var3, int } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("IndexedSprite_something") static void IndexedSprite_something(int[] var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { int var12 = var3; diff --git a/osrs/src/main/java/Instrument.java b/osrs/src/main/java/Instrument.java index 9bdcc6fcf..d901b273e 100644 --- a/osrs/src/main/java/Instrument.java +++ b/osrs/src/main/java/Instrument.java @@ -11,106 +11,106 @@ public class Instrument { @ObfuscatedName("am") @Export("Instrument_samples") static int[] Instrument_samples; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("Instrument_noise") static int[] Instrument_noise; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("Instrument_sine") static int[] Instrument_sine; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("Instrument_phases") static int[] Instrument_phases; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("Instrument_delays") static int[] Instrument_delays; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("Instrument_volumeSteps") static int[] Instrument_volumeSteps; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("Instrument_pitchSteps") static int[] Instrument_pitchSteps; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("Instrument_pitchBaseSteps") static int[] Instrument_pitchBaseSteps; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("pitch") SoundEnvelope pitch; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("volume") SoundEnvelope volume; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("pitchModifier") SoundEnvelope pitchModifier; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("pitchModifierAmplitude") SoundEnvelope pitchModifierAmplitude; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("volumeMultiplier") SoundEnvelope volumeMultiplier; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("volumeMultiplierAmplitude") SoundEnvelope volumeMultiplierAmplitude; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("release") SoundEnvelope release; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("attack") SoundEnvelope attack; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("oscillatorVolume") int[] oscillatorVolume; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("oscillatorPitch") int[] oscillatorPitch; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("oscillatorDelays") int[] oscillatorDelays; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("delayTime") int delayTime; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("delayDecay") int delayDecay; - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Lcr;" + descriptor = "Lci;" ) @Export("filter") AudioFilter filter; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lbr;" + descriptor = "Lbh;" ) @Export("filterEnvelope") SoundEnvelope filterEnvelope; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("duration") int duration; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("offset") int offset; @@ -147,10 +147,10 @@ public class Instrument { this.offset = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("synthesize") final int[] synthesize(int var1, int var2) { - class409.clearIntArray(Instrument_samples, 0, var1); + class421.clearIntArray(Instrument_samples, 0, var1); if (var2 < 10) { return Instrument_samples; } else { @@ -355,7 +355,7 @@ final int[] synthesize(int var1, int var2) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("evaluateWave") final int evaluateWave(int var1, int var2, int var3) { if (var3 == 1) { @@ -369,9 +369,9 @@ final int evaluateWave(int var1, int var2, int var3) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) @Export("decode") final void decode(Buffer var1) { @@ -423,6 +423,6 @@ final void decode(Buffer var1) { this.offset = var1.readUnsignedShort(); this.filter = new AudioFilter(); this.filterEnvelope = new SoundEnvelope(); - this.filter.method320(var1, this.filterEnvelope); + this.filter.method328(var1, this.filterEnvelope); } } \ No newline at end of file diff --git a/osrs/src/main/java/IntHashTable.java b/osrs/src/main/java/IntHashTable.java index e8b46fae8..ddb004dad 100644 --- a/osrs/src/main/java/IntHashTable.java +++ b/osrs/src/main/java/IntHashTable.java @@ -3,10 +3,10 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("uz") +@ObfuscatedName("vh") @Implements("IntHashTable") public class IntHashTable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("array") int[] array; @@ -32,10 +32,10 @@ public IntHashTable(int[] var1) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1742890609" + garbageValue = "-2036964375" ) @Export("get") public int get(int var1) { diff --git a/osrs/src/main/java/IntegerNode.java b/osrs/src/main/java/IntegerNode.java index 504fe53a4..bf648077b 100644 --- a/osrs/src/main/java/IntegerNode.java +++ b/osrs/src/main/java/IntegerNode.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("sz") +@ObfuscatedName("sy") @Implements("IntegerNode") public class IntegerNode extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("integer") public int integer; diff --git a/osrs/src/main/java/InterfaceParent.java b/osrs/src/main/java/InterfaceParent.java index 5adf6d30b..38117d748 100644 --- a/osrs/src/main/java/InterfaceParent.java +++ b/osrs/src/main/java/InterfaceParent.java @@ -3,158 +3,51 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ds") +@ObfuscatedName("dc") @Implements("InterfaceParent") public class InterfaceParent extends Node { - @ObfuscatedName("au") + @ObfuscatedName("gd") + static String field862; + @ObfuscatedName("ty") + static boolean field861; + @ObfuscatedName("at") @Export("group") int group; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("type") int type; - @ObfuscatedName("ao") - boolean field858; + @ObfuscatedName("ar") + boolean field863; InterfaceParent() { - this.field858 = false; + this.field863 = false; } - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIIII)I", - garbageValue = "1893248685" + descriptor = "(Lmf;I)V", + garbageValue = "-919285791" ) - public static int method473(int var0, int var1, int var2, int var3, int var4, int var5) { - if ((var5 & 1) == 1) { - int var6 = var3; - var3 = var4; - var4 = var6; - } - - var2 &= 3; - if (var2 == 0) { - return var1; - } else if (var2 == 1) { - return 7 - var0 - (var3 - 1); - } else { - return var2 == 2 ? 7 - var1 - (var4 - 1) : var0; - } + public static void method462(class322 var0) { + class316.field2793.remove(var0); } - @ObfuscatedName("ap") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-612957518" + descriptor = "(I)I", + garbageValue = "-1759271664" ) - static int method474(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 >= 2000) { - var0 -= 1000; - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } else { - var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - } - - class218.invalidateWidget(var3); - int var4; - int var5; - if (var0 != 1200 && var0 != 1205 && var0 != 1212) { - if (var0 == 1201) { - var3.modelType = 2; - var3.modelId = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - return 1; - } else if (var0 == 1202) { - var3.modelType = 3; - var3.modelId = VarbitComposition.localPlayer.appearance.getChatHeadId(); - return 1; - } else if (var0 == 1207) { - boolean var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class160.method846(var3, VarbitComposition.localPlayer.appearance, var7); - return 1; - } else if (var0 == 1208) { - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3.field3101 == null) { - throw new RuntimeException(""); - } else { - ReflectionCheck.method174(var3, var4); - return 1; - } - } else if (var0 == 1209) { - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (var3.field3101 == null) { - throw new RuntimeException(""); - } else { - Tiles.method460(var3, var4, var5); - return 1; - } - } else if (var0 == 1210) { - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3.field3101 == null) { - throw new RuntimeException(""); - } else { - class135.method742(var3, VarbitComposition.localPlayer.appearance.field2916, var4); - return 1; - } - } else { - return 2; - } - } else { - SoundCache.Interpreter_intStackSize -= 2; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var3.itemId = var4; - var3.itemQuantity = var5; - ItemComposition var6 = InvDefinition.ItemDefinition_get(var4); - var3.modelAngleX = var6.xan2d; - var3.modelAngleY = var6.yan2d; - var3.modelAngleZ = var6.zan2d; - var3.modelOffsetX = var6.offsetX2d; - var3.modelOffsetY = var6.offsetY2d; - var3.modelZoom = var6.zoom2d; - if (var0 == 1205) { - var3.itemQuantityMode = 0; - } else if (var0 == 1212 | var6.isStackable == 1) { - var3.itemQuantityMode = 1; - } else { - var3.itemQuantityMode = 2; - } - - if (var3.modelRotation > 0) { - var3.modelZoom = var3.modelZoom * 32 / var3.modelRotation; - } else if (var3.rawWidth > 0) { - var3.modelZoom = var3.modelZoom * 32 / var3.rawWidth; - } - - return 1; - } + public static int method463() { + return ++MouseHandler.MouseHandler_idleCycles - 1; } - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-104" - ) - static int method476(int var0, Script var1, boolean var2) { - if (var0 == 7463) { - boolean var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - SecureRandomFuture.method444(var3); - return 1; - } else { - return 2; - } - } - - @ObfuscatedName("jg") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-59" + garbageValue = "94" ) - static void method475() { - if (Client.combatTargetPlayerIndex >= 0 && Client.players[Client.combatTargetPlayerIndex] != null) { - class92.addPlayerToScene(Client.players[Client.combatTargetPlayerIndex], false); - } - + public static void method464() { + NPCComposition.NpcDefinition_cached.clear(); + NPCComposition.NpcDefinition_cachedModels.clear(); } } \ No newline at end of file diff --git a/osrs/src/main/java/Interpreter.java b/osrs/src/main/java/Interpreter.java index 7db486ee0..567df3592 100644 --- a/osrs/src/main/java/Interpreter.java +++ b/osrs/src/main/java/Interpreter.java @@ -2,56 +2,67 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import netscape.js.JSObject; import java.util.ArrayList; -import java.util.Date; -@ObfuscatedName("cb") +@ObfuscatedName("cc") @Implements("Interpreter") public class Interpreter { - @ObfuscatedName("ac") - @Export("Interpreter_stringLocals") - static String[] Interpreter_stringLocals; - @ObfuscatedName("ai") + @ObfuscatedName("ao") + @Export("Interpreter_intLocals") + static int[] Interpreter_intLocals; + @ObfuscatedName("ab") + @Export("Tiles_overlays") + static short[][][] Tiles_overlays; + @ObfuscatedName("au") @Export("Interpreter_arrayLengths") static int[] Interpreter_arrayLengths; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("Interpreter_arrays") static int[][] Interpreter_arrays; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("Interpreter_intStack") static int[] Interpreter_intStack; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("Interpreter_stringStack") static String[] Interpreter_stringStack; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("Interpreter_frameDepth") static int Interpreter_frameDepth; - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "[Lcv;" + descriptor = "[Lcs;" ) @Export("Interpreter_frames") static ScriptFrame[] Interpreter_frames; - @ObfuscatedName("an") - static int[] field710; - @ObfuscatedName("ax") + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "Lnn;" + ) + @Export("scriptDotWidget") + static Widget scriptDotWidget; + @ObfuscatedName("aq") @Export("Interpreter_calendar") static java.util.Calendar Interpreter_calendar; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("Interpreter_MONTHS") static final String[] Interpreter_MONTHS; - @ObfuscatedName("ay") - static boolean field705; - @ObfuscatedName("aj") - static boolean field704; - @ObfuscatedName("av") - static ArrayList field715; - @ObfuscatedName("aw") - static int field708; - @ObfuscatedName("bk") + @ObfuscatedName("ae") + static boolean field702; + @ObfuscatedName("an") + static boolean field703; + @ObfuscatedName("ag") + static ArrayList field712; + @ObfuscatedName("ad") + static int field705; + @ObfuscatedName("bl") static final double field717; + @ObfuscatedName("of") + @ObfuscatedSignature( + descriptor = "Lnn;" + ) + @Export("mousedOverWidgetIf1") + static Widget mousedOverWidgetIf1; static { Interpreter_arrayLengths = new int[5]; @@ -62,477 +73,700 @@ public class Interpreter { Interpreter_frames = new ScriptFrame[50]; Interpreter_calendar = java.util.Calendar.getInstance(); Interpreter_MONTHS = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; - field705 = false; - field704 = false; - field715 = new ArrayList(); - field708 = 0; + field702 = false; + field703 = false; + field712 = new ArrayList(); + field705 = 0; field717 = Math.log(2.0D); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)[B", - garbageValue = "-1581379999" + descriptor = "(Luo;II)V", + garbageValue = "593247130" ) - static byte[] method418(String var0) { - boolean var1 = true; - boolean var2 = true; - int var3 = "pattern".length(); - int var4 = 0; - byte[] var5 = new byte[8]; - - while (true) { - int var6 = var4 + var3; - if (var6 >= var0.length()) { - return null; + @Export("updatePlayers") + static final void updatePlayers(PacketBuffer var0, int var1) { + int var2 = var0.offset; + Players.Players_pendingUpdateCount = 0; + class221.method1120(var0); + + for (int var3 = 0; var3 < Players.Players_pendingUpdateCount; ++var3) { + int var4 = Players.Players_pendingUpdateIndices[var3]; + Player var5 = Client.players[var4]; + int var6 = var0.readUnsignedByte(); + if ((var6 & 128) != 0) { + var6 += var0.readUnsignedByte() << 8; + } + + if ((var6 & 16384) != 0) { + var6 += var0.readUnsignedByte() << 16; + } + + byte var7 = MoveSpeed.STATIONARY.speed; + if ((var6 & 512) != 0) { + var7 = var0.readByteSub(); + } + + if ((var6 & 1024) != 0) { + MoveSpeed[] var8 = Players.playerMovementSpeeds; + MoveSpeed[] var10 = new MoveSpeed[]{MoveSpeed.WALK, MoveSpeed.STATIONARY, MoveSpeed.CRAWL, MoveSpeed.RUN}; + var8[var4] = (MoveSpeed)class12.findEnumerated(var10, var0.readByteNeg()); } - char var7 = var0.charAt(var6); - if (var7 == ':') { - if (var4 == 0) { - return null; + if ((var6 & 4) != 0) { + var5.movingOrientation = var0.readUnsignedShort(); + if (var5.pathLength == 0) { + var5.orientation = var5.movingOrientation; + var5.method515(); + } + } + + if ((var6 & 4096) != 0) { + var5.field1013 = var0.readByteNeg(); + var5.field1012 = var0.readByteNeg(); + var5.field1024 = var0.readByte(); + var5.field1010 = var0.readByteNeg(); + var5.spotAnimation = var0.readUnsignedShort() + Client.cycle; + var5.exactMoveArrive1Cycle = var0.readUnsignedShort() + Client.cycle; + var5.exactMoveDirection = var0.readUnsignedShort(); + if (var5.hasMovementPending) { + var5.field1013 += var5.tileX; + var5.field1012 += var5.tileY; + var5.field1024 += var5.tileX; + var5.field1010 += var5.tileY; + var5.pathLength = 0; + } else { + var5.field1013 += var5.pathX[0]; + var5.field1012 += var5.pathY[0]; + var5.field1024 += var5.pathX[0]; + var5.field1010 += var5.pathY[0]; + var5.pathLength = 1; } - byte[] var8 = new byte[var4]; - System.arraycopy(var5, 0, var8, 0, var4); - return var8; + var5.field1029 = 0; } - if (var5.length == var4) { - return null; + int var23; + if ((var6 & 8192) != 0) { + for (var23 = 0; var23 < 3; ++var23) { + var5.actions[var23] = var0.readStringCp1252NullTerminated(); + } } - if (var7 >= '0' && var7 <= '9') { - var7 = (char)(var7 - '0'); - } else { - if (var7 < 'a' || var7 > 'z') { - return null; + int var9; + int var13; + int var14; + int var24; + if ((var6 & 2048) != 0) { + var23 = var0.readUnsignedShortAddLE(); + var9 = var23 >> 8; + var24 = var9 >= 13 && var9 <= 20 ? var9 - 12 : 0; + PlayerType var11 = (PlayerType)class12.findEnumerated(class320.PlayerType_values(), var0.readUnsignedByteAdd()); + boolean var12 = var0.readUnsignedByte() == 1; + var13 = var0.readUnsignedByte(); + var14 = var0.offset; + if (var5.username != null && var5.appearance != null) { + boolean var15 = false; + if (var11.isUser && class12.friendSystem.isIgnored(var5.username)) { + var15 = true; + } + + if (!var15 && Client.field479 == 0 && !var5.isHidden) { + Players.field1126.offset = 0; + var0.method2618(Players.field1126.array, 0, var13); + Players.field1126.offset = 0; + String var16 = AbstractFont.escapeBrackets(class20.method77(class128.readString(Players.field1126))); + var5.overheadText = var16.trim(); + var5.field1005 = var23 >> 8; + var5.field1003 = var23 & 255; + var5.overheadTextCyclesRemaining = 150; + byte[] var17 = null; + if (var24 > 0 && var24 <= 8) { + var17 = new byte[var24]; + + for (int var18 = 0; var18 < var24; ++var18) { + var17[var18] = var0.readByte(); + } + } + + byte[] var20 = var17; + int[] var19; + if (var17 != null && var17.length != 0 && var17.length <= 8) { + int[] var21 = new int[var17.length]; + int var22 = 0; + + while (true) { + if (var22 >= var20.length) { + var19 = var21; + break; + } + + if (var20[var22] < 0 || var20[var22] > class550.field4316.length) { + var19 = null; + break; + } + + var21[var22] = class550.field4316[var20[var22]]; + ++var22; + } + } else { + var19 = null; + } + + var5.field1030 = var19; + var5.isAutoChatting = var12; + var5.showPublicPlayerChat = var5 != class229.localPlayer && var11.isUser && !Client.field600.isEmpty() && var16.toLowerCase().indexOf(Client.field600) == -1; + int var26; + if (var11.isPrivileged) { + var26 = var12 ? 91 : 1; + } else { + var26 = var12 ? 90 : 2; + } + + if (var11.modIcon != -1) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var26, FloorUnderlayDefinition.addImageTag(var11.modIcon) + var5.username.getName(), var16); + } else { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var26, var5.username.getName(), var16); + } + } } - var7 = (char)(var7 - 'W'); + var0.offset = var24 + var13 + var14; } - var5[var4++] = (byte)var7; - } - } + int var27; + int var32; + if ((var6 & 65536) != 0) { + var23 = var0.readUnsignedByteNeg(); - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-4" - ) - public static int method417(int var0) { - long var2 = ViewportMouse.ViewportMouse_entityTags[var0]; - int var1 = (int)(var2 >>> 0 & 127L); - return var1; - } + for (var9 = 0; var9 < var23; ++var9) { + var24 = var0.readUnsignedByteSub(); + var27 = var0.readUnsignedShort(); + var32 = var0.readUnsignedIntIME(); + var5.updateSpotAnimation(var24, var27, var32 >> 16, var32 & 65535); + } + } - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-86107696" - ) - static int method419(int var0, Script var1, boolean var2) { - if (var0 == 5630) { - Client.logoutTimer = 250; - return 1; - } else { - return 2; + if ((var6 & 32) != 0) { + var5.overheadText = var0.readStringCp1252NullTerminated(); + if (var5.overheadText.charAt(0) == '~') { + var5.overheadText = var5.overheadText.substring(1); + GrandExchangeOfferUnitPriceComparator.addGameMessage(2, var5.username.getName(), var5.overheadText); + } else if (var5 == class229.localPlayer) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(2, var5.username.getName(), var5.overheadText); + } + + var5.isAutoChatting = false; + var5.field1005 = 0; + var5.field1003 = 0; + var5.overheadTextCyclesRemaining = 150; + } + + int var34; + if ((var6 & 16) != 0) { + var23 = var0.readUnsignedByteAdd(); + if (var23 > 0) { + for (var9 = 0; var9 < var23; ++var9) { + var27 = -1; + var32 = -1; + var13 = -1; + var24 = var0.readUShortSmart(); + if (var24 == 32767) { + var24 = var0.readUShortSmart(); + var32 = var0.readUShortSmart(); + var27 = var0.readUShortSmart(); + var13 = var0.readUShortSmart(); + } else if (var24 != 32766) { + var32 = var0.readUShortSmart(); + } else { + var24 = -1; + } + + var14 = var0.readUShortSmart(); + var5.addHitSplat(var24, var32, var27, var13, Client.cycle, var14); + } + } + + var9 = var0.readUnsignedByte(); + if (var9 > 0) { + for (var24 = 0; var24 < var9; ++var24) { + var27 = var0.readUShortSmart(); + var32 = var0.readUShortSmart(); + if (var32 != 32767) { + var13 = var0.readUShortSmart(); + var14 = var0.readUnsignedByteAdd(); + var34 = var32 > 0 ? var0.readUnsignedByteNeg() : var14; + var5.addHealthBar(var27, Client.cycle, var32, var13, var14, var34); + } else { + var5.removeHealthBar(var27); + } + } + } + } + + if ((var6 & 2) != 0) { + var23 = var0.readUnsignedByteAdd(); + byte[] var28 = new byte[var23]; + Buffer var31 = new Buffer(var28); + var0.method2617(var28, 0, var23); + Players.cachedAppearanceBuffer[var4] = var31; + var5.read(var31); + } + + if ((var6 & 1) != 0) { + var23 = var0.readUnsignedShortAddLE(); + if (var23 == 65535) { + var23 = -1; + } + + var9 = var0.readUnsignedByteSub(); + WorldMapLabelSize.performPlayerAnimation(var5, var23, var9); + } + + if ((var6 & 64) != 0) { + var5.targetIndex = var0.readUnsignedShort(); + var5.targetIndex += var0.readUnsignedByteNeg() << 16; + var23 = 16777215; + if (var23 == var5.targetIndex) { + var5.targetIndex = -1; + } + } + + if ((var6 & 8) != 0) { + var23 = var0.readUnsignedShortLE(); + PlayerType var36 = (PlayerType)class12.findEnumerated(class320.PlayerType_values(), var0.readUnsignedByteSub()); + boolean var35 = var0.readUnsignedByteAdd() == 1; + var27 = var0.readUnsignedByte(); + var32 = var0.offset; + if (var5.username != null && var5.appearance != null) { + boolean var33 = false; + if (var36.isUser && class12.friendSystem.isIgnored(var5.username)) { + var33 = true; + } + + if (!var33 && Client.field479 == 0 && !var5.isHidden) { + Players.field1126.offset = 0; + var0.readBytes(Players.field1126.array, 0, var27); + Players.field1126.offset = 0; + String var29 = AbstractFont.escapeBrackets(class20.method77(class128.readString(Players.field1126))); + var5.overheadText = var29.trim(); + var5.field1005 = var23 >> 8; + var5.field1003 = var23 & 255; + var5.overheadTextCyclesRemaining = 150; + var5.field1030 = null; + var5.isAutoChatting = var35; + var5.showPublicPlayerChat = var5 != class229.localPlayer && var36.isUser && !Client.field600.isEmpty() && var29.toLowerCase().indexOf(Client.field600) == -1; + if (var36.isPrivileged) { + var34 = var35 ? 91 : 1; + } else { + var34 = var35 ? 90 : 2; + } + + if (var36.modIcon != -1) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var34, FloorUnderlayDefinition.addImageTag(var36.modIcon) + var5.username.getName(), var29); + } else { + GrandExchangeOfferUnitPriceComparator.addGameMessage(var34, var5.username.getName(), var29); + } + } + } + + var0.offset = var27 + var32; + } + + if ((var6 & 256) != 0) { + var5.recolourStartCycle = Client.cycle + var0.readUnsignedShortLE(); + var5.recolourEndCycle = Client.cycle + var0.readUnsignedShortAddLE(); + var5.recolourHue = var0.readByteAdd(); + var5.recolourSaturation = var0.readByteNeg(); + var5.recolourLuminance = var0.readByteSub(); + var5.recolourAmount = (byte)var0.readUnsignedByteNeg(); + } + + if (var5.hasMovementPending) { + if (var7 == 127) { + var5.resetPath(var5.tileX, var5.tileY); + } else { + MoveSpeed var30; + if (var7 != MoveSpeed.STATIONARY.speed) { + MoveSpeed[] var37 = new MoveSpeed[]{MoveSpeed.WALK, MoveSpeed.STATIONARY, MoveSpeed.CRAWL, MoveSpeed.RUN}; + var30 = (MoveSpeed)class12.findEnumerated(var37, var7); + } else { + var30 = Players.playerMovementSpeeds[var4]; + } + + var5.move(var5.tileX, var5.tileY, var30); + } + } + } + + if (var0.offset - var2 != var1) { + throw new RuntimeException(var0.offset - var2 + " " + var1); } } - @ObfuscatedName("be") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-752327040" + descriptor = "(IIIIIILkf;Liw;B)V", + garbageValue = "-87" ) - static int method420(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 6600) { - var3 = HealthBar.Client_plane; - int var9 = (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX; - int var5 = (VarbitComposition.localPlayer.y >> 7) + class47.baseY; - class227.getWorldMap().method2394(var3, var9, var5, true); - return 1; - } else { - WorldMapArea var11; - if (var0 == 6601) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - String var16 = ""; - var11 = class227.getWorldMap().getMapArea(var3); - if (var11 != null) { - var16 = var11.getExternalName(); - } + @Export("addObjects") + static final void addObjects(int var0, int var1, int var2, int var3, int var4, int var5, Scene var6, CollisionMap var7) { + if (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var1][var2] & 2) != 0 || (Tiles.Tiles_renderFlags[var0][var1][var2] & 16) == 0) { + if (var0 < Tiles.Tiles_minPlane) { + Tiles.Tiles_minPlane = var0; + } - Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var16; - return 1; - } else if (var0 == 6602) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class227.getWorldMap().setCurrentMapAreaId(var3); - return 1; - } else if (var0 == 6603) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getZoomLevel(); - return 1; - } else if (var0 == 6604) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class227.getWorldMap().setZoomPercentage(var3); - return 1; - } else if (var0 == 6605) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().isCacheLoaded() ? 1 : 0; - return 1; + ObjectComposition var8 = WorldMapSection2.getObjectDefinition(var3); + int var9; + int var10; + if (var4 != 1 && var4 != 3) { + var9 = var8.sizeX; + var10 = var8.sizeY; } else { - Coord var15; - if (var0 == 6606) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - class227.getWorldMap().setWorldMapPositionTarget(var15.x, var15.y); - return 1; - } else if (var0 == 6607) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - class227.getWorldMap().setWorldMapPositionTargetInstant(var15.x, var15.y); - return 1; - } else if (var0 == 6608) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - class227.getWorldMap().jumpToSourceCoord(var15.plane, var15.x, var15.y); - return 1; - } else if (var0 == 6609) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - class227.getWorldMap().jumpToSourceCoordInstant(var15.plane, var15.x, var15.y); - return 1; - } else if (var0 == 6610) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getDisplayX(); - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getDisplayY(); - return 1; - } else { - WorldMapArea var13; - if (var0 == 6611) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = class227.getWorldMap().getMapArea(var3); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; + var9 = var8.sizeY; + var10 = var8.sizeX; + } + + int var11; + int var12; + if (var9 + var1 <= 104) { + var11 = (var9 >> 1) + var1; + var12 = (var9 + 1 >> 1) + var1; + } else { + var11 = var1; + var12 = var1 + 1; + } + + int var13; + int var14; + if (var10 + var2 <= 104) { + var13 = (var10 >> 1) + var2; + var14 = var2 + (var10 + 1 >> 1); + } else { + var13 = var2; + var14 = var2 + 1; + } + + int[][] var15 = Tiles.Tiles_heights[var0]; + int var16 = var15[var12][var14] + var15[var11][var13] + var15[var12][var13] + var15[var11][var14] >> 2; + int var17 = (var1 << 7) + (var9 << 6); + int var18 = (var2 << 7) + (var10 << 6); + long var19 = Player.calculateTag(var1, var2, 2, var8.int1 == 0, var3); + int var21 = var5 + (var4 << 6); + if (var8.int3 == 1) { + var21 += 256; + } + + if (var8.hasSound()) { + UrlRequester.method648(var0, var1, var2, var8, var4); + } + + Object var22; + if (var5 == 22) { + if (!Client.isLowDetail || var8.int1 != 0 || var8.interactType == 1 || var8.boolean2) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(22, var4, var15, var17, var16, var18); + } else { + var22 = new DynamicObject(var3, 22, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newFloorDecoration(var0, var1, var2, var16, (Renderable)var22, var19, var21); + if (var8.interactType == 1 && var7 != null) { + var7.setBlockedByFloorDec(var1, var2); + } + + } + } else { + int var31; + if (var5 != 10 && var5 != 11) { + int[] var10000; + if (var5 >= 12) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(var5, var4, var15, var17, var16, var18); } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getOrigin().packed(); + var22 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); } - return 1; - } else if (var0 == 6612) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = class227.getWorldMap().getMapArea(var3); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (var13.getRegionHighX() - var13.getRegionLowX() + 1) * 64; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (var13.getRegionHighY() - var13.getRegionLowY() + 1) * 64; + var6.method1467(var0, var1, var2, var16, 1, 1, (Renderable)var22, 0, var19, var21); + if (var5 >= 12 && var5 <= 17 && var5 != 13 && var0 > 0) { + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 2340; } - return 1; - } else if (var0 == 6613) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = class227.getWorldMap().getMapArea(var3); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getRegionLowX() * 64; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getRegionLowY() * 64; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getRegionHighX() * 64 + 64 - 1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getRegionHighY() * 64 + 64 - 1; + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); } - return 1; - } else if (var0 == 6614) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = class227.getWorldMap().getMapArea(var3); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; + } else if (var5 == 0) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(0, var4, var15, var17, var16, var18); } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getZoom(); + var22 = new DynamicObject(var3, 0, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); } - return 1; - } else if (var0 == 6615) { - var15 = class227.getWorldMap().getDisplayCoord(); - if (var15 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var15.x; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var15.y; + var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field849[var4], 0, var19, var21); + if (var4 == 0) { + if (var8.clipped) { + class93.field948[var0][var1][var2] = 50; + class93.field948[var0][var1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 585; + } + } else if (var4 == 1) { + if (var8.clipped) { + class93.field948[var0][var1][var2 + 1] = 50; + class93.field948[var0][var1 + 1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = class344.field3130[var0][var1]; + var10000[1 + var2] |= 1170; + } + } else if (var4 == 2) { + if (var8.clipped) { + class93.field948[var0][var1 + 1][var2] = 50; + class93.field948[var0][var1 + 1][var2 + 1] = 50; + } + + if (var8.modelClipped) { + var10000 = class344.field3130[var0][var1 + 1]; + var10000[var2] |= 585; + } + } else if (var4 == 3) { + if (var8.clipped) { + class93.field948[var0][var1][var2] = 50; + class93.field948[var0][var1 + 1][var2] = 50; + } + + if (var8.modelClipped) { + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 1170; + } } - return 1; - } else if (var0 == 6616) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().currentMapAreaId(); - return 1; - } else if (var0 == 6617) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - var13 = class227.getWorldMap().getCurrentMapArea(); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - return 1; + if (var8.interactType != 0 && var7 != null) { + var7.method1137(var1, var2, var5, var4, var8.boolean1); + } + + if (var8.int2 != 16) { + var6.method1473(var0, var1, var2, var8.int2); + } + + } else if (var5 == 1) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(1, var4, var15, var17, var16, var18); } else { - int[] var14 = var13.position(var15.plane, var15.x, var15.y); - if (var14 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var14[0]; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var14[1]; + var22 = new DynamicObject(var3, 1, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field847[var4], 0, var19, var21); + if (var8.clipped) { + if (var4 == 0) { + class93.field948[var0][var1][var2 + 1] = 50; + } else if (var4 == 1) { + class93.field948[var0][var1 + 1][var2 + 1] = 50; + } else if (var4 == 2) { + class93.field948[var0][var1 + 1][var2] = 50; + } else if (var4 == 3) { + class93.field948[var0][var1][var2] = 50; } + } - return 1; + if (var8.interactType != 0 && var7 != null) { + var7.method1137(var1, var2, var5, var4, var8.boolean1); } + } else { - Coord var7; - if (var0 == 6618) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - var13 = class227.getWorldMap().getCurrentMapArea(); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - return 1; + int var28; + if (var5 == 2) { + var28 = var4 + 1 & 3; + Object var23; + Object var24; + if (var8.animationId == -1 && var8.transforms == null) { + var23 = var8.getEntity(2, var4 + 4, var15, var17, var16, var18); + var24 = var8.getEntity(2, var28, var15, var17, var16, var18); } else { - var7 = var13.coord(var15.x, var15.y); - if (var7 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7.packed(); + var23 = new DynamicObject(var3, 2, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + var24 = new DynamicObject(var3, 2, var28, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var23, (Renderable)var24, Tiles.field849[var4], Tiles.field849[var28], var19, var21); + if (var8.modelClipped) { + if (var4 == 0) { + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 585; + var10000 = class344.field3130[var0][var1]; + var10000[var2 + 1] |= 1170; + } else if (var4 == 1) { + var10000 = class344.field3130[var0][var1]; + var10000[1 + var2] |= 1170; + var10000 = class344.field3130[var0][var1 + 1]; + var10000[var2] |= 585; + } else if (var4 == 2) { + var10000 = class344.field3130[var0][var1 + 1]; + var10000[var2] |= 585; + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 1170; + } else if (var4 == 3) { + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 1170; + var10000 = class344.field3130[var0][var1]; + var10000[var2] |= 585; + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method1137(var1, var2, var5, var4, var8.boolean1); + } + + if (var8.int2 != 16) { + var6.method1473(var0, var1, var2, var8.int2); + } + + } else if (var5 == 3) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(3, var4, var15, var17, var16, var18); + } else { + var22 = new DynamicObject(var3, 3, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field847[var4], 0, var19, var21); + if (var8.clipped) { + if (var4 == 0) { + class93.field948[var0][var1][var2 + 1] = 50; + } else if (var4 == 1) { + class93.field948[var0][var1 + 1][var2 + 1] = 50; + } else if (var4 == 2) { + class93.field948[var0][var1 + 1][var2] = 50; + } else if (var4 == 3) { + class93.field948[var0][var1][var2] = 50; } + } + + if (var8.interactType != 0 && var7 != null) { + var7.method1137(var1, var2, var5, var4, var8.boolean1); + } + + } else if (var5 == 9) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(var5, var4, var15, var17, var16, var18); + } else { + var22 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } - return 1; + var6.method1467(var0, var1, var2, var16, 1, 1, (Renderable)var22, 0, var19, var21); + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); } + + if (var8.int2 != 16) { + var6.method1473(var0, var1, var2, var8.int2); + } + + } else if (var5 == 4) { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(4, var4, var15, var17, var16, var18); + } else { + var22 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field849[var4], 0, 0, 0, var19, var21); } else { - Coord var12; - if (var0 == 6619) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var12 = new Coord(Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - class162.method854(var3, var12, false); - return 1; - } else if (var0 == 6620) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var12 = new Coord(Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - class162.method854(var3, var12, true); - return 1; - } else if (var0 == 6621) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var12 = new Coord(Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - var11 = class227.getWorldMap().getMapArea(var3); - if (var11 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; + Object var25; + long var29; + if (var5 == 5) { + var28 = 16; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (0L != var29) { + var28 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var29)).int2; + } + + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4, var15, var17, var16, var18); } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var11.containsCoord(var12.plane, var12.x, var12.y) ? 1 : 0; - return 1; + var25 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)null, Tiles.field849[var4], 0, var28 * Tiles.field850[var4], var28 * Tiles.field845[var4], var19, var21); + } else if (var5 == 6) { + var28 = 8; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (var29 != 0L) { + var28 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var29)).int2 / 2; } - } else if (var0 == 6622) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getDisplayWith(); - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getDisplayHeight(); - return 1; - } else if (var0 == 6623) { - var15 = new Coord(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - var13 = class227.getWorldMap().mapAreaAtCoord(var15.plane, var15.x, var15.y); - if (var13 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; + + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var13.getId(); + var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); } - return 1; - } else if (var0 == 6624) { - class227.getWorldMap().setMaxFlashCount(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return 1; - } else if (var0 == 6625) { - class227.getWorldMap().resetMaxFlashCount(); - return 1; - } else if (var0 == 6626) { - class227.getWorldMap().setCyclesPerFlash(Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return 1; - } else if (var0 == 6627) { - class227.getWorldMap().resetCyclesPerFlash(); - return 1; - } else { - boolean var10; - if (var0 == 6628) { - var10 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class227.getWorldMap().setPerpetualFlash(var10); - return 1; - } else if (var0 == 6629) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class227.getWorldMap().flashElement(var3); - return 1; - } else if (var0 == 6630) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class227.getWorldMap().flashCategory(var3); - return 1; - } else if (var0 == 6631) { - class227.getWorldMap().stopCurrentFlashes(); - return 1; - } else if (var0 == 6632) { - var10 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class227.getWorldMap().setElementsDisabled(var10); - return 1; + var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)null, 256, var4, var28 * Tiles.field848[var4], var28 * Tiles.field846[var4], var19, var21); + } else if (var5 == 7) { + var31 = var4 + 2 & 3; + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(4, var31 + 4, var15, var17, var16, var18); } else { - boolean var4; - if (var0 == 6633) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1] == 1; - class227.getWorldMap().disableElement(var3, var4); - return 1; - } else if (var0 == 6634) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1] == 1; - class227.getWorldMap().setCategoryDisabled(var3, var4); - return 1; - } else if (var0 == 6635) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().getElementsDisabled() ? 1 : 0; - return 1; - } else if (var0 == 6636) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().isElementDisabled(var3) ? 1 : 0; - return 1; - } else if (var0 == 6637) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class227.getWorldMap().isCategoryDisabled(var3) ? 1 : 0; - return 1; - } else if (var0 == 6638) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var12 = new Coord(Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - var7 = class227.getWorldMap().method2438(var3, var12); - if (var7 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7.packed(); - } - - return 1; - } else { - AbstractWorldMapIcon var8; - if (var0 == 6639) { - var8 = class227.getWorldMap().iconStart(); - if (var8 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.getElement(); - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.coord2.packed(); - } - - return 1; - } else if (var0 == 6640) { - var8 = class227.getWorldMap().iconNext(); - if (var8 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.getElement(); - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var8.coord2.packed(); - } - - return 1; - } else { - WorldMapElement var6; - if (var0 == 6693) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = class138.WorldMapElement_get(var3); - if (var6.name == null) { - Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } else { - Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var6.name; - } - - return 1; - } else if (var0 == 6694) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = class138.WorldMapElement_get(var3); - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.textSize; - return 1; - } else if (var0 == 6695) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = class138.WorldMapElement_get(var3); - if (var6 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.category; - } - - return 1; - } else if (var0 == 6696) { - var3 = Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var6 = class138.WorldMapElement_get(var3); - if (var6 == null) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6.sprite1; - } - - return 1; - } else if (var0 == 6697) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = GrandExchangeOfferOwnWorldComparator.worldMapEvent.mapElement; - return 1; - } else if (var0 == 6698) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = GrandExchangeOfferOwnWorldComparator.worldMapEvent.coord1.packed(); - return 1; - } else if (var0 == 6699) { - Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = GrandExchangeOfferOwnWorldComparator.worldMapEvent.coord2.packed(); - return 1; - } else { - return 2; - } - } - } + var22 = new DynamicObject(var3, 4, var31 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, 256, var31, 0, 0, var19, var21); + } else if (var5 == 8) { + var28 = 8; + var29 = var6.getBoundaryObjectTag(var0, var1, var2); + if (var29 != 0L) { + var28 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var29)).int2 / 2; } + + int var27 = var4 + 2 & 3; + Object var26; + if (var8.animationId == -1 && var8.transforms == null) { + var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); + var26 = var8.getEntity(4, var27 + 4, var15, var17, var16, var18); + } else { + var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + var26 = new DynamicObject(var3, 4, var27 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } + + var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)var26, 256, var4, var28 * Tiles.field848[var4], var28 * Tiles.field846[var4], var19, var21); } } } - } - } - } - } + } else { + if (var8.animationId == -1 && var8.transforms == null) { + var22 = var8.getEntity(10, var4, var15, var17, var16, var18); + } else { + var22 = new DynamicObject(var3, 10, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); + } - @ObfuscatedName("oy") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1076140788" - ) - static void method421(String var0) { - MusicPatchPcmStream.param9 = var0; - - try { - String var1 = class219.client.getParameter(Integer.toString(18)); - String var2 = class219.client.getParameter(Integer.toString(13)); - String var3 = var1 + "settings=" + var0 + "; version=1; path=/; domain=" + var2; - String var5; - if (var0.length() == 0) { - var3 = var3 + "; Expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0"; - } else { - String var4 = var3 + "; Expires="; - long var6 = GameEngine.clockNow() + 94608000000L; - Calendar.Calendar_calendar.setTime(new Date(var6)); - int var8 = Calendar.Calendar_calendar.get(7); - int var9 = Calendar.Calendar_calendar.get(5); - int var10 = Calendar.Calendar_calendar.get(2); - int var11 = Calendar.Calendar_calendar.get(1); - int var12 = Calendar.Calendar_calendar.get(11); - int var13 = Calendar.Calendar_calendar.get(12); - int var14 = Calendar.Calendar_calendar.get(13); - var5 = Calendar.DAYS_OF_THE_WEEK[var8 - 1] + ", " + var9 / 10 + var9 % 10 + "-" + Calendar.MONTH_NAMES_ENGLISH_GERMAN[0][var10] + "-" + var11 + " " + var12 / 10 + var12 % 10 + ":" + var13 / 10 + var13 % 10 + ":" + var14 / 10 + var14 % 10 + " GMT"; - var3 = var4 + var5 + "; Max-Age=" + 94608000L; - } + if (var22 != null && var6.method1467(var0, var1, var2, var16, var9, var10, (Renderable)var22, var5 == 11 ? 256 : 0, var19, var21) && var8.clipped) { + var31 = 15; + if (var22 instanceof Model) { + var31 = ((Model)var22).method1540() / 4; + if (var31 > 30) { + var31 = 30; + } + } - Client var16 = class219.client; - var5 = "document.cookie=\"" + var3 + "\""; - JSObject.getWindow(var16).eval(var5); - } catch (Throwable var15) { - } + for (int var32 = 0; var32 <= var9; ++var32) { + for (int var33 = 0; var33 <= var10; ++var33) { + if (var31 > class93.field948[var0][var32 + var1][var33 + var2]) { + class93.field948[var0][var32 + var1][var33 + var2] = (byte)var31; + } + } + } + } + + if (var8.interactType != 0 && var7 != null) { + var7.addGameObject(var1, var2, var9, var10, var8.boolean1); + } + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/InvDefinition.java b/osrs/src/main/java/InvDefinition.java index 8971c2791..0af106ef6 100644 --- a/osrs/src/main/java/InvDefinition.java +++ b/osrs/src/main/java/InvDefinition.java @@ -3,16 +3,22 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hh") +@ObfuscatedName("gz") @Implements("InvDefinition") public class InvDefinition extends DualNode { - @ObfuscatedName("ae") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("InvDefinition_archive") + public static AbstractArchive InvDefinition_archive; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("InvDefinition_cached") - static EvictingDualNodeHashTable InvDefinition_cached; - @ObfuscatedName("ao") + public static EvictingDualNodeHashTable InvDefinition_cached; + @ObfuscatedName("ar") @Export("size") public int size; @@ -24,10 +30,10 @@ public class InvDefinition extends DualNode { this.size = 0; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-4" + descriptor = "(Luj;B)V", + garbageValue = "0" ) @Export("decode") void decode(Buffer var1) { @@ -41,10 +47,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1263853199" + descriptor = "(Luj;II)V", + garbageValue = "-472687960" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -54,139 +60,38 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)I", - garbageValue = "-329385926" - ) - public static int method937(CharSequence var0) { - int var1 = var0.length(); - int var2 = 0; - - for (int var3 = 0; var3 < var1; ++var3) { - char var4 = var0.charAt(var3); - if (var4 <= 127) { - ++var2; - } else if (var4 <= 2047) { - var2 += 2; - } else { - var2 += 3; - } - } - - return var2; - } - - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Lhn;", - garbageValue = "1028115024" + descriptor = "(Lol;Lol;S)V", + garbageValue = "1000" ) - @Export("ItemDefinition_get") - public static ItemComposition ItemDefinition_get(int var0) { - ItemComposition var1 = (ItemComposition)ItemComposition.ItemDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = class384.ItemDefinition_archive.takeFile(10, var0); - var1 = new ItemComposition(); - var1.id = var0; - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - var1.post(); - if (var1.noteTemplate != -1) { - var1.genCert(ItemDefinition_get(var1.noteTemplate), ItemDefinition_get(var1.note)); - } - - if (var1.notedId != -1) { - var1.genBought(ItemDefinition_get(var1.notedId), ItemDefinition_get(var1.unnotedId)); - } - - if (var1.placeholderTemplate != -1) { - var1.genPlaceholder(ItemDefinition_get(var1.placeholderTemplate), ItemDefinition_get(var1.placeholder)); - } - - if (!ItemComposition.ItemDefinition_inMembersWorld && var1.isMembersOnly) { - if (var1.noteTemplate == -1 && var1.notedId == -1 && var1.placeholderTemplate == -1) { - var1.name = var1.name + " (Members)"; - } - - var1.isTradable = false; - - int var3; - for (var3 = 0; var3 < var1.groundActions.length; ++var3) { - var1.groundActions[var3] = null; - } - - for (var3 = 0; var3 < var1.inventoryActions.length; ++var3) { - if (var3 != 4) { - var1.inventoryActions[var3] = null; - } - } - - var1.shiftClickIndex = -2; - var1.team = 0; - if (var1.params != null) { - boolean var6 = false; - - for (Node var4 = var1.params.first(); var4 != null; var4 = var1.params.next()) { - ParamComposition var5 = ObjTypeCustomisation.getParamDefinition((int)var4.key); - if (var5.autoDisable) { - var4.remove(); - } else { - var6 = true; - } - } - - if (!var6) { - var1.params = null; - } - } - } - - ItemComposition.ItemDefinition_cached.put(var1, (long)var0); - return var1; - } + public static void method879(AbstractArchive var0, AbstractArchive var1) { + KitDefinition.KitDefinition_archive = var0; + KitDefinition.KitDefinition_modelsArchive = var1; + class348.KitDefinition_fileCount = KitDefinition.KitDefinition_archive.getGroupFileCount(3); } @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIB)I", - garbageValue = "-115" + descriptor = "(I)V", + garbageValue = "264426483" ) - public static int method940(int var0, int var1, int var2) { - int var3 = Projectile.method430(var2 - var1 + 1); - var3 <<= var1; - return var0 & ~var3; + public static void method877() { + class173.e4.clear(); } - @ObfuscatedName("ac") - @Export("Entity_unpackID") - public static int Entity_unpackID(long var0) { - return (int)(var0 >>> 17 & 4294967295L); - } - - @ObfuscatedName("lw") + @ObfuscatedName("ny") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-95" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "-103" ) - @Export("Widget_runOnTargetLeave") - static void Widget_runOnTargetLeave() { - if (Client.isSpellSelected) { - Widget var0 = SoundCache.getWidgetChild(ModeWhere.selectedSpellWidget, Client.selectedSpellChildIndex); - if (var0 != null && var0.onTargetLeave != null) { - ScriptEvent var1 = new ScriptEvent(); - var1.widget = var0; - var1.args = var0.onTargetLeave; - WorldMapSection1.runScriptEvent(var1); - } - - Client.selectedSpellItemId = -1; - Client.isSpellSelected = false; - class218.invalidateWidget(var0); + @Export("clanKickUser") + static final void clanKickUser(String var0) { + if (class20.friendsChat != null) { + PacketBufferNode var1 = class113.getPacketBufferNode(ClientPacket.CLAN_KICKUSER, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); } } } \ No newline at end of file diff --git a/osrs/src/main/java/IsaacCipher.java b/osrs/src/main/java/IsaacCipher.java index c8fea7524..be4c848f8 100644 --- a/osrs/src/main/java/IsaacCipher.java +++ b/osrs/src/main/java/IsaacCipher.java @@ -3,25 +3,25 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ux") +@ObfuscatedName("uy") @Implements("IsaacCipher") public final class IsaacCipher { - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("valuesRemaining") int valuesRemaining; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("results") int[] results; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("mm") int[] mm; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("aa") int aa; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("bb") int bb; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("cc") int cc; @@ -33,13 +33,13 @@ public IsaacCipher(int[] var1) { this.results[var2] = var1[var2]; } - this.method2693(); + this.method2710(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-66287514" + descriptor = "(B)I", + garbageValue = "72" ) @Export("nextInt") public final int nextInt() { @@ -51,12 +51,12 @@ public final int nextInt() { return this.results[--this.valuesRemaining]; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1374032282" + garbageValue = "-1756863806" ) - public final int method2691() { + public final int method2708() { if (this.valuesRemaining == 0) { this.generateMoreResults(); this.valuesRemaining = 256; @@ -65,10 +65,10 @@ public final int method2691() { return this.results[this.valuesRemaining - 1]; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1084555952" + descriptor = "(B)V", + garbageValue = "-1" ) @Export("generateMoreResults") final void generateMoreResults() { @@ -88,7 +88,7 @@ final void generateMoreResults() { this.aa ^= this.aa >>> 16; } - this.aa += this.mm[var1 + 128 & 255]; + this.aa += this.mm[128 + var1 & 255]; int var3; 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; @@ -96,12 +96,12 @@ final void generateMoreResults() { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "4" + descriptor = "(I)V", + garbageValue = "1303649759" ) - final void method2693() { + final void method2710() { int var9 = -1640531527; int var8 = -1640531527; int var7 = -1640531527; diff --git a/osrs/src/main/java/ItemComposition.java b/osrs/src/main/java/ItemComposition.java index 3c54b952e..0fa083a62 100644 --- a/osrs/src/main/java/ItemComposition.java +++ b/osrs/src/main/java/ItemComposition.java @@ -3,191 +3,189 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hn") +@ObfuscatedName("hv") @Implements("ItemComposition") public class ItemComposition extends DualNode { - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("ItemDefinition_modelArchive") public static AbstractArchive ItemDefinition_modelArchive; - @ObfuscatedName("ap") - @Export("ItemDefinition_inMembersWorld") - public static boolean ItemDefinition_inMembersWorld; - @ObfuscatedName("aa") - static int[] field1768; - @ObfuscatedName("af") + @ObfuscatedName("al") + @Export("ItemDefinition_fileCount") + public static int ItemDefinition_fileCount; + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ItemDefinition_cached") public static EvictingDualNodeHashTable ItemDefinition_cached; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) - @Export("ItemDefinition_cachedModels") - public static EvictingDualNodeHashTable ItemDefinition_cachedModels; - @ObfuscatedName("aq") + @Export("HealthBarDefinition_cachedSprites") + public static EvictingDualNodeHashTable HealthBarDefinition_cachedSprites; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ItemDefinition_cachedSprites") public static EvictingDualNodeHashTable ItemDefinition_cachedSprites; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("id") int id; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("model") int model; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("name") public String name; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("recolorFrom") public short[] recolorFrom; @ObfuscatedName("am") @Export("recolorTo") public short[] recolorTo; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("retextureFrom") public short[] retextureFrom; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("retextureTo") public short[] retextureTo; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("zoom2d") public int zoom2d; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("xan2d") public int xan2d; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("yan2d") public int yan2d; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("zan2d") public int zan2d; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("offsetX2d") public int offsetX2d; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("offsetY2d") public int offsetY2d; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("isStackable") public int isStackable; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("price") public int price; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("maleModel") public int maleModel; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("maleModel1") public int maleModel1; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("maleModel2") public int maleModel2; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("isMembersOnly") public boolean isMembersOnly; @ObfuscatedName("bm") @Export("groundActions") public String[] groundActions; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("inventoryActions") public String[] inventoryActions; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("shiftClickIndex") int shiftClickIndex; - @ObfuscatedName("bl") + @ObfuscatedName("bn") @Export("femaleModel") int femaleModel; - @ObfuscatedName("bp") + @ObfuscatedName("bo") @Export("femaleModel1") int femaleModel1; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("femaleOffset") int femaleOffset; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("maleHeadModel") int maleHeadModel; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("maleHeadModel2") int maleHeadModel2; - @ObfuscatedName("br") - int field1779; - @ObfuscatedName("be") + @ObfuscatedName("bh") + int field1724; + @ObfuscatedName("bz") @Export("femaleModel2") int femaleModel2; - @ObfuscatedName("bi") + @ObfuscatedName("bc") @Export("femaleHeadModel") int femaleHeadModel; - @ObfuscatedName("bz") + @ObfuscatedName("bs") @Export("femaleHeadModel2") int femaleHeadModel2; @ObfuscatedName("bx") - int field1782; - @ObfuscatedName("bn") - int field1776; - @ObfuscatedName("bw") - int field1781; - @ObfuscatedName("bc") + int field1732; + @ObfuscatedName("bb") + int field1722; + @ObfuscatedName("bk") + int field1726; + @ObfuscatedName("br") @Export("countobj") int[] countobj; - @ObfuscatedName("bg") + @ObfuscatedName("bq") @Export("countco") int[] countco; - @ObfuscatedName("cw") + @ObfuscatedName("cf") @Export("note") public int note; - @ObfuscatedName("cf") + @ObfuscatedName("cg") @Export("noteTemplate") public int noteTemplate; - @ObfuscatedName("cm") + @ObfuscatedName("cv") @Export("resizeX") int resizeX; - @ObfuscatedName("cn") + @ObfuscatedName("cx") @Export("resizeY") int resizeY; - @ObfuscatedName("cs") + @ObfuscatedName("cp") @Export("resizeZ") int resizeZ; - @ObfuscatedName("cx") - public int field1812; - @ObfuscatedName("cr") - public int field1809; - @ObfuscatedName("cd") + @ObfuscatedName("ce") + public int field1756; + @ObfuscatedName("ci") + public int field1759; + @ObfuscatedName("ct") @Export("team") public int team; - @ObfuscatedName("ce") - public int field1806; + @ObfuscatedName("cw") + public int field1763; @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("params") IterableNodeHashTable params; - @ObfuscatedName("cp") + @ObfuscatedName("cl") @Export("isTradable") public boolean isTradable; - @ObfuscatedName("cv") + @ObfuscatedName("cs") @Export("unnotedId") int unnotedId; @ObfuscatedName("co") @Export("notedId") int notedId; - @ObfuscatedName("cl") + @ObfuscatedName("cm") @Export("placeholder") public int placeholder; - @ObfuscatedName("cu") + @ObfuscatedName("cn") @Export("placeholderTemplate") public int placeholderTemplate; static { ItemDefinition_cached = new EvictingDualNodeHashTable(64); - ItemDefinition_cachedModels = new EvictingDualNodeHashTable(50); + HealthBarDefinition_cachedSprites = new EvictingDualNodeHashTable(50); ItemDefinition_cachedSprites = new EvictingDualNodeHashTable(200); } @@ -213,22 +211,22 @@ public class ItemComposition extends DualNode { this.femaleOffset = 0; this.maleHeadModel = -1; this.maleHeadModel2 = -1; - this.field1779 = 0; + this.field1724 = 0; this.femaleModel2 = -1; this.femaleHeadModel = -1; this.femaleHeadModel2 = -1; - this.field1782 = -1; - this.field1776 = -1; - this.field1781 = -1; + this.field1732 = -1; + this.field1722 = -1; + this.field1726 = -1; this.note = -1; this.noteTemplate = -1; this.resizeX = 128; this.resizeY = 128; this.resizeZ = 128; - this.field1812 = 0; - this.field1809 = 0; + this.field1756 = 0; + this.field1759 = 0; this.team = 0; - this.field1806 = 0; + this.field1763 = 0; this.isTradable = false; this.unnotedId = -1; this.notedId = -1; @@ -236,23 +234,23 @@ public class ItemComposition extends DualNode { this.placeholderTemplate = -1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "864940411" + garbageValue = "1127699243" ) @Export("post") void post() { if (this.isStackable == 1) { - this.field1806 = 0; + this.field1763 = 0; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "3" + descriptor = "(Luj;I)V", + garbageValue = "1081544822" ) @Export("decode") void decode(Buffer var1) { @@ -266,10 +264,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "628173380" + descriptor = "(Luj;IS)V", + garbageValue = "321" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -312,7 +310,7 @@ void decodeNext(Buffer var1, int var2) { this.femaleModel1 = var1.readUnsignedShort(); } else if (var2 == 25) { this.maleHeadModel = var1.readUnsignedShort(); - this.field1779 = var1.readUnsignedByte(); + this.field1724 = var1.readUnsignedByte(); } else if (var2 == 26) { this.maleHeadModel2 = var1.readUnsignedShort(); } else if (var2 == 27) { @@ -350,7 +348,7 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 65) { this.isTradable = true; } else if (var2 == 75) { - this.field1806 = var1.readShort(); + this.field1763 = var1.readShort(); } else if (var2 == 78) { this.femaleModel2 = var1.readUnsignedShort(); } else if (var2 == 79) { @@ -358,11 +356,11 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 90) { this.femaleHeadModel2 = var1.readUnsignedShort(); } else if (var2 == 91) { - this.field1776 = var1.readUnsignedShort(); + this.field1722 = var1.readUnsignedShort(); } else if (var2 == 92) { - this.field1782 = var1.readUnsignedShort(); + this.field1732 = var1.readUnsignedShort(); } else if (var2 == 93) { - this.field1781 = var1.readUnsignedShort(); + this.field1726 = var1.readUnsignedShort(); } else if (var2 == 94) { var1.readUnsignedShort(); } else if (var2 == 95) { @@ -386,9 +384,9 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 112) { this.resizeZ = var1.readUnsignedShort(); } else if (var2 == 113) { - this.field1812 = var1.readByte(); + this.field1756 = var1.readByte(); } else if (var2 == 114) { - this.field1809 = var1.readByte() * 5; + this.field1759 = var1.readByte() * 5; } else if (var2 == 115) { this.team = var1.readUnsignedByte(); } else if (var2 == 139) { @@ -400,16 +398,16 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 149) { this.placeholderTemplate = var1.readUnsignedShort(); } else if (var2 == 249) { - this.params = Decimator.readStringIntParameters(var1, this.params); + this.params = class144.readStringIntParameters(var1, this.params); } } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lhn;Lhn;B)V", - garbageValue = "-46" + descriptor = "(Lhv;Lhv;I)V", + garbageValue = "672457360" ) @Export("genCert") void genCert(ItemComposition var1, ItemComposition var2) { @@ -430,10 +428,10 @@ void genCert(ItemComposition var1, ItemComposition var2) { this.isStackable = 1; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lhn;Lhn;B)V", - garbageValue = "-88" + descriptor = "(Lhv;Lhv;B)V", + garbageValue = "0" ) @Export("genBought") void genBought(ItemComposition var1, ItemComposition var2) { @@ -461,12 +459,12 @@ void genBought(ItemComposition var1, ItemComposition var2) { this.maleHeadModel2 = var2.maleHeadModel2; this.femaleHeadModel = var2.femaleHeadModel; this.femaleHeadModel2 = var2.femaleHeadModel2; - this.field1782 = var2.field1782; - this.field1776 = var2.field1776; - this.field1781 = var2.field1781; + this.field1732 = var2.field1732; + this.field1722 = var2.field1722; + this.field1726 = var2.field1726; this.team = var2.team; this.groundActions = var2.groundActions; - this.field1806 = var2.field1806; + this.field1763 = var2.field1763; this.inventoryActions = new String[5]; if (var2.inventoryActions != null) { for (int var3 = 0; var3 < 4; ++var3) { @@ -478,10 +476,10 @@ void genBought(ItemComposition var1, ItemComposition var2) { this.price = 0; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lhn;Lhn;I)V", - garbageValue = "-490617872" + descriptor = "(Lhv;Lhv;I)V", + garbageValue = "1710826520" ) @Export("genPlaceholder") void genPlaceholder(ItemComposition var1, ItemComposition var2) { @@ -503,10 +501,10 @@ void genPlaceholder(ItemComposition var1, ItemComposition var2) { this.isTradable = false; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(IB)Lic;", - garbageValue = "0" + descriptor = "(II)Lkq;", + garbageValue = "-1456114839" ) @Export("getModelData") public final ModelData getModelData(int var1) { @@ -521,7 +519,7 @@ public final ModelData getModelData(int var1) { } if (var2 != -1) { - return InvDefinition.ItemDefinition_get(var2).getModelData(1); + return class214.ItemDefinition_get(var2).getModelData(1); } } @@ -549,10 +547,10 @@ public final ModelData getModelData(int var1) { } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(II)Ljr;", - garbageValue = "220465503" + descriptor = "(II)Lka;", + garbageValue = "1125634368" ) @Export("getModel") public final Model getModel(int var1) { @@ -566,11 +564,11 @@ public final Model getModel(int var1) { } if (var2 != -1) { - return InvDefinition.ItemDefinition_get(var2).getModel(1); + return class214.ItemDefinition_get(var2).getModel(1); } } - Model var5 = (Model)ItemDefinition_cachedModels.get((long)this.id); + Model var5 = (Model)HealthBarDefinition_cachedSprites.get((long)this.id); if (var5 != null) { return var5; } else { @@ -595,18 +593,18 @@ public final Model getModel(int var1) { } } - var5 = var6.toModel(this.field1812 + 64, this.field1809 + 768, -50, -10, -50); + var5 = var6.toModel(this.field1756 + 64, this.field1759 + 768, -50, -10, -50); var5.isSingleTile = true; - ItemDefinition_cachedModels.put(var5, (long)this.id); + HealthBarDefinition_cachedSprites.put(var5, (long)this.id); return var5; } } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(II)Lhn;", - garbageValue = "-257318968" + descriptor = "(II)Lhv;", + garbageValue = "2013624500" ) @Export("getCountObj") public ItemComposition getCountObj(int var1) { @@ -620,19 +618,19 @@ public ItemComposition getCountObj(int var1) { } if (var2 != -1) { - return InvDefinition.ItemDefinition_get(var2); + return class214.ItemDefinition_get(var2); } } return this; } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(IB)Z", - garbageValue = "-106" + garbageValue = "0" ) - public final boolean method1061(int var1) { + public final boolean method1022(int var1) { int var2 = this.femaleModel; int var3 = this.femaleModel1; int var4 = this.femaleModel2; @@ -662,12 +660,12 @@ public final boolean method1061(int var1) { } } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(II)Lic;", - garbageValue = "768545854" + descriptor = "(IB)Lkq;", + garbageValue = "4" ) - public final ModelData method1062(int var1) { + public final ModelData method1023(int var1) { int var2 = this.femaleModel; int var3 = this.femaleModel1; int var4 = this.femaleModel2; @@ -697,8 +695,8 @@ public final ModelData method1062(int var1) { var5.changeOffset(0, this.femaleOffset, 0); } - if (var1 == 1 && this.field1779 != 0) { - var5.changeOffset(0, this.field1779, 0); + if (var1 == 1 && this.field1724 != 0) { + var5.changeOffset(0, this.field1724, 0); } int var9; @@ -718,17 +716,17 @@ public final ModelData method1062(int var1) { } } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-594458202" + garbageValue = "-1904060082" ) - public final boolean method1063(int var1) { + public final boolean method1024(int var1) { int var2 = this.femaleHeadModel2; - int var3 = this.field1782; + int var3 = this.field1732; if (var1 == 1) { - var2 = this.field1776; - var3 = this.field1781; + var2 = this.field1722; + var3 = this.field1726; } if (var2 == -1) { @@ -747,17 +745,17 @@ public final boolean method1063(int var1) { } } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(II)Lic;", - garbageValue = "1601057747" + descriptor = "(II)Lkq;", + garbageValue = "1718936593" ) - public final ModelData method1064(int var1) { + public final ModelData method1025(int var1) { int var2 = this.femaleHeadModel2; - int var3 = this.field1782; + int var3 = this.field1732; if (var1 == 1) { - var2 = this.field1776; - var3 = this.field1781; + var2 = this.field1722; + var3 = this.field1726; } if (var2 == -1) { @@ -787,20 +785,20 @@ public final ModelData method1064(int var1) { } } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(IIS)I", - garbageValue = "6798" + descriptor = "(IIB)I", + garbageValue = "20" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - return class14.method39(this.params, var1, var2); + return Player.method478(this.params, var1, var2); } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", - garbageValue = "693488201" + descriptor = "(ILjava/lang/String;B)Ljava/lang/String;", + garbageValue = "88" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { @@ -822,14 +820,14 @@ public String getStringParam(int var1, String var2) { @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-702688256" + descriptor = "(B)I", + garbageValue = "1" ) @Export("getShiftClickIndex") public int getShiftClickIndex() { if (this.shiftClickIndex != -1 && this.inventoryActions != null) { if (this.shiftClickIndex >= 0) { - return this.inventoryActions[this.shiftClickIndex] != null ? this.shiftClickIndex * -947919987 * -252831931 : -1; + return this.inventoryActions[this.shiftClickIndex] != null ? this.shiftClickIndex : -1; } else { return "Drop".equalsIgnoreCase(this.inventoryActions[4]) ? 4 : -1; } @@ -838,36 +836,58 @@ public int getShiftClickIndex() { } } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-2125931156" + descriptor = "(B)Z", + garbageValue = "-121" ) @Export("hasRecolor") boolean hasRecolor() { return this.recolorTo != null; } - @ObfuscatedName("as") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-889947333" + descriptor = "(B)Z", + garbageValue = "-67" ) @Export("hasRetexture") boolean hasRetexture() { return this.retextureTo != null; } - @ObfuscatedName("ag") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1033906298" + descriptor = "(ILdt;ZI)I", + garbageValue = "-1566499542" ) - public static int method1054(int var0) { - if (var0 > 0) { + static int method1031(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + if (var0 == 1800) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapData_0.Widget_unpackTargetMask(class361.getWidgetFlags(var3)); return 1; + } else if (var0 != 1801) { + if (var0 == 1802) { + if (var3.dataText == null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.dataText; + } + + return 1; + } else { + return 2; + } } else { - return var0 < 0 ? -1 : 0; + int var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + --var4; + if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.actions[var4]; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; } } } \ No newline at end of file diff --git a/osrs/src/main/java/ItemContainer.java b/osrs/src/main/java/ItemContainer.java index 3f5629bc6..2fd9c0c91 100644 --- a/osrs/src/main/java/ItemContainer.java +++ b/osrs/src/main/java/ItemContainer.java @@ -3,24 +3,25 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dd") +@ObfuscatedName("du") @Implements("ItemContainer") public class ItemContainer extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) @Export("itemContainers") static NodeHashTable itemContainers; - @ObfuscatedName("ap") + @ObfuscatedName("tz") @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Lgn;" ) - static IndexedSprite field853; - @ObfuscatedName("ae") + @Export("guestClanChannel") + static ClanChannel guestClanChannel; + @ObfuscatedName("ah") @Export("ids") int[] ids; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("quantities") int[] quantities; @@ -32,28 +33,4 @@ public class ItemContainer extends Node { this.ids = new int[]{-1}; this.quantities = new int[]{0}; } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-96469770" - ) - public static void method468() { - FileSystem.FileSystem_cacheFiles.clear(); - } - - @ObfuscatedName("js") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "2139499432" - ) - static final void method469(int var0, int var1) { - if (Client.hintArrowType == 2) { - HealthBar.worldToScreen((Client.hintArrowX - UrlRequester.baseX << 7) + Client.hintArrowSubX, (Client.hintArrowY - class47.baseY << 7) + Client.hintArrowSubY, Client.hintArrowHeight * 2); - if (Client.viewportTempX > -1 && Client.cycle % 20 < 10) { - ArchiveLoader.headIconHintSprites[0].drawTransBgAt(var0 + Client.viewportTempX - 12, Client.viewportTempY + var1 - 28); - } - - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/ItemLayer.java b/osrs/src/main/java/ItemLayer.java index 740d11815..4045277cd 100644 --- a/osrs/src/main/java/ItemLayer.java +++ b/osrs/src/main/java/ItemLayer.java @@ -2,165 +2,61 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; -@ObfuscatedName("ir") +@ObfuscatedName("kj") @Implements("ItemLayer") public final class ItemLayer { - @ObfuscatedName("au") + @ObfuscatedName("ht") + static String field2109; + @ObfuscatedName("jv") + @ObfuscatedSignature( + descriptor = "Lpf;" + ) + @Export("fontPlain12") + static Font fontPlain12; + @ObfuscatedName("kr") + @ObfuscatedSignature( + descriptor = "Luz;" + ) + @Export("compass") + static SpritePixels compass; + @ObfuscatedName("mr") + @Export("Client_plane") + static int Client_plane; + @ObfuscatedName("at") @Export("z") int z; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") int y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("first") Renderable first; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("second") Renderable second; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("third") Renderable third; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("tag") long tag; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("height") int height; ItemLayer() { } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/Class;", - garbageValue = "1457055781" - ) - @Export("loadClassFromDescriptor") - static Class loadClassFromDescriptor(String var0) throws ClassNotFoundException { - if (var0.equals("B")) { - return Byte.TYPE; - } else if (var0.equals("I")) { - return Integer.TYPE; - } else if (var0.equals("S")) { - return Short.TYPE; - } else if (var0.equals("J")) { - return Long.TYPE; - } else if (var0.equals("Z")) { - return Boolean.TYPE; - } else if (var0.equals("F")) { - return Float.TYPE; - } else if (var0.equals("D")) { - return Double.TYPE; - } else if (var0.equals("C")) { - return Character.TYPE; - } else { - return var0.equals("void") ? Void.TYPE : Reflection.findClass(var0); - } - } - - @ObfuscatedName("kk") - @ObfuscatedSignature( - descriptor = "(Ldx;B)V", - garbageValue = "-52" - ) - static void method1152(NPC var0) { - var0.field976 = var0.definition.size; - var0.field1017 = var0.definition.rotation; - var0.walkSequence = var0.definition.walkSequence; - var0.walkBackSequence = var0.definition.walkBackSequence; - var0.walkLeftSequence = var0.definition.walkLeftSequence; - var0.walkRightSequence = var0.definition.walkRightSequence; - var0.idleSequence = var0.definition.idleSequence; - var0.turnLeftSequence = var0.definition.turnLeftSequence; - var0.turnRightSequence = var0.definition.turnRightSequence; - var0.runSequence = var0.definition.runSequence; - var0.runBackSequence = var0.definition.runBackSequence; - var0.runLeftSequence = var0.definition.runLeftSequence; - var0.runRightSequence = var0.definition.runRightSequence; - var0.crawlSequence = var0.definition.crawlSequence; - var0.crawlBackSequence = var0.definition.crawlBackSequence; - var0.crawlLeftSequence = var0.definition.crawlLeftSequence; - var0.crawlRightSequence = var0.definition.crawlRightSequence; - } - - @ObfuscatedName("lr") - @ObfuscatedSignature( - descriptor = "(Ldf;IIII)V", - garbageValue = "-836252773" - ) - @Export("addPlayerToMenu") - static final void addPlayerToMenu(Player var0, int var1, int var2, int var3) { - if (VarbitComposition.localPlayer != var0) { - if (Client.menuOptionsCount < 400) { - String var4; - if (var0.skillLevel == 0) { - var4 = var0.actions[0] + var0.username + var0.actions[1] + class14.method42(var0.combatLevel, VarbitComposition.localPlayer.combatLevel) + " " + " (" + "level-" + var0.combatLevel + ")" + var0.actions[2]; - } else { - var4 = var0.actions[0] + var0.username + var0.actions[1] + " " + " (" + "skill-" + var0.skillLevel + ")" + var0.actions[2]; - } - - int var5; - if (Client.isItemSelected == 1) { - class385.insertMenuItemNoShift("Use", Client.field599 + " " + "->" + " " + MoveSpeed.colorStartTag(16777215) + var4, 14, var1, var2, var3); - } else if (Client.isSpellSelected) { - if ((Canvas.selectedSpellFlags & 8) == 8) { - class385.insertMenuItemNoShift(Client.field600, Client.field601 + " " + "->" + " " + MoveSpeed.colorStartTag(16777215) + var4, 15, var1, var2, var3); - } - } else { - for (var5 = 7; var5 >= 0; --var5) { - if (Client.playerMenuActions[var5] != null) { - short var6 = 0; - if (Client.playerMenuActions[var5].equalsIgnoreCase("Attack")) { - if (AttackOption.AttackOption_hidden == Client.playerAttackOption) { - continue; - } - - if (AttackOption.AttackOption_alwaysRightClick == Client.playerAttackOption || Client.playerAttackOption == AttackOption.AttackOption_dependsOnCombatLevels && var0.combatLevel > VarbitComposition.localPlayer.combatLevel) { - var6 = 2000; - } - - if (VarbitComposition.localPlayer.team != 0 && var0.team != 0) { - if (var0.team == VarbitComposition.localPlayer.team) { - var6 = 2000; - } else { - var6 = 0; - } - } else if (Client.playerAttackOption == AttackOption.field1097 && var0.isClanMember()) { - var6 = 2000; - } - } else if (Client.playerOptionsPriorities[var5]) { - var6 = 2000; - } - - boolean var7 = false; - int var8 = Client.playerMenuOpcodes[var5] + var6; - class385.insertMenuItemNoShift(Client.playerMenuActions[var5], MoveSpeed.colorStartTag(16777215) + var4, var8, var1, var2, var3); - } - } - } - - for (var5 = 0; var5 < Client.menuOptionsCount; ++var5) { - if (Client.menuOpcodes[var5] == 23) { - Client.menuTargets[var5] = MoveSpeed.colorStartTag(16777215) + var4; - break; - } - } - - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/IterableDualNodeQueue.java b/osrs/src/main/java/IterableDualNodeQueue.java index 7b11ac9d9..8c6ef12cf 100644 --- a/osrs/src/main/java/IterableDualNodeQueue.java +++ b/osrs/src/main/java/IterableDualNodeQueue.java @@ -5,18 +5,18 @@ import java.util.Iterator; -@ObfuscatedName("ou") +@ObfuscatedName("po") @Implements("IterableDualNodeQueue") public class IterableDualNodeQueue implements Iterable { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("sentinel") public DualNode sentinel; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("head") DualNode head; @@ -27,7 +27,7 @@ public IterableDualNodeQueue() { this.sentinel.nextDual = this.sentinel; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("clear") public void clear() { while (this.sentinel.previousDual != this.sentinel) { @@ -36,9 +36,9 @@ public void clear() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsq;)V" + descriptor = "(Lsn;)V" ) @Export("add") public void add(DualNode var1) { @@ -52,9 +52,9 @@ public void add(DualNode var1) { var1.previousDual.nextDual = var1; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "()Lsq;" + descriptor = "()Lsn;" ) @Export("removeLast") public DualNode removeLast() { @@ -67,18 +67,18 @@ public DualNode removeLast() { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "()Lsq;" + descriptor = "()Lsn;" ) @Export("last") public DualNode last() { return this.previousOrLast((DualNode)null); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lsq;)Lsq;" + descriptor = "(Lsn;)Lsn;" ) @Export("previousOrLast") DualNode previousOrLast(DualNode var1) { @@ -98,9 +98,9 @@ DualNode previousOrLast(DualNode var1) { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lsq;" + descriptor = "()Lsn;" ) @Export("previous") public DualNode previous() { @@ -120,9 +120,9 @@ public Iterator iterator() { return new IterableDualNodeQueueIterator(this); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lsq;Lsq;)V" + descriptor = "(Lsn;Lsn;)V" ) @Export("DualNodeDeque_addBefore") public static void DualNodeDeque_addBefore(DualNode var0, DualNode var1) { diff --git a/osrs/src/main/java/IterableDualNodeQueueIterator.java b/osrs/src/main/java/IterableDualNodeQueueIterator.java index 2ac5466bb..38035f5d6 100644 --- a/osrs/src/main/java/IterableDualNodeQueueIterator.java +++ b/osrs/src/main/java/IterableDualNodeQueueIterator.java @@ -5,30 +5,30 @@ import java.util.Iterator; -@ObfuscatedName("ol") +@ObfuscatedName("ph") @Implements("IterableDualNodeQueueIterator") public class IterableDualNodeQueueIterator implements Iterator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lou;" + descriptor = "Lpo;" ) @Export("queue") IterableDualNodeQueue queue; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("head") DualNode head; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsq;" + descriptor = "Lsn;" ) @Export("last") DualNode last; @ObfuscatedSignature( - descriptor = "(Lou;)V" + descriptor = "(Lpo;)V" ) IterableDualNodeQueueIterator(IterableDualNodeQueue var1) { this.last = null; diff --git a/osrs/src/main/java/IterableNodeDeque.java b/osrs/src/main/java/IterableNodeDeque.java index 8d84bfe26..fcdae3cba 100644 --- a/osrs/src/main/java/IterableNodeDeque.java +++ b/osrs/src/main/java/IterableNodeDeque.java @@ -6,20 +6,20 @@ import java.util.Collection; import java.util.Iterator; -@ObfuscatedName("oc") +@ObfuscatedName("pm") @Implements("IterableNodeDeque") public class IterableNodeDeque implements Iterable, Collection { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("sentinel") Node sentinel; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) - Node field3636; + Node field3674; public IterableNodeDeque() { this.sentinel = new Node(); @@ -27,7 +27,7 @@ public IterableNodeDeque() { this.sentinel.next = this.sentinel; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("rsClear") public void rsClear() { while (this.sentinel.previous != this.sentinel) { @@ -36,9 +36,9 @@ public void rsClear() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsj;)V" + descriptor = "(Lsh;)V" ) @Export("addFirst") public void addFirst(Node var1) { @@ -52,9 +52,9 @@ public void addFirst(Node var1) { var1.previous.next = var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lsj;)V" + descriptor = "(Lsh;)V" ) @Export("addLast") public void addLast(Node var1) { @@ -68,20 +68,20 @@ public void addLast(Node var1) { var1.previous.next = var1; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("last") public Node last() { - return this.method2005((Node)null); + return this.method2024((Node)null); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lsj;)Lsj;" + descriptor = "(Lsh;)Lsh;" ) - Node method2005(Node var1) { + Node method2024(Node var1) { Node var2; if (var1 == null) { var2 = this.sentinel.previous; @@ -90,32 +90,32 @@ Node method2005(Node var1) { } if (var2 == this.sentinel) { - this.field3636 = null; + this.field3674 = null; return null; } else { - this.field3636 = var2.previous; + this.field3674 = var2.previous; return var2; } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("previous") public Node previous() { - Node var1 = this.field3636; + Node var1 = this.field3674; if (var1 == this.sentinel) { - this.field3636 = null; + this.field3674 = null; return null; } else { - this.field3636 = var1.previous; + this.field3674 = var1.previous; return var1; } } - @ObfuscatedName("ap") - int method2007() { + @ObfuscatedName("ac") + int method2026() { int var1 = 0; for (Node var2 = this.sentinel.previous; var2 != this.sentinel; var2 = var2.previous) { @@ -125,17 +125,17 @@ int method2007() { return var1; } - @ObfuscatedName("aa") - public boolean method2008() { + @ObfuscatedName("al") + public boolean method2027() { return this.sentinel.previous == this.sentinel; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "()[Lsj;" + descriptor = "()[Lsh;" ) - Node[] method2009() { - Node[] var1 = new Node[this.method2007()]; + Node[] method2028() { + Node[] var1 = new Node[this.method2026()]; int var2 = 0; for (Node var3 = this.sentinel.previous; var3 != this.sentinel; var3 = var3.previous) { @@ -145,11 +145,11 @@ Node[] method2009() { return var1; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Lsj;)Z" + descriptor = "(Lsh;)Z" ) - boolean method2010(Node var1) { + boolean method2029(Node var1) { this.addFirst(var1); return true; } @@ -163,13 +163,13 @@ public Iterator iterator() { @Export("size") @ObfuscatedName("size") public int size() { - return this.method2007(); + return this.method2026(); } @Export("isEmpty") @ObfuscatedName("isEmpty") public boolean isEmpty() { - return this.method2008(); + return this.method2027(); } public boolean contains(Object var1) { @@ -179,7 +179,7 @@ public boolean contains(Object var1) { @Export("toArray") @ObfuscatedName("toArray") public Object[] toArray() { - return this.method2009(); + return this.method2028(); } @Export("toArray") @@ -223,7 +223,7 @@ public void clear() { @Export("add") @ObfuscatedName("add") public boolean add(Object var1) { - return this.method2010((Node)var1); + return this.method2029((Node)var1); } @Export("equals") @@ -238,9 +238,9 @@ public int hashCode() { return super.hashCode(); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lsj;Lsj;)V" + descriptor = "(Lsh;Lsh;)V" ) @Export("IterableNodeDeque_addBefore") public static void IterableNodeDeque_addBefore(Node var0, Node var1) { diff --git a/osrs/src/main/java/IterableNodeDequeDescendingIterator.java b/osrs/src/main/java/IterableNodeDequeDescendingIterator.java index 550cb087b..b5ddff754 100644 --- a/osrs/src/main/java/IterableNodeDequeDescendingIterator.java +++ b/osrs/src/main/java/IterableNodeDequeDescendingIterator.java @@ -5,38 +5,38 @@ import java.util.Iterator; -@ObfuscatedName("ot") +@ObfuscatedName("pk") @Implements("IterableNodeDequeDescendingIterator") public class IterableNodeDequeDescendingIterator implements Iterator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Loc;" + descriptor = "Lpm;" ) @Export("deque") IterableNodeDeque deque; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) - Node field3634; - @ObfuscatedName("ao") + Node field3672; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("last") Node last; @ObfuscatedSignature( - descriptor = "(Loc;)V" + descriptor = "(Lpm;)V" ) IterableNodeDequeDescendingIterator(IterableNodeDeque var1) { this.last = null; this.setDeque(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Loc;)V" + descriptor = "(Lpm;)V" ) @Export("setDeque") void setDeque(IterableNodeDeque var1) { @@ -44,22 +44,22 @@ void setDeque(IterableNodeDeque var1) { this.start(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("start") void start() { - this.field3634 = this.deque != null ? this.deque.sentinel.previous : null; + this.field3672 = this.deque != null ? this.deque.sentinel.previous : null; this.last = null; } @Export("next") @ObfuscatedName("next") public Object next() { - Node var1 = this.field3634; + Node var1 = this.field3672; if (var1 == this.deque.sentinel) { var1 = null; - this.field3634 = null; + this.field3672 = null; } else { - this.field3634 = var1.previous; + this.field3672 = var1.previous; } this.last = var1; @@ -69,7 +69,7 @@ public Object next() { @Export("hasNext") @ObfuscatedName("hasNext") public boolean hasNext() { - return this.deque.sentinel != this.field3634 && this.field3634 != null; + return this.deque.sentinel != this.field3672 && this.field3672 != null; } @Export("remove") diff --git a/osrs/src/main/java/IterableNodeHashTable.java b/osrs/src/main/java/IterableNodeHashTable.java index 66ab609d5..f8f5ff85d 100644 --- a/osrs/src/main/java/IterableNodeHashTable.java +++ b/osrs/src/main/java/IterableNodeHashTable.java @@ -5,31 +5,31 @@ import java.util.Iterator; -@ObfuscatedName("sf") +@ObfuscatedName("tz") @Implements("IterableNodeHashTable") public final class IterableNodeHashTable implements Iterable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("size") int size; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "[Lsj;" + descriptor = "[Lsh;" ) @Export("buckets") Node[] buckets; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("currentGet") Node currentGet; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("current") Node current; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("index") int index; @@ -46,9 +46,9 @@ public IterableNodeHashTable(int var1) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(J)Lsj;" + descriptor = "(J)Lsh;" ) @Export("get") public Node get(long var1) { @@ -66,9 +66,9 @@ public Node get(long var1) { return null; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsj;J)V" + descriptor = "(Lsh;J)V" ) @Export("put") public void put(Node var1, long var2) { @@ -84,7 +84,7 @@ public void put(Node var1, long var2) { var1.key = var2; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("clear") public void clear() { for (int var1 = 0; var1 < this.size; ++var1) { @@ -104,9 +104,9 @@ public void clear() { this.current = null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("first") public Node first() { @@ -114,9 +114,9 @@ public Node first() { return this.next(); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("next") public Node next() { diff --git a/osrs/src/main/java/IterableNodeHashTableIterator.java b/osrs/src/main/java/IterableNodeHashTableIterator.java index 3dfc64603..075c49ebc 100644 --- a/osrs/src/main/java/IterableNodeHashTableIterator.java +++ b/osrs/src/main/java/IterableNodeHashTableIterator.java @@ -5,33 +5,33 @@ import java.util.Iterator; -@ObfuscatedName("sa") +@ObfuscatedName("tp") @Implements("IterableNodeHashTableIterator") public class IterableNodeHashTableIterator implements Iterator { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("hashTable") IterableNodeHashTable hashTable; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("head") Node head; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("index") int index; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("last") Node last; @ObfuscatedSignature( - descriptor = "(Lsf;)V" + descriptor = "(Ltz;)V" ) public IterableNodeHashTableIterator(IterableNodeHashTable var1) { this.last = null; @@ -39,7 +39,7 @@ public IterableNodeHashTableIterator(IterableNodeHashTable var1) { this.start(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("start") void start() { this.head = this.hashTable.buckets[0].previous; @@ -47,11 +47,11 @@ void start() { this.last = null; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) - public Node method2449() { + public Node method2461() { this.start(); return (Node)this.next(); } diff --git a/osrs/src/main/java/JagNetThread.java b/osrs/src/main/java/JagNetThread.java index 2157a63ce..d59ce093d 100644 --- a/osrs/src/main/java/JagNetThread.java +++ b/osrs/src/main/java/JagNetThread.java @@ -5,165 +5,165 @@ import java.io.IOException; import java.util.zip.CRC32; -@ObfuscatedName("nf") +@ObfuscatedName("oz") @Implements("JagNetThread") public class JagNetThread { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lqi;" - ) - AbstractSocket field3561; - @ObfuscatedName("ae") - int field3549; - @ObfuscatedName("ao") - long field3557; @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Lro;" ) - NodeHashTable field3565; - @ObfuscatedName("ac") - int field3548; - @ObfuscatedName("ai") + AbstractSocket field3597; + @ObfuscatedName("ah") + int field3587; + @ObfuscatedName("ar") + long field3593; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) - NodeHashTable field3564; - @ObfuscatedName("az") - int field3555; - @ObfuscatedName("ap") + NodeHashTable field3599; + @ObfuscatedName("ab") + int field3585; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Los;" + descriptor = "Ltw;" ) - DualNodeDeque field3560; + NodeHashTable field3601; @ObfuscatedName("aa") + int field3584; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lso;" - ) - NodeHashTable field3562; - @ObfuscatedName("af") - int field3550; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Lod;" ) - NodeHashTable field3563; - @ObfuscatedName("aq") - int field3553; + DualNodeDeque field3594; @ObfuscatedName("al") - boolean field3546; - @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Lnj;" + descriptor = "Ltw;" ) - class357 field3558; - @ObfuscatedName("ar") + NodeHashTable field3598; + @ObfuscatedName("az") + int field3591; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Ltw;" ) - Buffer field3568; - @ObfuscatedName("ab") + NodeHashTable field3600; + @ObfuscatedName("av") + int field3590; + @ObfuscatedName("ax") + boolean field3582; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Loy;" ) - Buffer field3566; - @ObfuscatedName("ag") - int field3551; - @ObfuscatedName("ax") - CRC32 field3556; - @ObfuscatedName("ah") + class369 field3596; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Luj;" ) - Buffer field3567; - @ObfuscatedName("as") + Buffer field3604; + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "[Lnk;" + descriptor = "Luj;" ) - Archive[] field3559; - @ObfuscatedName("ay") - int field3554; + Buffer field3603; @ObfuscatedName("aj") - int field3552; - @ObfuscatedName("av") - byte field3547; + int field3588; + @ObfuscatedName("aq") + CRC32 field3592; + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "Luj;" + ) + Buffer field3602; @ObfuscatedName("aw") - public int field3570; - @ObfuscatedName("ak") - public int field3569; + @ObfuscatedSignature( + descriptor = "[Loh;" + ) + Archive[] field3595; + @ObfuscatedName("ae") + int field3586; + @ObfuscatedName("an") + int field3589; + @ObfuscatedName("ag") + byte field3583; + @ObfuscatedName("ad") + public int field3605; + @ObfuscatedName("af") + public int field3606; public JagNetThread() { - this.field3549 = 0; - this.field3565 = new NodeHashTable(4096); - this.field3548 = 0; - this.field3564 = new NodeHashTable(32); - this.field3555 = 0; - this.field3560 = new DualNodeDeque(); - this.field3562 = new NodeHashTable(4096); - this.field3550 = 0; - this.field3563 = new NodeHashTable(4096); - this.field3553 = 0; - this.field3568 = new Buffer(8); - this.field3551 = 0; - this.field3556 = new CRC32(); - this.field3559 = new Archive[256]; - this.field3554 = -1; - this.field3552 = 255; - this.field3547 = 0; - this.field3570 = 0; - this.field3569 = 0; + this.field3587 = 0; + this.field3599 = new NodeHashTable(4096); + this.field3585 = 0; + this.field3601 = new NodeHashTable(32); + this.field3584 = 0; + this.field3594 = new DualNodeDeque(); + this.field3598 = new NodeHashTable(4096); + this.field3591 = 0; + this.field3600 = new NodeHashTable(4096); + this.field3590 = 0; + this.field3604 = new Buffer(8); + this.field3588 = 0; + this.field3592 = new CRC32(); + this.field3595 = new Archive[256]; + this.field3586 = -1; + this.field3589 = 255; + this.field3583 = 0; + this.field3605 = 0; + this.field3606 = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "935597926" + descriptor = "(B)Z", + garbageValue = "-63" ) - public boolean method1930() { - long var1 = GameEngine.clockNow(); - int var3 = (int)(var1 - this.field3557); - this.field3557 = var1; + public boolean method1953() { + long var1 = SpotAnimationDefinition.method962(); + int var3 = (int)(var1 - this.field3593); + this.field3593 = var1; if (var3 > 200) { var3 = 200; } - this.field3549 += var3; - if (this.field3553 == 0 && this.field3555 == 0 && this.field3550 == 0 && this.field3548 == 0) { + this.field3587 += var3; + if (this.field3590 == 0 && this.field3584 == 0 && this.field3591 == 0 && this.field3585 == 0) { return true; - } else if (this.field3561 == null) { + } else if (this.field3597 == null) { return false; } else { try { - if (this.field3549 > 30000) { + if (this.field3587 > 30000) { throw new IOException(); } else { - class357 var4; + class369 var4; Buffer var5; - while (this.field3555 < 200 && this.field3548 > 0) { - var4 = (class357)this.field3565.first(); + while (this.field3584 < 200 && this.field3585 > 0) { + var4 = (class369)this.field3599.first(); var5 = new Buffer(4); var5.writeByte(1); var5.writeMedium((int)var4.key); - this.field3561.write(var5.array, 0, 4); - this.field3564.put(var4, var4.key); - --this.field3548; - ++this.field3555; + this.field3597.write(var5.array, 0, 4); + this.field3601.put(var4, var4.key); + --this.field3585; + ++this.field3584; } - while (this.field3553 < 200 && this.field3550 > 0) { - var4 = (class357)this.field3560.removeLast(); + while (this.field3590 < 200 && this.field3591 > 0) { + var4 = (class369)this.field3594.removeLast(); var5 = new Buffer(4); var5.writeByte(0); var5.writeMedium((int)var4.key); - this.field3561.write(var5.array, 0, 4); + this.field3597.write(var5.array, 0, 4); var4.removeDual(); - this.field3563.put(var4, var4.key); - --this.field3550; - ++this.field3553; + this.field3600.put(var4, var4.key); + --this.field3591; + ++this.field3590; } for (int var16 = 0; var16 < 100; ++var16) { - int var17 = this.field3561.available(); + int var17 = this.field3597.available(); if (var17 < 0) { throw new IOException(); } @@ -172,11 +172,11 @@ public boolean method1930() { break; } - this.field3549 = 0; + this.field3587 = 0; byte var6 = 0; - if (this.field3558 == null) { + if (this.field3596 == null) { var6 = 8; - } else if (this.field3551 == 0) { + } else if (this.field3588 == 0) { var6 = 1; } @@ -187,38 +187,38 @@ public boolean method1930() { int var10001; Buffer var22; if (var6 > 0) { - var7 = var6 - this.field3568.offset; + var7 = var6 - this.field3604.offset; if (var7 > var17) { var7 = var17; } - this.field3561.read(this.field3568.array, this.field3568.offset, var7); - if (this.field3547 != 0) { + this.field3597.read(this.field3604.array, this.field3604.offset, var7); + if (this.field3583 != 0) { for (var8 = 0; var8 < var7; ++var8) { - var10000 = this.field3568.array; - var10001 = var8 + this.field3568.offset; - var10000[var10001] ^= this.field3547; + var10000 = this.field3604.array; + var10001 = var8 + this.field3604.offset; + var10000[var10001] ^= this.field3583; } } - var22 = this.field3568; + var22 = this.field3604; var22.offset += var7; - if (this.field3568.offset < var6) { + if (this.field3604.offset < var6) { break; } - if (this.field3558 == null) { - this.field3568.offset = 0; - var8 = this.field3568.readUnsignedByte(); - var9 = this.field3568.readUnsignedShort(); - int var10 = this.field3568.readUnsignedByte(); - int var11 = this.field3568.readInt(); + if (this.field3596 == null) { + this.field3604.offset = 0; + var8 = this.field3604.readUnsignedByte(); + var9 = this.field3604.readUnsignedShort(); + int var10 = this.field3604.readUnsignedByte(); + int var11 = this.field3604.readInt(); long var12 = (long)(var9 + (var8 << 16)); - class357 var14 = (class357)this.field3564.get(var12); - this.field3546 = true; + class369 var14 = (class369)this.field3601.get(var12); + this.field3582 = true; if (var14 == null) { - var14 = (class357)this.field3563.get(var12); - this.field3546 = false; + var14 = (class369)this.field3600.get(var12); + this.field3582 = false; } if (var14 == null) { @@ -226,90 +226,90 @@ public boolean method1930() { } int var15 = var10 == 0 ? 5 : 9; - this.field3558 = var14; - this.field3566 = new Buffer(this.field3558.field3526 + var11 + var15); - this.field3566.writeByte(var10); - this.field3566.writeInt(var11); - this.field3551 = 8; - this.field3568.offset = 0; - } else if (this.field3551 == 0) { - if (this.field3568.array[0] == -1) { - this.field3551 = 1; - this.field3568.offset = 0; + this.field3596 = var14; + this.field3603 = new Buffer(this.field3596.field3562 + var11 + var15); + this.field3603.writeByte(var10); + this.field3603.writeInt(var11); + this.field3588 = 8; + this.field3604.offset = 0; + } else if (this.field3588 == 0) { + if (this.field3604.array[0] == -1) { + this.field3588 = 1; + this.field3604.offset = 0; } else { - this.field3558 = null; + this.field3596 = null; } } } else { - var7 = this.field3566.array.length - this.field3558.field3526; - var8 = 512 - this.field3551; - if (var8 > var7 - this.field3566.offset) { - var8 = var7 - this.field3566.offset; + var7 = this.field3603.array.length - this.field3596.field3562; + var8 = 512 - this.field3588; + if (var8 > var7 - this.field3603.offset) { + var8 = var7 - this.field3603.offset; } if (var8 > var17) { var8 = var17; } - this.field3561.read(this.field3566.array, this.field3566.offset, var8); - if (this.field3547 != 0) { + this.field3597.read(this.field3603.array, this.field3603.offset, var8); + if (this.field3583 != 0) { for (var9 = 0; var9 < var8; ++var9) { - var10000 = this.field3566.array; - var10001 = var9 + this.field3566.offset; - var10000[var10001] ^= this.field3547; + var10000 = this.field3603.array; + var10001 = this.field3603.offset + var9; + var10000[var10001] ^= this.field3583; } } - var22 = this.field3566; + var22 = this.field3603; var22.offset += var8; - this.field3551 += var8; - if (this.field3566.offset == var7) { - if (16711935L == this.field3558.key) { - this.field3567 = this.field3566; + this.field3588 += var8; + if (this.field3603.offset == var7) { + if (this.field3596.key == 16711935L) { + this.field3602 = this.field3603; for (var9 = 0; var9 < 256; ++var9) { - Archive var18 = this.field3559[var9]; + Archive var18 = this.field3595[var9]; if (var18 != null) { - this.method1935(var18, var9); + this.method1957(var18, var9); } } } else { - this.field3556.reset(); - this.field3556.update(this.field3566.array, 0, var7); - var9 = (int)this.field3556.getValue(); - if (this.field3558.field3527 != var9) { + this.field3592.reset(); + this.field3592.update(this.field3603.array, 0, var7); + var9 = (int)this.field3592.getValue(); + if (this.field3596.field3563 != var9) { try { - this.field3561.close(); + this.field3597.close(); } catch (Exception var20) { } - ++this.field3570; - this.field3561 = null; - this.field3547 = (byte)((int)(Math.random() * 255.0D + 1.0D)); + ++this.field3605; + this.field3597 = null; + this.field3583 = (byte)((int)(Math.random() * 255.0D + 1.0D)); return false; } - this.field3570 = 0; - this.field3569 = 0; - this.field3558.field3528.write((int)(this.field3558.key & 65535L), this.field3566.array, 16711680L == (this.field3558.key & 16711680L), this.field3546); + this.field3605 = 0; + this.field3606 = 0; + this.field3596.field3564.write((int)(this.field3596.key & 65535L), this.field3603.array, (this.field3596.key & 16711680L) == 16711680L, this.field3582); } - this.field3558.remove(); - if (this.field3546) { - --this.field3555; + this.field3596.remove(); + if (this.field3582) { + --this.field3584; } else { - --this.field3553; + --this.field3590; } - this.field3551 = 0; - this.field3558 = null; - this.field3566 = null; + this.field3588 = 0; + this.field3596 = null; + this.field3603 = null; } else { - if (this.field3551 != 512) { + if (this.field3588 != 512) { break; } - this.field3551 = 0; + this.field3588 = 0; } } } @@ -318,197 +318,197 @@ public boolean method1930() { } } catch (IOException var21) { try { - this.field3561.close(); + this.field3597.close(); } catch (Exception var19) { } - ++this.field3569; - this.field3561 = null; + ++this.field3606; + this.field3597 = null; return false; } } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "-2147075944" + garbageValue = "-438812293" ) - public void method1932(boolean var1) { - if (this.field3561 != null) { + public void method1954(boolean var1) { + if (this.field3597 != null) { try { Buffer var2 = new Buffer(4); var2.writeByte(var1 ? 2 : 3); var2.writeMedium(0); - this.field3561.write(var2.array, 0, 4); + this.field3597.write(var2.array, 0, 4); } catch (IOException var5) { try { - this.field3561.close(); + this.field3597.close(); } catch (Exception var4) { } - ++this.field3569; - this.field3561 = null; + ++this.field3606; + this.field3597 = null; } } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lqi;ZI)V", - garbageValue = "-1755212969" + descriptor = "(Lro;ZI)V", + garbageValue = "1047063145" ) - public void method1933(AbstractSocket var1, boolean var2) { - if (this.field3561 != null) { + public void method1955(AbstractSocket var1, boolean var2) { + if (this.field3597 != null) { try { - this.field3561.close(); + this.field3597.close(); } catch (Exception var7) { } - this.field3561 = null; + this.field3597 = null; } - this.field3561 = var1; - this.method1932(var2); - this.field3568.offset = 0; - this.field3558 = null; - this.field3566 = null; - this.field3551 = 0; + this.field3597 = var1; + this.method1954(var2); + this.field3604.offset = 0; + this.field3596 = null; + this.field3603 = null; + this.field3588 = 0; while (true) { - class357 var3 = (class357)this.field3564.first(); + class369 var3 = (class369)this.field3601.first(); if (var3 == null) { while (true) { - var3 = (class357)this.field3563.first(); + var3 = (class369)this.field3600.first(); if (var3 == null) { - if (this.field3547 != 0) { + if (this.field3583 != 0) { try { Buffer var8 = new Buffer(4); var8.writeByte(4); - var8.writeByte(this.field3547); + var8.writeByte(this.field3583); var8.writeShort(0); - this.field3561.write(var8.array, 0, 4); + this.field3597.write(var8.array, 0, 4); } catch (IOException var6) { try { - this.field3561.close(); + this.field3597.close(); } catch (Exception var5) { } - ++this.field3569; - this.field3561 = null; + ++this.field3606; + this.field3597 = null; } } - this.field3549 = 0; - this.field3557 = GameEngine.clockNow(); + this.field3587 = 0; + this.field3593 = SpotAnimationDefinition.method962(); return; } - this.field3560.method1985(var3); - this.field3562.put(var3, var3.key); - ++this.field3550; - --this.field3553; + this.field3594.method2004(var3); + this.field3598.put(var3, var3.key); + ++this.field3591; + --this.field3590; } } - this.field3565.put(var3, var3.key); - ++this.field3548; - --this.field3555; + this.field3599.put(var3, var3.key); + ++this.field3585; + --this.field3584; } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lnk;II)V", - garbageValue = "1859946409" + descriptor = "(Loh;II)V", + garbageValue = "-1796726180" ) - void method1934(Archive var1, int var2) { - if (var1.field3515) { - if (var2 <= this.field3554) { + void method1956(Archive var1, int var2) { + if (var1.field3547 && !var1.field3546) { + if (var2 <= this.field3586) { throw new RuntimeException(""); } - if (var2 < this.field3552) { - this.field3552 = var2; + if (var2 < this.field3589) { + this.field3589 = var2; } } else { - if (var2 >= this.field3552) { + if (var2 >= this.field3589) { throw new RuntimeException(""); } - if (var2 > this.field3554) { - this.field3554 = var2; + if (var2 > this.field3586) { + this.field3586 = var2; } } - if (this.field3567 != null) { - this.method1935(var1, var2); + if (this.field3602 != null) { + this.method1957(var1, var2); } else { - this.method1936((Archive)null, 255, 255, 0, (byte)0, true); - this.field3559[var2] = var1; + this.method1958((Archive)null, 255, 255, 0, (byte)0, true); + this.field3595[var2] = var1; } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lnk;II)V", - garbageValue = "-1785545796" + descriptor = "(Loh;IB)V", + garbageValue = "-34" ) - void method1935(Archive var1, int var2) { - this.field3567.offset = var2 * 8 + 5; - if (this.field3567.offset >= this.field3567.array.length) { - if (var1.field3515) { - var1.method1891(); + void method1957(Archive var1, int var2) { + this.field3602.offset = var2 * 8 + 5; + if (this.field3602.offset >= this.field3602.array.length) { + if (var1.field3547) { + var1.method1916(); } else { throw new RuntimeException(""); } } else { - int var3 = this.field3567.readInt(); - int var4 = this.field3567.readInt(); + int var3 = this.field3602.readInt(); + int var4 = this.field3602.readInt(); var1.loadIndex(var3, var4); } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lnk;IIIBZB)V", - garbageValue = "-83" + descriptor = "(Loh;IIIBZB)V", + garbageValue = "71" ) - void method1936(Archive var1, int var2, int var3, int var4, byte var5, boolean var6) { + void method1958(Archive var1, int var2, int var3, int var4, byte var5, boolean var6) { long var7 = (long)(var3 + (var2 << 16)); - class357 var9 = (class357)this.field3565.get(var7); + class369 var9 = (class369)this.field3599.get(var7); if (var9 == null) { - var9 = (class357)this.field3564.get(var7); + var9 = (class369)this.field3601.get(var7); if (var9 == null) { - var9 = (class357)this.field3562.get(var7); + var9 = (class369)this.field3598.get(var7); if (var9 != null) { if (var6) { var9.removeDual(); - this.field3565.put(var9, var7); - --this.field3550; - ++this.field3548; + this.field3599.put(var9, var7); + --this.field3591; + ++this.field3585; } } else { if (!var6) { - var9 = (class357)this.field3563.get(var7); + var9 = (class369)this.field3600.get(var7); if (var9 != null) { return; } } - var9 = new class357(); - var9.field3528 = var1; - var9.field3527 = var4; - var9.field3526 = var5; + var9 = new class369(); + var9.field3564 = var1; + var9.field3563 = var4; + var9.field3562 = var5; if (var6) { - this.field3565.put(var9, var7); - ++this.field3548; + this.field3599.put(var9, var7); + ++this.field3585; } else { - this.field3560.method1984(var9); - this.field3562.put(var9, var7); - ++this.field3550; + this.field3594.method2003(var9); + this.field3598.put(var9, var7); + ++this.field3591; } } @@ -516,77 +516,49 @@ void method1936(Archive var1, int var2, int var3, int var4, byte var5, boolean v } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1960227475" + garbageValue = "880980368" ) - void method1937(int var1, int var2) { + void method1959(int var1, int var2) { long var3 = (long)((var1 << 16) + var2); - class357 var5 = (class357)this.field3562.get(var3); + class369 var5 = (class369)this.field3598.get(var3); if (var5 != null) { - this.field3560.method1985(var5); + this.field3594.method2004(var5); } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-1437295059" + garbageValue = "480276269" ) - int method1938(int var1, int var2) { + int method1960(int var1, int var2) { long var3 = (long)((var1 << 16) + var2); - return this.field3558 != null && var3 == this.field3558.key ? this.field3566.offset * 99 / (this.field3566.array.length - this.field3558.field3526) + 1 : 0; + return this.field3596 != null && this.field3596.key == var3 ? this.field3603.offset * 99 / (this.field3603.array.length - this.field3596.field3562) + 1 : 0; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(ZZS)I", - garbageValue = "-10235" + descriptor = "(ZZB)I", + garbageValue = "-122" ) - public int method1939(boolean var1, boolean var2) { + public int method1961(boolean var1, boolean var2) { byte var3 = 0; - int var4 = var3 + this.field3555 + this.field3548; + int var4 = var3 + this.field3585 + this.field3584; return var4; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1866561588" + garbageValue = "-1516647272" ) - public void method1940() { - if (this.field3561 != null) { - this.field3561.close(); + public void method1962() { + if (this.field3597 != null) { + this.field3597.close(); } } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Ldc;", - garbageValue = "569243283" - ) - static AttackOption[] method1941() { - return new AttackOption[]{AttackOption.field1099, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.AttackOption_hidden, AttackOption.AttackOption_alwaysRightClick, AttackOption.field1097}; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(CI)C", - garbageValue = "-162809884" - ) - static char method1931(char var0) { - if (var0 == 198) { - return 'E'; - } else if (var0 == 230) { - return 'e'; - } else if (var0 == 223) { - return 's'; - } else if (var0 == 338) { - return 'E'; - } else { - return (char)(var0 == 339 ? 'e' : '\u0000'); - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/JagexCache.java b/osrs/src/main/java/JagexCache.java index 0180ee5ce..f4514520d 100644 --- a/osrs/src/main/java/JagexCache.java +++ b/osrs/src/main/java/JagexCache.java @@ -5,39 +5,32 @@ import java.io.File; -@ObfuscatedName("gp") +@ObfuscatedName("if") @Implements("JagexCache") public class JagexCache { - @ObfuscatedName("at") - static File field1463; - @ObfuscatedName("ac") + @ObfuscatedName("ao") + static File field1848; + @ObfuscatedName("ab") @Export("cacheDir") static File cacheDir; - @ObfuscatedName("ai") - static int field1461; - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Ltd;" + descriptor = "Ltr;" ) @Export("JagexCache_randomDat") public static BufferedFile JagexCache_randomDat; - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Ltd;" + descriptor = "Ltr;" ) @Export("JagexCache_dat2File") public static BufferedFile JagexCache_dat2File; - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Ltd;" + descriptor = "Ltr;" ) @Export("JagexCache_idx255File") public static BufferedFile JagexCache_idx255File; - @ObfuscatedName("ab") - @Export("cacheGamebuild") - static int cacheGamebuild; - @ObfuscatedName("am") - static String[] field1464; static { JagexCache_randomDat = null; @@ -45,12 +38,49 @@ public class JagexCache { JagexCache_idx255File = null; } - @ObfuscatedName("au") + @ObfuscatedName("lu") + @ObfuscatedSignature( + descriptor = "(Lnn;IIB)V", + garbageValue = "80" + ) + @Export("alignWidgetPosition") + static void alignWidgetPosition(Widget var0, int var1, int var2) { + if (var0.xAlignment == 0) { + var0.x = var0.rawX; + } else if (var0.xAlignment == 1) { + var0.x = var0.rawX + (var1 - var0.width) / 2; + } else if (var0.xAlignment == 2) { + var0.x = var1 - var0.width - var0.rawX; + } else if (var0.xAlignment == 3) { + var0.x = var0.rawX * var1 >> 14; + } else if (var0.xAlignment == 4) { + var0.x = (var1 - var0.width) / 2 + (var0.rawX * var1 >> 14); + } else { + var0.x = var1 - var0.width - (var0.rawX * var1 >> 14); + } + + if (var0.yAlignment == 0) { + var0.y = var0.rawY; + } else if (var0.yAlignment == 1) { + var0.y = (var2 - var0.height) / 2 + var0.rawY; + } else if (var0.yAlignment == 2) { + var0.y = var2 - var0.height - var0.rawY; + } else if (var0.yAlignment == 3) { + var0.y = var2 * var0.rawY >> 14; + } else if (var0.yAlignment == 4) { + var0.y = (var2 - var0.height) / 2 + (var2 * var0.rawY >> 14); + } else { + var0.y = var2 - var0.height - (var2 * var0.rawY >> 14); + } + + } + + @ObfuscatedName("nw") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-812306716" + descriptor = "(I)V", + garbageValue = "-1344105044" ) - static int method909(int var0) { - return class28.KeyHandler_keyCodes[var0]; + static final void method1088() { + Client.field524 = Client.cycleCntr; } } \ No newline at end of file diff --git a/osrs/src/main/java/KeyHandler.java b/osrs/src/main/java/KeyHandler.java index 9d3a7b3d5..3d9a34283 100644 --- a/osrs/src/main/java/KeyHandler.java +++ b/osrs/src/main/java/KeyHandler.java @@ -3,7 +3,6 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.applet.Applet; import java.awt.*; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; @@ -13,125 +12,120 @@ import java.util.Collection; import java.util.Iterator; -@ObfuscatedName("ak") +@ObfuscatedName("af") @Implements("KeyHandler") public class KeyHandler implements KeyListener, FocusListener { - @ObfuscatedName("uw") - static int field70; - @ObfuscatedName("gp") - static int field69; - @ObfuscatedName("rb") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lej;" + descriptor = "[Ltr;" ) - @Export("varcs") - static Varcs varcs; - @ObfuscatedName("ae") - Collection field73; + @Export("JagexCache_idxFiles") + public static BufferedFile[] JagexCache_idxFiles; + @ObfuscatedName("ah") + Collection field77; + @ObfuscatedName("ar") + Collection field78; @ObfuscatedName("ao") - Collection field74; - @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lbv;" + descriptor = "[Lbi;" ) - class29[] field72; - @ObfuscatedName("ac") + class29[] field75; + @ObfuscatedName("ab") @Export("KeyHandler_pressedKeys") boolean[] KeyHandler_pressedKeys; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("KeyHandler_idleCycles") volatile int KeyHandler_idleCycles; KeyHandler() { - this.field72 = new class29[3]; + this.field75 = new class29[3]; this.KeyHandler_pressedKeys = new boolean[112]; this.KeyHandler_idleCycles = 0; - this.field73 = new ArrayList(100); - this.field74 = new ArrayList(100); + this.field77 = new ArrayList(100); + this.field78 = new ArrayList(100); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lbv;II)V", - garbageValue = "226491014" + descriptor = "(Lbi;II)V", + garbageValue = "-22982573" ) - void method86(class29 var1, int var2) { - this.field72[var2] = var1; + void method99(class29 var1, int var2) { + this.field75[var2] = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "2034769800" + garbageValue = "2119301753" ) @Export("getIdleCycles") - public int getIdleCycles() { + int getIdleCycles() { return this.KeyHandler_idleCycles; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "77" + garbageValue = "54" ) - void method89(Component var1) { + void method101(Component var1) { var1.setFocusTraversalKeysEnabled(false); var1.addKeyListener(this); var1.addFocusListener(this); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "70" + garbageValue = "-62" ) - synchronized void method90(Component var1) { + synchronized void method102(Component var1) { var1.removeKeyListener(this); var1.removeFocusListener(this); synchronized(this) { - this.field73.add(new class33(4, 0)); + this.field77.add(new class33(4, 0)); } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2096534148" + garbageValue = "-1170925164" ) - void method92() { + void method103() { ++this.KeyHandler_idleCycles; - this.method94(); - Iterator var1 = this.field74.iterator(); + this.method104(); + Iterator var1 = this.field78.iterator(); while (var1.hasNext()) { class33 var2 = (class33)var1.next(); - for (int var3 = 0; var3 < this.field72.length && !var2.method130(this.field72[var3]); ++var3) { + for (int var3 = 0; var3 < this.field75.length && !var2.method142(this.field75[var3]); ++var3) { } } - this.field74.clear(); + this.field78.clear(); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1568153203" + descriptor = "(S)V", + garbageValue = "-5600" ) - synchronized void method94() { - Collection var1 = this.field74; - this.field74 = this.field73; - this.field73 = var1; + synchronized void method104() { + Collection var1 = this.field78; + this.field78 = this.field77; + this.field77 = var1; } - @Export("keyPressed") - @ObfuscatedName("keyPressed") public final synchronized void keyPressed(KeyEvent var1) { int var2 = var1.getKeyCode(); - if (var2 >= 0 && var2 < class1.method2()) { - var2 = JagexCache.method909(var2); - boolean var3 = (var2 & 128) != 0; - if (var3) { + if (var2 >= 0 && var2 < WorldMapRectangle.method1326()) { + int var3 = class28.KeyHandler_keyCodes[var2]; + var2 = var3; + boolean var4 = (var3 & 128) != 0; + if (var4) { var2 = -1; } } else { @@ -139,9 +133,12 @@ public final synchronized void keyPressed(KeyEvent var1) { } if (var2 >= 0) { + if (!this.KeyHandler_pressedKeys[var2]) { + this.KeyHandler_idleCycles = 0; + } + this.KeyHandler_pressedKeys[var2] = true; - this.field73.add(new class33(1, var2)); - this.KeyHandler_idleCycles = 0; + this.field77.add(new class33(1, var2)); } var1.consume(); @@ -150,23 +147,17 @@ public final synchronized void keyPressed(KeyEvent var1) { @Export("keyReleased") @ObfuscatedName("keyReleased") public final synchronized void keyReleased(KeyEvent var1) { - int var2; - label16: { - var2 = var1.getKeyCode(); - if (var2 >= 0) { - int var4 = class28.KeyHandler_keyCodes.length; - if (var2 < var4) { - var2 = JagexCache.method909(var2) & -129; - break label16; - } - } - + int var2 = var1.getKeyCode(); + if (var2 >= 0 && var2 < WorldMapRectangle.method1326()) { + int var3 = class28.KeyHandler_keyCodes[var2]; + var2 = var3 & -129; + } else { var2 = -1; } if (var2 >= 0) { this.KeyHandler_pressedKeys[var2] = false; - this.field73.add(new class33(2, var2)); + this.field77.add(new class33(2, var2)); } var1.consume(); @@ -176,38 +167,15 @@ public final synchronized void keyReleased(KeyEvent var1) { @ObfuscatedName("keyTyped") public final synchronized void keyTyped(KeyEvent var1) { char var2 = var1.getKeyChar(); - if (var2 != 0 && var2 != '\uffff') { - boolean var3; - if ((var2 <= 0 || var2 >= 128) && (var2 < 160 || var2 > 255)) { - label47: { - if (var2 != 0) { - char[] var4 = class384.cp1252AsciiExtension; - - for (int var5 = 0; var5 < var4.length; ++var5) { - char var6 = var4[var5]; - if (var6 == var2) { - var3 = true; - break label47; - } - } - } - - var3 = false; - } - } else { - var3 = true; - } - - if (var3) { - this.field73.add(new class33(3, var2)); - } + if (var2 != 0 && var2 != '\uffff' && WorldMapArea.method1207(var2)) { + this.field77.add(new class33(3, var2)); } var1.consume(); } public final synchronized void focusGained(FocusEvent var1) { - this.field73.add(new class33(4, 1)); + this.field77.add(new class33(4, 1)); } @Export("focusLost") @@ -216,153 +184,29 @@ public final synchronized void focusLost(FocusEvent var1) { for (int var2 = 0; var2 < 112; ++var2) { if (this.KeyHandler_pressedKeys[var2]) { this.KeyHandler_pressedKeys[var2] = false; - this.field73.add(new class33(2, var2)); - } - } - - this.field73.add(new class33(4, 0)); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "([Lob;II)Lob;", - garbageValue = "-1278288180" - ) - @Export("findEnumerated") - public static class371 findEnumerated(class371[] var0, int var1) { - class371[] var2 = var0; - - for (int var3 = 0; var3 < var2.length; ++var3) { - class371 var4 = var2[var3]; - if (var1 == var4.rsOrdinal()) { - return var4; + this.field77.add(new class33(2, var2)); } } - return null; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/applet/Applet;Ljava/lang/String;I)V", - garbageValue = "-2016250661" - ) - public static void method85(Applet var0, String var1) { - class31.field85 = var0; - if (var1 != null) { - class31.field86 = var1; - } - + this.field77.add(new class33(4, 0)); } - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(CI)C", - garbageValue = "-1543892590" - ) - public static char method91(char var0) { - switch(var0) { - case ' ': - case '-': - case '_': - case '\u00a0': - return '_'; - case '#': - case '[': - case ']': - return var0; - case '\u00c0': - case '\u00c1': - case '\u00c2': - case '\u00c3': - case '\u00c4': - case '\u00e0': - case '\u00e1': - case '\u00e2': - case '\u00e3': - case '\u00e4': - return 'a'; - case '\u00c7': - case '\u00e7': - return 'c'; - case '\u00c8': - case '\u00c9': - case '\u00ca': - case '\u00cb': - case '\u00e8': - case '\u00e9': - case '\u00ea': - case '\u00eb': - return 'e'; - case '\u00cd': - case '\u00ce': - case '\u00cf': - case '\u00ed': - case '\u00ee': - case '\u00ef': - return 'i'; - case '\u00d1': - case '\u00f1': - return 'n'; - case '\u00d2': - case '\u00d3': - case '\u00d4': - case '\u00d5': - case '\u00d6': - case '\u00f2': - case '\u00f3': - case '\u00f4': - case '\u00f5': - case '\u00f6': - return 'o'; - case '\u00d9': - case '\u00da': - case '\u00db': - case '\u00dc': - case '\u00f9': - case '\u00fa': - case '\u00fb': - case '\u00fc': - return 'u'; - case '\u00df': - return 'b'; - case '\u00ff': - case '\u0178': - return 'y'; - default: - return Character.toLowerCase(var0); - } - } - - @ObfuscatedName("at") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(Ltm;[II)[Ljava/lang/Object;", - garbageValue = "-165535984" + descriptor = "(CB)Z", + garbageValue = "76" ) - static Object[] method88(Buffer var0, int[] var1) { - int var2 = var0.readUShortSmart(); - Object[] var3 = new Object[var1.length * var2]; - - for (int var4 = 0; var4 < var2; ++var4) { - for (int var5 = 0; var5 < var1.length; ++var5) { - int var6 = var1.length * var4 + var5; - class502 var7 = SequenceDefinition.method1074(var1[var5]); - var3[var6] = var7.method2497(var0); - } - } - - return var3; + @Export("isAlphaNumeric") + public static boolean isAlphaNumeric(char var0) { + return var0 >= '0' && var0 <= '9' || var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; } - @ObfuscatedName("ai") + @ObfuscatedName("le") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "24" + descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIII)V", + garbageValue = "-2097696373" ) - static void method93(int var0) { - ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var1 != null) { - var1.remove(); - } + static final void method106(String var0, String var1, int var2, int var3, int var4, int var5, int var6) { + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var0, var1, var2, var3, var4, var5, var6, false); } } \ No newline at end of file diff --git a/osrs/src/main/java/KitDefinition.java b/osrs/src/main/java/KitDefinition.java index 8f548b24d..f199cf6a4 100644 --- a/osrs/src/main/java/KitDefinition.java +++ b/osrs/src/main/java/KitDefinition.java @@ -3,52 +3,52 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hz") +@ObfuscatedName("go") @Implements("KitDefinition") public class KitDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("KitDefinition_archive") - public static AbstractArchive KitDefinition_archive; - @ObfuscatedName("ae") + static AbstractArchive KitDefinition_archive; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("KitDefinition_modelsArchive") - public static AbstractArchive KitDefinition_modelsArchive; + static AbstractArchive KitDefinition_modelsArchive; @ObfuscatedName("ao") - @Export("KitDefinition_fileCount") - public static int KitDefinition_fileCount; - @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("KitDefinition_cached") static EvictingDualNodeHashTable KitDefinition_cached; - @ObfuscatedName("ac") + @ObfuscatedName("je") + @Export("regions") + static int[] regions; + @ObfuscatedName("ab") @Export("bodypartID") public int bodypartID; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("models2") int[] models2; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("models") int[] models; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("nonSelectable") public boolean nonSelectable; @@ -62,10 +62,10 @@ public class KitDefinition extends DualNode { this.nonSelectable = false; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-6" + descriptor = "(Luj;I)V", + garbageValue = "-1802859477" ) @Export("decode") void decode(Buffer var1) { @@ -81,8 +81,8 @@ void decode(Buffer var1) { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-1997251998" + descriptor = "(Luj;II)V", + garbageValue = "-601182989" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -125,10 +125,10 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1590063702" + garbageValue = "1847787627" ) @Export("ready") public boolean ready() { @@ -147,10 +147,10 @@ public boolean ready() { } } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)Lic;", - garbageValue = "-23" + descriptor = "(B)Lkq;", + garbageValue = "6" ) @Export("getModelData") public ModelData getModelData() { @@ -187,12 +187,12 @@ public ModelData getModelData() { } } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-2117319302" + descriptor = "(B)Z", + garbageValue = "-62" ) - public boolean method961() { + public boolean method909() { boolean var1 = true; for (int var2 = 0; var2 < 5; ++var2) { @@ -204,10 +204,10 @@ public boolean method961() { return var1; } - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)Lic;", - garbageValue = "-1595711476" + descriptor = "(I)Lkq;", + garbageValue = "1386054697" ) @Export("getKitDefinitionModels") public ModelData getKitDefinitionModels() { @@ -237,119 +237,12 @@ public ModelData getKitDefinitionModels() { return var5; } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lto;IB)Z", - garbageValue = "-108" + descriptor = "(I)V", + garbageValue = "1051367383" ) - @Export("updateExternalPlayer") - static boolean updateExternalPlayer(PacketBuffer var0, int var1) { - int var2 = var0.readBits(2); - int var3; - int var4; - int var7; - int var8; - int var9; - int var10; - if (var2 == 0) { - if (var0.readBits(1) != 0) { - updateExternalPlayer(var0, var1); - } - - var3 = var0.readBits(13); - var4 = var0.readBits(13); - boolean var12 = var0.readBits(1) == 1; - if (var12) { - Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; - } - - if (Client.players[var1] != null) { - throw new RuntimeException(); - } else { - Player var6 = Client.players[var1] = new Player(); - var6.index = var1; - if (Players.cachedAppearanceBuffer[var1] != null) { - var6.read(Players.cachedAppearanceBuffer[var1]); - } - - var6.orientation = Players.Players_orientations[var1]; - var6.targetIndex = Players.Players_targetIndices[var1]; - var7 = Players.Players_regions[var1]; - var8 = var7 >> 28; - var9 = var7 >> 14 & 255; - var10 = var7 & 255; - var6.pathTraversed[0] = Players.playerMovementSpeeds[var1]; - var6.plane = (byte)var8; - var6.resetPath((var9 << 13) + var3 - UrlRequester.baseX, (var10 << 13) + var4 - class47.baseY); - var6.hasMovementPending = false; - return true; - } - } else if (var2 == 1) { - var3 = var0.readBits(2); - var4 = Players.Players_regions[var1]; - Players.Players_regions[var1] = (((var4 >> 28) + var3 & 3) << 28) + (var4 & 268435455); - return false; - } else { - int var5; - int var11; - if (var2 == 2) { - var3 = var0.readBits(5); - var4 = var3 >> 3; - var5 = var3 & 7; - var11 = Players.Players_regions[var1]; - var7 = (var11 >> 28) + var4 & 3; - var8 = var11 >> 14 & 255; - var9 = var11 & 255; - if (var5 == 0) { - --var8; - --var9; - } - - if (var5 == 1) { - --var9; - } - - if (var5 == 2) { - ++var8; - --var9; - } - - if (var5 == 3) { - --var8; - } - - if (var5 == 4) { - ++var8; - } - - if (var5 == 5) { - --var8; - ++var9; - } - - if (var5 == 6) { - ++var9; - } - - if (var5 == 7) { - ++var8; - ++var9; - } - - Players.Players_regions[var1] = (var8 << 14) + var9 + (var7 << 28); - return false; - } else { - var3 = var0.readBits(18); - var4 = var3 >> 16; - var5 = var3 >> 8 & 255; - var11 = var3 & 255; - var7 = Players.Players_regions[var1]; - var8 = (var7 >> 28) + var4 & 3; - var9 = var5 + (var7 >> 14) & 255; - var10 = var7 + var11 & 255; - Players.Players_regions[var1] = (var9 << 14) + var10 + (var8 << 28); - return false; - } - } + public static void method907() { + DbRowType.DBRowType_cache.clear(); } } \ No newline at end of file diff --git a/osrs/src/main/java/Language.java b/osrs/src/main/java/Language.java index b70ecb3c5..1915745b9 100644 --- a/osrs/src/main/java/Language.java +++ b/osrs/src/main/java/Language.java @@ -7,97 +7,95 @@ -@ObfuscatedName("on") +@ObfuscatedName("of") @Implements("Language") -public class Language implements class371 { - @ObfuscatedName("au") +public class Language implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) @Export("Language_EN") public static final Language Language_EN; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) - static final Language field3606; - @ObfuscatedName("ao") + static final Language field3646; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) @Export("Language_FR") public static final Language Language_FR; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) - static final Language field3607; - @ObfuscatedName("ac") + static final Language field3647; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) - static final Language field3605; - @ObfuscatedName("ai") + static final Language field3645; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lon;" + descriptor = "Lof;" ) @Export("Language_ES") public static final Language Language_ES; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lon;" - ) - static final Language field3608; - @ObfuscatedName("ad") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "[Lon;" + descriptor = "Lof;" ) - static final Language[] field3609; - @ObfuscatedName("bv") + static final Language field3644; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "[Lof;" ) - @Export("Widget_spritesArchive") - public static AbstractArchive Widget_spritesArchive; - @ObfuscatedName("cs") + static final Language[] field3648; + @ObfuscatedName("aw") + @Export("canvasWidth") + public static int canvasWidth; + @ObfuscatedName("fl") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Loh;" ) - @Export("loginType") - static LoginType loginType; - @ObfuscatedName("ap") - final String field3612; - @ObfuscatedName("aa") + static Archive field3643; + @ObfuscatedName("gr") + static int field3642; + @ObfuscatedName("ac") + final String field3650; + @ObfuscatedName("al") @Export("language") final String language; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("id") final int id; static { - Language_EN = new Language("EN", "en", "English", ModeWhere.field3626, 0, "GB"); - field3606 = new Language("DE", "de", "German", ModeWhere.field3626, 1, "DE"); - Language_FR = new Language("FR", "fr", "French", ModeWhere.field3626, 2, "FR"); - field3607 = new Language("PT", "pt", "Portuguese", ModeWhere.field3626, 3, "BR"); - field3605 = new Language("NL", "nl", "Dutch", ModeWhere.field3625, 4, "NL"); - Language_ES = new Language("ES", "es", "Spanish", ModeWhere.field3625, 5, "ES"); - field3608 = new Language("ES_MX", "es-mx", "Spanish (Latin American)", ModeWhere.field3626, 6, "MX"); - Language[] var0 = method1972(); - field3609 = new Language[var0.length]; + Language_EN = new Language("EN", "en", "English", ModeWhere.field3661, 0, "GB"); + field3646 = new Language("DE", "de", "German", ModeWhere.field3661, 1, "DE"); + Language_FR = new Language("FR", "fr", "French", ModeWhere.field3661, 2, "FR"); + field3647 = new Language("PT", "pt", "Portuguese", ModeWhere.field3661, 3, "BR"); + field3645 = new Language("NL", "nl", "Dutch", ModeWhere.field3658, 4, "NL"); + Language_ES = new Language("ES", "es", "Spanish", ModeWhere.field3658, 5, "ES"); + field3644 = new Language("ES_MX", "es-mx", "Spanish (Latin American)", ModeWhere.field3661, 6, "MX"); + Language[] var0 = method1992(); + field3648 = new Language[var0.length]; Language[] var1 = var0; for (int var2 = 0; var2 < var1.length; ++var2) { Language var3 = var1[var2]; - field3609[var3.id] = var3; + field3648[var3.id] = var3; } } @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Loe;ILjava/lang/String;)V" + descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lok;ILjava/lang/String;)V" ) Language(String var1, String var2, String var3, ModeWhere var4, int var5, String var6) { - this.field3612 = var1; + this.field3650 = var1; this.language = var2; this.id = var5; if (var6 != null) { @@ -108,20 +106,20 @@ public class Language implements class371 { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "82" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1714564751" ) @Export("getLanguage") String getLanguage() { @@ -134,87 +132,122 @@ public String toString() { return this.getLanguage().toLowerCase(Locale.ENGLISH); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)[Lon;", - garbageValue = "-905836833" + descriptor = "(I)[Lfa;", + garbageValue = "-1038072000" ) - static Language[] method1972() { - return new Language[]{Language_ES, field3606, Language_FR, field3608, field3605, Language_EN, field3607}; + static class132[] method1991() { + return new class132[]{class132.field1279, class132.field1276, class132.field1278, class132.field1277, class132.field1275, class132.field1280}; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "66381547" - ) - static void method1973() { - Tiles.Tiles_minPlane = 99; - Tiles.Tiles_underlays = new short[4][104][104]; - class227.Tiles_overlays = new short[4][104][104]; - class172.Tiles_shapes = new byte[4][104][104]; - ModelData0.field2282 = new byte[4][104][104]; - BufferedNetSocket.field3820 = new int[4][105][105]; - MoveSpeed.field1924 = new byte[4][105][105]; - class162.field1419 = new int[105][105]; - Fonts.Tiles_hue = new int[104]; - class466.Tiles_saturation = new int[104]; - Tiles.Tiles_lightness = new int[104]; - class128.Tiles_hueMultiplier = new int[104]; - Interpreter.field710 = new int[104]; + descriptor = "(B)[Lof;", + garbageValue = "0" + ) + static Language[] method1992() { + return new Language[]{field3647, field3644, Language_FR, Language_EN, field3645, field3646, Language_ES}; } - @ObfuscatedName("at") + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Lfm;FFFFFFFFB)V", + garbageValue = "1" + ) + static void method1997(class131 var0, float var1, float var2, float var3, float var4, float var5, float var6, float var7, float var8) { + if (var0 != null) { + float var9 = var4 - var1; + if ((double)var9 != 0.0D) { + float var10 = var2 - var1; + float var11 = var3 - var1; + float[] var12 = new float[]{var10 / var9, var11 / var9}; + var0.field1255 = var12[0] == 0.33333334F && 0.6666667F == var12[1]; + float var13 = var12[0]; + float var14 = var12[1]; + if ((double)var12[0] < 0.0D) { + var12[0] = 0.0F; + } + + if ((double)var12[1] > 1.0D) { + var12[1] = 1.0F; + } + + if ((double)var12[0] > 1.0D || var12[1] < -1.0F) { + var12[1] = 1.0F - var12[1]; + if (var12[0] < 0.0F) { + var12[0] = 0.0F; + } + + if (var12[1] < 0.0F) { + var12[1] = 0.0F; + } + + if (var12[0] > 1.0F || var12[1] > 1.0F) { + float var15 = (float)(1.0D + ((double)var12[1] - 2.0D) * (double)var12[1] + (double)(var12[0] * (var12[1] + (var12[0] - 2.0F)))); + if (var15 + class127.field1219 > 0.0F) { + if (class127.field1219 + var12[0] < 1.3333334F) { + float var16 = var12[0] - 2.0F; + float var17 = var12[0] - 1.0F; + float var18 = (float)Math.sqrt((double)(var16 * var16 - var17 * var17 * 4.0F)); + float var19 = (-var16 + var18) * 0.5F; + if (var12[1] + class127.field1219 > var19) { + var12[1] = var19 - class127.field1219; + } else { + var19 = 0.5F * (-var16 - var18); + if (var12[1] < class127.field1219 + var19) { + var12[1] = class127.field1219 + var19; + } + } + } else { + var12[0] = 1.3333334F - class127.field1219; + var12[1] = 0.33333334F - class127.field1219; + } + } + } + + var12[1] = 1.0F - var12[1]; + } + + if (var12[0] != var13) { + var2 = var12[0] * var9 + var1; + if (0.0D != (double)var13) { + var6 = var5 + var12[0] * (var6 - var5) / var13; + } + } + + if (var12[1] != var14) { + float var10000 = var1 + var12[1] * var9; + if ((double)var14 != 1.0D) { + var7 = (float)((double)var8 - (1.0D - (double)var12[1]) * (double)(var8 - var7) / (1.0D - (double)var14)); + } + } + + var0.field1259 = var1; + var0.field1260 = var4; + class145.method767(0.0F, var12[0], var12[1], 1.0F, var0); + Canvas.method90(var5, var6, var7, var8, var0); + } + } + } + + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)Lon;", - garbageValue = "-695535703" + descriptor = "(IB)Lof;", + garbageValue = "15" ) - public static Language method1976(int var0) { - return var0 >= 0 && var0 < field3609.length ? field3609[var0] : null; + public static Language method1995(int var0) { + return var0 >= 0 && var0 < field3648.length ? field3648[var0] : null; } - @ObfuscatedName("lf") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IIIIIIB)V", - garbageValue = "56" + descriptor = "(I)Lcr;", + garbageValue = "458832274" ) - static final void method1977(int var0, int var1, int var2, int var3, int var4, int var5) { - int var6 = var2 - var0; - int var7 = var3 - var1; - int var8 = var6 >= 0 ? var6 : -var6; - int var9 = var7 >= 0 ? var7 : -var7; - int var10 = var8; - if (var8 < var9) { - var10 = var9; - } - - if (var10 != 0) { - int var11 = (var6 << 16) / var10; - int var12 = (var7 << 16) / var10; - if (var12 <= var11) { - var11 = -var11; - } else { - var12 = -var12; - } - - int var13 = var5 * var12 >> 17; - int var14 = var5 * var12 + 1 >> 17; - int var15 = var5 * var11 >> 17; - int var16 = var5 * var11 + 1 >> 17; - var0 -= Rasterizer2D.Rasterizer2D_xClipStart; - var1 -= Rasterizer2D.Rasterizer2D_yClipStart; - int var17 = var0 + var13; - int var18 = var0 - var14; - int var19 = var0 + var6 - var14; - int var20 = var0 + var13 + var6; - int var21 = var15 + var1; - int var22 = var1 - var16; - int var23 = var7 + var1 - var16; - int var24 = var15 + var7 + var1; - Rasterizer3D.method1203(var17, var18, var19); - Rasterizer3D.method1205(var21, var22, var23, var17, var18, var19, 0.0F, 0.0F, 0.0F, var4); - Rasterizer3D.method1203(var17, var19, var20); - Rasterizer3D.method1205(var21, var23, var24, var17, var19, var20, 0.0F, 0.0F, 0.0F, var4); - } + @Export("worldListStart") + static World worldListStart() { + World.World_listCount = 0; + return WorldMapData_0.getNextWorldListWorld(); } } \ No newline at end of file diff --git a/osrs/src/main/java/Link.java b/osrs/src/main/java/Link.java index b2c81581a..a15599052 100644 --- a/osrs/src/main/java/Link.java +++ b/osrs/src/main/java/Link.java @@ -3,23 +3,23 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ri") +@ObfuscatedName("se") @Implements("Link") public class Link { - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lri;" + descriptor = "Lse;" ) @Export("previous") public Link previous; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lri;" + descriptor = "Lse;" ) @Export("next") public Link next; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("remove") public void remove() { if (this.next != null) { diff --git a/osrs/src/main/java/LinkDeque.java b/osrs/src/main/java/LinkDeque.java index 45089972d..de85a9d4f 100644 --- a/osrs/src/main/java/LinkDeque.java +++ b/osrs/src/main/java/LinkDeque.java @@ -3,18 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ox") +@ObfuscatedName("pu") @Implements("LinkDeque") public class LinkDeque { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lri;" + descriptor = "Lse;" ) @Export("sentinel") Link sentinel; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lri;" + descriptor = "Lse;" ) @Export("current") Link current; @@ -25,9 +25,9 @@ public LinkDeque() { this.sentinel.next = this.sentinel; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lri;)V" + descriptor = "(Lse;)V" ) @Export("addFirst") public void addFirst(Link var1) { @@ -41,9 +41,9 @@ public void addFirst(Link var1) { var1.previous.next = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "()Lri;" + descriptor = "()Lse;" ) @Export("last") public Link last() { @@ -57,9 +57,9 @@ public Link last() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "()Lri;" + descriptor = "()Lse;" ) @Export("previous") public Link previous() { diff --git a/osrs/src/main/java/Login.java b/osrs/src/main/java/Login.java index 43e62c887..65d01f5e1 100644 --- a/osrs/src/main/java/Login.java +++ b/osrs/src/main/java/Login.java @@ -4,122 +4,143 @@ import net.runelite.mapping.ObfuscatedSignature; import java.text.DecimalFormat; -import java.util.ArrayList; +import java.util.concurrent.ArrayBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; @ObfuscatedName("cy") @Implements("Login") public class Login { - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("xPadding") static int xPadding; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - @Export("runesSprite") - static IndexedSprite[] runesSprite; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Lup;" ) @Export("titleboxSprite") static IndexedSprite titleboxSprite; - @ObfuscatedName("az") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Lup;" ) - static IndexedSprite field777; + @Export("titlebuttonSprite") + static IndexedSprite titlebuttonSprite; @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lui;" + descriptor = "Lup;" + ) + static IndexedSprite field776; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Luz;" + ) + @Export("rightTitleSprite") + static SpritePixels rightTitleSprite; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + @Export("logoSprite") + static IndexedSprite logoSprite; + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "[Lup;" ) - @Export("leftTitleSprite") - static SpritePixels leftTitleSprite; - @ObfuscatedName("al") + @Export("title_muteSprite") + static IndexedSprite[] title_muteSprite; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Lup;" ) - @Export("options_buttons_0Sprite") - static IndexedSprite options_buttons_0Sprite; - @ObfuscatedName("ay") + static IndexedSprite field779; + @ObfuscatedName("ae") @Export("loginBoxX") static int loginBoxX; - @ObfuscatedName("av") + @ObfuscatedName("an") + @Export("userHomeDirectory") + static String userHomeDirectory; + @ObfuscatedName("ag") @Export("Login_loadingPercent") static int Login_loadingPercent; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("Login_loadingText") static String Login_loadingText; - @ObfuscatedName("bi") - static int field750; - @ObfuscatedName("bn") + @ObfuscatedName("bc") static int field751; - @ObfuscatedName("cw") + @ObfuscatedName("bb") + static int field750; + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "Lrv;" + ) + static Bounds field775; + @ObfuscatedName("cf") @Export("loginIndex") static int loginIndex; - @ObfuscatedName("cf") + @ObfuscatedName("cg") @Export("Login_response0") static String Login_response0; - @ObfuscatedName("cm") + @ObfuscatedName("cv") @Export("Login_response1") static String Login_response1; - @ObfuscatedName("cn") + @ObfuscatedName("cx") @Export("Login_response2") static String Login_response2; - @ObfuscatedName("cs") + @ObfuscatedName("cp") @Export("Login_response3") static String Login_response3; - @ObfuscatedName("cx") + @ObfuscatedName("ce") @Export("Login_username") static String Login_username; - @ObfuscatedName("cr") + @ObfuscatedName("ci") @Export("Login_password") static String Login_password; - @ObfuscatedName("ce") - static int field752; + @ObfuscatedName("cw") + static int field753; @ObfuscatedName("cq") - static String[] field768; - @ObfuscatedName("cu") - static String field764; + static String[] field769; + @ObfuscatedName("cn") + static String field763; + @ObfuscatedName("cb") + static boolean field743; @ObfuscatedName("cz") static boolean field745; - @ObfuscatedName("ct") + @ObfuscatedName("cd") static boolean field744; - @ObfuscatedName("cc") - static boolean field743; - @ObfuscatedName("dh") + @ObfuscatedName("dt") @Export("currentLoginField") static int currentLoginField; - @ObfuscatedName("dn") + @ObfuscatedName("dx") @Export("worldSelectOpen") static boolean worldSelectOpen; - @ObfuscatedName("dk") + @ObfuscatedName("dr") @Export("hoveredWorldIndex") static int hoveredWorldIndex; - @ObfuscatedName("df") + @ObfuscatedName("ds") @Export("worldSelectPage") static int worldSelectPage; - @ObfuscatedName("dz") + @ObfuscatedName("da") @Export("worldSelectPagesCount") static int worldSelectPagesCount; - @ObfuscatedName("dv") - static long field773; - @ObfuscatedName("dr") - static long field772; - @ObfuscatedName("do") - static String[] field770; - @ObfuscatedName("db") - static String[] field769; @ObfuscatedName("dp") + static long field774; + @ObfuscatedName("df") + static long field773; + @ObfuscatedName("dv") static String[] field771; + @ObfuscatedName("dz") + static String[] field772; + @ObfuscatedName("dl") + static String[] field770; static { xPadding = 0; loginBoxX = xPadding + 202; Login_loadingPercent = 10; Login_loadingText = ""; - field750 = -1; - field751 = 1; + field751 = -1; + field750 = 1; loginIndex = 0; Login_response0 = ""; Login_response1 = ""; @@ -127,82 +148,74 @@ public class Login { Login_response3 = ""; Login_username = ""; Login_password = ""; - field752 = 0; - field768 = new String[8]; - field764 = ""; + field753 = 0; + field769 = new String[8]; + field763 = ""; + field743 = false; field745 = false; - field744 = false; - field743 = true; + field744 = true; currentLoginField = 0; worldSelectOpen = false; hoveredWorldIndex = -1; worldSelectPage = 0; worldSelectPagesCount = 0; new DecimalFormat("##0.00"); - new class133(); + new class135(); + field774 = -1L; field773 = -1L; - field772 = -1L; - field770 = new String[]{"title.jpg"}; - field769 = new String[]{"logo", "logo_deadman_mode", "logo_seasonal_mode", "titlebox", "titlebutton", "titlebutton_large", "play_now_text", "titlebutton_wide42,1", "runes", "title_mute", "options_radio_buttons,0", "options_radio_buttons,2", "options_radio_buttons,4", "options_radio_buttons,6", "sl_back", "sl_flags", "sl_arrows", "sl_stars", "sl_button"}; - field771 = new String[]{"logo_speedrunning"}; + field771 = new String[]{"title.jpg"}; + field772 = new String[]{"logo", "logo_deadman_mode", "logo_seasonal_mode", "titlebox", "titlebutton", "titlebutton_large", "play_now_text", "titlebutton_wide42,1", "runes", "title_mute", "options_radio_buttons,0", "options_radio_buttons,2", "options_radio_buttons,4", "options_radio_buttons,6", "sl_back", "sl_flags", "sl_arrows", "sl_stars", "sl_button"}; + field770 = new String[]{"logo_speedrunning"}; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lro;", - garbageValue = "1233302527" + descriptor = "(Lol;Lol;IZI)Lfo;", + garbageValue = "-1429797359" ) - public static class449 method427() { - synchronized(class449.field3868) { - if (class338.field3112 == 0) { - return new class449(); + public static class139 method437(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { + boolean var4 = true; + byte[] var5 = var0.getFile(var2 >> 16 & 65535, var2 & 65535); + if (var5 == null) { + var4 = false; + return null; + } else { + int var6 = (var5[1] & 255) << 8 | var5[2] & 255; + byte[] var7; + if (var3) { + var7 = var1.getFile(0, var6); } else { - class449.field3868[--class338.field3112].method2296(); - return class449.field3868[class338.field3112]; + var7 = var1.getFile(var6, 0); } - } - } - @ObfuscatedName("io") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1609122082" - ) - @Export("playJingle") - static void playJingle(int var0, int var1) { - if (class449.clientPreferences.getCurrentMusicVolume() != 0 && var0 != -1) { - ArrayList var2 = new ArrayList(); - var2.add(new MusicSong(class388.field3655, var0, 0, class449.clientPreferences.getCurrentMusicVolume(), false)); - class53.method291(var2, 0, 0, 0, 0, true); - Client.playingJingle = true; - } - - } + if (var7 == null) { + var4 = false; + } - @ObfuscatedName("lb") - @ObfuscatedSignature( - descriptor = "([Lmi;Lmi;ZI)V", - garbageValue = "1287151342" - ) - @Export("revalidateWidgetScroll") - static void revalidateWidgetScroll(Widget[] var0, Widget var1, boolean var2) { - int var3 = var1.scrollWidth != 0 ? var1.scrollWidth * -1561222175 * -568991711 : var1.width * 501302871 * 2076902759; - int var4 = var1.scrollHeight != 0 ? var1.scrollHeight * 917378589 * 1251957813 : var1.height * -556278153 * 1553685319; - PcmPlayer.resizeInterface(var0, var1.id, var3, var4, var2); - if (var1.children != null) { - PcmPlayer.resizeInterface(var1.children, var1.id, var3, var4, var2); - } + if (!var4) { + return null; + } else { + if (class139.field1309 == null) { + FloorDecoration.field2162 = Runtime.getRuntime().availableProcessors(); + class139.field1309 = new ThreadPoolExecutor(0, FloorDecoration.field2162, 0L, TimeUnit.MILLISECONDS, new ArrayBlockingQueue(FloorDecoration.field2162 * 100 + 100), new class136()); + } - InterfaceParent var5 = (InterfaceParent)Client.interfaceParents.get((long)var1.id); - if (var5 != null) { - int var6 = var5.group; - if (ModeWhere.loadInterface(var6)) { - PcmPlayer.resizeInterface(PacketBufferNode.Widget_interfaceComponents[var6], -1, var3, var4, var2); + try { + return new class139(var0, var1, var2, var3); + } catch (Exception var9) { + return null; + } } } + } - if (var1.contentType == 1337) { - } - + @ObfuscatedName("mr") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "10" + ) + static final void method438(int var0) { + var0 = Math.min(Math.max(var0, 0), 127); + WorldMapIcon_1.clientPreferences.setAreaSoundEffectsVolume(var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/LoginPacket.java b/osrs/src/main/java/LoginPacket.java index bddd72d30..e07360f36 100644 --- a/osrs/src/main/java/LoginPacket.java +++ b/osrs/src/main/java/LoginPacket.java @@ -3,63 +3,62 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lk") +@ObfuscatedName("lo") @Implements("LoginPacket") -public class LoginPacket implements class293 { - @ObfuscatedName("au") +public class LoginPacket implements class304 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) - public static final LoginPacket field2746; - @ObfuscatedName("ae") + public static final LoginPacket field2764; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) - static final LoginPacket field2747; - @ObfuscatedName("ao") + static final LoginPacket field2765; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) @Export("NEW_LOGIN_CONNECTION") public static final LoginPacket NEW_LOGIN_CONNECTION; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) @Export("RECONNECT_LOGIN_CONNECTION") public static final LoginPacket RECONNECT_LOGIN_CONNECTION; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) - public static final LoginPacket field2743; - @ObfuscatedName("ai") + public static final LoginPacket field2761; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Llk;" + descriptor = "Llo;" ) - static final LoginPacket field2748; - @ObfuscatedName("ap") + static final LoginPacket field2766; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "[Llk;" + descriptor = "[Llo;" ) - static final LoginPacket[] field2749; - @ObfuscatedName("az") + static final LoginPacket[] field2767; + @ObfuscatedName("aa") @Export("id") public final int id; static { - field2746 = new LoginPacket(14, 0); - field2747 = new LoginPacket(15, 4); + field2764 = new LoginPacket(14, 0); + field2765 = new LoginPacket(15, 4); NEW_LOGIN_CONNECTION = new LoginPacket(16, -2); RECONNECT_LOGIN_CONNECTION = new LoginPacket(18, -2); - field2743 = new LoginPacket(19, -2); - field2748 = new LoginPacket(27, 0); - field2749 = new LoginPacket[32]; - LoginPacket[] var0 = new LoginPacket[]{field2746, field2747, RECONNECT_LOGIN_CONNECTION, field2748, field2743, NEW_LOGIN_CONNECTION}; - LoginPacket[] var1 = var0; + field2761 = new LoginPacket(19, -2); + field2766 = new LoginPacket(27, 0); + field2767 = new LoginPacket[32]; + LoginPacket[] var0 = class36.method183(); - for (int var2 = 0; var2 < var1.length; ++var2) { - field2749[var1[var2].id] = var1[var2]; + for (int var1 = 0; var1 < var0.length; ++var1) { + field2767[var0[var1].id] = var0[var1]; } } @@ -72,210 +71,70 @@ public class LoginPacket implements class293 { this.id = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IILiw;Lis;Lij;S)Z", - garbageValue = "24346" + descriptor = "(II)Lgz;", + garbageValue = "2140543068" ) - static final boolean method1616(int var0, int var1, RouteStrategy var2, CollisionMap var3, class216 var4) { - int var5 = var4.method1132(); - int var6 = var4.method1133(); - int[][] var7 = var4.method1135(); - int[][] var8 = var4.method1134(); - int[] var9 = var4.method1136(); - int[] var10 = var4.method1137(); - int var11 = var4.method1138(); - int var12 = var0; - int var13 = var1; - int var14 = var5 >> 1; - int var15 = var6 >> 1; - int var16 = var0 - var14; - int var17 = var1 - var15; - var8[var14][var15] = 99; - var7[var14][var15] = 0; - byte var18 = 0; - int var19 = 0; - var9[var18] = var0; - byte var10001 = var18; - int var24 = var18 + 1; - var10[var10001] = var1; - int[][] var20 = var3.flags; - - while (var19 != var24) { - var12 = var9[var19]; - var13 = var10[var19]; - var19 = var19 + 1 & var11; - var14 = var12 - var16; - var15 = var13 - var17; - int var21 = var12 - var3.xInset; - int var22 = var13 - var3.yInset; - if (var2.hasArrived(2, var12, var13, var3)) { - var4.method1129(var12, var13); - return true; - } - - int var23 = var7[var14][var15] + 1; - if (var14 > 0 && var8[var14 - 1][var15] == 0 && (var20[var21 - 1][var22] & 19136782) == 0 && (var20[var21 - 1][var22 + 1] & 19136824) == 0) { - var9[var24] = var12 - 1; - var10[var24] = var13; - var24 = var24 + 1 & var11; - var8[var14 - 1][var15] = 2; - var7[var14 - 1][var15] = var23; - } - - if (var14 < var5 - 2 && var8[var14 + 1][var15] == 0 && (var20[var21 + 2][var22] & 19136899) == 0 && (var20[var21 + 2][var22 + 1] & 19136992) == 0) { - var9[var24] = var12 + 1; - var10[var24] = var13; - var24 = var24 + 1 & var11; - var8[var14 + 1][var15] = 8; - var7[var14 + 1][var15] = var23; - } - - if (var15 > 0 && var8[var14][var15 - 1] == 0 && (var20[var21][var22 - 1] & 19136782) == 0 && (var20[var21 + 1][var22 - 1] & 19136899) == 0) { - var9[var24] = var12; - var10[var24] = var13 - 1; - var24 = var24 + 1 & var11; - var8[var14][var15 - 1] = 1; - var7[var14][var15 - 1] = var23; - } - - if (var15 < var6 - 2 && var8[var14][var15 + 1] == 0 && (var20[var21][var22 + 2] & 19136824) == 0 && (var20[var21 + 1][var22 + 2] & 19136992) == 0) { - var9[var24] = var12; - var10[var24] = var13 + 1; - var24 = var24 + 1 & var11; - var8[var14][var15 + 1] = 4; - var7[var14][var15 + 1] = var23; - } - - if (var14 > 0 && var15 > 0 && var8[var14 - 1][var15 - 1] == 0 && (var20[var21 - 1][var22] & 19136830) == 0 && (var20[var21 - 1][var22 - 1] & 19136782) == 0 && (var20[var21][var22 - 1] & 19136911) == 0) { - var9[var24] = var12 - 1; - var10[var24] = var13 - 1; - var24 = var24 + 1 & var11; - var8[var14 - 1][var15 - 1] = 3; - var7[var14 - 1][var15 - 1] = var23; + @Export("getInvDefinition") + public static InvDefinition getInvDefinition(int var0) { + InvDefinition var1 = (InvDefinition)InvDefinition.InvDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = InvDefinition.InvDefinition_archive.takeFile(5, var0); + var1 = new InvDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); } - if (var14 < var5 - 2 && var15 > 0 && var8[var14 + 1][var15 - 1] == 0 && (var20[var21 + 1][var22 - 1] & 19136911) == 0 && (var20[var21 + 2][var22 - 1] & 19136899) == 0 && (var20[var21 + 2][var22] & 19136995) == 0) { - var9[var24] = var12 + 1; - var10[var24] = var13 - 1; - var24 = var24 + 1 & var11; - var8[var14 + 1][var15 - 1] = 9; - var7[var14 + 1][var15 - 1] = var23; - } - - if (var14 > 0 && var15 < var6 - 2 && var8[var14 - 1][var15 + 1] == 0 && (var20[var21 - 1][var22 + 1] & 19136830) == 0 && (var20[var21 - 1][var22 + 2] & 19136824) == 0 && (var20[var21][var22 + 2] & 19137016) == 0) { - var9[var24] = var12 - 1; - var10[var24] = var13 + 1; - var24 = var24 + 1 & var11; - var8[var14 - 1][var15 + 1] = 6; - var7[var14 - 1][var15 + 1] = var23; - } - - if (var14 < var5 - 2 && var15 < var6 - 2 && var8[var14 + 1][var15 + 1] == 0 && (var20[var21 + 1][var22 + 2] & 19137016) == 0 && (var20[var21 + 2][var22 + 2] & 19136992) == 0 && (var20[var21 + 2][var22 + 1] & 19136995) == 0) { - var9[var24] = var12 + 1; - var10[var24] = var13 + 1; - var24 = var24 + 1 & var11; - var8[var14 + 1][var15 + 1] = 12; - var7[var14 + 1][var15 + 1] = var23; - } + InvDefinition.InvDefinition_cached.put(var1, (long)var0); + return var1; } - - var4.method1129(var12, var13); - return false; } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;IIB)Lpi;", - garbageValue = "69" + descriptor = "(I)V", + garbageValue = "216092039" ) - public static Font method1613(AbstractArchive var0, AbstractArchive var1, int var2, int var3) { - return !ApproximateRouteStrategy.method345(var0, var2, var3) ? null : HealthBarDefinition.method969(var1.takeFile(var2, var3)); + public static void method1643() { + VarpDefinition.VarpDefinition_cached.clear(); } - @ObfuscatedName("ac") + @ObfuscatedName("io") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;II[BIB)I", - garbageValue = "88" + descriptor = "(Ljava/lang/String;ZB)V", + garbageValue = "-63" ) - @Export("encodeStringCp1252") - public static int encodeStringCp1252(CharSequence var0, int var1, int var2, byte[] var3, int var4) { - int var5 = var2 - var1; - - for (int var6 = 0; var6 < var5; ++var6) { - char var7 = var0.charAt(var6 + var1); - if ((var7 <= 0 || var7 >= 128) && (var7 < 160 || var7 > 255)) { - if (var7 == 8364) { - var3[var6 + var4] = -128; - } else if (var7 == 8218) { - var3[var6 + var4] = -126; - } else if (var7 == 402) { - var3[var6 + var4] = -125; - } else if (var7 == 8222) { - var3[var6 + var4] = -124; - } else if (var7 == 8230) { - var3[var6 + var4] = -123; - } else if (var7 == 8224) { - var3[var6 + var4] = -122; - } else if (var7 == 8225) { - var3[var6 + var4] = -121; - } else if (var7 == 710) { - var3[var6 + var4] = -120; - } else if (var7 == 8240) { - var3[var6 + var4] = -119; - } else if (var7 == 352) { - var3[var6 + var4] = -118; - } else if (var7 == 8249) { - var3[var6 + var4] = -117; - } else if (var7 == 338) { - var3[var6 + var4] = -116; - } else if (var7 == 381) { - var3[var6 + var4] = -114; - } else if (var7 == 8216) { - var3[var6 + var4] = -111; - } else if (var7 == 8217) { - var3[var6 + var4] = -110; - } else if (var7 == 8220) { - var3[var6 + var4] = -109; - } else if (var7 == 8221) { - var3[var6 + var4] = -108; - } else if (var7 == 8226) { - var3[var6 + var4] = -107; - } else if (var7 == 8211) { - var3[var6 + var4] = -106; - } else if (var7 == 8212) { - var3[var6 + var4] = -105; - } else if (var7 == 732) { - var3[var6 + var4] = -104; - } else if (var7 == 8482) { - var3[var6 + var4] = -103; - } else if (var7 == 353) { - var3[var6 + var4] = -102; - } else if (var7 == 8250) { - var3[var6 + var4] = -101; - } else if (var7 == 339) { - var3[var6 + var4] = -100; - } else if (var7 == 382) { - var3[var6 + var4] = -98; - } else if (var7 == 376) { - var3[var6 + var4] = -97; - } else { - var3[var6 + var4] = 63; + @Export("drawLoadingMessage") + static final void drawLoadingMessage(String var0, boolean var1) { + if (Client.showLoadingMessages) { + byte var2 = 4; + int var3 = var2 + 6; + int var4 = var2 + 6; + int var5 = ItemLayer.fontPlain12.lineWidth(var0, 250); + int var6 = ItemLayer.fontPlain12.lineCount(var0, 250) * 13; + Rasterizer2D.Rasterizer2D_fillRectangle(var3 - var2, var4 - var2, var5 + var2 + var2, var2 + var6 + var2, 0); + Rasterizer2D.Rasterizer2D_drawRectangle(var3 - var2, var4 - var2, var5 + var2 + var2, var6 + var2 + var2, 16777215); + ItemLayer.fontPlain12.drawLines(var0, var3, var4, var5, var6, 16777215, -1, 1, 1, 0); + int var7 = var3 - var2; + int var8 = var4 - var2; + int var9 = var2 + var2 + var5; + int var10 = var2 + var2 + var6; + + for (int var11 = 0; var11 < Client.rootWidgetCount; ++var11) { + if (Client.rootWidgetWidths[var11] + Client.rootWidgetXs[var11] > var7 && Client.rootWidgetXs[var11] < var9 + var7 && Client.rootWidgetHeights[var11] + Client.rootWidgetYs[var11] > var8 && Client.rootWidgetYs[var11] < var8 + var10) { + Client.field407[var11] = true; } - } else { - var3[var6 + var4] = (byte)var7; } - } - return var5; - } + if (var1) { + class338.rasterProvider.drawFull(0, 0); + } else { + SoundSystem.method233(var3, var4, var5, var6); + } - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-245858333" - ) - static void method1614() { - ItemContainer.itemContainers = new NodeHashTable(32); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/LoginScreenAnimation.java b/osrs/src/main/java/LoginScreenAnimation.java index 0ba0b5a79..b628c0dec 100644 --- a/osrs/src/main/java/LoginScreenAnimation.java +++ b/osrs/src/main/java/LoginScreenAnimation.java @@ -3,189 +3,200 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("db") +import java.io.IOException; + +@ObfuscatedName("dz") @Implements("LoginScreenAnimation") public class LoginScreenAnimation { - @ObfuscatedName("au") + @ObfuscatedName("ls") + @Export("oculusOrbFocalPointX") + static int oculusOrbFocalPointX; + @ObfuscatedName("te") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "Lbn;" ) - IndexedSprite[] field1055; - @ObfuscatedName("az") - int[] field1054; - @ObfuscatedName("ap") - int field1043; + @Export("pcmStreamMixer") + static PcmStreamMixer pcmStreamMixer; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + IndexedSprite[] field1063; @ObfuscatedName("aa") - int[] field1046; - @ObfuscatedName("af") - int[] field1049; - @ObfuscatedName("ad") - int[] field1048; - @ObfuscatedName("aq") - int[] field1052; + int[] field1054; + @ObfuscatedName("ac") + int field1048; @ObfuscatedName("al") - int field1041; - @ObfuscatedName("an") - int field1042; - @ObfuscatedName("ar") - int[] field1053; - @ObfuscatedName("ab") - int[] field1047; - @ObfuscatedName("ag") - int[] field1050; - @ObfuscatedName("am") - int[] field1051; + int[] field1057; + @ObfuscatedName("az") + int[] field1062; + @ObfuscatedName("ap") + int[] field1059; + @ObfuscatedName("av") + int[] field1060; @ObfuscatedName("ax") - int field1045; - @ObfuscatedName("ah") - int field1040; + int field1053; @ObfuscatedName("as") - int field1044; + int field1051; + @ObfuscatedName("ay") + int[] field1061; + @ObfuscatedName("ak") + int[] field1056; + @ObfuscatedName("aj") + int[] field1055; + @ObfuscatedName("am") + int[] field1058; + @ObfuscatedName("aq") + int field1050; + @ObfuscatedName("ai") + int field1049; + @ObfuscatedName("aw") + int field1052; @ObfuscatedSignature( - descriptor = "([Luk;)V" + descriptor = "([Lup;)V" ) LoginScreenAnimation(IndexedSprite[] var1) { this.field1054 = new int[256]; - this.field1043 = 0; - this.field1041 = 0; - this.field1042 = 0; - this.field1045 = 0; - this.field1040 = 0; - this.field1044 = 0; - this.field1055 = var1; + this.field1048 = 0; + this.field1053 = 0; + this.field1051 = 0; + this.field1050 = 0; + this.field1049 = 0; + this.field1052 = 0; + this.field1063 = var1; this.initColors(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-111" + garbageValue = "47" ) @Export("initColors") void initColors() { - this.field1049 = new int[256]; + this.field1062 = new int[256]; int var1; for (var1 = 0; var1 < 64; ++var1) { - this.field1049[var1] = var1 * 262144; + this.field1062[var1] = var1 * 262144; } for (var1 = 0; var1 < 64; ++var1) { - this.field1049[var1 + 64] = var1 * 1024 + 16711680; + this.field1062[var1 + 64] = var1 * 1024 + 16711680; } for (var1 = 0; var1 < 64; ++var1) { - this.field1049[var1 + 128] = var1 * 4 + 16776960; + this.field1062[var1 + 128] = var1 * 4 + 16776960; } for (var1 = 0; var1 < 64; ++var1) { - this.field1049[var1 + 192] = 16777215; + this.field1062[var1 + 192] = 16777215; } - this.field1048 = new int[256]; + this.field1059 = new int[256]; for (var1 = 0; var1 < 64; ++var1) { - this.field1048[var1] = var1 * 1024; + this.field1059[var1] = var1 * 1024; } for (var1 = 0; var1 < 64; ++var1) { - this.field1048[var1 + 64] = var1 * 4 + 65280; + this.field1059[var1 + 64] = var1 * 4 + 65280; } for (var1 = 0; var1 < 64; ++var1) { - this.field1048[var1 + 128] = var1 * 262144 + 65535; + this.field1059[var1 + 128] = var1 * 262144 + 65535; } for (var1 = 0; var1 < 64; ++var1) { - this.field1048[var1 + 192] = 16777215; + this.field1059[var1 + 192] = 16777215; } - this.field1052 = new int[256]; + this.field1060 = new int[256]; for (var1 = 0; var1 < 64; ++var1) { - this.field1052[var1] = var1 * 4; + this.field1060[var1] = var1 * 4; } for (var1 = 0; var1 < 64; ++var1) { - this.field1052[var1 + 64] = var1 * 262144 + 255; + this.field1060[var1 + 64] = var1 * 262144 + 255; } for (var1 = 0; var1 < 64; ++var1) { - this.field1052[var1 + 128] = var1 * 1024 + 16711935; + this.field1060[var1 + 128] = var1 * 1024 + 16711935; } for (var1 = 0; var1 < 64; ++var1) { - this.field1052[var1 + 192] = 16777215; + this.field1060[var1 + 192] = 16777215; } - this.field1046 = new int[256]; - this.field1045 = 0; - this.field1050 = new int[32768]; - this.field1051 = new int[32768]; - this.method535((IndexedSprite)null); - this.field1053 = new int[32768]; - this.field1047 = new int[32768]; + this.field1057 = new int[256]; + this.field1050 = 0; + this.field1055 = new int[32768]; + this.field1058 = new int[32768]; + this.method533((IndexedSprite)null); + this.field1061 = new int[32768]; + this.field1056 = new int[32768]; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1799116765" + garbageValue = "-761993864" ) - void method528() { - this.field1049 = null; - this.field1048 = null; - this.field1052 = null; - this.field1046 = null; - this.field1050 = null; - this.field1051 = null; - this.field1053 = null; - this.field1047 = null; - this.field1045 = 0; - this.field1040 = 0; + void method524() { + this.field1062 = null; + this.field1059 = null; + this.field1060 = null; + this.field1057 = null; + this.field1055 = null; + this.field1058 = null; + this.field1061 = null; + this.field1056 = null; + this.field1050 = 0; + this.field1049 = 0; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-48" + descriptor = "(III)V", + garbageValue = "960530049" ) @Export("draw") void draw(int var1, int var2) { - if (this.field1053 == null) { + if (this.field1061 == null) { this.initColors(); } - if (this.field1044 == 0) { - this.field1044 = var2; + if (this.field1052 == 0) { + this.field1052 = var2; } - int var3 = var2 - this.field1044; + int var3 = var2 - this.field1052; if (var3 >= 256) { var3 = 0; } - this.field1044 = var2; + this.field1052 = var2; if (var3 > 0) { - this.method530(var3); + this.method528(var3); } - this.method532(var1); + this.method530(var1); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "0" + garbageValue = "-52" ) - final void method530(int var1) { - this.field1045 += var1 * 128; + final void method528(int var1) { + this.field1050 += var1 * 128; int var2; - if (this.field1045 > this.field1050.length) { - this.field1045 -= this.field1050.length; + if (this.field1050 > this.field1055.length) { + this.field1050 -= this.field1055.length; var2 = (int)(Math.random() * 12.0D); - this.method535(this.field1055[var2]); + this.method533(this.field1063[var2]); } var2 = 0; @@ -194,12 +205,12 @@ final void method530(int var1) { int var6; for (int var5 = 0; var5 < var4; ++var5) { - var6 = this.field1053[var3 + var2] - this.field1050[var2 + this.field1045 & this.field1050.length - 1] * var1 / 6; + var6 = this.field1061[var3 + var2] - this.field1055[var2 + this.field1050 & this.field1055.length - 1] * var1 / 6; if (var6 < 0) { var6 = 0; } - this.field1053[var2++] = var6; + this.field1061[var2++] = var6; } byte var15 = 10; @@ -213,29 +224,29 @@ final void method530(int var1) { for (int var9 = 0; var9 < 128; ++var9) { var10 = (int)(Math.random() * 100.0D); if (var10 < 50 && var9 > var15 && var9 < var6) { - this.field1053[var9 + var8] = 255; + this.field1061[var8 + var9] = 255; } else { - this.field1053[var9 + var8] = 0; + this.field1061[var9 + var8] = 0; } } } - if (this.field1041 > 0) { - this.field1041 -= var1 * 4; + if (this.field1053 > 0) { + this.field1053 -= var1 * 4; } - if (this.field1042 > 0) { - this.field1042 -= var1 * 4; + if (this.field1051 > 0) { + this.field1051 -= var1 * 4; } - if (this.field1041 == 0 && this.field1042 == 0) { + if (this.field1053 == 0 && this.field1051 == 0) { var7 = (int)(Math.random() * (double)(2000 / var1)); if (var7 == 0) { - this.field1041 = 1024; + this.field1053 = 1024; } if (var7 == 1) { - this.field1042 = 1024; + this.field1051 = 1024; } } @@ -244,11 +255,11 @@ final void method530(int var1) { } for (var7 = 256 - var1; var7 < 256; ++var7) { - this.field1054[var7] = (int)(Math.sin((double)this.field1043 / 14.0D) * 16.0D + Math.sin((double)this.field1043 / 15.0D) * 14.0D + Math.sin((double)this.field1043 / 16.0D) * 12.0D); - ++this.field1043; + this.field1054[var7] = (int)(Math.sin((double)this.field1048 / 14.0D) * 16.0D + Math.sin((double)this.field1048 / 15.0D) * 14.0D + Math.sin((double)this.field1048 / 16.0D) * 12.0D); + ++this.field1048; } - this.field1040 += var1; + this.field1049 += var1; var7 = ((Client.cycle & 1) + var1) / 2; if (var7 > 0) { short var16 = 128; @@ -258,13 +269,13 @@ final void method530(int var1) { int var11; int var12; int var13; - for (var11 = 0; var11 < this.field1040 * 100; ++var11) { + for (var11 = 0; var11 < this.field1049 * 100; ++var11) { var12 = (int)(Math.random() * (double)var10) + var17; var13 = (int)(Math.random() * (double)var16) + var16; - this.field1053[var12 + (var13 << 7)] = 192; + this.field1061[var12 + (var13 << 7)] = 192; } - this.field1040 = 0; + this.field1049 = 0; int var14; for (var11 = 0; var11 < 256; ++var11) { @@ -273,15 +284,15 @@ final void method530(int var1) { for (var14 = -var7; var14 < 128; ++var14) { if (var7 + var14 < 128) { - var12 += this.field1053[var7 + var14 + var13]; + var12 += this.field1061[var13 + var14 + var7]; } if (var14 - (var7 + 1) >= 0) { - var12 -= this.field1053[var13 + var14 - (var7 + 1)]; + var12 -= this.field1061[var14 + var13 - (var7 + 1)]; } if (var14 >= 0) { - this.field1047[var14 + var13] = var12 / (var7 * 2 + 1); + this.field1056[var14 + var13] = var12 / (var7 * 2 + 1); } } } @@ -291,16 +302,16 @@ final void method530(int var1) { for (var13 = -var7; var13 < 256; ++var13) { var14 = var13 * 128; - if (var7 + var13 < 256) { - var12 += this.field1047[var7 * 128 + var14 + var11]; + if (var13 + var7 < 256) { + var12 += this.field1056[var7 * 128 + var14 + var11]; } if (var13 - (var7 + 1) >= 0) { - var12 -= this.field1047[var11 + var14 - (var7 + 1) * 128]; + var12 -= this.field1056[var11 + var14 - (var7 + 1) * 128]; } if (var13 >= 0) { - this.field1053[var11 + var14] = var12 / (var7 * 2 + 1); + this.field1061[var14 + var11] = var12 / (var7 * 2 + 1); } } } @@ -308,62 +319,62 @@ final void method530(int var1) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IIIS)I", - garbageValue = "1630" + descriptor = "(IIII)I", + garbageValue = "-1611908618" ) - final int method531(int var1, int var2, int var3) { + final int method529(int var1, int var2, int var3) { int var4 = 256 - var3; return (var3 * (var2 & 65280) + var4 * (var1 & 65280) & 16711680) + (var4 * (var1 & 16711935) + var3 * (var2 & 16711935) & -16711936) >> 8; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1503103603" + garbageValue = "-650502535" ) - final void method532(int var1) { - int var2 = this.field1046.length; - if (this.field1041 > 0) { - this.method533(this.field1041, this.field1048); - } else if (this.field1042 > 0) { - this.method533(this.field1042, this.field1052); + final void method530(int var1) { + int var2 = this.field1057.length; + if (this.field1053 > 0) { + this.method531(this.field1053, this.field1059); + } else if (this.field1051 > 0) { + this.method531(this.field1051, this.field1060); } else { for (int var3 = 0; var3 < var2; ++var3) { - this.field1046[var3] = this.field1049[var3]; + this.field1057[var3] = this.field1062[var3]; } } - this.method534(var1); + this.method532(var1); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I[IB)V", - garbageValue = "106" + descriptor = "(I[II)V", + garbageValue = "-2016304583" ) - final void method533(int var1, int[] var2) { - int var3 = this.field1046.length; + final void method531(int var1, int[] var2) { + int var3 = this.field1057.length; for (int var4 = 0; var4 < var3; ++var4) { if (var1 > 768) { - this.field1046[var4] = this.method531(this.field1049[var4], var2[var4], 1024 - var1); + this.field1057[var4] = this.method529(this.field1062[var4], var2[var4], 1024 - var1); } else if (var1 > 256) { - this.field1046[var4] = var2[var4]; + this.field1057[var4] = var2[var4]; } else { - this.field1046[var4] = this.method531(var2[var4], this.field1049[var4], 256 - var1); + this.field1057[var4] = this.method529(var2[var4], this.field1062[var4], 256 - var1); } } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1021290032" + garbageValue = "1596261133" ) - final void method534(int var1) { + final void method532(int var1) { int var2 = 0; for (int var3 = 1; var3 < 255; ++var3) { @@ -376,22 +387,22 @@ final void method534(int var1) { var5 = 0; } - if (var5 + 128 >= AttackOption.rasterProvider.width) { - var7 = AttackOption.rasterProvider.width - var5; + if (var5 + 128 >= class338.rasterProvider.width) { + var7 = class338.rasterProvider.width - var5; } - int var8 = var5 + (var3 + 8) * AttackOption.rasterProvider.width; + int var8 = var5 + (var3 + 8) * class338.rasterProvider.width; var2 += var6; for (int var9 = var6; var9 < var7; ++var9) { - int var10 = this.field1053[var2++]; + int var10 = this.field1061[var2++]; int var11 = var8 % Rasterizer2D.Rasterizer2D_width; if (var10 != 0 && var11 >= Rasterizer2D.Rasterizer2D_xClipStart && var11 < Rasterizer2D.Rasterizer2D_xClipEnd) { int var12 = var10; int var13 = 256 - var10; - var10 = this.field1046[var10]; - int var14 = AttackOption.rasterProvider.pixels[var8]; - AttackOption.rasterProvider.pixels[var8++] = -16777216 | ((var14 & 16711935) * var13 + (var10 & 16711935) * var12 & -16711936) + (var13 * (var14 & 65280) + var12 * (var10 & 65280) & 16711680) >> 8; + var10 = this.field1057[var10]; + int var14 = class338.rasterProvider.pixels[var8]; + class338.rasterProvider.pixels[var8++] = -16777216 | (var13 * (var14 & 65280) + var12 * (var10 & 65280) & 16711680) + ((var14 & 16711935) * var13 + (var10 & 16711935) * var12 & -16711936) >> 8; } else { ++var8; } @@ -402,21 +413,21 @@ final void method534(int var1) { } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Luk;I)V", - garbageValue = "-1981831992" + descriptor = "(Lup;I)V", + garbageValue = "1899155334" ) - final void method535(IndexedSprite var1) { + final void method533(IndexedSprite var1) { int var2; - for (var2 = 0; var2 < this.field1050.length; ++var2) { - this.field1050[var2] = 0; + for (var2 = 0; var2 < this.field1055.length; ++var2) { + this.field1055[var2] = 0; } int var3; for (var2 = 0; var2 < 5000; ++var2) { var3 = (int)(Math.random() * 128.0D * 256.0D); - this.field1050[var3] = (int)(Math.random() * 256.0D); + this.field1055[var3] = (int)(Math.random() * 256.0D); } int var4; @@ -425,13 +436,13 @@ final void method535(IndexedSprite var1) { for (var3 = 1; var3 < 255; ++var3) { for (var4 = 1; var4 < 127; ++var4) { var5 = var4 + (var3 << 7); - this.field1051[var5] = (this.field1050[var5 + 128] + this.field1050[var5 - 128] + this.field1050[var5 + 1] + this.field1050[var5 - 1]) / 4; + this.field1058[var5] = (this.field1055[var5 + 128] + this.field1055[var5 - 128] + this.field1055[var5 + 1] + this.field1055[var5 - 1]) / 4; } } - int[] var8 = this.field1050; - this.field1050 = this.field1051; - this.field1051 = var8; + int[] var8 = this.field1055; + this.field1055 = this.field1058; + this.field1058 = var8; } if (var1 != null) { @@ -443,7 +454,7 @@ final void method535(IndexedSprite var1) { var5 = var4 + var1.xOffset + 16; int var6 = var3 + var1.yOffset + 16; int var7 = var5 + (var6 << 7); - this.field1050[var7] = 0; + this.field1055[var7] = 0; } } } @@ -451,15 +462,104 @@ final void method535(IndexedSprite var1) { } - @ObfuscatedName("mf") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIIIII)V", - garbageValue = "1528651927" + descriptor = "(Lol;II)Lmq;", + garbageValue = "812097859" ) - @Export("updateRootInterface") - static final void updateRootInterface(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (ModeWhere.loadInterface(var0)) { - class9.updateInterface(PacketBufferNode.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6); + static MusicPatch method521(AbstractArchive var0, int var1) { + byte[] var2 = var0.takeFileFlat(var1); + return var2 == null ? null : new MusicPatch(var2); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lol;Lol;B)V", + garbageValue = "41" + ) + public static void method526(AbstractArchive var0, AbstractArchive var1) { + NPCComposition.NpcDefinition_archive = var0; + class191.field1586 = var1; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIIIB)I", + garbageValue = "18" + ) + static final int method520(int var0, int var1, int var2, int var3) { + return var0 * var2 - var3 * var1 >> 16; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "-12" + ) + @Export("iLog") + public static int iLog(int var0) { + int var1 = 0; + if (var0 < 0 || var0 >= 65536) { + var0 >>>= 16; + var1 += 16; + } + + if (var0 >= 256) { + var0 >>>= 8; + var1 += 8; + } + + if (var0 >= 16) { + var0 >>>= 4; + var1 += 4; + } + + if (var0 >= 4) { + var0 >>>= 2; + var1 += 2; + } + + if (var0 >= 1) { + var0 >>>= 1; + ++var1; + } + + return var0 + var1; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1084664088" + ) + static void method523() { + Messages.Messages_channels.clear(); + Messages.Messages_hashTable.clear(); + Messages.Messages_queue.clear(); + Messages.Messages_count = 0; + } + + @ObfuscatedName("jw") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "112" + ) + static final void method534(boolean var0) { + class102.method604(); + ++Client.packetWriter.pendingWrites; + if (Client.packetWriter.pendingWrites >= 50 || var0) { + Client.packetWriter.pendingWrites = 0; + if (!Client.hadNetworkError && Client.packetWriter.getSocket() != null) { + PacketBufferNode var1 = class113.getPacketBufferNode(ClientPacket.NO_TIMEOUT, Client.packetWriter.isaacCipher); + Client.packetWriter.addNode(var1); + + try { + Client.packetWriter.flush(); + } catch (IOException var3) { + Client.hadNetworkError = true; + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/LoginType.java b/osrs/src/main/java/LoginType.java index 2397b6b77..a3c0bb0a9 100644 --- a/osrs/src/main/java/LoginType.java +++ b/osrs/src/main/java/LoginType.java @@ -3,118 +3,88 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sl") +@ObfuscatedName("tt") @Implements("LoginType") public class LoginType { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) @Export("oldscape") public static final LoginType oldscape; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4069; - @ObfuscatedName("ao") + static final LoginType field4097; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4071; - @ObfuscatedName("at") + static final LoginType field4099; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4073; - @ObfuscatedName("ac") + static final LoginType field4098; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4068; - @ObfuscatedName("ai") + static final LoginType field4095; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4070; - @ObfuscatedName("az") + static final LoginType field4100; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4074; - @ObfuscatedName("ap") + static final LoginType field4094; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - static final LoginType field4072; - @ObfuscatedName("aa") + static final LoginType field4096; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lsl;" + descriptor = "Ltt;" ) - public static final LoginType field4066; - @ObfuscatedName("af") - public final int field4076; - @ObfuscatedName("ad") - final String field4075; + public static final LoginType field4092; + @ObfuscatedName("az") + public final int field4102; + @ObfuscatedName("ap") + final String field4101; static { - oldscape = new LoginType(8, 0, "", ""); - field4069 = new LoginType(4, 1, "", ""); - field4071 = new LoginType(1, 2, "", ""); - field4073 = new LoginType(6, 3, "", ""); - field4068 = new LoginType(2, 4, "", ""); - field4070 = new LoginType(0, 5, "", ""); - field4074 = new LoginType(5, 6, "", ""); - field4072 = new LoginType(7, 7, "", ""); - field4066 = new LoginType(3, -1, "", "", true, new LoginType[]{oldscape, field4069, field4071, field4068, field4073}); + oldscape = new LoginType(0, 0, "", ""); + field4097 = new LoginType(8, 1, "", ""); + field4099 = new LoginType(7, 2, "", ""); + field4098 = new LoginType(5, 3, "", ""); + field4095 = new LoginType(4, 4, "", ""); + field4100 = new LoginType(1, 5, "", ""); + field4094 = new LoginType(6, 6, "", ""); + field4096 = new LoginType(3, 7, "", ""); + field4092 = new LoginType(2, -1, "", "", true, new LoginType[]{oldscape, field4097, field4099, field4095, field4098}); } LoginType(int var1, int var2, String var3, String var4) { - this.field4076 = var1; - this.field4075 = var4; + this.field4102 = var1; + this.field4101 = var4; } @ObfuscatedSignature( - descriptor = "(IILjava/lang/String;Ljava/lang/String;Z[Lsl;)V" + descriptor = "(IILjava/lang/String;Ljava/lang/String;Z[Ltt;)V" ) LoginType(int var1, int var2, String var3, String var4, boolean var5, LoginType[] var6) { - this.field4076 = var1; - this.field4075 = var4; + this.field4102 = var1; + this.field4101 = var4; } @Export("toString") @ObfuscatedName("toString") public String toString() { - return this.field4075; - } - - @ObfuscatedName("ik") - @ObfuscatedSignature( - descriptor = "(Ldf;III)V", - garbageValue = "-1416218434" - ) - @Export("performPlayerAnimation") - static void performPlayerAnimation(Player var0, int var1, int var2) { - if (var0.sequence == var1 && var1 != -1) { - int var3 = EnumComposition.SequenceDefinition_get(var1).replyMode; - if (var3 == 1) { - var0.sequenceFrame = 0; - var0.sequenceFrameCycle = 0; - var0.sequenceDelay = var2; - var0.currentSequenceFrameIndex = 0; - } - - if (var3 == 2) { - var0.currentSequenceFrameIndex = 0; - } - } else if (var1 == -1 || var0.sequence == -1 || EnumComposition.SequenceDefinition_get(var1).forcedPriority >= EnumComposition.SequenceDefinition_get(var0.sequence).forcedPriority) { - var0.sequence = var1; - var0.sequenceFrame = 0; - var0.sequenceFrameCycle = 0; - var0.sequenceDelay = var2; - var0.currentSequenceFrameIndex = 0; - var0.field1022 = var0.pathLength; - } - + return this.field4101; } } \ No newline at end of file diff --git a/osrs/src/main/java/LongNode.java b/osrs/src/main/java/LongNode.java index c2faf27dc..d96951a4b 100644 --- a/osrs/src/main/java/LongNode.java +++ b/osrs/src/main/java/LongNode.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("st") +@ObfuscatedName("su") @Implements("LongNode") public class LongNode extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("longValue") public long longValue; diff --git a/osrs/src/main/java/MenuAction.java b/osrs/src/main/java/MenuAction.java index dd839cec7..c25cabad4 100644 --- a/osrs/src/main/java/MenuAction.java +++ b/osrs/src/main/java/MenuAction.java @@ -3,74 +3,64 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cz") +@ObfuscatedName("cb") @Implements("MenuAction") public class MenuAction { - @ObfuscatedName("au") + @ObfuscatedName("ax") + @Export("Tiles_hueMultiplier") + static int[] Tiles_hueMultiplier; + @ObfuscatedName("cq") + @Export("param9") + static String param9; + @ObfuscatedName("at") @Export("param0") int param0; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("param1") int param1; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("opcode") int opcode; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("identifier") int identifier; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("itemId") int itemId; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("action") String action; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("target") String target; MenuAction() { } - @ObfuscatedName("az") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1991089185" + descriptor = "(I)[Ldy;", + garbageValue = "-180597093" ) - public static final void method425(int var0, int var1) { - ViewportMouse.ViewportMouse_x = var0; - ViewportMouse.ViewportMouse_y = var1; - ViewportMouse.ViewportMouse_isInViewport = true; - ViewportMouse.ViewportMouse_entityCount = 0; - ViewportMouse.ViewportMouse_false0 = false; + static AttackOption[] method436() { + return new AttackOption[]{AttackOption.field1103, AttackOption.AttackOption_alwaysRightClick, AttackOption.AttackOption_hidden, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.field1106}; } - @ObfuscatedName("as") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "64" + descriptor = "(Lol;II)V", + garbageValue = "1404218002" ) - static int method426(int var0, Script var1, boolean var2) { - Widget var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var0 == 2500) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.x; - return 1; - } else if (var0 == 2501) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.y; - return 1; - } else if (var0 == 2502) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.width; - return 1; - } else if (var0 == 2503) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.height; - return 1; - } else if (var0 == 2504) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; - return 1; - } else if (var0 == 2505) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.parentId; - return 1; + static void method435(AbstractArchive var0, int var1) { + if ((var1 & class522.field4160.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var0, "logo_deadman_mode", ""); + } else if ((var1 & class522.field4161.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var0, "logo_seasonal_mode", ""); + } else if ((var1 & class522.field4154.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var0, "logo_speedrunning", ""); } else { - return 2; + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var0, "logo", ""); } + } } \ No newline at end of file diff --git a/osrs/src/main/java/Message.java b/osrs/src/main/java/Message.java index 9c84ae39f..9e3b14890 100644 --- a/osrs/src/main/java/Message.java +++ b/osrs/src/main/java/Message.java @@ -3,58 +3,49 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.File; -import java.io.RandomAccessFile; - @ObfuscatedName("co") @Implements("Message") public class Message extends DualNode { - @ObfuscatedName("fn") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive11") - static Archive archive11; - @ObfuscatedName("kn") + @ObfuscatedName("ev") @ObfuscatedSignature( - descriptor = "[Lui;" + descriptor = "Ldb;" ) - @Export("mapMarkerSprites") - static SpritePixels[] mapMarkerSprites; - @ObfuscatedName("au") + @Export("mouseRecorder") + static MouseRecorder mouseRecorder; + @ObfuscatedName("at") @Export("count") int count; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("cycle") int cycle; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("type") int type; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("sender") String sender; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("senderUsername") Username senderUsername; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("isFromFriend0") TriBool isFromFriend0; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("isFromIgnored0") TriBool isFromIgnored0; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("prefix") String prefix; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("text") String text; @@ -64,10 +55,10 @@ public class Message extends DualNode { this.set(var1, var2, var3, var4); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;B)V", - garbageValue = "80" + descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "2135051365" ) @Export("set") void set(int var1, String var2, String var3, String var4) { @@ -83,20 +74,20 @@ void set(int var1, String var2, String var3, String var4) { this.clearIsFromIgnored(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "963763449" + garbageValue = "-817284641" ) @Export("clearIsFromFriend") void clearIsFromFriend() { this.isFromFriend0 = TriBool.TriBool_unknown; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "10" + descriptor = "(S)Z", + garbageValue = "-446" ) @Export("isFromFriend") final boolean isFromFriend() { @@ -107,30 +98,30 @@ final boolean isFromFriend() { return this.isFromFriend0 == TriBool.TriBool_true; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-35" + descriptor = "(I)V", + garbageValue = "-2127132249" ) @Export("fillIsFromFriend") void fillIsFromFriend() { - this.isFromFriend0 = class299.friendSystem.friendsList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.isFromFriend0 = class12.friendSystem.friendsList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "-1827223059" ) @Export("clearIsFromIgnored") void clearIsFromIgnored() { this.isFromIgnored0 = TriBool.TriBool_unknown; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1755097600" + descriptor = "(B)Z", + garbageValue = "92" ) @Export("isFromIgnored") final boolean isFromIgnored() { @@ -141,64 +132,55 @@ final boolean isFromIgnored() { return this.isFromIgnored0 == TriBool.TriBool_true; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1656305683" + garbageValue = "-1277362161" ) @Export("fillIsFromIgnored") void fillIsFromIgnored() { - this.isFromIgnored0 = class299.friendSystem.ignoreList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.isFromIgnored0 = class12.friendSystem.ignoreList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "70" + descriptor = "(I)V", + garbageValue = "1209997538" ) @Export("fillSenderUsername") final void fillSenderUsername() { if (this.sender != null) { - this.senderUsername = new Username(ObjTypeCustomisation.method936(this.sender), Language.loginType); + this.senderUsername = new Username(UserComparator7.method675(this.sender), class89.loginType); } else { this.senderUsername = null; } } - @ObfuscatedName("ao") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljava/io/File;ZI)Z", - garbageValue = "1803169793" + descriptor = "(II)I", + garbageValue = "1188584098" ) - static boolean method340(File var0, boolean var1) { - try { - RandomAccessFile var2 = new RandomAccessFile(var0, "rw"); - int var3 = var2.read(); - var2.seek(0L); - var2.write(var3); - var2.seek(0L); - var2.close(); - if (var1) { - var0.delete(); - } - - return true; - } catch (Exception var4) { - return false; - } + @Export("Messages_getHistorySize") + static int Messages_getHistorySize(int var0) { + ChatChannel var1 = (ChatChannel)Messages.Messages_channels.get(var0); + return var1 == null ? 0 : var1.size(); } - @ObfuscatedName("jn") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-103" + descriptor = "(Ljava/lang/CharSequence;B)I", + garbageValue = "11" ) - static void method341() { - PacketBufferNode var0 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.WINDOW_STATUS, Client.packetWriter.isaacCipher); - var0.packetBuffer.writeByte(class218.getWindowedMode()); - var0.packetBuffer.writeShort(class113.canvasWidth); - var0.packetBuffer.writeShort(class177.canvasHeight); - Client.packetWriter.addNode(var0); + public static int method354(CharSequence var0) { + int var1 = var0.length(); + int var2 = 0; + + for (int var3 = 0; var3 < var1; ++var3) { + var2 = (var2 << 5) - var2 + var0.charAt(var3); + } + + return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/Messages.java b/osrs/src/main/java/Messages.java index 6185a9a0c..8aee692dc 100644 --- a/osrs/src/main/java/Messages.java +++ b/osrs/src/main/java/Messages.java @@ -3,34 +3,40 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.DataInputStream; -import java.net.URL; import java.util.HashMap; import java.util.Map; -@ObfuscatedName("ea") +@ObfuscatedName("eo") @Implements("Messages") public class Messages { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("Messages_channels") static final Map Messages_channels; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("Messages_hashTable") static final IterableNodeHashTable Messages_hashTable; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lou;" + descriptor = "Lpo;" ) @Export("Messages_queue") static final IterableDualNodeQueue Messages_queue; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("Messages_count") static int Messages_count; - @ObfuscatedName("as") - public static String field1146; + @ObfuscatedName("cx") + @ObfuscatedSignature( + descriptor = "Lnt;" + ) + static StudioGame field1156; + @ObfuscatedName("gk") + static String field1155; + @ObfuscatedName("uu") + @Export("cameraLookAtX") + static int cameraMoveToX; static { Messages_channels = new HashMap(); @@ -39,60 +45,29 @@ public class Messages { Messages_count = 0; } - @ObfuscatedName("au") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/Throwable;I)V", - garbageValue = "886881488" + descriptor = "(IIII)I", + garbageValue = "292264125" ) - @Export("RunException_sendStackTrace") - public static void RunException_sendStackTrace(String var0, Throwable var1) { - if (var1 != null) { - var1.printStackTrace(); - } else { - try { - String var2 = ""; - if (var1 != null) { - var2 = class493.method2465(var1); - } - - if (var0 != null) { - if (var1 != null) { - var2 = var2 + " | "; - } - - var2 = var2 + var0; - } - - System.out.println("Error: " + var2); - var2 = var2.replace(':', '.'); - var2 = var2.replace('@', '_'); - var2 = var2.replace('&', '_'); - var2 = var2.replace('#', '_'); - if (RunException.RunException_applet == null) { - return; - } + static final int method634(int var0, int var1, int var2) { + if (var2 > 179) { + var1 /= 2; + } - URL var3 = new URL(RunException.RunException_applet.getCodeBase(), "clienterror.ws?cv=" + RunException.RunException_revision + "&cs=" + RunException.field4287 + "&u=" + RunException.field4289 + "&v1=" + TaskHandler.javaVendor + "&v2=" + class106.javaVersion + "&ct=" + RunException.field4285 + "&e=" + var2); - DataInputStream var4 = new DataInputStream(var3.openStream()); - var4.read(); - var4.close(); - } catch (Exception var5) { - } + if (var2 > 192) { + var1 /= 2; + } + if (var2 > 217) { + var1 /= 2; } - } - @ObfuscatedName("bw") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1446947589" - ) - static int method635(int var0, Script var1, boolean var2) { - if (var0 == 7108) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = UserList.method2244() ? 1 : 0; - return 1; - } else { - return 2; + if (var2 > 243) { + var1 /= 2; } + + int var3 = (var1 / 32 << 7) + (var0 / 4 << 10) + var2 / 2; + return var3; } } \ No newline at end of file diff --git a/osrs/src/main/java/MidiFileReader.java b/osrs/src/main/java/MidiFileReader.java index 08d144050..6dbe2d2d3 100644 --- a/osrs/src/main/java/MidiFileReader.java +++ b/osrs/src/main/java/MidiFileReader.java @@ -3,52 +3,52 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lq") +@ObfuscatedName("mx") @Implements("MidiFileReader") public class MidiFileReader { - @ObfuscatedName("af") - static final byte[] field2810; - @ObfuscatedName("au") + @ObfuscatedName("az") + static final byte[] field2831; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Luj;" ) @Export("buffer") Buffer buffer; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("division") int division; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("trackStarts") int[] trackStarts; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("trackPositions") int[] trackPositions; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("trackLengths") int[] trackLengths; - @ObfuscatedName("ai") - int[] field2814; - @ObfuscatedName("az") - int field2812; + @ObfuscatedName("au") + int[] field2837; @ObfuscatedName("aa") - long field2817; + int field2832; + @ObfuscatedName("al") + long field2838; static { - field2810 = new byte[]{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + field2831 = new byte[]{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; } MidiFileReader() { this.buffer = new Buffer((byte[])null); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("parse") void parse(byte[] var1) { this.buffer.array = var1; this.buffer.offset = 10; int var2 = this.buffer.readUnsignedShort(); this.division = this.buffer.readUnsignedShort(); - this.field2812 = 500000; + this.field2832 = 500000; this.trackStarts = new int[var2]; Buffer var10000; @@ -65,7 +65,7 @@ void parse(byte[] var1) { var10000 = this.buffer; } - this.field2817 = 0L; + this.field2838 = 0L; this.trackPositions = new int[var2]; for (var3 = 0; var3 < var2; ++var3) { @@ -73,50 +73,50 @@ void parse(byte[] var1) { } this.trackLengths = new int[var2]; - this.field2814 = new int[var2]; + this.field2837 = new int[var2]; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("clear") void clear() { this.buffer.array = null; this.trackStarts = null; this.trackPositions = null; this.trackLengths = null; - this.field2814 = null; + this.field2837 = null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("isReady") boolean isReady() { return this.buffer.array != null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("trackCount") int trackCount() { return this.trackPositions.length; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("gotoTrack") void gotoTrack(int var1) { this.buffer.offset = this.trackPositions[var1]; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("markTrackPosition") void markTrackPosition(int var1) { this.trackPositions[var1] = this.buffer.offset; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("setTrackDone") void setTrackDone() { this.buffer.offset = -1; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("readTrackLength") void readTrackLength(int var1) { int var2 = this.buffer.readVarInt(); @@ -124,36 +124,36 @@ void readTrackLength(int var1) { var10000[var1] += var2; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("readMessage") int readMessage(int var1) { int var2 = this.readMessage0(var1); return var2; } - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("readMessage0") int readMessage0(int var1) { byte var2 = this.buffer.array[this.buffer.offset]; int var5; if (var2 < 0) { var5 = var2 & 255; - this.field2814[var1] = var5; + this.field2837[var1] = var5; ++this.buffer.offset; } else { - var5 = this.field2814[var1]; + var5 = this.field2837[var1]; } if (var5 != 240 && var5 != 247) { - return this.method1677(var1, var5); + return this.method1700(var1, var5); } else { int var3 = this.buffer.readVarInt(); if (var5 == 247 && var3 > 0) { int var4 = this.buffer.array[this.buffer.offset] & 255; if (var4 >= 241 && var4 <= 243 || var4 == 246 || var4 == 248 || var4 >= 250 && var4 <= 252 || var4 == 254) { ++this.buffer.offset; - this.field2814[var1] = var4; - return this.method1677(var1, var4); + this.field2837[var1] = var4; + return this.method1700(var1, var4); } } @@ -163,8 +163,8 @@ int readMessage0(int var1) { } } - @ObfuscatedName("ad") - int method1677(int var1, int var2) { + @ObfuscatedName("ap") + int method1700(int var1, int var2) { int var4; if (var2 == 255) { int var7 = this.buffer.readUnsignedByte(); @@ -178,8 +178,8 @@ int method1677(int var1, int var2) { int var5 = this.buffer.readMedium(); var4 -= 3; int var6 = this.trackLengths[var1]; - this.field2817 += (long)var6 * (long)(this.field2812 - var5); - this.field2812 = var5; + this.field2838 += (long)var6 * (long)(this.field2832 - var5); + this.field2832 = var5; var10000 = this.buffer; var10000.offset += var4; return 2; @@ -189,7 +189,7 @@ int method1677(int var1, int var2) { return 3; } } else { - byte var3 = field2810[var2 - 128]; + byte var3 = field2831[var2 - 128]; var4 = var2; if (var3 >= 1) { var4 = var2 | this.buffer.readUnsignedByte() << 8; @@ -203,12 +203,12 @@ int method1677(int var1, int var2) { } } - @ObfuscatedName("aq") - long method1678(int var1) { - return this.field2817 + (long)var1 * (long)this.field2812; + @ObfuscatedName("av") + long method1701(int var1) { + return this.field2838 + (long)var1 * (long)this.field2832; } - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("getPrioritizedTrack") int getPrioritizedTrack() { int var1 = this.trackPositions.length; @@ -225,7 +225,7 @@ int getPrioritizedTrack() { return var2; } - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("isDone") boolean isDone() { int var1 = this.trackPositions.length; @@ -239,15 +239,15 @@ boolean isDone() { return true; } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("reset") void reset(long var1) { - this.field2817 = var1; + this.field2838 = var1; int var3 = this.trackPositions.length; for (int var4 = 0; var4 < var3; ++var4) { this.trackLengths[var4] = 0; - this.field2814[var4] = 0; + this.field2837[var4] = 0; this.buffer.offset = this.trackStarts[var4]; this.readTrackLength(var4); this.trackPositions[var4] = this.buffer.offset; diff --git a/osrs/src/main/java/MidiPcmStream.java b/osrs/src/main/java/MidiPcmStream.java index 324055532..ce70153f0 100644 --- a/osrs/src/main/java/MidiPcmStream.java +++ b/osrs/src/main/java/MidiPcmStream.java @@ -10,185 +10,182 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; -@ObfuscatedName("lf") +@ObfuscatedName("mn") @Implements("MidiPcmStream") public class MidiPcmStream extends PcmStream { - @ObfuscatedName("bf") - static AtomicBoolean field2780; - @ObfuscatedName("bq") - static ThreadPoolExecutor field2779; - @ObfuscatedName("au") + @ObfuscatedName("wg") + @ObfuscatedSignature( + descriptor = "Los;" + ) + public static class381 field2799; + @ObfuscatedName("bp") + static AtomicBoolean field2801; + @ObfuscatedName("bw") + static ThreadPoolExecutor field2800; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) @Export("musicPatches") NodeHashTable musicPatches; - @ObfuscatedName("ae") - int field2782; + @ObfuscatedName("ah") + int field2803; + @ObfuscatedName("ar") + int field2804; @ObfuscatedName("ao") - int field2783; - @ObfuscatedName("at") - int[] field2796; + int[] field2816; + @ObfuscatedName("ab") + int[] field2808; + @ObfuscatedName("au") + int[] field2818; + @ObfuscatedName("aa") + int[] field2807; @ObfuscatedName("ac") - int[] field2787; - @ObfuscatedName("ai") - int[] field2791; + int[] field2809; + @ObfuscatedName("al") + int[] field2814; @ObfuscatedName("az") - int[] field2800; + int[] field2821; @ObfuscatedName("ap") - int[] field2793; - @ObfuscatedName("aa") - int[] field2786; - @ObfuscatedName("af") - int[] field2789; - @ObfuscatedName("ad") - int[] field2788; - @ObfuscatedName("aq") - int[] field2794; - @ObfuscatedName("ah") - int[] field2790; - @ObfuscatedName("as") - int[] field2795; - @ObfuscatedName("ay") - int[] field2799; - @ObfuscatedName("aj") - int[] field2792; + int[] field2817; @ObfuscatedName("av") - int[] field2797; + int[] field2819; + @ObfuscatedName("ai") + int[] field2813; @ObfuscatedName("aw") - int[] field2798; - @ObfuscatedName("ak") + int[] field2820; + @ObfuscatedName("ae") + int[] field2811; + @ObfuscatedName("an") + int[] field2815; + @ObfuscatedName("ag") + int[] field2812; + @ObfuscatedName("ad") + int[] field2810; + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "[[Lmg;" + descriptor = "[[Lmw;" ) - MusicPatchNode[][] field2805; - @ObfuscatedName("bh") + MusicPatchNode[][] field2826; + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "[[Lmg;" + descriptor = "[[Lmw;" ) - MusicPatchNode[][] field2806; - @ObfuscatedName("bj") + MusicPatchNode[][] field2827; + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "Llq;" + descriptor = "Lmx;" ) @Export("midiFile") MidiFileReader midiFile; - @ObfuscatedName("bk") - boolean field2781; - @ObfuscatedName("bv") + @ObfuscatedName("bl") + boolean field2802; + @ObfuscatedName("bi") @Export("track") int track; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("trackLength") int trackLength; - @ObfuscatedName("bd") - long field2802; - @ObfuscatedName("by") - long field2803; - @ObfuscatedName("bs") + @ObfuscatedName("bf") + long field2823; + @ObfuscatedName("bg") + long field2824; + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "Lmh;" + descriptor = "Lmj;" ) @Export("patchStream") MusicPatchPcmStream patchStream; @ObfuscatedName("bm") - PriorityQueue field2801; - @ObfuscatedName("ba") - public int field2809; + PriorityQueue field2822; + @ObfuscatedName("bj") + public int field2830; static { - field2780 = null; - field2779 = null; + field2801 = null; + field2800 = null; } public MidiPcmStream() { - this.field2782 = 256; - this.field2783 = 1000000; - this.field2796 = new int[16]; - this.field2787 = new int[16]; - this.field2791 = new int[16]; - this.field2800 = new int[16]; - this.field2793 = new int[16]; - this.field2786 = new int[16]; - this.field2789 = new int[16]; - this.field2788 = new int[16]; - this.field2794 = new int[16]; - this.field2790 = new int[16]; - this.field2795 = new int[16]; - this.field2799 = new int[16]; - this.field2792 = new int[16]; - this.field2797 = new int[16]; - this.field2798 = new int[16]; - this.field2805 = new MusicPatchNode[16][128]; - this.field2806 = new MusicPatchNode[16][128]; + this.field2803 = 256; + this.field2804 = 1000000; + this.field2816 = new int[16]; + this.field2808 = new int[16]; + this.field2818 = new int[16]; + this.field2807 = new int[16]; + this.field2809 = new int[16]; + this.field2814 = new int[16]; + this.field2821 = new int[16]; + this.field2817 = new int[16]; + this.field2819 = new int[16]; + this.field2813 = new int[16]; + this.field2820 = new int[16]; + this.field2811 = new int[16]; + this.field2815 = new int[16]; + this.field2812 = new int[16]; + this.field2810 = new int[16]; + this.field2826 = new MusicPatchNode[16][128]; + this.field2827 = new MusicPatchNode[16][128]; this.midiFile = new MidiFileReader(); this.patchStream = new MusicPatchPcmStream(this); - this.field2801 = new PriorityQueue(5, new class316()); - this.field2809 = 0; + this.field2822 = new PriorityQueue(5, new class327()); + this.field2830 = 0; this.musicPatches = new NodeHashTable(128); - this.method1650(); + this.method1674(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "178339919" + descriptor = "(IB)V", + garbageValue = "-19" ) @Export("setPcmStreamVolume") public synchronized void setPcmStreamVolume(int var1) { - this.field2782 = var1; + this.field2803 = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1304608444" + descriptor = "(B)I", + garbageValue = "30" ) - public int method1629() { - return this.field2782; + public int method1653() { + return this.field2803; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lmv;Lnu;Lbi;I)Z", - garbageValue = "2146420949" + descriptor = "(Lms;Lol;Lbc;I)Z", + garbageValue = "289790936" ) - public synchronized boolean method1630(MusicTrack var1, AbstractArchive var2, SoundCache var3) { + public synchronized boolean method1654(MusicTrack var1, AbstractArchive var2, SoundCache var3) { boolean var4 = true; - synchronized(this.field2801) { - this.field2801.clear(); + synchronized(this.field2822) { + this.field2822.clear(); } - for (class318 var5 = (class318)var1.field2837.first(); var5 != null; var5 = (class318)var1.field2837.next()) { + for (class329 var5 = (class329)var1.field2857.first(); var5 != null; var5 = (class329)var1.field2857.next()) { int var12 = (int)var5.key; MusicPatch var7 = (MusicPatch)this.musicPatches.get((long)var12); if (var7 == null) { - byte[] var9 = var2.takeFileFlat(var12); - MusicPatch var8; - if (var9 == null) { - var8 = null; - } else { - var8 = new MusicPatch(var9); - } - - var7 = var8; - if (var8 == null) { + var7 = LoginScreenAnimation.method521(var2, var12); + if (var7 == null) { var4 = false; continue; } - this.musicPatches.put(var8, (long)var12); + this.musicPatches.put(var7, (long)var12); } - if (!var7.method1682(var3, var5.field2876)) { + if (!var7.method1710(var3, var5.field2894)) { var4 = false; - } else if (this.field2801 != null) { - synchronized(this.field2801) { - Iterator var15 = var7.field2828.iterator(); + } else if (this.field2822 != null) { + synchronized(this.field2822) { + Iterator var9 = var7.field2848.iterator(); - while (var15.hasNext()) { - class53 var10 = (class53)var15.next(); - this.field2801.add(new class309(var5.field2875, var10)); + while (var9.hasNext()) { + class53 var10 = (class53)var9.next(); + this.field2822.add(new class320(var5.field2893, var10)); } } } @@ -197,135 +194,135 @@ public synchronized boolean method1630(MusicTrack var1, AbstractArchive var2, So return var4; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-932325376" + descriptor = "(B)V", + garbageValue = "121" ) - public void method1631() { - if (this.field2801 != null) { - if (field2780 != null) { - field2780.set(true); + public void method1655() { + if (this.field2822 != null) { + if (field2801 != null) { + field2801.set(true); } - field2780 = new AtomicBoolean(false); - AtomicBoolean var1 = field2780; - if (field2779 == null) { + field2801 = new AtomicBoolean(false); + AtomicBoolean var1 = field2801; + if (field2800 == null) { int var2 = Runtime.getRuntime().availableProcessors(); - field2779 = new ThreadPoolExecutor(0, var2, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(), new class308(this)); + field2800 = new ThreadPoolExecutor(0, var2, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(), new class319(this)); } - field2779.submit(new class312(this, var1)); + field2800.submit(new class323(this, var1)); } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2076204033" + garbageValue = "1842485318" ) - public synchronized void method1632() { + public synchronized void method1656() { for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { var1.clear(); } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("firstSubStream") protected synchronized PcmStream firstSubStream() { return this.patchStream; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("nextSubStream") protected synchronized PcmStream nextSubStream() { return null; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") protected synchronized int vmethod5648() { return 0; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fill") protected synchronized void fill(int[] var1, int var2, int var3) { if (this.midiFile.isReady()) { - int var4 = this.midiFile.division * this.field2783 / PcmPlayer.field181; + int var4 = this.midiFile.division * this.field2804 / PcmPlayer.field179; do { - long var5 = (long)var4 * (long)var3 + this.field2802; - if (this.field2803 - var5 >= 0L) { - this.field2802 = var5; + long var5 = (long)var3 * (long)var4 + this.field2823; + if (this.field2824 - var5 >= 0L) { + this.field2823 = var5; break; } - int var7 = (int)(((long)var4 + (this.field2803 - this.field2802) - 1L) / (long)var4); - this.field2802 += (long)var4 * (long)var7; + int var7 = (int)(((long)var4 + (this.field2824 - this.field2823) - 1L) / (long)var4); + this.field2823 += (long)var4 * (long)var7; this.patchStream.fill(var1, var2, var7); var2 += var7; var3 -= var7; - this.method1664(); + this.method1687(); } while(this.midiFile.isReady()); } this.patchStream.fill(var1, var2, var3); } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1876288055" + descriptor = "(B)V", + garbageValue = "-64" ) - public synchronized void method1633() { + public synchronized void method1657() { for (MusicPatch var1 = (MusicPatch)this.musicPatches.first(); var1 != null; var1 = (MusicPatch)this.musicPatches.next()) { var1.remove(); } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("skip") protected synchronized void skip(int var1) { if (this.midiFile.isReady()) { - int var2 = this.midiFile.division * this.field2783 / PcmPlayer.field181; + int var2 = this.midiFile.division * this.field2804 / PcmPlayer.field179; do { - long var3 = this.field2802 + (long)var1 * (long)var2; - if (this.field2803 - var3 >= 0L) { - this.field2802 = var3; + long var3 = (long)var1 * (long)var2 + this.field2823; + if (this.field2824 - var3 >= 0L) { + this.field2823 = var3; break; } - int var5 = (int)(((long)var2 + (this.field2803 - this.field2802) - 1L) / (long)var2); - this.field2802 += (long)var2 * (long)var5; + int var5 = (int)(((long)var2 + (this.field2824 - this.field2823) - 1L) / (long)var2); + this.field2823 += (long)var2 * (long)var5; this.patchStream.skip(var5); var1 -= var5; - this.method1664(); + this.method1687(); } while(this.midiFile.isReady()); } this.patchStream.skip(var1); } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(Lmv;ZI)V", - garbageValue = "718932503" + descriptor = "(Lms;ZI)V", + garbageValue = "-624556623" ) @Export("setMusicTrack") public synchronized void setMusicTrack(MusicTrack var1, boolean var2) { this.clear(); this.midiFile.parse(var1.midi); - this.field2781 = var2; - this.field2802 = 0L; + this.field2802 = var2; + this.field2823 = 0L; int var3 = this.midiFile.trackCount(); for (int var4 = 0; var4 < var3; ++var4) { @@ -336,235 +333,235 @@ public synchronized void setMusicTrack(MusicTrack var1, boolean var2) { this.track = this.midiFile.getPrioritizedTrack(); this.trackLength = this.midiFile.trackLengths[this.track]; - this.field2803 = this.midiFile.method1678(this.trackLength); + this.field2824 = this.midiFile.method1701(this.trackLength); } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "965115955" + descriptor = "(B)V", + garbageValue = "84" ) @Export("clear") public synchronized void clear() { this.midiFile.clear(); - this.method1650(); + this.method1674(); } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-12" + descriptor = "(I)Z", + garbageValue = "2096879002" ) @Export("isReady") public synchronized boolean isReady() { return this.midiFile.isReady(); } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "8" + descriptor = "(S)Z", + garbageValue = "26568" ) - public synchronized boolean method1637() { - return this.musicPatches.method2456() > 0; + public synchronized boolean method1661() { + return this.musicPatches.method2468() > 0; } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1830042203" + garbageValue = "-438742560" ) - public synchronized void method1638(int var1, int var2) { - this.method1639(var1, var2); + public synchronized void method1662(int var1, int var2) { + this.method1663(var1, var2); } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(IIB)V", - garbageValue = "-22" + garbageValue = "31" ) - void method1639(int var1, int var2) { - this.field2800[var1] = var2; - this.field2786[var1] = var2 & -128; - this.method1640(var1, var2); + void method1663(int var1, int var2) { + this.field2807[var1] = var2; + this.field2814[var1] = var2 & -128; + this.method1664(var1, var2); } @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(IIB)V", - garbageValue = "71" + garbageValue = "39" ) - void method1640(int var1, int var2) { - if (var2 != this.field2793[var1]) { - this.field2793[var1] = var2; + void method1664(int var1, int var2) { + if (var2 != this.field2809[var1]) { + this.field2809[var1] = var2; for (int var3 = 0; var3 < 128; ++var3) { - this.field2806[var1][var3] = null; + this.field2827[var1][var3] = null; } } } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "896950696" + descriptor = "(IIIB)V", + garbageValue = "123" ) - void method1641(int var1, int var2, int var3) { - this.method1643(var1, var2, 64); - if ((this.field2790[var1] & 2) != 0) { + void method1665(int var1, int var2, int var3) { + this.method1667(var1, var2, 64); + if ((this.field2813[var1] & 2) != 0) { for (MusicPatchNode var4 = (MusicPatchNode)this.patchStream.queue.first(); var4 != null; var4 = (MusicPatchNode)this.patchStream.queue.next()) { - if (var4.field2854 == var1 && var4.field2853 < 0) { - this.field2805[var1][var4.field2847] = null; - this.field2805[var1][var2] = var4; - int var5 = (var4.field2844 * var4.field2843 >> 12) + var4.field2840; - var4.field2840 += var2 - var4.field2847 << 8; - var4.field2844 = var5 - var4.field2840; - var4.field2843 = 4096; - var4.field2847 = var2; + if (var4.field2872 == var1 && var4.field2876 < 0) { + this.field2826[var1][var4.field2873] = null; + this.field2826[var1][var2] = var4; + int var5 = (var4.field2877 * var4.field2870 >> 12) + var4.field2868; + var4.field2868 += var2 - var4.field2873 << 8; + var4.field2877 = var5 - var4.field2868; + var4.field2870 = 4096; + var4.field2873 = var2; return; } } } - MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)this.field2793[var1]); + MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)this.field2809[var1]); if (var9 != null) { if (var9.rawSounds[var2] != null) { - RawSound var8 = var9.rawSounds[var2].method292(); + RawSound var8 = var9.rawSounds[var2].method305(); if (var8 != null) { MusicPatchNode var6 = new MusicPatchNode(); - var6.field2854 = var1; + var6.field2872 = var1; var6.table = var9; var6.rawSound = var8; - var6.field2857 = var9.field2829[var2]; - var6.field2842 = var9.field2824[var2]; - var6.field2847 = var2; - var6.field2856 = var3 * var3 * var9.field2822[var2] * var9.field2826 + 1024 >> 11; - var6.field2851 = var9.field2823[var2] & 255; - var6.field2840 = (var2 << 8) - (var9.field2830[var2] & 32767); - var6.field2852 = 0; - var6.field2848 = 0; - var6.field2850 = 0; - var6.field2853 = -1; - var6.field2841 = 0; - if (this.field2792[var1] == 0) { - var6.stream = RawPcmStream.method235(var8, this.method1656(var6), this.method1657(var6), this.method1658(var6)); + var6.field2878 = var9.field2849[var2]; + var6.field2862 = var9.field2843[var2]; + var6.field2873 = var2; + var6.field2861 = var3 * var3 * var9.field2842[var2] * var9.field2846 + 1024 >> 11; + var6.field2863 = var9.field2844[var2] & 255; + var6.field2868 = (var2 << 8) - (var9.field2850[var2] & 32767); + var6.field2874 = 0; + var6.field2875 = 0; + var6.field2871 = 0; + var6.field2876 = -1; + var6.field2867 = 0; + if (this.field2815[var1] == 0) { + var6.stream = RawPcmStream.method249(var8, this.method1679(var6), this.method1680(var6), this.method1681(var6)); } else { - var6.stream = RawPcmStream.method235(var8, this.method1656(var6), 0, this.method1658(var6)); - this.method1642(var6, var9.field2830[var2] < 0); + var6.stream = RawPcmStream.method249(var8, this.method1679(var6), 0, this.method1681(var6)); + this.method1666(var6, var9.field2850[var2] < 0); } - if (var9.field2830[var2] < 0) { + if (var9.field2850[var2] < 0) { var6.stream.setNumLoops(-1); } - if (var6.field2842 >= 0) { - MusicPatchNode var7 = this.field2806[var1][var6.field2842]; - if (var7 != null && var7.field2853 < 0) { - this.field2805[var1][var7.field2847] = null; - var7.field2853 = 0; + if (var6.field2862 >= 0) { + MusicPatchNode var7 = this.field2827[var1][var6.field2862]; + if (var7 != null && var7.field2876 < 0) { + this.field2826[var1][var7.field2873] = null; + var7.field2876 = 0; } - this.field2806[var1][var6.field2842] = var6; + this.field2827[var1][var6.field2862] = var6; } this.patchStream.queue.addFirst(var6); - this.field2805[var1][var2] = var6; + this.field2826[var1][var2] = var6; } } } } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Lmg;ZS)V", - garbageValue = "5717" + descriptor = "(Lmw;ZB)V", + garbageValue = "8" ) - void method1642(MusicPatchNode var1, boolean var2) { + void method1666(MusicPatchNode var1, boolean var2) { int var3 = var1.rawSound.samples.length; int var4; - if (var2 && var1.rawSound.field167) { + if (var2 && var1.rawSound.field165) { int var5 = var3 + var3 - var1.rawSound.start; - var4 = (int)((long)var5 * (long)this.field2792[var1.field2854] >> 6); + var4 = (int)((long)this.field2815[var1.field2872] * (long)var5 >> 6); var3 <<= 8; if (var4 >= var3) { var4 = var3 + var3 - 1 - var4; - var1.stream.method244(); + var1.stream.method258(); } } else { - var4 = (int)((long)var3 * (long)this.field2792[var1.field2854] >> 6); + var4 = (int)((long)this.field2815[var1.field2872] * (long)var3 >> 6); } - var1.stream.method243(var4); + var1.stream.method257(var4); } - @ObfuscatedName("as") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "1002745448" + garbageValue = "-1277420327" ) - void method1643(int var1, int var2, int var3) { - MusicPatchNode var4 = this.field2805[var1][var2]; + void method1667(int var1, int var2, int var3) { + MusicPatchNode var4 = this.field2826[var1][var2]; if (var4 != null) { - this.field2805[var1][var2] = null; - if ((this.field2790[var1] & 2) != 0) { + this.field2826[var1][var2] = null; + if ((this.field2813[var1] & 2) != 0) { for (MusicPatchNode var5 = (MusicPatchNode)this.patchStream.queue.last(); var5 != null; var5 = (MusicPatchNode)this.patchStream.queue.previous()) { - if (var5.field2854 == var4.field2854 && var5.field2853 < 0 && var4 != var5) { - var4.field2853 = 0; + if (var5.field2872 == var4.field2872 && var5.field2876 < 0 && var5 != var4) { + var4.field2876 = 0; break; } } } else { - var4.field2853 = 0; + var4.field2876 = 0; } } } - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-1830352831" + descriptor = "(IIIB)V", + garbageValue = "-84" ) - void method1644(int var1, int var2, int var3) { + void method1668(int var1, int var2, int var3) { } - @ObfuscatedName("aj") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1399006127" + descriptor = "(IIB)V", + garbageValue = "0" ) - void method1645(int var1, int var2) { + void method1669(int var1, int var2) { } - @ObfuscatedName("av") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1713272694" + descriptor = "(IIS)V", + garbageValue = "-5960" ) - void method1646(int var1, int var2) { - this.field2789[var1] = var2; + void method1670(int var1, int var2) { + this.field2821[var1] = var2; } - @ObfuscatedName("aw") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "405588365" + garbageValue = "-2098056782" ) - void method1647(int var1) { + void method1671(int var1) { for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { - if (var1 < 0 || var2.field2854 == var1) { + if (var1 < 0 || var2.field2872 == var1) { if (var2.stream != null) { - var2.stream.method248(PcmPlayer.field181 / 100); - if (var2.stream.method252()) { + var2.stream.method262(PcmPlayer.field179 / 100); + if (var2.stream.method266()) { this.patchStream.mixer.addSubStream(var2.stream); } - var2.method1696(); + var2.method1724(); } - if (var2.field2853 < 0) { - this.field2805[var2.field2854][var2.field2847] = null; + if (var2.field2876 < 0) { + this.field2826[var2.field2872][var2.field2873] = null; } var2.remove(); @@ -573,107 +570,107 @@ void method1647(int var1) { } - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "11" + garbageValue = "1" ) - void method1648(int var1) { + void method1672(int var1) { if (var1 >= 0) { - this.field2796[var1] = 12800; - this.field2787[var1] = 8192; - this.field2791[var1] = 16383; - this.field2789[var1] = 8192; - this.field2788[var1] = 0; - this.field2794[var1] = 8192; - this.method1652(var1); - this.method1653(var1); - this.field2790[var1] = 0; - this.field2795[var1] = 32767; - this.field2799[var1] = 256; - this.field2792[var1] = 0; - this.method1655(var1, 8192); + this.field2816[var1] = 12800; + this.field2808[var1] = 8192; + this.field2818[var1] = 16383; + this.field2821[var1] = 8192; + this.field2817[var1] = 0; + this.field2819[var1] = 8192; + this.method1675(var1); + this.method1676(var1); + this.field2813[var1] = 0; + this.field2820[var1] = 32767; + this.field2811[var1] = 256; + this.field2815[var1] = 0; + this.method1678(var1, 8192); } else { for (var1 = 0; var1 < 16; ++var1) { - this.method1648(var1); + this.method1672(var1); } } } - @ObfuscatedName("bh") + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "2" + descriptor = "(II)V", + garbageValue = "-2027347232" ) - void method1649(int var1) { + void method1673(int var1) { for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { - if ((var1 < 0 || var2.field2854 == var1) && var2.field2853 < 0) { - this.field2805[var2.field2854][var2.field2847] = null; - var2.field2853 = 0; + if ((var1 < 0 || var2.field2872 == var1) && var2.field2876 < 0) { + this.field2826[var2.field2872][var2.field2873] = null; + var2.field2876 = 0; } } } - @ObfuscatedName("bm") + @ObfuscatedName("bo") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1873768041" + garbageValue = "3235279" ) - void method1650() { - this.method1647(-1); - this.method1648(-1); + void method1674() { + this.method1671(-1); + this.method1672(-1); int var1; for (var1 = 0; var1 < 16; ++var1) { - this.field2793[var1] = this.field2800[var1]; + this.field2809[var1] = this.field2807[var1]; } for (var1 = 0; var1 < 16; ++var1) { - this.field2786[var1] = this.field2800[var1] & -128; + this.field2814[var1] = this.field2807[var1] & -128; } } - @ObfuscatedName("bf") + @ObfuscatedName("bz") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-1931071556" + garbageValue = "936925077" ) - void method1652(int var1) { - if ((this.field2790[var1] & 2) != 0) { + void method1675(int var1) { + if ((this.field2813[var1] & 2) != 0) { for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { - if (var2.field2854 == var1 && this.field2805[var1][var2.field2847] == null && var2.field2853 < 0) { - var2.field2853 = 0; + if (var2.field2872 == var1 && this.field2826[var1][var2.field2873] == null && var2.field2876 < 0) { + var2.field2876 = 0; } } } } - @ObfuscatedName("bq") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1591565057" + descriptor = "(IB)V", + garbageValue = "31" ) - void method1653(int var1) { - if ((this.field2790[var1] & 4) != 0) { + void method1676(int var1) { + if ((this.field2813[var1] & 4) != 0) { for (MusicPatchNode var2 = (MusicPatchNode)this.patchStream.queue.last(); var2 != null; var2 = (MusicPatchNode)this.patchStream.queue.previous()) { - if (var2.field2854 == var1) { - var2.field2855 = 0; + if (var2.field2872 == var1) { + var2.field2864 = 0; } } } } - @ObfuscatedName("ba") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-60" + descriptor = "(II)V", + garbageValue = "-1011808650" ) - void method1654(int var1) { + void method1677(int var1) { int var2 = var1 & 240; int var3; int var4; @@ -682,289 +679,289 @@ void method1654(int var1) { var3 = var1 & 15; var4 = var1 >> 8 & 127; var5 = var1 >> 16 & 127; - this.method1643(var3, var4, var5); + this.method1667(var3, var4, var5); } else if (var2 == 144) { var3 = var1 & 15; var4 = var1 >> 8 & 127; var5 = var1 >> 16 & 127; if (var5 > 0) { - this.method1641(var3, var4, var5); + this.method1665(var3, var4, var5); } else { - this.method1643(var3, var4, 64); + this.method1667(var3, var4, 64); } } else if (var2 == 160) { var3 = var1 & 15; var4 = var1 >> 8 & 127; var5 = var1 >> 16 & 127; - this.method1644(var3, var4, var5); + this.method1668(var3, var4, var5); } else if (var2 == 176) { var3 = var1 & 15; var4 = var1 >> 8 & 127; var5 = var1 >> 16 & 127; if (var4 == 0) { - this.field2786[var3] = (var5 << 14) + (this.field2786[var3] & -2080769); + this.field2814[var3] = (var5 << 14) + (this.field2814[var3] & -2080769); } if (var4 == 32) { - this.field2786[var3] = (var5 << 7) + (this.field2786[var3] & -16257); + this.field2814[var3] = (var5 << 7) + (this.field2814[var3] & -16257); } if (var4 == 1) { - this.field2788[var3] = (var5 << 7) + (this.field2788[var3] & -16257); + this.field2817[var3] = (var5 << 7) + (this.field2817[var3] & -16257); } if (var4 == 33) { - this.field2788[var3] = var5 + (this.field2788[var3] & -128); + this.field2817[var3] = var5 + (this.field2817[var3] & -128); } if (var4 == 5) { - this.field2794[var3] = (var5 << 7) + (this.field2794[var3] & -16257); + this.field2819[var3] = (var5 << 7) + (this.field2819[var3] & -16257); } if (var4 == 37) { - this.field2794[var3] = var5 + (this.field2794[var3] & -128); + this.field2819[var3] = var5 + (this.field2819[var3] & -128); } if (var4 == 7) { - this.field2796[var3] = (var5 << 7) + (this.field2796[var3] & -16257); + this.field2816[var3] = (var5 << 7) + (this.field2816[var3] & -16257); } if (var4 == 39) { - this.field2796[var3] = var5 + (this.field2796[var3] & -128); + this.field2816[var3] = var5 + (this.field2816[var3] & -128); } if (var4 == 10) { - this.field2787[var3] = (var5 << 7) + (this.field2787[var3] & -16257); + this.field2808[var3] = (var5 << 7) + (this.field2808[var3] & -16257); } if (var4 == 42) { - this.field2787[var3] = var5 + (this.field2787[var3] & -128); + this.field2808[var3] = var5 + (this.field2808[var3] & -128); } if (var4 == 11) { - this.field2791[var3] = (var5 << 7) + (this.field2791[var3] & -16257); + this.field2818[var3] = (var5 << 7) + (this.field2818[var3] & -16257); } if (var4 == 43) { - this.field2791[var3] = var5 + (this.field2791[var3] & -128); + this.field2818[var3] = var5 + (this.field2818[var3] & -128); } int[] var10000; if (var4 == 64) { if (var5 >= 64) { - var10000 = this.field2790; + var10000 = this.field2813; var10000[var3] |= 1; } else { - var10000 = this.field2790; + var10000 = this.field2813; var10000[var3] &= -2; } } if (var4 == 65) { if (var5 >= 64) { - var10000 = this.field2790; + var10000 = this.field2813; var10000[var3] |= 2; } else { - this.method1652(var3); - var10000 = this.field2790; + this.method1675(var3); + var10000 = this.field2813; var10000[var3] &= -3; } } if (var4 == 99) { - this.field2795[var3] = (var5 << 7) + (this.field2795[var3] & 127); + this.field2820[var3] = (var5 << 7) + (this.field2820[var3] & 127); } if (var4 == 98) { - this.field2795[var3] = (this.field2795[var3] & 16256) + var5; + this.field2820[var3] = (this.field2820[var3] & 16256) + var5; } if (var4 == 101) { - this.field2795[var3] = (var5 << 7) + (this.field2795[var3] & 127) + 16384; + this.field2820[var3] = (var5 << 7) + (this.field2820[var3] & 127) + 16384; } if (var4 == 100) { - this.field2795[var3] = (this.field2795[var3] & 16256) + var5 + 16384; + this.field2820[var3] = (this.field2820[var3] & 16256) + var5 + 16384; } if (var4 == 120) { - this.method1647(var3); + this.method1671(var3); } if (var4 == 121) { - this.method1648(var3); + this.method1672(var3); } if (var4 == 123) { - this.method1649(var3); + this.method1673(var3); } int var6; if (var4 == 6) { - var6 = this.field2795[var3]; + var6 = this.field2820[var3]; if (var6 == 16384) { - this.field2799[var3] = (var5 << 7) + (this.field2799[var3] & -16257); + this.field2811[var3] = (var5 << 7) + (this.field2811[var3] & -16257); } } if (var4 == 38) { - var6 = this.field2795[var3]; + var6 = this.field2820[var3]; if (var6 == 16384) { - this.field2799[var3] = var5 + (this.field2799[var3] & -128); + this.field2811[var3] = var5 + (this.field2811[var3] & -128); } } if (var4 == 16) { - this.field2792[var3] = (var5 << 7) + (this.field2792[var3] & -16257); + this.field2815[var3] = (var5 << 7) + (this.field2815[var3] & -16257); } if (var4 == 48) { - this.field2792[var3] = var5 + (this.field2792[var3] & -128); + this.field2815[var3] = var5 + (this.field2815[var3] & -128); } if (var4 == 81) { if (var5 >= 64) { - var10000 = this.field2790; + var10000 = this.field2813; var10000[var3] |= 4; } else { - this.method1653(var3); - var10000 = this.field2790; + this.method1676(var3); + var10000 = this.field2813; var10000[var3] &= -5; } } if (var4 == 17) { - this.method1655(var3, (var5 << 7) + (this.field2797[var3] & -16257)); + this.method1678(var3, (var5 << 7) + (this.field2812[var3] & -16257)); } if (var4 == 49) { - this.method1655(var3, var5 + (this.field2797[var3] & -128)); + this.method1678(var3, var5 + (this.field2812[var3] & -128)); } } else if (var2 == 192) { var3 = var1 & 15; var4 = var1 >> 8 & 127; - this.method1640(var3, var4 + this.field2786[var3]); + this.method1664(var3, var4 + this.field2814[var3]); } else if (var2 == 208) { var3 = var1 & 15; var4 = var1 >> 8 & 127; - this.method1645(var3, var4); + this.method1669(var3, var4); } else if (var2 == 224) { var3 = var1 & 15; var4 = (var1 >> 8 & 127) + (var1 >> 9 & 16256); - this.method1646(var3, var4); + this.method1670(var3, var4); } else { var2 = var1 & 255; if (var2 == 255) { - this.method1650(); + this.method1674(); } } } - @ObfuscatedName("bl") + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "943957578" + descriptor = "(IIB)V", + garbageValue = "23" ) - void method1655(int var1, int var2) { - this.field2797[var1] = var2; - this.field2798[var1] = (int)(2097152.0D * Math.pow(2.0D, 5.4931640625E-4D * (double)var2) + 0.5D); + void method1678(int var1, int var2) { + this.field2812[var1] = var2; + this.field2810[var1] = (int)(2097152.0D * Math.pow(2.0D, (double)var2 * 5.4931640625E-4D) + 0.5D); } - @ObfuscatedName("be") + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "(Lmg;B)I", - garbageValue = "-57" + descriptor = "(Lmw;I)I", + garbageValue = "2086193831" ) - int method1656(MusicPatchNode var1) { - int var2 = (var1.field2843 * var1.field2844 >> 12) + var1.field2840; - var2 += (this.field2789[var1.field2854] - 8192) * this.field2799[var1.field2854] >> 12; - MusicPatchNode2 var3 = var1.field2857; + int method1679(MusicPatchNode var1) { + int var2 = (var1.field2877 * var1.field2870 >> 12) + var1.field2868; + var2 += (this.field2821[var1.field2872] - 8192) * this.field2811[var1.field2872] >> 12; + MusicPatchNode2 var3 = var1.field2878; int var4; - if (var3.field2763 > 0 && (var3.field2765 > 0 || this.field2788[var1.field2854] > 0)) { - var4 = var3.field2765 << 2; - int var5 = var3.field2759 << 1; - if (var1.field2845 < var5) { - var4 = var4 * var1.field2845 / var5; + if (var3.field2782 > 0 && (var3.field2780 > 0 || this.field2817[var1.field2872] > 0)) { + var4 = var3.field2780 << 2; + int var5 = var3.field2783 << 1; + if (var1.field2866 < var5) { + var4 = var4 * var1.field2866 / var5; } - var4 += this.field2788[var1.field2854] >> 7; - double var6 = Math.sin(0.01227184630308513D * (double)(var1.field2849 & 511)); + var4 += this.field2817[var1.field2872] >> 7; + double var6 = Math.sin((double)(var1.field2869 & 511) * 0.01227184630308513D); var2 += (int)((double)var4 * var6); } - var4 = (int)((double)(var1.rawSound.sampleRate * 256) * Math.pow(2.0D, (double)var2 * 3.255208333333333E-4D) / (double)PcmPlayer.field181 + 0.5D); + var4 = (int)((double)(var1.rawSound.sampleRate * 256) * Math.pow(2.0D, (double)var2 * 3.255208333333333E-4D) / (double)PcmPlayer.field179 + 0.5D); return var4 < 1 ? 1 : var4; } - @ObfuscatedName("bi") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(Lmg;I)I", - garbageValue = "-1224155709" + descriptor = "(Lmw;B)I", + garbageValue = "-88" ) - int method1657(MusicPatchNode var1) { - MusicPatchNode2 var2 = var1.field2857; - int var3 = this.field2796[var1.field2854] * this.field2791[var1.field2854] + 4096 >> 13; + int method1680(MusicPatchNode var1) { + MusicPatchNode2 var2 = var1.field2878; + int var3 = this.field2816[var1.field2872] * this.field2818[var1.field2872] + 4096 >> 13; var3 = var3 * var3 + 16384 >> 15; - var3 = var3 * var1.field2856 + 16384 >> 15; - var3 = var3 * this.field2782 + 128 >> 8; - if (var2.field2762 > 0) { - var3 = (int)((double)var3 * Math.pow(0.5D, 1.953125E-5D * (double)var1.field2852 * (double)var2.field2762) + 0.5D); + var3 = var3 * var1.field2861 + 16384 >> 15; + var3 = var3 * this.field2803 + 128 >> 8; + if (var2.field2785 > 0) { + var3 = (int)((double)var3 * Math.pow(0.5D, 1.953125E-5D * (double)var1.field2874 * (double)var2.field2785) + 0.5D); } int var4; int var5; int var6; int var7; - if (var2.field2758 != null) { - var4 = var1.field2848; - var5 = var2.field2758[var1.field2850 + 1]; - if (var1.field2850 < var2.field2758.length - 2) { - var6 = (var2.field2758[var1.field2850] & 255) << 8; - var7 = (var2.field2758[var1.field2850 + 2] & 255) << 8; - var5 += (var2.field2758[var1.field2850 + 3] - var5) * (var4 - var6) / (var7 - var6); + if (var2.field2779 != null) { + var4 = var1.field2875; + var5 = var2.field2779[var1.field2871 + 1]; + if (var1.field2871 < var2.field2779.length - 2) { + var6 = (var2.field2779[var1.field2871] & 255) << 8; + var7 = (var2.field2779[var1.field2871 + 2] & 255) << 8; + var5 += (var2.field2779[var1.field2871 + 3] - var5) * (var4 - var6) / (var7 - var6); } - var3 = var5 * var3 + 32 >> 6; + var3 = var3 * var5 + 32 >> 6; } - if (var1.field2853 > 0 && var2.field2757 != null) { - var4 = var1.field2853; - var5 = var2.field2757[var1.field2841 + 1]; - if (var1.field2841 < var2.field2757.length - 2) { - var6 = (var2.field2757[var1.field2841] & 255) << 8; - var7 = (var2.field2757[var1.field2841 + 2] & 255) << 8; - var5 += (var2.field2757[var1.field2841 + 3] - var5) * (var4 - var6) / (var7 - var6); + if (var1.field2876 > 0 && var2.field2778 != null) { + var4 = var1.field2876; + var5 = var2.field2778[var1.field2867 + 1]; + if (var1.field2867 < var2.field2778.length - 2) { + var6 = (var2.field2778[var1.field2867] & 255) << 8; + var7 = (var2.field2778[var1.field2867 + 2] & 255) << 8; + var5 += (var4 - var6) * (var2.field2778[var1.field2867 + 3] - var5) / (var7 - var6); } - var3 = var3 * var5 + 32 >> 6; + var3 = var5 * var3 + 32 >> 6; } return var3; } - @ObfuscatedName("bz") + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "(Lmg;I)I", - garbageValue = "-1781769455" + descriptor = "(Lmw;B)I", + garbageValue = "-7" ) - int method1658(MusicPatchNode var1) { - int var2 = this.field2787[var1.field2854]; - return var2 < 8192 ? var2 * var1.field2851 + 32 >> 6 : 16384 - ((128 - var1.field2851) * (16384 - var2) + 32 >> 6); + int method1681(MusicPatchNode var1) { + int var2 = this.field2808[var1.field2872]; + return var2 < 8192 ? var2 * var1.field2863 + 32 >> 6 : 16384 - ((128 - var1.field2863) * (16384 - var2) + 32 >> 6); } - @ObfuscatedName("bx") + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-25" + descriptor = "(I)V", + garbageValue = "-1708238703" ) - void method1664() { + void method1687() { int var1 = this.track; int var2 = this.trackLength; long var3; - for (var3 = this.field2803; var2 == this.trackLength; var3 = this.midiFile.method1678(var2)) { + for (var3 = this.field2824; var2 == this.trackLength; var3 = this.midiFile.method1701(var2)) { while (var2 == this.midiFile.trackLengths[var1]) { this.midiFile.gotoTrack(var1); int var5 = this.midiFile.readMessage(var1); @@ -972,8 +969,8 @@ void method1664() { this.midiFile.setTrackDone(); this.midiFile.markTrackPosition(var1); if (this.midiFile.isDone()) { - if (!this.field2781 || var2 == 0) { - this.method1650(); + if (!this.field2802 || var2 == 0) { + this.method1674(); this.midiFile.clear(); return; } @@ -984,7 +981,7 @@ void method1664() { } if ((var5 & 128) != 0) { - this.method1654(var5); + this.method1677(var5); } this.midiFile.readTrackLength(var1); @@ -997,20 +994,20 @@ void method1664() { this.track = var1; this.trackLength = var2; - this.field2803 = var3; + this.field2824 = var3; } - @ObfuscatedName("bn") + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "(Lmg;I)Z", - garbageValue = "845643756" + descriptor = "(Lmw;I)Z", + garbageValue = "1582725415" ) - boolean method1665(MusicPatchNode var1) { + boolean method1688(MusicPatchNode var1) { if (var1.stream == null) { - if (var1.field2853 >= 0) { + if (var1.field2876 >= 0) { var1.remove(); - if (var1.field2842 > 0 && var1 == this.field2806[var1.field2854][var1.field2842]) { - this.field2806[var1.field2854][var1.field2842] = null; + if (var1.field2862 > 0 && var1 == this.field2827[var1.field2872][var1.field2862]) { + this.field2827[var1.field2872][var1.field2862] = null; } } @@ -1020,143 +1017,124 @@ boolean method1665(MusicPatchNode var1) { } } - @ObfuscatedName("bw") + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "(Lmg;[IIII)Z", - garbageValue = "1875808849" + descriptor = "(Lmw;[IIII)Z", + garbageValue = "1206952354" ) - boolean method1666(MusicPatchNode var1, int[] var2, int var3, int var4) { - var1.field2846 = PcmPlayer.field181 / 100; - if (var1.field2853 < 0 || var1.stream != null && !var1.stream.method251()) { - int var5 = var1.field2843; + boolean method1689(MusicPatchNode var1, int[] var2, int var3, int var4) { + var1.field2865 = PcmPlayer.field179 / 100; + if (var1.field2876 < 0 || var1.stream != null && !var1.stream.method265()) { + int var5 = var1.field2870; if (var5 > 0) { - var5 -= (int)(16.0D * Math.pow(2.0D, 4.921259842519685E-4D * (double)this.field2794[var1.field2854]) + 0.5D); + var5 -= (int)(16.0D * Math.pow(2.0D, (double)this.field2819[var1.field2872] * 4.921259842519685E-4D) + 0.5D); if (var5 < 0) { var5 = 0; } - var1.field2843 = var5; + var1.field2870 = var5; } - var1.stream.method249(this.method1656(var1)); - MusicPatchNode2 var6 = var1.field2857; + var1.stream.method263(this.method1679(var1)); + MusicPatchNode2 var6 = var1.field2878; boolean var7 = false; - ++var1.field2845; - var1.field2849 += var6.field2763; - double var8 = 5.086263020833333E-6D * (double)((var1.field2847 - 60 << 8) + (var1.field2844 * var1.field2843 >> 12)); - if (var6.field2762 > 0) { - if (var6.field2761 > 0) { - var1.field2852 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2761 * var8) + 0.5D); + ++var1.field2866; + var1.field2869 += var6.field2782; + double var8 = (double)((var1.field2873 - 60 << 8) + (var1.field2877 * var1.field2870 >> 12)) * 5.086263020833333E-6D; + if (var6.field2785 > 0) { + if (var6.field2786 > 0) { + var1.field2874 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2786 * var8) + 0.5D); } else { - var1.field2852 += 128; + var1.field2874 += 128; } } - if (var6.field2758 != null) { - if (var6.field2764 > 0) { - var1.field2848 += (int)(128.0D * Math.pow(2.0D, var8 * (double)var6.field2764) + 0.5D); + if (var6.field2779 != null) { + if (var6.field2784 > 0) { + var1.field2875 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2784 * var8) + 0.5D); } else { - var1.field2848 += 128; + var1.field2875 += 128; } - while (var1.field2850 < var6.field2758.length - 2 && var1.field2848 > (var6.field2758[var1.field2850 + 2] & 255) << 8) { - var1.field2850 += 2; + while (var1.field2871 < var6.field2779.length - 2 && var1.field2875 > (var6.field2779[var1.field2871 + 2] & 255) << 8) { + var1.field2871 += 2; } - if (var6.field2758.length - 2 == var1.field2850 && var6.field2758[var1.field2850 + 1] == 0) { + if (var6.field2779.length - 2 == var1.field2871 && var6.field2779[var1.field2871 + 1] == 0) { var7 = true; } } - if (var1.field2853 >= 0 && var6.field2757 != null && (this.field2790[var1.field2854] & 1) == 0 && (var1.field2842 < 0 || var1 != this.field2806[var1.field2854][var1.field2842])) { - if (var6.field2760 > 0) { - var1.field2853 += (int)(128.0D * Math.pow(2.0D, var8 * (double)var6.field2760) + 0.5D); + if (var1.field2876 >= 0 && var6.field2778 != null && (this.field2813[var1.field2872] & 1) == 0 && (var1.field2862 < 0 || var1 != this.field2827[var1.field2872][var1.field2862])) { + if (var6.field2781 > 0) { + var1.field2876 += (int)(128.0D * Math.pow(2.0D, (double)var6.field2781 * var8) + 0.5D); } else { - var1.field2853 += 128; + var1.field2876 += 128; } - while (var1.field2841 < var6.field2757.length - 2 && var1.field2853 > (var6.field2757[var1.field2841 + 2] & 255) << 8) { - var1.field2841 += 2; + while (var1.field2867 < var6.field2778.length - 2 && var1.field2876 > (var6.field2778[var1.field2867 + 2] & 255) << 8) { + var1.field2867 += 2; } - if (var6.field2757.length - 2 == var1.field2841) { + if (var6.field2778.length - 2 == var1.field2867) { var7 = true; } } if (var7) { - var1.stream.method248(var1.field2846); + var1.stream.method262(var1.field2865); if (var2 != null) { var1.stream.fill(var2, var3, var4); } else { var1.stream.skip(var4); } - if (var1.stream.method252()) { + if (var1.stream.method266()) { this.patchStream.mixer.addSubStream(var1.stream); } - var1.method1696(); - if (var1.field2853 >= 0) { + var1.method1724(); + if (var1.field2876 >= 0) { var1.remove(); - if (var1.field2842 > 0 && var1 == this.field2806[var1.field2854][var1.field2842]) { - this.field2806[var1.field2854][var1.field2842] = null; + if (var1.field2862 > 0 && var1 == this.field2827[var1.field2872][var1.field2862]) { + this.field2827[var1.field2872][var1.field2862] = null; } } return true; } else { - var1.stream.method247(var1.field2846, this.method1657(var1), this.method1658(var1)); + var1.stream.method261(var1.field2865, this.method1680(var1), this.method1681(var1)); return false; } } else { - var1.method1696(); + var1.method1724(); var1.remove(); - if (var1.field2842 > 0 && var1 == this.field2806[var1.field2854][var1.field2842]) { - this.field2806[var1.field2854][var1.field2842] = null; + if (var1.field2862 > 0 && var1 == this.field2827[var1.field2872][var1.field2862]) { + this.field2827[var1.field2872][var1.field2862] = null; } return true; } } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Lnn;", - garbageValue = "1169137618" - ) - @Export("PlayerType_values") - public static PlayerType[] PlayerType_values() { - return new PlayerType[]{PlayerType.field3487, PlayerType.PlayerType_ultimateIronman, PlayerType.field3493, PlayerType.PlayerType_jagexModerator, PlayerType.PlayerType_playerModerator, PlayerType.field3496, PlayerType.field3489, PlayerType.PlayerType_ironman, PlayerType.PlayerType_normal, PlayerType.field3490, PlayerType.field3485, PlayerType.field3497, PlayerType.PlayerType_hardcoreIronman, PlayerType.field3492, PlayerType.field3500, PlayerType.field3495, PlayerType.field3484}; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[Lum;", - garbageValue = "37" - ) - @Export("FillMode_values") - public static FillMode[] FillMode_values() { - return new FillMode[]{FillMode.field4230, FillMode.field4231, FillMode.SOLID}; - } - - @ObfuscatedName("an") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Ljt;", - garbageValue = "2017214624" + descriptor = "(I)V", + garbageValue = "1188911227" ) - @Export("getFrames") - static Frames getFrames(int var0) { - Frames var1 = (Frames)SequenceDefinition.SequenceDefinition_cachedFrames.get((long)var0); - if (var1 != null) { - return var1; - } else { - var1 = ArchiveLoader.method464(VarpDefinition.SequenceDefinition_animationsArchive, class485.SequenceDefinition_skeletonsArchive, var0, false); - if (var1 != null) { - SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); - } - - return var1; - } + static void method1651() { + Tiles.Tiles_minPlane = 99; + class74.Tiles_underlays = new short[4][104][104]; + Interpreter.Tiles_overlays = new short[4][104][104]; + ViewportMouse.Tiles_shapes = new byte[4][104][104]; + class369.field3559 = new byte[4][104][104]; + class344.field3130 = new int[4][105][105]; + class93.field948 = new byte[4][105][105]; + Tiles.field843 = new int[105][105]; + class337.Tiles_hue = new int[104]; + Tiles.Tiles_saturation = new int[104]; + class185.Tiles_lightness = new int[104]; + MenuAction.Tiles_hueMultiplier = new int[104]; + WorldMapLabelSize.field1943 = new int[104]; } } \ No newline at end of file diff --git a/osrs/src/main/java/MilliClock.java b/osrs/src/main/java/MilliClock.java index b45957e20..405868ca4 100644 --- a/osrs/src/main/java/MilliClock.java +++ b/osrs/src/main/java/MilliClock.java @@ -3,102 +3,128 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gr") +@ObfuscatedName("ie") @Implements("MilliClock") public class MilliClock extends Clock { - @ObfuscatedName("au") - long[] field1484; - @ObfuscatedName("ae") - int field1480; - @ObfuscatedName("ao") - int field1482; @ObfuscatedName("at") - long field1483; - @ObfuscatedName("ac") - int field1479; - @ObfuscatedName("ai") - int field1481; - - public MilliClock() { - this.field1484 = new long[10]; - this.field1480 = 256; - this.field1482 = 1; - this.field1479 = 0; - this.field1483 = GameEngine.clockNow(); + long[] field1867; + @ObfuscatedName("ah") + int field1863; + @ObfuscatedName("ar") + int field1864; + @ObfuscatedName("ao") + long field1866; + @ObfuscatedName("ab") + int field1862; + @ObfuscatedName("au") + int field1865; + + MilliClock() { + this.field1867 = new long[10]; + this.field1863 = 256; + this.field1864 = 1; + this.field1862 = 0; + this.field1866 = SpotAnimationDefinition.method962(); for (int var1 = 0; var1 < 10; ++var1) { - this.field1484[var1] = this.field1483; + this.field1867[var1] = this.field1866; } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1021685028" + garbageValue = "-1366277024" ) @Export("mark") public void mark() { for (int var1 = 0; var1 < 10; ++var1) { - this.field1484[var1] = 0L; + this.field1867[var1] = 0L; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "20" + descriptor = "(III)I", + garbageValue = "-2001388980" ) @Export("wait") public int wait(int var1, int var2) { - int var3 = this.field1480; - int var4 = this.field1482; - this.field1480 = 300; - this.field1482 = 1; - this.field1483 = GameEngine.clockNow(); - if (0L == this.field1484[this.field1481]) { - this.field1480 = var3; - this.field1482 = var4; - } else if (this.field1483 > this.field1484[this.field1481]) { - this.field1480 = (int)((long)(var1 * 2560) / (this.field1483 - this.field1484[this.field1481])); + int var3 = this.field1863; + int var4 = this.field1864; + this.field1863 = 300; + this.field1864 = 1; + this.field1866 = SpotAnimationDefinition.method962(); + if (this.field1867[this.field1865] == 0L) { + this.field1863 = var3; + this.field1864 = var4; + } else if (this.field1866 > this.field1867[this.field1865]) { + this.field1863 = (int)((long)(var1 * 2560) / (this.field1866 - this.field1867[this.field1865])); } - if (this.field1480 < 25) { - this.field1480 = 25; + if (this.field1863 < 25) { + this.field1863 = 25; } - if (this.field1480 > 256) { - this.field1480 = 256; - this.field1482 = (int)((long)var1 - (this.field1483 - this.field1484[this.field1481]) / 10L); + if (this.field1863 > 256) { + this.field1863 = 256; + this.field1864 = (int)((long)var1 - (this.field1866 - this.field1867[this.field1865]) / 10L); } - if (this.field1482 > var1) { - this.field1482 = var1; + if (this.field1864 > var1) { + this.field1864 = var1; } - this.field1484[this.field1481] = this.field1483; - this.field1481 = (this.field1481 + 1) % 10; + this.field1867[this.field1865] = this.field1866; + this.field1865 = (this.field1865 + 1) % 10; int var5; - if (this.field1482 > 1) { + if (this.field1864 > 1) { for (var5 = 0; var5 < 10; ++var5) { - if (0L != this.field1484[var5]) { - this.field1484[var5] += (long)this.field1482; + if (0L != this.field1867[var5]) { + this.field1867[var5] += (long)this.field1864; } } } - if (this.field1482 < var2) { - this.field1482 = var2; + if (this.field1864 < var2) { + this.field1864 = var2; } - PendingSpawn.method505((long)this.field1482); + class219.method1104((long)this.field1864); - for (var5 = 0; this.field1479 < 256; this.field1479 += this.field1480) { + for (var5 = 0; this.field1862 < 256; this.field1862 += this.field1863) { ++var5; } - this.field1479 &= 255; + this.field1862 &= 255; return var5; } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Loi;", + garbageValue = "-1866806569" + ) + public static class364[] method1100() { + return new class364[]{class364.field3509, class364.field3510, class364.field3511, class364.field3508}; + } + + @ObfuscatedName("nn") + @ObfuscatedSignature( + descriptor = "(Lnn;IIIB)V", + garbageValue = "42" + ) + static final void method1103(Widget var0, int var1, int var2, int var3) { + SpriteMask var4 = var0.method1851(HealthBarDefinition.widgetDefinition, false); + if (var4 != null) { + if (Client.minimapState < 3) { + ItemLayer.compass.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, 25, 25, Client.camAngleY, 256, var4.xStarts, var4.xWidths); + } else { + Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); + } + + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/ModeWhere.java b/osrs/src/main/java/ModeWhere.java index 41cfe09f6..f24227fd4 100644 --- a/osrs/src/main/java/ModeWhere.java +++ b/osrs/src/main/java/ModeWhere.java @@ -6,252 +6,408 @@ import java.util.HashSet; import java.util.Set; -@ObfuscatedName("oe") +@ObfuscatedName("ok") @Implements("ModeWhere") -public enum ModeWhere implements class371 { - @ObfuscatedName("au") +public enum ModeWhere implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3626("", 0, new class370[]{class370.field3597, class370.field3598}), - @ObfuscatedName("ae") + field3661("", 0, new class382[]{class382.field3634, class382.field3636}), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3618("", 1, new class370[]{class370.field3596, class370.field3597, class370.field3598}), - @ObfuscatedName("ao") + field3656("", 1, new class382[]{class382.field3635, class382.field3634, class382.field3636}), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3622("", 2, new class370[]{class370.field3596, class370.field3595, class370.field3597}), - @ObfuscatedName("at") + field3660("", 2, new class382[]{class382.field3635, class382.field3633, class382.field3634}), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3625("", 3, new class370[]{class370.field3596}), - @ObfuscatedName("ac") + field3658("", 3, new class382[]{class382.field3635}), + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3616("", 4), - @ObfuscatedName("ai") + field3654("", 4), + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3620("", 5, new class370[]{class370.field3596, class370.field3597}), - @ObfuscatedName("az") + field3662("", 5, new class382[]{class382.field3635, class382.field3634}), + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3627("", 6, new class370[]{class370.field3597}), - @ObfuscatedName("ap") + field3653("", 6, new class382[]{class382.field3634}), + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3623("", 8, new class370[]{class370.field3596, class370.field3597}), - @ObfuscatedName("aa") + field3655("", 8, new class382[]{class382.field3635, class382.field3634}), + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3615("", 9, new class370[]{class370.field3596, class370.field3595}), - @ObfuscatedName("af") + field3657("", 9, new class382[]{class382.field3635, class382.field3633}), + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3619("", 10, new class370[]{class370.field3596}), - @ObfuscatedName("ad") + field3665("", 10, new class382[]{class382.field3635}), + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3617("", 11, new class370[]{class370.field3596}), - @ObfuscatedName("aq") + field3659("", 11, new class382[]{class382.field3635}), + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3624("", 12, new class370[]{class370.field3596, class370.field3597}), - @ObfuscatedName("al") + field3663("", 12, new class382[]{class382.field3635, class382.field3634}), + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Loe;" + descriptor = "Lok;" ) - field3621("", 13, new class370[]{class370.field3596}); - - @ObfuscatedName("dc") - static boolean field3613; - @ObfuscatedName("oo") - @Export("selectedSpellWidget") - static int selectedSpellWidget; - @ObfuscatedName("an") + field3664("", 13, new class382[]{class382.field3635}); + + @ObfuscatedName("bk") + static String field3652; + @ObfuscatedName("as") @Export("id") final int id; - @ObfuscatedName("ar") - final Set field3629; + @ObfuscatedName("ay") + final Set field3667; static { $values(); } @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I[Log;)V" + descriptor = "(Ljava/lang/String;I[Lot;)V" ) - ModeWhere(String var3, int var4, class370[] var5) { - this.field3629 = new HashSet(); + ModeWhere(String var3, int var4, class382[] var5) { + this.field3667 = new HashSet(); this.id = var4; - class370[] var6 = var5; + class382[] var6 = var5; for (int var7 = 0; var7 < var6.length; ++var7) { - class370 var8 = var6[var7]; - this.field3629.add(var8); + class382 var8 = var6[var7]; + this.field3667.add(var8); } } ModeWhere(String var3, int var4) { - this.field3629 = new HashSet(); + this.field3667 = new HashSet(); this.id = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)[Loe;", - garbageValue = "-1302821718" + descriptor = "(I)[Lok;", + garbageValue = "435699803" ) @Export("$values") static ModeWhere[] $values() { - return new ModeWhere[]{field3617, field3621, field3616, field3615, field3623, field3625, field3619, field3624, field3620, field3618, field3627, field3622, field3626}; + return new ModeWhere[]{field3657, field3664, field3663, field3655, field3654, field3660, field3661, field3659, field3662, field3656, field3653, field3665, field3658}; } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-1598349673" + descriptor = "(IIII)Ldt;", + garbageValue = "-1608087816" ) - public static void method1978(AbstractArchive var0) { - class13.InvDefinition_archive = var0; + @Export("getWorldMapScript") + static Script getWorldMapScript(int var0, int var1, int var2) { + int var3 = class10.method32(var1, var0); + Script var4 = WorldMapData_1.method1280(var3, var0); + if (var4 != null) { + return var4; + } else { + int var5 = (-3 - var2 << 8) + var0; + var4 = WorldMapData_1.method1280(var5, var0); + if (var4 != null) { + return var4; + } else { + int var6 = var0 + -512; + var4 = WorldMapData_1.method1280(var6, var0); + return var4 != null ? var4 : null; + } + } } - @ObfuscatedName("ao") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "277734474" ) - @Export("loadInterface") - public static boolean loadInterface(int var0) { - if (class316.Widget_loadedInterfaces[var0]) { - return true; - } else if (!Decimator.Widget_archive.tryLoadGroup(var0)) { - return false; + public static void method2001() { + ParamComposition.ParamDefinition_cached.clear(); + } + + @ObfuscatedName("jc") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-46" + ) + static final void method2002() { + LoginScreenAnimation.method534(false); + Client.field452 = 0; + boolean var0 = true; + + int var1; + for (var1 = 0; var1 < WorldMapData_1.regionLandArchives.length; ++var1) { + if (UserComparator7.regionMapArchiveIds[var1] != -1 && WorldMapData_1.regionLandArchives[var1] == null) { + WorldMapData_1.regionLandArchives[var1] = WorldMapSection0.archive9.takeFile(UserComparator7.regionMapArchiveIds[var1], 0); + if (WorldMapData_1.regionLandArchives[var1] == null) { + var0 = false; + ++Client.field452; + } + } + + if (UserComparator3.regionLandArchiveIds[var1] != -1 && GrandExchangeEvent.regionMapArchives[var1] == null) { + GrandExchangeEvent.regionMapArchives[var1] = WorldMapSection0.archive9.takeFileEncrypted(UserComparator3.regionLandArchiveIds[var1], 0, Varcs.xteaKeys[var1]); + if (GrandExchangeEvent.regionMapArchives[var1] == null) { + var0 = false; + ++Client.field452; + } + } + } + + if (!var0) { + Client.field451 = 1; } else { - int var1 = Decimator.Widget_archive.getGroupFileCount(var0); - if (var1 == 0) { - class316.Widget_loadedInterfaces[var0] = true; - return true; + Client.field453 = 0; + var0 = true; + + int var3; + int var4; + for (var1 = 0; var1 < WorldMapData_1.regionLandArchives.length; ++var1) { + byte[] var2 = GrandExchangeEvent.regionMapArchives[var1]; + if (var2 != null) { + var3 = (KitDefinition.regions[var1] >> 8) * 64 - NewShit.baseX; + var4 = (KitDefinition.regions[var1] & 255) * 64 - class101.baseY; + if (Client.isInInstance) { + var3 = 10; + var4 = 10; + } + + var0 &= class150.method784(var2, var3, var4); + } + } + + if (!var0) { + Client.field451 = 2; } else { - if (PacketBufferNode.Widget_interfaceComponents[var0] == null) { - PacketBufferNode.Widget_interfaceComponents[var0] = new Widget[var1]; + if (Client.field451 != 0) { + LoginPacket.drawLoadingMessage("Loading - please wait." + "
" + " (" + 100 + "%" + ")", true); } - for (int var2 = 0; var2 < var1; ++var2) { - if (PacketBufferNode.Widget_interfaceComponents[var0][var2] == null) { - byte[] var3 = Decimator.Widget_archive.takeFile(var0, var2); - if (var3 != null) { - PacketBufferNode.Widget_interfaceComponents[var0][var2] = new Widget(); - PacketBufferNode.Widget_interfaceComponents[var0][var2].id = var2 + (var0 << 16); - if (var3[0] == -1) { - PacketBufferNode.Widget_interfaceComponents[var0][var2].decode(new Buffer(var3)); - } else { - PacketBufferNode.Widget_interfaceComponents[var0][var2].decodeLegacy(new Buffer(var3)); - } + class102.method604(); + class36.scene.clear(); + + for (var1 = 0; var1 < 4; ++var1) { + Client.collisionMaps[var1].clear(); + } + + int var15; + for (var1 = 0; var1 < 4; ++var1) { + for (var15 = 0; var15 < 104; ++var15) { + for (var3 = 0; var3 < 104; ++var3) { + Tiles.Tiles_renderFlags[var1][var15][var3] = 0; } } } - class316.Widget_loadedInterfaces[var0] = true; - return true; - } - } - } + class102.method604(); + MidiPcmStream.method1651(); + var1 = WorldMapData_1.regionLandArchives.length; + WorldMapSectionType.method1311(); + LoginScreenAnimation.method534(true); + int var17; + if (!Client.isInInstance) { + byte[] var5; + for (var15 = 0; var15 < var1; ++var15) { + var3 = (KitDefinition.regions[var15] >> 8) * 64 - NewShit.baseX; + var4 = (KitDefinition.regions[var15] & 255) * 64 - class101.baseY; + var5 = WorldMapData_1.regionLandArchives[var15]; + if (var5 != null) { + class102.method604(); + class427.method2178(var5, var3, var4, DefaultsGroup.timeOfPreviousKeyPress * 8 - 48, class223.field1886 * 8 - 48, Client.collisionMaps); + } + } - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(III)Ldh;", - garbageValue = "-305798584" - ) - static Script method1981(int var0, int var1) { - Script var2 = (Script)Script.Script_cached.get((long)(var0 << 16)); - if (var2 != null) { - return var2; - } else { - String var3 = String.valueOf(var0); - int var4 = GrandExchangeOffer.archive12.getGroupId(var3); - if (var4 == -1) { - return null; - } else { - byte[] var5 = GrandExchangeOffer.archive12.takeFileFlat(var4); - if (var5 != null) { - if (var5.length <= 1) { - return null; + for (var15 = 0; var15 < var1; ++var15) { + var3 = (KitDefinition.regions[var15] >> 8) * 64 - NewShit.baseX; + var4 = (KitDefinition.regions[var15] & 255) * 64 - class101.baseY; + var5 = WorldMapData_1.regionLandArchives[var15]; + if (var5 == null && class223.field1886 < 800) { + class102.method604(); + MouseHandler.method182(var3, var4, 64, 64); + } } - var2 = HitSplatDefinition.newScript(var5); - if (var2 != null) { - Script.Script_cached.put(var2, (long)(var0 << 16)); - return var2; + LoginScreenAnimation.method534(true); + + for (var15 = 0; var15 < var1; ++var15) { + byte[] var16 = GrandExchangeEvent.regionMapArchives[var15]; + if (var16 != null) { + var4 = (KitDefinition.regions[var15] >> 8) * 64 - NewShit.baseX; + var17 = (KitDefinition.regions[var15] & 255) * 64 - class101.baseY; + class102.method604(); + class250.method1333(var16, var4, var17, class36.scene, Client.collisionMaps); + } } } - return null; - } - } - } + int var6; + int var7; + int var8; + if (Client.isInInstance) { + int var9; + int var10; + int var11; + for (var15 = 0; var15 < 4; ++var15) { + class102.method604(); - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(Lch;I)V", - garbageValue = "516890386" - ) - @Export("changeWorld") - static void changeWorld(World var0) { - if (var0.isMembersOnly() != Client.isMembersWorld) { - Client.isMembersWorld = var0.isMembersOnly(); - boolean var1 = var0.isMembersOnly(); - if (var1 != ItemComposition.ItemDefinition_inMembersWorld) { - ItemComposition.ItemDefinition_cached.clear(); - ItemComposition.ItemDefinition_cachedModels.clear(); - ItemComposition.ItemDefinition_cachedSprites.clear(); - ItemComposition.ItemDefinition_inMembersWorld = var1; - } - } + for (var3 = 0; var3 < 13; ++var3) { + for (var4 = 0; var4 < 13; ++var4) { + boolean var19 = false; + var6 = Client.instanceChunkTemplates[var15][var3][var4]; + if (var6 != -1) { + var7 = var6 >> 24 & 3; + var8 = var6 >> 1 & 3; + var9 = var6 >> 14 & 1023; + var10 = var6 >> 3 & 2047; + var11 = (var9 / 8 << 8) + var10 / 8; - if (var0.properties != Client.worldProperties) { - Archive var3 = PcmPlayer.archive8; - int var2 = var0.properties; - if ((var2 & class510.field4132.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var3, "logo_deadman_mode", ""); - } else if ((var2 & class510.field4131.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var3, "logo_seasonal_mode", ""); - } else if ((var2 & class510.field4122.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var3, "logo_speedrunning", ""); - } else { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var3, "logo", ""); + for (int var12 = 0; var12 < KitDefinition.regions.length; ++var12) { + if (KitDefinition.regions[var12] == var11 && WorldMapData_1.regionLandArchives[var12] != null) { + int var13 = (var9 - var3) * 8; + int var14 = (var10 - var4) * 8; + GameEngine.method146(WorldMapData_1.regionLandArchives[var12], var15, var3 * 8, var4 * 8, var7, (var9 & 7) * 8, (var10 & 7) * 8, var8, var13, var14, Client.collisionMaps); + var19 = true; + break; + } + } + } + + if (!var19) { + class230.method1176(var15, var3 * 8, var4 * 8); + } + } + } + } + + for (var15 = 0; var15 < 13; ++var15) { + for (var3 = 0; var3 < 13; ++var3) { + var4 = Client.instanceChunkTemplates[0][var15][var3]; + if (var4 == -1) { + MouseHandler.method182(var15 * 8, var3 * 8, 8, 8); + } + } + } + + LoginScreenAnimation.method534(true); + + for (var15 = 0; var15 < 4; ++var15) { + class102.method604(); + + for (var3 = 0; var3 < 13; ++var3) { + for (var4 = 0; var4 < 13; ++var4) { + var17 = Client.instanceChunkTemplates[var15][var3][var4]; + if (var17 != -1) { + var6 = var17 >> 24 & 3; + var7 = var17 >> 1 & 3; + var8 = var17 >> 14 & 1023; + var9 = var17 >> 3 & 2047; + var10 = (var8 / 8 << 8) + var9 / 8; + + for (var11 = 0; var11 < KitDefinition.regions.length; ++var11) { + if (KitDefinition.regions[var11] == var10 && GrandExchangeEvent.regionMapArchives[var11] != null) { + Tiles.method455(GrandExchangeEvent.regionMapArchives[var11], var15, var3 * 8, var4 * 8, var6, (var8 & 7) * 8, (var9 & 7) * 8, var7, class36.scene, Client.collisionMaps); + break; + } + } + } + } + } + } + } + + LoginScreenAnimation.method534(true); + class102.method604(); + class156.method823(class36.scene, Client.collisionMaps); + LoginScreenAnimation.method534(true); + var15 = Tiles.Tiles_minPlane; + if (var15 > ItemLayer.Client_plane) { + var15 = ItemLayer.Client_plane; + } + + if (var15 < ItemLayer.Client_plane - 1) { + var15 = ItemLayer.Client_plane - 1; + } + + if (Client.isLowDetail) { + class36.scene.init(Tiles.Tiles_minPlane); + } else { + class36.scene.init(0); + } + + for (var3 = 0; var3 < 104; ++var3) { + for (var4 = 0; var4 < 104; ++var4) { + ClanSettings.updateItemPile(var3, var4); + } + } + + class102.method604(); + class90.method476(); + ObjectComposition.ObjectDefinition_cachedModelData.clear(); + PacketBufferNode var18; + if (SpriteMask.client.hasFrame()) { + var18 = class113.getPacketBufferNode(ClientPacket.DETECT_MODIFIED_CLIENT, Client.packetWriter.isaacCipher); + var18.packetBuffer.writeInt(1057001181); + Client.packetWriter.addNode(var18); + } + + if (!Client.isInInstance) { + var3 = (DefaultsGroup.timeOfPreviousKeyPress - 6) / 8; + var4 = (DefaultsGroup.timeOfPreviousKeyPress + 6) / 8; + var17 = (class223.field1886 - 6) / 8; + var6 = (class223.field1886 + 6) / 8; + + for (var7 = var3 - 1; var7 <= var4 + 1; ++var7) { + for (var8 = var17 - 1; var8 <= var6 + 1; ++var8) { + if (var7 < var3 || var7 > var4 || var8 < var17 || var8 > var6) { + WorldMapSection0.archive9.loadRegionFromName("m" + var7 + "_" + var8); + WorldMapSection0.archive9.loadRegionFromName("l" + var7 + "_" + var8); + } + } + } + } + + WorldMapSection2.updateGameState(30); + class102.method604(); + class320.method1707(); + var18 = class113.getPacketBufferNode(ClientPacket.f49, Client.packetWriter.isaacCipher); + Client.packetWriter.addNode(var18); + WorldMapManager.method1277(); } } - - class292.worldHost = var0.host; - Client.worldId = var0.id; - Client.worldProperties = var0.properties; - class30.field83 = var0.field679; - class480.worldPort = Client.gameBuild == 0 ? 43594 : var0.id + 40000; - class129.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; - class4.currentPort = class480.worldPort; } } \ No newline at end of file diff --git a/osrs/src/main/java/Model.java b/osrs/src/main/java/Model.java index a5a5e0b51..b6ce43251 100644 --- a/osrs/src/main/java/Model.java +++ b/osrs/src/main/java/Model.java @@ -6,194 +6,194 @@ import java.util.Arrays; import java.util.HashMap; -@ObfuscatedName("jr") +@ObfuscatedName("ka") @Implements("Model") public class Model extends Renderable { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ljr;" + descriptor = "Lka;" ) @Export("Model_sharedSequenceModel") static Model Model_sharedSequenceModel; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("Model_sharedSequenceModelFaceAlphas") static byte[] Model_sharedSequenceModelFaceAlphas; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ljr;" + descriptor = "Lka;" ) @Export("Model_sharedSpotAnimationModel") static Model Model_sharedSpotAnimationModel; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("Model_sharedSpotAnimationModelFaceAlphas") static byte[] Model_sharedSpotAnimationModelFaceAlphas; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "Lrz;" ) - static class450 field2204; - @ObfuscatedName("ai") + static class462 field2385; + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "Lrz;" ) - static class450 field2205; - @ObfuscatedName("az") + static class462 field2386; + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "Lrz;" ) - static class450 field2206; - @ObfuscatedName("bp") - static boolean[] field2173; - @ObfuscatedName("bu") - static boolean[] field2174; + static class462 field2384; @ObfuscatedName("bo") + static boolean[] field2353; + @ObfuscatedName("bt") + static boolean[] field2354; + @ObfuscatedName("bu") @Export("modelViewportXs") static int[] modelViewportXs; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("modelViewportYs") static int[] modelViewportYs; - @ObfuscatedName("br") - static float[] field2179; - @ObfuscatedName("be") - static int[] field2185; - @ObfuscatedName("bi") - static int[] field2187; + @ObfuscatedName("bh") + static float[] field2359; @ObfuscatedName("bz") - static int[] field2190; - @ObfuscatedName("bx") - static int[] field2189; - @ObfuscatedName("bw") - static char[] field2177; + static int[] field2370; @ObfuscatedName("bc") - static char[][] field2178; - @ObfuscatedName("bg") - static int[] field2186; - @ObfuscatedName("cw") - static int[][] field2201; + static int[] field2364; + @ObfuscatedName("bs") + static int[] field2366; + @ObfuscatedName("bx") + static int[] field2368; + @ObfuscatedName("bk") + static char[] field2357; + @ObfuscatedName("br") + static char[][] field2358; + @ObfuscatedName("bq") + static int[] field2365; @ObfuscatedName("cf") - static int[] field2192; - @ObfuscatedName("cm") - static int[] field2195; - @ObfuscatedName("cn") - static int[] field2196; - @ObfuscatedName("cs") - static int[] field2198; + static int[][] field2381; + @ObfuscatedName("cg") + static int[] field2373; + @ObfuscatedName("cv") + static int[] field2379; @ObfuscatedName("cx") - static int[] field2200; - @ObfuscatedName("cr") - static int[] field2197; - @ObfuscatedName("cd") - static float[] field2180; + static int[] field2380; + @ObfuscatedName("cp") + static int[] field2377; @ObfuscatedName("ce") + static int[] field2372; + @ObfuscatedName("ci") + static int[] field2374; + @ObfuscatedName("ct") + static float[] field2360; + @ObfuscatedName("cw") @Export("Model_transformTempX") static int Model_transformTempX; @ObfuscatedName("cq") @Export("Model_transformTempY") static int Model_transformTempY; - @ObfuscatedName("cp") + @ObfuscatedName("cl") @Export("Model_transformTempZ") static int Model_transformTempZ; - @ObfuscatedName("cv") - static boolean field2172; - @ObfuscatedName("cu") - static int[] field2199; - @ObfuscatedName("ch") - static int[] field2193; - @ObfuscatedName("ci") - static int[] field2194; - @ObfuscatedName("ca") - static int[] field2191; + @ObfuscatedName("cs") + static boolean field2352; + @ObfuscatedName("cn") + static int[] field2376; + @ObfuscatedName("cr") + static int[] field2378; @ObfuscatedName("cj") - static final float field2207; - @ObfuscatedName("ap") + static int[] field2375; + @ObfuscatedName("ca") + static int[] field2371; + @ObfuscatedName("ch") + static final float field2387; + @ObfuscatedName("ac") @Export("verticesCount") public int verticesCount; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("verticesX") int[] verticesX; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("verticesY") int[] verticesY; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("verticesZ") int[] verticesZ; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("indicesCount") public int indicesCount; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("indices1") int[] indices1; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("indices2") int[] indices2; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("indices3") int[] indices3; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("faceColors1") int[] faceColors1; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("faceColors2") int[] faceColors2; @ObfuscatedName("am") @Export("faceColors3") int[] faceColors3; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("faceRenderPriorities") byte[] faceRenderPriorities; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("faceAlphas") byte[] faceAlphas; - @ObfuscatedName("as") - byte[] field2209; - @ObfuscatedName("ay") + @ObfuscatedName("aw") + byte[] field2390; + @ObfuscatedName("ae") @Export("faceTextures") short[] faceTextures; - @ObfuscatedName("aj") - public byte field2235; - @ObfuscatedName("av") - public int field2242; - @ObfuscatedName("aw") - int[] field2226; - @ObfuscatedName("ak") - int[] field2221; - @ObfuscatedName("bh") - int[] field2227; - @ObfuscatedName("bj") + @ObfuscatedName("an") + public byte field2415; + @ObfuscatedName("ag") + public int field2421; + @ObfuscatedName("ad") + int[] field2396; + @ObfuscatedName("af") + int[] field2397; + @ObfuscatedName("be") + int[] field2407; + @ObfuscatedName("bd") @Export("vertexLabels") int[][] vertexLabels; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("faceLabelsAlpha") int[][] faceLabelsAlpha; + @ObfuscatedName("bi") + int[][] field2409; @ObfuscatedName("bv") - int[][] field2231; - @ObfuscatedName("bt") - int[][] field2230; - @ObfuscatedName("bd") + int[][] field2411; + @ObfuscatedName("bf") @Export("isSingleTile") public boolean isSingleTile; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("boundsType") int boundsType; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("bottomY") int bottomY; @ObfuscatedName("bm") @Export("xzRadius") int xzRadius; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("diameter") int diameter; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("radius") int radius; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("aabb") HashMap aabb; - @ObfuscatedName("cz") + @ObfuscatedName("cb") @Export("overrideHue") public byte overrideHue; - @ObfuscatedName("ct") + @ObfuscatedName("cz") @Export("overrideSaturation") public byte overrideSaturation; @ObfuscatedName("cy") @@ -202,50 +202,50 @@ public class Model extends Renderable { @ObfuscatedName("ck") @Export("overrideAmount") public byte overrideAmount; - @ObfuscatedName("cc") - public short field2243; + @ObfuscatedName("cd") + public short field2423; static { Model_sharedSequenceModel = new Model(); Model_sharedSequenceModelFaceAlphas = new byte[1]; Model_sharedSpotAnimationModel = new Model(); Model_sharedSpotAnimationModelFaceAlphas = new byte[1]; - field2204 = new class450(); - field2205 = new class450(); - field2206 = new class450(); - field2173 = new boolean[6500]; - field2174 = new boolean[6500]; + field2385 = new class462(); + field2386 = new class462(); + field2384 = new class462(); + field2353 = new boolean[6500]; + field2354 = new boolean[6500]; modelViewportXs = new int[6500]; modelViewportYs = new int[6500]; - field2179 = new float[6500]; - field2185 = new int[6500]; - field2187 = new int[6500]; - field2190 = new int[6500]; - field2189 = new int[6500]; - field2177 = new char[6000]; - field2178 = new char[6000][512]; - field2186 = new int[12]; - field2201 = new int[12][2000]; - field2192 = new int[2000]; - field2195 = new int[2000]; - field2196 = new int[12]; - field2198 = new int[10]; - field2200 = new int[10]; - field2197 = new int[10]; - field2180 = new float[10]; - field2172 = true; - field2199 = Rasterizer3D.Rasterizer3D_sine; - field2193 = Rasterizer3D.Rasterizer3D_cosine; - field2194 = Rasterizer3D.Rasterizer3D_colorPalette; - field2191 = Rasterizer3D.field2037; - field2207 = AbstractWorldMapIcon.method1556(50); + field2359 = new float[6500]; + field2370 = new int[6500]; + field2364 = new int[6500]; + field2366 = new int[6500]; + field2368 = new int[6500]; + field2357 = new char[6000]; + field2358 = new char[6000][512]; + field2365 = new int[12]; + field2381 = new int[12][2000]; + field2373 = new int[2000]; + field2379 = new int[2000]; + field2377 = new int[12]; + field2372 = new int[10]; + field2380 = new int[10]; + field2374 = new int[10]; + field2360 = new float[10]; + field2352 = true; + field2376 = Rasterizer3D.Rasterizer3D_sine; + field2378 = Rasterizer3D.Rasterizer3D_cosine; + field2375 = Rasterizer3D.Rasterizer3D_colorPalette; + field2371 = Rasterizer3D.field2219; + field2387 = WorldMapAreaData.method1364(50); } Model() { this.verticesCount = 0; this.indicesCount = 0; - this.field2235 = 0; - this.field2242 = 0; + this.field2415 = 0; + this.field2421 = 0; this.isSingleTile = false; this.aabb = new HashMap(); } @@ -253,31 +253,31 @@ public class Model extends Renderable { public Model(int var1, int var2, int var3, byte var4) { this.verticesCount = 0; this.indicesCount = 0; - this.field2235 = 0; - this.field2242 = 0; + this.field2415 = 0; + this.field2421 = 0; this.isSingleTile = false; this.aabb = new HashMap(); - this.method1312(var1, var2, var3); - this.field2235 = var4; + this.method1530(var1, var2, var3); + this.field2415 = var4; this.verticesCount = 0; this.indicesCount = 0; - this.field2242 = 0; + this.field2421 = 0; } @ObfuscatedSignature( - descriptor = "([Ljr;I)V" + descriptor = "([Lka;I)V" ) public Model(Model[] var1, int var2) { this.verticesCount = 0; this.indicesCount = 0; - this.field2235 = 0; - this.field2242 = 0; + this.field2415 = 0; + this.field2421 = 0; this.isSingleTile = false; this.aabb = new HashMap(); this.verticesCount = 0; this.indicesCount = 0; - this.field2242 = 0; - this.field2235 = -1; + this.field2421 = 0; + this.field2415 = -1; int var3; for (var3 = 0; var3 < var2; ++var3) { @@ -285,26 +285,26 @@ public Model(Model[] var1, int var2) { if (var4 != null) { this.verticesCount += var4.verticesCount; this.indicesCount += var4.indicesCount; - this.field2242 += var4.field2242; - if (this.field2235 == -1) { - this.field2235 = var4.field2235; + this.field2421 += var4.field2421; + if (this.field2415 == -1) { + this.field2415 = var4.field2415; } } } - this.method1312(this.verticesCount, this.indicesCount, this.field2242); + this.method1530(this.verticesCount, this.indicesCount, this.field2421); this.verticesCount = 0; this.indicesCount = 0; - this.field2242 = 0; + this.field2421 = 0; for (var3 = 0; var3 < var2; ++var3) { - this.method1314(var1[var3]); + this.method1532(var1[var3]); } } - @ObfuscatedName("au") - void method1312(int var1, int var2, int var3) { + @ObfuscatedName("at") + void method1530(int var1, int var2, int var3) { this.verticesX = new int[var1]; this.verticesY = new int[var1]; this.verticesZ = new int[var1]; @@ -315,22 +315,22 @@ void method1312(int var1, int var2, int var3) { this.faceColors2 = new int[var2]; this.faceColors3 = new int[var2]; if (var3 > 0) { - this.field2226 = new int[var3]; - this.field2221 = new int[var3]; - this.field2227 = new int[var3]; + this.field2396 = new int[var3]; + this.field2397 = new int[var3]; + this.field2407 = new int[var3]; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljr;)V" + descriptor = "(Lka;)V" ) - void method1313(Model var1) { + void method1531(Model var1) { int var2 = this.indices1.length; - if (this.faceRenderPriorities == null && (var1.faceRenderPriorities != null || this.field2235 != var1.field2235)) { + if (this.faceRenderPriorities == null && (var1.faceRenderPriorities != null || this.field2415 != var1.field2415)) { this.faceRenderPriorities = new byte[var2]; - Arrays.fill(this.faceRenderPriorities, this.field2235); + Arrays.fill(this.faceRenderPriorities, this.field2415); } if (this.faceAlphas == null && var1.faceAlphas != null) { @@ -343,20 +343,20 @@ void method1313(Model var1) { Arrays.fill(this.faceTextures, (short)-1); } - if (this.field2209 == null && var1.field2209 != null) { - this.field2209 = new byte[var2]; - Arrays.fill(this.field2209, (byte)-1); + if (this.field2390 == null && var1.field2390 != null) { + this.field2390 = new byte[var2]; + Arrays.fill(this.field2390, (byte)-1); } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljr;)V" + descriptor = "(Lka;)V" ) - public void method1314(Model var1) { + public void method1532(Model var1) { if (var1 != null) { - this.method1313(var1); + this.method1531(var1); int var2; for (var2 = 0; var2 < var1.indicesCount; ++var2) { @@ -367,7 +367,7 @@ public void method1314(Model var1) { this.faceColors2[this.indicesCount] = var1.faceColors2[var2]; this.faceColors3[this.indicesCount] = var1.faceColors3[var2]; if (this.faceRenderPriorities != null) { - this.faceRenderPriorities[this.indicesCount] = var1.faceRenderPriorities != null ? var1.faceRenderPriorities[var2] : var1.field2235; + this.faceRenderPriorities[this.indicesCount] = var1.faceRenderPriorities != null ? var1.faceRenderPriorities[var2] : var1.field2415; } if (this.faceAlphas != null && var1.faceAlphas != null) { @@ -378,22 +378,22 @@ public void method1314(Model var1) { this.faceTextures[this.indicesCount] = var1.faceTextures != null ? var1.faceTextures[var2] : -1; } - if (this.field2209 != null) { - if (var1.field2209 != null && var1.field2209[var2] != -1) { - this.field2209[this.indicesCount] = (byte)(var1.field2209[var2] + this.field2242); + if (this.field2390 != null) { + if (var1.field2390 != null && var1.field2390[var2] != -1) { + this.field2390[this.indicesCount] = (byte)(var1.field2390[var2] + this.field2421); } else { - this.field2209[this.indicesCount] = -1; + this.field2390[this.indicesCount] = -1; } } ++this.indicesCount; } - for (var2 = 0; var2 < var1.field2242; ++var2) { - this.field2226[this.field2242] = this.verticesCount + var1.field2226[var2]; - this.field2221[this.field2242] = this.verticesCount + var1.field2221[var2]; - this.field2227[this.field2242] = this.verticesCount + var1.field2227[var2]; - ++this.field2242; + for (var2 = 0; var2 < var1.field2421; ++var2) { + this.field2396[this.field2421] = this.verticesCount + var1.field2396[var2]; + this.field2397[this.field2421] = this.verticesCount + var1.field2397[var2]; + this.field2407[this.field2421] = this.verticesCount + var1.field2407[var2]; + ++this.field2421; } for (var2 = 0; var2 < var1.verticesCount; ++var2) { @@ -406,9 +406,9 @@ public void method1314(Model var1) { } } - @ObfuscatedName("az") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "([[IIIIZI)Ljr;" + descriptor = "([[IIIIZI)Lka;" ) @Export("contourGround") public Model contourGround(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { @@ -430,7 +430,7 @@ public Model contourGround(int[][] var1, int var2, int var3, int var4, boolean v var11 = new Model(); var11.verticesCount = this.verticesCount; var11.indicesCount = this.indicesCount; - var11.field2242 = this.field2242; + var11.field2421 = this.field2421; var11.verticesX = this.verticesX; var11.verticesZ = this.verticesZ; var11.indices1 = this.indices1; @@ -441,12 +441,12 @@ public Model contourGround(int[][] var1, int var2, int var3, int var4, boolean v var11.faceColors3 = this.faceColors3; var11.faceRenderPriorities = this.faceRenderPriorities; var11.faceAlphas = this.faceAlphas; - var11.field2209 = this.field2209; + var11.field2390 = this.field2390; var11.faceTextures = this.faceTextures; - var11.field2235 = this.field2235; - var11.field2226 = this.field2226; - var11.field2221 = this.field2221; - var11.field2227 = this.field2227; + var11.field2415 = this.field2415; + var11.field2396 = this.field2396; + var11.field2397 = this.field2397; + var11.field2407 = this.field2407; var11.vertexLabels = this.vertexLabels; var11.faceLabelsAlpha = this.faceLabelsAlpha; var11.isSingleTile = this.isSingleTile; @@ -504,9 +504,9 @@ public Model contourGround(int[][] var1, int var2, int var3, int var4, boolean v } } - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Z)Ljr;" + descriptor = "(Z)Lka;" ) @Export("toSharedSequenceModel") public Model toSharedSequenceModel(boolean var1) { @@ -517,9 +517,9 @@ public Model toSharedSequenceModel(boolean var1) { return this.buildSharedModel(var1, Model_sharedSequenceModel, Model_sharedSequenceModelFaceAlphas); } - @ObfuscatedName("aa") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Z)Ljr;" + descriptor = "(Z)Lka;" ) @Export("toSharedSpotAnimationModel") public Model toSharedSpotAnimationModel(boolean var1) { @@ -530,15 +530,15 @@ public Model toSharedSpotAnimationModel(boolean var1) { return this.buildSharedModel(var1, Model_sharedSpotAnimationModel, Model_sharedSpotAnimationModelFaceAlphas); } - @ObfuscatedName("af") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(ZLjr;[B)Ljr;" + descriptor = "(ZLka;[B)Lka;" ) @Export("buildSharedModel") Model buildSharedModel(boolean var1, Model var2, byte[] var3) { var2.verticesCount = this.verticesCount; var2.indicesCount = this.indicesCount; - var2.field2242 = this.field2242; + var2.field2421 = this.field2421; if (var2.verticesX == null || var2.verticesX.length < this.verticesCount) { var2.verticesX = new int[this.verticesCount + 100]; var2.verticesY = new int[this.verticesCount + 100]; @@ -574,23 +574,23 @@ Model buildSharedModel(boolean var1, Model var2, byte[] var3) { var2.faceColors2 = this.faceColors2; var2.faceColors3 = this.faceColors3; var2.faceRenderPriorities = this.faceRenderPriorities; - var2.field2209 = this.field2209; + var2.field2390 = this.field2390; var2.faceTextures = this.faceTextures; - var2.field2235 = this.field2235; - var2.field2226 = this.field2226; - var2.field2221 = this.field2221; - var2.field2227 = this.field2227; + var2.field2415 = this.field2415; + var2.field2396 = this.field2396; + var2.field2397 = this.field2397; + var2.field2407 = this.field2407; var2.vertexLabels = this.vertexLabels; var2.faceLabelsAlpha = this.faceLabelsAlpha; - var2.field2231 = this.field2231; - var2.field2230 = this.field2230; + var2.field2409 = this.field2409; + var2.field2411 = this.field2411; var2.isSingleTile = this.isSingleTile; var2.resetBounds(); var2.overrideAmount = 0; return var2; } - @ObfuscatedName("ad") + @ObfuscatedName("ax") @Export("calculateBoundingBox") void calculateBoundingBox(int var1) { if (!this.aabb.containsKey(var1)) { @@ -600,17 +600,15 @@ void calculateBoundingBox(int var1) { int var5 = 0; int var6 = 0; int var7 = 0; - int var8 = field2193[var1]; - int var9 = field2199[var1]; + int var8 = field2378[var1]; + int var9 = field2376[var1]; for (int var10 = 0; var10 < this.verticesCount; ++var10) { - int var12 = this.verticesX[var10]; - int var13 = this.verticesZ[var10]; - int var11 = var12 * var8 + var13 * var9 >> 16; - int var15 = this.verticesY[var10]; - int var17 = this.verticesX[var10]; - int var18 = this.verticesZ[var10]; - int var16 = var18 * var8 - var9 * var17 >> 16; + int var11 = WorldMapEvent.method1381(this.verticesX[var10], this.verticesZ[var10], var8, var9); + int var12 = this.verticesY[var10]; + int var14 = this.verticesX[var10]; + int var15 = this.verticesZ[var10]; + int var13 = var15 * var8 - var9 * var14 >> 16; if (var11 < var2) { var2 = var11; } @@ -619,44 +617,44 @@ void calculateBoundingBox(int var1) { var5 = var11; } - if (var15 < var3) { - var3 = var15; + if (var12 < var3) { + var3 = var12; } - if (var15 > var6) { - var6 = var15; + if (var12 > var6) { + var6 = var12; } - if (var16 < var4) { - var4 = var16; + if (var13 < var4) { + var4 = var13; } - if (var16 > var7) { - var7 = var16; + if (var13 > var7) { + var7 = var13; } } - AABB var20 = new AABB((var5 + var2) / 2, (var6 + var3) / 2, (var7 + var4) / 2, (var5 - var2 + 1) / 2, (var6 - var3 + 1) / 2, (var7 - var4 + 1) / 2); - boolean var21 = true; - if (var20.xMidOffset < 32) { - var20.xMidOffset = 32; + AABB var17 = new AABB((var5 + var2) / 2, (var6 + var3) / 2, (var7 + var4) / 2, (var5 - var2 + 1) / 2, (var6 - var3 + 1) / 2, (var7 - var4 + 1) / 2); + boolean var18 = true; + if (var17.xMidOffset < 32) { + var17.xMidOffset = 32; } - if (var20.zMidOffset < 32) { - var20.zMidOffset = 32; + if (var17.zMidOffset < 32) { + var17.zMidOffset = 32; } if (this.isSingleTile) { - boolean var22 = true; - var20.xMidOffset += 8; - var20.zMidOffset += 8; + boolean var19 = true; + var17.xMidOffset += 8; + var17.zMidOffset += 8; } - this.aabb.put(var1, var20); + this.aabb.put(var1, var17); } } - @ObfuscatedName("aq") + @ObfuscatedName("as") @Export("calculateBoundsCylinder") public void calculateBoundsCylinder() { if (this.boundsType != 1) { @@ -689,8 +687,8 @@ public void calculateBoundsCylinder() { } } - @ObfuscatedName("al") - void method1321() { + @ObfuscatedName("ay") + void method1539() { if (this.boundsType != 2) { this.boundsType = 2; this.xzRadius = 0; @@ -711,22 +709,22 @@ void method1321() { } } - @ObfuscatedName("an") - public int method1322() { + @ObfuscatedName("ak") + public int method1540() { this.calculateBoundsCylinder(); return this.xzRadius; } - @ObfuscatedName("ar") + @ObfuscatedName("aj") @Export("resetBounds") public void resetBounds() { this.boundsType = 0; this.aabb.clear(); } - @ObfuscatedName("ab") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(Ljt;I)V" + descriptor = "(Lko;I)V" ) @Export("animate") public void animate(Frames var1, int var2) { @@ -748,36 +746,36 @@ public void animate(Frames var1, int var2) { } } - @ObfuscatedName("ag") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(Lfv;I)V" + descriptor = "(Lfo;I)V" ) - public void method1325(class137 var1, int var2) { - Skeleton var3 = var1.field1305; - class227 var4 = var3.method1231(); + public void method1543(class139 var1, int var2) { + Skeleton var3 = var1.field1317; + class267 var4 = var3.method1455(); if (var4 != null) { - var3.method1231().method1216(var1, var2); - this.method1327(var3.method1231(), var1.method747()); + var3.method1455().method1442(var1, var2); + this.method1545(var3.method1455(), var1.method742()); } - if (var1.method748()) { - this.method1326(var1, var2); + if (var1.method743()) { + this.method1544(var1, var2); } this.resetBounds(); } - @ObfuscatedName("am") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Lfv;I)V" + descriptor = "(Lfo;I)V" ) - void method1326(class137 var1, int var2) { - Skeleton var3 = var1.field1305; + void method1544(class139 var1, int var2) { + Skeleton var3 = var1.field1317; for (int var4 = 0; var4 < var3.count; ++var4) { int var5 = var3.transformTypes[var4]; - if (var5 == 5 && var1.field1304 != null && var1.field1304[var4] != null && var1.field1304[var4][0] != null && this.faceLabelsAlpha != null && this.faceAlphas != null) { - class130 var6 = var1.field1304[var4][0]; + if (var5 == 5 && var1.field1316 != null && var1.field1316[var4] != null && var1.field1316[var4][0] != null && this.faceLabelsAlpha != null && this.faceAlphas != null) { + class131 var6 = var1.field1316[var4][0]; int[] var7 = var3.labels[var4]; int var8 = var7.length; @@ -788,7 +786,7 @@ void method1326(class137 var1, int var2) { for (int var12 = 0; var12 < var11.length; ++var12) { int var13 = var11[var12]; - int var14 = (int)((float)(this.faceAlphas[var13] & 255) + var6.method720(var2) * 255.0F); + int var14 = (int)((float)(this.faceAlphas[var13] & 255) + var6.method716(var2) * 255.0F); if (var14 < 0) { var14 = 0; } else if (var14 > 255) { @@ -804,17 +802,17 @@ void method1326(class137 var1, int var2) { } - @ObfuscatedName("ax") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(Lim;I)V" + descriptor = "(Lkz;I)V" ) - void method1327(class227 var1, int var2) { - this.method1347(var1, var2); + void method1545(class267 var1, int var2) { + this.method1565(var1, var2); } - @ObfuscatedName("ah") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(Ljt;ILjt;I[I)V" + descriptor = "(Lko;ILko;I[I)V" ) @Export("animate2") public void animate2(Frames var1, int var2, Frames var3, int var4, int[] var5) { @@ -864,30 +862,30 @@ public void animate2(Frames var1, int var2, Frames var3, int var4, int[] var5) { } } - @ObfuscatedName("as") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(Liu;Lfv;I[ZZZ)V" + descriptor = "(Lkd;Lfo;I[ZZZ)V" ) - public void method1329(Skeleton var1, class137 var2, int var3, boolean[] var4, boolean var5, boolean var6) { - class227 var7 = var1.method1231(); + public void method1547(Skeleton var1, class139 var2, int var3, boolean[] var4, boolean var5, boolean var6) { + class267 var7 = var1.method1455(); if (var7 != null) { - var7.method1217(var2, var3, var4, var5); + var7.method1443(var2, var3, var4, var5); if (var6) { - this.method1327(var7, var2.method747()); + this.method1545(var7, var2.method742()); } } - if (!var5 && var2.method748()) { - this.method1326(var2, var3); + if (!var5 && var2.method743()) { + this.method1544(var2, var3); } } - @ObfuscatedName("ay") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Ljt;I[IZ)V" + descriptor = "(Lko;I[IZ)V" ) - public void method1330(Frames var1, int var2, int[] var3, boolean var4) { + public void method1548(Frames var1, int var2, int[] var3, boolean var4) { if (var3 == null) { this.animate(var1, var2); } else { @@ -917,7 +915,7 @@ public void method1330(Frames var1, int var2, int[] var3, boolean var4) { } } - @ObfuscatedName("aj") + @ObfuscatedName("ad") @Export("transform") void transform(int var1, int[] var2, int var3, int var4, int var5) { int var6 = var2.length; @@ -999,24 +997,24 @@ void transform(int var1, int[] var2, int var3, int var4, int var5) { int var16; int var17; if (var14 != 0) { - var15 = field2199[var14]; - var16 = field2193[var14]; + var15 = field2376[var14]; + var16 = field2378[var14]; var17 = var15 * this.verticesY[var11] + var16 * this.verticesX[var11] >> 16; this.verticesY[var11] = var16 * this.verticesY[var11] - var15 * this.verticesX[var11] >> 16; this.verticesX[var11] = var17; } if (var12 != 0) { - var15 = field2199[var12]; - var16 = field2193[var12]; + var15 = field2376[var12]; + var16 = field2378[var12]; var17 = var16 * this.verticesY[var11] - var15 * this.verticesZ[var11] >> 16; this.verticesZ[var11] = var15 * this.verticesY[var11] + var16 * this.verticesZ[var11] >> 16; this.verticesY[var11] = var17; } if (var13 != 0) { - var15 = field2199[var13]; - var16 = field2193[var13]; + var15 = field2376[var13]; + var16 = field2378[var13]; var17 = var15 * this.verticesZ[var11] + var16 * this.verticesX[var11] >> 16; this.verticesZ[var11] = var16 * this.verticesZ[var11] - var15 * this.verticesX[var11] >> 16; this.verticesX[var11] = var17; @@ -1085,7 +1083,7 @@ void transform(int var1, int[] var2, int var3, int var4, int var5) { } } - @ObfuscatedName("av") + @ObfuscatedName("af") @Export("rotateY90Ccw") public void rotateY90Ccw() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { @@ -1097,7 +1095,7 @@ public void rotateY90Ccw() { this.resetBounds(); } - @ObfuscatedName("aw") + @ObfuscatedName("be") @Export("rotateY180") public void rotateY180() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { @@ -1108,7 +1106,7 @@ public void rotateY180() { this.resetBounds(); } - @ObfuscatedName("ak") + @ObfuscatedName("bd") @Export("rotateY270Ccw") public void rotateY270Ccw() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { @@ -1120,11 +1118,11 @@ public void rotateY270Ccw() { this.resetBounds(); } - @ObfuscatedName("bh") + @ObfuscatedName("bl") @Export("rotateZ") public void rotateZ(int var1) { - int var2 = field2199[var1]; - int var3 = field2193[var1]; + int var2 = field2376[var1]; + int var3 = field2378[var1]; for (int var4 = 0; var4 < this.verticesCount; ++var4) { int var5 = var3 * this.verticesY[var4] - var2 * this.verticesZ[var4] >> 16; @@ -1135,7 +1133,7 @@ public void rotateZ(int var1) { this.resetBounds(); } - @ObfuscatedName("bj") + @ObfuscatedName("bi") @Export("offsetBy") public void offsetBy(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.verticesCount; ++var4) { @@ -1150,7 +1148,7 @@ public void offsetBy(int var1, int var2, int var3) { this.resetBounds(); } - @ObfuscatedName("bk") + @ObfuscatedName("bv") @Export("scale") public void scale(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.verticesCount; ++var4) { @@ -1162,22 +1160,22 @@ public void scale(int var1, int var2, int var3) { this.resetBounds(); } - @ObfuscatedName("bv") - public final void method1338(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + @ObfuscatedName("bf") + public final void method1556(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { if (this.boundsType != 2 && this.boundsType != 1) { - this.method1321(); + this.method1539(); } int var8 = Rasterizer3D.getClipMidX(); int var9 = Rasterizer3D.getClipMidY(); - int var10 = field2199[var1]; - int var11 = field2193[var1]; - int var12 = field2199[var2]; - int var13 = field2193[var2]; - int var14 = field2199[var3]; - int var15 = field2193[var3]; - int var16 = field2199[var4]; - int var17 = field2193[var4]; + int var10 = field2376[var1]; + int var11 = field2378[var1]; + int var12 = field2376[var2]; + int var13 = field2378[var2]; + int var14 = field2376[var3]; + int var15 = field2378[var3]; + int var16 = field2376[var4]; + int var17 = field2378[var4]; int var18 = var16 * var6 + var17 * var7 >> 16; for (int var19 = 0; var19 < this.verticesCount; ++var19) { @@ -1208,14 +1206,14 @@ public final void method1338(int var1, int var2, int var3, int var4, int var5, i var22 += var7; var23 = var21 * var17 - var22 * var16 >> 16; var22 = var21 * var16 + var22 * var17 >> 16; - field2185[var19] = var22 - var18; + field2370[var19] = var22 - var18; modelViewportXs[var19] = var8 + var20 * Rasterizer3D.get3dZoom() / var22; modelViewportYs[var19] = var9 + var23 * Rasterizer3D.get3dZoom() / var22; - field2179[var19] = AbstractWorldMapIcon.method1556(var22); - if (this.field2242 > 0) { - field2187[var19] = var20; - field2190[var19] = var23; - field2189[var19] = var22; + field2359[var19] = WorldMapAreaData.method1364(var22); + if (this.field2421 > 0) { + field2364[var19] = var20; + field2366[var19] = var23; + field2368[var19] = var22; } } @@ -1226,22 +1224,22 @@ public final void method1338(int var1, int var2, int var3, int var4, int var5, i } - @ObfuscatedName("bt") - public final void method1339(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + @ObfuscatedName("bg") + public final void method1557(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { if (this.boundsType != 2 && this.boundsType != 1) { - this.method1321(); + this.method1539(); } int var9 = Rasterizer3D.getClipMidX(); int var10 = Rasterizer3D.getClipMidY(); - int var11 = field2199[var1]; - int var12 = field2193[var1]; - int var13 = field2199[var2]; - int var14 = field2193[var2]; - int var15 = field2199[var3]; - int var16 = field2193[var3]; - int var17 = field2199[var4]; - int var18 = field2193[var4]; + int var11 = field2376[var1]; + int var12 = field2378[var1]; + int var13 = field2376[var2]; + int var14 = field2378[var2]; + int var15 = field2376[var3]; + int var16 = field2378[var3]; + int var17 = field2376[var4]; + int var18 = field2378[var4]; int var19 = var17 * var6 + var18 * var7 >> 16; for (int var20 = 0; var20 < this.verticesCount; ++var20) { @@ -1272,14 +1270,14 @@ public final void method1339(int var1, int var2, int var3, int var4, int var5, i var23 += var7; var24 = var22 * var18 - var23 * var17 >> 16; var23 = var22 * var17 + var23 * var18 >> 16; - field2185[var20] = var23 - var19; + field2370[var20] = var23 - var19; modelViewportXs[var20] = var9 + var21 * Rasterizer3D.get3dZoom() / var8; modelViewportYs[var20] = var10 + var24 * Rasterizer3D.get3dZoom() / var8; - field2179[var20] = AbstractWorldMapIcon.method1556(var8); - if (this.field2242 > 0) { - field2187[var20] = var21; - field2190[var20] = var24; - field2189[var20] = var23; + field2359[var20] = WorldMapAreaData.method1364(var8); + if (this.field2421 > 0) { + field2364[var20] = var21; + field2366[var20] = var24; + field2368[var20] = var23; } } @@ -1290,13 +1288,13 @@ public final void method1339(int var1, int var2, int var3, int var4, int var5, i } - @ObfuscatedName("bd") + @ObfuscatedName("ba") @Export("draw0") final void draw0(boolean var1, boolean var2, boolean var3, long var4) { if (this.diameter < 6000) { int var6; for (var6 = 0; var6 < this.diameter; ++var6) { - field2177[var6] = 0; + field2357[var6] = 0; } var6 = var3 ? 20 : 5; @@ -1318,225 +1316,196 @@ final void draw0(boolean var1, boolean var2, boolean var3, long var4) { var11 = modelViewportXs[var8]; var12 = modelViewportXs[var9]; var13 = modelViewportXs[var10]; - int var14; - int var17; - if (!var1 || var11 != -5000 && var12 != -5000 && var13 != -5000) { - if (var2) { - var15 = modelViewportYs[var8]; - var16 = modelViewportYs[var9]; - var17 = modelViewportYs[var10]; - var18 = var6 + ViewportMouse.ViewportMouse_y; - boolean var37; - if (var18 < var15 && var18 < var16 && var18 < var17) { - var37 = false; - } else { - var18 = ViewportMouse.ViewportMouse_y - var6; - if (var18 > var15 && var18 > var16 && var18 > var17) { - var37 = false; - } else { - var18 = var6 + ViewportMouse.ViewportMouse_x; - if (var18 < var11 && var18 < var12 && var18 < var13) { - var37 = false; - } else { - var18 = ViewportMouse.ViewportMouse_x - var6; - if (var18 > var11 && var18 > var12 && var18 > var13) { - var37 = false; - } else { - var37 = true; - } - } - } - } - - if (var37) { - ViewportMouse.ViewportMouse_entityTags[++ViewportMouse.ViewportMouse_entityCount - 1] = var4; - var2 = false; - } - } - - if ((var11 - var12) * (modelViewportYs[var10] - modelViewportYs[var9]) - (var13 - var12) * (modelViewportYs[var8] - modelViewportYs[var9]) > 0) { - field2174[var7] = false; - var14 = Rasterizer3D.method1197(); - if (var11 >= 0 && var12 >= 0 && var13 >= 0 && var11 <= var14 && var12 <= var14 && var13 <= var14) { - field2173[var7] = false; - } else { - field2173[var7] = true; - } - - var15 = (field2185[var8] + field2185[var9] + field2185[var10]) / 3 + this.radius; - field2178[var15][field2177[var15]++] = var7; - } - } else { - var14 = field2187[var8]; - var15 = field2187[var9]; - var16 = field2187[var10]; - var17 = field2190[var8]; - var18 = field2190[var9]; - int var19 = field2190[var10]; - int var20 = field2189[var8]; - int var21 = field2189[var9]; - int var22 = field2189[var10]; - var14 -= var15; + int var27; + if (var1 && (var11 == -5000 || var12 == -5000 || var13 == -5000)) { + var27 = field2364[var8]; + var15 = field2364[var9]; + var16 = field2364[var10]; + int var17 = field2366[var8]; + var18 = field2366[var9]; + int var19 = field2366[var10]; + int var20 = field2368[var8]; + int var21 = field2368[var9]; + int var22 = field2368[var10]; + var27 -= var15; var16 -= var15; var17 -= var18; var19 -= var18; var20 -= var21; var22 -= var21; int var23 = var17 * var22 - var20 * var19; - int var24 = var20 * var16 - var14 * var22; - int var25 = var14 * var19 - var17 * var16; + int var24 = var20 * var16 - var27 * var22; + int var25 = var27 * var19 - var17 * var16; if (var15 * var23 + var18 * var24 + var21 * var25 > 0) { - field2174[var7] = true; - int var26 = (field2185[var8] + field2185[var9] + field2185[var10]) / 3 + this.radius; - field2178[var26][field2177[var26]++] = var7; + field2354[var7] = true; + int var26 = (field2370[var8] + field2370[var9] + field2370[var10]) / 3 + this.radius; + field2358[var26][field2357[var26]++] = var7; + } + } else { + if (var2 && class225.method1148(modelViewportYs[var8], modelViewportYs[var9], modelViewportYs[var10], var11, var12, var13, var6)) { + ViewportMouse.ViewportMouse_entityTags[++ViewportMouse.ViewportMouse_entityCount - 1] = var4; + var2 = false; + } + + if ((var11 - var12) * (modelViewportYs[var10] - modelViewportYs[var9]) - (var13 - var12) * (modelViewportYs[var8] - modelViewportYs[var9]) > 0) { + field2354[var7] = false; + var27 = Rasterizer3D.method1425(); + if (var11 >= 0 && var12 >= 0 && var13 >= 0 && var11 <= var27 && var12 <= var27 && var13 <= var27) { + field2353[var7] = false; + } else { + field2353[var7] = true; + } + + var15 = (field2370[var8] + field2370[var9] + field2370[var10]) / 3 + this.radius; + field2358[var15][field2357[var15]++] = var7; } } } } - char[] var29; - int var33; - char var34; + char[] var28; + int var32; + char var33; if (this.faceRenderPriorities == null) { - for (var33 = this.diameter - 1; var33 >= 0; --var33) { - var34 = field2177[var33]; - if (var34 > 0) { - var29 = field2178[var33]; + for (var32 = this.diameter - 1; var32 >= 0; --var32) { + var33 = field2357[var32]; + if (var33 > 0) { + var28 = field2358[var32]; - for (var10 = 0; var10 < var34; ++var10) { - this.drawFace(var29[var10]); + for (var10 = 0; var10 < var33; ++var10) { + this.drawFace(var28[var10]); } } } } else { - for (var33 = 0; var33 < 12; ++var33) { - field2186[var33] = 0; - field2196[var33] = 0; + for (var32 = 0; var32 < 12; ++var32) { + field2365[var32] = 0; + field2377[var32] = 0; } - for (var33 = this.diameter - 1; var33 >= 0; --var33) { - var34 = field2177[var33]; - if (var34 > 0) { - var29 = field2178[var33]; - - for (var10 = 0; var10 < var34; ++var10) { - char var35 = var29[var10]; - byte var36 = this.faceRenderPriorities[var35]; - var13 = field2186[var36]++; - field2201[var36][var13] = var35; - if (var36 < 10) { - int[] var38 = field2196; - var38[var36] += var33; - } else if (var36 == 10) { - field2192[var13] = var33; + for (var32 = this.diameter - 1; var32 >= 0; --var32) { + var33 = field2357[var32]; + if (var33 > 0) { + var28 = field2358[var32]; + + for (var10 = 0; var10 < var33; ++var10) { + char var34 = var28[var10]; + byte var35 = this.faceRenderPriorities[var34]; + var13 = field2365[var35]++; + field2381[var35][var13] = var34; + if (var35 < 10) { + int[] var36 = field2377; + var36[var35] += var32; + } else if (var35 == 10) { + field2373[var13] = var32; } else { - field2195[var13] = var33; + field2379[var13] = var32; } } } } - var33 = 0; - if (field2186[1] > 0 || field2186[2] > 0) { - var33 = (field2196[1] + field2196[2]) / (field2186[1] + field2186[2]); + var32 = 0; + if (field2365[1] > 0 || field2365[2] > 0) { + var32 = (field2377[1] + field2377[2]) / (field2365[1] + field2365[2]); } var8 = 0; - if (field2186[3] > 0 || field2186[4] > 0) { - var8 = (field2196[3] + field2196[4]) / (field2186[3] + field2186[4]); + if (field2365[3] > 0 || field2365[4] > 0) { + var8 = (field2377[3] + field2377[4]) / (field2365[3] + field2365[4]); } var9 = 0; - if (field2186[6] > 0 || field2186[8] > 0) { - var9 = (field2196[8] + field2196[6]) / (field2186[8] + field2186[6]); + if (field2365[6] > 0 || field2365[8] > 0) { + var9 = (field2377[8] + field2377[6]) / (field2365[8] + field2365[6]); } var11 = 0; - var12 = field2186[10]; - int[] var30 = field2201[10]; - int[] var31 = field2192; + var12 = field2365[10]; + int[] var29 = field2381[10]; + int[] var30 = field2373; if (var11 == var12) { var11 = 0; - var12 = field2186[11]; - var30 = field2201[11]; - var31 = field2195; + var12 = field2365[11]; + var29 = field2381[11]; + var30 = field2379; } if (var11 < var12) { - var10 = var31[var11]; + var10 = var30[var11]; } else { var10 = -1000; } for (var15 = 0; var15 < 10; ++var15) { - while (var15 == 0 && var10 > var33) { - this.drawFace(var30[var11++]); - if (var11 == var12 && var30 != field2201[11]) { + while (var15 == 0 && var10 > var32) { + this.drawFace(var29[var11++]); + if (var11 == var12 && var29 != field2381[11]) { var11 = 0; - var12 = field2186[11]; - var30 = field2201[11]; - var31 = field2195; + var12 = field2365[11]; + var29 = field2381[11]; + var30 = field2379; } if (var11 < var12) { - var10 = var31[var11]; + var10 = var30[var11]; } else { var10 = -1000; } } while (var15 == 3 && var10 > var8) { - this.drawFace(var30[var11++]); - if (var11 == var12 && var30 != field2201[11]) { + this.drawFace(var29[var11++]); + if (var11 == var12 && var29 != field2381[11]) { var11 = 0; - var12 = field2186[11]; - var30 = field2201[11]; - var31 = field2195; + var12 = field2365[11]; + var29 = field2381[11]; + var30 = field2379; } if (var11 < var12) { - var10 = var31[var11]; + var10 = var30[var11]; } else { var10 = -1000; } } while (var15 == 5 && var10 > var9) { - this.drawFace(var30[var11++]); - if (var11 == var12 && var30 != field2201[11]) { + this.drawFace(var29[var11++]); + if (var11 == var12 && var29 != field2381[11]) { var11 = 0; - var12 = field2186[11]; - var30 = field2201[11]; - var31 = field2195; + var12 = field2365[11]; + var29 = field2381[11]; + var30 = field2379; } if (var11 < var12) { - var10 = var31[var11]; + var10 = var30[var11]; } else { var10 = -1000; } } - var16 = field2186[var15]; - int[] var32 = field2201[var15]; + var16 = field2365[var15]; + int[] var31 = field2381[var15]; for (var18 = 0; var18 < var16; ++var18) { - this.drawFace(var32[var18]); + this.drawFace(var31[var18]); } } while (var10 != -1000) { - this.drawFace(var30[var11++]); - if (var11 == var12 && var30 != field2201[11]) { + this.drawFace(var29[var11++]); + if (var11 == var12 && var29 != field2381[11]) { var11 = 0; - var30 = field2201[11]; - var12 = field2186[11]; - var31 = field2195; + var29 = field2381[11]; + var12 = field2365[11]; + var30 = field2379; } if (var11 < var12) { - var10 = var31[var11]; + var10 = var30[var11]; } else { var10 = -1000; } @@ -1546,42 +1515,42 @@ final void draw0(boolean var1, boolean var2, boolean var3, long var4) { } } - @ObfuscatedName("by") + @ObfuscatedName("bm") @Export("drawFace") final void drawFace(int var1) { - if (field2174[var1]) { - this.method1345(var1); + if (field2354[var1]) { + this.method1563(var1); } else { int var2 = this.indices1[var1]; int var3 = this.indices2[var1]; int var4 = this.indices3[var1]; - Rasterizer3D.clips.field2268 = field2173[var1]; + Rasterizer3D.clips.field2446 = field2353[var1]; if (this.faceAlphas == null) { - Rasterizer3D.clips.field2275 = 0; + Rasterizer3D.clips.field2452 = 0; } else { - Rasterizer3D.clips.field2275 = (this.faceAlphas[var1] == -1 ? 253 : this.faceAlphas[var1]) & 255; + Rasterizer3D.clips.field2452 = (this.faceAlphas[var1] == -1 ? 253 : this.faceAlphas[var1]) & 255; } - this.method1344(var1, modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], field2179[var2], field2179[var3], field2179[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1]); + this.method1562(var1, modelViewportYs[var2], modelViewportYs[var3], modelViewportYs[var4], modelViewportXs[var2], modelViewportXs[var3], modelViewportXs[var4], field2359[var2], field2359[var3], field2359[var4], this.faceColors1[var1], this.faceColors2[var1], this.faceColors3[var1]); } } - @ObfuscatedName("bs") - boolean method1343(int var1) { - return this.overrideAmount > 0 && var1 < this.field2243; + @ObfuscatedName("bp") + boolean method1561(int var1) { + return this.overrideAmount > 0 && var1 < this.field2423; } - @ObfuscatedName("bm") - final void method1344(int var1, int var2, int var3, int var4, int var5, int var6, int var7, float var8, float var9, float var10, int var11, int var12, int var13) { + @ObfuscatedName("bw") + final void method1562(int var1, int var2, int var3, int var4, int var5, int var6, int var7, float var8, float var9, float var10, int var11, int var12, int var13) { if (this.faceTextures != null && this.faceTextures[var1] != -1) { int var15; int var16; int var18; - if (this.field2209 != null && this.field2209[var1] != -1) { - int var17 = this.field2209[var1] & 255; - var18 = this.field2226[var17]; - var15 = this.field2221[var17]; - var16 = this.field2227[var17]; + if (this.field2390 != null && this.field2390[var1] != -1) { + int var17 = this.field2390[var1] & 255; + var18 = this.field2396[var17]; + var15 = this.field2397[var17]; + var16 = this.field2407[var17]; } else { var18 = this.indices1[var1]; var15 = this.indices2[var1]; @@ -1589,40 +1558,40 @@ final void method1344(int var1, int var2, int var3, int var4, int var5, int var6 } if (this.faceColors3[var1] == -1) { - Rasterizer3D.method1206(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var11, var11, field2187[var18], field2187[var15], field2187[var16], field2190[var18], field2190[var15], field2190[var16], field2189[var18], field2189[var15], field2189[var16], this.faceTextures[var1]); + Rasterizer3D.method1434(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var11, var11, field2364[var18], field2364[var15], field2364[var16], field2366[var18], field2366[var15], field2366[var16], field2368[var18], field2368[var15], field2368[var16], this.faceTextures[var1]); } else { - Rasterizer3D.method1206(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, field2187[var18], field2187[var15], field2187[var16], field2190[var18], field2190[var15], field2190[var16], field2189[var18], field2189[var15], field2189[var16], this.faceTextures[var1]); + Rasterizer3D.method1434(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, field2364[var18], field2364[var15], field2364[var16], field2366[var18], field2366[var15], field2366[var16], field2368[var18], field2368[var15], field2368[var16], this.faceTextures[var1]); } } else { - boolean var14 = this.method1343(var1); + boolean var14 = this.method1561(var1); if (this.faceColors3[var1] == -1 && var14) { - Rasterizer3D.method1209(var2, var3, var4, var5, var6, var7, var8, var9, var10, field2194[this.faceColors1[var1]], this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); + Rasterizer3D.method1437(var2, var3, var4, var5, var6, var7, var8, var9, var10, field2375[this.faceColors1[var1]], this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); } else if (this.faceColors3[var1] == -1) { - Rasterizer3D.method1205(var2, var3, var4, var5, var6, var7, var8, var9, var10, field2194[this.faceColors1[var1]]); + Rasterizer3D.method1433(var2, var3, var4, var5, var6, var7, var8, var9, var10, field2375[this.faceColors1[var1]]); } else if (var14) { - Rasterizer3D.method1208(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); + Rasterizer3D.method1436(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); } else { - Rasterizer3D.method1204(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13); + Rasterizer3D.method1432(var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13); } } } - @ObfuscatedName("bf") - final void method1345(int var1) { + @ObfuscatedName("bj") + final void method1563(int var1) { int var2 = Rasterizer3D.getClipMidX(); int var3 = Rasterizer3D.getClipMidY(); int var4 = 0; int var5 = this.indices1[var1]; int var6 = this.indices2[var1]; int var7 = this.indices3[var1]; - int var8 = field2189[var5]; - int var9 = field2189[var6]; - int var10 = field2189[var7]; + int var8 = field2368[var5]; + int var9 = field2368[var6]; + int var10 = field2368[var7]; if (this.faceAlphas == null) { - Rasterizer3D.clips.field2275 = 0; + Rasterizer3D.clips.field2452 = 0; } else { - Rasterizer3D.clips.field2275 = this.faceAlphas[var1] & 255; + Rasterizer3D.clips.field2452 = this.faceAlphas[var1] & 255; } int var11; @@ -1630,115 +1599,115 @@ final void method1345(int var1) { int var13; int var14; if (var8 >= 50) { - field2198[var4] = modelViewportXs[var5]; - field2200[var4] = modelViewportYs[var5]; - field2180[var4] = field2179[var7]; - field2197[var4++] = this.faceColors1[var1]; + field2372[var4] = modelViewportXs[var5]; + field2380[var4] = modelViewportYs[var5]; + field2360[var4] = field2359[var7]; + field2374[var4++] = this.faceColors1[var1]; } else { - var11 = field2187[var5]; - var12 = field2190[var5]; + var11 = field2364[var5]; + var12 = field2366[var5]; var13 = this.faceColors1[var1]; if (var10 >= 50) { - var14 = field2191[var10 - var8] * (50 - var8); - field2198[var4] = var2 + (var11 + ((field2187[var7] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var7] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2180[var4] = field2207; - field2197[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); + var14 = field2371[var10 - var8] * (50 - var8); + field2372[var4] = var2 + (var11 + ((field2364[var7] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var7] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2360[var4] = field2387; + field2374[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); } if (var9 >= 50) { - var14 = field2191[var9 - var8] * (50 - var8); - field2198[var4] = var2 + (var11 + ((field2187[var6] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var6] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2180[var4] = field2207; - field2197[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); + var14 = field2371[var9 - var8] * (50 - var8); + field2372[var4] = var2 + (var11 + ((field2364[var6] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var6] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2360[var4] = field2387; + field2374[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); } } if (var9 >= 50) { - field2198[var4] = modelViewportXs[var6]; - field2200[var4] = modelViewportYs[var6]; - field2180[var4] = field2179[var7]; - field2197[var4++] = this.faceColors2[var1]; + field2372[var4] = modelViewportXs[var6]; + field2380[var4] = modelViewportYs[var6]; + field2360[var4] = field2359[var7]; + field2374[var4++] = this.faceColors2[var1]; } else { - var11 = field2187[var6]; - var12 = field2190[var6]; + var11 = field2364[var6]; + var12 = field2366[var6]; var13 = this.faceColors2[var1]; if (var8 >= 50) { - var14 = field2191[var8 - var9] * (50 - var9); - field2198[var4] = var2 + (var11 + ((field2187[var5] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var5] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2180[var4] = field2207; - field2197[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); + var14 = field2371[var8 - var9] * (50 - var9); + field2372[var4] = var2 + (var11 + ((field2364[var5] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var5] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2360[var4] = field2387; + field2374[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); } if (var10 >= 50) { - var14 = field2191[var10 - var9] * (50 - var9); - field2198[var4] = var2 + (var11 + ((field2187[var7] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var7] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2197[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); + var14 = field2371[var10 - var9] * (50 - var9); + field2372[var4] = var2 + (var11 + ((field2364[var7] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var7] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2374[var4++] = var13 + ((this.faceColors3[var1] - var13) * var14 >> 16); } } if (var10 >= 50) { - field2198[var4] = modelViewportXs[var7]; - field2200[var4] = modelViewportYs[var7]; - field2180[var4] = field2179[var7]; - field2197[var4++] = this.faceColors3[var1]; + field2372[var4] = modelViewportXs[var7]; + field2380[var4] = modelViewportYs[var7]; + field2360[var4] = field2359[var7]; + field2374[var4++] = this.faceColors3[var1]; } else { - var11 = field2187[var7]; - var12 = field2190[var7]; + var11 = field2364[var7]; + var12 = field2366[var7]; var13 = this.faceColors3[var1]; if (var9 >= 50) { - var14 = field2191[var9 - var10] * (50 - var10); - field2198[var4] = var2 + (var11 + ((field2187[var6] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var6] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2180[var4] = field2207; - field2197[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); + var14 = field2371[var9 - var10] * (50 - var10); + field2372[var4] = var2 + (var11 + ((field2364[var6] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var6] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2360[var4] = field2387; + field2374[var4++] = var13 + ((this.faceColors2[var1] - var13) * var14 >> 16); } if (var8 >= 50) { - var14 = field2191[var8 - var10] * (50 - var10); - field2198[var4] = var2 + (var11 + ((field2187[var5] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2200[var4] = var3 + (var12 + ((field2190[var5] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; - field2180[var4] = field2207; - field2197[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); + var14 = field2371[var8 - var10] * (50 - var10); + field2372[var4] = var2 + (var11 + ((field2364[var5] - var11) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2380[var4] = var3 + (var12 + ((field2366[var5] - var12) * var14 >> 16)) * Rasterizer3D.get3dZoom() / 50; + field2360[var4] = field2387; + field2374[var4++] = var13 + ((this.faceColors1[var1] - var13) * var14 >> 16); } } - var11 = field2198[0]; - var12 = field2198[1]; - var13 = field2198[2]; - var14 = field2200[0]; - int var15 = field2200[1]; - int var16 = field2200[2]; - float var17 = field2180[0]; - float var18 = field2180[1]; - float var19 = field2180[2]; - Rasterizer3D.clips.field2268 = false; - int var20 = Rasterizer3D.method1197(); + var11 = field2372[0]; + var12 = field2372[1]; + var13 = field2372[2]; + var14 = field2380[0]; + int var15 = field2380[1]; + int var16 = field2380[2]; + float var17 = field2360[0]; + float var18 = field2360[1]; + float var19 = field2360[2]; + Rasterizer3D.clips.field2446 = false; + int var20 = Rasterizer3D.method1425(); if (var4 == 3) { if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > var20 || var12 > var20 || var13 > var20) { - Rasterizer3D.clips.field2268 = true; + Rasterizer3D.clips.field2446 = true; } - this.method1344(var1, var14, var15, var16, var11, var12, var13, var17, var18, var19, field2197[0], field2197[1], field2197[2]); + this.method1562(var1, var14, var15, var16, var11, var12, var13, var17, var18, var19, field2374[0], field2374[1], field2374[2]); } if (var4 == 4) { - if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > var20 || var12 > var20 || var13 > var20 || field2198[3] < 0 || field2198[3] > var20) { - Rasterizer3D.clips.field2268 = true; + if (var11 < 0 || var12 < 0 || var13 < 0 || var11 > var20 || var12 > var20 || var13 > var20 || field2372[3] < 0 || field2372[3] > var20) { + Rasterizer3D.clips.field2446 = true; } int var22; if (this.faceTextures != null && this.faceTextures[var1] != -1) { int var23; int var25; - if (this.field2209 != null && this.field2209[var1] != -1) { - int var24 = this.field2209[var1] & 255; - var25 = this.field2226[var24]; - var22 = this.field2221[var24]; - var23 = this.field2227[var24]; + if (this.field2390 != null && this.field2390[var1] != -1) { + int var24 = this.field2390[var1] & 255; + var25 = this.field2396[var24]; + var22 = this.field2397[var24]; + var23 = this.field2407[var24]; } else { var25 = var5; var22 = var6; @@ -1747,79 +1716,79 @@ final void method1345(int var1) { short var26 = this.faceTextures[var1]; if (this.faceColors3[var1] == -1) { - Rasterizer3D.method1206(var14, var15, var16, var11, var12, var13, var17, var18, var19, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field2187[var25], field2187[var22], field2187[var23], field2190[var25], field2190[var22], field2190[var23], field2189[var25], field2189[var22], field2189[var23], var26); - Rasterizer3D.method1206(var14, var16, field2200[3], var11, var13, field2198[3], var17, var19, field2180[3], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field2187[var25], field2187[var22], field2187[var23], field2190[var25], field2190[var22], field2190[var23], field2189[var25], field2189[var22], field2189[var23], var26); + Rasterizer3D.method1434(var14, var15, var16, var11, var12, var13, var17, var18, var19, this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field2364[var25], field2364[var22], field2364[var23], field2366[var25], field2366[var22], field2366[var23], field2368[var25], field2368[var22], field2368[var23], var26); + Rasterizer3D.method1434(var14, var16, field2380[3], var11, var13, field2372[3], var17, var19, field2360[3], this.faceColors1[var1], this.faceColors1[var1], this.faceColors1[var1], field2364[var25], field2364[var22], field2364[var23], field2366[var25], field2366[var22], field2366[var23], field2368[var25], field2368[var22], field2368[var23], var26); } else { - Rasterizer3D.method1206(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2197[0], field2197[1], field2197[2], field2187[var25], field2187[var22], field2187[var23], field2190[var25], field2190[var22], field2190[var23], field2189[var25], field2189[var22], field2189[var23], var26); - Rasterizer3D.method1206(var14, var16, field2200[3], var11, var13, field2198[3], var17, var19, field2180[3], field2197[0], field2197[2], field2197[3], field2187[var25], field2187[var22], field2187[var23], field2190[var25], field2190[var22], field2190[var23], field2189[var25], field2189[var22], field2189[var23], var26); + Rasterizer3D.method1434(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2374[0], field2374[1], field2374[2], field2364[var25], field2364[var22], field2364[var23], field2366[var25], field2366[var22], field2366[var23], field2368[var25], field2368[var22], field2368[var23], var26); + Rasterizer3D.method1434(var14, var16, field2380[3], var11, var13, field2372[3], var17, var19, field2360[3], field2374[0], field2374[2], field2374[3], field2364[var25], field2364[var22], field2364[var23], field2366[var25], field2366[var22], field2366[var23], field2368[var25], field2368[var22], field2368[var23], var26); } } else { - boolean var21 = this.method1343(var1); + boolean var21 = this.method1561(var1); if (this.faceColors3[var1] == -1 && var21) { - var22 = field2194[this.faceColors1[var1]]; - Rasterizer3D.method1209(var14, var15, var16, var11, var12, var13, var17, var18, var19, var22, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); - Rasterizer3D.method1209(var14, var16, field2200[3], var11, var13, field2198[3], var17, var19, field2180[3], var22, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); + var22 = field2375[this.faceColors1[var1]]; + Rasterizer3D.method1437(var14, var15, var16, var11, var12, var13, var17, var18, var19, var22, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); + Rasterizer3D.method1437(var14, var16, field2380[3], var11, var13, field2372[3], var17, var19, field2360[3], var22, this.overrideHue, this.overrideSaturation, this.overrideLuminance, this.overrideAmount); } else if (this.faceColors3[var1] == -1) { - var22 = field2194[this.faceColors1[var1]]; - Rasterizer3D.method1205(var14, var15, var16, var11, var12, var13, var17, var18, var19, var22); - Rasterizer3D.method1205(var14, var16, field2200[3], var11, var13, field2198[3], var17, var19, field2180[3], var22); + var22 = field2375[this.faceColors1[var1]]; + Rasterizer3D.method1433(var14, var15, var16, var11, var12, var13, var17, var18, var19, var22); + Rasterizer3D.method1433(var14, var16, field2380[3], var11, var13, field2372[3], var17, var19, field2360[3], var22); } else if (var21) { - Rasterizer3D.method1208(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2197[0], field2197[1], field2197[2], this.overrideHue, this.overrideLuminance, this.overrideSaturation, this.overrideAmount); - Rasterizer3D.method1208(var14, var16, field2200[3], var11, var13, field2198[3], 0.0F, 0.0F, 0.0F, field2197[0], field2197[2], field2197[3], this.overrideHue, this.overrideLuminance, this.overrideSaturation, this.overrideAmount); + Rasterizer3D.method1436(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2374[0], field2374[1], field2374[2], this.overrideHue, this.overrideLuminance, this.overrideSaturation, this.overrideAmount); + Rasterizer3D.method1436(var14, var16, field2380[3], var11, var13, field2372[3], 0.0F, 0.0F, 0.0F, field2374[0], field2374[2], field2374[3], this.overrideHue, this.overrideLuminance, this.overrideSaturation, this.overrideAmount); } else { - Rasterizer3D.method1204(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2197[0], field2197[1], field2197[2]); - Rasterizer3D.method1204(var14, var16, field2200[3], var11, var13, field2198[3], var17, var19, field2180[3], field2197[0], field2197[2], field2197[3]); + Rasterizer3D.method1432(var14, var15, var16, var11, var12, var13, var17, var18, var19, field2374[0], field2374[1], field2374[2]); + Rasterizer3D.method1432(var14, var16, field2380[3], var11, var13, field2372[3], var17, var19, field2360[3], field2374[0], field2374[2], field2374[3]); } } } } - @ObfuscatedName("bq") + @ObfuscatedName("bn") @ObfuscatedSignature( descriptor = "(ILrz;)V" ) - void method1346(int var1, class450 var2) { + void method1564(int var1, class462 var2) { float var3 = (float)this.verticesX[var1]; float var4 = (float)(-this.verticesY[var1]); float var5 = (float)(-this.verticesZ[var1]); float var6 = 1.0F; - this.verticesX[var1] = (int)(var2.field3875[0] * var3 + var2.field3875[4] * var4 + var2.field3875[8] * var5 + var2.field3875[12] * var6); - this.verticesY[var1] = -((int)(var2.field3875[1] * var3 + var2.field3875[5] * var4 + var2.field3875[9] * var5 + var2.field3875[13] * var6)); - this.verticesZ[var1] = -((int)(var2.field3875[2] * var3 + var2.field3875[6] * var4 + var2.field3875[10] * var5 + var2.field3875[14] * var6)); + this.verticesX[var1] = (int)(var2.field3908[0] * var3 + var2.field3908[4] * var4 + var2.field3908[8] * var5 + var2.field3908[12] * var6); + this.verticesY[var1] = -((int)(var2.field3908[1] * var3 + var2.field3908[5] * var4 + var2.field3908[9] * var5 + var2.field3908[13] * var6)); + this.verticesZ[var1] = -((int)(var2.field3908[2] * var3 + var2.field3908[6] * var4 + var2.field3908[10] * var5 + var2.field3908[14] * var6)); } - @ObfuscatedName("ba") + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "(Lim;I)V" + descriptor = "(Lkz;I)V" ) - void method1347(class227 var1, int var2) { - if (this.field2231 != null) { + void method1565(class267 var1, int var2) { + if (this.field2409 != null) { for (int var3 = 0; var3 < this.verticesCount; ++var3) { - int[] var4 = this.field2231[var3]; + int[] var4 = this.field2409[var3]; if (var4 != null && var4.length != 0) { - int[] var5 = this.field2230[var3]; - field2204.method2303(); + int[] var5 = this.field2411[var3]; + field2385.method2319(); for (int var6 = 0; var6 < var4.length; ++var6) { int var7 = var4[var6]; - class127 var8 = var1.method1213(var7); + class128 var8 = var1.method1440(var7); if (var8 != null) { - field2205.method2305((float)var5[var6] / 255.0F); - field2206.method2304(var8.method711(var2)); - field2206.method2308(field2205); - field2204.method2307(field2206); + field2386.method2321((float)var5[var6] / 255.0F); + field2384.method2320(var8.method704(var2)); + field2384.method2324(field2386); + field2385.method2323(field2384); } } - this.method1346(var3, field2204); + this.method1564(var3, field2385); } } } } - @ObfuscatedName("db") + @ObfuscatedName("dw") @Export("draw") void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) { if (this.boundsType != 1) { @@ -1836,12 +1805,12 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var16 = (var15 - this.xzRadius) * Rasterizer3D.get3dZoom(); if (var16 / var14 < Rasterizer3D.getClipMidX2()) { int var17 = (var15 + this.xzRadius) * Rasterizer3D.get3dZoom(); - if (var17 / var14 > Rasterizer3D.method1192()) { + if (var17 / var14 > Rasterizer3D.method1420()) { int var18 = var3 * var7 - var11 * var2 >> 16; int var19 = var2 * this.xzRadius >> 16; int var20 = (var3 * this.bottomY >> 16) + var19; int var21 = (var18 + var20) * Rasterizer3D.get3dZoom(); - if (var21 / var14 > Rasterizer3D.method1195()) { + if (var21 / var14 > Rasterizer3D.method1423()) { int var22 = (var3 * super.height >> 16) + var19; int var23 = (var18 - var22) * Rasterizer3D.get3dZoom(); if (var23 / var14 < Rasterizer3D.getClipMidY2()) { @@ -1852,55 +1821,85 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, var26 = true; } - boolean var27 = var26 || this.field2242 > 0; + boolean var27 = var26 || this.field2421 > 0; int var28 = ViewportMouse.ViewportMouse_x; int var30 = ViewportMouse.ViewportMouse_y; - boolean var32 = Decimator.method312(); - boolean var34 = 0L != var9; - boolean var35; - if (var34) { - var35 = (int)(var9 >>> 16 & 1L) == 1; - var34 = !var35; - } - - var35 = false; + boolean var32 = ViewportMouse.ViewportMouse_isInViewport; + boolean var34 = class207.method1059(var9); + boolean var35 = false; int var40; int var41; int var42; int var43; - int var44; - int var49; - int var50; int var56; + int var61; + int var62; + int var63; if (var34 && var32) { boolean var36 = false; - if (field2172) { + if (field2352) { + boolean var39 = ViewportMouse.ViewportMouse_isInViewport; boolean var37; - if (!Decimator.method312()) { + if (!var39) { var37 = false; } else { - class11.method33(); - AABB var39 = (AABB)this.aabb.get(var1); - var40 = var39.xMid + var6; - var41 = var7 + var39.yMid; - var42 = var8 + var39.zMid; - var43 = var39.xMidOffset; - var44 = var39.yMidOffset; - int var45 = var39.zMidOffset; - int var46 = ViewportMouse.field2249 - var40; - int var47 = ViewportMouse.field2252 - var41; - int var48 = ViewportMouse.field2254 - var42; - if (Math.abs(var46) > var43 + ViewportMouse.field2250) { + int var46; + int var47; + int var48; + int var49; + int var64; + if (!ViewportMouse.ViewportMouse_false0) { + var40 = Scene.Scene_cameraPitchSine; + var41 = Scene.Scene_cameraPitchCosine; + var42 = Scene.Scene_cameraYawSine; + var43 = Scene.Scene_cameraYawCosine; + byte var44 = 50; + short var45 = 3500; + var46 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.getClipMidX()) * var44 / Rasterizer3D.get3dZoom(); + var47 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.getClipMidY()) * var44 / Rasterizer3D.get3dZoom(); + var48 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.getClipMidX()) * var45 / Rasterizer3D.get3dZoom(); + var49 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.getClipMidY()) * var45 / Rasterizer3D.get3dZoom(); + int var51 = var40 * var44 + var41 * var47 >> 16; + int var52 = var44 * var41 - var40 * var47 >> 16; + int var53 = var49 * var41 + var40 * var45 >> 16; + int var54 = var41 * var45 - var49 * var40 >> 16; + int var50 = LoginScreenAnimation.method520(var46, var52, var43, var42); + var63 = class167.method867(var46, var52, var43, var42); + var46 = var50; + var50 = LoginScreenAnimation.method520(var48, var54, var43, var42); + var64 = class167.method867(var48, var54, var43, var42); + class422.field3763 = (var50 + var46) / 2; + class106.field1113 = (var51 + var53) / 2; + ObjTypeCustomisation.field1431 = (var64 + var63) / 2; + class303.field2512 = (var50 - var46) / 2; + class402.field3694 = (var53 - var51) / 2; + ViewportMouse.field2433 = (var64 - var63) / 2; + ViewportMouse.field2429 = Math.abs(class303.field2512); + MusicPatchNode2.field2777 = Math.abs(class402.field3694); + ViewportMouse.field2432 = Math.abs(ViewportMouse.field2433); + } + + AABB var55 = (AABB)this.aabb.get(var1); + var41 = var55.xMid + var6; + var42 = var7 + var55.yMid; + var43 = var8 + var55.zMid; + var63 = var55.xMidOffset; + var64 = var55.yMidOffset; + var46 = var55.zMidOffset; + var47 = class422.field3763 - var41; + var48 = class106.field1113 - var42; + var49 = ObjTypeCustomisation.field1431 - var43; + if (Math.abs(var47) > var63 + ViewportMouse.field2429) { var37 = false; - } else if (Math.abs(var47) > var44 + class7.field9) { + } else if (Math.abs(var48) > var64 + MusicPatchNode2.field2777) { var37 = false; - } else if (Math.abs(var48) > var45 + class30.field82) { + } else if (Math.abs(var49) > var46 + ViewportMouse.field2432) { var37 = false; - } else if (Math.abs(var48 * ViewportMouse.field2248 - var47 * Frames.field2121) > var44 * class30.field82 + var45 * class7.field9) { + } else if (Math.abs(var49 * class402.field3694 - var48 * ViewportMouse.field2433) > var46 * MusicPatchNode2.field2777 + var64 * ViewportMouse.field2432) { var37 = false; - } else if (Math.abs(var46 * Frames.field2121 - var48 * class261.field2396) > var43 * class30.field82 + var45 * ViewportMouse.field2250) { + } else if (Math.abs(var47 * ViewportMouse.field2433 - var49 * class303.field2512) > var46 * ViewportMouse.field2429 + var63 * ViewportMouse.field2432) { var37 = false; - } else if (Math.abs(var47 * class261.field2396 - var46 * ViewportMouse.field2248) > var43 * class7.field9 + var44 * ViewportMouse.field2250) { + } else if (Math.abs(var48 * class303.field2512 - var47 * class402.field3694) > var63 * MusicPatchNode2.field2777 + var64 * ViewportMouse.field2429) { var37 = false; } else { var37 = true; @@ -1909,30 +1908,30 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, var36 = var37; } else { - var56 = var12 - var13; - if (var56 <= 50) { - var56 = 50; + var62 = var12 - var13; + if (var62 <= 50) { + var62 = 50; } if (var15 > 0) { var16 /= var14; - var17 /= var56; + var17 /= var62; } else { var17 /= var14; - var16 /= var56; + var16 /= var62; } if (var18 > 0) { var23 /= var14; - var21 /= var56; + var21 /= var62; } else { var21 /= var14; - var23 /= var56; + var23 /= var62; } - var49 = var28 - Rasterizer3D.getClipMidX(); - var50 = var30 - Rasterizer3D.getClipMidY(); - if (var49 > var16 && var49 < var17 && var50 > var23 && var50 < var21) { + var56 = var28 - Rasterizer3D.getClipMidX(); + var61 = var30 - Rasterizer3D.getClipMidY(); + if (var56 > var16 && var56 < var17 && var61 > var23 && var61 < var21) { var36 = true; } } @@ -1946,13 +1945,13 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, } } - int var55 = Rasterizer3D.getClipMidX(); - var56 = Rasterizer3D.getClipMidY(); - var49 = 0; - var50 = 0; + int var60 = Rasterizer3D.getClipMidX(); + var62 = Rasterizer3D.getClipMidY(); + var56 = 0; + var61 = 0; if (var1 != 0) { - var49 = field2199[var1]; - var50 = field2193[var1]; + var56 = field2376[var1]; + var61 = field2378[var1]; } for (var40 = 0; var40 < this.verticesCount; ++var40) { @@ -1960,39 +1959,39 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, var42 = this.verticesY[var40]; var43 = this.verticesZ[var40]; if (var1 != 0) { - var44 = var43 * var49 + var41 * var50 >> 16; - var43 = var43 * var50 - var41 * var49 >> 16; - var41 = var44; + var63 = var43 * var56 + var41 * var61 >> 16; + var43 = var43 * var61 - var41 * var56 >> 16; + var41 = var63; } var41 += var6; var42 += var7; var43 += var8; - var44 = var43 * var4 + var5 * var41 >> 16; + var63 = var43 * var4 + var5 * var41 >> 16; var43 = var5 * var43 - var41 * var4 >> 16; - var41 = var44; - var44 = var3 * var42 - var43 * var2 >> 16; + var41 = var63; + var63 = var3 * var42 - var43 * var2 >> 16; var43 = var42 * var2 + var3 * var43 >> 16; - field2185[var40] = var43 - var12; + field2370[var40] = var43 - var12; if (var43 >= 50) { - modelViewportXs[var40] = var55 + var41 * Rasterizer3D.get3dZoom() / var43; - modelViewportYs[var40] = var56 + var44 * Rasterizer3D.get3dZoom() / var43; - field2179[var40] = AbstractWorldMapIcon.method1556(var43); + modelViewportXs[var40] = var60 + var41 * Rasterizer3D.get3dZoom() / var43; + modelViewportYs[var40] = var62 + var63 * Rasterizer3D.get3dZoom() / var43; + field2359[var40] = WorldMapAreaData.method1364(var43); } else { modelViewportXs[var40] = -5000; var25 = true; } if (var27) { - field2187[var40] = var41; - field2190[var40] = var44; - field2189[var40] = var43; + field2364[var40] = var41; + field2366[var40] = var63; + field2368[var40] = var43; } } try { this.draw0(var25, var35, this.isSingleTile, var9); - } catch (Exception var54) { + } catch (Exception var59) { } } diff --git a/osrs/src/main/java/ModelData.java b/osrs/src/main/java/ModelData.java index e0efd2f48..be057b3c8 100644 --- a/osrs/src/main/java/ModelData.java +++ b/osrs/src/main/java/ModelData.java @@ -3,139 +3,139 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ic") +@ObfuscatedName("kq") @Implements("ModelData") public class ModelData extends Renderable { + @ObfuscatedName("bt") + static int[] field2122; @ObfuscatedName("bu") - static int[] field1941; - @ObfuscatedName("bo") - static int[] field1939; - @ObfuscatedName("bb") - static int field1937; - @ObfuscatedName("br") + static int[] field2123; + @ObfuscatedName("by") + static int field2120; + @ObfuscatedName("bh") @Export("ModelData_sine") static int[] ModelData_sine; - @ObfuscatedName("be") + @ObfuscatedName("bz") @Export("ModelData_cosine") static int[] ModelData_cosine; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("verticesCount") int verticesCount; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("verticesX") int[] verticesX; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("verticesY") int[] verticesY; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("verticesZ") int[] verticesZ; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("faceCount") int faceCount; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("indices1") int[] indices1; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("indices2") int[] indices2; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("indices3") int[] indices3; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("faceRenderTypes") byte[] faceRenderTypes; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("faceRenderPriorities") byte[] faceRenderPriorities; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("faceAlphas") byte[] faceAlphas; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("textureCoords") byte[] textureCoords; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("faceColors") short[] faceColors; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("faceTextures") short[] faceTextures; @ObfuscatedName("am") @Export("priority") byte priority; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("textureTriangleCount") int textureTriangleCount; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("textureRenderTypes") byte[] textureRenderTypes; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("texTriangleX") short[] texTriangleX; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("texTriangleY") short[] texTriangleY; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("texTriangleZ") short[] texTriangleZ; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("vertexSkins") int[] vertexSkins; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("faceSkins") int[] faceSkins; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("vertexLabels") int[][] vertexLabels; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("faceLabelsAlpha") int[][] faceLabelsAlpha; - @ObfuscatedName("bj") - int[][] field1967; - @ObfuscatedName("bk") - int[][] field1968; - @ObfuscatedName("bv") + @ObfuscatedName("bd") + int[][] field2149; + @ObfuscatedName("bl") + int[][] field2151; + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "[Liq;" + descriptor = "[Lkp;" ) @Export("faceNormals") FaceNormal[] faceNormals; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "[Lja;" + descriptor = "[Lky;" ) @Export("vertexNormals") VertexNormal[] vertexNormals; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "[Lja;" + descriptor = "[Lky;" ) @Export("vertexVertices") VertexNormal[] vertexVertices; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("ambient") public short ambient; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("contrast") public short contrast; @ObfuscatedName("bm") @Export("isBoundsCalculated") boolean isBoundsCalculated; - @ObfuscatedName("bf") - int field1953; - @ObfuscatedName("bq") - int field1956; - @ObfuscatedName("ba") - int field1952; - @ObfuscatedName("bl") - int field1954; @ObfuscatedName("bp") - int field1955; + int field2138; + @ObfuscatedName("bw") + int field2139; + @ObfuscatedName("bj") + int field2135; + @ObfuscatedName("bn") + int field2136; + @ObfuscatedName("bo") + int field2137; static { - field1941 = new int[10000]; - field1939 = new int[10000]; - field1937 = 0; + field2122 = new int[10000]; + field2123 = new int[10000]; + field2120 = 0; ModelData_sine = Rasterizer3D.Rasterizer3D_sine; ModelData_cosine = Rasterizer3D.Rasterizer3D_cosine; } @@ -148,7 +148,7 @@ public class ModelData extends Renderable { } @ObfuscatedSignature( - descriptor = "([Lic;I)V" + descriptor = "([Lkq;I)V" ) public ModelData(ModelData[] var1, int var2) { this.verticesCount = 0; @@ -192,7 +192,7 @@ public ModelData(ModelData[] var1, int var2) { var6 |= var11.faceSkins != null; var7 |= var11.faceTextures != null; var8 |= var11.textureCoords != null; - var9 |= var11.field1967 != null; + var9 |= var11.field2149 != null; } } @@ -228,8 +228,8 @@ public ModelData(ModelData[] var1, int var2) { } if (var9) { - this.field1967 = new int[this.verticesCount][]; - this.field1968 = new int[this.verticesCount][]; + this.field2149 = new int[this.verticesCount][]; + this.field2151 = new int[this.verticesCount][]; } this.faceColors = new short[this.faceCount]; @@ -286,18 +286,18 @@ public ModelData(ModelData[] var1, int var2) { } this.faceColors[this.faceCount] = var11.faceColors[var12]; - this.indices1[this.faceCount] = this.method1159(var11, var11.indices1[var12]); - this.indices2[this.faceCount] = this.method1159(var11, var11.indices2[var12]); - this.indices3[this.faceCount] = this.method1159(var11, var11.indices3[var12]); + this.indices1[this.faceCount] = this.method1389(var11, var11.indices1[var12]); + this.indices2[this.faceCount] = this.method1389(var11, var11.indices2[var12]); + this.indices3[this.faceCount] = this.method1389(var11, var11.indices3[var12]); ++this.faceCount; } for (var12 = 0; var12 < var11.textureTriangleCount; ++var12) { byte var13 = this.textureRenderTypes[this.textureTriangleCount] = var11.textureRenderTypes[var12]; if (var13 == 0) { - this.texTriangleX[this.textureTriangleCount] = (short)this.method1159(var11, var11.texTriangleX[var12]); - this.texTriangleY[this.textureTriangleCount] = (short)this.method1159(var11, var11.texTriangleY[var12]); - this.texTriangleZ[this.textureTriangleCount] = (short)this.method1159(var11, var11.texTriangleZ[var12]); + this.texTriangleX[this.textureTriangleCount] = (short)this.method1389(var11, var11.texTriangleX[var12]); + this.texTriangleY[this.textureTriangleCount] = (short)this.method1389(var11, var11.texTriangleY[var12]); + this.texTriangleZ[this.textureTriangleCount] = (short)this.method1389(var11, var11.texTriangleZ[var12]); } ++this.textureTriangleCount; @@ -315,19 +315,19 @@ public ModelData(ModelData[] var1, int var2) { Buffer var2 = new Buffer(10); var2.writeShort(-2); if (var1[var1.length - 1] == -3 && var1[var1.length - 2] == -1) { - this.method1155(var1); + this.method1385(var1); } else if (var1[var1.length - 1] == -2 && var1[var1.length - 2] == -1) { - this.method1156(var1); + this.method1386(var1); } else if (var1[var1.length - 1] == -1 && var1[var1.length - 2] == -1) { - this.method1157(var1); + this.method1387(var1); } else { - this.method1158(var1); + this.method1388(var1); } } @ObfuscatedSignature( - descriptor = "(Lic;ZZZZ)V", + descriptor = "(Lkq;ZZZZ)V", garbageValue = "1" ) public ModelData(ModelData var1, boolean var2, boolean var3, boolean var4, boolean var5) { @@ -394,14 +394,14 @@ public ModelData(ModelData var1, boolean var2, boolean var3, boolean var4, boole this.vertexNormals = var1.vertexNormals; this.faceNormals = var1.faceNormals; this.vertexVertices = var1.vertexVertices; - this.field1967 = var1.field1967; - this.field1968 = var1.field1968; + this.field2149 = var1.field2149; + this.field2151 = var1.field2151; this.ambient = var1.ambient; this.contrast = var1.contrast; } - @ObfuscatedName("ao") - void method1155(byte[] var1) { + @ObfuscatedName("ar") + void method1385(byte[] var1) { Buffer var2 = new Buffer(var1); Buffer var3 = new Buffer(var1); Buffer var4 = new Buffer(var1); @@ -544,8 +544,8 @@ void method1155(byte[] var1) { } if (var18 == 1) { - this.field1967 = new int[var9][]; - this.field1968 = new int[var9][]; + this.field2149 = new int[var9][]; + this.field2151 = new int[var9][]; } this.faceColors = new short[var10]; @@ -600,12 +600,12 @@ void method1155(byte[] var1) { if (var18 == 1) { for (var53 = 0; var53 < var9; ++var53) { var54 = var6.readUnsignedByte(); - this.field1967[var53] = new int[var54]; - this.field1968[var53] = new int[var54]; + this.field2149[var53] = new int[var54]; + this.field2151[var53] = new int[var54]; for (var55 = 0; var55 < var54; ++var55) { - this.field1967[var53][var55] = var6.readUnsignedByte(); - this.field1968[var53][var55] = var6.readUnsignedByte(); + this.field2149[var53][var55] = var6.readUnsignedByte(); + this.field2151[var53][var55] = var6.readUnsignedByte(); } } } @@ -723,8 +723,8 @@ void method1155(byte[] var1) { } - @ObfuscatedName("at") - void method1156(byte[] var1) { + @ObfuscatedName("ao") + void method1386(byte[] var1) { boolean var2 = false; boolean var3 = false; Buffer var4 = new Buffer(var1); @@ -825,8 +825,8 @@ void method1156(byte[] var1) { } if (var17 == 1) { - this.field1967 = new int[var9][]; - this.field1968 = new int[var9][]; + this.field2149 = new int[var9][]; + this.field2151 = new int[var9][]; } this.faceColors = new short[var10]; @@ -875,12 +875,12 @@ void method1156(byte[] var1) { if (var17 == 1) { for (var40 = 0; var40 < var9; ++var40) { var41 = var8.readUnsignedByte(); - this.field1967[var40] = new int[var41]; - this.field1968[var40] = new int[var41]; + this.field2149[var40] = new int[var41]; + this.field2151[var40] = new int[var41]; for (var42 = 0; var42 < var41; ++var42) { - this.field1967[var40][var42] = var8.readUnsignedByte(); - this.field1968[var40][var42] = var8.readUnsignedByte(); + this.field2149[var40][var42] = var8.readUnsignedByte(); + this.field2151[var40][var42] = var8.readUnsignedByte(); } } } @@ -1017,8 +1017,8 @@ void method1156(byte[] var1) { } - @ObfuscatedName("az") - void method1157(byte[] var1) { + @ObfuscatedName("ab") + void method1387(byte[] var1) { Buffer var2 = new Buffer(var1); Buffer var3 = new Buffer(var1); Buffer var4 = new Buffer(var1); @@ -1323,8 +1323,8 @@ void method1157(byte[] var1) { } - @ObfuscatedName("ap") - void method1158(byte[] var1) { + @ObfuscatedName("az") + void method1388(byte[] var1) { boolean var2 = false; boolean var3 = false; Buffer var4 = new Buffer(var1); @@ -1600,11 +1600,11 @@ void method1158(byte[] var1) { } - @ObfuscatedName("aa") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Lic;I)I" + descriptor = "(Lkq;I)I" ) - final int method1159(ModelData var1, int var2) { + final int method1389(ModelData var1, int var2) { int var3 = -1; int var4 = var1.verticesX[var2]; int var5 = var1.verticesY[var2]; @@ -1625,9 +1625,9 @@ final int method1159(ModelData var1, int var2) { this.vertexSkins[this.verticesCount] = var1.vertexSkins[var2]; } - if (var1.field1967 != null) { - this.field1967[this.verticesCount] = var1.field1967[var2]; - this.field1968[this.verticesCount] = var1.field1968[var2]; + if (var1.field2149 != null) { + this.field2149[this.verticesCount] = var1.field2149[var2]; + this.field2151[this.verticesCount] = var1.field2151[var2]; } var3 = this.verticesCount++; @@ -1636,9 +1636,9 @@ final int method1159(ModelData var1, int var2) { return var3; } - @ObfuscatedName("af") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "()Lic;" + descriptor = "()Lkq;" ) @Export("copyModelData") public ModelData copyModelData() { @@ -1681,16 +1681,16 @@ public ModelData copyModelData() { return var1; } - @ObfuscatedName("ad") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "([[IIIIZI)Lic;" + descriptor = "([[IIIIZI)Lkq;" ) - public ModelData method1161(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { + public ModelData method1391(int[][] var1, int var2, int var3, int var4, boolean var5, int var6) { this.calculateBounds(); - int var7 = var2 + this.field1956; - int var8 = var2 + this.field1952; - int var9 = var4 + this.field1955; - int var10 = var4 + this.field1954; + int var7 = var2 + this.field2139; + int var8 = var2 + this.field2135; + int var9 = var4 + this.field2137; + int var10 = var4 + this.field2136; if (var7 >= 0 && var8 + 128 >> 7 < var1.length && var9 >= 0 && var10 + 128 >> 7 < var1[0].length) { var7 >>= 7; var8 = var8 + 127 >> 7; @@ -1775,8 +1775,8 @@ public ModelData method1161(int[][] var1, int var2, int var3, int var4, boolean } } - @ObfuscatedName("aq") - void method1162() { + @ObfuscatedName("as") + void method1392() { int[] var1; int var2; int var10002; @@ -1836,8 +1836,8 @@ void method1162() { } - @ObfuscatedName("al") - public void method1163() { + @ObfuscatedName("ay") + public void method1393() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { int var2 = this.verticesX[var1]; this.verticesX[var1] = this.verticesZ[var1]; @@ -1847,8 +1847,8 @@ public void method1163() { this.invalidate(); } - @ObfuscatedName("an") - public void method1164() { + @ObfuscatedName("ak") + public void method1394() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { this.verticesX[var1] = -this.verticesX[var1]; this.verticesZ[var1] = -this.verticesZ[var1]; @@ -1857,8 +1857,8 @@ public void method1164() { this.invalidate(); } - @ObfuscatedName("ar") - public void method1165() { + @ObfuscatedName("aj") + public void method1395() { for (int var1 = 0; var1 < this.verticesCount; ++var1) { int var2 = this.verticesZ[var1]; this.verticesZ[var1] = this.verticesX[var1]; @@ -1868,8 +1868,8 @@ public void method1165() { this.invalidate(); } - @ObfuscatedName("ab") - public void method1166(int var1) { + @ObfuscatedName("am") + public void method1396(int var1) { int var2 = ModelData_sine[var1]; int var3 = ModelData_cosine[var1]; @@ -1882,7 +1882,7 @@ public void method1166(int var1) { this.invalidate(); } - @ObfuscatedName("ag") + @ObfuscatedName("aq") @Export("changeOffset") public void changeOffset(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.verticesCount; ++var4) { @@ -1897,7 +1897,7 @@ public void changeOffset(int var1, int var2, int var3) { this.invalidate(); } - @ObfuscatedName("am") + @ObfuscatedName("ai") @Export("recolor") public void recolor(short var1, short var2) { for (int var3 = 0; var3 < this.faceCount; ++var3) { @@ -1908,7 +1908,7 @@ public void recolor(short var1, short var2) { } - @ObfuscatedName("ax") + @ObfuscatedName("aw") @Export("retexture") public void retexture(short var1, short var2) { if (this.faceTextures != null) { @@ -1921,8 +1921,8 @@ public void retexture(short var1, short var2) { } } - @ObfuscatedName("ah") - public void method1170() { + @ObfuscatedName("ae") + public void method1400() { int var1; for (var1 = 0; var1 < this.verticesCount; ++var1) { this.verticesZ[var1] = -this.verticesZ[var1]; @@ -1937,7 +1937,7 @@ public void method1170() { this.invalidate(); } - @ObfuscatedName("as") + @ObfuscatedName("an") @Export("resize") public void resize(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.verticesCount; ++var4) { @@ -1949,7 +1949,7 @@ public void resize(int var1, int var2, int var3) { this.invalidate(); } - @ObfuscatedName("ay") + @ObfuscatedName("ag") @Export("calculateVertexNormals") public void calculateVertexNormals() { if (this.vertexNormals == null) { @@ -2025,7 +2025,7 @@ public void calculateVertexNormals() { } } - @ObfuscatedName("aj") + @ObfuscatedName("ad") @Export("invalidate") void invalidate() { this.vertexNormals = null; @@ -2034,43 +2034,43 @@ void invalidate() { this.isBoundsCalculated = false; } - @ObfuscatedName("av") + @ObfuscatedName("af") @Export("calculateBounds") void calculateBounds() { if (!this.isBoundsCalculated) { super.height = 0; - this.field1953 = 0; - this.field1956 = 999999; - this.field1952 = -999999; - this.field1954 = -99999; - this.field1955 = 99999; + this.field2138 = 0; + this.field2139 = 999999; + this.field2135 = -999999; + this.field2136 = -99999; + this.field2137 = 99999; for (int var1 = 0; var1 < this.verticesCount; ++var1) { int var2 = this.verticesX[var1]; int var3 = this.verticesY[var1]; int var4 = this.verticesZ[var1]; - if (var2 < this.field1956) { - this.field1956 = var2; + if (var2 < this.field2139) { + this.field2139 = var2; } - if (var2 > this.field1952) { - this.field1952 = var2; + if (var2 > this.field2135) { + this.field2135 = var2; } - if (var4 < this.field1955) { - this.field1955 = var4; + if (var4 < this.field2137) { + this.field2137 = var4; } - if (var4 > this.field1954) { - this.field1954 = var4; + if (var4 > this.field2136) { + this.field2136 = var4; } if (-var3 > super.height) { super.height = -var3; } - if (var3 > this.field1953) { - this.field1953 = var3; + if (var3 > this.field2138) { + this.field2138 = var3; } } @@ -2078,9 +2078,9 @@ void calculateBounds() { } } - @ObfuscatedName("ak") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(IIIII)Ljr;" + descriptor = "(IIIII)Lka;" ) @Export("toModel") public final Model toModel(int var1, int var2, int var3, int var4, int var5) { @@ -2101,38 +2101,38 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } } - var8.field2242 = 0; + var8.field2421 = 0; for (var10 = 0; var10 < this.textureTriangleCount; ++var10) { if (var9[var10] > 0 && this.textureRenderTypes[var10] == 0) { - ++var8.field2242; + ++var8.field2421; } } - var8.field2226 = new int[var8.field2242]; - var8.field2221 = new int[var8.field2242]; - var8.field2227 = new int[var8.field2242]; + var8.field2396 = new int[var8.field2421]; + var8.field2397 = new int[var8.field2421]; + var8.field2407 = new int[var8.field2421]; var10 = 0; int var11; for (var11 = 0; var11 < this.textureTriangleCount; ++var11) { if (var9[var11] > 0 && this.textureRenderTypes[var11] == 0) { - var8.field2226[var10] = this.texTriangleX[var11] & '\uffff'; - var8.field2221[var10] = this.texTriangleY[var11] & '\uffff'; - var8.field2227[var10] = this.texTriangleZ[var11] & '\uffff'; + var8.field2396[var10] = this.texTriangleX[var11] & '\uffff'; + var8.field2397[var10] = this.texTriangleY[var11] & '\uffff'; + var8.field2407[var10] = this.texTriangleZ[var11] & '\uffff'; var9[var11] = var10++; } else { var9[var11] = -1; } } - var8.field2209 = new byte[this.faceCount]; + var8.field2390 = new byte[this.faceCount]; for (var11 = 0; var11 < this.faceCount; ++var11) { if (this.textureCoords[var11] != -1) { - var8.field2209[var11] = (byte)var9[this.textureCoords[var11] & 255]; + var8.field2390[var11] = (byte)var9[this.textureCoords[var11] & 255]; } else { - var8.field2209[var11] = -1; + var8.field2390[var11] = -1; } } } @@ -2175,7 +2175,7 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { if (var17 == 1) { var19 = this.faceNormals[var16]; var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; - var8.faceColors1[var16] = method1177(this.faceColors[var16] & '\uffff', var14); + var8.faceColors1[var16] = method1407(this.faceColors[var16] & '\uffff', var14); var8.faceColors3[var16] = -1; } else if (var17 == 3) { var8.faceColors1[var16] = 128; @@ -2192,7 +2192,7 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors1[var16] = method1177(var15, var14); + var8.faceColors1[var16] = method1407(var15, var14); if (this.vertexVertices != null && this.vertexVertices[this.indices2[var16]] != null) { var13 = this.vertexVertices[this.indices2[var16]]; } else { @@ -2200,7 +2200,7 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors2[var16] = method1177(var15, var14); + var8.faceColors2[var16] = method1407(var15, var14); if (this.vertexVertices != null && this.vertexVertices[this.indices3[var16]] != null) { var13 = this.vertexVertices[this.indices3[var16]]; } else { @@ -2208,13 +2208,13 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors3[var16] = method1177(var15, var14); + var8.faceColors3[var16] = method1407(var15, var14); } } else if (var17 != 0) { if (var17 == 1) { var19 = this.faceNormals[var16]; var14 = (var4 * var19.y + var5 * var19.z + var3 * var19.x) / (var7 / 2 + var7) + var1; - var8.faceColors1[var16] = method1178(var14); + var8.faceColors1[var16] = method1408(var14); var8.faceColors3[var16] = -1; } else { var8.faceColors3[var16] = -2; @@ -2227,7 +2227,7 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors1[var16] = method1178(var14); + var8.faceColors1[var16] = method1408(var14); if (this.vertexVertices != null && this.vertexVertices[this.indices2[var16]] != null) { var13 = this.vertexVertices[this.indices2[var16]]; } else { @@ -2235,7 +2235,7 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors2[var16] = method1178(var14); + var8.faceColors2[var16] = method1408(var14); if (this.vertexVertices != null && this.vertexVertices[this.indices3[var16]] != null) { var13 = this.vertexVertices[this.indices3[var16]]; } else { @@ -2243,11 +2243,11 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { } var14 = (var4 * var13.y + var5 * var13.z + var3 * var13.x) / (var7 * var13.magnitude) + var1; - var8.faceColors3[var16] = method1178(var14); + var8.faceColors3[var16] = method1408(var14); } } - this.method1162(); + this.method1392(); var8.verticesCount = this.verticesCount; var8.verticesX = this.verticesX; var8.verticesY = this.verticesY; @@ -2258,18 +2258,18 @@ public final Model toModel(int var1, int var2, int var3, int var4, int var5) { var8.indices3 = this.indices3; var8.faceRenderPriorities = this.faceRenderPriorities; var8.faceAlphas = this.faceAlphas; - var8.field2235 = this.priority; + var8.field2415 = this.priority; var8.vertexLabels = this.vertexLabels; var8.faceLabelsAlpha = this.faceLabelsAlpha; var8.faceTextures = this.faceTextures; - var8.field2231 = this.field1967; - var8.field2230 = this.field1968; + var8.field2409 = this.field2149; + var8.field2411 = this.field2151; return var8; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;II)Lic;" + descriptor = "(Lol;II)Lkq;" ) @Export("ModelData_get") public static ModelData ModelData_get(AbstractArchive var0, int var1, int var2) { @@ -2277,16 +2277,16 @@ public static ModelData ModelData_get(AbstractArchive var0, int var1, int var2) return var3 == null ? null : new ModelData(var3); } - @ObfuscatedName("aw") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(Lic;Lic;IIIZ)V" + descriptor = "(Lkq;Lkq;IIIZ)V" ) - static void method1175(ModelData var0, ModelData var1, int var2, int var3, int var4, boolean var5) { + static void method1405(ModelData var0, ModelData var1, int var2, int var3, int var4, boolean var5) { var0.calculateBounds(); var0.calculateVertexNormals(); var1.calculateBounds(); var1.calculateVertexNormals(); - ++field1937; + ++field2120; int var6 = 0; int[] var7 = var1.verticesX; int var8 = var1.verticesCount; @@ -2296,11 +2296,11 @@ static void method1175(ModelData var0, ModelData var1, int var2, int var3, int v VertexNormal var10 = var0.vertexNormals[var9]; if (var10.magnitude != 0) { int var11 = var0.verticesY[var9] - var3; - if (var11 <= var1.field1953) { + if (var11 <= var1.field2138) { int var12 = var0.verticesX[var9] - var2; - if (var12 >= var1.field1956 && var12 <= var1.field1952) { + if (var12 >= var1.field2139 && var12 <= var1.field2135) { int var13 = var0.verticesZ[var9] - var4; - if (var13 >= var1.field1955 && var13 <= var1.field1954) { + if (var13 >= var1.field2137 && var13 <= var1.field2136) { for (int var14 = 0; var14 < var8; ++var14) { VertexNormal var15 = var1.vertexNormals[var14]; if (var12 == var7[var14] && var13 == var1.verticesZ[var14] && var11 == var1.verticesY[var14] && var15.magnitude != 0) { @@ -2331,8 +2331,8 @@ static void method1175(ModelData var0, ModelData var1, int var2, int var3, int v var17.z += var10.z; var17.magnitude += var10.magnitude; ++var6; - field1941[var9] = field1937; - field1939[var14] = field1937; + field2122[var9] = field2120; + field2123[var14] = field2120; } } } @@ -2343,7 +2343,7 @@ static void method1175(ModelData var0, ModelData var1, int var2, int var3, int v if (var6 >= 3 && var5) { for (var9 = 0; var9 < var0.faceCount; ++var9) { - if (field1941[var0.indices1[var9]] == field1937 && field1941[var0.indices2[var9]] == field1937 && field1941[var0.indices3[var9]] == field1937) { + if (field2122[var0.indices1[var9]] == field2120 && field2122[var0.indices2[var9]] == field2120 && field2122[var0.indices3[var9]] == field2120) { if (var0.faceRenderTypes == null) { var0.faceRenderTypes = new byte[var0.faceCount]; } @@ -2353,7 +2353,7 @@ static void method1175(ModelData var0, ModelData var1, int var2, int var3, int v } for (var9 = 0; var9 < var1.faceCount; ++var9) { - if (field1937 == field1939[var1.indices1[var9]] && field1937 == field1939[var1.indices2[var9]] && field1937 == field1939[var1.indices3[var9]]) { + if (field2120 == field2123[var1.indices1[var9]] && field2120 == field2123[var1.indices2[var9]] && field2120 == field2123[var1.indices3[var9]]) { if (var1.faceRenderTypes == null) { var1.faceRenderTypes = new byte[var1.faceCount]; } @@ -2365,8 +2365,8 @@ static void method1175(ModelData var0, ModelData var1, int var2, int var3, int v } } - @ObfuscatedName("bh") - static final int method1177(int var0, int var1) { + @ObfuscatedName("bl") + static final int method1407(int var0, int var1) { var1 = (var0 & 127) * var1 >> 7; if (var1 < 2) { var1 = 2; @@ -2377,8 +2377,8 @@ static final int method1177(int var0, int var1) { return (var0 & 65408) + var1; } - @ObfuscatedName("bj") - static final int method1178(int var0) { + @ObfuscatedName("bi") + static final int method1408(int var0) { if (var0 < 2) { var0 = 2; } else if (var0 > 126) { diff --git a/osrs/src/main/java/ModelData0.java b/osrs/src/main/java/ModelData0.java index e7c0d7815..29611dd2e 100644 --- a/osrs/src/main/java/ModelData0.java +++ b/osrs/src/main/java/ModelData0.java @@ -2,248 +2,49 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Date; - -@ObfuscatedName("jq") +@ObfuscatedName("lf") @Implements("ModelData0") public class ModelData0 { - @ObfuscatedName("az") - static byte[][][] field2282; - ModelData0() { } - @ObfuscatedName("au") + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "([FIFZFZ[FI)I", - garbageValue = "1909003343" + descriptor = "(ILdt;ZI)I", + garbageValue = "384222635" ) - public static int method1381(float[] var0, int var1, float var2, boolean var3, float var4, boolean var5, float[] var6) { - float var7 = 0.0F; - - for (int var8 = 0; var8 < var1 + 1; ++var8) { - var7 += Math.abs(var0[var8]); - } - - float var44 = (Math.abs(var2) + Math.abs(var4)) * (float)(var1 + 1) * class126.field1204; - if (var7 <= var44) { - return -1; - } else { - float[] var9 = new float[var1 + 1]; - - int var10; - for (var10 = 0; var10 < var1 + 1; ++var10) { - var9[var10] = 1.0F / var7 * var0[var10]; - } - - while (Math.abs(var9[var1]) < var44) { - --var1; - } - - var10 = 0; - if (var1 == 0) { - return var10; - } else if (var1 == 1) { - var6[0] = -var9[0] / var9[1]; - boolean var11 = var3 ? var2 < var6[0] + var44 : var2 < var6[0] - var44; - boolean var12 = var5 ? var4 > var6[0] - var44 : var4 > var6[0] + var44; - var10 = var11 && var12 ? 1 : 0; - if (var10 > 0) { - if (var3 && var6[0] < var2) { - var6[0] = var2; - } else if (var5 && var6[0] > var4) { - var6[0] = var4; - } - } - - return var10; + static int method1599(int var0, Script var1, boolean var2) { + int var3; + int var4; + if (var0 == 8000) { + --DbTableType.Interpreter_intStackSize; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_arrayLengths[var3]; + class422.method2167(Interpreter.Interpreter_arrays[var3], new int[var4], 0, var4 - 1); + return 1; + } else if (var0 == 8001) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + int var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + int var6 = Interpreter.Interpreter_arrayLengths[var3]; + if (var6 <= 1) { + return 1; } else { - class452 var41 = new class452(var9, var1); - float[] var42 = new float[var1 + 1]; - - for (int var13 = 1; var13 <= var1; ++var13) { - var42[var13 - 1] = (float)var13 * var9[var13]; - } - - float[] var43 = new float[var1 + 1]; - int var14 = method1381(var42, var1 - 1, var2, false, var4, false, var43); - if (var14 == -1) { - return 0; - } else { - boolean var15 = false; - float var17 = 0.0F; - float var18 = 0.0F; - float var19 = 0.0F; - - for (int var20 = 0; var20 <= var14; ++var20) { - if (var10 > var1) { - return var10; - } - - float var16; - if (var20 == 0) { - var16 = var2; - var18 = GrandExchangeEvent.method1953(var9, var1, var2); - if (Math.abs(var18) <= var44 && var3) { - var6[var10++] = var2; - } - } else { - var16 = var19; - var18 = var17; - } - - if (var14 == var20) { - var19 = var4; - var15 = false; - } else { - var19 = var43[var20]; - } - - var17 = GrandExchangeEvent.method1953(var9, var1, var19); - if (var15) { - var15 = false; - } else if (Math.abs(var17) < var44) { - if (var14 != var20 || var5) { - var6[var10++] = var19; - var15 = true; - } - } else if (var18 < 0.0F && var17 > 0.0F || var18 > 0.0F && var17 < 0.0F) { - int var22 = var10++; - float var24 = var16; - float var25 = var19; - float var26 = GrandExchangeEvent.method1953(var41.field3891, var41.field3892, var16); - float var23; - if (Math.abs(var26) < class126.field1204) { - var23 = var16; - } else { - float var27 = GrandExchangeEvent.method1953(var41.field3891, var41.field3892, var19); - if (Math.abs(var27) < class126.field1204) { - var23 = var19; - } else { - float var28 = 0.0F; - float var29 = 0.0F; - float var30 = 0.0F; - float var35 = 0.0F; - boolean var36 = true; - boolean var37 = false; - - do { - var37 = false; - if (var36) { - var28 = var24; - var35 = var26; - var29 = var25 - var24; - var30 = var29; - var36 = false; - } - - if (Math.abs(var35) < Math.abs(var27)) { - var24 = var25; - var25 = var28; - var28 = var24; - var26 = var27; - var27 = var35; - var35 = var26; - } - - float var38 = class126.field1203 * Math.abs(var25) + 0.0F; - float var39 = 0.5F * (var28 - var25); - boolean var40 = Math.abs(var39) > var38 && var27 != 0.0F; - if (var40) { - if (Math.abs(var30) >= var38 && Math.abs(var26) > Math.abs(var27)) { - float var34 = var27 / var26; - float var31; - float var32; - if (var24 == var28) { - var31 = var39 * 2.0F * var34; - var32 = 1.0F - var34; - } else { - var32 = var26 / var35; - float var33 = var27 / var35; - var31 = var34 * (var39 * 2.0F * var32 * (var32 - var33) - (var33 - 1.0F) * (var25 - var24)); - var32 = (var33 - 1.0F) * (var32 - 1.0F) * (var34 - 1.0F); - } - - if ((double)var31 > 0.0D) { - var32 = -var32; - } else { - var31 = -var31; - } - - var34 = var30; - var30 = var29; - if (2.0F * var31 < 3.0F * var39 * var32 - Math.abs(var32 * var38) && var31 < Math.abs(var32 * var34 * 0.5F)) { - var29 = var31 / var32; - } else { - var29 = var39; - var30 = var39; - } - } else { - var29 = var39; - var30 = var39; - } - - var24 = var25; - var26 = var27; - if (Math.abs(var29) > var38) { - var25 += var29; - } else if ((double)var39 > 0.0D) { - var25 += var38; - } else { - var25 -= var38; - } - - var27 = GrandExchangeEvent.method1953(var41.field3891, var41.field3892, var25); - if ((double)(var27 * (var35 / Math.abs(var35))) > 0.0D) { - var36 = true; - var37 = true; - } else { - var37 = true; - } - } - } while(var37); - - var23 = var25; - } - } - - var6[var22] = var23; - if (var10 > 1 && var6[var10 - 2] >= var6[var10 - 1] - var44) { - var6[var10 - 2] = 0.5F * (var6[var10 - 2] + var6[var10 - 1]); - --var10; - } - } - } - - return var10; - } + class421.method2166(Interpreter.Interpreter_arrays[var3], var6, var4, var5); + return 1; } + } else { + return 2; } } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;B)V", - garbageValue = "48" - ) - public static void method1382(AbstractArchive var0) { - DbRowType.field4116 = var0; - } - - @ObfuscatedName("az") + @ObfuscatedName("hs") @ObfuscatedSignature( - descriptor = "(Ljava/util/Date;I)Z", - garbageValue = "-1268034054" + descriptor = "(I)J", + garbageValue = "1205269572" ) - static boolean method1383(Date var0) { - java.util.Calendar var1 = java.util.Calendar.getInstance(); - var1.set(1, var1.get(1) - 13); - var1.set(5, var1.get(5) + 1); - var1.set(11, 0); - var1.set(12, 0); - var1.set(13, 0); - var1.set(14, 0); - Date var2 = var1.getTime(); - return var0.before(var2); + static long method1598() { + return Client.playerUUID; } } \ No newline at end of file diff --git a/osrs/src/main/java/MouseHandler.java b/osrs/src/main/java/MouseHandler.java index 655c79267..41009dd5d 100644 --- a/osrs/src/main/java/MouseHandler.java +++ b/osrs/src/main/java/MouseHandler.java @@ -5,69 +5,66 @@ import java.awt.event.*; -@ObfuscatedName("bf") +@ObfuscatedName("bp") @Implements("MouseHandler") public class MouseHandler implements MouseListener, MouseMotionListener, FocusListener { - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lbf;" + descriptor = "Lbp;" ) @Export("MouseHandler_instance") public static MouseHandler MouseHandler_instance; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("MouseHandler_idleCycles") static volatile int MouseHandler_idleCycles; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("MouseHandler_currentButtonVolatile") public static volatile int MouseHandler_currentButtonVolatile; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("MouseHandler_xVolatile") public static volatile int MouseHandler_xVolatile; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("MouseHandler_yVolatile") public static volatile int MouseHandler_yVolatile; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("MouseHandler_lastMovedVolatile") public static volatile long MouseHandler_lastMovedVolatile; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("MouseHandler_currentButton") public static int MouseHandler_currentButton; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("MouseHandler_x") public static int MouseHandler_x; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("MouseHandler_y") public static int MouseHandler_y; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("MouseHandler_millis") public static long MouseHandler_millis; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("MouseHandler_lastButtonVolatile") public static volatile int MouseHandler_lastButtonVolatile; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("MouseHandler_lastPressedXVolatile") public static volatile int MouseHandler_lastPressedXVolatile; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("MouseHandler_lastPressedYVolatile") public static volatile int MouseHandler_lastPressedYVolatile; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("MouseHandler_lastPressedTimeMillisVolatile") public static volatile long MouseHandler_lastPressedTimeMillisVolatile; @ObfuscatedName("am") @Export("MouseHandler_lastButton") public static int MouseHandler_lastButton; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("MouseHandler_lastPressedX") public static int MouseHandler_lastPressedX; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("MouseHandler_lastPressedY") public static int MouseHandler_lastPressedY; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("MouseHandler_lastPressedTimeMillis") public static long MouseHandler_lastPressedTimeMillis; - @ObfuscatedName("uf") - @Export("cameraMoveToAcceleration") - static int cameraMoveToAcceleration; static { MouseHandler_instance = new MouseHandler(); @@ -95,8 +92,8 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljava/awt/event/MouseEvent;I)I", - garbageValue = "-343088867" + descriptor = "(Ljava/awt/event/MouseEvent;B)I", + garbageValue = "115" ) @Export("getButton") final int getButton(MouseEvent var1) { @@ -125,7 +122,7 @@ public final synchronized void mousePressed(MouseEvent var1) { MouseHandler_idleCycles = 0; MouseHandler_lastPressedXVolatile = var1.getX(); MouseHandler_lastPressedYVolatile = var1.getY(); - MouseHandler_lastPressedTimeMillisVolatile = GameEngine.clockNow(); + MouseHandler_lastPressedTimeMillisVolatile = SpotAnimationDefinition.method962(); MouseHandler_lastButtonVolatile = this.getButton(var1); if (MouseHandler_lastButtonVolatile != 0) { MouseHandler_currentButtonVolatile = MouseHandler_lastButtonVolatile; @@ -189,46 +186,34 @@ public final synchronized void focusLost(FocusEvent var1) { } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-463307133" - ) - @Export("addGameMessage") - static void addGameMessage(int var0, String var1, String var2) { - class416.addChatMessage(var0, var1, var2, (String)null); - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "412937353" - ) - static final void method171(String var0) { - PacketBufferNode var1 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.FRIENDLIST_ADD, Client.packetWriter.isaacCipher); - var1.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var0)); - var1.packetBuffer.writeStringCp1252NullTerminated(var0); - Client.packetWriter.addNode(var1); - } - - @ObfuscatedName("ig") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "1731210540" + descriptor = "(IIIII)V", + garbageValue = "-455674284" ) - static void method172(int var0, int var1, int var2) { - if (var0 != 0) { - int var3 = var0 >> 8; - int var4 = var0 >> 4 & 7; - int var5 = var0 & 15; - Client.soundEffectIds[Client.soundEffectCount] = var3; - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var4; - Client.queuedSoundEffectDelays[Client.soundEffectCount] = 0; - Client.soundEffects[Client.soundEffectCount] = null; - int var6 = (var1 - 64) / 128; - int var7 = (var2 - 64) / 128; - Client.soundLocations[Client.soundEffectCount] = var5 + (var7 << 8) + (var6 << 16); - ++Client.soundEffectCount; + static final void method182(int var0, int var1, int var2, int var3) { + for (int var4 = var1; var4 <= var3 + var1; ++var4) { + for (int var5 = var0; var5 <= var0 + var2; ++var5) { + if (var5 >= 0 && var5 < 104 && var4 >= 0 && var4 < 104) { + class93.field948[0][var5][var4] = 127; + if (var0 == var5 && var5 > 0) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 - 1][var4]; + } + + if (var0 + var2 == var5 && var5 < 103) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 + 1][var4]; + } + + if (var4 == var1 && var4 > 0) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 - 1]; + } + + if (var3 + var1 == var4 && var4 < 103) { + Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 + 1]; + } + } + } } + } } \ No newline at end of file diff --git a/osrs/src/main/java/MouseRecorder.java b/osrs/src/main/java/MouseRecorder.java index 90c650b6c..e39deb123 100644 --- a/osrs/src/main/java/MouseRecorder.java +++ b/osrs/src/main/java/MouseRecorder.java @@ -1,28 +1,27 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dt") +@ObfuscatedName("db") @Implements("MouseRecorder") public class MouseRecorder implements Runnable { - @ObfuscatedName("ja") - static int field873; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("isRunning") boolean isRunning; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("lock") Object lock; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("index") int index; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("xs") int[] xs; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("ys") int[] ys; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("millis") long[] millis; @@ -38,7 +37,7 @@ public class MouseRecorder implements Runnable { @Export("run") @ObfuscatedName("run") public void run() { - for (; this.isRunning; PendingSpawn.method505(50L)) { + for (; this.isRunning; class219.method1104(50L)) { synchronized(this.lock) { if (this.index < 500) { this.xs[this.index] = MouseHandler.MouseHandler_x; @@ -50,4 +49,30 @@ public void run() { } } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "-43" + ) + public static int method469(int var0) { + class139 var2 = (class139)SequenceDefinition.SequenceDefinition_cachedModel.get((long)var0); + class139 var1; + if (var2 != null) { + var1 = var2; + } else { + var2 = Login.method437(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); + if (var2 != null) { + SequenceDefinition.SequenceDefinition_cachedModel.put(var2, (long)var0); + } + + var1 = var2; + } + + if (var1 == null) { + return 2; + } else { + return var1.method741() ? 0 : 1; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/MouseWheelHandler.java b/osrs/src/main/java/MouseWheelHandler.java index 6c62cb0cd..6fb430851 100644 --- a/osrs/src/main/java/MouseWheelHandler.java +++ b/osrs/src/main/java/MouseWheelHandler.java @@ -7,10 +7,10 @@ import java.awt.event.MouseWheelEvent; import java.awt.event.MouseWheelListener; -@ObfuscatedName("ay") +@ObfuscatedName("ae") @Implements("MouseWheelHandler") -public final class MouseWheelHandler implements class174, MouseWheelListener { - @ObfuscatedName("au") +public final class MouseWheelHandler implements class212, MouseWheelListener { + @ObfuscatedName("at") @Export("rotation") int rotation; @@ -18,29 +18,29 @@ public final class MouseWheelHandler implements class174, MouseWheelListener { this.rotation = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Component;S)V", - garbageValue = "-260" + descriptor = "(Ljava/awt/Component;I)V", + garbageValue = "635528306" ) @Export("addTo") void addTo(Component var1) { var1.addMouseWheelListener(this); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(Ljava/awt/Component;B)V", - garbageValue = "0" + garbageValue = "72" ) - void method71(Component var1) { + void method79(Component var1) { var1.removeMouseWheelListener(this); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2061400252" + garbageValue = "-855152300" ) @Export("useRotation") public synchronized int useRotation() { diff --git a/osrs/src/main/java/MoveSpeed.java b/osrs/src/main/java/MoveSpeed.java index a8b731909..9e8e46cd2 100644 --- a/osrs/src/main/java/MoveSpeed.java +++ b/osrs/src/main/java/MoveSpeed.java @@ -3,37 +3,43 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("in") +@ObfuscatedName("iz") @Implements("MoveSpeed") -public enum MoveSpeed implements class371 { - @ObfuscatedName("au") +public enum MoveSpeed implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lin;" + descriptor = "Liz;" ) @Export("STATIONARY") STATIONARY((byte)-1), - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lin;" + descriptor = "Liz;" ) @Export("CRAWL") CRAWL((byte)0), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lin;" + descriptor = "Liz;" ) @Export("WALK") WALK((byte)1), - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lin;" + descriptor = "Liz;" ) @Export("RUN") RUN((byte)2); - @ObfuscatedName("ap") - static byte[][][] field1924; - @ObfuscatedName("ac") + @ObfuscatedName("cw") + static String field1933; + @ObfuscatedName("dc") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + @Export("worldSelectStars") + static IndexedSprite[] worldSelectStars; + @ObfuscatedName("ab") @Export("speed") public byte speed; @@ -41,66 +47,261 @@ public enum MoveSpeed implements class371 { this.speed = var3; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.speed; } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/String;", - garbageValue = "-51" - ) - @Export("colorStartTag") - static String colorStartTag(int var0) { - return ""; - } - @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1754323091" + descriptor = "(I[III)V", + garbageValue = "-1953021335" ) - public static int method1141(int var0) { - return (var0 & class508.field4120) - 1; + static void method1167(int var0, int[] var1, int var2) { + for (int var3 = 0; var3 < class348.KitDefinition_fileCount; ++var3) { + KitDefinition var4 = class1.KitDefinition_get(var3); + if (var4 != null && !var4.nonSelectable && var4.bodypartID == (var0 == 1 ? 7 : 0) + var2) { + var1[PlayerComposition.equipmentIndices[var2]] = var3 + 256; + break; + } + } + } - @ObfuscatedName("cn") + @ObfuscatedName("iw") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "-4242" + descriptor = "(Ldf;II)V", + garbageValue = "-1026770295" ) - @Export("runWidgetOnLoadListener") - static void runWidgetOnLoadListener(int var0) { - if (var0 != -1) { - if (ModeWhere.loadInterface(var0)) { - Widget[] var1 = PacketBufferNode.Widget_interfaceComponents[var0]; - - for (int var2 = 0; var2 < var1.length; ++var2) { - Widget var3 = var1[var2]; - if (var3.onLoad != null) { - ScriptEvent var4 = new ScriptEvent(); - var4.widget = var3; - var4.args = var3.onLoad; - NPC.runScript(var4, 5000000, 0); + @Export("updateActorSequence") + static final void updateActorSequence(Actor var0, int var1) { + int var3; + int var4; + int var6; + SequenceDefinition var9; + if (var0.spotAnimation >= Client.cycle) { + int var2 = Math.max(1, var0.spotAnimation - Client.cycle); + var3 = var0.field983 * 64 + var0.field1013 * 128; + var4 = var0.field983 * 64 + var0.field1012 * 128; + var0.x += (var3 - var0.x) / var2; + var0.y += (var4 - var0.y) / var2; + var0.field1028 = 0; + var0.orientation = var0.exactMoveDirection; + } else if (var0.exactMoveArrive1Cycle >= Client.cycle) { + boolean var12 = var0.exactMoveArrive1Cycle == Client.cycle || var0.sequence == -1 || var0.sequenceDelay != 0; + if (!var12) { + var9 = DynamicObject.SequenceDefinition_get(var0.sequence); + if (var9 != null && !var9.isCachedModelIdSet()) { + var12 = var0.sequenceFrameCycle + 1 > var9.frameLengths[var0.sequenceFrame]; + } else { + var12 = true; + } + } + + if (var12) { + var3 = var0.exactMoveArrive1Cycle - var0.spotAnimation; + var4 = Client.cycle - var0.spotAnimation; + int var5 = var0.field983 * 64 + var0.field1013 * 128; + var6 = var0.field983 * 64 + var0.field1012 * 128; + int var7 = var0.field983 * 64 + var0.field1024 * 128; + int var8 = var0.field983 * 64 + var0.field1010 * 128; + var0.x = (var4 * var7 + var5 * (var3 - var4)) / var3; + var0.y = (var8 * var4 + var6 * (var3 - var4)) / var3; + } + + var0.field1028 = 0; + var0.orientation = var0.exactMoveDirection; + var0.rotation = var0.orientation; + } else { + DevicePcmPlayerProvider.method84(var0); + } + + if (var0.x < 128 || var0.y < 128 || var0.x >= 13184 || var0.y >= 13184) { + var0.sequence = -1; + var0.spotAnimation = 0; + var0.exactMoveArrive1Cycle = 0; + var0.method513(); + var0.x = var0.pathX[0] * 128 + var0.field983 * 64; + var0.y = var0.field983 * 64 + var0.pathY[0] * 128; + var0.method506(); + } + + if (class229.localPlayer == var0 && (var0.x < 1536 || var0.y < 1536 || var0.x >= 11776 || var0.y >= 11776)) { + var0.sequence = -1; + var0.spotAnimation = 0; + var0.exactMoveArrive1Cycle = 0; + var0.method513(); + var0.x = var0.pathX[0] * 128 + var0.field983 * 64; + var0.y = var0.pathY[0] * 128 + var0.field983 * 64; + var0.method506(); + } + + WorldMap.method2456(var0); + var0.isWalking = false; + if (var0.movementSequence != -1) { + SequenceDefinition var10 = DynamicObject.SequenceDefinition_get(var0.movementSequence); + if (var10 != null) { + if (!var10.isCachedModelIdSet() && var10.frameIds != null) { + ++var0.movementFrameCycle; + if (var0.movementFrame < var10.frameIds.length && var0.movementFrameCycle > var10.frameLengths[var0.movementFrame]) { + var0.movementFrameCycle = 1; + ++var0.movementFrame; + DynamicObject.method451(var10, var0.movementFrame, var0.x, var0.y, var0); + } + + if (var0.movementFrame >= var10.frameIds.length) { + if (var10.frameCount > 0) { + var0.movementFrame -= var10.frameCount; + if (var10.field1796) { + ++var0.field1006; + } + + if (var0.movementFrame < 0 || var0.movementFrame >= var10.frameIds.length || var10.field1796 && var0.field1006 >= var10.iterations) { + var0.movementFrameCycle = 0; + var0.movementFrame = 0; + var0.field1006 = 0; + } + } else { + var0.movementFrameCycle = 0; + var0.movementFrame = 0; + } + + DynamicObject.method451(var10, var0.movementFrame, var0.x, var0.y, var0); } + } else if (var10.isCachedModelIdSet()) { + ++var0.movementFrame; + var3 = var10.method1052(); + if (var0.movementFrame < var3) { + FriendLoginUpdate.method2227(var10, var0.movementFrame, var0.x, var0.y, var0); + } else { + if (var10.frameCount > 0) { + var0.movementFrame -= var10.frameCount; + if (var10.field1796) { + ++var0.field1006; + } + + if (var0.movementFrame < 0 || var0.movementFrame >= var3 || var10.field1796 && var0.field1006 >= var10.iterations) { + var0.movementFrame = 0; + var0.movementFrameCycle = 0; + var0.field1006 = 0; + } + } else { + var0.movementFrameCycle = 0; + var0.movementFrame = 0; + } + + FriendLoginUpdate.method2227(var10, var0.movementFrame, var0.x, var0.y, var0); + } + } else { + var0.movementSequence = -1; } + } else { + var0.movementSequence = -1; + } + } + + IterableNodeHashTableIterator var14 = new IterableNodeHashTableIterator(var0.method512()); + + for (SpotAnimation var13 = (SpotAnimation)var14.method2461(); var13 != null; var13 = (SpotAnimation)var14.next()) { + if (var13.field4313 != -1 && Client.cycle >= var13.field4311) { + var4 = Canvas.SpotAnimationDefinition_get(var13.field4313).sequence; + if (var4 == -1) { + var13.remove(); + --var0.field1026; + } else { + var13.field4310 = Math.max(var13.field4310, 0); + SequenceDefinition var11 = DynamicObject.SequenceDefinition_get(var4); + if (var11.frameIds != null && !var11.isCachedModelIdSet()) { + ++var13.field4312; + if (var13.field4310 < var11.frameIds.length && var13.field4312 > var11.frameLengths[var13.field4310]) { + var13.field4312 = 1; + ++var13.field4310; + DynamicObject.method451(var11, var13.field4310, var0.x, var0.y, var0); + } + if (var13.field4310 >= var11.frameIds.length) { + var13.remove(); + --var0.field1026; + } + } else if (var11.isCachedModelIdSet()) { + ++var13.field4310; + var6 = var11.method1052(); + if (var13.field4310 < var6) { + FriendLoginUpdate.method2227(var11, var13.field4310, var0.x, var0.y, var0); + } else { + var13.remove(); + --var0.field1026; + } + } else { + var13.remove(); + --var0.field1026; + } + } } } - } - @ObfuscatedName("cr") - @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/Object;", - garbageValue = "-77" - ) - static Object method1143(int var0) { - return class172.method908((class502)KeyHandler.findEnumerated(class502.method2494(), var0)); + if (var0.sequence != -1 && var0.sequenceDelay <= 1) { + var9 = DynamicObject.SequenceDefinition_get(var0.sequence); + if (var9.precedenceAnimating == 1 && var0.field1029 > 0 && var0.spotAnimation <= Client.cycle && var0.exactMoveArrive1Cycle < Client.cycle) { + var0.sequenceDelay = 1; + return; + } + } + + if (var0.sequence != -1 && var0.sequenceDelay == 0) { + var9 = DynamicObject.SequenceDefinition_get(var0.sequence); + if (var9 == null) { + var0.sequence = -1; + } else if (!var9.isCachedModelIdSet() && var9.frameIds != null) { + ++var0.sequenceFrameCycle; + if (var0.sequenceFrame < var9.frameIds.length && var0.sequenceFrameCycle > var9.frameLengths[var0.sequenceFrame]) { + var0.sequenceFrameCycle = 1; + ++var0.sequenceFrame; + DynamicObject.method451(var9, var0.sequenceFrame, var0.x, var0.y, var0); + } + + if (var0.sequenceFrame >= var9.frameIds.length) { + var0.sequenceFrame -= var9.frameCount; + ++var0.currentSequenceFrameIndex; + if (var0.currentSequenceFrameIndex >= var9.iterations) { + var0.sequence = -1; + } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var9.frameIds.length) { + DynamicObject.method451(var9, var0.sequenceFrame, var0.x, var0.y, var0); + } else { + var0.sequence = -1; + } + } + + var0.isWalking = var9.stretches; + } else if (var9.isCachedModelIdSet()) { + ++var0.sequenceFrame; + var4 = var9.method1052(); + if (var0.sequenceFrame < var4) { + FriendLoginUpdate.method2227(var9, var0.sequenceFrame, var0.x, var0.y, var0); + } else { + var0.sequenceFrame -= var9.frameCount; + ++var0.currentSequenceFrameIndex; + if (var0.currentSequenceFrameIndex >= var9.iterations) { + var0.sequence = -1; + } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var4) { + FriendLoginUpdate.method2227(var9, var0.sequenceFrame, var0.x, var0.y, var0); + } else { + var0.sequence = -1; + } + } + } else { + var0.sequence = -1; + } + } + + if (var0.sequenceDelay > 0) { + --var0.sequenceDelay; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicPatch.java b/osrs/src/main/java/MusicPatch.java index 0b430eaf4..c73d258c4 100644 --- a/osrs/src/main/java/MusicPatch.java +++ b/osrs/src/main/java/MusicPatch.java @@ -6,44 +6,44 @@ import java.util.ArrayList; import java.util.BitSet; -@ObfuscatedName("ll") +@ObfuscatedName("mq") @Implements("MusicPatch") public class MusicPatch extends Node { - @ObfuscatedName("au") - int field2826; - @ObfuscatedName("ao") + @ObfuscatedName("at") + int field2846; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "[Lcf;" + descriptor = "[Lcg;" ) @Export("rawSounds") class53[] rawSounds; - @ObfuscatedName("at") - short[] field2830; - @ObfuscatedName("ac") - byte[] field2822; - @ObfuscatedName("ai") - byte[] field2823; - @ObfuscatedName("az") + @ObfuscatedName("ao") + short[] field2850; + @ObfuscatedName("ab") + byte[] field2842; + @ObfuscatedName("au") + byte[] field2844; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "[Llj;" + descriptor = "[Lmk;" ) - MusicPatchNode2[] field2829; - @ObfuscatedName("ap") - byte[] field2824; - @ObfuscatedName("aa") - ArrayList field2828; - @ObfuscatedName("af") - int[] field2827; + MusicPatchNode2[] field2849; + @ObfuscatedName("ac") + byte[] field2843; + @ObfuscatedName("al") + ArrayList field2848; + @ObfuscatedName("az") + int[] field2847; MusicPatch(byte[] var1) { - this.field2828 = new ArrayList(8); + this.field2848 = new ArrayList(8); this.rawSounds = new class53[128]; - this.field2830 = new short[128]; - this.field2822 = new byte[128]; - this.field2823 = new byte[128]; - this.field2829 = new MusicPatchNode2[128]; - this.field2824 = new byte[128]; - this.field2827 = new int[128]; + this.field2850 = new short[128]; + this.field2842 = new byte[128]; + this.field2844 = new byte[128]; + this.field2849 = new MusicPatchNode2[128]; + this.field2843 = new byte[128]; + this.field2847 = new int[128]; Buffer var2 = new Buffer(var1); int var3; @@ -123,13 +123,13 @@ public class MusicPatch extends Node { var38 = var37[var14] = new MusicPatchNode2(); int var16 = var2.readUnsignedByte(); if (var16 > 0) { - var38.field2758 = new byte[var16 * 2]; + var38.field2779 = new byte[var16 * 2]; } var16 = var2.readUnsignedByte(); if (var16 > 0) { - var38.field2757 = new byte[var16 * 2 + 2]; - var38.field2757[1] = 64; + var38.field2778 = new byte[var16 * 2 + 2]; + var38.field2778[1] = 64; } } @@ -156,7 +156,7 @@ public class MusicPatch extends Node { int var20; for (var20 = 0; var20 < 128; ++var20) { var19 += var2.readUnsignedByte(); - this.field2830[var20] = (short)var19; + this.field2850[var20] = (short)var19; } var19 = 0; @@ -164,7 +164,7 @@ public class MusicPatch extends Node { short[] var48; for (var20 = 0; var20 < 128; ++var20) { var19 += var2.readUnsignedByte(); - var48 = this.field2830; + var48 = this.field2850; var48[var20] = (short)(var48[var20] + (var19 << 8)); } @@ -184,9 +184,9 @@ public class MusicPatch extends Node { var22 = var2.readVarInt(); } - var48 = this.field2830; + var48 = this.field2850; var48[var23] = (short)(var48[var23] + ((var22 - 1 & 2) << 14)); - this.field2827[var23] = var22; + this.field2847[var23] = var22; --var20; } @@ -196,7 +196,7 @@ public class MusicPatch extends Node { int var24; for (var24 = 0; var24 < 128; ++var24) { - if (this.field2827[var24] != 0) { + if (this.field2847[var24] != 0) { if (var20 == 0) { if (var21 < var4.length) { var20 = var4[var21++]; @@ -207,7 +207,7 @@ public class MusicPatch extends Node { var23 = var2.array[var5++] - 1; } - this.field2824[var24] = (byte)var23; + this.field2843[var24] = (byte)var23; --var20; } } @@ -217,7 +217,7 @@ public class MusicPatch extends Node { var24 = 0; for (int var25 = 0; var25 < 128; ++var25) { - if (this.field2827[var25] != 0) { + if (this.field2847[var25] != 0) { if (var20 == 0) { if (var21 < var7.length) { var20 = var7[var21++]; @@ -228,7 +228,7 @@ public class MusicPatch extends Node { var24 = var2.array[var8++] + 16 << 2; } - this.field2823[var25] = (byte)var24; + this.field2844[var25] = (byte)var24; --var20; } } @@ -239,7 +239,7 @@ public class MusicPatch extends Node { int var26; for (var26 = 0; var26 < 128; ++var26) { - if (this.field2827[var26] != 0) { + if (this.field2847[var26] != 0) { if (var20 == 0) { var40 = var37[var36[var21]]; if (var21 < var10.length) { @@ -249,7 +249,7 @@ public class MusicPatch extends Node { } } - this.field2829[var26] = var40; + this.field2849[var26] = var40; --var20; } } @@ -267,30 +267,30 @@ public class MusicPatch extends Node { var20 = -1; } - if (this.field2827[var27] > 0) { + if (this.field2847[var27] > 0) { var26 = var2.readUnsignedByte() + 1; } } - this.field2822[var27] = (byte)var26; + this.field2842[var27] = (byte)var26; --var20; } - this.field2826 = var2.readUnsignedByte() + 1; + this.field2846 = var2.readUnsignedByte() + 1; MusicPatchNode2 var28; int var29; for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2758 != null) { - for (var29 = 1; var29 < var28.field2758.length; var29 += 2) { - var28.field2758[var29] = var2.readByte(); + if (var28.field2779 != null) { + for (var29 = 1; var29 < var28.field2779.length; var29 += 2) { + var28.field2779[var29] = var2.readByte(); } } - if (var28.field2757 != null) { - for (var29 = 3; var29 < var28.field2757.length - 2; var29 += 2) { - var28.field2757[var29] = var2.readByte(); + if (var28.field2778 != null) { + for (var29 = 3; var29 < var28.field2778.length - 2; var29 += 2) { + var28.field2778[var29] = var2.readByte(); } } } @@ -309,24 +309,24 @@ public class MusicPatch extends Node { for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2757 != null) { + if (var28.field2778 != null) { var19 = 0; - for (var29 = 2; var29 < var28.field2757.length; var29 += 2) { - var19 = var19 + 1 + var2.readUnsignedByte(); - var28.field2757[var29] = (byte)var19; + for (var29 = 2; var29 < var28.field2778.length; var29 += 2) { + var19 = 1 + var19 + var2.readUnsignedByte(); + var28.field2778[var29] = (byte)var19; } } } for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2758 != null) { + if (var28.field2779 != null) { var19 = 0; - for (var29 = 2; var29 < var28.field2758.length; var29 += 2) { + for (var29 = 2; var29 < var28.field2779.length; var29 += 2) { var19 = var19 + 1 + var2.readUnsignedByte(); - var28.field2758[var29] = (byte)var19; + var28.field2779[var29] = (byte)var19; } } } @@ -342,7 +342,7 @@ public class MusicPatch extends Node { var45[0] = (byte)var19; for (var27 = 2; var27 < var45.length; var27 += 2) { - var19 = var19 + 1 + var2.readUnsignedByte(); + var19 = 1 + var19 + var2.readUnsignedByte(); var45[var27] = (byte)var19; } @@ -350,7 +350,7 @@ public class MusicPatch extends Node { byte var41 = var45[1]; for (var29 = 0; var29 < var44; ++var29) { - this.field2822[var29] = (byte)(var41 * this.field2822[var29] + 32 >> 6); + this.field2842[var29] = (byte)(var41 * this.field2842[var29] + 32 >> 6); } for (var29 = 2; var29 < var45.length; var29 += 2) { @@ -359,8 +359,8 @@ public class MusicPatch extends Node { var32 = var41 * (var30 - var44) + (var30 - var44) / 2; for (var33 = var44; var33 < var30; ++var33) { - var34 = SecureRandomFuture.method439(var32, var30 - var44); - this.field2822[var33] = (byte)(var34 * this.field2822[var33] + 32 >> 6); + var34 = HorizontalAlignment.method932(var32, var30 - var44); + this.field2842[var33] = (byte)(var34 * this.field2842[var33] + 32 >> 6); var32 += var31 - var41; } @@ -369,7 +369,7 @@ public class MusicPatch extends Node { } for (var42 = var44; var42 < 128; ++var42) { - this.field2822[var42] = (byte)(var41 * this.field2822[var42] + 32 >> 6); + this.field2842[var42] = (byte)(var41 * this.field2842[var42] + 32 >> 6); } var38 = null; @@ -380,7 +380,7 @@ public class MusicPatch extends Node { var39[0] = (byte)var19; for (var27 = 2; var27 < var39.length; var27 += 2) { - var19 = var19 + 1 + var2.readUnsignedByte(); + var19 = 1 + var19 + var2.readUnsignedByte(); var39[var27] = (byte)var19; } @@ -388,7 +388,7 @@ public class MusicPatch extends Node { int var47 = var39[1] << 1; for (var29 = 0; var29 < var44; ++var29) { - var42 = var47 + (this.field2823[var29] & 255); + var42 = var47 + (this.field2844[var29] & 255); if (var42 < 0) { var42 = 0; } @@ -397,7 +397,7 @@ public class MusicPatch extends Node { var42 = 128; } - this.field2823[var29] = (byte)var42; + this.field2844[var29] = (byte)var42; } int var43; @@ -407,8 +407,8 @@ public class MusicPatch extends Node { var32 = var47 * (var30 - var44) + (var30 - var44) / 2; for (var33 = var44; var33 < var30; ++var33) { - var34 = SecureRandomFuture.method439(var32, var30 - var44); - int var35 = var34 + (this.field2823[var33] & 255); + var34 = HorizontalAlignment.method932(var32, var30 - var44); + int var35 = var34 + (this.field2844[var33] & 255); if (var35 < 0) { var35 = 0; } @@ -417,7 +417,7 @@ public class MusicPatch extends Node { var35 = 128; } - this.field2823[var33] = (byte)var35; + this.field2844[var33] = (byte)var35; var32 += var43 - var47; } @@ -426,7 +426,7 @@ public class MusicPatch extends Node { } for (var42 = var44; var42 < 128; ++var42) { - var43 = var47 + (this.field2823[var42] & 255); + var43 = var47 + (this.field2844[var42] & 255); if (var43 < 0) { var43 = 0; } @@ -435,57 +435,57 @@ public class MusicPatch extends Node { var43 = 128; } - this.field2823[var42] = (byte)var43; + this.field2844[var42] = (byte)var43; } Object var46 = null; } for (var27 = 0; var27 < var12; ++var27) { - var37[var27].field2762 = var2.readUnsignedByte(); + var37[var27].field2785 = var2.readUnsignedByte(); } for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2758 != null) { - var28.field2764 = var2.readUnsignedByte(); + if (var28.field2779 != null) { + var28.field2784 = var2.readUnsignedByte(); } - if (var28.field2757 != null) { - var28.field2760 = var2.readUnsignedByte(); + if (var28.field2778 != null) { + var28.field2781 = var2.readUnsignedByte(); } - if (var28.field2762 > 0) { - var28.field2761 = var2.readUnsignedByte(); + if (var28.field2785 > 0) { + var28.field2786 = var2.readUnsignedByte(); } } for (var27 = 0; var27 < var12; ++var27) { - var37[var27].field2763 = var2.readUnsignedByte(); + var37[var27].field2782 = var2.readUnsignedByte(); } for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2763 > 0) { - var28.field2765 = var2.readUnsignedByte(); + if (var28.field2782 > 0) { + var28.field2780 = var2.readUnsignedByte(); } } for (var27 = 0; var27 < var12; ++var27) { var28 = var37[var27]; - if (var28.field2765 > 0) { - var28.field2759 = var2.readUnsignedByte(); + if (var28.field2780 > 0) { + var28.field2783 = var2.readUnsignedByte(); } } } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lbi;Ljava/util/BitSet;I)Z", - garbageValue = "-1836403783" + descriptor = "(Lbc;Ljava/util/BitSet;I)Z", + garbageValue = "1639529302" ) - boolean method1682(SoundCache var1, BitSet var2) { + boolean method1710(SoundCache var1, BitSet var2) { boolean var3 = true; int var4 = 0; class53 var5 = new class53(); @@ -496,26 +496,26 @@ boolean method1682(SoundCache var1, BitSet var2) { for (int var8 = var6; var8 < var7; ++var8) { if (var2.get(var8)) { - int var9 = this.field2827[var8]; + int var9 = this.field2847[var8]; if (var9 != 0) { - if (var9 != var4) { + if (var4 != var9) { var4 = var9--; if ((var9 & 1) == 0) { - var5 = new class53(var1.method225(var9 >> 2)); + var5 = new class53(var1.method240(var9 >> 2)); } else { - var5 = var1.method223(var9 >> 2); + var5 = var1.method239(var9 >> 2); } - if (var5.method289()) { + if (var5.method303()) { var3 = false; } else { - this.field2828.add(this.field2828.size(), var5); + this.field2848.add(this.field2848.size(), var5); } } - if (!var5.method289()) { + if (!var5.method303()) { this.rawSounds[var8] = var5; - this.field2827[var8] = 0; + this.field2847[var8] = 0; } } } @@ -525,13 +525,30 @@ boolean method1682(SoundCache var1, BitSet var2) { return var3; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1286940116" + garbageValue = "-2008776711" ) @Export("clear") void clear() { - this.field2827 = null; + this.field2847 = null; + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;S)Ljava/lang/String;", + garbageValue = "-1361" + ) + public static String method1709(CharSequence var0) { + int var2 = var0.length(); + char[] var3 = new char[var2]; + + for (int var4 = 0; var4 < var2; ++var4) { + var3[var4] = '*'; + } + + String var1 = new String(var3); + return var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicPatchNode.java b/osrs/src/main/java/MusicPatchNode.java index 3cbdcdd23..231e00f96 100644 --- a/osrs/src/main/java/MusicPatchNode.java +++ b/osrs/src/main/java/MusicPatchNode.java @@ -3,79 +3,91 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mg") +@ObfuscatedName("mw") @Implements("MusicPatchNode") public class MusicPatchNode extends Node { - @ObfuscatedName("au") - int field2854; - @ObfuscatedName("ae") + @ObfuscatedName("wy") + @Export("foundItemIds") + static short[] foundItemIds; + @ObfuscatedName("at") + int field2872; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lll;" + descriptor = "Lmq;" ) @Export("table") MusicPatch table; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lbu;" + descriptor = "Lbt;" ) @Export("rawSound") RawSound rawSound; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Llj;" + descriptor = "Lmk;" ) - MusicPatchNode2 field2857; + MusicPatchNode2 field2878; + @ObfuscatedName("ab") + int field2862; + @ObfuscatedName("au") + int field2873; + @ObfuscatedName("aa") + int field2861; @ObfuscatedName("ac") - int field2842; - @ObfuscatedName("ai") - int field2847; + int field2863; + @ObfuscatedName("al") + int field2868; @ObfuscatedName("az") - int field2856; + int field2877; @ObfuscatedName("ap") - int field2851; - @ObfuscatedName("aa") - int field2840; - @ObfuscatedName("af") - int field2844; - @ObfuscatedName("ad") - int field2843; - @ObfuscatedName("aq") - int field2852; - @ObfuscatedName("al") - int field2848; - @ObfuscatedName("an") - int field2850; - @ObfuscatedName("ar") - int field2853; - @ObfuscatedName("ab") - int field2841; - @ObfuscatedName("ag") - int field2845; - @ObfuscatedName("am") - int field2849; + int field2870; + @ObfuscatedName("av") + int field2874; @ObfuscatedName("ax") + int field2875; + @ObfuscatedName("as") + int field2871; + @ObfuscatedName("ay") + int field2876; + @ObfuscatedName("ak") + int field2867; + @ObfuscatedName("aj") + int field2866; + @ObfuscatedName("am") + int field2869; + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Lbn;" + descriptor = "Lbb;" ) @Export("stream") RawPcmStream stream; - @ObfuscatedName("ah") - int field2846; - @ObfuscatedName("ay") - int field2855; + @ObfuscatedName("ai") + int field2865; + @ObfuscatedName("ae") + int field2864; MusicPatchNode() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-26" + garbageValue = "94" ) - void method1696() { + void method1724() { this.table = null; this.rawSound = null; - this.field2857 = null; + this.field2878 = null; this.stream = null; } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "666285399" + ) + public static int method1723(int var0) { + return var0 != 0 && var0 != 1 ? -1 : 0; + } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicPatchNode2.java b/osrs/src/main/java/MusicPatchNode2.java index 89684235c..f0361119d 100644 --- a/osrs/src/main/java/MusicPatchNode2.java +++ b/osrs/src/main/java/MusicPatchNode2.java @@ -1,42 +1,30 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lj") +@ObfuscatedName("mk") @Implements("MusicPatchNode2") public class MusicPatchNode2 { - @ObfuscatedName("uz") - @Export("cameraLookAtHeight") - static int cameraLookAtHeight; - @ObfuscatedName("au") - byte[] field2758; - @ObfuscatedName("ae") - byte[] field2757; - @ObfuscatedName("ao") - int field2762; + @ObfuscatedName("av") + static int field2777; @ObfuscatedName("at") - int field2764; - @ObfuscatedName("ac") - int field2760; - @ObfuscatedName("ai") - int field2761; - @ObfuscatedName("az") - int field2765; - @ObfuscatedName("ap") - int field2763; + byte[] field2779; + @ObfuscatedName("ah") + byte[] field2778; + @ObfuscatedName("ar") + int field2785; + @ObfuscatedName("ao") + int field2784; + @ObfuscatedName("ab") + int field2781; + @ObfuscatedName("au") + int field2786; @ObfuscatedName("aa") - int field2759; + int field2780; + @ObfuscatedName("ac") + int field2782; + @ObfuscatedName("al") + int field2783; MusicPatchNode2() { } - - @ObfuscatedName("oe") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "31198036" - ) - static void method1625(int var0) { - Client.oculusOrbState = var0; - } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicPatchPcmStream.java b/osrs/src/main/java/MusicPatchPcmStream.java index f2e13bcf7..7ebcddb11 100644 --- a/osrs/src/main/java/MusicPatchPcmStream.java +++ b/osrs/src/main/java/MusicPatchPcmStream.java @@ -3,39 +3,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mh") +@ObfuscatedName("mj") @Implements("MusicPatchPcmStream") public class MusicPatchPcmStream extends PcmStream { - @ObfuscatedName("cq") - @Export("param9") - static String param9; - @ObfuscatedName("da") + @ObfuscatedName("tf") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "Lby;" ) - @Export("worldSelectArrows") - static IndexedSprite[] worldSelectArrows; - @ObfuscatedName("au") + @Export("pcmPlayer1") + static PcmPlayer pcmPlayer1; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Llf;" + descriptor = "Lmn;" ) @Export("superStream") MidiPcmStream superStream; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("queue") NodeDeque queue; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lbl;" + descriptor = "Lbn;" ) @Export("mixer") PcmStreamMixer mixer; @ObfuscatedSignature( - descriptor = "(Llf;)V" + descriptor = "(Lmn;)V" ) MusicPatchPcmStream(MidiPcmStream var1) { this.queue = new NodeDeque(); @@ -43,48 +40,48 @@ public class MusicPatchPcmStream extends PcmStream { this.superStream = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lmg;[IIIII)V", - garbageValue = "-1470888543" + descriptor = "(Lmw;[IIIII)V", + garbageValue = "-1281472428" ) - void method1693(MusicPatchNode var1, int[] var2, int var3, int var4, int var5) { - if ((this.superStream.field2790[var1.field2854] & 4) != 0 && var1.field2853 < 0) { - int var6 = this.superStream.field2798[var1.field2854] / PcmPlayer.field181; + void method1719(MusicPatchNode var1, int[] var2, int var3, int var4, int var5) { + if ((this.superStream.field2813[var1.field2872] & 4) != 0 && var1.field2876 < 0) { + int var6 = this.superStream.field2810[var1.field2872] / PcmPlayer.field179; while (true) { - int var7 = (var6 + 1048575 - var1.field2855) / var6; + int var7 = (var6 + 1048575 - var1.field2864) / var6; if (var7 > var4) { - var1.field2855 += var6 * var4; + var1.field2864 += var4 * var6; break; } var1.stream.fill(var2, var3, var7); var3 += var7; var4 -= var7; - var1.field2855 += var7 * var6 - 1048576; - int var8 = PcmPlayer.field181 / 100; + var1.field2864 += var6 * var7 - 1048576; + int var8 = PcmPlayer.field179 / 100; int var9 = 262144 / var6; if (var9 < var8) { var8 = var9; } RawPcmStream var10 = var1.stream; - if (this.superStream.field2792[var1.field2854] == 0) { - var1.stream = RawPcmStream.method235(var1.rawSound, var10.method250(), var10.method241(), var10.method242()); + if (this.superStream.field2815[var1.field2872] == 0) { + var1.stream = RawPcmStream.method249(var1.rawSound, var10.method264(), var10.method255(), var10.method256()); } else { - var1.stream = RawPcmStream.method235(var1.rawSound, var10.method250(), 0, var10.method242()); - this.superStream.method1642(var1, var1.table.field2830[var1.field2847] < 0); - var1.stream.method246(var8, var10.method241()); + var1.stream = RawPcmStream.method249(var1.rawSound, var10.method264(), 0, var10.method256()); + this.superStream.method1666(var1, var1.table.field2850[var1.field2873] < 0); + var1.stream.method260(var8, var10.method255()); } - if (var1.table.field2830[var1.field2847] < 0) { + if (var1.table.field2850[var1.field2873] < 0) { var1.stream.setNumLoops(-1); } - var10.method248(var8); + var10.method262(var8); var10.fill(var2, var3, var5 - var3); - if (var10.method252()) { + if (var10.method266()) { this.mixer.addSubStream(var10); } } @@ -93,38 +90,38 @@ void method1693(MusicPatchNode var1, int[] var2, int var3, int var4, int var5) { var1.stream.fill(var2, var3, var4); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lmg;II)V", - garbageValue = "-2042371851" + descriptor = "(Lmw;II)V", + garbageValue = "-1821439633" ) - void method1694(MusicPatchNode var1, int var2) { - if ((this.superStream.field2790[var1.field2854] & 4) != 0 && var1.field2853 < 0) { - int var3 = this.superStream.field2798[var1.field2854] / PcmPlayer.field181; - int var4 = (var3 + 1048575 - var1.field2855) / var3; - var1.field2855 = var3 * var2 + var1.field2855 & 1048575; + void method1721(MusicPatchNode var1, int var2) { + if ((this.superStream.field2813[var1.field2872] & 4) != 0 && var1.field2876 < 0) { + int var3 = this.superStream.field2810[var1.field2872] / PcmPlayer.field179; + int var4 = (var3 + 1048575 - var1.field2864) / var3; + var1.field2864 = var3 * var2 + var1.field2864 & 1048575; if (var4 <= var2) { - if (this.superStream.field2792[var1.field2854] == 0) { - var1.stream = RawPcmStream.method235(var1.rawSound, var1.stream.method250(), var1.stream.method241(), var1.stream.method242()); + if (this.superStream.field2815[var1.field2872] == 0) { + var1.stream = RawPcmStream.method249(var1.rawSound, var1.stream.method264(), var1.stream.method255(), var1.stream.method256()); } else { - var1.stream = RawPcmStream.method235(var1.rawSound, var1.stream.method250(), 0, var1.stream.method242()); - this.superStream.method1642(var1, var1.table.field2830[var1.field2847] < 0); + var1.stream = RawPcmStream.method249(var1.rawSound, var1.stream.method264(), 0, var1.stream.method256()); + this.superStream.method1666(var1, var1.table.field2850[var1.field2873] < 0); } - if (var1.table.field2830[var1.field2847] < 0) { + if (var1.table.field2850[var1.field2873] < 0) { var1.stream.setNumLoops(-1); } - var2 = var1.field2855 / var3; + var2 = var1.field2864 / var3; } } var1.stream.skip(var2); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("firstSubStream") protected PcmStream firstSubStream() { @@ -136,9 +133,9 @@ protected PcmStream firstSubStream() { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("nextSubStream") protected PcmStream nextSubStream() { @@ -153,68 +150,136 @@ protected PcmStream nextSubStream() { return var1.stream; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod5648") protected int vmethod5648() { return 0; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fill") protected void fill(int[] var1, int var2, int var3) { this.mixer.fill(var1, var2, var3); for (MusicPatchNode var6 = (MusicPatchNode)this.queue.last(); var6 != null; var6 = (MusicPatchNode)this.queue.previous()) { - if (!this.superStream.method1665(var6)) { + if (!this.superStream.method1688(var6)) { int var4 = var2; int var5 = var3; do { - if (var5 <= var6.field2846) { - this.method1693(var6, var1, var4, var5, var5 + var4); - var6.field2846 -= var5; + if (var5 <= var6.field2865) { + this.method1719(var6, var1, var4, var5, var5 + var4); + var6.field2865 -= var5; break; } - this.method1693(var6, var1, var4, var6.field2846, var4 + var5); - var4 += var6.field2846; - var5 -= var6.field2846; - } while(!this.superStream.method1666(var6, var1, var4, var5)); + this.method1719(var6, var1, var4, var6.field2865, var5 + var4); + var4 += var6.field2865; + var5 -= var6.field2865; + } while(!this.superStream.method1689(var6, var1, var4, var5)); } } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("skip") protected void skip(int var1) { this.mixer.skip(var1); for (MusicPatchNode var3 = (MusicPatchNode)this.queue.last(); var3 != null; var3 = (MusicPatchNode)this.queue.previous()) { - if (!this.superStream.method1665(var3)) { + if (!this.superStream.method1688(var3)) { int var2 = var1; do { - if (var2 <= var3.field2846) { - this.method1694(var3, var2); - var3.field2846 -= var2; + if (var2 <= var3.field2865) { + this.method1721(var3, var2); + var3.field2865 -= var2; break; } - this.method1694(var3, var3.field2846); - var2 -= var3.field2846; - } while(!this.superStream.method1666(var3, (int[])null, 0, var2)); + this.method1721(var3, var3.field2865); + var2 -= var3.field2865; + } while(!this.superStream.method1689(var3, (int[])null, 0, var2)); } } } - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "8192" + descriptor = "(Ljava/lang/CharSequence;I)[B", + garbageValue = "125922381" ) - public static int method1690() { - return ++MouseHandler.MouseHandler_idleCycles - 1; + public static byte[] method1720(CharSequence var0) { + int var1 = var0.length(); + byte[] var2 = new byte[var1]; + + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); + if ((var4 <= 0 || var4 >= 128) && (var4 < 160 || var4 > 255)) { + if (var4 == 8364) { + var2[var3] = -128; + } else if (var4 == 8218) { + var2[var3] = -126; + } else if (var4 == 402) { + var2[var3] = -125; + } else if (var4 == 8222) { + var2[var3] = -124; + } else if (var4 == 8230) { + var2[var3] = -123; + } else if (var4 == 8224) { + var2[var3] = -122; + } else if (var4 == 8225) { + var2[var3] = -121; + } else if (var4 == 710) { + var2[var3] = -120; + } else if (var4 == 8240) { + var2[var3] = -119; + } else if (var4 == 352) { + var2[var3] = -118; + } else if (var4 == 8249) { + var2[var3] = -117; + } else if (var4 == 338) { + var2[var3] = -116; + } else if (var4 == 381) { + var2[var3] = -114; + } else if (var4 == 8216) { + var2[var3] = -111; + } else if (var4 == 8217) { + var2[var3] = -110; + } else if (var4 == 8220) { + var2[var3] = -109; + } else if (var4 == 8221) { + var2[var3] = -108; + } else if (var4 == 8226) { + var2[var3] = -107; + } else if (var4 == 8211) { + var2[var3] = -106; + } else if (var4 == 8212) { + var2[var3] = -105; + } else if (var4 == 732) { + var2[var3] = -104; + } else if (var4 == 8482) { + var2[var3] = -103; + } else if (var4 == 353) { + var2[var3] = -102; + } else if (var4 == 8250) { + var2[var3] = -101; + } else if (var4 == 339) { + var2[var3] = -100; + } else if (var4 == 382) { + var2[var3] = -98; + } else if (var4 == 376) { + var2[var3] = -97; + } else { + var2[var3] = 63; + } + } else { + var2[var3] = (byte)var4; + } + } + + return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicSong.java b/osrs/src/main/java/MusicSong.java index cab615059..6362f626f 100644 --- a/osrs/src/main/java/MusicSong.java +++ b/osrs/src/main/java/MusicSong.java @@ -3,172 +3,94 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mu") +@ObfuscatedName("mt") @Implements("MusicSong") public class MusicSong { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("musicTrackArchive") public AbstractArchive musicTrackArchive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("musicTrackGroupId") public int musicTrackGroupId; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("musicTrackFileId") public int musicTrackFileId; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("musicTrackVolume") public int musicTrackVolume; - @ObfuscatedName("ac") - public float field2867; - @ObfuscatedName("ai") + @ObfuscatedName("ab") + public float field2886; + @ObfuscatedName("au") @Export("musicTrackBoolean") public boolean musicTrackBoolean; + @ObfuscatedName("aa") + public boolean field2882; + @ObfuscatedName("ac") + public boolean field2883; + @ObfuscatedName("al") + public boolean field2884; @ObfuscatedName("az") - public boolean field2866; + boolean field2880; @ObfuscatedName("ap") - public boolean field2865; - @ObfuscatedName("aa") - public boolean field2862; - @ObfuscatedName("af") - public boolean field2863; - @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "Llf;" + descriptor = "Lmn;" ) @Export("midiPcmStream") public MidiPcmStream midiPcmStream; - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lbi;" + descriptor = "Lbc;" ) - public SoundCache field2861; - @ObfuscatedName("al") + public SoundCache field2881; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lmv;" + descriptor = "Lms;" ) - public MusicTrack field2872; + public MusicTrack field2891; @ObfuscatedSignature( - descriptor = "(Lnu;Ljava/lang/String;Ljava/lang/String;IZ)V" + descriptor = "(Lol;Ljava/lang/String;Ljava/lang/String;IZ)V" ) public MusicSong(AbstractArchive var1, String var2, String var3, int var4, boolean var5) { this.musicTrackGroupId = -1; this.musicTrackFileId = -1; this.musicTrackVolume = 0; - this.field2867 = 0.0F; + this.field2886 = 0.0F; this.musicTrackBoolean = false; - this.field2862 = false; - this.field2863 = false; + this.field2884 = false; + this.field2880 = false; this.musicTrackGroupId = var1.getGroupId(var2); this.musicTrackFileId = var1.getFileId(this.musicTrackGroupId, var3); - this.method1701(var1, this.musicTrackGroupId, this.musicTrackFileId, var4, var5); + this.method1727(var1, this.musicTrackGroupId, this.musicTrackFileId, var4, var5); } @ObfuscatedSignature( - descriptor = "(Lnu;IIIZ)V" + descriptor = "(Lol;IIIZ)V" ) public MusicSong(AbstractArchive var1, int var2, int var3, int var4, boolean var5) { this.musicTrackGroupId = -1; this.musicTrackFileId = -1; this.musicTrackVolume = 0; - this.field2867 = 0.0F; + this.field2886 = 0.0F; this.musicTrackBoolean = false; - this.field2862 = false; - this.field2863 = false; - this.method1701(var1, var2, var3, var4, var5); + this.field2884 = false; + this.field2880 = false; + this.method1727(var1, var2, var3, var4, var5); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;IIIZB)V", - garbageValue = "28" + descriptor = "(Lol;IIIZI)V", + garbageValue = "-2008731586" ) - void method1701(AbstractArchive var1, int var2, int var3, int var4, boolean var5) { + void method1727(AbstractArchive var1, int var2, int var3, int var4, boolean var5) { this.musicTrackArchive = var1; this.musicTrackGroupId = var2; this.musicTrackFileId = var3; this.musicTrackVolume = var4; this.musicTrackBoolean = var5; } - - @ObfuscatedName("hi") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-79" - ) - @Export("updateGameState") - static void updateGameState(int var0) { - if (var0 != Client.gameState) { - if (Client.gameState == 30) { - Client.field423.method1090(); - } - - if (Client.gameState == 0) { - class219.client.method158(); - } - - if (var0 == 20 || var0 == 40 || var0 == 45 || var0 == 50) { - class316.method1700(0); - Client.field448 = 0; - Client.field447 = 0; - Client.timer.method2152(var0); - if (var0 != 20) { - PendingSpawn.method509(false); - } - } - - if (var0 != 20 && var0 != 40 && AbstractSocket.field3819 != null) { - AbstractSocket.field3819.close(); - AbstractSocket.field3819 = null; - } - - if (Client.gameState == 25) { - Client.field456 = 0; - Client.field452 = 0; - Client.field453 = 1; - Client.field455 = 0; - Client.field454 = 1; - } - - if (var0 != 5 && var0 != 10) { - if (var0 == 20) { - int var3 = Client.gameState == 11 ? 4 : 0; - Timer.method2157(class141.archive10, PcmPlayer.archive8, false, var3); - } else if (var0 == 11) { - Timer.method2157(class141.archive10, PcmPlayer.archive8, false, 4); - } else if (var0 == 50) { - class318.setLoginResponseString("", "Updating date of birth...", ""); - Timer.method2157(class141.archive10, PcmPlayer.archive8, false, 7); - } else if (class403.clearLoginScreen) { - Login.titleboxSprite = null; - class219.titlebuttonSprite = null; - Login.runesSprite = null; - Login.leftTitleSprite = null; - Bounds.rightTitleSprite = null; - SoundSystem.logoSprite = null; - class13.title_muteSprite = null; - Login.options_buttons_0Sprite = null; - UserComparator6.options_buttons_2Sprite = null; - class74.worldSelectBackSprites = null; - SoundCache.worldSelectFlagSprites = null; - MusicPatchPcmStream.worldSelectArrows = null; - SecureRandomCallable.worldSelectStars = null; - VarcInt.field1534 = null; - class139.field1323.method528(); - Script.method445(0, 100); - CollisionMap.method1122().method1932(true); - class403.clearLoginScreen = false; - } - } else { - boolean var1 = class449.clientPreferences.method564() >= Client.param21; - int var2 = var1 ? 0 : 12; - Timer.method2157(class141.archive10, PcmPlayer.archive8, true, var2); - } - - Client.gameState = var0; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/MusicTrack.java b/osrs/src/main/java/MusicTrack.java index bab2fb74e..eafa42348 100644 --- a/osrs/src/main/java/MusicTrack.java +++ b/osrs/src/main/java/MusicTrack.java @@ -3,23 +3,23 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mv") +@ObfuscatedName("ms") @Implements("MusicTrack") public class MusicTrack extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) - NodeHashTable field2837; - @ObfuscatedName("ae") + NodeHashTable field2857; + @ObfuscatedName("ah") @Export("midi") byte[] midi; @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) MusicTrack(Buffer var1) { - this.field2837 = new NodeHashTable(16); + this.field2857 = new NodeHashTable(16); var1.offset = var1.array.length - 3; int var2 = var1.readUnsignedByte(); int var3 = var1.readUnsignedShort(); @@ -254,13 +254,13 @@ public class MusicTrack extends Node { var51.writeByte(var71); if (var71 > 0) { int var72 = var61[var52]; - class318 var73 = (class318)this.field2837.get((long)var72); + class329 var73 = (class329)this.field2857.get((long)var72); if (var73 == null) { - var73 = new class318(var65); - this.field2837.put(var73, (long)var72); + var73 = new class329(var65); + this.field2857.put(var73, (long)var72); } - var73.field2876.set(var74); + var73.field2894.set(var74); } } else if (var66 == 1) { if (var69) { @@ -367,9 +367,9 @@ public class MusicTrack extends Node { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;II)Lmv;" + descriptor = "(Lol;II)Lms;" ) @Export("readTrack") public static MusicTrack readTrack(AbstractArchive var0, int var1, int var2) { diff --git a/osrs/src/main/java/NPC.java b/osrs/src/main/java/NPC.java index ff1993a9b..0f48f2a8c 100644 --- a/osrs/src/main/java/NPC.java +++ b/osrs/src/main/java/NPC.java @@ -3,76 +3,76 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dx") +@ObfuscatedName("dn") @Implements("NPC") public final class NPC extends Actor { - @ObfuscatedName("az") - static int field1075; @ObfuscatedName("aa") - static int field1074; - @ObfuscatedName("au") + static int field1080; + @ObfuscatedName("al") + static int field1081; + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "Lhw;" ) @Export("definition") NPCComposition definition; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("nameChange") String nameChange; - @ObfuscatedName("at") - int field1079; - @ObfuscatedName("ac") + @ObfuscatedName("ao") + int field1085; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ltw;" + descriptor = "Lum;" ) - class515 field1081; - @ObfuscatedName("ai") + class527 field1087; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lhq;" + descriptor = "Lhf;" ) - NewShit field1076; - @ObfuscatedName("ap") + NewShit field1083; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lhq;" + descriptor = "Lhf;" ) - NewShit field1077; + NewShit field1082; static { - field1075 = 1; - field1074 = 1; + field1080 = 1; + field1081 = 1; } NPC() { this.nameChange = ""; - this.field1079 = 31; + this.field1085 = 31; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1576222812" + garbageValue = "-983100224" ) - void method577(String var1) { + void method575(String var1) { this.nameChange = var1 == null ? "" : var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { if (this.definition == null) { return null; } else { - SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? EnumComposition.SequenceDefinition_get(super.sequence) : null; - SequenceDefinition var2 = super.movementSequence == -1 || super.idleSequence == super.movementSequence && var1 != null ? null : EnumComposition.SequenceDefinition_get(super.movementSequence); + SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? DynamicObject.SequenceDefinition_get(super.sequence) : null; + SequenceDefinition var2 = super.movementSequence == -1 || super.movementSequence == super.idleSequence && var1 != null ? null : DynamicObject.SequenceDefinition_get(super.movementSequence); Model var3 = null; - if (this.field1076 != null && this.field1076.field1581) { - var3 = VarbitComposition.localPlayer.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); + if (this.field1083 != null && this.field1083.field1530) { + var3 = class229.localPlayer.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); } else { - var3 = this.definition.method985(var1, super.sequenceFrame, var2, super.movementFrame, this.field1076); + var3 = this.definition.method940(var1, super.sequenceFrame, var2, super.movementFrame, this.field1083); } if (var3 == null) { @@ -81,7 +81,7 @@ protected final Model getModel() { var3.calculateBoundsCylinder(); super.defaultHeight = var3.height; int var4 = var3.indicesCount; - var3 = this.method520(var3); + var3 = this.method514(var3); if (this.definition.size == 1) { var3.isSingleTile = true; } @@ -91,7 +91,7 @@ protected final Model getModel() { var3.overrideSaturation = super.recolourSaturation; var3.overrideLuminance = super.recolourLuminance; var3.overrideAmount = super.recolourAmount; - var3.field2243 = (short)var4; + var3.field2423 = (short)var4; } else { var3.overrideAmount = 0; } @@ -101,34 +101,34 @@ protected final Model getModel() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-979887943" + garbageValue = "804243007" ) - void method579(int var1) { - this.field1079 = var1; + void method576(int var1) { + this.field1085 = var1; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-1723224473" + garbageValue = "1535698170" ) - boolean method580(int var1) { + boolean method577(int var1) { if (var1 >= 0 && var1 <= 4) { - return (this.field1079 & 1 << var1) != 0; + return (this.field1085 & 1 << var1) != 0; } else { return true; } } - @ObfuscatedName("az") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1406418583" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "0" ) - final String method581() { + final String method578() { if (!this.nameChange.isEmpty()) { return this.nameChange; } else { @@ -144,10 +144,10 @@ final String method581() { } } - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(ILin;I)V", - garbageValue = "1389933188" + descriptor = "(ILiz;I)V", + garbageValue = "844868343" ) @Export("move") final void move(int var1, MoveSpeed var2) { @@ -189,7 +189,7 @@ final void move(int var1, MoveSpeed var2) { --var4; } - if (super.sequence != -1 && EnumComposition.SequenceDefinition_get(super.sequence).priority == 1) { + if (super.sequence != -1 && DynamicObject.SequenceDefinition_get(super.sequence).priority == 1) { super.sequence = -1; } @@ -208,13 +208,13 @@ final void move(int var1, MoveSpeed var2) { super.pathTraversed[0] = var2; } - @ObfuscatedName("aa") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IIZI)V", - garbageValue = "-2120679358" + descriptor = "(IIZB)V", + garbageValue = "75" ) - final void method583(int var1, int var2, boolean var3) { - if (super.sequence != -1 && EnumComposition.SequenceDefinition_get(super.sequence).priority == 1) { + final void method581(int var1, int var2, boolean var3) { + if (super.sequence != -1 && DynamicObject.SequenceDefinition_get(super.sequence).priority == 1) { super.sequence = -1; } @@ -240,179 +240,214 @@ final void method583(int var1, int var2, boolean var3) { } super.pathLength = 0; - super.field1022 = 0; - super.field1021 = 0; + super.field1029 = 0; + super.field1028 = 0; super.pathX[0] = var1; super.pathY[0] = var2; - super.x = super.field976 * 64 + super.pathX[0] * 128; - super.y = super.pathY[0] * 128 + super.field976 * 64; + super.x = super.pathX[0] * 128 + super.field983 * 64; + super.y = super.pathY[0] * 128 + super.field983 * 64; } - @ObfuscatedName("af") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(I)[I", - garbageValue = "2108949560" + descriptor = "(S)[I", + garbageValue = "-23200" ) - int[] method587() { - return this.field1081 != null ? this.field1081.method2602() : this.definition.method993(); + int[] method584() { + return this.field1087 != null ? this.field1087.method2619() : this.definition.method948(); } - @ObfuscatedName("ad") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(S)[S", - garbageValue = "17216" + descriptor = "(B)[S", + garbageValue = "120" ) - short[] method588() { - return this.field1081 != null ? this.field1081.method2603() : this.definition.method995(); + short[] method585() { + return this.field1087 != null ? this.field1087.method2620() : this.definition.method950(); } - @ObfuscatedName("aq") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(IISI)V", - garbageValue = "-1331637163" + garbageValue = "-558766672" ) - void method589(int var1, int var2, short var3) { - if (this.field1081 == null) { - this.field1081 = new class515(this.definition); + void method586(int var1, int var2, short var3) { + if (this.field1087 == null) { + this.field1087 = new class527(this.definition); } - this.field1081.method2604(var1, var2, var3); + this.field1087.method2621(var1, var2, var3); } - @ObfuscatedName("al") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "([I[SI)V", - garbageValue = "1783936038" + garbageValue = "-1790507927" ) - void method590(int[] var1, short[] var2) { - if (this.field1081 == null) { - this.field1081 = new class515(this.definition); + void method587(int[] var1, short[] var2) { + if (this.field1087 == null) { + this.field1087 = new class527(this.definition); } - this.field1081.method2605(var1, var2); + this.field1087.method2622(var1, var2); } - @ObfuscatedName("an") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "707622194" + descriptor = "(B)V", + garbageValue = "0" ) - void method591() { - this.field1081 = null; + void method588() { + this.field1087 = null; } - @ObfuscatedName("ar") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(Lhq;I)V", - garbageValue = "244947071" + descriptor = "(Lhf;I)V", + garbageValue = "-906762953" ) - void method592(NewShit var1) { - this.field1077 = var1; + void method589(NewShit var1) { + this.field1082 = var1; } - @ObfuscatedName("ab") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(I)Lhq;", - garbageValue = "1386769503" + descriptor = "(B)Lhf;", + garbageValue = "2" ) - NewShit method593() { - return this.field1077; + NewShit method590() { + return this.field1082; } - @ObfuscatedName("ag") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(Lhq;B)V", - garbageValue = "-37" + descriptor = "(Lhf;I)V", + garbageValue = "-977381781" ) - void method594(NewShit var1) { - this.field1076 = var1; + void method591(NewShit var1) { + this.field1083 = var1; } - @ObfuscatedName("am") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "381940201" + garbageValue = "1221291483" ) @Export("isVisible") final boolean isVisible() { return this.definition != null; } - @ObfuscatedName("ax") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1283231682" + garbageValue = "-434488190" ) - void method595() { - this.field1077 = null; + void method592() { + this.field1082 = null; } - @ObfuscatedName("ah") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "58" + descriptor = "(I)V", + garbageValue = "-923674269" ) - void method596() { - this.field1076 = null; + void method593() { + this.field1083 = null; } - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-1698780109" + descriptor = "(Ljava/lang/CharSequence;IZB)I", + garbageValue = "-22" ) - public static int method578(int var0, int var1) { - int var2; - for (var2 = 1; var1 > 1; var1 >>= 1) { - if ((var1 & 1) != 0) { - var2 = var0 * var2; - } + public static int method580(CharSequence var0, int var1, boolean var2) { + if (var1 >= 2 && var1 <= 36) { + boolean var3 = false; + boolean var4 = false; + int var5 = 0; + int var6 = var0.length(); + + for (int var7 = 0; var7 < var6; ++var7) { + char var8 = var0.charAt(var7); + if (var7 == 0) { + if (var8 == '-') { + var3 = true; + continue; + } + + if (var8 == '+') { + continue; + } + } - var0 *= var0; - } + int var10; + if (var8 >= '0' && var8 <= '9') { + var10 = var8 - '0'; + } else if (var8 >= 'A' && var8 <= 'Z') { + var10 = var8 - '7'; + } else { + if (var8 < 'a' || var8 > 'z') { + throw new NumberFormatException(); + } - if (var1 == 1) { - return var0 * var2; + var10 = var8 - 'W'; + } + + if (var10 >= var1) { + throw new NumberFormatException(); + } + + if (var3) { + var10 = -var10; + } + + int var9 = var5 * var1 + var10; + if (var9 / var1 != var5) { + throw new NumberFormatException(); + } + + var5 = var9; + var4 = true; + } + + if (!var4) { + throw new NumberFormatException(); + } else { + return var5; + } } else { - return var2; + throw new IllegalArgumentException("" + var1); } } - @ObfuscatedName("ae") + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-1588641318" + ) + static final int method595(int var0, int var1) { + int var2 = var0 + var1 * 57; + var2 ^= var2 << 13; + int var3 = (var2 * var2 * 15731 + 789221) * var2 + 1376312589 & Integer.MAX_VALUE; + return var3 >> 19 & 255; + } + + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "(Ldy;IIB)V", - garbageValue = "-51" + descriptor = "(Lbk;I)V", + garbageValue = "2109670231" ) - @Export("runScript") - static void runScript(ScriptEvent var0, int var1, int var2) { - Object[] var3 = var0.args; - Script var4; - if (SongTask.isWorldMapEvent(var0.type)) { - GrandExchangeOfferOwnWorldComparator.worldMapEvent = (WorldMapEvent)var3[0]; - WorldMapElement var5 = class138.WorldMapElement_get(GrandExchangeOfferOwnWorldComparator.worldMapEvent.mapElement); - var4 = GrandExchangeOfferWorldComparator.getWorldMapScript(var0.type, var5.objectId, var5.category); - } else { - int var6 = (Integer)var3[0]; - var4 = class133.getScript(var6); + @Export("PcmStream_disable") + static final void PcmStream_disable(PcmStream var0) { + var0.active = false; + if (var0.sound != null) { + var0.sound.position = 0; } - if (var4 != null) { - class147.runScriptLogic(var0, var4, var1, var2); + for (PcmStream var1 = var0.firstSubStream(); var1 != null; var1 = var0.nextSubStream()) { + PcmStream_disable(var1); } } - - @ObfuscatedName("on") - @ObfuscatedSignature( - descriptor = "(IIIZB)V", - garbageValue = "-59" - ) - public static void method597(int var0, int var1, int var2, boolean var3) { - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.TELEPORT, Client.packetWriter.isaacCipher); - var4.packetBuffer.writeByteNeg(var2); - var4.packetBuffer.writeShort(var1); - var4.packetBuffer.writeIntIME(var3 ? Client.field476 * -1700661189 * -770825997 : 0); - var4.packetBuffer.writeShortAdd(var0); - Client.packetWriter.addNode(var4); - } } \ No newline at end of file diff --git a/osrs/src/main/java/NPCComposition.java b/osrs/src/main/java/NPCComposition.java index e0bed69a0..fe1eb1cd6 100644 --- a/osrs/src/main/java/NPCComposition.java +++ b/osrs/src/main/java/NPCComposition.java @@ -2,165 +2,155 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; @ObfuscatedName("hw") @Implements("NPCComposition") public class NPCComposition extends DualNode { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("NpcDefinition_archive") - public static AbstractArchive NpcDefinition_archive; + static AbstractArchive NpcDefinition_archive; @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lnu;" - ) - public static AbstractArchive field1586; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("NpcDefinition_cached") - public static EvictingDualNodeHashTable NpcDefinition_cached; - @ObfuscatedName("ac") + static EvictingDualNodeHashTable NpcDefinition_cached; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("NpcDefinition_cachedModels") - public static EvictingDualNodeHashTable NpcDefinition_cachedModels; - @ObfuscatedName("kk") - @Export("cameraX") - static int cameraX; - @ObfuscatedName("ai") + static EvictingDualNodeHashTable NpcDefinition_cachedModels; + @ObfuscatedName("cu") + static int field1532; + @ObfuscatedName("au") @Export("id") public int id; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("name") public String name; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("size") public int size; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("models") int[] models; - @ObfuscatedName("af") - int[] field1595; - @ObfuscatedName("ad") + @ObfuscatedName("az") + int[] field1543; + @ObfuscatedName("ap") @Export("idleSequence") public int idleSequence; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("turnLeftSequence") public int turnLeftSequence; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("turnRightSequence") public int turnRightSequence; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("walkSequence") public int walkSequence; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("walkBackSequence") public int walkBackSequence; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("walkLeftSequence") public int walkLeftSequence; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("walkRightSequence") public int walkRightSequence; @ObfuscatedName("am") @Export("runSequence") public int runSequence; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("runBackSequence") public int runBackSequence; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("runLeftSequence") public int runLeftSequence; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("runRightSequence") public int runRightSequence; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("crawlSequence") public int crawlSequence; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("crawlBackSequence") public int crawlBackSequence; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("crawlLeftSequence") public int crawlLeftSequence; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("crawlRightSequence") public int crawlRightSequence; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("recolorTo") public short[] recolorTo; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("retextureTo") public short[] retextureTo; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("actions") public String[] actions; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("drawMapDot") public boolean drawMapDot; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("combatLevel") public int combatLevel; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("widthScale") int widthScale; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("heightScale") int heightScale; @ObfuscatedName("bm") @Export("isVisible") public boolean isVisible; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("ambient") int ambient; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("contrast") int contrast; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("rotation") public int rotation; - @ObfuscatedName("bl") + @ObfuscatedName("bn") @Export("transforms") public int[] transforms; - @ObfuscatedName("bp") + @ObfuscatedName("bo") @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("transformVarp") int transformVarp; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("isInteractable") public boolean isInteractable; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("isClickable") public boolean isClickable; - @ObfuscatedName("br") + @ObfuscatedName("bh") @Export("isFollower") public boolean isFollower; - @ObfuscatedName("be") + @ObfuscatedName("bz") @Export("headIconArchiveIds") int[] headIconArchiveIds; - @ObfuscatedName("bi") + @ObfuscatedName("bc") @Export("headIconSpriteIndexes") short[] headIconSpriteIndexes; - @ObfuscatedName("bz") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("params") IterableNodeHashTable params; @@ -206,10 +196,10 @@ public class NPCComposition extends DualNode { this.headIconSpriteIndexes = null; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1327356589" + descriptor = "(B)V", + garbageValue = "3" ) @Export("postDecode") void postDecode() { @@ -217,8 +207,8 @@ void postDecode() { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "61" + descriptor = "(Luj;B)V", + garbageValue = "-39" ) @Export("decode") void decode(Buffer var1) { @@ -232,10 +222,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-394380179" + descriptor = "(Luj;II)V", + garbageValue = "221871708" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -292,10 +282,10 @@ void decodeNext(Buffer var1, int var2) { } } else if (var2 == 60) { var3 = var1.readUnsignedByte(); - this.field1595 = new int[var3]; + this.field1543 = new int[var3]; for (var4 = 0; var4 < var3; ++var4) { - this.field1595[var4] = var1.readUnsignedShort(); + this.field1543[var4] = var1.readUnsignedShort(); } } else if (var2 == 93) { this.drawMapDot = false; @@ -329,8 +319,8 @@ void decodeNext(Buffer var1, int var2) { this.headIconArchiveIds[var6] = -1; this.headIconSpriteIndexes[var6] = -1; } else { - this.headIconArchiveIds[var6] = var1.method2563(); - this.headIconSpriteIndexes[var6] = (short)var1.method2560(); + this.headIconArchiveIds[var6] = var1.readNullableLargeSmart(); + this.headIconSpriteIndexes[var6] = (short)var1.readShortSmartSub(); } } } else if (var2 == 103) { @@ -357,7 +347,7 @@ void decodeNext(Buffer var1, int var2) { this.crawlLeftSequence = var1.readUnsignedShort(); this.crawlRightSequence = var1.readUnsignedShort(); } else if (var2 == 249) { - this.params = Decimator.readStringIntParameters(var1, this.params); + this.params = class144.readStringIntParameters(var1, this.params); } } else { this.transformVarbit = var1.readUnsignedShort(); @@ -394,24 +384,24 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lib;ILib;ILhq;I)Ljr;", - garbageValue = "209230471" + descriptor = "(Lhx;ILhx;ILhf;B)Lka;", + garbageValue = "-112" ) - public final Model method985(SequenceDefinition var1, int var2, SequenceDefinition var3, int var4, NewShit var5) { + public final Model method940(SequenceDefinition var1, int var2, SequenceDefinition var3, int var4, NewShit var5) { if (this.transforms != null) { NPCComposition var6 = this.transform(); - return var6 == null ? null : var6.method985(var1, var2, var3, var4, var5); + return var6 == null ? null : var6.method940(var1, var2, var3, var4, var5); } else { long var10 = (long)this.id; if (var5 != null) { - var10 |= var5.field1582 << 16; + var10 |= var5.field1531 << 16; } Model var8 = (Model)NpcDefinition_cachedModels.get(var10); if (var8 == null) { - ModelData var9 = this.method987(this.models, var5); + ModelData var9 = this.method942(this.models, var5); if (var9 == null) { return null; } @@ -439,29 +429,29 @@ public final Model method985(SequenceDefinition var1, int var2, SequenceDefiniti } } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lhq;I)Lic;", - garbageValue = "-539413854" + descriptor = "(Lhf;B)Lkq;", + garbageValue = "40" ) - public final ModelData method986(NewShit var1) { + public final ModelData method941(NewShit var1) { if (this.transforms != null) { NPCComposition var2 = this.transform(); - return var2 == null ? null : var2.method986(var1); + return var2 == null ? null : var2.method941(var1); } else { - return this.method987(this.field1595, var1); + return this.method942(this.field1543, var1); } } - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "([ILhq;I)Lic;", - garbageValue = "-1668692143" + descriptor = "([ILhf;I)Lkq;", + garbageValue = "-578729183" ) - ModelData method987(int[] var1, NewShit var2) { + ModelData method942(int[] var1, NewShit var2) { int[] var3 = var1; - if (var2 != null && var2.field1578 != null) { - var3 = var2.field1578; + if (var2 != null && var2.field1527 != null) { + var3 = var2.field1527; } if (var3 == null) { @@ -470,7 +460,7 @@ ModelData method987(int[] var1, NewShit var2) { boolean var4 = false; for (int var5 = 0; var5 < var3.length; ++var5) { - if (var3[var5] != -1 && !field1586.tryLoadFile(var3[var5], 0)) { + if (var3[var5] != -1 && !class191.field1586.tryLoadFile(var3[var5], 0)) { var4 = true; } } @@ -481,7 +471,7 @@ ModelData method987(int[] var1, NewShit var2) { ModelData[] var9 = new ModelData[var3.length]; for (int var6 = 0; var6 < var3.length; ++var6) { - var9[var6] = ModelData.ModelData_get(field1586, var3[var6], 0); + var9[var6] = ModelData.ModelData_get(class191.field1586, var3[var6], 0); } ModelData var10; @@ -498,8 +488,8 @@ ModelData method987(int[] var1, NewShit var2) { int var8; if (this.recolorFrom != null) { var7 = this.recolorTo; - if (var2 != null && var2.field1579 != null) { - var7 = var2.field1579; + if (var2 != null && var2.field1529 != null) { + var7 = var2.field1529; } for (var8 = 0; var8 < this.recolorFrom.length; ++var8) { @@ -509,8 +499,8 @@ ModelData method987(int[] var1, NewShit var2) { if (this.retextureFrom != null) { var7 = this.retextureTo; - if (var2 != null && var2.field1580 != null) { - var7 = var2.field1580; + if (var2 != null && var2.field1528 != null) { + var7 = var2.field1528; } for (var8 = 0; var8 < this.retextureFrom.length; ++var8) { @@ -523,16 +513,16 @@ ModelData method987(int[] var1, NewShit var2) { } } - @ObfuscatedName("ap") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(I)Lhw;", - garbageValue = "601463714" + garbageValue = "-454054205" ) @Export("transform") public final NPCComposition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = ClientPreferences.getVarbit(this.transformVarbit); + var1 = HealthBar.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } @@ -544,13 +534,13 @@ public final NPCComposition transform() { var2 = this.transforms[this.transforms.length - 1]; } - return var2 != -1 ? class90.getNpcDefinition(var2) : null; + return var2 != -1 ? VerticalAlignment.getNpcDefinition(var2) : null; } - @ObfuscatedName("aa") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1759835926" + descriptor = "(B)Z", + garbageValue = "10" ) @Export("transformIsVisible") public boolean transformIsVisible() { @@ -559,7 +549,7 @@ public boolean transformIsVisible() { } else { int var1 = -1; if (this.transformVarbit != -1) { - var1 = ClientPreferences.getVarbit(this.transformVarbit); + var1 = HealthBar.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } @@ -572,33 +562,20 @@ public boolean transformIsVisible() { } } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "666148564" + garbageValue = "-1331214833" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - IterableNodeHashTable var4 = this.params; - int var3; - if (var4 == null) { - var3 = var2; - } else { - IntegerNode var5 = (IntegerNode)var4.get((long)var1); - if (var5 == null) { - var3 = var2; - } else { - var3 = var5.integer; - } - } - - return var3; + return Player.method478(this.params, var1, var2); } - @ObfuscatedName("ad") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;S)Ljava/lang/String;", - garbageValue = "18686" + descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", + garbageValue = "-2078724578" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { @@ -618,163 +595,59 @@ public String getStringParam(int var1, String var2) { return var3; } - @ObfuscatedName("aq") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1337566276" + garbageValue = "1998191718" ) - public boolean method992() { + public boolean method947() { return this.headIconArchiveIds != null && this.headIconSpriteIndexes != null; } - @ObfuscatedName("al") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(I)[I", - garbageValue = "44298877" + garbageValue = "-1546218068" ) - public int[] method993() { + public int[] method948() { return this.headIconArchiveIds; } - @ObfuscatedName("an") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1762616246" + garbageValue = "1923898777" ) - public int method994(int var1) { + public int method949(int var1) { return this.headIconArchiveIds != null && var1 < this.headIconArchiveIds.length ? this.headIconArchiveIds[var1] : -1; } - @ObfuscatedName("ar") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(I)[S", - garbageValue = "1594332022" + garbageValue = "1795535195" ) - public short[] method995() { + public short[] method950() { return this.headIconSpriteIndexes; } - @ObfuscatedName("ab") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(IB)S", - garbageValue = "-67" + garbageValue = "-62" ) - public short method996(int var1) { + public short method951(int var1) { return this.headIconSpriteIndexes != null && var1 < this.headIconSpriteIndexes.length ? this.headIconSpriteIndexes[var1] : -1; } - @ObfuscatedName("ao") + @ObfuscatedName("lq") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1881602206" + descriptor = "(IIIZB)V", + garbageValue = "-115" ) - @Export("readReflectionCheck") - public static void readReflectionCheck(Buffer var0, int var1) { - ReflectionCheck var2 = new ReflectionCheck(); - var2.size = var0.readUnsignedByte(); - var2.id = var0.readInt(); - var2.operations = new int[var2.size]; - var2.creationErrors = new int[var2.size]; - var2.fields = new Field[var2.size]; - var2.intReplaceValues = new int[var2.size]; - var2.methods = new Method[var2.size]; - var2.arguments = new byte[var2.size][][]; - - for (int var3 = 0; var3 < var2.size; ++var3) { - try { - int var4 = var0.readUnsignedByte(); - String var5; - String var6; - int var7; - if (var4 != 0 && var4 != 1 && var4 != 2) { - if (var4 == 3 || var4 == 4) { - var5 = var0.readStringCp1252NullTerminated(); - var6 = var0.readStringCp1252NullTerminated(); - var7 = var0.readUnsignedByte(); - String[] var8 = new String[var7]; - - for (int var9 = 0; var9 < var7; ++var9) { - var8[var9] = var0.readStringCp1252NullTerminated(); - } - - String var20 = var0.readStringCp1252NullTerminated(); - byte[][] var10 = new byte[var7][]; - int var12; - if (var4 == 3) { - for (int var11 = 0; var11 < var7; ++var11) { - var12 = var0.readInt(); - var10[var11] = new byte[var12]; - var0.readBytes(var10[var11], 0, var12); - } - } - - var2.operations[var3] = var4; - Class[] var21 = new Class[var7]; - - for (var12 = 0; var12 < var7; ++var12) { - var21[var12] = ItemLayer.loadClassFromDescriptor(var8[var12]); - } - - Class var22 = ItemLayer.loadClassFromDescriptor(var20); - if (ItemLayer.loadClassFromDescriptor(var5).getClassLoader() == null) { - throw new SecurityException(); - } - - Method[] var13 = ItemLayer.loadClassFromDescriptor(var5).getDeclaredMethods(); - Method[] var14 = var13; - - for (int var15 = 0; var15 < var14.length; ++var15) { - Method var16 = var14[var15]; - if (Reflection.getMethodName(var16).equals(var6)) { - Class[] var17 = Reflection.getParameterTypes(var16); - if (var17.length == var21.length) { - boolean var18 = true; - - for (int var19 = 0; var19 < var21.length; ++var19) { - if (var21[var19] != var17[var19]) { - var18 = false; - break; - } - } - - if (var18 && var22 == var16.getReturnType()) { - var2.methods[var3] = var16; - } - } - } - } - - var2.arguments[var3] = var10; - } - } else { - var5 = var0.readStringCp1252NullTerminated(); - var6 = var0.readStringCp1252NullTerminated(); - var7 = 0; - if (var4 == 1) { - var7 = var0.readInt(); - } - - var2.operations[var3] = var4; - var2.intReplaceValues[var3] = var7; - if (ItemLayer.loadClassFromDescriptor(var5).getClassLoader() == null) { - throw new SecurityException(); - } - - var2.fields[var3] = Reflection.findField(ItemLayer.loadClassFromDescriptor(var5), var6); - } - } catch (ClassNotFoundException var24) { - var2.creationErrors[var3] = -1; - } catch (SecurityException var25) { - var2.creationErrors[var3] = -2; - } catch (NullPointerException var26) { - var2.creationErrors[var3] = -3; - } catch (Exception var27) { - var2.creationErrors[var3] = -4; - } catch (Throwable var28) { - var2.creationErrors[var3] = -5; - } + static final void method952(int var0, int var1, int var2, boolean var3) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + UrlRequest.resizeInterface(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0], -1, var1, var2, var3); } - - class36.reflectionChecks.addFirst(var2); } } \ No newline at end of file diff --git a/osrs/src/main/java/NanoClock.java b/osrs/src/main/java/NanoClock.java index 3569396a0..4be0ecc9c 100644 --- a/osrs/src/main/java/NanoClock.java +++ b/osrs/src/main/java/NanoClock.java @@ -3,31 +3,31 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gs") +@ObfuscatedName("he") @Implements("NanoClock") public class NanoClock extends Clock { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("lastTimeNano") long lastTimeNano; - public NanoClock() { + NanoClock() { this.lastTimeNano = System.nanoTime(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1021685028" + garbageValue = "-1366277024" ) @Export("mark") public void mark() { this.lastTimeNano = System.nanoTime(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "20" + descriptor = "(III)I", + garbageValue = "-2001388980" ) @Export("wait") public int wait(int var1, int var2) { @@ -37,11 +37,11 @@ public int wait(int var1, int var2) { var5 = var3; } - PendingSpawn.method505(var5 / 1000000L); + class219.method1104(var5 / 1000000L); long var7 = System.nanoTime(); int var9; - for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += 1000000L * (long)var1) { + for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += (long)var1 * 1000000L) { ++var9; } diff --git a/osrs/src/main/java/NewShit.java b/osrs/src/main/java/NewShit.java index d3cbae177..ee1197339 100644 --- a/osrs/src/main/java/NewShit.java +++ b/osrs/src/main/java/NewShit.java @@ -3,48 +3,185 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hq") +@ObfuscatedName("hf") @Implements("NewShit") public class NewShit { - @ObfuscatedName("hr") - static int[] field1577; - @ObfuscatedName("au") - public long field1582; - @ObfuscatedName("ae") - int[] field1578; - @ObfuscatedName("ao") - short[] field1579; + @ObfuscatedName("we") + @ObfuscatedSignature( + descriptor = "Ltn;" + ) + @Export("worldMap") + static WorldMap worldMap; + @ObfuscatedName("ck") + @Export("otp") + static String otp; + @ObfuscatedName("jr") + @Export("baseX") + static int baseX; @ObfuscatedName("at") - short[] field1580; - @ObfuscatedName("ac") - public boolean field1581; + public long field1531; + @ObfuscatedName("ah") + int[] field1527; + @ObfuscatedName("ar") + short[] field1529; + @ObfuscatedName("ao") + short[] field1528; + @ObfuscatedName("ab") + public boolean field1530; public NewShit(long var1, int[] var3, short[] var4, short[] var5, boolean var6) { - this.field1581 = false; - this.field1582 = var1; - this.field1578 = var3; - this.field1579 = var4; - this.field1580 = var5; - this.field1581 = var6; + this.field1530 = false; + this.field1531 = var1; + this.field1527 = var3; + this.field1529 = var4; + this.field1528 = var5; + this.field1530 = var6; } - @ObfuscatedName("ae") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "29" + descriptor = "([BI)Ldt;", + garbageValue = "-357186857" ) - public static int method979(int var0) { - return var0 >>> 4 & class508.field4121; + @Export("newScript") + static Script newScript(byte[] var0) { + Script var1 = new Script(); + Buffer var2 = new Buffer(var0); + var2.offset = var2.array.length - 2; + int var3 = var2.readUnsignedShort(); + int var4 = var2.array.length - 2 - var3 - 12; + var2.offset = var4; + int var5 = var2.readInt(); + var1.localIntCount = var2.readUnsignedShort(); + var1.localStringCount = var2.readUnsignedShort(); + var1.intArgumentCount = var2.readUnsignedShort(); + var1.stringArgumentCount = var2.readUnsignedShort(); + int var6 = var2.readUnsignedByte(); + int var7; + int var8; + if (var6 > 0) { + var1.switches = var1.newIterableNodeHashTable(var6); + + for (var7 = 0; var7 < var6; ++var7) { + var8 = var2.readUnsignedShort(); + IterableNodeHashTable var9 = new IterableNodeHashTable(var8 > 0 ? class184.method927(var8) : 1); + var1.switches[var7] = var9; + + while (var8-- > 0) { + int var10 = var2.readInt(); + int var11 = var2.readInt(); + var9.put(new IntegerNode(var11), (long)var10); + } + } + } + + var2.offset = 0; + var1.instructions = var2.readStringCp1252NullTerminatedOrNull(); + var1.opcodes = new int[var5]; + var1.intOperands = new int[var5]; + var1.stringOperands = new String[var5]; + + for (var7 = 0; var2.offset < var4; var1.opcodes[var7++] = var8) { + var8 = var2.readUnsignedShort(); + if (var8 == 3) { + var1.stringOperands[var7] = var2.readStringCp1252NullTerminated(); + } else if (var8 < 100 && var8 != 21 && var8 != 38 && var8 != 39) { + var1.intOperands[var7] = var2.readInt(); + } else { + var1.intOperands[var7] = var2.readUnsignedByte(); + } + } + + return var1; } - @ObfuscatedName("nc") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lmi;I)I", - garbageValue = "-282927864" + descriptor = "(Ljava/lang/CharSequence;II[BIB)I", + garbageValue = "48" ) - @Export("getWidgetFlags") - static int getWidgetFlags(Widget var0) { - IntegerNode var1 = (IntegerNode)Client.widgetFlags.get((long)var0.childIndex + ((long)var0.id << 32)); - return var1 != null ? var1.integer : var0.flags; + @Export("encodeStringCp1252") + public static int encodeStringCp1252(CharSequence var0, int var1, int var2, byte[] var3, int var4) { + int var5 = var2 - var1; + + for (int var6 = 0; var6 < var5; ++var6) { + char var7 = var0.charAt(var6 + var1); + if ((var7 <= 0 || var7 >= 128) && (var7 < 160 || var7 > 255)) { + if (var7 == 8364) { + var3[var6 + var4] = -128; + } else if (var7 == 8218) { + var3[var6 + var4] = -126; + } else if (var7 == 402) { + var3[var6 + var4] = -125; + } else if (var7 == 8222) { + var3[var6 + var4] = -124; + } else if (var7 == 8230) { + var3[var6 + var4] = -123; + } else if (var7 == 8224) { + var3[var6 + var4] = -122; + } else if (var7 == 8225) { + var3[var6 + var4] = -121; + } else if (var7 == 710) { + var3[var6 + var4] = -120; + } else if (var7 == 8240) { + var3[var6 + var4] = -119; + } else if (var7 == 352) { + var3[var6 + var4] = -118; + } else if (var7 == 8249) { + var3[var6 + var4] = -117; + } else if (var7 == 338) { + var3[var6 + var4] = -116; + } else if (var7 == 381) { + var3[var6 + var4] = -114; + } else if (var7 == 8216) { + var3[var6 + var4] = -111; + } else if (var7 == 8217) { + var3[var6 + var4] = -110; + } else if (var7 == 8220) { + var3[var6 + var4] = -109; + } else if (var7 == 8221) { + var3[var6 + var4] = -108; + } else if (var7 == 8226) { + var3[var6 + var4] = -107; + } else if (var7 == 8211) { + var3[var6 + var4] = -106; + } else if (var7 == 8212) { + var3[var6 + var4] = -105; + } else if (var7 == 732) { + var3[var6 + var4] = -104; + } else if (var7 == 8482) { + var3[var6 + var4] = -103; + } else if (var7 == 353) { + var3[var6 + var4] = -102; + } else if (var7 == 8250) { + var3[var6 + var4] = -101; + } else if (var7 == 339) { + var3[var6 + var4] = -100; + } else if (var7 == 382) { + var3[var6 + var4] = -98; + } else if (var7 == 376) { + var3[var6 + var4] = -97; + } else { + var3[var6 + var4] = 63; + } + } else { + var3[var6 + var4] = (byte)var7; + } + } + + return var5; + } + + @ObfuscatedName("nr") + @ObfuscatedSignature( + descriptor = "([BII)V", + garbageValue = "2008735118" + ) + static void method936(byte[] var0, int var1) { + if (Client.randomDatData == null) { + Client.randomDatData = new byte[24]; + } + + class421.writeRandomDat(var0, var1, Client.randomDatData, 0, 24); } } \ No newline at end of file diff --git a/osrs/src/main/java/Node.java b/osrs/src/main/java/Node.java index 7b7f7a394..d156db3da 100644 --- a/osrs/src/main/java/Node.java +++ b/osrs/src/main/java/Node.java @@ -3,26 +3,26 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sj") +@ObfuscatedName("sh") @Implements("Node") public class Node { - @ObfuscatedName("hq") + @ObfuscatedName("hp") @Export("key") public long key; - @ObfuscatedName("hw") + @ObfuscatedName("hl") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("previous") public Node previous; - @ObfuscatedName("hy") + @ObfuscatedName("hq") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("next") public Node next; - @ObfuscatedName("gg") + @ObfuscatedName("fz") @Export("remove") public void remove() { if (this.next != null) { @@ -33,7 +33,7 @@ public void remove() { } } - @ObfuscatedName("gw") + @ObfuscatedName("fx") @Export("hasNext") public boolean hasNext() { return this.next != null; diff --git a/osrs/src/main/java/NodeDeque.java b/osrs/src/main/java/NodeDeque.java index 10dcfc715..46972689c 100644 --- a/osrs/src/main/java/NodeDeque.java +++ b/osrs/src/main/java/NodeDeque.java @@ -3,18 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ow") +@ObfuscatedName("on") @Implements("NodeDeque") public class NodeDeque { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("sentinel") public Node sentinel; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("current") Node current; @@ -25,7 +25,7 @@ public NodeDeque() { this.sentinel.next = this.sentinel; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("clear") public void clear() { while (true) { @@ -39,9 +39,9 @@ public void clear() { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsj;)V" + descriptor = "(Lsh;)V" ) @Export("addFirst") public void addFirst(Node var1) { @@ -55,9 +55,9 @@ public void addFirst(Node var1) { var1.previous.next = var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lsj;)V" + descriptor = "(Lsh;)V" ) @Export("addLast") public void addLast(Node var1) { @@ -71,9 +71,9 @@ public void addLast(Node var1) { var1.previous.next = var1; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("removeLast") public Node removeLast() { @@ -86,9 +86,9 @@ public Node removeLast() { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("removeFirst") public Node removeFirst() { @@ -101,9 +101,9 @@ public Node removeFirst() { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("last") public Node last() { @@ -117,9 +117,9 @@ public Node last() { } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("first") public Node first() { @@ -133,9 +133,9 @@ public Node first() { } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("previous") public Node previous() { @@ -149,9 +149,9 @@ public Node previous() { } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("next") public Node next() { @@ -165,14 +165,14 @@ public Node next() { } } - @ObfuscatedName("ad") - public boolean method1997() { + @ObfuscatedName("ap") + public boolean method2016() { return this.sentinel.previous == this.sentinel; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lsj;Lsj;)V" + descriptor = "(Lsh;Lsh;)V" ) @Export("NodeDeque_addBefore") public static void NodeDeque_addBefore(Node var0, Node var1) { diff --git a/osrs/src/main/java/NodeHashTable.java b/osrs/src/main/java/NodeHashTable.java index 74a687646..e6f345934 100644 --- a/osrs/src/main/java/NodeHashTable.java +++ b/osrs/src/main/java/NodeHashTable.java @@ -3,31 +3,31 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("so") +@ObfuscatedName("tw") @Implements("NodeHashTable") public final class NodeHashTable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("size") int size; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "[Lsj;" + descriptor = "[Lsh;" ) @Export("buckets") Node[] buckets; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("currentGet") Node currentGet; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lsj;" + descriptor = "Lsh;" ) @Export("current") Node current; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("index") int index; @@ -44,9 +44,9 @@ public NodeHashTable(int var1) { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(J)Lsj;" + descriptor = "(J)Lsh;" ) @Export("get") public Node get(long var1) { @@ -64,8 +64,8 @@ public Node get(long var1) { return null; } - @ObfuscatedName("ae") - public int method2456() { + @ObfuscatedName("ah") + public int method2468() { int var1 = 0; for (int var2 = 0; var2 < this.size; ++var2) { @@ -79,9 +79,9 @@ public int method2456() { return var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lsj;J)V" + descriptor = "(Lsh;J)V" ) @Export("put") public void put(Node var1, long var2) { @@ -97,9 +97,9 @@ public void put(Node var1, long var2) { var1.key = var2; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("first") public Node first() { @@ -107,9 +107,9 @@ public Node first() { return this.next(); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "()Lsj;" + descriptor = "()Lsh;" ) @Export("next") public Node next() { diff --git a/osrs/src/main/java/Null.java b/osrs/src/main/java/Null.java deleted file mode 100644 index 4905f7268..000000000 --- a/osrs/src/main/java/Null.java +++ /dev/null @@ -1,26 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedName; - -@Implements("org/json/JSONObject$Null") -@ObfuscatedName("org/json/JSONObject$Null") -final class Null { - - - Null() { - } - - public final Object clone() { - return this; - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - return var1 == null || this == var1; - } - - public String toString() { - return "null"; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/OAuthApi.java b/osrs/src/main/java/OAuthApi.java deleted file mode 100644 index a0c704f6f..000000000 --- a/osrs/src/main/java/OAuthApi.java +++ /dev/null @@ -1,5 +0,0 @@ -import net.runelite.mapping.Implements; - -@Implements("OAuthApi") -public interface OAuthApi { -} \ No newline at end of file diff --git a/osrs/src/main/java/ObfuscatedClassMap.java b/osrs/src/main/java/ObfuscatedClassMap.java deleted file mode 100644 index 65aafe687..000000000 --- a/osrs/src/main/java/ObfuscatedClassMap.java +++ /dev/null @@ -1,8 +0,0 @@ -import java.util.HashMap; - -public class ObfuscatedClassMap extends HashMap { - public static ObfuscatedClassMap INSTANCE = new ObfuscatedClassMap(); - static { - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/ObjTypeCustomisation.java b/osrs/src/main/java/ObjTypeCustomisation.java index 3be82be48..a86b01049 100644 --- a/osrs/src/main/java/ObjTypeCustomisation.java +++ b/osrs/src/main/java/ObjTypeCustomisation.java @@ -3,24 +3,26 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ho") +@ObfuscatedName("gx") @Implements("ObjTypeCustomisation") public class ObjTypeCustomisation { - @ObfuscatedName("ef") - @Export("mouseCam") - static boolean mouseCam; - @ObfuscatedName("jw") - @Export("regionLandArchiveIds") - static int[] regionLandArchiveIds; - @ObfuscatedName("ao") + @ObfuscatedName("aa") + static int field1431; + @ObfuscatedName("su") + @ObfuscatedSignature( + descriptor = "Lun;" + ) + @Export("privateChatMode") + static PrivateChatMode privateChatMode; + @ObfuscatedName("ar") @Export("recol") public short[] recol; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("retex") public short[] retex; - public ObjTypeCustomisation(int var1) { - ItemComposition var2 = InvDefinition.ItemDefinition_get(var1); + ObjTypeCustomisation(int var1) { + ItemComposition var2 = class214.ItemDefinition_get(var1); if (var2.hasRecolor()) { this.recol = new short[var2.recolorTo.length]; System.arraycopy(var2.recolorTo, 0, this.recol, 0, this.recol.length); @@ -33,61 +35,12 @@ public ObjTypeCustomisation(int var1) { } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)Lhx;", - garbageValue = "1562515394" - ) - @Export("getParamDefinition") - public static ParamComposition getParamDefinition(int var0) { - ParamComposition var1 = (ParamComposition)ParamComposition.ParamDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = ParamComposition.ParamDefinition_archive.takeFile(11, var0); - var1 = new ParamComposition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); - ParamComposition.ParamDefinition_cached.put(var1, (long)var0); - return var1; - } - } - - @ObfuscatedName("bz") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1153015817" - ) - static int method935(int var0, Script var1, boolean var2) { - if (var0 == 6809) { - int var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - ObjectComposition var4 = WorldMapElement.getObjectDefinition(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4 != null ? var4.name : ""; - return 1; - } else { - return 2; - } - } - - @ObfuscatedName("ot") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "-1860309613" + descriptor = "(B)V", + garbageValue = "-19" ) - static String method936(String var0) { - PlayerType[] var1 = MidiPcmStream.PlayerType_values(); - - for (int var2 = 0; var2 < var1.length; ++var2) { - PlayerType var3 = var1[var2]; - if (var3.modIcon != -1 && var0.startsWith(Tile.addImageTag(var3.modIcon))) { - var0 = var0.substring(6 + Integer.toString(var3.modIcon).length()); - break; - } - } - - return var0; + public static void method876() { + FileSystem.FileSystem_cacheFiles.clear(); } } \ No newline at end of file diff --git a/osrs/src/main/java/ObjectComposition.java b/osrs/src/main/java/ObjectComposition.java index ae1ce2517..04d9dc79f 100644 --- a/osrs/src/main/java/ObjectComposition.java +++ b/osrs/src/main/java/ObjectComposition.java @@ -3,185 +3,188 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hv") +@ObfuscatedName("hs") @Implements("ObjectComposition") public class ObjectComposition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("ObjectDefinition_isLowDetail") - public static boolean ObjectDefinition_isLowDetail; - @ObfuscatedName("ae") + static boolean ObjectDefinition_isLowDetail; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("ObjectDefinition_archive") - public static AbstractArchive ObjectDefinition_archive; - @ObfuscatedName("ao") + static AbstractArchive ObjectDefinition_archive; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("ObjectDefinition_modelsArchive") - public static AbstractArchive ObjectDefinition_modelsArchive; - @ObfuscatedName("at") + static AbstractArchive ObjectDefinition_modelsArchive; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ObjectDefinition_cached") static EvictingDualNodeHashTable ObjectDefinition_cached; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ObjectDefinition_cachedModelData") public static EvictingDualNodeHashTable ObjectDefinition_cachedModelData; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ObjectDefinition_cachedEntities") static EvictingDualNodeHashTable ObjectDefinition_cachedEntities; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ObjectDefinition_cachedModels") static EvictingDualNodeHashTable ObjectDefinition_cachedModels; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "[Lic;" + descriptor = "[Lkq;" ) - static ModelData[] field1715; - @ObfuscatedName("aa") + @Export("modelDataArray") + static ModelData[] modelDataArray; + @ObfuscatedName("go") + static String field1664; + @ObfuscatedName("al") @Export("id") public int id; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("modelIds") int[] modelIds; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("models") int[] models; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("name") public String name; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("sizeX") public int sizeX; @ObfuscatedName("am") @Export("sizeY") public int sizeY; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("interactType") public int interactType; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("boolean1") public boolean boolean1; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("int1") public int int1; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("clipType") int clipType; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("nonFlatShading") boolean nonFlatShading; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("modelClipped") public boolean modelClipped; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("animationId") public int animationId; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("int2") public int int2; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("ambient") int ambient; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("contrast") int contrast; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("actions") public String[] actions; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("mapIconId") public int mapIconId; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("mapSceneId") public int mapSceneId; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("isRotated") boolean isRotated; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("clipped") public boolean clipped; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("modelSizeX") int modelSizeX; @ObfuscatedName("bm") @Export("modelHeight") int modelHeight; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("modelSizeY") int modelSizeY; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("offsetX") int offsetX; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("offsetHeight") int offsetHeight; - @ObfuscatedName("bl") + @ObfuscatedName("bn") @Export("offsetY") int offsetY; - @ObfuscatedName("bp") + @ObfuscatedName("bo") @Export("boolean2") public boolean boolean2; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("isSolid") boolean isSolid; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("int3") public int int3; - @ObfuscatedName("bb") + @ObfuscatedName("by") @Export("transforms") public int[] transforms; - @ObfuscatedName("br") + @ObfuscatedName("bh") @Export("transformVarbit") int transformVarbit; - @ObfuscatedName("be") + @ObfuscatedName("bz") @Export("transformVarp") int transformVarp; - @ObfuscatedName("bi") + @ObfuscatedName("bc") @Export("ambientSoundId") public int ambientSoundId; - @ObfuscatedName("bz") + @ObfuscatedName("bs") @Export("int7") public int int7; @ObfuscatedName("bx") @Export("int5") public int int5; - @ObfuscatedName("bn") + @ObfuscatedName("bb") @Export("int6") public int int6; - @ObfuscatedName("bw") + @ObfuscatedName("bk") @Export("soundEffectIds") public int[] soundEffectIds; - @ObfuscatedName("bc") + @ObfuscatedName("br") @Export("boolean3") public boolean boolean3; - @ObfuscatedName("bg") + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("params") IterableNodeHashTable params; @@ -192,7 +195,7 @@ public class ObjectComposition extends DualNode { ObjectDefinition_cachedModelData = new EvictingDualNodeHashTable(500); ObjectDefinition_cachedEntities = new EvictingDualNodeHashTable(30); ObjectDefinition_cachedModels = new EvictingDualNodeHashTable(30); - field1715 = new ModelData[4]; + modelDataArray = new ModelData[4]; } ObjectComposition() { @@ -232,10 +235,10 @@ public class ObjectComposition extends DualNode { this.boolean3 = true; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1533225250" + descriptor = "(S)V", + garbageValue = "-9893" ) @Export("postDecode") void postDecode() { @@ -260,8 +263,8 @@ void postDecode() { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "814995396" + descriptor = "(Luj;B)V", + garbageValue = "-11" ) @Export("decode") void decode(Buffer var1) { @@ -275,10 +278,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "-24" + descriptor = "(Luj;II)V", + garbageValue = "1972303486" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -288,7 +291,7 @@ void decodeNext(Buffer var1, int var2) { var3 = var1.readUnsignedByte(); if (var3 > 0) { if (this.modelIds != null && !ObjectDefinition_isLowDetail) { - var1.offset += 3 * var3; + var1.offset += var3 * 3; } else { this.models = new int[var3]; this.modelIds = new int[var3]; @@ -305,7 +308,7 @@ void decodeNext(Buffer var1, int var2) { var3 = var1.readUnsignedByte(); if (var3 > 0) { if (this.modelIds != null && !ObjectDefinition_isLowDetail) { - var1.offset += var3 * 2; + var1.offset += 2 * var3; } else { this.models = null; this.modelIds = new int[var3]; @@ -417,7 +420,7 @@ void decodeNext(Buffer var1, int var2) { } else if (var2 == 89) { this.boolean3 = false; } else if (var2 == 249) { - this.params = Decimator.readStringIntParameters(var1, this.params); + this.params = class144.readStringIntParameters(var1, this.params); } } else { this.transformVarbit = var1.readUnsignedShort(); @@ -453,12 +456,12 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-972773688" + garbageValue = "-813448886" ) - public final boolean method1040(int var1) { + public final boolean method1003(int var1) { if (this.models != null) { for (int var4 = 0; var4 < this.models.length; ++var4) { if (this.models[var4] == var1) { @@ -482,10 +485,10 @@ public final boolean method1040(int var1) { } } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-559148506" + descriptor = "(B)Z", + garbageValue = "50" ) @Export("needsModelFiles") public final boolean needsModelFiles() { @@ -502,10 +505,10 @@ public final boolean needsModelFiles() { } } - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(II[[IIIII)Lik;", - garbageValue = "1807425281" + descriptor = "(II[[IIIII)Lkt;", + garbageValue = "-484347663" ) @Export("getEntity") public final Renderable getEntity(int var1, int var2, int[][] var3, int var4, int var5, int var6) { @@ -543,17 +546,17 @@ public final Renderable getEntity(int var1, int var2, int[][] var3, int var4, in if (var9 instanceof Model) { var9 = ((Model)var9).contourGround(var3, var4, var5, var6, true, this.clipType); } else if (var9 instanceof ModelData) { - var9 = ((ModelData)var9).method1161(var3, var4, var5, var6, true, this.clipType); + var9 = ((ModelData)var9).method1391(var3, var4, var5, var6, true, this.clipType); } } return (Renderable)var9; } - @ObfuscatedName("ap") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(II[[IIIII)Ljr;", - garbageValue = "186697514" + descriptor = "(II[[IIIII)Lka;", + garbageValue = "-593704599" ) @Export("getModel") public final Model getModel(int var1, int var2, int[][] var3, int var4, int var5, int var6) { @@ -582,10 +585,10 @@ public final Model getModel(int var1, int var2, int[][] var3, int var4, int var5 return var9; } - @ObfuscatedName("aa") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(II[[IIIILib;II)Ljr;", - garbageValue = "-749242095" + descriptor = "(II[[IIIILhx;IB)Lka;", + garbageValue = "-49" ) @Export("getModelDynamic") public final Model getModelDynamic(int var1, int var2, int[][] var3, int var4, int var5, int var6, SequenceDefinition var7, int var8) { @@ -624,10 +627,10 @@ public final Model getModelDynamic(int var1, int var2, int[][] var3, int var4, i } } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IIB)Lic;", - garbageValue = "54" + descriptor = "(III)Lkq;", + garbageValue = "63656086" ) @Export("getModelData") final ModelData getModelData(int var1, int var2) { @@ -665,19 +668,19 @@ final ModelData getModelData(int var1, int var2) { } if (var4) { - var3.method1170(); + var3.method1400(); } ObjectDefinition_cachedModelData.put(var3, (long)var7); } if (var5 > 1) { - field1715[var6] = var3; + modelDataArray[var6] = var3; } } if (var5 > 1) { - var3 = new ModelData(field1715, var5); + var3 = new ModelData(modelDataArray, var5); } } else { int var9 = -1; @@ -707,7 +710,7 @@ final ModelData getModelData(int var1, int var2) { } if (var10) { - var3.method1170(); + var3.method1400(); } ObjectDefinition_cachedModelData.put(var3, (long)var5); @@ -729,17 +732,17 @@ final ModelData getModelData(int var1, int var2) { ModelData var8 = new ModelData(var3, var2 == 0 && !var4 && !var11, this.recolorFrom == null, null == this.retextureFrom, true); if (var1 == 4 && var2 > 3) { - var8.method1166(256); + var8.method1396(256); var8.changeOffset(45, 0, -45); } var2 &= 3; if (var2 == 1) { - var8.method1163(); + var8.method1393(); } else if (var2 == 2) { - var8.method1164(); + var8.method1394(); } else if (var2 == 3) { - var8.method1165(); + var8.method1395(); } if (this.recolorFrom != null) { @@ -765,16 +768,16 @@ final ModelData getModelData(int var1, int var2) { return var8; } - @ObfuscatedName("ad") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(I)Lhv;", - garbageValue = "1529858789" + descriptor = "(I)Lhs;", + garbageValue = "809573033" ) @Export("transform") public final ObjectComposition transform() { int var1 = -1; if (this.transformVarbit != -1) { - var1 = ClientPreferences.getVarbit(this.transformVarbit); + var1 = HealthBar.getVarbit(this.transformVarbit); } else if (this.transformVarp != -1) { var1 = Varps.Varps_main[this.transformVarp]; } @@ -786,23 +789,23 @@ public final ObjectComposition transform() { var2 = this.transforms[this.transforms.length - 1]; } - return var2 != -1 ? WorldMapElement.getObjectDefinition(var2) : null; + return var2 != -1 ? WorldMapSection2.getObjectDefinition(var2) : null; } - @ObfuscatedName("aq") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-545468094" + garbageValue = "-2010138774" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - return class14.method39(this.params, var1, var2); + return Player.method478(this.params, var1, var2); } - @ObfuscatedName("al") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;B)Ljava/lang/String;", - garbageValue = "-40" + descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", + garbageValue = "-2012679893" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { @@ -822,10 +825,10 @@ public String getStringParam(int var1, String var2) { return var3; } - @ObfuscatedName("ar") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1618181755" + descriptor = "(B)Z", + garbageValue = "0" ) @Export("hasSound") public boolean hasSound() { @@ -834,7 +837,7 @@ public boolean hasSound() { } else { for (int var1 = 0; var1 < this.transforms.length; ++var1) { if (this.transforms[var1] != -1) { - ObjectComposition var2 = WorldMapElement.getObjectDefinition(this.transforms[var1]); + ObjectComposition var2 = WorldMapSection2.getObjectDefinition(this.transforms[var1]); if (var2.ambientSoundId != -1 || var2.soundEffectIds != null) { return true; } @@ -845,17 +848,25 @@ public boolean hasSound() { } } - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1838195729" + descriptor = "(II)Lhp;", + garbageValue = "523066781" ) - static void method1042() { - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { - Login.currentLoginField = 1; + @Export("getEnum") + public static EnumComposition getEnum(int var0) { + EnumComposition var1 = (EnumComposition)EnumComposition.EnumDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - Login.currentLoginField = 0; - } + byte[] var2 = EnumComposition.EnumDefinition_archive.takeFile(8, var0); + var1 = new EnumComposition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + EnumComposition.EnumDefinition_cached.put(var1, (long)var0); + return var1; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/ObjectNode.java b/osrs/src/main/java/ObjectNode.java index 718e396be..0e1a9de85 100644 --- a/osrs/src/main/java/ObjectNode.java +++ b/osrs/src/main/java/ObjectNode.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("sd") +@ObfuscatedName("sw") @Implements("ObjectNode") public class ObjectNode extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("obj") public final Object obj; diff --git a/osrs/src/main/java/ObjectSound.java b/osrs/src/main/java/ObjectSound.java index fd29bc816..53c72d370 100644 --- a/osrs/src/main/java/ObjectSound.java +++ b/osrs/src/main/java/ObjectSound.java @@ -6,67 +6,56 @@ @ObfuscatedName("ca") @Implements("ObjectSound") public final class ObjectSound extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("objectSounds") static NodeDeque objectSounds; - @ObfuscatedName("bj") - @Export("fontHelvetica13") - static java.awt.Font fontHelvetica13; - @ObfuscatedName("fg") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive4") - static Archive archive4; - @ObfuscatedName("jd") - static int field686; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("plane") int plane; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("x") int x; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("y") int y; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("maxX") int maxX; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("maxY") int maxY; - @ObfuscatedName("az") - int field702; - @ObfuscatedName("ap") + @ObfuscatedName("aa") + int field691; + @ObfuscatedName("ac") @Export("soundEffectId") int soundEffectId; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lbn;" + descriptor = "Lbb;" ) @Export("stream1") RawPcmStream stream1; - @ObfuscatedName("af") + @ObfuscatedName("az") + int field700; + @ObfuscatedName("ap") int field696; - @ObfuscatedName("ad") - int field694; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("soundEffectIds") int[] soundEffectIds; - @ObfuscatedName("al") - int field698; - @ObfuscatedName("an") + @ObfuscatedName("ax") + int field699; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Lbn;" + descriptor = "Lbb;" ) @Export("stream2") RawPcmStream stream2; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lhv;" + descriptor = "Lhs;" ) @Export("obj") ObjectComposition obj; @@ -78,10 +67,10 @@ public final class ObjectSound extends Node { ObjectSound() { } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1805200159" + garbageValue = "12079465" ) @Export("set") void set() { @@ -89,225 +78,261 @@ void set() { ObjectComposition var2 = this.obj.transform(); if (var2 != null) { this.soundEffectId = var2.ambientSoundId; - this.field702 = var2.int7 * 128; - this.field696 = var2.int5; - this.field694 = var2.int6; + this.field691 = var2.int7 * 128; + this.field700 = var2.int5; + this.field696 = var2.int6; this.soundEffectIds = var2.soundEffectIds; } else { this.soundEffectId = -1; - this.field702 = 0; + this.field691 = 0; + this.field700 = 0; this.field696 = 0; - this.field694 = 0; this.soundEffectIds = null; } if (var1 != this.soundEffectId && this.stream1 != null) { - class162.pcmStreamMixer.removeSubStream(this.stream1); + LoginScreenAnimation.pcmStreamMixer.removeSubStream(this.stream1); this.stream1 = null; } } - @ObfuscatedName("ae") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-42" + descriptor = "(III)I", + garbageValue = "-737174701" ) - static void method414() { - Tiles.Tiles_underlays = null; - class227.Tiles_overlays = null; - class172.Tiles_shapes = null; - ModelData0.field2282 = null; - BufferedNetSocket.field3820 = null; - MoveSpeed.field1924 = null; - class162.field1419 = null; - Fonts.Tiles_hue = null; - class466.Tiles_saturation = null; - Tiles.Tiles_lightness = null; - class128.Tiles_hueMultiplier = null; - Interpreter.field710 = null; + static int method423(int var0, int var1) { + for (int var2 = 0; var2 < 8; ++var2) { + if (var1 <= var0 + 30) { + return var2; + } + + var0 += 30; + var0 += var2 != 1 && var2 != 3 ? 5 : 20; + } + + return 0; } - @ObfuscatedName("bd") + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "449179665" + descriptor = "(ILdt;ZB)I", + garbageValue = "2" ) - static int method415(int var0, Script var1, boolean var2) { - if (var0 == 3800) { - if (Players.guestClanSettings != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - class466.field3912 = Players.guestClanSettings; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - + static int method425(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 4200) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class214.ItemDefinition_get(var3).name; return 1; } else { - int var3; - if (var0 == 3801) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (Client.currentClanSettings[var3] != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - class466.field3912 = Client.currentClanSettings[var3]; + int var4; + ItemComposition var5; + if (var0 == 4201) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = class214.ItemDefinition_get(var3); + if (var4 >= 1 && var4 <= 5 && var5.groundActions[var4 - 1] != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var5.groundActions[var4 - 1]; } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; } return 1; - } else if (var0 == 3802) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = class466.field3912.name; - return 1; - } else if (var0 == 3803) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.allowGuests ? 1 : 0; - return 1; - } else if (var0 == 3804) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1383; - return 1; - } else if (var0 == 3805) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1385; - return 1; - } else if (var0 == 3806) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1384; - return 1; - } else if (var0 == 3807) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1386; - return 1; - } else if (var0 == 3809) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.memberCount; - return 1; - } else if (var0 == 3810) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = class466.field3912.memberNames[var3]; - return 1; - } else if (var0 == 3811) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.memberRanks[var3]; + } else if (var0 == 4202) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = class214.ItemDefinition_get(var3); + if (var4 >= 1 && var4 <= 5 && var5.inventoryActions[var4 - 1] != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var5.inventoryActions[var4 - 1]; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + return 1; - } else if (var0 == 3812) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.bannedMemberCount; + } else if (var0 == 4203) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).price; return 1; - } else if (var0 == 3813) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = class466.field3912.bannedMemberNames[var3]; + } else if (var0 == 4204) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).isStackable == 1 ? 1 : 0; return 1; } else { - int var5; - int var6; - if (var0 == 3814) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.method809(var3, var6, var5); - return 1; - } else if (var0 == 3815) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.currentOwner; - return 1; - } else if (var0 == 3816) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1391; - return 1; - } else if (var0 == 3817) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.method808(Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]); - return 1; - } else if (var0 == 3818) { - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = class466.field3912.getSortedMembers()[Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]]; + ItemComposition var6; + if (var0 == 4205) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class214.ItemDefinition_get(var3); + if (var6.noteTemplate == -1 && var6.note >= 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.note; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + } + return 1; - } else if (var0 == 3819) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - class386.method2027(var6, var3); + } else if (var0 == 4206) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class214.ItemDefinition_get(var3); + if (var6.noteTemplate >= 0 && var6.note >= 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.note; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + } + return 1; - } else if (var0 == 3820) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1393[var3]; + } else if (var0 == 4207) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).isMembersOnly ? 1 : 0; return 1; - } else { - if (var0 == 3821) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - boolean var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1] == 1; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - SoundSystem.method219(var5, var3, var4); + } else if (var0 == 4208) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class214.ItemDefinition_get(var3); + if (var6.placeholderTemplate == -1 && var6.placeholder >= 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.placeholder; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; } - if (var0 == 3822) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class466.field3912.field1382[var3] ? 1 : 0; - return 1; - } else if (var0 == 3850) { - if (VerticalAlignment.guestClanChannel != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - class396.field3679 = VerticalAlignment.guestClanChannel; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } + return 1; + } else if (var0 == 4209) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class214.ItemDefinition_get(var3); + if (var6.placeholderTemplate >= 0 && var6.placeholder >= 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.placeholder; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + } + return 1; + } else if (var0 == 4210) { + String var7 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + UrlRequest.findItemDefinitions(var7, var4 == 1); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = BuddyRankComparator.foundItemIdCount; + return 1; + } else if (var0 != 4211) { + if (var0 == 4212) { + ApproximateRouteStrategy.foundItemIndex = 0; return 1; - } else if (var0 == 3851) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (Client.currentClanChannels[var3] != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - class396.field3679 = Client.currentClanChannels[var3]; - class113.field1172 = var3; + } else if (var0 == 4213) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = class214.ItemDefinition_get(var3).getShiftClickIndex(); + if (var4 == -1) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4; } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 + 1; } return 1; - } else if (var0 == 3852) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = class396.field3679.name; - return 1; - } else if (var0 == 3853) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class396.field3679.field1425; - return 1; - } else if (var0 == 3854) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class396.field3679.field1426; - return 1; - } else if (var0 == 3855) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class396.field3679.method859(); - return 1; - } else if (var0 == 3856) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ((ClanChannelMember)class396.field3679.members.get(var3)).username.getName(); + } else if (var0 == 4214) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).maleModel; return 1; - } else if (var0 == 3857) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((ClanChannelMember)class396.field3679.members.get(var3)).rank; + } else if (var0 == 4215) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).maleModel1; return 1; - } else if (var0 == 3858) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((ClanChannelMember)class396.field3679.members.get(var3)).world; + } else if (var0 == 4216) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var3).maleModel2; return 1; - } else if (var0 == 3859) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - UserComparator10.method689(class113.field1172, var3); - return 1; - } else if (var0 == 3860) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class396.field3679.method860(Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]); - return 1; - } else if (var0 == 3861) { - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = class396.field3679.getSortedMembers()[Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]]; - return 1; - } else if (var0 == 3890) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class139.varclan != null ? 1 : 0; + } else if (var0 == 4217) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class214.ItemDefinition_get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.field1763; return 1; } else { return 2; } + } else { + if (MusicPatchNode.foundItemIds != null && ApproximateRouteStrategy.foundItemIndex < BuddyRankComparator.foundItemIdCount) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = MusicPatchNode.foundItemIds[++ApproximateRouteStrategy.foundItemIndex - 1] & '\uffff'; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } + + return 1; } } } } - @ObfuscatedName("oj") + @ObfuscatedName("hv") @ObfuscatedSignature( descriptor = "(S)V", - garbageValue = "-24646" + garbageValue = "-16844" ) - static void method416() { - Client.packetWriter.addNode(ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.field2569, Client.packetWriter.isaacCipher)); - Client.oculusOrbState = 0; + static final void method424() { + class72.method431(); + class184.e5.clear(); + InvDefinition.method877(); + KitDefinition.method907(); + DbTableType.DBTableType_cache.clear(); + EnumComposition.EnumDefinition_cached.clear(); + class138.method737(); + class172.method883(); + AttackOption.method606(); + Client.method360(); + class145.method764(); + HitSplatDefinition.method994(); + InvDefinition.InvDefinition_cached.clear(); + class267.method1444(); + WorldMapElement.HitSplatDefinition_cached2.clear(); + class185.e6.clear(); + InterfaceParent.method464(); + ItemComposition.ItemDefinition_cached.clear(); + ItemComposition.HealthBarDefinition_cachedSprites.clear(); + ItemComposition.ItemDefinition_cachedSprites.clear(); + ModeWhere.method2001(); + SequenceDefinition.SequenceDefinition_cached.clear(); + SequenceDefinition.SequenceDefinition_cachedFrames.clear(); + SequenceDefinition.SequenceDefinition_cachedModel.clear(); + SpotAnimationDefinition.SpotAnimationDefinition_cached.clear(); + SpotAnimationDefinition.SpotAnimationDefinition_cachedModels.clear(); + WorldMapElement.method893(); + class252.method1337(); + class399.Widget_cachedModels.method2493(); + Players.Widget_cachedFonts.method2493(); + class189.Widget_cachedSpriteMasks.clear(); + class191.e7.clear(); + VarcInt.VarcInt_cached.clear(); + VarcInt.method900(); + class171.e2.clear(); + class208.method1062(); + class197.archive4.clear(); + LoginPacket.method1643(); + class195.e8.clear(); + Client.Widget_cachedModels.clear(); + Client.archive11.clear(); + RouteStrategy.method1150(); + HealthBarDefinition.widgetDefinition.method1737(); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).clear(); + Canvas.method89(); + Client.field631.clearFiles(); + UserComparator7.field1190.method1943(); + class145.field1338.method1943(); + WorldMapDecorationType.archive10.method1943(); + class47.archive12.method1943(); + class344.archive2.method1943(); + class267.field2224.method1943(); + SoundSystem.field209.method1943(); + VarbitComposition.archive13.method1943(); + class313.archive4.method1943(); + WorldMapAreaData.field2099.method1943(); + Language.field3643.method1943(); + PcmPlayer.field181.method1943(); + WorldMapSection0.archive9.method1943(); + class514.archive6.method1943(); + class19.field59.method1943(); + class7.field12.method1943(); + GrandExchangeOfferOwnWorldComparator.archive8.method1943(); + Canvas.field68.method1943(); + StructComposition.field1637.method1943(); + WorldMapData_0.field1938.method1943(); + BuddyRankComparator.field1200.method1943(); + SpotAnimationDefinition.field1597.method1943(); } } \ No newline at end of file diff --git a/osrs/src/main/java/Occluder.java b/osrs/src/main/java/Occluder.java index 6076cfc1e..008406be1 100644 --- a/osrs/src/main/java/Occluder.java +++ b/osrs/src/main/java/Occluder.java @@ -1,117 +1,58 @@ import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jn") +@ObfuscatedName("kw") @Implements("Occluder") public final class Occluder { - @ObfuscatedName("nc") - @Export("menuHeight") - static int menuHeight; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("minTileX") int minTileX; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("maxTileX") int maxTileX; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("minTileY") int minTileY; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("maxTileY") int maxTileY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("type") int type; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("minX") int minX; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("maxX") int maxX; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("minZ") int minZ; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("maxZ") int maxZ; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("minY") int minY; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("maxY") int maxY; - @ObfuscatedName("aq") - int field2137; - @ObfuscatedName("al") - int field2132; - @ObfuscatedName("an") - int field2134; - @ObfuscatedName("ar") - int field2138; - @ObfuscatedName("ab") - int field2125; - @ObfuscatedName("ag") - int field2130; + @ObfuscatedName("av") + int field2318; + @ObfuscatedName("ax") + int field2319; + @ObfuscatedName("as") + int field2315; + @ObfuscatedName("ay") + int field2320; + @ObfuscatedName("ak") + int field2309; + @ObfuscatedName("aj") + int field2308; @ObfuscatedName("am") - int field2133; + int field2311; Occluder() { } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(IIIZIZI)V", - garbageValue = "124948705" - ) - @Export("doWorldSorting") - static void doWorldSorting(int var0, int var1, int var2, boolean var3, int var4, boolean var5) { - if (var0 < var1) { - int var6 = (var0 + var1) / 2; - int var7 = var0; - World var8 = class176.World_worlds[var6]; - class176.World_worlds[var6] = class176.World_worlds[var1]; - class176.World_worlds[var1] = var8; - - for (int var9 = var0; var9 < var1; ++var9) { - if (HealthBarUpdate.method525(class176.World_worlds[var9], var8, var2, var3, var4, var5) <= 0) { - World var10 = class176.World_worlds[var9]; - class176.World_worlds[var9] = class176.World_worlds[var7]; - class176.World_worlds[var7++] = var10; - } - } - - class176.World_worlds[var1] = class176.World_worlds[var7]; - class176.World_worlds[var7] = var8; - doWorldSorting(var0, var7 - 1, var2, var3, var4, var5); - doWorldSorting(var7 + 1, var1, var2, var3, var4, var5); - } - - } - - @ObfuscatedName("jz") - @ObfuscatedSignature( - descriptor = "(Ldf;I)Z", - garbageValue = "-1141977008" - ) - static boolean method1299(Player var0) { - if (Client.drawPlayerNames == 0) { - return false; - } else { - boolean var1; - if (VarbitComposition.localPlayer == var0) { - var1 = (Client.drawPlayerNames & 8) != 0; - return var1; - } else { - var1 = UserComparator6.method695(); - if (!var1) { - boolean var2 = (Client.drawPlayerNames & 1) != 0; - var1 = var2 && var0.isFriend(); - } - - return var1 || UrlRequester.method655() && var0.isFriendsChatMember(); - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/OtlTokenRequester.java b/osrs/src/main/java/OtlTokenRequester.java deleted file mode 100644 index 3eb5c8e93..000000000 --- a/osrs/src/main/java/OtlTokenRequester.java +++ /dev/null @@ -1,15 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedName; - -import java.net.URL; -import java.util.Map; -import java.util.concurrent.Future; - -@Implements("com/jagex/oldscape/pub/OtlTokenRequester") -@ObfuscatedName("com/jagex/oldscape/pub/OtlTokenRequester") -public interface OtlTokenRequester { - @Export("request") - @ObfuscatedName("request") - Future request(String var1, URL var2, Map var3, String var4); -} \ No newline at end of file diff --git a/osrs/src/main/java/PacketBuffer.java b/osrs/src/main/java/PacketBuffer.java index ee51caefa..61e22d094 100644 --- a/osrs/src/main/java/PacketBuffer.java +++ b/osrs/src/main/java/PacketBuffer.java @@ -3,83 +3,83 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("to") +@ObfuscatedName("uo") @Implements("PacketBuffer") public class PacketBuffer extends Buffer { - @ObfuscatedName("ae") - static final int[] field4156; - @ObfuscatedName("au") + @ObfuscatedName("ah") + static final int[] field4184; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lux;" + descriptor = "Luy;" ) @Export("isaacCipher") IsaacCipher isaacCipher; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("bitIndex") int bitIndex; static { - field4156 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, Integer.MAX_VALUE, -1}; + field4184 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, Integer.MAX_VALUE, -1}; } public PacketBuffer(int var1) { super(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([IB)V", - garbageValue = "4" + descriptor = "([II)V", + garbageValue = "986454226" ) @Export("newIsaacCipher") public void newIsaacCipher(int[] var1) { this.isaacCipher = new IsaacCipher(var1); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lux;I)V", - garbageValue = "-1893850673" + descriptor = "(Luy;I)V", + garbageValue = "1815702468" ) @Export("setIsaacCipher") public void setIsaacCipher(IsaacCipher var1) { this.isaacCipher = var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-500862184" + garbageValue = "264966043" ) @Export("writeByteIsaac") public void writeByteIsaac(int var1) { super.array[++super.offset - 1] = (byte)(var1 + this.isaacCipher.nextInt()); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2096542528" + garbageValue = "-1536095737" ) @Export("readByteIsaac") public int readByteIsaac() { return super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "1" + garbageValue = "52" ) - public boolean method2518() { - int var1 = super.array[super.offset] - this.isaacCipher.method2691() & 255; + public boolean method2532() { + int var1 = super.array[super.offset] - this.isaacCipher.method2708() & 255; return var1 >= 128; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1524220690" + descriptor = "(B)I", + garbageValue = "-41" ) @Export("readSmartByteShortIsaac") public int readSmartByteShortIsaac() { @@ -87,32 +87,32 @@ public int readSmartByteShortIsaac() { return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "([BIII)V", - garbageValue = "-1401941730" + garbageValue = "947660207" ) - public void method2520(byte[] var1, int var2, int var3) { + public void method2534(byte[] var1, int var2, int var3) { for (int var4 = 0; var4 < var3; ++var4) { var1[var4 + var2] = (byte)(super.array[++super.offset - 1] - this.isaacCipher.nextInt()); } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "859542429" + descriptor = "(B)V", + garbageValue = "28" ) @Export("importIndex") public void importIndex() { this.bitIndex = super.offset * 8; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "49" + descriptor = "(II)I", + garbageValue = "-551105504" ) @Export("readBits") public int readBits(int var1) { @@ -121,33 +121,33 @@ public int readBits(int var1) { int var4 = 0; for (this.bitIndex += var1; var1 > var3; var3 = 8) { - var4 += (super.array[var2++] & field4156[var3]) << var1 - var3; + var4 += (super.array[var2++] & field4184[var3]) << var1 - var3; var1 -= var3; } if (var3 == var1) { - var4 += super.array[var2] & field4156[var3]; + var4 += super.array[var2] & field4184[var3]; } else { - var4 += super.array[var2] >> var3 - var1 & field4156[var1]; + var4 += super.array[var2] >> var3 - var1 & field4184[var1]; } return var4; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-512119498" + descriptor = "(S)V", + garbageValue = "20580" ) @Export("exportIndex") public void exportIndex() { super.offset = (this.bitIndex + 7) / 8; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "2109529499" + garbageValue = "1836154384" ) @Export("bitsRemaining") public int bitsRemaining(int var1) { diff --git a/osrs/src/main/java/PacketBufferNode.java b/osrs/src/main/java/PacketBufferNode.java index 71f591053..e51ba24de 100644 --- a/osrs/src/main/java/PacketBufferNode.java +++ b/osrs/src/main/java/PacketBufferNode.java @@ -3,47 +3,34 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Collections; - -@ObfuscatedName("ly") +@ObfuscatedName("ld") @Implements("PacketBufferNode") public class PacketBufferNode extends Node { - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "[Lly;" + descriptor = "[Lld;" ) @Export("PacketBufferNode_packetBufferNodes") static PacketBufferNode[] PacketBufferNode_packetBufferNodes; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("PacketBufferNode_packetBufferNodeCount") static int PacketBufferNode_packetBufferNodeCount; - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "[[Lmi;" - ) - @Export("Widget_interfaceComponents") - public static Widget[][] Widget_interfaceComponents; - @ObfuscatedName("ip") - @ObfuscatedSignature( - descriptor = "Lsr;" - ) - static Fonts field2613; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Llw;" + descriptor = "Llq;" ) @Export("clientPacket") - public ClientPacket clientPacket; - @ObfuscatedName("ae") + ClientPacket clientPacket; + @ObfuscatedName("ah") @Export("clientPacketLength") - public int clientPacketLength; - @ObfuscatedName("ao") + int clientPacketLength; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lto;" + descriptor = "Luo;" ) @Export("packetBuffer") public PacketBuffer packetBuffer; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("index") public int index; @@ -58,7 +45,7 @@ public class PacketBufferNode extends Node { @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1268899261" + garbageValue = "-1380070255" ) @Export("release") public void release() { @@ -67,42 +54,266 @@ public void release() { } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([I[II)V", - garbageValue = "-469977275" + descriptor = "(III)I", + garbageValue = "-1877979689" ) - public static void method1611(int[] var0, int[] var1) { - if (var0 != null && var1 != null) { - class416.ByteArrayPool_alternativeSizes = var0; - StructComposition.ByteArrayPool_altSizeArrayCounts = new int[var0.length]; - class410.ByteArrayPool_arrays = new byte[var0.length][][]; - - for (int var2 = 0; var2 < class416.ByteArrayPool_alternativeSizes.length; ++var2) { - class410.ByteArrayPool_arrays[var2] = new byte[var1[var2]][]; - ByteArrayPool.field3746.add(var0[var2]); - } + public static int method1635(int var0, int var1) { + return (int)Math.round(Math.atan2((double)var0, (double)var1) * 2607.5945876176133D) & 16383; + } - Collections.sort(ByteArrayPool.field3746); + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "1854762565" + ) + static void method1637(boolean var0) { + if (var0) { + SecureRandomCallable.method457(); } else { - class416.ByteArrayPool_alternativeSizes = null; - StructComposition.ByteArrayPool_altSizeArrayCounts = null; - class410.ByteArrayPool_arrays = null; - class101.method599(); + for (int var1 = 0; var1 < class316.musicSongs.size(); ++var1) { + MusicSong var2 = (MusicSong)class316.musicSongs.get(var1); + if (var2 == null) { + class316.musicSongs.remove(var1); + --var1; + } else if (var2.field2880) { + if (var2.midiPcmStream.field2830 > 0) { + --var2.midiPcmStream.field2830; + } + + var2.midiPcmStream.clear(); + var2.midiPcmStream.method1657(); + var2.midiPcmStream.setPcmStreamVolume(0); + class316.musicSongs.remove(var1); + --var1; + } else { + var2.field2880 = true; + } + } } + } - @ObfuscatedName("ao") + @ObfuscatedName("lc") + @ObfuscatedSignature( + descriptor = "(IIIIS)V", + garbageValue = "-9846" + ) + @Export("addSceneMenuOptions") + static final void addSceneMenuOptions(int var0, int var1, int var2, int var3) { + if (Client.isItemSelected == 0 && !Client.isSpellSelected) { + WorldMapSectionType.insertMenuItemNoShift("Walk here", "", 23, 0, var0 - var2, var1 - var3); + } + + long var4 = -1L; + long var6 = -1L; + + int var8; + for (var8 = 0; var8 < class93.method501(); ++var8) { + long var9 = ViewportMouse.ViewportMouse_entityTags[var8]; + if (var9 != var6) { + var6 = var9; + long var15 = ViewportMouse.ViewportMouse_entityTags[var8]; + int var14 = (int)(var15 >>> 0 & 127L); + var14 = var14; + int var25 = GrandExchangeOfferAgeComparator.method1969(var8); + int var16 = class128.method699(var8); + int var17 = class232.Entity_unpackID(ViewportMouse.ViewportMouse_entityTags[var8]); + int var18 = var17; + int var22; + if (var16 == 2 && class36.scene.getObjectFlags(ItemLayer.Client_plane, var14, var25, var9) >= 0) { + ObjectComposition var19 = WorldMapSection2.getObjectDefinition(var17); + if (var19.transforms != null) { + var19 = var19.transform(); + } + + if (var19 == null) { + continue; + } + + PendingSpawn var20 = null; + + for (PendingSpawn var21 = (PendingSpawn)Client.pendingSpawns.last(); var21 != null; var21 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var21.plane == ItemLayer.Client_plane && var14 == var21.x && var25 == var21.y && var18 == var21.id) { + var20 = var21; + break; + } + } + + if (Client.isItemSelected == 1) { + WorldMapSectionType.insertMenuItemNoShift("Use", Client.field597 + " " + "->" + " " + class167.colorStartTag(65535) + var19.name, 1, var18, var14, var25); + } else if (Client.isSpellSelected) { + if ((UrlRequest.selectedSpellFlags & 4) == 4) { + WorldMapSectionType.insertMenuItemNoShift(Client.field599, Client.field598 + " " + "->" + " " + class167.colorStartTag(65535) + var19.name, 2, var18, var14, var25); + } + } else { + String[] var35 = var19.actions; + if (var35 != null) { + for (var22 = 4; var22 >= 0; --var22) { + if ((var20 == null || var20.method504(var22)) && var35[var22] != null) { + short var23 = 0; + if (var22 == 0) { + var23 = 3; + } + + if (var22 == 1) { + var23 = 4; + } + + if (var22 == 2) { + var23 = 5; + } + + if (var22 == 3) { + var23 = 6; + } + + if (var22 == 4) { + var23 = 1001; + } + + WorldMapSectionType.insertMenuItemNoShift(var35[var22], class167.colorStartTag(65535) + var19.name, var23, var18, var14, var25); + } + } + } + + WorldMapSectionType.insertMenuItemNoShift("Examine", class167.colorStartTag(65535) + var19.name, 1002, var19.id, var14, var25); + } + } + + int var26; + Player var27; + NPC var36; + int[] var37; + if (var16 == 1) { + NPC var31 = Client.npcs[var18]; + if (var31 == null) { + continue; + } + + if (var31.definition.size == 1 && (var31.x & 127) == 64 && (var31.y & 127) == 64) { + for (var26 = 0; var26 < Client.npcCount; ++var26) { + var36 = Client.npcs[Client.npcIndices[var26]]; + if (var36 != null && var36 != var31 && var36.definition.size == 1 && var36.x == var31.x && var36.y == var31.y) { + WorldMapLabelSize.addNpcToMenu(var36, Client.npcIndices[var26], var14, var25); + } + } + + var26 = Players.Players_count; + var37 = Players.Players_indices; + + for (var22 = 0; var22 < var26; ++var22) { + var27 = Client.players[var37[var22]]; + if (var27 != null && var27.x == var31.x && var27.y == var31.y) { + ArchiveDiskAction.addPlayerToMenu(var27, var37[var22], var14, var25); + } + } + } + + WorldMapLabelSize.addNpcToMenu(var31, var18, var14, var25); + } + + if (var16 == 0) { + Player var32 = Client.players[var18]; + if (var32 == null) { + continue; + } + + if ((var32.x & 127) == 64 && (var32.y & 127) == 64) { + for (var26 = 0; var26 < Client.npcCount; ++var26) { + var36 = Client.npcs[Client.npcIndices[var26]]; + if (var36 != null && var36.definition.size == 1 && var32.x == var36.x && var32.y == var36.y) { + WorldMapLabelSize.addNpcToMenu(var36, Client.npcIndices[var26], var14, var25); + } + } + + var26 = Players.Players_count; + var37 = Players.Players_indices; + + for (var22 = 0; var22 < var26; ++var22) { + var27 = Client.players[var37[var22]]; + if (var27 != null && var32 != var27 && var32.x == var27.x && var27.y == var32.y) { + ArchiveDiskAction.addPlayerToMenu(var27, var37[var22], var14, var25); + } + } + } + + if (var18 != Client.combatTargetPlayerIndex) { + ArchiveDiskAction.addPlayerToMenu(var32, var18, var14, var25); + } else { + var4 = var9; + } + } + + if (var16 == 3) { + NodeDeque var33 = Client.groundItems[ItemLayer.Client_plane][var14][var25]; + if (var33 != null) { + for (TileItem var34 = (TileItem)var33.first(); var34 != null; var34 = (TileItem)var33.next()) { + ItemComposition var38 = class214.ItemDefinition_get(var34.id); + if (Client.isItemSelected == 1) { + WorldMapSectionType.insertMenuItemNoShift("Use", Client.field597 + " " + "->" + " " + class167.colorStartTag(16748608) + var38.name, 16, var34.id, var14, var25); + } else if (Client.isSpellSelected) { + if ((UrlRequest.selectedSpellFlags & 1) == 1) { + WorldMapSectionType.insertMenuItemNoShift(Client.field599, Client.field598 + " " + "->" + " " + class167.colorStartTag(16748608) + var38.name, 17, var34.id, var14, var25); + } + } else { + String[] var28 = var38.groundActions; + + for (int var39 = 4; var39 >= 0; --var39) { + if (var34.method610(var39)) { + if (var28 != null && var28[var39] != null) { + byte var24 = 0; + if (var39 == 0) { + var24 = 18; + } + + if (var39 == 1) { + var24 = 19; + } + + if (var39 == 2) { + var24 = 20; + } + + if (var39 == 3) { + var24 = 21; + } + + if (var39 == 4) { + var24 = 22; + } + + WorldMapSectionType.insertMenuItemNoShift(var28[var39], class167.colorStartTag(16748608) + var38.name, var24, var34.id, var14, var25); + } else if (var39 == 2) { + WorldMapSectionType.insertMenuItemNoShift("Take", class167.colorStartTag(16748608) + var38.name, 20, var34.id, var14, var25); + } + } + } + + WorldMapSectionType.insertMenuItemNoShift("Examine", class167.colorStartTag(16748608) + var38.name, 1004, var34.id, var14, var25); + } + } + } + } + } + } + + if (-1L != var4) { + var8 = (int)(var4 >>> 0 & 127L); + int var10 = (int)(var4 >>> 7 & 127L); + Player var12 = Client.players[Client.combatTargetPlayerIndex]; + ArchiveDiskAction.addPlayerToMenu(var12, Client.combatTargetPlayerIndex, var8, var10); + } + + } + + @ObfuscatedName("oo") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1208755601" + descriptor = "(I)Z", + garbageValue = "-1716534762" ) - public static int method1609(int var0) { - var0 = (var0 & 1431655765) + (var0 >>> 1 & 1431655765); - var0 = (var0 >>> 2 & 858993459) + (var0 & 858993459); - var0 = var0 + (var0 >>> 4) & 252645135; - var0 += var0 >>> 8; - var0 += var0 >>> 16; - return var0 & 255; + public static boolean method1639() { + return Client.clickedWidget != null; } } \ No newline at end of file diff --git a/osrs/src/main/java/PacketWriter.java b/osrs/src/main/java/PacketWriter.java index 6b6343810..2759ac9a8 100644 --- a/osrs/src/main/java/PacketWriter.java +++ b/osrs/src/main/java/PacketWriter.java @@ -3,78 +3,77 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import java.io.File; import java.io.IOException; -import java.util.ArrayList; +import java.io.RandomAccessFile; -@ObfuscatedName("er") +@ObfuscatedName("ef") @Implements("PacketWriter") public class PacketWriter { - @ObfuscatedName("ab") - static int field1151; - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lqi;" + descriptor = "Lro;" ) @Export("socket") AbstractSocket socket; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Loc;" + descriptor = "Lpm;" ) @Export("packetBufferNodes") IterableNodeDeque packetBufferNodes; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("bufferSize") int bufferSize; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Luj;" ) @Export("buffer") Buffer buffer; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lux;" + descriptor = "Luy;" ) @Export("isaacCipher") public IsaacCipher isaacCipher; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lto;" + descriptor = "Luo;" ) @Export("packetBuffer") PacketBuffer packetBuffer; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("serverPacket") ServerPacket serverPacket; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("serverPacketLength") int serverPacketLength; - @ObfuscatedName("aa") - boolean field1152; - @ObfuscatedName("af") - int field1154; - @ObfuscatedName("ad") + @ObfuscatedName("al") + boolean field1160; + @ObfuscatedName("az") + int field1164; + @ObfuscatedName("ap") @Export("pendingWrites") int pendingWrites; - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - ServerPacket field1159; - @ObfuscatedName("al") + ServerPacket field1167; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - ServerPacket field1157; - @ObfuscatedName("an") + ServerPacket field1168; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - ServerPacket field1158; + ServerPacket field1166; PacketWriter() { this.packetBufferNodes = new IterableNodeDeque(); @@ -83,15 +82,15 @@ public class PacketWriter { this.packetBuffer = new PacketBuffer(40000); this.serverPacket = null; this.serverPacketLength = 0; - this.field1152 = true; - this.field1154 = 0; + this.field1160 = true; + this.field1164 = 0; this.pendingWrites = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1375263214" + descriptor = "(B)V", + garbageValue = "-90" ) @Export("clearBuffer") final void clearBuffer() { @@ -99,10 +98,10 @@ final void clearBuffer() { this.bufferSize = 0; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-55" + descriptor = "(S)V", + garbageValue = "225" ) @Export("flush") final void flush() throws IOException { @@ -127,10 +126,10 @@ final void flush() throws IOException { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lly;B)V", - garbageValue = "17" + descriptor = "(Lld;I)V", + garbageValue = "-1187530783" ) @Export("addNode") public final void addNode(PacketBufferNode var1) { @@ -140,20 +139,20 @@ public final void addNode(PacketBufferNode var1) { this.bufferSize += var1.index; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lqi;B)V", - garbageValue = "-68" + descriptor = "(Lro;I)V", + garbageValue = "-1775171508" ) @Export("setSocket") void setSocket(AbstractSocket var1) { this.socket = var1; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "272973129" + descriptor = "(B)V", + garbageValue = "1" ) @Export("close") void close() { @@ -164,213 +163,93 @@ void close() { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1646741588" + descriptor = "(B)V", + garbageValue = "7" ) @Export("removeSocket") void removeSocket() { this.socket = null; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)Lqi;", - garbageValue = "-972291242" + descriptor = "(I)Lro;", + garbageValue = "-1239264198" ) @Export("getSocket") AbstractSocket getSocket() { return this.socket; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "899578863" - ) - static int method644(int var0, Script var1, boolean var2) { - if (var0 < 1000) { - return Frames.method1295(var0, var1, var2); - } else if (var0 < 1100) { - return SecureRandomFuture.method441(var0, var1, var2); - } else if (var0 < 1200) { - return class93.method504(var0, var1, var2); - } else if (var0 < 1300) { - return InterfaceParent.method474(var0, var1, var2); - } else if (var0 < 1400) { - return class12.method35(var0, var1, var2); - } else if (var0 < 1500) { - return class169.method879(var0, var1, var2); - } else if (var0 < 1600) { - return class132.method735(var0, var1, var2); - } else if (var0 < 1700) { - return WorldMapRectangle.method1528(var0, var1, var2); - } else if (var0 < 1800) { - return DynamicObject.method450(var0, var1, var2); - } else if (var0 < 1900) { - return SecureRandomFuture.method442(var0, var1, var2); - } else if (var0 < 2000) { - return class499.method2489(var0, var1, var2); - } else if (var0 < 2100) { - return SecureRandomFuture.method441(var0, var1, var2); - } else if (var0 < 2200) { - return class93.method504(var0, var1, var2); - } else if (var0 < 2300) { - return InterfaceParent.method474(var0, var1, var2); - } else if (var0 < 2400) { - return class12.method35(var0, var1, var2); - } else if (var0 < 2500) { - return class169.method879(var0, var1, var2); - } else if (var0 < 2600) { - return MenuAction.method426(var0, var1, var2); - } else if (var0 < 2700) { - return ByteArrayPool.method2149(var0, var1, var2); - } else if (var0 < 2800) { - return class326.method1716(var0, var1, var2); - } else if (var0 < 2900) { - return Player.method499(var0, var1, var2); - } else if (var0 < 3000) { - return class499.method2489(var0, var1, var2); - } else if (var0 < 3200) { - return class466.method2349(var0, var1, var2); - } else if (var0 < 3300) { - return WorldMapSection1.method1553(var0, var1, var2); - } else if (var0 < 3400) { - return class372.method1971(var0, var1, var2); - } else if (var0 < 3500) { - return UserList.method2243(var0, var1, var2); - } else if (var0 < 3600) { - return class238.method1311(var0, var1, var2); - } else if (var0 < 3700) { - return class16.method48(var0, var1, var2); - } else if (var0 < 3800) { - return class31.method123(var0, var1, var2); - } else if (var0 < 3900) { - return ObjectSound.method415(var0, var1, var2); - } else if (var0 < 4000) { - return GameBuild.method1869(var0, var1, var2); - } else if (var0 < 4100) { - return class352.method1880(var0, var1, var2); - } else if (var0 < 4200) { - return Decimator.method315(var0, var1, var2); - } else if (var0 < 4300) { - return AttackOption.method607(var0, var1, var2); - } else if (var0 < 5100) { - return ArchiveDiskActionHandler.method1886(var0, var1, var2); - } else if (var0 < 5400) { - return class161.method850(var0, var1, var2); - } else if (var0 < 5600) { - return class466.method2351(var0, var1, var2); - } else if (var0 < 5700) { - return Interpreter.method419(var0, var1, var2); - } else if (var0 < 6300) { - return class448.method2292(var0, var1, var2); - } else if (var0 < 6600) { - return class139.method759(var0, var1, var2); - } else if (var0 < 6700) { - return Interpreter.method420(var0, var1, var2); - } else if (var0 < 6800) { - return class101.method600(var0, var1, var2); - } else if (var0 < 6900) { - return ObjTypeCustomisation.method935(var0, var1, var2); - } else if (var0 < 7000) { - return class53.method297(var0, var1, var2); - } else if (var0 < 7100) { - return class6.method12(var0, var1, var2); - } else if (var0 < 7200) { - return Messages.method635(var0, var1, var2); - } else if (var0 < 7300) { - return class170.method900(var0, var1, var2); - } else if (var0 < 7500) { - return InterfaceParent.method476(var0, var1, var2); - } else if (var0 < 7600) { - return SoundCache.method228(var0, var1, var2); - } else if (var0 < 7700) { - return class178.method922(var0, var1, var2); - } else { - return var0 < 8100 ? class218.method1146(var0, var1, var2) : 2; - } - } + descriptor = "(I)V", + garbageValue = "-1549345675" + ) + static void method643() { + try { + File var0 = new File(Login.userHomeDirectory, "random.dat"); + int var2; + if (var0.exists()) { + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); + } else { + label34: + for (int var1 = 0; var1 < class85.field859.length; ++var1) { + for (var2 = 0; var2 < GameObject.field2480.length; ++var2) { + File var3 = new File(GameObject.field2480[var2] + class85.field859[var1] + File.separatorChar + "random.dat"); + if (var3.exists()) { + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0); + break label34; + } + } + } + } - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "49" - ) - @Export("someMusicMethod") - public static void someMusicMethod(int var0, int var1, int var2, int var3) { - if (class305.musicSongs.size() > 1 && class305.musicSongs.get(0) != null && ((MusicSong)class305.musicSongs.get(0)).midiPcmStream.isReady() && class305.musicSongs.get(1) != null && ((MusicSong)class305.musicSongs.get(1)).midiPcmStream.isReady()) { - class270.method1537(var0, var1, var2, var3); - class305.field2771.add(new SwapSongTask((SongTask)null)); - ArrayList var4 = new ArrayList(); - var4.add(new DelayFadeTask(new FadeInTask((SongTask)null, 1, false, class305.field2768), class305.field2769)); - var4.add(new DelayFadeTask(new FadeOutTask((SongTask)null, 0, false, class305.field2766), class305.musicPlayerStatus)); - class305.field2771.add(new ConcurrentMidiTask((SongTask)null, var4)); - if (class305.field2773.get(0) != null && class305.field2773.get(1) != null) { - MusicSong var5 = (MusicSong)class305.field2773.get(0); - class305.field2773.set(0, class305.musicSongs.get(1)); - class305.field2773.set(1, var5); + if (JagexCache.JagexCache_randomDat == null) { + RandomAccessFile var4 = new RandomAccessFile(var0, "rw"); + var2 = var4.read(); + var4.seek(0L); + var4.write(var2); + var4.seek(0L); + var4.close(); + JagexCache.JagexCache_randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0); } + } catch (IOException var5) { } } - @ObfuscatedName("bj") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-581625069" + descriptor = "(IZIZI)V", + garbageValue = "1585666384" ) - protected static final void method645() { - class332.clock.mark(); - - int var0; - for (var0 = 0; var0 < 32; ++var0) { - GameEngine.graphicsTickTimes[var0] = 0L; - } - - for (var0 = 0; var0 < 32; ++var0) { - GameEngine.clientTickTimes[var0] = 0L; + @Export("sortWorldList") + static void sortWorldList(int var0, boolean var1, int var2, boolean var3) { + if (class361.World_worlds != null) { + class129.doWorldSorting(0, class361.World_worlds.length - 1, var0, var1, var2, var3); } - GameEngine.gameCyclesToDo = 0; } - @ObfuscatedName("ky") - @ObfuscatedSignature( - descriptor = "(Ldv;I)V", - garbageValue = "-932722306" - ) - static final void method646(PendingSpawn var0) { - long var1 = 0L; - int var3 = -1; - int var4 = 0; - int var5 = 0; - if (var0.type == 0) { - var1 = class130.scene.getBoundaryObjectTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 1) { - var1 = class130.scene.getWallDecorationTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 2) { - var1 = class130.scene.getGameObjectTag(var0.plane, var0.x, var0.y); - } - - if (var0.type == 3) { - var1 = class130.scene.getFloorDecorationTag(var0.plane, var0.x, var0.y); - } - - if (var1 != 0L) { - int var6 = class130.scene.getObjectFlags(var0.plane, var0.x, var0.y, var1); - var3 = InvDefinition.Entity_unpackID(var1); - var4 = var6 & 31; - var5 = var6 >> 6 & 3; + @ObfuscatedName("hz") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-577406943" + ) + @Export("forceDisconnect") + static final void forceDisconnect(int var0) { + class13.method51(); + switch(var0) { + case 1: + UserComparator7.method674(24); + class139.setLoginResponseString("", "You were disconnected from the server.", ""); + break; + case 2: + CollisionMap.method1146(); } - var0.objectId = var3; - var0.field956 = var4; - var0.field948 = var5; } } \ No newline at end of file diff --git a/osrs/src/main/java/ParamComposition.java b/osrs/src/main/java/ParamComposition.java index c53c6b224..a921f1037 100644 --- a/osrs/src/main/java/ParamComposition.java +++ b/osrs/src/main/java/ParamComposition.java @@ -3,35 +3,33 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; - -@ObfuscatedName("hx") +@ObfuscatedName("hr") @Implements("ParamComposition") public class ParamComposition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("ParamDefinition_archive") static AbstractArchive ParamDefinition_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("ParamDefinition_cached") static EvictingDualNodeHashTable ParamDefinition_cached; - @ObfuscatedName("an") - static int field1678; - @ObfuscatedName("ao") + @ObfuscatedName("qg") + static int field1629; + @ObfuscatedName("ar") @Export("type") char type; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("defaultInt") public int defaultInt; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("defaultStr") public String defaultStr; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("autoDisable") boolean autoDisable; @@ -43,19 +41,19 @@ public class ParamComposition extends DualNode { this.autoDisable = true; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-990843992" + descriptor = "(B)V", + garbageValue = "23" ) @Export("postDecode") void postDecode() { } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-59" + descriptor = "(Luj;I)V", + garbageValue = "-2107778896" ) @Export("decode") void decode(Buffer var1) { @@ -69,15 +67,15 @@ void decode(Buffer var1) { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-1461368185" + descriptor = "(Luj;IB)V", + garbageValue = "56" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { if (var2 == 1) { - this.type = ViewportMouse.method1348(var1.readByte()); + this.type = class17.method60(var1.readByte()); } else if (var2 == 2) { this.defaultInt = var1.readInt(); } else if (var2 == 4) { @@ -88,480 +86,246 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-785538560" + garbageValue = "-232171801" ) @Export("isString") public boolean isString() { return this.type == 's'; } - @ObfuscatedName("hq") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-50" + descriptor = "(Lpf;Lpf;B)V", + garbageValue = "74" ) - static void method1017() { - int var0; - if (Client.field419 == class92.field940) { - class130.scene = new Scene(4, 104, 104, Tiles.Tiles_heights); + static void method981(Font var0, Font var1) { + if (class108.worldSelectBackSprites == null) { + class108.worldSelectBackSprites = Players.method620(GrandExchangeOfferOwnWorldComparator.archive8, "sl_back", ""); + } + + if (class130.worldSelectFlagSprites == null) { + class130.worldSelectFlagSprites = Skills.method1895(GrandExchangeOfferOwnWorldComparator.archive8, "sl_flags", ""); + } + + if (class148.worldSelectArrows == null) { + class148.worldSelectArrows = Skills.method1895(GrandExchangeOfferOwnWorldComparator.archive8, "sl_arrows", ""); + } + + if (MoveSpeed.worldSelectStars == null) { + MoveSpeed.worldSelectStars = Skills.method1895(GrandExchangeOfferOwnWorldComparator.archive8, "sl_stars", ""); + } + + if (Varps.worldSelectLeftSprite == null) { + Varps.worldSelectLeftSprite = class313.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOfferOwnWorldComparator.archive8, "leftarrow", ""); + } + + if (class105.worldSelectRightSprite == null) { + class105.worldSelectRightSprite = class313.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOfferOwnWorldComparator.archive8, "rightarrow", ""); + } - for (var0 = 0; var0 < 4; ++var0) { - Client.collisionMaps[var0] = new CollisionMap(104, 104); + Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624); + Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513); + var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); + if (MoveSpeed.worldSelectStars != null) { + MoveSpeed.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); + var1.draw("Members only world", Login.xPadding + 152, 10, 16777215, -1); + MoveSpeed.worldSelectStars[0].drawAt(Login.xPadding + 140, 12); + var1.draw("Free world", Login.xPadding + 152, 21, 16777215, -1); + } + + int var4; + int var5; + if (class148.worldSelectArrows != null) { + int var2 = Login.xPadding + 280; + if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 0) { + class148.worldSelectArrows[2].drawAt(var2, 4); + } else { + class148.worldSelectArrows[0].drawAt(var2, 4); } - AbstractUserComparator.sceneMinimapSprite = new SpritePixels(512, 512); - Login.Login_loadingText = "Starting game engine..."; - Login.Login_loadingPercent = 5; - Client.field419 = class92.field930; - } else if (class92.field930 == Client.field419) { - Login.Login_loadingText = "Prepared visibility map"; - Login.Login_loadingPercent = 10; - Client.field419 = class92.field935; - } else if (class92.field935 == Client.field419) { - AttackOption.field1096 = class133.newArchive(0, false, true, true, false); - class318.archive7 = class133.newArchive(1, false, true, true, false); - class1.archive2 = class133.newArchive(2, true, false, true, false); - ObjectSound.archive4 = class133.newArchive(3, false, true, true, false); - class28.field81 = class133.newArchive(4, false, true, true, false); - class499.archive9 = class133.newArchive(5, true, true, true, false); - class385.archive6 = class133.newArchive(6, true, true, true, false); - Message.archive11 = class133.newArchive(7, false, true, true, false); - PcmPlayer.archive8 = class133.newArchive(8, false, true, true, false); - class147.field1348 = class133.newArchive(9, false, true, true, false); - class141.archive10 = class133.newArchive(10, false, true, true, false); - class388.field3655 = class133.newArchive(11, false, true, true, false); - GrandExchangeOffer.archive12 = class133.newArchive(12, false, true, true, false); - Player.archive13 = class133.newArchive(13, true, false, true, false); - class106.field1107 = class133.newArchive(14, false, true, true, false); - Tiles.field838 = class133.newArchive(15, false, true, true, false); - class10.field28 = class133.newArchive(17, true, true, true, false); - WorldMapElement.field1509 = class133.newArchive(18, false, true, true, false); - ClanChannelMember.field1339 = class133.newArchive(19, false, true, true, false); - class227.field2040 = class133.newArchive(20, false, true, true, false); - class343.field3148 = class133.newArchive(21, false, true, true, true); - Login.Login_loadingText = "Connecting to update server"; - Login.Login_loadingPercent = 20; - Client.field419 = class92.field939; - } else if (class92.field939 == Client.field419) { - byte var43 = 0; - var0 = var43 + AttackOption.field1096.percentage() * 4 / 100; - var0 += class318.archive7.percentage() * 4 / 100; - var0 += class1.archive2.percentage() * 2 / 100; - var0 += ObjectSound.archive4.percentage() * 2 / 100; - var0 += class28.field81.percentage() * 6 / 100; - var0 += class499.archive9.percentage() * 4 / 100; - var0 += class385.archive6.percentage() * 2 / 100; - var0 += Message.archive11.percentage() * 55 / 100; - var0 += PcmPlayer.archive8.percentage() * 2 / 100; - var0 += class147.field1348.percentage() * 2 / 100; - var0 += class141.archive10.percentage() * 2 / 100; - var0 += class388.field3655.percentage() * 2 / 100; - var0 += GrandExchangeOffer.archive12.percentage() * 2 / 100; - var0 += Player.archive13.percentage() * 2 / 100; - var0 += class106.field1107.percentage() * 2 / 100; - var0 += Tiles.field838.percentage() * 2 / 100; - var0 += ClanChannelMember.field1339.percentage() / 100; - var0 += WorldMapElement.field1509.percentage() / 100; - var0 += class227.field2040.percentage() / 100; - var0 += class343.field3148.percentage() / 100; - var0 += class10.field28.method1887() && class10.field28.isFullyLoaded() ? 1 : 0; - if (var0 != 100) { - if (var0 != 0) { - Login.Login_loadingText = "Checking for updates - " + var0 + "%"; - } + if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 1) { + class148.worldSelectArrows[3].drawAt(var2 + 15, 4); + } else { + class148.worldSelectArrows[1].drawAt(var2 + 15, 4); + } - Login.Login_loadingPercent = 30; + var0.draw("World", var2 + 32, 17, 16777215, -1); + int var3 = Login.xPadding + 390; + if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 0) { + class148.worldSelectArrows[2].drawAt(var3, 4); } else { - class466.method2348(AttackOption.field1096, "Animations"); - class466.method2348(class318.archive7, "Skeletons"); - class466.method2348(class28.field81, "Sound FX"); - class466.method2348(class499.archive9, "Maps"); - class466.method2348(class385.archive6, "Music Tracks"); - class466.method2348(Message.archive11, "Models"); - class466.method2348(PcmPlayer.archive8, "Sprites"); - class466.method2348(class388.field3655, "Music Jingles"); - class466.method2348(class106.field1107, "Music Samples"); - class466.method2348(Tiles.field838, "Music Patches"); - class466.method2348(ClanChannelMember.field1339, "World Map"); - class466.method2348(WorldMapElement.field1509, "World Map Geography"); - class466.method2348(class227.field2040, "World Map Ground"); - class387.field3652 = new GraphicsDefaults(); - class387.field3652.decode(class10.field28); - Login.Login_loadingText = "Loaded update list"; - Login.Login_loadingPercent = 30; - Client.field419 = class92.field928; + class148.worldSelectArrows[0].drawAt(var3, 4); + } + + if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 1) { + class148.worldSelectArrows[3].drawAt(var3 + 15, 4); + } else { + class148.worldSelectArrows[1].drawAt(var3 + 15, 4); + } + + var0.draw("Players", var3 + 32, 17, 16777215, -1); + var4 = Login.xPadding + 500; + if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 0) { + class148.worldSelectArrows[2].drawAt(var4, 4); + } else { + class148.worldSelectArrows[0].drawAt(var4, 4); + } + + if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 1) { + class148.worldSelectArrows[3].drawAt(var4 + 15, 4); + } else { + class148.worldSelectArrows[1].drawAt(var4 + 15, 4); + } + + var0.draw("Location", var4 + 32, 17, 16777215, -1); + var5 = Login.xPadding + 610; + if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 0) { + class148.worldSelectArrows[2].drawAt(var5, 4); + } else { + class148.worldSelectArrows[0].drawAt(var5, 4); } - } else { - int var2; - Archive var3; - Archive var29; - if (class92.field928 == Client.field419) { - class504.method2502(22050, !Client.isLowDetail, 2); - ArrayList var48 = new ArrayList(3); - AddRequestTask.pcmPlayer1 = TileItem.method612(GameEngine.taskHandler, 0, 2048); - class162.pcmStreamMixer = new PcmStreamMixer(); - PcmStreamMixer var37 = new PcmStreamMixer(); - var37.addSubStream(class162.pcmStreamMixer); - - for (var2 = 0; var2 < 3; ++var2) { - MidiPcmStream var39 = new MidiPcmStream(); - var39.method1638(9, 128); - var37.addSubStream(var39); - var48.add(var39); - } - AddRequestTask.pcmPlayer1.setStream(var37); - var29 = Tiles.field838; - var3 = class106.field1107; - Archive var40 = class28.field81; - class305.field2777 = var29; - class305.field2775 = var3; - class305.field2776 = var40; - class305.midiPcmStream = var48; - class330.decimator = new Decimator(22050, PcmPlayer.field181); - Login.Login_loadingText = "Prepared sound engine"; - Login.Login_loadingPercent = 35; - Client.field419 = class92.field932; - PacketBufferNode.field2613 = new Fonts(PcmPlayer.archive8, Player.archive13); + if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 1) { + class148.worldSelectArrows[3].drawAt(var5 + 15, 4); } else { - int var30; - if (Client.field419 == class92.field932) { - FontName[] var47 = new FontName[]{FontName.FontName_verdana13, FontName.FontName_verdana11, FontName.FontName_verdana15, FontName.FontName_bold12, FontName.FontName_plain11, FontName.FontName_plain12}; - var30 = var47.length; - Fonts var49 = PacketBufferNode.field2613; - FontName[] var38 = new FontName[]{FontName.FontName_verdana13, FontName.FontName_verdana11, FontName.FontName_verdana15, FontName.FontName_bold12, FontName.FontName_plain11, FontName.FontName_plain12}; - Client.fontsMap = var49.createMap(var38); - if (Client.fontsMap.size() < var30) { - Login.Login_loadingText = "Loading fonts - " + Client.fontsMap.size() * 100 / var30 + "%"; - Login.Login_loadingPercent = 40; - } else { - HealthBarUpdate.fontPlain11 = (Font)Client.fontsMap.get(FontName.FontName_plain11); - SecureRandomCallable.fontPlain12 = (Font)Client.fontsMap.get(FontName.FontName_plain12); - class59.fontBold12 = (Font)Client.fontsMap.get(FontName.FontName_bold12); - class18.field51 = Client.field645.get(); - Login.Login_loadingText = "Loaded fonts"; - Login.Login_loadingPercent = 40; - Client.field419 = class92.field941; - } + class148.worldSelectArrows[1].drawAt(var5 + 15, 4); + } + + var0.draw("Type", var5 + 32, 17, 16777215, -1); + } + + Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding + 708, 4, 50, 16, 0); + var1.drawCentered("Cancel", Login.xPadding + 708 + 25, 16, 16777215, -1); + Login.hoveredWorldIndex = -1; + if (class108.worldSelectBackSprites != null) { + byte var23 = 88; + byte var24 = 19; + var4 = 765 / (var23 + 1) - 1; + var5 = 480 / (var24 + 1); + + int var6; + int var7; + do { + var6 = var5; + var7 = var4; + if (var5 * (var4 - 1) >= World.World_count) { + --var4; + } + + if (var4 * (var5 - 1) >= World.World_count) { + --var5; + } + + if (var4 * (var5 - 1) >= World.World_count) { + --var5; + } + } while(var5 != var6 || var4 != var7); + + var6 = (765 - var4 * var23) / (var4 + 1); + if (var6 > 5) { + var6 = 5; + } + + var7 = (480 - var24 * var5) / (var5 + 1); + if (var7 > 5) { + var7 = 5; + } + + int var8 = (765 - var23 * var4 - var6 * (var4 - 1)) / 2; + int var9 = (480 - var24 * var5 - var7 * (var5 - 1)) / 2; + int var10 = (var5 + World.World_count - 1) / var5; + Login.worldSelectPagesCount = var10 - var4; + if (Varps.worldSelectLeftSprite != null && Login.worldSelectPage > 0) { + Varps.worldSelectLeftSprite.drawAt(8, class47.canvasHeight / 2 - Varps.worldSelectLeftSprite.subHeight / 2); + } + + if (class105.worldSelectRightSprite != null && Login.worldSelectPage < Login.worldSelectPagesCount) { + class105.worldSelectRightSprite.drawAt(Language.canvasWidth - class105.worldSelectRightSprite.subWidth - 8, class47.canvasHeight / 2 - class105.worldSelectRightSprite.subHeight / 2); + } + + int var11 = var9 + 23; + int var12 = var8 + Login.xPadding; + int var13 = 0; + boolean var14 = false; + int var15 = Login.worldSelectPage; + + int var16; + for (var16 = var5 * var15; var16 < World.World_count && var15 - Login.worldSelectPage < var4; ++var16) { + World var17 = class361.World_worlds[var16]; + boolean var18 = true; + String var19 = Integer.toString(var17.population); + if (var17.population == -1) { + var19 = "OFF"; + var18 = false; + } else if (var17.population > 1980) { + var19 = "FULL"; + var18 = false; + } + + class108 var20 = null; + int var21 = 0; + if (var17.isBeta()) { + var20 = var17.isMembersOnly() ? class108.field1131 : class108.field1129; + } else if (var17.isDeadman()) { + var20 = var17.isMembersOnly() ? class108.field1133 : class108.field1143; + } else if (var17.method402()) { + var21 = 16711680; + var20 = var17.isMembersOnly() ? class108.field1140 : class108.field1130; + } else if (var17.method404()) { + var20 = var17.isMembersOnly() ? class108.field1144 : class108.field1134; + } else if (var17.isPvp()) { + var20 = var17.isMembersOnly() ? class108.field1135 : class108.field1137; + } else if (var17.method405()) { + var20 = var17.isMembersOnly() ? class108.field1141 : class108.field1136; + } else if (var17.method406()) { + var20 = var17.isMembersOnly() ? class108.field1138 : class108.field1142; + } + + if (var20 == null || var20.field1145 >= class108.worldSelectBackSprites.length) { + var20 = var17.isMembersOnly() ? class108.field1132 : class108.field1139; + } + + if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var11 && MouseHandler.MouseHandler_x < var23 + var12 && MouseHandler.MouseHandler_y < var11 + var24 && var18) { + Login.hoveredWorldIndex = var16; + class108.worldSelectBackSprites[var20.field1145].drawTransOverlayAt(var12, var11, 128, 16777215); + var14 = true; } else { - Archive var1; - int var31; - Archive var32; - if (Client.field419 == class92.field941) { - var1 = class141.archive10; - var29 = PcmPlayer.archive8; - var31 = 0; - String[] var4 = Login.field770; - - int var5; - String var41; - for (var5 = 0; var5 < var4.length; ++var5) { - var41 = var4[var5]; - if (var1.tryLoadFileByNames(var41, "")) { - ++var31; - } - } - - var4 = Login.field769; - - for (var5 = 0; var5 < var4.length; ++var5) { - var41 = var4[var5]; - if (var29.tryLoadFileByNames(var41, "")) { - ++var31; - } - } - - var4 = Login.field771; - - for (var5 = 0; var5 < var4.length; ++var5) { - var41 = var4[var5]; - if (var29.getGroupId(var41) != -1 && var29.tryLoadFileByNames(var41, "")) { - ++var31; - } - } - - var32 = PcmPlayer.archive8; - int var33 = Login.field770.length + Login.field769.length; - String[] var42 = Login.field771; - - for (int var8 = 0; var8 < var42.length; ++var8) { - String var44 = var42[var8]; - if (var32.getGroupId(var44) != -1) { - ++var33; - } - } - - if (var31 < var33) { - Login.Login_loadingText = "Loading title screen - " + var31 * 100 / var33 + "%"; - Login.Login_loadingPercent = 50; - } else { - Login.Login_loadingText = "Loaded title screen"; - Login.Login_loadingPercent = 50; - MusicSong.updateGameState(5); - Client.field419 = class92.field936; - } - } else if (class92.field936 == Client.field419) { - if (!class1.archive2.isFullyLoaded()) { - Login.Login_loadingText = "Loading config - " + class1.archive2.loadPercent() + "%"; - Login.Login_loadingPercent = 60; - } else if (!class343.field3148.isFullyLoaded()) { - Login.Login_loadingText = "Loading config - " + (80 + GrandExchangeOffer.archive12.loadPercent() / 6) + "%"; - Login.Login_loadingPercent = 60; - } else { - class326.method1714(class1.archive2); - SecureRandomFuture.method435(class1.archive2); - Archive var46 = class1.archive2; - var1 = Message.archive11; - KitDefinition.KitDefinition_archive = var46; - KitDefinition.KitDefinition_modelsArchive = var1; - KitDefinition.KitDefinition_fileCount = KitDefinition.KitDefinition_archive.getGroupFileCount(3); - var29 = class1.archive2; - var3 = Message.archive11; - boolean var50 = Client.isLowDetail; - ObjectComposition.ObjectDefinition_archive = var29; - ObjectComposition.ObjectDefinition_modelsArchive = var3; - ObjectComposition.ObjectDefinition_isLowDetail = var50; - var32 = class1.archive2; - Archive var6 = Message.archive11; - NPCComposition.NpcDefinition_archive = var32; - NPCComposition.field1586 = var6; - Archive var7 = class1.archive2; - StructComposition.StructDefinition_archive = var7; - Archive var35 = class1.archive2; - Archive var9 = Message.archive11; - boolean var10 = Client.isMembersWorld; - Font var11 = HealthBarUpdate.fontPlain11; - class384.ItemDefinition_archive = var35; - ItemComposition.ItemDefinition_modelArchive = var9; - ItemComposition.ItemDefinition_inMembersWorld = var10; - HealthBar.ItemDefinition_fileCount = class384.ItemDefinition_archive.getGroupFileCount(10); - class452.ItemDefinition_fontPlain11 = var11; - class227.method1215(class1.archive2, AttackOption.field1096, class318.archive7); - Archive var12 = class1.archive2; - Archive var13 = Message.archive11; - SpotAnimationDefinition.SpotAnimationDefinition_archive = var12; - SpotAnimationDefinition.SpotAnimationDefinition_modelArchive = var13; - ServerPacket.method1612(class1.archive2); - FileSystem.method911(class1.archive2); - Archive var14 = ObjectSound.archive4; - Archive var15 = Message.archive11; - Archive var16 = PcmPlayer.archive8; - Archive var17 = Player.archive13; - int var18 = 0; - if (var14 != null) { - Decimator.Widget_archive = var14; - class47.field226 = var15; - Language.Widget_spritesArchive = var16; - class155.Widget_fontsArchive = var17; - var18 = Decimator.Widget_archive.getGroupCount(); - } - - PacketBufferNode.Widget_interfaceComponents = new Widget[var18][]; - class316.Widget_loadedInterfaces = new boolean[var18]; - ModeWhere.method1978(class1.archive2); - Archive var36 = class1.archive2; - EnumComposition.EnumDefinition_archive = var36; - Archive var19 = class1.archive2; - VarcInt.VarcInt_archive = var19; - Archive var20 = class1.archive2; - class139.method756(class1.archive2); - BufferedSource.method2268(class1.archive2); - ModelData0.method1382(class1.archive2); - class47.HitSplatDefinition_cachedSprites = new class497(WorldMapSectionType.field2417, 54, ClanChannelMember.clientLanguage, class1.archive2); - SwapSongTask.HitSplatDefinition_cached = new class497(WorldMapSectionType.field2417, 47, ClanChannelMember.clientLanguage, class1.archive2); - KeyHandler.varcs = new Varcs(); - Archive var21 = class1.archive2; - Archive var22 = PcmPlayer.archive8; - Archive var23 = Player.archive13; - HitSplatDefinition.HitSplatDefinition_archive = var21; - HitSplatDefinition.field1689 = var22; - HitSplatDefinition.HitSplatDefinition_fontsArchive = var23; - class152.method796(class1.archive2, PcmPlayer.archive8); - Archive var24 = class1.archive2; - Archive var25 = PcmPlayer.archive8; - WorldMapElement.WorldMapElement_archive = var25; - if (var24.isFullyLoaded()) { - WorldMapElement.WorldMapElement_count = var24.getGroupFileCount(35); - WorldMapElement.WorldMapElement_cached = new WorldMapElement[WorldMapElement.WorldMapElement_count]; - - for (int var26 = 0; var26 < WorldMapElement.WorldMapElement_count; ++var26) { - byte[] var27 = var24.takeFile(35, var26); - WorldMapElement.WorldMapElement_cached[var26] = new WorldMapElement(var26); - if (var27 != null) { - WorldMapElement.WorldMapElement_cached[var26].decode(new Buffer(var27)); - WorldMapElement.WorldMapElement_cached[var26].method949(); - } - } - } - - Login.Login_loadingText = "Loaded config"; - Login.Login_loadingPercent = 60; - Client.field419 = class92.field926; - } - } else if (Client.field419 == class92.field926) { - var0 = 0; - if (Client.compass == null) { - Client.compass = Tiles.SpriteBuffer_getSprite(PcmPlayer.archive8, class387.field3652.compass, 0); - } else { - ++var0; - } - - if (class167.redHintArrowSprite == null) { - class167.redHintArrowSprite = Tiles.SpriteBuffer_getSprite(PcmPlayer.archive8, class387.field3652.field3850, 0); - } else { - ++var0; - } - - if (class299.mapSceneSprites == null) { - class299.mapSceneSprites = class28.method110(PcmPlayer.archive8, class387.field3652.mapScenes, 0); - } else { - ++var0; - } - - if (class178.headIconPkSprites == null) { - class178.headIconPkSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.headIconsPk, 0); - } else { - ++var0; - } - - if (class502.headIconPrayerSprites == null) { - class502.headIconPrayerSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.field3848, 0); - } else { - ++var0; - } - - if (ArchiveLoader.headIconHintSprites == null) { - ArchiveLoader.headIconHintSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.field3852, 0); - } else { - ++var0; - } - - if (Message.mapMarkerSprites == null) { - Message.mapMarkerSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.field3857, 0); - } else { - ++var0; - } - - if (class152.crossSprites == null) { - class152.crossSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.field3854, 0); - } else { - ++var0; - } - - if (FloorOverlayDefinition.mapDotSprites == null) { - FloorOverlayDefinition.mapDotSprites = WorldMapArchiveLoader.method2379(PcmPlayer.archive8, class387.field3652.field3847, 0); - } else { - ++var0; - } - - if (GrandExchangeOfferOwnWorldComparator.scrollBarSprites == null) { - GrandExchangeOfferOwnWorldComparator.scrollBarSprites = class28.method110(PcmPlayer.archive8, class387.field3652.field3851, 0); - } else { - ++var0; - } - - if (class451.field3876 == null) { - class451.field3876 = class28.method110(PcmPlayer.archive8, class387.field3652.field3849, 0); - } else { - ++var0; - } - - if (var0 < 11) { - Login.Login_loadingText = "Loading sprites - " + var0 * 100 / 12 + "%"; - Login.Login_loadingPercent = 70; - } else { - AbstractFont.AbstractFont_modIconSprites = class451.field3876; - class167.redHintArrowSprite.normalize(); - var30 = (int)(Math.random() * 21.0D) - 10; - var2 = (int)(Math.random() * 21.0D) - 10; - var31 = (int)(Math.random() * 21.0D) - 10; - int var34 = (int)(Math.random() * 41.0D) - 20; - class299.mapSceneSprites[0].shiftColors(var34 + var30, var2 + var34, var34 + var31); - Login.Login_loadingText = "Loaded sprites"; - Login.Login_loadingPercent = 70; - Client.field419 = class92.field931; - } - } else if (Client.field419 == class92.field931) { - if (!class147.field1348.isFullyLoaded()) { - Login.Login_loadingText = "Loading textures - " + "0%"; - Login.Login_loadingPercent = 90; - } else { - class129.textureProvider = new TextureProvider(class147.field1348, PcmPlayer.archive8, 20, class449.clientPreferences.getBrightness(), Client.isLowDetail ? 64 : 128); - Rasterizer3D.method1186(class129.textureProvider); - Rasterizer3D.method1187(class449.clientPreferences.getBrightness()); - Client.field419 = class92.field929; - } - } else if (class92.field929 == Client.field419) { - var0 = class129.textureProvider.getLoadedPercentage(); - if (var0 < 100) { - Login.Login_loadingText = "Loading textures - " + var0 + "%"; - Login.Login_loadingPercent = 90; - } else { - Login.Login_loadingText = "Loaded textures"; - Login.Login_loadingPercent = 90; - Client.field419 = class92.field937; - } - } else if (Client.field419 == class92.field937) { - class126.mouseRecorder = new MouseRecorder(); - GameEngine.taskHandler.newThreadTask(class126.mouseRecorder, 10); - Login.Login_loadingText = "Loaded input handler"; - Login.Login_loadingPercent = 92; - Client.field419 = class92.field933; - } else if (class92.field933 == Client.field419) { - if (!class141.archive10.tryLoadFileByNames("huffman", "")) { - Login.Login_loadingText = "Loading wordpack - " + 0 + "%"; - Login.Login_loadingPercent = 94; - } else { - Huffman var45 = new Huffman(class141.archive10.takeFileByNames("huffman", "")); - UserComparator9.method683(var45); - Login.Login_loadingText = "Loaded wordpack"; - Login.Login_loadingPercent = 94; - Client.field419 = class92.field934; - } - } else if (class92.field934 == Client.field419) { - if (!ObjectSound.archive4.isFullyLoaded()) { - Login.Login_loadingText = "Loading interfaces - " + ObjectSound.archive4.loadPercent() * 4 / 5 + "%"; - Login.Login_loadingPercent = 96; - } else if (!GrandExchangeOffer.archive12.isFullyLoaded()) { - Login.Login_loadingText = "Loading interfaces - " + (80 + GrandExchangeOffer.archive12.loadPercent() / 6) + "%"; - Login.Login_loadingPercent = 96; - } else if (!Player.archive13.isFullyLoaded()) { - Login.Login_loadingText = "Loading interfaces - " + (96 + Player.archive13.loadPercent() / 50) + "%"; - Login.Login_loadingPercent = 96; - } else { - Login.Login_loadingText = "Loaded interfaces"; - Login.Login_loadingPercent = 98; - if (GrandExchangeOffer.archive12.isValidFileName("version.dat", "")) { - Buffer var28 = new Buffer(GrandExchangeOffer.archive12.takeFileByNames("version.dat", "")); - var28.readUnsignedShort(); - } - - Client.field419 = class92.field938; - } - } else if (Client.field419 == class92.field938) { - Login.Login_loadingPercent = 100; - if (ClanChannelMember.field1339.getGroupCount() > 0 && !ClanChannelMember.field1339.tryLoadGroupByName(WorldMapCacheName.field2471.name)) { - Login.Login_loadingText = "Loading world map - " + ClanChannelMember.field1339.groupLoadPercentByName(WorldMapCacheName.field2471.name) / 10 + "%"; - } else { - if (Canvas.worldMap == null) { - Canvas.worldMap = new WorldMap(); - Canvas.worldMap.init(ClanChannelMember.field1339, WorldMapElement.field1509, class227.field2040, class59.fontBold12, Client.fontsMap, class299.mapSceneSprites); - } - - Login.Login_loadingText = "Loaded world map"; - Client.field419 = class92.field927; - } - } else { - if (class92.field927 == Client.field419) { - MusicSong.updateGameState(10); - } - - } + class108.worldSelectBackSprites[var20.field1145].drawAt(var12, var11); + } + + if (class130.worldSelectFlagSprites != null) { + class130.worldSelectFlagSprites[(var17.isMembersOnly() ? 8 : 0) + var17.location].drawAt(var12 + 29, var11); + } + + var0.drawCentered(Integer.toString(var17.id), var12 + 15, var24 / 2 + var11 + 5, var21, -1); + var1.drawCentered(var19, var12 + 60, var24 / 2 + var11 + 5, 268435455, -1); + var11 = var11 + var7 + var24; + ++var13; + if (var13 >= var5) { + var11 = var9 + 23; + var12 = var12 + var23 + var6; + var13 = 0; + ++var15; } } + + if (var14) { + var16 = var1.stringWidth(class361.World_worlds[Login.hoveredWorldIndex].activity) + 6; + int var22 = var1.ascent + 8; + int var25 = MouseHandler.MouseHandler_y + 25; + if (var25 + var22 > 480) { + var25 = MouseHandler.MouseHandler_y - 25 - var22; + } + + Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var16 / 2, var25, var16, var22, 16777120); + Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var16 / 2, var25, var16, var22, 0); + var1.drawCentered(class361.World_worlds[Login.hoveredWorldIndex].activity, MouseHandler.MouseHandler_x, var25 + var1.ascent + 4, 0, -1); + } } + } } \ No newline at end of file diff --git a/osrs/src/main/java/PcmPlayer.java b/osrs/src/main/java/PcmPlayer.java index 0b296c83d..fcc975e5f 100644 --- a/osrs/src/main/java/PcmPlayer.java +++ b/osrs/src/main/java/PcmPlayer.java @@ -3,175 +3,172 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.ScheduledExecutorService; - -@ObfuscatedName("bb") +@ObfuscatedName("by") @Implements("PcmPlayer") public class PcmPlayer { - @ObfuscatedName("ac") - public static int field181; - @ObfuscatedName("ai") - @Export("PcmPlayer_stereo") - protected static boolean PcmPlayer_stereo; - @ObfuscatedName("ap") - @Export("soundSystemExecutor") - static ScheduledExecutorService soundSystemExecutor; - @ObfuscatedName("aa") - static int field182; + @ObfuscatedName("ab") + public static int field179; + @ObfuscatedName("al") + public static int field180; + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lbq;" + ) + @Export("pcmPlayerProvider") + public static class51 pcmPlayerProvider; @ObfuscatedName("fx") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Loh;" ) - @Export("archive8") - static Archive archive8; - @ObfuscatedName("an") + static Archive field181; + @ObfuscatedName("as") @Export("samples") - protected int[] samples; - @ObfuscatedName("ar") + public int[] samples; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lbw;" + descriptor = "Lbk;" ) @Export("stream") PcmStream stream; - @ObfuscatedName("ab") + @ObfuscatedName("ak") int field189; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("timeMs") long timeMs; @ObfuscatedName("am") @Export("capacity") - int capacity; - @ObfuscatedName("ax") - int field194; - @ObfuscatedName("ah") - int field190; - @ObfuscatedName("as") - long field198; - @ObfuscatedName("ay") - int field195; - @ObfuscatedName("aj") - int field191; - @ObfuscatedName("av") - int field193; + public int capacity; + @ObfuscatedName("aq") + public int field196; + @ObfuscatedName("ai") + int field188; @ObfuscatedName("aw") - long field199; - @ObfuscatedName("ak") + long field194; + @ObfuscatedName("ae") + int field186; + @ObfuscatedName("an") + int field190; + @ObfuscatedName("ag") + int field187; + @ObfuscatedName("ad") + long field192; + @ObfuscatedName("af") boolean field185; - @ObfuscatedName("bd") - int field196; - @ObfuscatedName("by") + @ObfuscatedName("bf") + int field191; + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "[Lbw;" + descriptor = "[Lbk;" ) - PcmStream[] field188; - @ObfuscatedName("bs") + PcmStream[] field184; + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "[Lbw;" + descriptor = "[Lbk;" ) - PcmStream[] field187; + PcmStream[] field183; - protected PcmPlayer() { + public PcmPlayer() { this.field189 = 32; - this.timeMs = GameEngine.clockNow(); - this.field198 = 0L; - this.field195 = 0; - this.field191 = 0; - this.field193 = 0; - this.field199 = 0L; + this.timeMs = SpotAnimationDefinition.method962(); + this.field194 = 0L; + this.field186 = 0; + this.field190 = 0; + this.field187 = 0; + this.field192 = 0L; this.field185 = true; - this.field196 = 0; - this.field188 = new PcmStream[8]; - this.field187 = new PcmStream[8]; + this.field191 = 0; + this.field184 = new PcmStream[8]; + this.field183 = new PcmStream[8]; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1766369380" + descriptor = "(B)V", + garbageValue = "95" ) @Export("init") - protected void init() throws Exception { + public void init() throws Exception { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-83" + descriptor = "(II)V", + garbageValue = "1706445518" ) @Export("open") - protected void open(int var1) throws Exception { + public void open(int var1) throws Exception { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1982834691" + garbageValue = "-79725090" ) @Export("position") protected int position() throws Exception { return this.capacity; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("write") protected void write() throws Exception { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1874015336" + garbageValue = "1254913818" ) @Export("close") protected void close() { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "54" + descriptor = "(I)V", + garbageValue = "-264971545" ) @Export("discard") protected void discard() throws Exception { } - @ObfuscatedName("as") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Lbw;I)V", - garbageValue = "-828545471" + descriptor = "(Lbk;B)V", + garbageValue = "32" ) @Export("setStream") public final synchronized void setStream(PcmStream var1) { this.stream = var1; } - @ObfuscatedName("ay") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "-1871006724" ) @Export("run") public final synchronized void run() { if (this.samples != null) { - long var1 = GameEngine.clockNow(); + long var1 = SpotAnimationDefinition.method962(); try { - if (0L != this.field198) { - if (var1 < this.field198) { + if (0L != this.field194) { + if (var1 < this.field194) { return; } this.open(this.capacity); - this.field198 = 0L; + this.field194 = 0L; this.field185 = true; } int var3 = this.position(); - if (this.field193 - var3 > this.field195) { - this.field195 = this.field193 - var3; + if (this.field187 - var3 > this.field186) { + this.field186 = this.field187 - var3; } - int var4 = this.field190 + this.field194; + int var4 = this.field196 + this.field188; if (var4 + 256 > 16384) { var4 = 16128; } @@ -188,7 +185,7 @@ public final synchronized void run() { this.field185 = true; if (var4 + 256 > this.capacity) { var4 = this.capacity - 256; - this.field190 = var4 - this.field194; + this.field188 = var4 - this.field196; } } @@ -198,28 +195,28 @@ public final synchronized void run() { var3 += 256; } - if (var1 > this.field199) { + if (var1 > this.field192) { if (!this.field185) { - if (this.field195 == 0 && this.field191 == 0) { + if (this.field186 == 0 && this.field190 == 0) { this.close(); - this.field198 = var1 + 2000L; + this.field194 = 2000L + var1; return; } - this.field190 = Math.min(this.field191, this.field195); - this.field191 = this.field195; + this.field188 = Math.min(this.field190, this.field186); + this.field190 = this.field186; } else { this.field185 = false; } - this.field195 = 0; - this.field199 = var1 + 2000L; + this.field186 = 0; + this.field192 = var1 + 2000L; } - this.field193 = var3; + this.field187 = var3; } catch (Exception var7) { this.close(); - this.field198 = 2000L + var1; + this.field194 = 2000L + var1; } try { @@ -227,9 +224,9 @@ public final synchronized void run() { var1 = this.timeMs; } - while (var1 > this.timeMs + 5000L) { + while (var1 > 5000L + this.timeMs) { this.skip(256); - this.timeMs += (long)(256000 / field181); + this.timeMs += (long)(256000 / field179); } } catch (Exception var6) { this.timeMs = var1; @@ -238,19 +235,19 @@ public final synchronized void run() { } } - @ObfuscatedName("aj") + @ObfuscatedName("af") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1331437422" + garbageValue = "-440619545" ) - public final void method200() { + public final void method213() { this.field185 = true; } - @ObfuscatedName("av") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "30" + descriptor = "(I)V", + garbageValue = "-2108187094" ) @Export("tryDiscard") public final synchronized void tryDiscard() { @@ -260,35 +257,35 @@ public final synchronized void tryDiscard() { this.discard(); } catch (Exception var2) { this.close(); - this.field198 = GameEngine.clockNow() + 2000L; + this.field194 = SpotAnimationDefinition.method962() + 2000L; } } - @ObfuscatedName("aw") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-35" + descriptor = "(I)V", + garbageValue = "592900977" ) @Export("shutdown") public final synchronized void shutdown() { - if (Canvas.soundSystem != null) { + if (DelayFadeTask.soundSystem != null) { boolean var1 = true; for (int var2 = 0; var2 < 2; ++var2) { - if (this == Canvas.soundSystem.players[var2]) { - Canvas.soundSystem.players[var2] = null; + if (this == DelayFadeTask.soundSystem.players[var2]) { + DelayFadeTask.soundSystem.players[var2] = null; } - if (Canvas.soundSystem.players[var2] != null) { + if (DelayFadeTask.soundSystem.players[var2] != null) { var1 = false; } } if (var1) { - soundSystemExecutor.shutdownNow(); - soundSystemExecutor = null; - Canvas.soundSystem = null; + class342.soundSystemExecutor.shutdownNow(); + class342.soundSystemExecutor = null; + DelayFadeTask.soundSystem = null; } } @@ -296,16 +293,16 @@ public final synchronized void shutdown() { this.samples = null; } - @ObfuscatedName("ak") + @ObfuscatedName("bl") @ObfuscatedSignature( descriptor = "(IB)V", - garbageValue = "9" + garbageValue = "-120" ) @Export("skip") final void skip(int var1) { - this.field196 -= var1; - if (this.field196 < 0) { - this.field196 = 0; + this.field191 -= var1; + if (this.field191 < 0) { + this.field191 = 0; } if (this.stream != null) { @@ -314,20 +311,20 @@ final void skip(int var1) { } - @ObfuscatedName("bh") + @ObfuscatedName("bi") @Export("fill") final void fill(int[] var1, int var2) { int var3 = var2; - if (PcmPlayer_stereo) { + if (WorldMapRectangle.PcmPlayer_stereo) { var3 = var2 << 1; } - class409.clearIntArray(var1, 0, var3); - this.field196 -= var2; - if (this.stream != null && this.field196 <= 0) { - this.field196 += field181 >> 4; - class31.PcmStream_disable(this.stream); - this.method205(this.stream, this.stream.vmethod1019()); + class421.clearIntArray(var1, 0, var3); + this.field191 -= var2; + if (this.stream != null && this.field191 <= 0) { + this.field191 += field179 >> 4; + NPC.PcmStream_disable(this.stream); + this.method218(this.stream, this.stream.vmethod1019()); int var4 = 0; int var5 = 255; @@ -349,7 +346,7 @@ final void fill(int[] var1, int var2) { if ((var9 & 1) != 0) { var5 &= ~(1 << var7); var10 = null; - PcmStream var11 = this.field188[var7]; + PcmStream var11 = this.field184[var7]; label99: while (true) { @@ -377,21 +374,21 @@ final void fill(int[] var1, int var2) { PcmStream var14 = var11.firstSubStream(); if (var14 != null) { - for (int var15 = var11.field249; var14 != null; var14 = var11.nextSubStream()) { - this.method205(var14, var15 * var14.vmethod1019() >> 8); + for (int var15 = var11.field244; var14 != null; var14 = var11.nextSubStream()) { + this.method218(var14, var15 * var14.vmethod1019() >> 8); } } PcmStream var16 = var11.after; var11.after = null; if (var10 == null) { - this.field188[var7] = var16; + this.field184[var7] = var16; } else { var10.after = var16; } if (var16 == null) { - this.field187[var7] = var10; + this.field183[var7] = var10; } var11 = var16; @@ -406,9 +403,9 @@ final void fill(int[] var1, int var2) { } for (var6 = 0; var6 < 8; ++var6) { - PcmStream var17 = this.field188[var6]; - PcmStream[] var18 = this.field188; - this.field187[var6] = null; + PcmStream var17 = this.field184[var6]; + PcmStream[] var18 = this.field184; + this.field183[var6] = null; for (var18[var6] = null; var17 != null; var17 = var10) { var10 = var17.after; @@ -417,703 +414,61 @@ final void fill(int[] var1, int var2) { } } - if (this.field196 < 0) { - this.field196 = 0; + if (this.field191 < 0) { + this.field191 = 0; } if (this.stream != null) { this.stream.fill(var1, 0, var2); } - this.timeMs = GameEngine.clockNow(); + this.timeMs = SpotAnimationDefinition.method962(); } - @ObfuscatedName("bk") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "(Lbw;II)V", - garbageValue = "1754087851" + descriptor = "(Lbk;IB)V", + garbageValue = "39" ) - final void method205(PcmStream var1, int var2) { + final void method218(PcmStream var1, int var2) { int var3 = var2 >> 5; - PcmStream var4 = this.field187[var3]; + PcmStream var4 = this.field183[var3]; if (var4 == null) { - this.field188[var3] = var1; + this.field184[var3] = var1; } else { var4.after = var1; } - this.field187[var3] = var1; - var1.field249 = var2; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "125" - ) - public static int method197(int var0) { - long var2 = ViewportMouse.ViewportMouse_entityTags[var0]; - int var1 = (int)(var2 >>> 7 & 127L); - return var1; - } - - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "2108015149" - ) - static void method212(int var0) { - if (var0 != Login.loginIndex) { - Login.loginIndex = var0; - } + this.field183[var3] = var1; + var1.field244 = var2; } - @ObfuscatedName("jp") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ldr;IIIIIB)V", - garbageValue = "1" + descriptor = "(Luj;Ljava/lang/String;B)I", + garbageValue = "108" ) - @Export("drawActor2d") - static final void drawActor2d(Actor var0, int var1, int var2, int var3, int var4, int var5) { - if (var0 != null && var0.isVisible()) { - if (var0 instanceof NPC) { - NPCComposition var6 = ((NPC)var0).definition; - if (var6.transforms != null) { - var6 = var6.transform(); - } - - if (var6 == null) { - return; - } - } - - int var75 = Players.Players_count; - int[] var7 = Players.Players_indices; - boolean var8 = var1 < var75; - int var9 = -2; - if (var0.overheadText != null && (!var8 || !var0.showPublicPlayerChat && (Client.publicChatMode == 4 || !var0.isAutoChatting && (Client.publicChatMode == 0 || Client.publicChatMode == 3 || Client.publicChatMode == 1 && ((Player)var0).isFriend())))) { - SecureRandomFuture.method443(var0, var0.defaultHeight); - if (Client.viewportTempX > -1 && Client.overheadTextLimit < Client.overheadTextCount) { - Client.overheadTextXOffsets[Client.overheadTextLimit] = class59.fontBold12.stringWidth(var0.overheadText) / 2; - Client.overheadTextAscents[Client.overheadTextLimit] = class59.fontBold12.ascent; - Client.overheadTextXs[Client.overheadTextLimit] = Client.viewportTempX; - Client.overheadTextYs[Client.overheadTextLimit] = Client.viewportTempY - var9; - Client.overheadTextColors[Client.overheadTextLimit] = var0.field995; - Client.overheadTextEffects[Client.overheadTextLimit] = var0.field996; - Client.overheadTextCyclesRemaining[Client.overheadTextLimit] = var0.overheadTextCyclesRemaining; - Client.field594[Client.overheadTextLimit] = var0.field1028; - Client.field603[Client.overheadTextLimit] = var0.overheadText; - ++Client.overheadTextLimit; - var9 += 12; - } - } - - int var15; - int var22; - int var23; - if (!var0.healthBars.method2008()) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - - for (HealthBar var10 = (HealthBar)var0.healthBars.last(); var10 != null; var10 = (HealthBar)var0.healthBars.previous()) { - HealthBarUpdate var11 = var10.get(Client.cycle); - if (var11 == null) { - if (var10.isEmpty()) { - var10.remove(); - } - } else { - HealthBarDefinition var12 = var10.definition; - SpritePixels var13 = var12.getBackSprite(); - SpritePixels var14 = var12.getFrontSprite(); - int var16 = 0; - if (var13 != null && var14 != null) { - if (var12.widthPadding * 2 < var14.subWidth) { - var16 = var12.widthPadding; - } - - var15 = var14.subWidth - var16 * 2; - } else { - var15 = var12.width; - } - - int var17 = 255; - boolean var18 = true; - int var19 = Client.cycle - var11.cycle; - int var20 = var15 * var11.health2 / var12.width; - int var21; - int var97; - if (var11.cycleOffset > var19) { - var21 = var12.field1556 == 0 ? 0 : var12.field1556 * (var19 / var12.field1556); - var22 = var15 * var11.health / var12.width; - var97 = var21 * (var20 - var22) / var11.cycleOffset + var22; - } else { - var97 = var20; - var21 = var11.cycleOffset + var12.int5 - var19; - if (var12.int3 >= 0) { - var17 = (var21 << 8) / (var12.int5 - var12.int3); - } - } - - if (var11.health2 > 0 && var97 < 1) { - var97 = 1; - } - - if (var13 != null && var14 != null) { - if (var15 == var97) { - var97 += var16 * 2; - } else { - var97 += var16; - } - - var21 = var13.subHeight; - var9 += var21; - var22 = var2 + Client.viewportTempX - (var15 >> 1); - var23 = var3 + Client.viewportTempY - var9; - var22 -= var16; - if (var17 >= 0 && var17 < 255) { - var13.drawTransAt(var22, var23, var17); - Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var22 + var97, var23 + var21); - var14.drawTransAt(var22, var23, var17); - } else { - var13.drawTransBgAt(var22, var23); - Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var22 + var97, var21 + var23); - var14.drawTransBgAt(var22, var23); - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var2 + var4, var3 + var5); - var9 += 2; - } else { - var9 += 5; - if (Client.viewportTempX > -1) { - var21 = var2 + Client.viewportTempX - (var15 >> 1); - var22 = var3 + Client.viewportTempY - var9; - Rasterizer2D.Rasterizer2D_fillRectangle(var21, var22, var97, 5, 65280); - Rasterizer2D.Rasterizer2D_fillRectangle(var97 + var21, var22, var15 - var97, 5, 16711680); - } - - var9 += 2; - } - } - } - } - - if (var9 == -2) { - var9 += 7; - } - - Player var90; - if (var8 && var0.playerCycle == Client.cycle && Occluder.method1299((Player)var0)) { - var90 = (Player)var0; - if (var8) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - AbstractFont var91 = (AbstractFont)Client.fontsMap.get(FontName.FontName_plain12); - var9 += 4; - var91.drawCentered(var90.username.getName(), var2 + Client.viewportTempX, var3 + Client.viewportTempY - var9, 16777215, 0); - var9 += 18; - } - } - - if (var8) { - var90 = (Player)var0; - if (var90.isHidden) { - return; - } - - if (var90.headIconPk != -1 || var90.headIconPrayer != -1) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - if (Client.viewportTempX > -1) { - if (var90.headIconPk != -1) { - var9 += 25; - class178.headIconPkSprites[var90.headIconPk].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); - } - - if (var90.headIconPrayer != -1) { - var9 += 25; - class502.headIconPrayerSprites[var90.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); - } - } - } - - if (var1 >= 0 && Client.hintArrowType == 10 && var7[var1] == Client.hintArrowPlayerIndex) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - if (Client.viewportTempX > -1) { - var9 += ArchiveLoader.headIconHintSprites[1].subHeight; - ArchiveLoader.headIconHintSprites[1].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); - } - } - } else { - NPC var92 = (NPC)var0; - int[] var93 = var92.method587(); - short[] var94 = var92.method588(); - if (var94 != null && var93 != null) { - for (int var76 = 0; var76 < var94.length; ++var76) { - if (var94[var76] >= 0 && var93[var76] >= 0) { - long var77 = (long)var93[var76] << 8 | (long)var94[var76]; - SpritePixels var79 = (SpritePixels)Client.archive5.method2180(var77); - if (var79 == null) { - SpritePixels[] var80 = WorldMapArchiveLoader.method2379(archive8, var93[var76], 0); - if (var80 != null && var94[var76] < var80.length) { - var79 = var80[var94[var76]]; - Client.archive5.method2181(var77, var79); - } - } - - if (var79 != null) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - if (Client.viewportTempX > -1) { - var79.drawTransBgAt(var2 + Client.viewportTempX - (var79.subWidth >> 1), Client.viewportTempY + (var3 - var79.subHeight) - 4); - } - } - } - } - } - - if (Client.hintArrowType == 1 && Client.npcIndices[var1 - var75] == Client.hintArrowNpcIndex && Client.cycle % 20 < 10) { - SecureRandomFuture.method443(var0, var0.defaultHeight + 15); - if (Client.viewportTempX > -1) { - ArchiveLoader.headIconHintSprites[0].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 28); - } - } - } - - for (int var81 = 0; var81 < 4; ++var81) { - int var82 = var0.hitSplatCycles[var81]; - int var83 = var0.hitSplatTypes[var81]; - HitSplatDefinition var95 = null; - int var84 = 0; - if (var83 >= 0) { - if (var82 <= Client.cycle) { - continue; - } - - var95 = WorldMapCacheName.method1564(var0.hitSplatTypes[var81]); - var84 = var95.field1706; - if (var95 != null && var95.transforms != null) { - var95 = var95.transform(); - if (var95 == null) { - var0.hitSplatCycles[var81] = -1; - continue; - } - } - } else if (var82 < 0) { - continue; - } - - var15 = var0.hitSplatTypes2[var81]; - HitSplatDefinition var99 = null; - if (var15 >= 0) { - var99 = WorldMapCacheName.method1564(var15); - if (var99 != null && var99.transforms != null) { - var99 = var99.transform(); - } - } - - if (var82 - var84 <= Client.cycle) { - if (var95 == null) { - var0.hitSplatCycles[var81] = -1; - } else { - SecureRandomFuture.method443(var0, var0.defaultHeight / 2); - if (Client.viewportTempX > -1) { - boolean var96 = true; - if (var81 == 1) { - Client.viewportTempY -= 20; - } - - if (var81 == 2) { - Client.viewportTempX -= 15; - Client.viewportTempY -= 10; - } - - if (var81 == 3) { - Client.viewportTempX += 15; - Client.viewportTempY -= 10; - } - - SpritePixels var85 = null; - SpritePixels var86 = null; - SpritePixels var87 = null; - SpritePixels var88 = null; - var22 = 0; - var23 = 0; - int var24 = 0; - int var25 = 0; - int var26 = 0; - int var27 = 0; - int var28 = 0; - int var29 = 0; - SpritePixels var30 = null; - SpritePixels var31 = null; - SpritePixels var32 = null; - SpritePixels var33 = null; - int var34 = 0; - int var35 = 0; - int var36 = 0; - int var37 = 0; - int var38 = 0; - int var39 = 0; - int var40 = 0; - int var41 = 0; - int var42 = 0; - var85 = var95.method1032(); - int var43; - if (var85 != null) { - var22 = var85.subWidth; - var43 = var85.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var26 = var85.xOffset; - } - - var86 = var95.method1033(); - if (var86 != null) { - var23 = var86.subWidth; - var43 = var86.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var27 = var86.xOffset; - } - - var87 = var95.method1034(); - if (var87 != null) { - var24 = var87.subWidth; - var43 = var87.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var28 = var87.xOffset; - } - - var88 = var95.method1035(); - if (var88 != null) { - var25 = var88.subWidth; - var43 = var88.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var29 = var88.xOffset; - } - - if (var99 != null) { - var30 = var99.method1032(); - if (var30 != null) { - var34 = var30.subWidth; - var43 = var30.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var38 = var30.xOffset; - } - - var31 = var99.method1033(); - if (var31 != null) { - var35 = var31.subWidth; - var43 = var31.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var39 = var31.xOffset; - } - - var32 = var99.method1034(); - if (var32 != null) { - var36 = var32.subWidth; - var43 = var32.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var40 = var32.xOffset; - } - - var33 = var99.method1035(); - if (var33 != null) { - var37 = var33.subWidth; - var43 = var33.subHeight; - if (var43 > var42) { - var42 = var43; - } - - var41 = var33.xOffset; - } - } - - Font var89 = var95.getFont(); - if (var89 == null) { - var89 = HealthBarUpdate.fontPlain11; - } - - Font var44; - if (var99 != null) { - var44 = var99.getFont(); - if (var44 == null) { - var44 = HealthBarUpdate.fontPlain11; - } - } else { - var44 = HealthBarUpdate.fontPlain11; - } - - String var45 = null; - String var46 = null; - boolean var47 = false; - int var48 = 0; - var45 = var95.getString(var0.hitSplatValues[var81]); - int var98 = var89.stringWidth(var45); - if (var99 != null) { - var46 = var99.getString(var0.hitSplatValues2[var81]); - var48 = var44.stringWidth(var46); - } - - int var49 = 0; - int var50 = 0; - if (var23 > 0) { - if (var87 == null && var88 == null) { - var49 = 1; - } else { - var49 = var98 / var23 + 1; - } - } - - if (var99 != null && var35 > 0) { - if (var32 == null && var33 == null) { - var50 = 1; - } else { - var50 = var48 / var35 + 1; - } - } - - int var51 = 0; - int var52 = var51; - if (var22 > 0) { - var51 += var22; - } - - var51 += 2; - int var53 = var51; - if (var24 > 0) { - var51 += var24; - } - - int var54 = var51; - int var55 = var51; - int var56; - if (var23 > 0) { - var56 = var23 * var49; - var51 += var56; - var55 += (var56 - var98) / 2; - } else { - var51 += var98; - } - - var56 = var51; - if (var25 > 0) { - var51 += var25; - } - - int var57 = 0; - int var58 = 0; - int var59 = 0; - int var60 = 0; - int var61 = 0; - int var62; - if (var99 != null) { - var51 += 2; - var57 = var51; - if (var34 > 0) { - var51 += var34; - } - - var51 += 2; - var58 = var51; - if (var36 > 0) { - var51 += var36; - } - - var59 = var51; - var61 = var51; - if (var35 > 0) { - var62 = var50 * var35; - var51 += var62; - var61 += (var62 - var48) / 2; - } else { - var51 += var48; - } - - var60 = var51; - if (var37 > 0) { - var51 += var37; - } - } - - var62 = var0.hitSplatCycles[var81] - Client.cycle; - int var63 = var95.field1709 - var62 * var95.field1709 / var95.field1706; - int var64 = var62 * var95.field1703 / var95.field1706 + -var95.field1703; - int var65 = var63 + (var2 + Client.viewportTempX - (var51 >> 1)); - int var66 = var3 + Client.viewportTempY - 12 + var64; - int var67 = var66; - int var68 = var42 + var66; - int var69 = var66 + var95.field1708 + 15; - int var70 = var69 - var89.maxAscent; - int var71 = var69 + var89.maxDescent; - if (var70 < var66) { - var67 = var70; - } - - if (var71 > var68) { - var68 = var71; - } - - int var72 = 0; - int var73; - int var74; - if (var99 != null) { - var72 = var66 + var99.field1708 + 15; - var73 = var72 - var44.maxAscent; - var74 = var72 + var44.maxDescent; - if (var73 < var67) { - ; - } - - if (var74 > var68) { - ; - } - } - - var73 = 255; - if (var95.field1707 >= 0) { - var73 = (var62 << 8) / (var95.field1706 - var95.field1707); - } - - if (var73 >= 0 && var73 < 255) { - if (var85 != null) { - var85.drawTransAt(var65 + var52 - var26, var66, var73); - } - - if (var87 != null) { - var87.drawTransAt(var65 + var53 - var28, var66, var73); - } - - if (var86 != null) { - for (var74 = 0; var74 < var49; ++var74) { - var86.drawTransAt(var74 * var23 + (var54 + var65 - var27), var66, var73); - } - } - - if (var88 != null) { - var88.drawTransAt(var65 + var56 - var29, var66, var73); - } - - var89.drawAlpha(var45, var65 + var55, var69, var95.textColor, 0, var73); - if (var99 != null) { - if (var30 != null) { - var30.drawTransAt(var57 + var65 - var38, var66, var73); - } - - if (var32 != null) { - var32.drawTransAt(var58 + var65 - var40, var66, var73); - } - - if (var31 != null) { - for (var74 = 0; var74 < var50; ++var74) { - var31.drawTransAt(var74 * var35 + (var59 + var65 - var39), var66, var73); - } - } - - if (var33 != null) { - var33.drawTransAt(var65 + var60 - var41, var66, var73); - } - - var44.drawAlpha(var46, var61 + var65, var72, var99.textColor, 0, var73); - } - } else { - if (var85 != null) { - var85.drawTransBgAt(var65 + var52 - var26, var66); - } - - if (var87 != null) { - var87.drawTransBgAt(var65 + var53 - var28, var66); - } - - if (var86 != null) { - for (var74 = 0; var74 < var49; ++var74) { - var86.drawTransBgAt(var23 * var74 + (var65 + var54 - var27), var66); - } - } - - if (var88 != null) { - var88.drawTransBgAt(var56 + var65 - var29, var66); - } - - var89.draw(var45, var65 + var55, var69, var95.textColor | -16777216, 0); - if (var99 != null) { - if (var30 != null) { - var30.drawTransBgAt(var57 + var65 - var38, var66); - } - - if (var32 != null) { - var32.drawTransBgAt(var58 + var65 - var40, var66); - } - - if (var31 != null) { - for (var74 = 0; var74 < var50; ++var74) { - var31.drawTransBgAt(var74 * var35 + (var65 + var59 - var39), var66); - } - } - - if (var33 != null) { - var33.drawTransBgAt(var65 + var60 - var41, var66); - } - - var44.draw(var46, var65 + var61, var72, var99.textColor | -16777216, 0); - } - } - } - } - } - } - - } + public static int method210(Buffer var0, String var1) { + int var2 = var0.offset; + byte[] var3 = MusicPatchPcmStream.method1720(var1); + var0.writeSmartByteShort(var3.length); + var0.offset += class350.huffman.compress(var3, 0, var3.length, var0.array, var0.offset); + return var0.offset - var2; } - @ObfuscatedName("md") + @ObfuscatedName("mo") @ObfuscatedSignature( - descriptor = "([Lmi;IIIZI)V", - garbageValue = "-166664235" + descriptor = "(IB)V", + garbageValue = "-54" ) - @Export("resizeInterface") - static void resizeInterface(Widget[] var0, int var1, int var2, int var3, boolean var4) { - for (int var5 = 0; var5 < var0.length; ++var5) { - Widget var6 = var0[var5]; - if (var6 != null && var6.parentId == var1) { - class369.alignWidgetSize(var6, var2, var3, var4); - WorldMapArea.alignWidgetPosition(var6, var2, var3); - if (var6.scrollX > var6.scrollWidth - var6.width) { - var6.scrollX = var6.scrollWidth - var6.width; - } - - if (var6.scrollX < 0) { - var6.scrollX = 0; - } - - if (var6.scrollY > var6.scrollHeight - var6.height) { - var6.scrollY = var6.scrollHeight - var6.height; - } - - if (var6.scrollY < 0) { - var6.scrollY = 0; - } - - if (var6.type == 0) { - Login.revalidateWidgetScroll(var0, var6, var4); - } - } - } - + static void method225(int var0) { + class174.tempMenuAction = new MenuAction(); + class174.tempMenuAction.param0 = Client.menuArguments1[var0]; + class174.tempMenuAction.param1 = Client.menuArguments2[var0]; + class174.tempMenuAction.opcode = Client.menuOpcodes[var0]; + class174.tempMenuAction.identifier = Client.menuIdentifiers[var0]; + class174.tempMenuAction.itemId = Client.menuItemIds[var0]; + class174.tempMenuAction.action = Client.menuActions[var0]; + class174.tempMenuAction.target = Client.menuTargets[var0]; } } \ No newline at end of file diff --git a/osrs/src/main/java/PcmStream.java b/osrs/src/main/java/PcmStream.java index 39ade77d6..84dc28803 100644 --- a/osrs/src/main/java/PcmStream.java +++ b/osrs/src/main/java/PcmStream.java @@ -3,24 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bw") +@ObfuscatedName("bk") @Implements("PcmStream") public abstract class PcmStream extends Node { - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Lbw;" + descriptor = "Lbk;" ) @Export("after") PcmStream after; - @ObfuscatedName("ag") - int field249; + @ObfuscatedName("aj") + int field244; @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Lcp;" + descriptor = "Lcl;" ) @Export("sound") AbstractSound sound; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("active") volatile boolean active; @@ -28,39 +28,39 @@ protected PcmStream() { this.active = true; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("firstSubStream") protected abstract PcmStream firstSubStream(); - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("nextSubStream") protected abstract PcmStream nextSubStream(); - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod5648") protected abstract int vmethod5648(); - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fill") protected abstract void fill(int[] var1, int var2, int var3); - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("skip") protected abstract void skip(int var1); - @ObfuscatedName("br") + @ObfuscatedName("bx") @Export("vmethod1019") int vmethod1019() { return 255; } - @ObfuscatedName("fq") + @ObfuscatedName("ft") @Export("update") final void update(int[] var1, int var2, int var3) { if (this.active) { diff --git a/osrs/src/main/java/PcmStreamMixer.java b/osrs/src/main/java/PcmStreamMixer.java index 392119a22..9eb7a9665 100644 --- a/osrs/src/main/java/PcmStreamMixer.java +++ b/osrs/src/main/java/PcmStreamMixer.java @@ -3,153 +3,153 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bl") +@ObfuscatedName("bn") @Implements("PcmStreamMixer") public class PcmStreamMixer extends PcmStream { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("subStreams") NodeDeque subStreams; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) - NodeDeque field161; + NodeDeque field159; + @ObfuscatedName("ar") + int field158; @ObfuscatedName("ao") - int field159; - @ObfuscatedName("at") - int field160; + int field157; public PcmStreamMixer() { this.subStreams = new NodeDeque(); - this.field161 = new NodeDeque(); - this.field159 = 0; - this.field160 = -1; + this.field159 = new NodeDeque(); + this.field158 = 0; + this.field157 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lbw;)V" + descriptor = "(Lbk;)V" ) @Export("addSubStream") public final synchronized void addSubStream(PcmStream var1) { this.subStreams.addLast(var1); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lbw;)V" + descriptor = "(Lbk;)V" ) @Export("removeSubStream") public final synchronized void removeSubStream(PcmStream var1) { var1.remove(); } - @ObfuscatedName("ao") - void method177() { - if (this.field159 > 0) { - for (PcmStreamMixerListener var1 = (PcmStreamMixerListener)this.field161.last(); var1 != null; var1 = (PcmStreamMixerListener)this.field161.previous()) { - var1.field294 -= this.field159; + @ObfuscatedName("ar") + void method190() { + if (this.field158 > 0) { + for (PcmStreamMixerListener var1 = (PcmStreamMixerListener)this.field159.last(); var1 != null; var1 = (PcmStreamMixerListener)this.field159.previous()) { + var1.field290 -= this.field158; } - this.field160 -= this.field159; - this.field159 = 0; + this.field157 -= this.field158; + this.field158 = 0; } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lsj;Lcs;)V" + descriptor = "(Lsh;Lcx;)V" ) - void method178(Node var1, PcmStreamMixerListener var2) { - while (this.field161.sentinel != var1 && ((PcmStreamMixerListener)var1).field294 <= var2.field294) { + void method191(Node var1, PcmStreamMixerListener var2) { + while (this.field159.sentinel != var1 && ((PcmStreamMixerListener)var1).field290 <= var2.field290) { var1 = var1.previous; } NodeDeque.NodeDeque_addBefore(var2, var1); - this.field160 = ((PcmStreamMixerListener)this.field161.sentinel.previous).field294; + this.field157 = ((PcmStreamMixerListener)this.field159.sentinel.previous).field290; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lcs;)V" + descriptor = "(Lcx;)V" ) - void method179(PcmStreamMixerListener var1) { + void method192(PcmStreamMixerListener var1) { var1.remove(); var1.remove2(); - Node var2 = this.field161.sentinel.previous; - if (var2 == this.field161.sentinel) { - this.field160 = -1; + Node var2 = this.field159.sentinel.previous; + if (var2 == this.field159.sentinel) { + this.field157 = -1; } else { - this.field160 = ((PcmStreamMixerListener)var2).field294; + this.field157 = ((PcmStreamMixerListener)var2).field290; } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("firstSubStream") protected PcmStream firstSubStream() { return (PcmStream)this.subStreams.last(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("nextSubStream") protected PcmStream nextSubStream() { return (PcmStream)this.subStreams.previous(); } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod5648") protected int vmethod5648() { return 0; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fill") public final synchronized void fill(int[] var1, int var2, int var3) { do { - if (this.field160 < 0) { + if (this.field157 < 0) { this.updateSubStreams(var1, var2, var3); return; } - if (var3 + this.field159 < this.field160) { - this.field159 += var3; + if (var3 + this.field158 < this.field157) { + this.field158 += var3; this.updateSubStreams(var1, var2, var3); return; } - int var4 = this.field160 - this.field159; + int var4 = this.field157 - this.field158; this.updateSubStreams(var1, var2, var4); var2 += var4; var3 -= var4; - this.field159 += var4; - this.method177(); - PcmStreamMixerListener var5 = (PcmStreamMixerListener)this.field161.last(); + this.field158 += var4; + this.method190(); + PcmStreamMixerListener var5 = (PcmStreamMixerListener)this.field159.last(); synchronized(var5) { int var7 = var5.update(); if (var7 < 0) { - var5.field294 = 0; - this.method179(var5); + var5.field290 = 0; + this.method192(var5); } else { - var5.field294 = var7; - this.method178(var5.previous, var5); + var5.field290 = var7; + this.method191(var5.previous, var5); } } } while(var3 != 0); } - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("updateSubStreams") void updateSubStreams(int[] var1, int var2, int var3) { for (PcmStream var4 = (PcmStream)this.subStreams.last(); var4 != null; var4 = (PcmStream)this.subStreams.previous()) { @@ -158,42 +158,42 @@ void updateSubStreams(int[] var1, int var2, int var3) { } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("skip") public final synchronized void skip(int var1) { do { - if (this.field160 < 0) { + if (this.field157 < 0) { this.skipSubStreams(var1); return; } - if (this.field159 + var1 < this.field160) { - this.field159 += var1; + if (this.field158 + var1 < this.field157) { + this.field158 += var1; this.skipSubStreams(var1); return; } - int var2 = this.field160 - this.field159; + int var2 = this.field157 - this.field158; this.skipSubStreams(var2); var1 -= var2; - this.field159 += var2; - this.method177(); - PcmStreamMixerListener var3 = (PcmStreamMixerListener)this.field161.last(); + this.field158 += var2; + this.method190(); + PcmStreamMixerListener var3 = (PcmStreamMixerListener)this.field159.last(); synchronized(var3) { int var5 = var3.update(); if (var5 < 0) { - var3.field294 = 0; - this.method179(var3); + var3.field290 = 0; + this.method192(var3); } else { - var3.field294 = var5; - this.method178(var3.previous, var3); + var3.field290 = var5; + this.method191(var3.previous, var3); } } } while(var1 != 0); } - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("skipSubStreams") void skipSubStreams(int var1) { for (PcmStream var2 = (PcmStream)this.subStreams.last(); var2 != null; var2 = (PcmStream)this.subStreams.previous()) { diff --git a/osrs/src/main/java/PcmStreamMixerListener.java b/osrs/src/main/java/PcmStreamMixerListener.java index ef6604295..689c23b66 100644 --- a/osrs/src/main/java/PcmStreamMixerListener.java +++ b/osrs/src/main/java/PcmStreamMixerListener.java @@ -3,19 +3,19 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cs") +@ObfuscatedName("cx") @Implements("PcmStreamMixerListener") public abstract class PcmStreamMixerListener extends Node { - @ObfuscatedName("au") - int field294; + @ObfuscatedName("at") + int field290; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("remove2") abstract void remove2(); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lbl;)I" + descriptor = "(Lbn;)I" ) @Export("update") abstract int update(); diff --git a/osrs/src/main/java/PendingSpawn.java b/osrs/src/main/java/PendingSpawn.java index 49550de63..83cc0fb6b 100644 --- a/osrs/src/main/java/PendingSpawn.java +++ b/osrs/src/main/java/PendingSpawn.java @@ -3,124 +3,119 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.net.MalformedURLException; -import java.net.URL; +import java.util.ArrayList; +import java.util.Iterator; -@ObfuscatedName("dv") +@ObfuscatedName("dp") @Implements("PendingSpawn") public final class PendingSpawn extends Node { - @ObfuscatedName("ub") - @Export("cameraLookAtX") - static int cameraLookAtX; - @ObfuscatedName("au") + @ObfuscatedName("dy") + static boolean field949; + @ObfuscatedName("qa") + static int field950; + @ObfuscatedName("at") @Export("plane") int plane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("type") int type; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("x") int x; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("y") int y; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("objectId") int objectId; - @ObfuscatedName("ai") - int field948; - @ObfuscatedName("az") - int field956; - @ObfuscatedName("ap") + @ObfuscatedName("au") + int field961; + @ObfuscatedName("aa") + int field951; + @ObfuscatedName("ac") @Export("id") int id; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("rotation") int rotation; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("objectType") int objectType; - @ObfuscatedName("ad") - int field945; - @ObfuscatedName("al") - int field949; - @ObfuscatedName("an") + @ObfuscatedName("ap") + int field957; + @ObfuscatedName("ax") + int field962; + @ObfuscatedName("as") @Export("startCycle") int startCycle; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("endCycle") int endCycle; PendingSpawn() { - this.field949 = 31; + this.field962 = 31; this.startCycle = 0; this.endCycle = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-390756021" + garbageValue = "-1592817450" ) - void method506(int var1) { - this.field949 = var1; + void method503(int var1) { + this.field962 = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1725061454" + descriptor = "(IS)Z", + garbageValue = "7928" ) - boolean method507(int var1) { + boolean method504(int var1) { if (var1 >= 0 && var1 <= 4) { - return (this.field949 & 1 << var1) != 0; + return (this.field962 & 1 << var1) != 0; } else { return true; } } - @ObfuscatedName("au") - public static final void method505(long var0) { - if (var0 > 0L) { - if (0L == var0 % 10L) { - WorldMapData_0.method1390(var0 - 1L); - WorldMapData_0.method1390(1L); - } else { - WorldMapData_0.method1390(var0); - } - - } - } - - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Z", - garbageValue = "1525376195" + descriptor = "(Ljava/util/ArrayList;IIIIZI)V", + garbageValue = "1949440150" ) - static boolean method508(String var0) { - if (var0 == null) { - return false; - } else { - try { - new URL(var0); - return true; - } catch (MalformedURLException var2) { - return false; - } - } - } + public static void method505(ArrayList var0, int var1, int var2, int var3, int var4, boolean var5) { + if (!var0.isEmpty()) { + class316.field2790.clear(); + class316.field2798.clear(); + PacketBufferNode.method1637(var5); + class30.method131(var0, var5); + if (!class316.field2790.isEmpty()) { + EnumComposition.method925(var1, var2, var3, var4); + class316.field2798.add(new AddRequestTask((SongTask)null)); + class316.field2798.add(new class420((SongTask)null, class316.field2792, class316.field2791, class168.field1428)); + ArrayList var6 = new ArrayList(); + var6.add(new class415(new FadeInTask((SongTask)null, 0, true, class316.field2796))); + if (!class316.musicSongs.isEmpty()) { + ArrayList var7 = new ArrayList(); + var7.add(new DelayFadeTask(new ConcurrentMidiTask((SongTask)null, var6), class316.field2795)); + ArrayList var9 = new ArrayList(); + Iterator var10 = class316.musicSongs.iterator(); - @ObfuscatedName("hm") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-1915855915" - ) - static final void method509(boolean var0) { - if (var0) { - Client.field421 = Login.field743 ? class139.field1319 : class139.field1321; - } else { - Client.field421 = class449.clientPreferences.method568(Login.Login_username) ? class139.field1322 : class139.field1320; - } + while (var10.hasNext()) { + MusicSong var11 = (MusicSong)var10.next(); + var9.add(var11); + } + + var7.add(new DelayFadeTask(new FadeOutTask(new class413((SongTask)null, var9), 0, false, class316.field2794), class316.musicPlayerStatus)); + class316.field2798.add(new ConcurrentMidiTask((SongTask)null, var7)); + } else { + class316.field2798.add(new DelayFadeTask((SongTask)null, class316.field2795)); + class316.field2798.add(new ConcurrentMidiTask((SongTask)null, var6)); + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/PlatformInfo.java b/osrs/src/main/java/PlatformInfo.java index b66e8f1cf..8d34ba6e9 100644 --- a/osrs/src/main/java/PlatformInfo.java +++ b/osrs/src/main/java/PlatformInfo.java @@ -3,162 +3,162 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sm") +@ObfuscatedName("sb") @Implements("PlatformInfo") public class PlatformInfo extends Node { - @ObfuscatedName("by") - int field3943; - @ObfuscatedName("bs") - boolean field3930; - @ObfuscatedName("bm") - int field3937; - @ObfuscatedName("bf") - int field3934; - @ObfuscatedName("bq") - int field3939; + @ObfuscatedName("bg") + int field3959; @ObfuscatedName("ba") - int field3931; - @ObfuscatedName("bl") - int field3936; + boolean field3957; + @ObfuscatedName("bm") + int field3963; @ObfuscatedName("bp") - boolean field3929; - @ObfuscatedName("bu") - int field3941; + int field3965; + @ObfuscatedName("bw") + int field3970; + @ObfuscatedName("bj") + int field3961; + @ObfuscatedName("bn") + int field3964; @ObfuscatedName("bo") - int field3938; - @ObfuscatedName("br") - int field3940; - @ObfuscatedName("be") - int field3933; - @ObfuscatedName("bi") - String field3947; + boolean field3958; + @ObfuscatedName("bt") + int field3968; + @ObfuscatedName("bu") + int field3969; + @ObfuscatedName("bh") + int field3960; @ObfuscatedName("bz") - String field3950; - @ObfuscatedName("bx") - String field3949; - @ObfuscatedName("bn") - String field3948; - @ObfuscatedName("bw") - int field3942; + int field3971; @ObfuscatedName("bc") - int field3932; - @ObfuscatedName("bg") - int field3935; - @ObfuscatedName("cw") - int field3945; + String field3976; + @ObfuscatedName("bs") + String field3977; + @ObfuscatedName("bx") + String field3978; + @ObfuscatedName("bb") + String field3975; + @ObfuscatedName("bk") + int field3962; + @ObfuscatedName("br") + int field3967; + @ObfuscatedName("bq") + int field3966; @ObfuscatedName("cf") - String field3951; - @ObfuscatedName("cm") - String field3952; - @ObfuscatedName("cn") - int[] field3946; - @ObfuscatedName("cs") - int field3944; + int field3972; + @ObfuscatedName("cg") + String field3980; + @ObfuscatedName("cv") + String field3982; @ObfuscatedName("cx") - String field3954; - @ObfuscatedName("cr") - String field3953; + int[] field3974; + @ObfuscatedName("cp") + int field3973; + @ObfuscatedName("ce") + String field3979; + @ObfuscatedName("ci") + String field3981; PlatformInfo(int var1, boolean var2, int var3, int var4, int var5, int var6, int var7, boolean var8, int var9, int var10, int var11, int var12, String var13, String var14, String var15, String var16, int var17, int var18, int var19, int var20, String var21, String var22, int[] var23, int var24, String var25, String var26) { - this.field3946 = new int[3]; - this.field3943 = var1; - this.field3930 = var2; - this.field3937 = var3; - this.field3934 = var4; - this.field3939 = var5; - this.field3931 = var6; - this.field3936 = var7; - this.field3929 = var8; - this.field3941 = var9; - this.field3938 = var10; - this.field3940 = var11; - this.field3933 = var12; - this.field3947 = var13; - this.field3950 = var14; - this.field3949 = var15; - this.field3948 = var16; - this.field3942 = var17; - this.field3932 = var18; - this.field3935 = var19; - this.field3945 = var20; - this.field3951 = var21; - this.field3952 = var22; - this.field3946 = var23; - this.field3944 = var24; - this.field3954 = var25; - this.field3953 = var26; + this.field3974 = new int[3]; + this.field3959 = var1; + this.field3957 = var2; + this.field3963 = var3; + this.field3965 = var4; + this.field3970 = var5; + this.field3961 = var6; + this.field3964 = var7; + this.field3958 = var8; + this.field3968 = var9; + this.field3969 = var10; + this.field3960 = var11; + this.field3971 = var12; + this.field3976 = var13; + this.field3977 = var14; + this.field3978 = var15; + this.field3975 = var16; + this.field3962 = var17; + this.field3967 = var18; + this.field3966 = var19; + this.field3972 = var20; + this.field3980 = var21; + this.field3982 = var22; + this.field3974 = var23; + this.field3973 = var24; + this.field3979 = var25; + this.field3981 = var26; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "77" + descriptor = "(Luj;I)V", + garbageValue = "1412255226" ) @Export("write") public void write(Buffer var1) { var1.writeByte(9); - var1.writeByte(this.field3943); - var1.writeByte(this.field3930 ? 1 : 0); - var1.writeShort(this.field3937); - var1.writeByte(this.field3934); - var1.writeByte(this.field3939); - var1.writeByte(this.field3931); - var1.writeByte(this.field3936); - var1.writeByte(this.field3929 ? 1 : 0); - var1.writeShort(this.field3941); - var1.writeByte(this.field3938); - var1.writeMedium(this.field3940); - var1.writeShort(this.field3933); - var1.writeStringCp1252NullCircumfixed(this.field3947); - var1.writeStringCp1252NullCircumfixed(this.field3950); - var1.writeStringCp1252NullCircumfixed(this.field3949); - var1.writeStringCp1252NullCircumfixed(this.field3948); - var1.writeByte(this.field3932); - var1.writeShort(this.field3942); - var1.writeStringCp1252NullCircumfixed(this.field3951); - var1.writeStringCp1252NullCircumfixed(this.field3952); - var1.writeByte(this.field3935); - var1.writeByte(this.field3945); + var1.writeByte(this.field3959); + var1.writeByte(this.field3957 ? 1 : 0); + var1.writeShort(this.field3963); + var1.writeByte(this.field3965); + var1.writeByte(this.field3970); + var1.writeByte(this.field3961); + var1.writeByte(this.field3964); + var1.writeByte(this.field3958 ? 1 : 0); + var1.writeShort(this.field3968); + var1.writeByte(this.field3969); + var1.writeMedium(this.field3960); + var1.writeShort(this.field3971); + var1.writeStringCp1252NullCircumfixed(this.field3976); + var1.writeStringCp1252NullCircumfixed(this.field3977); + var1.writeStringCp1252NullCircumfixed(this.field3978); + var1.writeStringCp1252NullCircumfixed(this.field3975); + var1.writeByte(this.field3967); + var1.writeShort(this.field3962); + var1.writeStringCp1252NullCircumfixed(this.field3980); + var1.writeStringCp1252NullCircumfixed(this.field3982); + var1.writeByte(this.field3966); + var1.writeByte(this.field3972); - for (int var2 = 0; var2 < this.field3946.length; ++var2) { - var1.writeInt(this.field3946[var2]); + for (int var2 = 0; var2 < this.field3974.length; ++var2) { + var1.writeInt(this.field3974[var2]); } - var1.writeInt(this.field3944); - var1.writeStringCp1252NullCircumfixed(this.field3954); - var1.writeStringCp1252NullCircumfixed(this.field3953); + var1.writeInt(this.field3973); + var1.writeStringCp1252NullCircumfixed(this.field3979); + var1.writeStringCp1252NullCircumfixed(this.field3981); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1863641013" + garbageValue = "2077819620" ) @Export("size") public int size() { byte var1 = 39; - String var4 = this.field3947; + String var4 = this.field3976; int var3 = var4.length() + 2; - int var26 = var3 + var1; - String var7 = this.field3950; + int var26 = var1 + var3; + String var7 = this.field3977; int var6 = var7.length() + 2; var26 += var6; - String var10 = this.field3949; + String var10 = this.field3978; int var9 = var10.length() + 2; var26 += var9; - String var13 = this.field3948; + String var13 = this.field3975; int var12 = var13.length() + 2; var26 += var12; - String var16 = this.field3951; + String var16 = this.field3980; int var15 = var16.length() + 2; var26 += var15; - String var19 = this.field3952; + String var19 = this.field3982; int var18 = var19.length() + 2; var26 += var18; - String var22 = this.field3954; + String var22 = this.field3979; int var21 = var22.length() + 2; var26 += var21; - String var25 = this.field3953; + String var25 = this.field3981; int var24 = var25.length() + 2; var26 += var24; return var26; diff --git a/osrs/src/main/java/Player.java b/osrs/src/main/java/Player.java index f4ce32849..d5147f03c 100644 --- a/osrs/src/main/java/Player.java +++ b/osrs/src/main/java/Player.java @@ -3,116 +3,116 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("df") +@ObfuscatedName("ds") @Implements("Player") public final class Player extends Actor { - @ObfuscatedName("fy") + @ObfuscatedName("ir") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Liq;" ) - @Export("archive13") - static Archive archive13; - @ObfuscatedName("au") + @Export("socketTask") + static Task socketTask; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("username") Username username; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lmt;" + descriptor = "Lnb;" ) @Export("appearance") PlayerComposition appearance; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("headIconPk") int headIconPk; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("headIconPrayer") int headIconPrayer; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("actions") String[] actions; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("combatLevel") int combatLevel; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("skillLevel") int skillLevel; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("tileHeight") int tileHeight; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("animationCycleStart") int animationCycleStart; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("animationCycleEnd") int animationCycleEnd; - @ObfuscatedName("aq") - int field909; - @ObfuscatedName("al") + @ObfuscatedName("av") + int field919; + @ObfuscatedName("ax") @Export("baseTileHeight") int baseTileHeight; - @ObfuscatedName("ar") - int field910; - @ObfuscatedName("ab") + @ObfuscatedName("as") + int field918; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Ljr;" + descriptor = "Lka;" ) @Export("attachedModel") Model attachedModel; - @ObfuscatedName("ag") + @ObfuscatedName("ak") @Export("minX") int minX; - @ObfuscatedName("am") + @ObfuscatedName("aj") @Export("minY") int minY; - @ObfuscatedName("ax") + @ObfuscatedName("am") @Export("maxX") int maxX; - @ObfuscatedName("ah") + @ObfuscatedName("aq") @Export("maxY") int maxY; - @ObfuscatedName("as") + @ObfuscatedName("ai") @Export("isUnanimated") boolean isUnanimated; - @ObfuscatedName("ay") + @ObfuscatedName("aw") @Export("team") int team; - @ObfuscatedName("aj") + @ObfuscatedName("ae") @Export("isHidden") boolean isHidden; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("plane") int plane; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("index") int index; - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("isFriendTriBool") TriBool isFriendTriBool; - @ObfuscatedName("bh") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("isInFriendsChat") TriBool isInFriendsChat; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("isInClanChat") TriBool isInClanChat; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("hasMovementPending") boolean hasMovementPending; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("tileX") int tileX; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("tileY") int tileY; @@ -138,10 +138,10 @@ public final class Player extends Actor { this.hasMovementPending = false; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1203582421" + descriptor = "(Luj;I)V", + garbageValue = "722515666" ) @Export("read") final void read(Buffer var1) { @@ -170,7 +170,7 @@ final void read(Buffer var1) { } if (var5[var6] >= 512) { - var9 = InvDefinition.ItemDefinition_get(var5[var6] - 512).team; + var9 = class214.ItemDefinition_get(var5[var6] - 512).team; if (var9 != 0) { this.team = var9; } @@ -178,30 +178,30 @@ final void read(Buffer var1) { } } - int[] var26 = null; + int[] var13 = null; if (Client.param25 >= 213) { - var26 = new int[12]; + var13 = new int[12]; for (var7 = 0; var7 < 12; ++var7) { var8 = var1.readUnsignedByte(); if (var8 == 0) { - var26[var7] = 0; + var13[var7] = 0; } else { var9 = var1.readUnsignedByte(); - var26[var7] = var9 + (var8 << 8); + var13[var7] = var9 + (var8 << 8); } } } - int[] var27 = new int[5]; + int[] var14 = new int[5]; for (var8 = 0; var8 < 5; ++var8) { var9 = var1.readUnsignedByte(); - if (var9 < 0 || var9 >= class140.field1328[var8].length) { + if (var9 < 0 || var9 >= class90.field892[var8].length) { var9 = 0; } - var27[var8] = var9; + var14[var8] = var9; } super.idleSequence = var1.readUnsignedShort(); @@ -240,12 +240,12 @@ final void read(Buffer var1) { super.runSequence = -1; } - this.username = new Username(var1.readStringCp1252NullTerminated(), Language.loginType); + this.username = new Username(var1.readStringCp1252NullTerminated(), class89.loginType); this.clearIsFriend(); this.clearIsInFriendsChat(); this.clearIsInClanChat(); - if (this == VarbitComposition.localPlayer) { - RunException.field4289 = this.username.getName(); + if (this == class229.localPlayer) { + class17.field53 = this.username.getName(); } this.combatLevel = var1.readUnsignedByte(); @@ -255,58 +255,18 @@ final void read(Buffer var1) { this.isHidden = false; } - ObjTypeCustomisation[] var28 = null; - boolean var30 = false; + ObjTypeCustomisation[] var15 = null; + boolean var17 = false; int var10 = var1.readUnsignedShort(); - var30 = (var10 >> 15 & 1) == 1; + var17 = (var10 >> 15 & 1) == 1; int var11; if (var10 > 0 && var10 != 32768) { - var28 = new ObjTypeCustomisation[12]; + var15 = new ObjTypeCustomisation[12]; for (var11 = 0; var11 < 12; ++var11) { int var12 = var10 >> 12 - var11 & 1; if (var12 == 1) { - int var16 = var5[var11] - 512; - int var17 = var1.readUnsignedByte(); - boolean var18 = (var17 & 1) != 0; - boolean var19 = (var17 & 2) != 0; - ObjTypeCustomisation var20 = new ObjTypeCustomisation(var16); - int var21; - int[] var22; - boolean var23; - int var24; - short var25; - if (var18) { - var21 = var1.readUnsignedByte(); - var22 = new int[]{var21 & 15, var21 >> 4 & 15}; - var23 = var20.recol != null && var22.length == var20.recol.length; - - for (var24 = 0; var24 < 2; ++var24) { - if (var22[var24] != 15) { - var25 = (short)var1.readUnsignedShort(); - if (var23) { - var20.recol[var22[var24]] = var25; - } - } - } - } - - if (var19) { - var21 = var1.readUnsignedByte(); - var22 = new int[]{var21 & 15, var21 >> 4 & 15}; - var23 = var20.retex != null && var22.length == var20.retex.length; - - for (var24 = 0; var24 < 2; ++var24) { - if (var22[var24] != 15) { - var25 = (short)var1.readUnsignedShort(); - if (var23) { - var20.retex[var22[var24]] = var25; - } - } - } - } - - var28[var11] = var20; + var15[var11] = ZoneOperation.method1631(var5[var11] - 512, var1); } } } @@ -315,26 +275,26 @@ final void read(Buffer var1) { this.actions[var11] = var1.readStringCp1252NullTerminated(); } - int var29 = var1.readUnsignedByte(); + int var16 = var1.readUnsignedByte(); if (this.appearance == null) { this.appearance = new PlayerComposition(); } - this.appearance.method1717(var26, var5, var28, var30, var27, var2, var4, var29); + this.appearance.method1745(var13, var5, var15, var17, var14, var2, var4, var16); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { if (this.appearance == null) { return null; } else { - SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? EnumComposition.SequenceDefinition_get(super.sequence) : null; - SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.idleSequence == super.movementSequence && var1 != null ? null : EnumComposition.SequenceDefinition_get(super.movementSequence); + SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? DynamicObject.SequenceDefinition_get(super.sequence) : null; + SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.movementSequence == super.idleSequence && var1 != null ? null : DynamicObject.SequenceDefinition_get(super.movementSequence); Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); if (var3 == null) { return null; @@ -343,7 +303,7 @@ protected final Model getModel() { super.defaultHeight = var3.height; int var4 = var3.indicesCount; if (!this.isUnanimated) { - var3 = this.method520(var3); + var3 = this.method514(var3); } if (!this.isUnanimated && this.attachedModel != null) { @@ -353,7 +313,7 @@ protected final Model getModel() { if (Client.cycle >= this.animationCycleStart && Client.cycle < this.animationCycleEnd) { Model var5 = this.attachedModel; - var5.offsetBy(this.field909 - super.x, this.baseTileHeight - this.tileHeight, this.field910 - super.y); + var5.offsetBy(this.field919 - super.x, this.baseTileHeight - this.tileHeight, this.field918 - super.y); if (super.orientation == 512) { var5.rotateY90Ccw(); var5.rotateY90Ccw(); @@ -378,7 +338,7 @@ protected final Model getModel() { var5.rotateY90Ccw(); } - var5.offsetBy(super.x - this.field909, this.tileHeight - this.baseTileHeight, super.y - this.field910); + var5.offsetBy(super.x - this.field919, this.tileHeight - this.baseTileHeight, super.y - this.field918); } } @@ -388,7 +348,7 @@ protected final Model getModel() { var3.overrideSaturation = super.recolourSaturation; var3.overrideLuminance = super.recolourLuminance; var3.overrideAmount = super.recolourAmount; - var3.field2243 = (short)var4; + var3.field2423 = (short)var4; } else { var3.overrideAmount = 0; } @@ -398,10 +358,10 @@ protected final Model getModel() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-458663829" + garbageValue = "-1713250919" ) @Export("isFriend") boolean isFriend() { @@ -412,30 +372,30 @@ boolean isFriend() { return this.isFriendTriBool == TriBool.TriBool_true; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1612741711" + descriptor = "(B)V", + garbageValue = "-81" ) @Export("clearIsFriend") void clearIsFriend() { this.isFriendTriBool = TriBool.TriBool_unknown; } - @ObfuscatedName("az") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1885104280" + descriptor = "(B)V", + garbageValue = "-14" ) @Export("checkIsFriend") void checkIsFriend() { - this.isFriendTriBool = class299.friendSystem.isFriendAndHasWorld(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.isFriendTriBool = class12.friendSystem.isFriendAndHasWorld(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } - @ObfuscatedName("ap") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-563231680" + descriptor = "(B)Z", + garbageValue = "14" ) @Export("isFriendsChatMember") boolean isFriendsChatMember() { @@ -446,35 +406,35 @@ boolean isFriendsChatMember() { return this.isInFriendsChat == TriBool.TriBool_true; } - @ObfuscatedName("aa") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2081555377" + garbageValue = "-2089631916" ) @Export("clearIsInFriendsChat") void clearIsInFriendsChat() { this.isInFriendsChat = TriBool.TriBool_unknown; } - @ObfuscatedName("af") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-690843287" + garbageValue = "1196848864" ) @Export("updateIsInFriendsChat") void updateIsInFriendsChat() { - this.isInFriendsChat = ReflectionCheck.friendsChat != null && ReflectionCheck.friendsChat.contains(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; + this.isInFriendsChat = class20.friendsChat != null && class20.friendsChat.contains(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } - @ObfuscatedName("ad") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "816626450" + descriptor = "(B)V", + garbageValue = "115" ) @Export("updateIsInClanChat") void updateIsInClanChat() { for (int var1 = 0; var1 < 4; ++var1) { - if (Client.currentClanSettings[var1] != null && Client.currentClanSettings[var1].method808(this.username.getName()) != -1 && var1 != 2) { + if (Client.currentClanSettings[var1] != null && Client.currentClanSettings[var1].method800(this.username.getName()) != -1 && var1 != 2) { this.isInClanChat = TriBool.TriBool_true; return; } @@ -483,20 +443,20 @@ void updateIsInClanChat() { this.isInClanChat = TriBool.TriBool_false; } - @ObfuscatedName("aq") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1097598998" + descriptor = "(B)V", + garbageValue = "-73" ) @Export("clearIsInClanChat") void clearIsInClanChat() { this.isInClanChat = TriBool.TriBool_unknown; } - @ObfuscatedName("al") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1383064946" + garbageValue = "-2021409739" ) @Export("isClanMember") boolean isClanMember() { @@ -507,53 +467,35 @@ boolean isClanMember() { return this.isInClanChat == TriBool.TriBool_true; } - @ObfuscatedName("an") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1884466033" + garbageValue = "2046405362" ) @Export("transformedSize") int transformedSize() { - return this.appearance != null && this.appearance.npcTransformId != -1 ? class90.getNpcDefinition(this.appearance.npcTransformId).size : 1; + return this.appearance != null && this.appearance.npcTransformId != -1 ? VerticalAlignment.getNpcDefinition(this.appearance.npcTransformId).size : 1; } - @ObfuscatedName("ar") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(IILin;I)V", - garbageValue = "-1206182432" + descriptor = "(IILiz;I)V", + garbageValue = "2103873992" ) @Export("move") final void move(int var1, int var2, MoveSpeed var3) { - if (super.sequence != -1 && EnumComposition.SequenceDefinition_get(super.sequence).priority == 1) { + if (super.sequence != -1 && DynamicObject.SequenceDefinition_get(super.sequence).priority == 1) { super.sequence = -1; } - this.method521(); + this.method515(); if (var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104) { if (super.pathX[0] >= 0 && super.pathX[0] < 104 && super.pathY[0] >= 0 && super.pathY[0] < 104) { if (var3 == MoveSpeed.RUN) { - Player var4 = this; - MoveSpeed var5 = MoveSpeed.RUN; - int var6 = super.pathX[0]; - int var7 = super.pathY[0]; - int var8 = this.transformedSize(); - if (var6 >= var8 && var6 < 104 - var8 && var7 >= var8 && var7 < 104 - var8 && var1 >= var8 && var1 < 104 - var8 && var2 >= var8 && var2 < 104 - var8) { - int var10 = this.transformedSize(); - RouteStrategy var11 = class299.method1619(var1, var2); - CollisionMap var12 = Client.collisionMaps[this.plane]; - int[] var13 = Client.field593; - int[] var14 = Client.field592; - int var9 = class4.method4(var6, var7, var10, var11, var12, true, var13, var14, class218.field1926[0]); - int var15 = var9; - if (var9 >= 1) { - for (int var16 = 0; var16 < var15 - 1; ++var16) { - var4.method497(Client.field593[var16], Client.field592[var16], var5); - } - } - } + WorldMapCacheName.method1355(this, var1, var2, MoveSpeed.RUN); } - this.method497(var1, var2, var3); + this.method495(var1, var2, var3); } else { this.resetPath(var1, var2); } @@ -563,29 +505,29 @@ final void move(int var1, int var2, MoveSpeed var3) { } - @ObfuscatedName("ab") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-1786168705" + garbageValue = "1104771167" ) @Export("resetPath") void resetPath(int var1, int var2) { super.pathLength = 0; - super.field1022 = 0; - super.field1021 = 0; + super.field1029 = 0; + super.field1028 = 0; super.pathX[0] = var1; super.pathY[0] = var2; int var3 = this.transformedSize(); - super.x = var3 * 64 + super.pathX[0] * 128; - super.y = var3 * 64 + super.pathY[0] * 128; + super.x = super.pathX[0] * 128 + var3 * 64; + super.y = super.pathY[0] * 128 + var3 * 64; } - @ObfuscatedName("ag") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(IILin;I)V", - garbageValue = "112065194" + descriptor = "(IILiz;I)V", + garbageValue = "1624897043" ) - final void method497(int var1, int var2, MoveSpeed var3) { + final void method495(int var1, int var2, MoveSpeed var3) { if (super.pathLength < 9) { ++super.pathLength; } @@ -601,60 +543,52 @@ final void method497(int var1, int var2, MoveSpeed var3) { super.pathTraversed[0] = var3; } - @ObfuscatedName("am") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "381940201" + garbageValue = "1221291483" ) @Export("isVisible") final boolean isVisible() { return this.appearance != null; } - @ObfuscatedName("av") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1849336655" + descriptor = "(Ltz;III)I", + garbageValue = "319825494" ) - static int method499(int var0, Script var1, boolean var2) { - Widget var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var0 == 2800) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = HealthBarDefinition.Widget_unpackTargetMask(NewShit.getWidgetFlags(var3)); - return 1; - } else if (var0 != 2801) { - if (var0 == 2802) { - if (var3.dataText == null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.dataText; - } - - return 1; - } else { - return 2; - } + static int method478(IterableNodeHashTable var0, int var1, int var2) { + if (var0 == null) { + return var2; } else { - int var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - --var4; - if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.actions[var4]; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } + IntegerNode var3 = (IntegerNode)var0.get((long)var1); + return var3 == null ? var2 : var3.integer; + } + } - return 1; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(IIIZII)J", + garbageValue = "211437143" + ) + @Export("calculateTag") + public static long calculateTag(int var0, int var1, int var2, boolean var3, int var4) { + long var5 = (long)((var0 & 127) << 0 | (var1 & 127) << 7 | (var2 & 3) << 14) | ((long)var4 & 4294967295L) << 17; + if (var3) { + var5 |= 65536L; } + + return var5; } - @ObfuscatedName("nu") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1159741420" + descriptor = "(CB)Z", + garbageValue = "2" ) - @Export("Clan_leaveChat") - static final void Clan_leaveChat() { - PacketBufferNode var0 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLAN_JOINCHAT_LEAVECHAT, Client.packetWriter.isaacCipher); - var0.packetBuffer.writeByte(0); - Client.packetWriter.addNode(var0); + @Export("isDigit") + public static boolean isDigit(char var0) { + return var0 >= '0' && var0 <= '9'; } } \ No newline at end of file diff --git a/osrs/src/main/java/PlayerComposition.java b/osrs/src/main/java/PlayerComposition.java index 97d2ca3f5..284ecf389 100644 --- a/osrs/src/main/java/PlayerComposition.java +++ b/osrs/src/main/java/PlayerComposition.java @@ -5,145 +5,137 @@ import java.util.Arrays; -@ObfuscatedName("mt") +@ObfuscatedName("nb") @Implements("PlayerComposition") public class PlayerComposition { - @ObfuscatedName("al") - public static short[] field2904; - @ObfuscatedName("an") - public static short[][] field2905; - @ObfuscatedName("ar") + @ObfuscatedName("as") + public static short[][] field2935; + @ObfuscatedName("ay") @Export("equipmentIndices") static final int[] equipmentIndices; @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("PlayerAppearance_cachedModels") - public static EvictingDualNodeHashTable PlayerAppearance_cachedModels; - @ObfuscatedName("ax") + static EvictingDualNodeHashTable PlayerAppearance_cachedModels; + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Lqv;" + descriptor = "Lqc;" ) - static class423 field2907; + static class435 field2938; + @ObfuscatedName("ai") + static int field2936; + @ObfuscatedName("at") + int[] field2944; @ObfuscatedName("ah") - static int field2906; - @ObfuscatedName("au") - int[] field2913; - @ObfuscatedName("ae") @Export("equipment") int[] equipment; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("bodyColors") int[] bodyColors; - @ObfuscatedName("at") - public int field2918; - @ObfuscatedName("ac") - public int field2916; - @ObfuscatedName("ai") + @ObfuscatedName("ao") + public int field2948; + @ObfuscatedName("ab") + public int field2947; + @ObfuscatedName("au") @Export("npcTransformId") public int npcTransformId; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("hash") long hash; - @ObfuscatedName("ap") - long field2914; - @ObfuscatedName("aa") + @ObfuscatedName("ac") + long field2946; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "[Lho;" + descriptor = "[Lgx;" ) @Export("customisations") ObjTypeCustomisation[] customisations; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("isFemale") boolean isFemale; static { - equipmentIndices = new int[]{class209.field1857.field1871, class209.field1862.field1871, class209.field1858.field1871, class209.field1863.field1871, class209.field1860.field1871, class209.field1861.field1871, class209.field1859.field1871}; + equipmentIndices = new int[]{class205.field1813.field1824, class205.field1815.field1824, class205.field1811.field1824, class205.field1810.field1824, class205.field1816.field1824, class205.field1812.field1824, class205.field1814.field1824}; PlayerAppearance_cachedModels = new EvictingDualNodeHashTable(260); - field2907 = new class423(16, class421.field3766); - field2906 = 0; + field2938 = new class435(16, class433.field3801); + field2936 = 0; } public PlayerComposition() { - this.field2918 = -1; - this.field2916 = 0; + this.field2948 = -1; + this.field2947 = 0; this.isFemale = false; } @ObfuscatedSignature( - descriptor = "(Lmt;)V" + descriptor = "(Lnb;)V" ) PlayerComposition(PlayerComposition var1) { - this.field2918 = -1; - this.field2916 = 0; + this.field2948 = -1; + this.field2947 = 0; this.isFemale = false; int[] var2 = Arrays.copyOf(var1.equipment, var1.equipment.length); - int[] var3 = Arrays.copyOf(var1.field2913, var1.field2913.length); + int[] var3 = Arrays.copyOf(var1.field2944, var1.field2944.length); ObjTypeCustomisation[] var4 = (ObjTypeCustomisation[])(var1.customisations != null ? (ObjTypeCustomisation[])Arrays.copyOf(var1.customisations, var1.customisations.length) : null); int[] var5 = Arrays.copyOf(var1.bodyColors, var1.bodyColors.length); - this.method1717(var3, var2, var4, false, var5, var1.field2916, var1.npcTransformId, var1.field2918); + this.method1745(var3, var2, var4, false, var5, var1.field2947, var1.npcTransformId, var1.field2948); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([I[I[Lho;Z[IIIII)V", - garbageValue = "-1866336930" + descriptor = "([I[I[Lgx;Z[IIIII)V", + garbageValue = "-712663226" ) - public void method1717(int[] var1, int[] var2, ObjTypeCustomisation[] var3, boolean var4, int[] var5, int var6, int var7, int var8) { + public void method1745(int[] var1, int[] var2, ObjTypeCustomisation[] var3, boolean var4, int[] var5, int var6, int var7, int var8) { this.customisations = var3; this.isFemale = var4; - this.field2918 = var8; - this.method1718(var1, var2, var5, var6, var7); + this.field2948 = var8; + this.method1746(var1, var2, var5, var6, var7); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "([I[I[IIII)V", - garbageValue = "1458257561" + descriptor = "([I[I[IIIB)V", + garbageValue = "-107" ) - public void method1718(int[] var1, int[] var2, int[] var3, int var4, int var5) { + public void method1746(int[] var1, int[] var2, int[] var3, int var4, int var5) { if (var1 == null) { - var1 = this.method1720(var4); + var1 = this.method1747(var4); } if (var2 == null) { - var2 = this.method1720(var4); + var2 = this.method1747(var4); } - this.field2913 = var1; + this.field2944 = var1; this.equipment = var2; this.bodyColors = var3; - this.field2916 = var4; + this.field2947 = var4; this.npcTransformId = var5; this.setHash(); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(IB)[I", - garbageValue = "67" + garbageValue = "45" ) - int[] method1720(int var1) { + int[] method1747(int var1) { int[] var2 = new int[12]; for (int var3 = 0; var3 < 7; ++var3) { - for (int var4 = 0; var4 < KitDefinition.KitDefinition_fileCount; ++var4) { - KitDefinition var5 = ClanChannel.KitDefinition_get(var4); - if (var5 != null && !var5.nonSelectable && var3 + (var1 == 1 ? 7 : 0) == var5.bodypartID) { - var2[equipmentIndices[var3]] = var4 + 256; - break; - } - } + MoveSpeed.method1167(var1, var2, var3); } return var2; } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(IZI)V", - garbageValue = "-1083968287" + garbageValue = "1628205152" ) @Export("changeAppearance") public void changeAppearance(int var1, boolean var2) { @@ -156,82 +148,69 @@ public void changeAppearance(int var1, boolean var2) { if (!var2) { --var3; if (var3 < 0) { - var3 = KitDefinition.KitDefinition_fileCount - 1; + var3 = class348.KitDefinition_fileCount - 1; } } else { ++var3; - if (var3 >= KitDefinition.KitDefinition_fileCount) { + if (var3 >= class348.KitDefinition_fileCount) { var3 = 0; } } - var4 = ClanChannel.KitDefinition_get(var3); - } while(var4 == null || var4.nonSelectable || (this.field2916 == 1 ? 7 : 0) + var1 != var4.bodypartID); + var4 = class1.KitDefinition_get(var3); + } while(var4 == null || var4.nonSelectable || var4.bodypartID != var1 + (this.field2947 == 1 ? 7 : 0)); this.equipment[equipmentIndices[var1]] = var3 + 256; this.setHash(); } } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(IZB)V", - garbageValue = "8" + garbageValue = "-58" ) - public void method1722(int var1, boolean var2) { + public void method1749(int var1, boolean var2) { int var3 = this.bodyColors[var1]; - boolean var4; if (!var2) { do { --var3; if (var3 < 0) { - var3 = class140.field1328[var1].length - 1; + var3 = class90.field892[var1].length - 1; } - - if (var1 == 4 && var3 >= 8) { - var4 = false; - } else { - var4 = true; - } - } while(!var4); + } while(!class90.method473(var1, var3)); } else { do { ++var3; - if (var3 >= class140.field1328[var1].length) { + if (var3 >= class90.field892[var1].length) { var3 = 0; } - - if (var1 == 4 && var3 >= 8) { - var4 = false; - } else { - var4 = true; - } - } while(!var4); + } while(!class90.method473(var1, var3)); } this.bodyColors[var1] = var3; this.setHash(); } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-782377094" + garbageValue = "-530024953" ) - public void method1723(int var1) { - if (this.field2916 != var1) { - this.method1718((int[])null, (int[])null, this.bodyColors, var1, -1); + public void method1750(int var1) { + if (this.field2947 != var1) { + this.method1746((int[])null, (int[])null, this.bodyColors, var1, -1); } } - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-544852329" + descriptor = "(Luj;B)V", + garbageValue = "0" ) @Export("write") public void write(Buffer var1) { - var1.writeByte(this.field2916); + var1.writeByte(this.field2947); int var2; for (var2 = 0; var2 < 7; ++var2) { @@ -249,10 +228,10 @@ public void write(Buffer var1) { } - @ObfuscatedName("ap") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "12" + descriptor = "(I)V", + garbageValue = "226179138" ) @Export("setHash") void setHash() { @@ -285,24 +264,24 @@ void setHash() { } this.hash <<= 1; - this.hash += (long)this.field2916; + this.hash += (long)this.field2947; this.equipment[5] = var3; this.equipment[9] = var4; - if (var1 != 0L && var1 != this.hash || this.isFemale) { + if (0L != var1 && this.hash != var1 || this.isFemale) { PlayerAppearance_cachedModels.remove(var1); } } - @ObfuscatedName("aa") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Lib;ILib;II)Ljr;", - garbageValue = "-616726225" + descriptor = "(Lhx;ILhx;II)Lka;", + garbageValue = "1048858154" ) @Export("getModel") public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3, int var4) { if (this.npcTransformId != -1) { - return class90.getNpcDefinition(this.npcTransformId).method985(var1, var2, var3, var4, (NewShit)null); + return VerticalAlignment.getNpcDefinition(this.npcTransformId).method940(var1, var2, var3, var4, (NewShit)null); } else { long var5 = this.hash; int[] var7 = this.equipment; @@ -331,18 +310,18 @@ public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3 int var11; for (int var10 = 0; var10 < 12; ++var10) { var11 = var7[var10]; - if (var11 >= 256 && var11 < 512 && !ClanChannel.KitDefinition_get(var11 - 256).ready()) { + if (var11 >= 256 && var11 < 512 && !class1.KitDefinition_get(var11 - 256).ready()) { var9 = true; } - if (var11 >= 512 && !InvDefinition.ItemDefinition_get(var11 - 512).method1061(this.field2916)) { + if (var11 >= 512 && !class214.ItemDefinition_get(var11 - 512).method1022(this.field2947)) { var9 = true; } } if (var9) { - if (-1L != this.field2914) { - var18 = (Model)PlayerAppearance_cachedModels.get(this.field2914); + if (this.field2946 != -1L) { + var18 = (Model)PlayerAppearance_cachedModels.get(this.field2946); } if (var18 == null) { @@ -358,27 +337,27 @@ public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3 for (int var12 = 0; var12 < 12; ++var12) { var13 = var7[var12]; if (var13 >= 256 && var13 < 512) { - ModelData var14 = ClanChannel.KitDefinition_get(var13 - 256).getModelData(); + ModelData var14 = class1.KitDefinition_get(var13 - 256).getModelData(); if (var14 != null) { var19[var11++] = var14; } } if (var13 >= 512) { - ItemComposition var22 = InvDefinition.ItemDefinition_get(var13 - 512); - ModelData var15 = var22.method1062(this.field2916); + ItemComposition var22 = class214.ItemDefinition_get(var13 - 512); + ModelData var15 = var22.method1023(this.field2947); if (var15 != null) { if (this.customisations != null) { ObjTypeCustomisation var16 = this.customisations[var12]; if (var16 != null) { int var17; - if (var16.recol != null && var22.recolorFrom != null && var22.recolorTo.length == var16.recol.length) { + if (var16.recol != null && var22.recolorFrom != null && var16.recol.length == var22.recolorTo.length) { for (var17 = 0; var17 < var22.recolorFrom.length; ++var17) { var15.recolor(var22.recolorTo[var17], var16.recol[var17]); } } - if (var16.retex != null && var22.retextureFrom != null && var16.retex.length == var22.retextureTo.length) { + if (var16.retex != null && var22.retextureFrom != null && var22.retextureTo.length == var16.retex.length) { for (var17 = 0; var17 < var22.retextureFrom.length; ++var17) { var15.retexture(var22.retextureTo[var17], var16.retex[var17]); } @@ -394,18 +373,18 @@ public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3 ModelData var20 = new ModelData(var19, var11); for (var13 = 0; var13 < 5; ++var13) { - if (this.bodyColors[var13] < class140.field1328[var13].length) { - var20.recolor(UrlRequest.field1174[var13], class140.field1328[var13][this.bodyColors[var13]]); + if (this.bodyColors[var13] < class90.field892[var13].length) { + var20.recolor(WorldMapLabelSize.field1939[var13], class90.field892[var13][this.bodyColors[var13]]); } - if (this.bodyColors[var13] < field2905[var13].length) { - var20.recolor(field2904[var13], field2905[var13][this.bodyColors[var13]]); + if (this.bodyColors[var13] < field2935[var13].length) { + var20.recolor(class503.field4091[var13], field2935[var13][this.bodyColors[var13]]); } } var18 = var20.toModel(64, 850, -30, -50, -30); PlayerAppearance_cachedModels.put(var18, var5); - this.field2914 = var5; + this.field2946 = var5; } } @@ -424,26 +403,26 @@ public Model getModel(SequenceDefinition var1, int var2, SequenceDefinition var3 } } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(I)Lic;", - garbageValue = "-812517450" + descriptor = "(I)Lkq;", + garbageValue = "-468638043" ) @Export("getModelData") ModelData getModelData() { if (this.npcTransformId != -1) { - return class90.getNpcDefinition(this.npcTransformId).method986((NewShit)null); + return VerticalAlignment.getNpcDefinition(this.npcTransformId).method941((NewShit)null); } else { boolean var1 = false; int var3; for (int var2 = 0; var2 < 12; ++var2) { var3 = this.equipment[var2]; - if (var3 >= 256 && var3 < 512 && !ClanChannel.KitDefinition_get(var3 - 256).method961()) { + if (var3 >= 256 && var3 < 512 && !class1.KitDefinition_get(var3 - 256).method909()) { var1 = true; } - if (var3 >= 512 && !InvDefinition.ItemDefinition_get(var3 - 512).method1063(this.field2916)) { + if (var3 >= 512 && !class214.ItemDefinition_get(var3 - 512).method1024(this.field2947)) { var1 = true; } } @@ -459,14 +438,14 @@ ModelData getModelData() { var5 = this.equipment[var4]; ModelData var6; if (var5 >= 256 && var5 < 512) { - var6 = ClanChannel.KitDefinition_get(var5 - 256).getKitDefinitionModels(); + var6 = class1.KitDefinition_get(var5 - 256).getKitDefinitionModels(); if (var6 != null) { var7[var3++] = var6; } } if (var5 >= 512) { - var6 = InvDefinition.ItemDefinition_get(var5 - 512).method1064(this.field2916); + var6 = class214.ItemDefinition_get(var5 - 512).method1025(this.field2947); if (var6 != null) { var7[var3++] = var6; } @@ -476,12 +455,12 @@ ModelData getModelData() { ModelData var8 = new ModelData(var7, var3); for (var5 = 0; var5 < 5; ++var5) { - if (this.bodyColors[var5] < class140.field1328[var5].length) { - var8.recolor(UrlRequest.field1174[var5], class140.field1328[var5][this.bodyColors[var5]]); + if (this.bodyColors[var5] < class90.field892[var5].length) { + var8.recolor(WorldMapLabelSize.field1939[var5], class90.field892[var5][this.bodyColors[var5]]); } - if (this.bodyColors[var5] < field2905[var5].length) { - var8.recolor(field2904[var5], field2905[var5][this.bodyColors[var5]]); + if (this.bodyColors[var5] < field2935[var5].length) { + var8.recolor(class503.field4091[var5], field2935[var5][this.bodyColors[var5]]); } } @@ -490,10 +469,10 @@ ModelData getModelData() { } } - @ObfuscatedName("ad") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "14" + descriptor = "(I)I", + garbageValue = "-1257035370" ) @Export("getChatHeadId") public int getChatHeadId() { @@ -502,108 +481,423 @@ public int getChatHeadId() { var1 = -65536L | (long)this.npcTransformId; } - Integer var3 = (Integer)field2907.method2180(var1); + Integer var3 = (Integer)field2938.method2196(var1); if (var3 == null) { - var3 = ++field2906 - 1; - field2907.method2181(var1, var3); - field2906 %= 65535; + var3 = ++field2936 - 1; + field2938.method2197(var1, var3); + field2936 %= 65535; } return var3; } - @ObfuscatedName("aq") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1158771729" + garbageValue = "-1823719371" ) - void method1729() { - this.method1718(this.field2913, this.equipment, this.bodyColors, this.field2916, this.npcTransformId); + void method1756() { + this.method1746(this.field2944, this.equipment, this.bodyColors, this.field2947, this.npcTransformId); } - @ObfuscatedName("ae") + @ObfuscatedName("jp") @ObfuscatedSignature( - descriptor = "(CLon;B)C", - garbageValue = "1" + descriptor = "(IIIIB)V", + garbageValue = "21" ) - @Export("standardizeChar") - static char standardizeChar(char var0, Language var1) { - if (var0 >= 192 && var0 <= 255) { - if (var0 >= 192 && var0 <= 198) { - return 'A'; - } + @Export("drawEntities") + static final void drawEntities(int var0, int var1, int var2, int var3) { + ++Client.viewportDrawCount; + class92.method499(); + class320.method1708(); + if (Client.combatTargetPlayerIndex >= 0 && Client.players[Client.combatTargetPlayerIndex] != null) { + AccessFile.addPlayerToScene(Client.players[Client.combatTargetPlayerIndex], false); + } - if (var0 == 199) { - return 'C'; - } + class18.addNpcsToScene(true); + int var4 = Players.Players_count; + int[] var5 = Players.Players_indices; - if (var0 >= 200 && var0 <= 203) { - return 'E'; + int var6; + for (var6 = 0; var6 < var4; ++var6) { + if (var5[var6] != Client.combatTargetPlayerIndex && var5[var6] != Client.localPlayerIndex) { + AccessFile.addPlayerToScene(Client.players[var5[var6]], true); } + } - if (var0 >= 204 && var0 <= 207) { - return 'I'; + class18.addNpcsToScene(false); + class327.method1726(); + + for (GraphicsObject var36 = (GraphicsObject)Client.graphicsObjects.last(); var36 != null; var36 = (GraphicsObject)Client.graphicsObjects.previous()) { + if (var36.plane == ItemLayer.Client_plane && !var36.isFinished) { + if (Client.cycle >= var36.cycleStart) { + var36.advance(Client.field460); + if (var36.isFinished) { + var36.remove(); + } else { + class36.scene.drawEntity(var36.plane, var36.x, var36.y, var36.z, 60, var36, 0, -1L, false); + } + } + } else { + var36.remove(); } + } - if (var0 == 209 && var1 != Language.Language_ES) { - return 'N'; - } + class348.setViewportShape(var0, var1, var2, var3, true); + var0 = Client.viewportOffsetX; + var1 = Client.viewportOffsetY; + var2 = Client.viewportWidth; + var3 = Client.viewportHeight; + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + Rasterizer3D.method1427(); + Rasterizer2D.method2660(); + var4 = Client.camAngleX; + if (Client.field473 / 256 > var4) { + var4 = Client.field473 / 256; + } - if (var0 >= 210 && var0 <= 214) { - return 'O'; - } + if (Client.cameraShaking[4] && Client.cameraMoveIntensity[4] + 128 > var4) { + var4 = Client.cameraMoveIntensity[4] + 128; + } - if (var0 >= 217 && var0 <= 220) { - return 'U'; - } + int var37 = Client.camAngleY & 2047; + var6 = LoginScreenAnimation.oculusOrbFocalPointX; + int var7 = class12.field41; + int var8 = ScriptFrame.oculusOrbFocalPointY; + int var9 = class158.method832(var4); + var9 = class395.method2041(var9, var3); + int var10 = 2048 - var4 & 2047; + int var11 = 2048 - var37 & 2047; + int var12 = 0; + int var13 = 0; + int var14 = var9; + int var15; + int var16; + int var17; + if (var10 != 0) { + var15 = Rasterizer3D.Rasterizer3D_sine[var10]; + var16 = Rasterizer3D.Rasterizer3D_cosine[var10]; + var17 = var16 * var13 - var9 * var15 >> 16; + var14 = var16 * var9 + var15 * var13 >> 16; + var13 = var17; + } - if (var0 == 221) { - return 'Y'; - } + if (var11 != 0) { + var15 = Rasterizer3D.Rasterizer3D_sine[var11]; + var16 = Rasterizer3D.Rasterizer3D_cosine[var11]; + var17 = var16 * var12 + var14 * var15 >> 16; + var14 = var16 * var14 - var12 * var15 >> 16; + var12 = var17; + } - if (var0 == 223) { - return 's'; - } + if (Client.isCameraLocked) { + FloorOverlayDefinition.field1772 = var6 - var12; + class323.field2851 = var7 - var13; + Projectile.field783 = var8 - var14; + class127.field1224 = var4; + CollisionMap.field1901 = var37; + } else { + ViewportMouse.cameraX = var6 - var12; + SecureRandomFuture.cameraY = var7 - var13; + class36.cameraZ = var8 - var14; + Varcs.cameraPitch = var4; + class192.cameraYaw = var37; + } - if (var0 >= 224 && var0 <= 230) { - return 'a'; - } + if (Client.oculusOrbState == 1 && Client.staffModLevel >= 2 && Client.cycle % 50 == 0 && (LoginScreenAnimation.oculusOrbFocalPointX >> 7 != class229.localPlayer.x >> 7 || ScriptFrame.oculusOrbFocalPointY >> 7 != class229.localPlayer.y >> 7)) { + var15 = class229.localPlayer.plane; + var16 = (LoginScreenAnimation.oculusOrbFocalPointX >> 7) + NewShit.baseX; + var17 = (ScriptFrame.oculusOrbFocalPointY >> 7) + class101.baseY; + PacketBufferNode var18 = class113.getPacketBufferNode(ClientPacket.f20, Client.packetWriter.isaacCipher); + var18.packetBuffer.writeInt(Client.field367); + var18.packetBuffer.writeShortAddLE(var16); + var18.packetBuffer.writeShortAddLE(var17); + var18.packetBuffer.writeByte(var15); + Client.packetWriter.addNode(var18); + } - if (var0 == 231) { - return 'c'; + if (!Client.isCameraLocked) { + var10 = ZoneOperation.method1634(); + } else { + if (WorldMapIcon_1.clientPreferences.getRoofsHidden()) { + var11 = ItemLayer.Client_plane; + } else { + var12 = WorldMapDecorationType.getTileHeight(ViewportMouse.cameraX, class36.cameraZ, ItemLayer.Client_plane); + if (var12 - SecureRandomFuture.cameraY < 800 && (Tiles.Tiles_renderFlags[ItemLayer.Client_plane][ViewportMouse.cameraX >> 7][class36.cameraZ >> 7] & 4) != 0) { + var11 = ItemLayer.Client_plane; + } else { + var11 = 3; + } } - if (var0 >= 232 && var0 <= 235) { - return 'e'; - } + var10 = var11; + } + + var11 = ViewportMouse.cameraX; + var12 = SecureRandomFuture.cameraY; + var13 = class36.cameraZ; + var14 = Varcs.cameraPitch; + var15 = class192.cameraYaw; + + for (var16 = 0; var16 < 5; ++var16) { + if (Client.cameraShaking[var16]) { + var17 = (int)(Math.random() * (double)(Client.cameraShakeIntensity[var16] * 2 + 1) - (double)Client.cameraShakeIntensity[var16] + Math.sin((double)Client.cameraShakeCycle[var16] * ((double)Client.cameraShakeSpeed[var16] / 100.0D)) * (double)Client.cameraMoveIntensity[var16]); + if (var16 == 0) { + ViewportMouse.cameraX += var17; + } - if (var0 >= 236 && var0 <= 239) { - return 'i'; + if (var16 == 1) { + SecureRandomFuture.cameraY += var17; + } + + if (var16 == 2) { + class36.cameraZ += var17; + } + + if (var16 == 3) { + class192.cameraYaw = var17 + class192.cameraYaw & 2047; + } + + if (var16 == 4) { + Varcs.cameraPitch += var17; + if (Varcs.cameraPitch < 128) { + Varcs.cameraPitch = 128; + } + + if (Varcs.cameraPitch > 383) { + Varcs.cameraPitch = 383; + } + } } + } + + var16 = MouseHandler.MouseHandler_x; + var17 = MouseHandler.MouseHandler_y; + if (MouseHandler.MouseHandler_lastButton != 0) { + var16 = MouseHandler.MouseHandler_lastPressedX; + var17 = MouseHandler.MouseHandler_lastPressedY; + } + + if (var16 >= var0 && var16 < var0 + var2 && var17 >= var1 && var17 < var3 + var1) { + class301.method1625(var16 - var0, var17 - var1); + } else { + class410.method2139(); + } + + class102.method604(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); + class102.method604(); + int var38 = Rasterizer3D.get3dZoom(); + Rasterizer3D.method1413(SpriteMask.client.field122); + Rasterizer3D.clips.field2458 = Client.viewportZoom; + class36.scene.draw(ViewportMouse.cameraX, SecureRandomFuture.cameraY, class36.cameraZ, Varcs.cameraPitch, class192.cameraYaw, var10); + Rasterizer3D.method1413(false); + if (Client.renderSelf) { + Rasterizer2D.method2661(); + } + + Rasterizer3D.clips.field2458 = var38; + class102.method604(); + class36.scene.clearTempGameObjects(); + Client.overheadTextLimit = 0; + boolean var19 = false; + int var20 = -1; + int var21 = -1; + int var22 = Players.Players_count; + int[] var23 = Players.Players_indices; + + int var24; + for (var24 = 0; var24 < var22 + Client.npcCount; ++var24) { + Object var25; + if (var24 < var22) { + var25 = Client.players[var23[var24]]; + if (var23[var24] == Client.combatTargetPlayerIndex) { + var19 = true; + var20 = var24; + continue; + } - if (var0 == 241 && var1 != Language.Language_ES) { - return 'n'; + if (var25 == class229.localPlayer) { + var21 = var24; + continue; + } + } else { + var25 = Client.npcs[Client.npcIndices[var24 - var22]]; } - if (var0 >= 242 && var0 <= 246) { - return 'o'; + class171.drawActor2d((Actor)var25, var24, var0, var1, var2, var3); + } + + if (Client.field387 && var21 != -1) { + class171.drawActor2d(class229.localPlayer, var21, var0, var1, var2, var3); + } + + if (var19) { + class171.drawActor2d(Client.players[Client.combatTargetPlayerIndex], var20, var0, var1, var2, var3); + } + + for (var24 = 0; var24 < Client.overheadTextLimit; ++var24) { + int var39 = Client.overheadTextXs[var24]; + int var26 = Client.overheadTextYs[var24]; + int var27 = Client.overheadTextXOffsets[var24]; + int var28 = Client.overheadTextAscents[var24]; + boolean var29 = true; + + while (var29) { + var29 = false; + + for (int var30 = 0; var30 < var24; ++var30) { + if (var26 + 2 > Client.overheadTextYs[var30] - Client.overheadTextAscents[var30] && var26 - var28 < Client.overheadTextYs[var30] + 2 && var39 - var27 < Client.overheadTextXOffsets[var30] + Client.overheadTextXs[var30] && var27 + var39 > Client.overheadTextXs[var30] - Client.overheadTextXOffsets[var30] && Client.overheadTextYs[var30] - Client.overheadTextAscents[var30] < var26) { + var26 = Client.overheadTextYs[var30] - Client.overheadTextAscents[var30]; + var29 = true; + } + } } - if (var0 >= 249 && var0 <= 252) { - return 'u'; + Client.viewportTempX = Client.overheadTextXs[var24]; + Client.viewportTempY = Client.overheadTextYs[var24] = var26; + String var40 = Client.field601[var24]; + if (Client.chatEffects == 0) { + int var31 = 16776960; + if (Client.overheadTextColors[var24] < 6) { + var31 = Client.field578[Client.overheadTextColors[var24]]; + } + + if (Client.overheadTextColors[var24] == 6) { + var31 = Client.viewportDrawCount % 20 < 10 ? 16711680 : 16776960; + } + + if (Client.overheadTextColors[var24] == 7) { + var31 = Client.viewportDrawCount % 20 < 10 ? 255 : '\uffff'; + } + + if (Client.overheadTextColors[var24] == 8) { + var31 = Client.viewportDrawCount % 20 < 10 ? '\ub000' : 8454016; + } + + int var32; + if (Client.overheadTextColors[var24] == 9) { + var32 = 150 - Client.overheadTextCyclesRemaining[var24]; + if (var32 < 50) { + var31 = var32 * 1280 + 16711680; + } else if (var32 < 100) { + var31 = 16776960 - (var32 - 50) * 327680; + } else if (var32 < 150) { + var31 = (var32 - 100) * 5 + 65280; + } + } + + if (Client.overheadTextColors[var24] == 10) { + var32 = 150 - Client.overheadTextCyclesRemaining[var24]; + if (var32 < 50) { + var31 = var32 * 5 + 16711680; + } else if (var32 < 100) { + var31 = 16711935 - (var32 - 50) * 327680; + } else if (var32 < 150) { + var31 = (var32 - 100) * 327680 + 255 - (var32 - 100) * 5; + } + } + + if (Client.overheadTextColors[var24] == 11) { + var32 = 150 - Client.overheadTextCyclesRemaining[var24]; + if (var32 < 50) { + var31 = 16777215 - var32 * 327685; + } else if (var32 < 100) { + var31 = (var32 - 50) * 327685 + 65280; + } else if (var32 < 150) { + var31 = 16777215 - (var32 - 100) * 327680; + } + } + + int var33; + if (Client.overheadTextColors[var24] == 12 && Client.field594[var24] == null) { + var32 = var40.length(); + Client.field594[var24] = new int[var32]; + + for (var33 = 0; var33 < var32; ++var33) { + int var34 = (int)((float)var33 / (float)var32 * 64.0F); + int var35 = var34 << 10 | 896 | 64; + Client.field594[var24][var33] = class478.field3940[var35]; + } + } + + if (Client.overheadTextEffects[var24] == 0) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2116(var40, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.field594[var24]); + } + + if (Client.overheadTextEffects[var24] == 1) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2113(var40, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, Client.field594[var24]); + } + + if (Client.overheadTextEffects[var24] == 2) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2114(var40, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, Client.field594[var24]); + } + + if (Client.overheadTextEffects[var24] == 3) { + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2115(var40, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, 150 - Client.overheadTextCyclesRemaining[var24], Client.field594[var24]); + } + + if (Client.overheadTextEffects[var24] == 4) { + var32 = (150 - Client.overheadTextCyclesRemaining[var24]) * (GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth(var40) + 100) / 150; + Rasterizer2D.Rasterizer2D_expandClip(var0 + Client.viewportTempX - 50, var1, var0 + Client.viewportTempX + 50, var3 + var1); + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2117(var40, var0 + Client.viewportTempX + 50 - var32, Client.viewportTempY + var1, var31, 0, Client.field594[var24]); + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + } + + if (Client.overheadTextEffects[var24] == 5) { + var32 = 150 - Client.overheadTextCyclesRemaining[var24]; + var33 = 0; + if (var32 < 25) { + var33 = var32 - 25; + } else if (var32 > 125) { + var33 = var32 - 125; + } + + Rasterizer2D.Rasterizer2D_expandClip(var0, Client.viewportTempY + var1 - GrandExchangeOfferTotalQuantityComparator.fontBold12.ascent - 1, var0 + var2, Client.viewportTempY + var1 + 5); + GrandExchangeOfferTotalQuantityComparator.fontBold12.method2116(var40, var0 + Client.viewportTempX, var33 + Client.viewportTempY + var1, var31, 0, Client.field594[var24]); + Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); + } + } else { + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawCentered(var40, var0 + Client.viewportTempX, Client.viewportTempY + var1, 16776960, 0); } + } - if (var0 == 253 || var0 == 255) { - return 'y'; + if (Client.hintArrowType == 2) { + class514.worldToScreen((Client.hintArrowX - NewShit.baseX << 7) + Client.hintArrowSubX, (Client.hintArrowY - class101.baseY << 7) + Client.hintArrowSubY, Client.hintArrowHeight * 2); + if (Client.viewportTempX > -1 && Client.cycle % 20 < 10) { + class60.headIconHintSprites[0].drawTransBgAt(var0 + Client.viewportTempX - 12, Client.viewportTempY + var1 - 28); } } - if (var0 == 338) { - return 'O'; - } else if (var0 == 339) { - return 'o'; - } else { - return var0 == 376 ? 'Y' : var0; + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).animate(Client.field460); + Client.field479 = 0; + int var41 = (class229.localPlayer.x >> 7) + NewShit.baseX; + var20 = (class229.localPlayer.y >> 7) + class101.baseY; + if (var41 >= 3053 && var41 <= 3156 && var20 >= 3056 && var20 <= 3136) { + Client.field479 = 1; } + + if (var41 >= 3072 && var41 <= 3118 && var20 >= 9492 && var20 <= 9535) { + Client.field479 = 1; + } + + if (Client.field479 == 1 && var41 >= 3139 && var41 <= 3199 && var20 >= 3008 && var20 <= 3062) { + Client.field479 = 0; + } + + ViewportMouse.cameraX = var11; + SecureRandomFuture.cameraY = var12; + class36.cameraZ = var13; + Varcs.cameraPitch = var14; + class192.cameraYaw = var15; + if (Client.isLoading && WorldMapSectionType.field2038.method1961(true, false) == 0) { + Client.isLoading = false; + } + + if (Client.isLoading) { + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); + LoginPacket.drawLoadingMessage("Loading - please wait.", false); + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/PlayerType.java b/osrs/src/main/java/PlayerType.java index 68c13d2d3..7353105e6 100644 --- a/osrs/src/main/java/PlayerType.java +++ b/osrs/src/main/java/PlayerType.java @@ -3,111 +3,111 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nn") +@ObfuscatedName("oc") @Implements("PlayerType") -public enum PlayerType implements class371 { - @ObfuscatedName("au") +public enum PlayerType implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_normal") PlayerType_normal(0, -1, true, false, true), - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_playerModerator") PlayerType_playerModerator(1, 0, true, true, true), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_jagexModerator") PlayerType_jagexModerator(2, 1, true, true, false), - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_ironman") PlayerType_ironman(3, 2, false, false, true), - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_ultimateIronman") PlayerType_ultimateIronman(4, 3, false, false, true), - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) @Export("PlayerType_hardcoreIronman") PlayerType_hardcoreIronman(5, 10, false, false, true), - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3500(6, 22, false, false, true), - @ObfuscatedName("ap") + field3513(6, 22, false, false, true), + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3495(7, 41, false, false, true), - @ObfuscatedName("aa") + field3515(7, 41, false, false, true), + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3484(8, 42, false, false, true), - @ObfuscatedName("af") + field3519(8, 42, false, false, true), + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3489(9, 43, false, false, true), - @ObfuscatedName("ad") + field3529(9, 43, false, false, true), + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3487(10, 44, false, false, true), - @ObfuscatedName("aq") + field3521(10, 44, false, false, true), + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3496(11, 45, false, false, true), - @ObfuscatedName("al") + field3526(11, 45, false, false, true), + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3492(12, 46, false, false, true), - @ObfuscatedName("an") + field3527(12, 46, false, false, true), + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3493(13, 47, false, false, true), - @ObfuscatedName("ar") + field3523(13, 47, false, false, true), + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3497(14, 48, false, false, true), - @ObfuscatedName("ab") + field3528(14, 48, false, false, true), + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3485(15, 49, false, false, true), - @ObfuscatedName("ag") + field3518(15, 49, false, false, true), + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Lnn;" + descriptor = "Loc;" ) - field3490(16, 52, false, false, true); + field3517(16, 52, false, false, true); @ObfuscatedName("am") @Export("id") final int id; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("modIcon") public final int modIcon; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("isPrivileged") public final boolean isPrivileged; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("isUser") public final boolean isUser; @@ -118,51 +118,98 @@ public enum PlayerType implements class371 { this.isUser = var7; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("ac") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "414749289" - ) - @Export("ByteArrayPool_release") - public static synchronized void ByteArrayPool_release(byte[] var0) { - if (var0.length == 100 && ByteArrayPool.ByteArrayPool_smallCount < ByteArrayPool.field3738) { - ByteArrayPool.ByteArrayPool_small[++ByteArrayPool.ByteArrayPool_smallCount - 1] = var0; - } else if (var0.length == 5000 && ByteArrayPool.ByteArrayPool_mediumCount < ByteArrayPool.field3741) { - ByteArrayPool.ByteArrayPool_medium[++ByteArrayPool.ByteArrayPool_mediumCount - 1] = var0; - } else if (var0.length == 10000 && ByteArrayPool.ByteArrayPool_largeCount < ByteArrayPool.field3740) { - ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0; - } else if (var0.length == 30000 && ByteArrayPool.field3743 < ByteArrayPool.field3744) { - ByteArrayPool.field3734[++ByteArrayPool.field3743 - 1] = var0; - } else { - if (class410.ByteArrayPool_arrays != null) { - for (int var1 = 0; var1 < class416.ByteArrayPool_alternativeSizes.length; ++var1) { - if (var0.length == class416.ByteArrayPool_alternativeSizes[var1] && StructComposition.ByteArrayPool_altSizeArrayCounts[var1] < class410.ByteArrayPool_arrays[var1].length) { - class410.ByteArrayPool_arrays[var1][StructComposition.ByteArrayPool_altSizeArrayCounts[var1]++] = var0; - return; - } - } + descriptor = "(IIII)D", + garbageValue = "-2021333271" + ) + static double method1907(int var0, int var1, int var2) { + double var3 = var1 > 0 ? (double)Math.max(0.0F, Math.min(1.0F, (float)var0 / (float)var1)) : 1.0D; + if (var3 > 0.0D && var3 < 1.0D) { + double var5; + double var7; + switch(var2) { + case 0: + return var3; + case 1: + return 1.0D - Math.cos(3.141592653589793D * var3 / 2.0D); + case 2: + return Math.sin(var3 * 3.141592653589793D / 2.0D); + case 3: + return -(Math.cos(3.141592653589793D * var3) - 1.0D) / 2.0D; + case 4: + return var3 * var3; + case 5: + return 1.0D - (1.0D - var3) * (1.0D - var3); + case 6: + return var3 < 0.5D ? 2.0D * var3 * var3 : 1.0D - Math.pow(var3 * -2.0D + 2.0D, 2.0D) / 2.0D; + case 7: + return var3 * var3 * var3; + case 8: + return 1.0D - Math.pow(1.0D - var3, 3.0D); + case 9: + return var3 < 0.5D ? var3 * 4.0D * var3 * var3 : 1.0D - Math.pow(2.0D + -2.0D * var3, 3.0D) / 2.0D; + case 10: + return var3 * var3 * var3 * var3; + case 11: + return 1.0D - Math.pow(1.0D - var3, 4.0D); + case 12: + return var3 < 0.5D ? var3 * var3 * var3 * 8.0D * var3 : 1.0D - Math.pow(2.0D + -2.0D * var3, 4.0D) / 2.0D; + case 13: + return var3 * var3 * var3 * var3 * var3; + case 14: + return 1.0D - Math.pow(1.0D - var3, 5.0D); + case 15: + return var3 < 0.5D ? var3 * var3 * var3 * 8.0D * var3 * var3 : 1.0D - Math.pow(var3 * -2.0D + 2.0D, 5.0D) / 2.0D; + case 16: + return Math.pow(2.0D, 10.0D * var3 - 10.0D); + case 17: + return 1.0D - Math.pow(2.0D, -10.0D * var3); + case 18: + return var3 < 0.5D ? Math.pow(2.0D, 10.0D + var3 * 20.0D) / 2.0D : (2.0D - Math.pow(2.0D, var3 * -20.0D + 10.0D)) / 2.0D; + case 19: + return 1.0D - Math.sqrt(1.0D - Math.pow(var3, 2.0D)); + case 20: + return Math.sqrt(1.0D - Math.pow(var3 - 1.0D, 2.0D)); + case 21: + return var3 < 0.5D ? (1.0D - Math.sqrt(1.0D - Math.pow(var3 * 2.0D, 2.0D))) / 2.0D : (Math.sqrt(1.0D - Math.pow(-2.0D * var3 + 2.0D, 2.0D)) + 1.0D) / 2.0D; + case 22: + var5 = 1.70158D; + var7 = 2.70158D; + return var3 * var3 * 2.70158D * var3 - 1.70158D * var3 * var3; + case 23: + var5 = 1.70158D; + var7 = 2.70158D; + return 1.0D + 2.70158D * Math.pow(var3 - 1.0D, 3.0D) + 1.70158D * Math.pow(var3 - 1.0D, 2.0D); + case 24: + var5 = 1.70158D; + var7 = 2.5949095D; + return var3 < 0.5D ? Math.pow(var3 * 2.0D, 2.0D) * (7.189819D * var3 - 2.5949095D) / 2.0D : (Math.pow(var3 * 2.0D - 2.0D, 2.0D) * (3.5949095D * (2.0D * var3 - 2.0D) + 2.5949095D) + 2.0D) / 2.0D; + case 25: + var5 = 2.0943951023931953D; + return -Math.pow(2.0D, var3 * 10.0D - 10.0D) * Math.sin(2.0943951023931953D * (10.0D * var3 - 10.75D)); + case 26: + var5 = 2.0943951023931953D; + return Math.pow(2.0D, -10.0D * var3) * Math.sin((var3 * 10.0D - 0.75D) * 2.0943951023931953D) + 1.0D; + case 27: + var5 = 1.3962634015954636D; + var7 = Math.sin((20.0D * var3 - 11.125D) * 1.3962634015954636D); + return var3 < 0.5D ? -(Math.pow(2.0D, var3 * 20.0D - 10.0D) * var7) / 2.0D : Math.pow(2.0D, 10.0D + -20.0D * var3) * var7 / 2.0D + 1.0D; + default: + return var3; } - + } else { + return var3 <= 0.0D ? 0.0D : 1.0D; } } - - @ObfuscatedName("nq") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-72" - ) - static final int method1883() { - float var0 = 200.0F * ((float)class449.clientPreferences.getBrightness() - 0.5F); - return 100 - Math.round(var0); - } } \ No newline at end of file diff --git a/osrs/src/main/java/Players.java b/osrs/src/main/java/Players.java index a371055f0..71396b9a1 100644 --- a/osrs/src/main/java/Players.java +++ b/osrs/src/main/java/Players.java @@ -3,65 +3,62 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ee") +@ObfuscatedName("ev") @Implements("Players") public class Players { - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("activityFlags") static byte[] activityFlags; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "[Lin;" + descriptor = "[Liz;" ) @Export("playerMovementSpeeds") static MoveSpeed[] playerMovementSpeeds; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "[Ltm;" + descriptor = "[Luj;" ) @Export("cachedAppearanceBuffer") static Buffer[] cachedAppearanceBuffer; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("Players_count") static int Players_count; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("Players_indices") static int[] Players_indices; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("Players_emptyIdxCount") static int Players_emptyIdxCount; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("Players_emptyIndices") static int[] Players_emptyIndices; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("Players_regions") static int[] Players_regions; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("Players_orientations") static int[] Players_orientations; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("Players_targetIndices") static int[] Players_targetIndices; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("Players_pendingUpdateCount") static int Players_pendingUpdateCount; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("Players_pendingUpdateIndices") static int[] Players_pendingUpdateIndices; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Luj;" ) - static Buffer field1121; - @ObfuscatedName("sg") + static Buffer field1126; + @ObfuscatedName("re") @ObfuscatedSignature( - descriptor = "Lfi;" + descriptor = "Ltl;" ) - @Export("guestClanSettings") - static ClanSettings guestClanSettings; - @ObfuscatedName("uq") - @Export("cameraMoveToX") - static int cameraMoveToX; + @Export("Widget_cachedFonts") + static class509 Widget_cachedFonts; static { activityFlags = new byte[2048]; @@ -76,39 +73,104 @@ public class Players { Players_targetIndices = new int[2048]; Players_pendingUpdateCount = 0; Players_pendingUpdateIndices = new int[2048]; - field1121 = new Buffer(new byte[5000]); + field1126 = new Buffer(new byte[5000]); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Lhc;", - garbageValue = "-1692851000" + descriptor = "(Luo;I)V", + garbageValue = "-823798047" ) - @Export("StructDefinition_getStructDefinition") - public static StructComposition StructDefinition_getStructDefinition(int var0) { - StructComposition var1 = (StructComposition)StructComposition.StructDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = StructComposition.StructDefinition_archive.takeFile(34, var0); - var1 = new StructComposition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); + @Export("updatePlayer") + static final void updatePlayer(PacketBuffer var0) { + var0.importIndex(); + int var1 = Client.localPlayerIndex; + Player var2 = class229.localPlayer = Client.players[var1] = new Player(); + var2.index = var1; + int var3 = var0.readBits(30); + byte var4 = (byte)(var3 >> 28); + int var5 = var3 >> 14 & 16383; + int var6 = var3 & 16383; + var2.pathX[0] = var5 - NewShit.baseX; + var2.x = (var2.pathX[0] << 7) + (var2.transformedSize() << 6); + var2.pathY[0] = var6 - class101.baseY; + var2.y = (var2.pathY[0] << 7) + (var2.transformedSize() << 6); + ItemLayer.Client_plane = var2.plane = var4; + if (cachedAppearanceBuffer[var1] != null) { + var2.read(cachedAppearanceBuffer[var1]); + } + + Players_count = 0; + Players_indices[++Players_count - 1] = var1; + activityFlags[var1] = 0; + Players_emptyIdxCount = 0; + + for (int var7 = 1; var7 < 2048; ++var7) { + if (var1 != var7) { + int var8 = var0.readBits(18); + int var9 = var8 >> 16; + int var10 = var8 >> 8 & 597; + int var11 = var8 & 597; + Players_regions[var7] = (var10 << 14) + var11 + (var9 << 28); + Players_orientations[var7] = 0; + Players_targetIndices[var7] = -1; + Players_emptyIndices[++Players_emptyIdxCount - 1] = var7; + activityFlags[var7] = 0; } + } - var1.postDecode(); - StructComposition.StructDefinition_cached.put(var1, (long)var0); - return var1; + var0.exportIndex(); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Lol;Ljava/lang/String;Ljava/lang/String;I)[Luz;", + garbageValue = "-669885727" + ) + public static SpritePixels[] method620(AbstractArchive var0, String var1, String var2) { + if (!var0.isValidFileName(var1, var2)) { + return null; + } else { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + return VertexNormal.method1568(var0, var3, var4); } } - @ObfuscatedName("ap") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-831991142" + descriptor = "(IIZI)Ljava/lang/String;", + garbageValue = "-1100853766" ) - public static final void method619() { - ViewportMouse.ViewportMouse_isInViewport = false; - ViewportMouse.ViewportMouse_entityCount = 0; + static String method619(int var0, int var1, boolean var2) { + if (var1 >= 2 && var1 <= 36) { + if (var2 && var0 >= 0) { + int var3 = 2; + + for (int var4 = var0 / var1; var4 != 0; ++var3) { + var4 /= var1; + } + + char[] var5 = new char[var3]; + var5[0] = '+'; + + for (int var6 = var3 - 1; var6 > 0; --var6) { + int var7 = var0; + var0 /= var1; + int var8 = var7 - var0 * var1; + if (var8 >= 10) { + var5[var6] = (char)(var8 + 87); + } else { + var5[var6] = (char)(var8 + 48); + } + } + + return new String(var5); + } else { + return Integer.toString(var0, var1); + } + } else { + throw new IllegalArgumentException("" + var1); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/PrivateChatMode.java b/osrs/src/main/java/PrivateChatMode.java index ede5ce3eb..1678b50af 100644 --- a/osrs/src/main/java/PrivateChatMode.java +++ b/osrs/src/main/java/PrivateChatMode.java @@ -3,32 +3,32 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ub") +@ObfuscatedName("un") @Implements("PrivateChatMode") public class PrivateChatMode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lub;" + descriptor = "Lun;" ) - static final PrivateChatMode field4273; - @ObfuscatedName("ae") + static final PrivateChatMode field4305; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lub;" + descriptor = "Lun;" ) - public static final PrivateChatMode field4271; - @ObfuscatedName("ao") + public static final PrivateChatMode field4303; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lub;" + descriptor = "Lun;" ) - static final PrivateChatMode field4272; - @ObfuscatedName("at") + static final PrivateChatMode field4304; + @ObfuscatedName("ao") @Export("id") public final int id; static { - field4273 = new PrivateChatMode(0); - field4271 = new PrivateChatMode(1); - field4272 = new PrivateChatMode(2); + field4305 = new PrivateChatMode(0); + field4303 = new PrivateChatMode(1); + field4304 = new PrivateChatMode(2); } PrivateChatMode(int var1) { diff --git a/osrs/src/main/java/Projectile.java b/osrs/src/main/java/Projectile.java index 5e3cf9b54..06306ed6c 100644 --- a/osrs/src/main/java/Projectile.java +++ b/osrs/src/main/java/Projectile.java @@ -6,86 +6,91 @@ @ObfuscatedName("ck") @Implements("Projectile") public final class Projectile extends Renderable { - @ObfuscatedName("au") + @ObfuscatedName("vl") + static int field783; + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("plane") int plane; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("sourceX") int sourceX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("sourceY") int sourceY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("sourceZ") int sourceZ; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("endHeight") int endHeight; - @ObfuscatedName("az") - int field805; - @ObfuscatedName("ap") - int field799; @ObfuscatedName("aa") - int field789; - @ObfuscatedName("af") + int field794; + @ObfuscatedName("ac") + int field796; + @ObfuscatedName("al") + int field800; + @ObfuscatedName("az") @Export("cycleStart") int cycleStart; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("cycleEnd") int cycleEnd; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("slope") int slope; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("startHeight") int startHeight; - @ObfuscatedName("an") - int field797; - @ObfuscatedName("ar") + @ObfuscatedName("as") + int field804; + @ObfuscatedName("ay") @Export("targetIndex") int targetIndex; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("isMoving") boolean isMoving; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("x") double x; @ObfuscatedName("am") @Export("y") double y; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("z") double z; - @ObfuscatedName("ah") + @ObfuscatedName("ai") + @Export("speedY") double speedY; - @ObfuscatedName("as") + @ObfuscatedName("aw") + @Export("speedX") double speedX; - @ObfuscatedName("ay") + @ObfuscatedName("ae") + @Export("speed") double speed; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("speedZ") double speedZ; - @ObfuscatedName("av") - double field785; - @ObfuscatedName("aw") + @ObfuscatedName("ag") + double field786; + @ObfuscatedName("ad") @Export("yaw") int yaw; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("pitch") int pitch; - @ObfuscatedName("bh") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "Lib;" + descriptor = "Lhx;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("frame") int frame; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("frameCycle") int frameCycle; @@ -105,9 +110,9 @@ public final class Projectile extends Renderable { this.targetIndex = var10; this.endHeight = var11; this.isMoving = false; - int var12 = StructComposition.SpotAnimationDefinition_get(this.id).sequence; + int var12 = Canvas.SpotAnimationDefinition_get(this.id).sequence; if (var12 != -1) { - this.sequenceDefinition = EnumComposition.SequenceDefinition_get(var12); + this.sequenceDefinition = DynamicObject.SequenceDefinition_get(var12); } else { this.sequenceDefinition = null; } @@ -116,48 +121,48 @@ public final class Projectile extends Renderable { Projectile(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { this(var1, var2, var3, var4, var5, var6, var7, var8, var9, var11, var12); - this.field797 = var10; + this.field804 = var10; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(IIIII)V", - garbageValue = "-912424366" + garbageValue = "34043964" ) @Export("setDestination") final void setDestination(int var1, int var2, int var3, int var4) { - this.field805 = var1; - this.field799 = var2; - this.field789 = var3; + this.field794 = var1; + this.field796 = var2; + this.field800 = var3; double var5; if (!this.isMoving) { - var5 = (double)(this.field805 - this.sourceX); - double var7 = (double)(this.field799 - this.sourceY); - double var9 = Math.sqrt(var5 * var5 + var7 * var7); + var5 = (double)(this.field794 - this.sourceX); + double var7 = (double)(this.field796 - this.sourceY); + double var9 = Math.sqrt(var7 * var7 + var5 * var5); this.x = (double)this.sourceX + (double)this.startHeight * var5 / var9; - this.y = (double)this.sourceY + (double)this.startHeight * var7 / var9; + this.y = (double)this.startHeight * var7 / var9 + (double)this.sourceY; this.z = (double)this.sourceZ; } var5 = (double)(this.cycleEnd + 1 - var4); - this.speedY = ((double)this.field805 - this.x) / var5; - this.speedX = ((double)this.field799 - this.y) / var5; + this.speedY = ((double)this.field794 - this.x) / var5; + this.speedX = ((double)this.field796 - this.y) / var5; this.speed = Math.sqrt(this.speedX * this.speedX + this.speedY * this.speedY); if (!this.isMoving) { - this.speedZ = -this.speed * Math.tan((double)this.slope * 0.02454369D); + this.speedZ = -this.speed * Math.tan(0.02454369D * (double)this.slope); } - this.field785 = ((double)this.field789 - this.z - this.speedZ * var5) * 2.0D / (var5 * var5); + this.field786 = 2.0D * ((double)this.field800 - this.z - this.speedZ * var5) / (var5 * var5); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { - SpotAnimationDefinition var1 = StructComposition.SpotAnimationDefinition_get(this.id); + SpotAnimationDefinition var1 = Canvas.SpotAnimationDefinition_get(this.id); Model var2 = var1.getModel(this.frame); if (var2 == null) { return null; @@ -167,18 +172,18 @@ protected final Model getModel() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "30" + descriptor = "(II)V", + garbageValue = "-1019112167" ) @Export("advance") final void advance(int var1) { this.isMoving = true; - this.x += this.speedY * (double)var1; + this.x += (double)var1 * this.speedY; this.y += (double)var1 * this.speedX; - this.z += 0.5D * this.field785 * (double)var1 * (double)var1 + (double)var1 * this.speedZ; - this.speedZ += this.field785 * (double)var1; + this.z += (double)var1 * this.speedZ + (double)var1 * (double)var1 * 0.5D * this.field786; + this.speedZ += this.field786 * (double)var1; this.yaw = (int)(Math.atan2(this.speedY, this.speedX) * 325.949D) + 1024 & 2047; this.pitch = (int)(Math.atan2(this.speedZ, this.speed) * 325.949D) & 2047; if (this.sequenceDefinition != null) { @@ -203,7 +208,7 @@ final void advance(int var1) { } } else { this.frame += var1; - int var2 = this.sequenceDefinition.method1085(); + int var2 = this.sequenceDefinition.method1052(); if (this.frame >= var2) { this.frame = var2 - this.sequenceDefinition.frameCount; } @@ -212,12 +217,161 @@ final void advance(int var1) { } - @ObfuscatedName("ae") + @ObfuscatedName("jm") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "992783271" + descriptor = "(I)Z", + garbageValue = "-1070521773" ) - public static int method430(int var0) { - return class303.field2755[var0]; + static boolean method442() { + return (Client.drawPlayerNames & 8) != 0; + } + + @ObfuscatedName("mp") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "2039275921" + ) + @Export("changeGameOptions") + static final void changeGameOptions(int var0) { + class396.method2042(); + class159.method834(); + int var1 = FloorOverlayDefinition.VarpDefinition_get(var0).type; + if (var1 != 0) { + int var2 = Varps.Varps_main[var0]; + if (var1 == 1) { + if (var2 == 1) { + Rasterizer3D.method1415(0.9D); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.9D); + class166.method866(); + WorldMapIcon_1.clientPreferences.setBrightness(0.9D); + } + + if (var2 == 2) { + Rasterizer3D.method1415(0.8D); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.8D); + class166.method866(); + WorldMapIcon_1.clientPreferences.setBrightness(0.8D); + } + + if (var2 == 3) { + Rasterizer3D.method1415(0.7D); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.7D); + class166.method866(); + WorldMapIcon_1.clientPreferences.setBrightness(0.7D); + } + + if (var2 == 4) { + Rasterizer3D.method1415(0.6D); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.6D); + class166.method866(); + WorldMapIcon_1.clientPreferences.setBrightness(0.6D); + } + } + + if (var1 == 3) { + if (var2 == 0) { + Decimator.method323(255); + } + + if (var2 == 1) { + Decimator.method323(192); + } + + if (var2 == 2) { + Decimator.method323(128); + } + + if (var2 == 3) { + Decimator.method323(64); + } + + if (var2 == 4) { + Decimator.method323(0); + } + } + + if (var1 == 4) { + if (var2 == 0) { + SoundSystem.method235(127); + } + + if (var2 == 1) { + SoundSystem.method235(96); + } + + if (var2 == 2) { + SoundSystem.method235(64); + } + + if (var2 == 3) { + SoundSystem.method235(32); + } + + if (var2 == 4) { + SoundSystem.method235(0); + } + } + + if (var1 == 5) { + Client.leftClickOpensMenu = var2 == 1; + } + + if (var1 == 6) { + Client.chatEffects = var2; + } + + if (var1 == 9) { + } + + if (var1 == 10) { + if (var2 == 0) { + Login.method438(127); + } + + if (var2 == 1) { + Login.method438(96); + } + + if (var2 == 2) { + Login.method438(64); + } + + if (var2 == 3) { + Login.method438(32); + } + + if (var2 == 4) { + Login.method438(0); + } + } + + if (var1 == 17) { + Client.followerIndex = var2 & 65535; + } + + if (var1 == 18) { + Client.playerAttackOption = (AttackOption)class12.findEnumerated(MenuAction.method436(), var2); + if (Client.playerAttackOption == null) { + Client.playerAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + } + } + + if (var1 == 19) { + if (var2 == -1) { + Client.combatTargetPlayerIndex = -1; + } else { + Client.combatTargetPlayerIndex = var2 & 2047; + } + } + + if (var1 == 22) { + AttackOption[] var3 = new AttackOption[]{AttackOption.field1103, AttackOption.AttackOption_alwaysRightClick, AttackOption.AttackOption_hidden, AttackOption.AttackOption_dependsOnCombatLevels, AttackOption.field1106}; + Client.npcAttackOption = (AttackOption)class12.findEnumerated(var3, var2); + if (Client.npcAttackOption == null) { + Client.npcAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + } + } + + } } } \ No newline at end of file diff --git a/osrs/src/main/java/RasterProvider.java b/osrs/src/main/java/RasterProvider.java index ad92b3815..fd2b74785 100644 --- a/osrs/src/main/java/RasterProvider.java +++ b/osrs/src/main/java/RasterProvider.java @@ -7,13 +7,13 @@ import java.awt.image.*; import java.util.Hashtable; -@ObfuscatedName("by") +@ObfuscatedName("bg") @Implements("RasterProvider") public final class RasterProvider extends AbstractRasterProvider { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("component") Component component; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("image") Image image; @@ -22,7 +22,7 @@ public final class RasterProvider extends AbstractRasterProvider { super.height = var2; super.pixels = new int[var2 * var1 + 1]; if (var4) { - super.field4225 = new float[var2 * var1 + 1]; + super.field4253 = new float[var2 * var1 + 1]; } DataBufferInt var5 = new DataBufferInt(super.pixels, super.pixels.length); @@ -33,40 +33,40 @@ public final class RasterProvider extends AbstractRasterProvider { this.apply(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Component;S)V", - garbageValue = "10944" + descriptor = "(Ljava/awt/Component;B)V", + garbageValue = "22" ) @Export("setComponent") final void setComponent(Component var1) { this.component = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(IIB)V", - garbageValue = "-46" + garbageValue = "-24" ) @Export("drawFull") public final void drawFull(int var1, int var2) { this.drawFull0(this.component.getGraphics(), var1, var2); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "1065945289" + descriptor = "(IIIIB)V", + garbageValue = "1" ) @Export("draw") public final void draw(int var1, int var2, int var3, int var4) { this.draw0(this.component.getGraphics(), var1, var2, var3, var4); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(Ljava/awt/Graphics;III)V", - garbageValue = "-1661158948" + garbageValue = "-321512657" ) @Export("drawFull0") final void drawFull0(Graphics var1, int var2, int var3) { @@ -78,10 +78,10 @@ final void drawFull0(Graphics var1, int var2, int var3) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljava/awt/Graphics;IIIII)V", - garbageValue = "1529858789" + descriptor = "(Ljava/awt/Graphics;IIIIB)V", + garbageValue = "58" ) @Export("draw0") final void draw0(Graphics var1, int var2, int var3, int var4, int var5) { diff --git a/osrs/src/main/java/Rasterizer2D.java b/osrs/src/main/java/Rasterizer2D.java index bde97209a..b98f00f5a 100644 --- a/osrs/src/main/java/Rasterizer2D.java +++ b/osrs/src/main/java/Rasterizer2D.java @@ -3,30 +3,30 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ut") +@ObfuscatedName("uw") @Implements("Rasterizer2D") public class Rasterizer2D extends DualNode { - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("Rasterizer2D_pixels") public static int[] Rasterizer2D_pixels; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("Rasterizer2D_width") public static int Rasterizer2D_width; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("Rasterizer2D_height") public static int Rasterizer2D_height; - @ObfuscatedName("bh") - public static float[] field4217; - @ObfuscatedName("bk") + @ObfuscatedName("be") + public static float[] field4245; + @ObfuscatedName("bl") @Export("Rasterizer2D_yClipStart") public static int Rasterizer2D_yClipStart; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("Rasterizer2D_yClipEnd") public static int Rasterizer2D_yClipEnd; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("Rasterizer2D_xClipStart") public static int Rasterizer2D_xClipStart; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("Rasterizer2D_xClipEnd") public static int Rasterizer2D_xClipEnd; @@ -40,16 +40,16 @@ public class Rasterizer2D extends DualNode { protected Rasterizer2D() { } - @ObfuscatedName("em") - protected static void method2620(int[] var0, int var1, int var2, float[] var3) { + @ObfuscatedName("eh") + protected static void method2637(int[] var0, int var1, int var2, float[] var3) { Rasterizer2D_pixels = var0; Rasterizer2D_width = var1; Rasterizer2D_height = var2; - field4217 = var3; + field4245 = var3; Rasterizer2D_setClip(0, 0, var1, var2); } - @ObfuscatedName("ef") + @ObfuscatedName("ei") @Export("Rasterizer2D_resetClip") public static void Rasterizer2D_resetClip() { Rasterizer2D_xClipStart = 0; @@ -58,7 +58,7 @@ public static void Rasterizer2D_resetClip() { Rasterizer2D_yClipEnd = Rasterizer2D_height; } - @ObfuscatedName("ek") + @ObfuscatedName("et") @Export("Rasterizer2D_setClip") public static void Rasterizer2D_setClip(int var0, int var1, int var2, int var3) { if (var0 < 0) { @@ -83,7 +83,7 @@ public static void Rasterizer2D_setClip(int var0, int var1, int var2, int var3) Rasterizer2D_yClipEnd = var3; } - @ObfuscatedName("ec") + @ObfuscatedName("er") @Export("Rasterizer2D_expandClip") public static void Rasterizer2D_expandClip(int var0, int var1, int var2, int var3) { if (Rasterizer2D_xClipStart < var0) { @@ -104,7 +104,7 @@ public static void Rasterizer2D_expandClip(int var0, int var1, int var2, int var } - @ObfuscatedName("eu") + @ObfuscatedName("ez") @Export("Rasterizer2D_getClipArray") public static void Rasterizer2D_getClipArray(int[] var0) { var0[0] = Rasterizer2D_xClipStart; @@ -113,7 +113,7 @@ public static void Rasterizer2D_getClipArray(int[] var0) { var0[3] = Rasterizer2D_yClipEnd; } - @ObfuscatedName("eg") + @ObfuscatedName("eu") @Export("Rasterizer2D_setClipArray") public static void Rasterizer2D_setClipArray(int[] var0) { Rasterizer2D_xClipStart = var0[0]; @@ -122,7 +122,7 @@ public static void Rasterizer2D_setClipArray(int[] var0) { Rasterizer2D_yClipEnd = var0[3]; } - @ObfuscatedName("ft") + @ObfuscatedName("eg") @Export("Rasterizer2D_clear") public static void Rasterizer2D_clear() { int var0 = 0; @@ -141,10 +141,10 @@ public static void Rasterizer2D_clear() { for (var1 += 7; var0 < var1; Rasterizer2D_pixels[var0++] = 0) { } - method2643(); + method2660(); } - @ObfuscatedName("fs") + @ObfuscatedName("ey") @Export("drawCircle") static void drawCircle(int var0, int var1, int var2, int var3) { if (var2 == 0) { @@ -239,7 +239,7 @@ static void drawCircle(int var0, int var1, int var2, int var3) { } } - @ObfuscatedName("fl") + @ObfuscatedName("eb") @Export("Rasterizer2D_drawCircleAlpha") public static void Rasterizer2D_drawCircleAlpha(int var0, int var1, int var2, int var3, int var4) { if (var4 != 0) { @@ -352,7 +352,7 @@ public static void Rasterizer2D_drawCircleAlpha(int var0, int var1, int var2, in } } - @ObfuscatedName("fe") + @ObfuscatedName("ed") @Export("Rasterizer2D_fillRectangleAlpha") public static void Rasterizer2D_fillRectangleAlpha(int var0, int var1, int var2, int var3, int var4, int var5) { if (var0 < Rasterizer2D_xClipStart) { @@ -390,7 +390,7 @@ public static void Rasterizer2D_fillRectangleAlpha(int var0, int var1, int var2, } - @ObfuscatedName("fd") + @ObfuscatedName("eq") @Export("Rasterizer2D_fillRectangle") public static void Rasterizer2D_fillRectangle(int var0, int var1, int var2, int var3, int var4) { if (var0 < Rasterizer2D_xClipStart) { @@ -424,7 +424,7 @@ public static void Rasterizer2D_fillRectangle(int var0, int var1, int var2, int } - @ObfuscatedName("fj") + @ObfuscatedName("ee") @Export("Rasterizer2D_fillRectangleGradient") public static void Rasterizer2D_fillRectangleGradient(int var0, int var1, int var2, int var3, int var4, int var5) { if (var2 > 0 && var3 > 0) { @@ -468,7 +468,7 @@ public static void Rasterizer2D_fillRectangleGradient(int var0, int var1, int va } } - @ObfuscatedName("fv") + @ObfuscatedName("ej") @Export("Rasterizer2D_fillRectangleGradientAlpha") public static void Rasterizer2D_fillRectangleGradientAlpha(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { if (var2 > 0 && var3 > 0) { @@ -526,7 +526,7 @@ public static void Rasterizer2D_fillRectangleGradientAlpha(int var0, int var1, i } } - @ObfuscatedName("fb") + @ObfuscatedName("ep") @ObfuscatedSignature( descriptor = "(IIIIII[BIZ)V", garbageValue = "1" @@ -607,7 +607,7 @@ public static void Rasterizer2D_drawGradientPixels(int var0, int var1, int var2, } } - @ObfuscatedName("fr") + @ObfuscatedName("fq") @Export("Rasterizer2D_drawRectangle") public static void Rasterizer2D_drawRectangle(int var0, int var1, int var2, int var3, int var4) { Rasterizer2D_drawHorizontalLine(var0, var1, var2, var4); @@ -616,7 +616,7 @@ public static void Rasterizer2D_drawRectangle(int var0, int var1, int var2, int Rasterizer2D_drawVerticalLine(var0 + var2 - 1, var1, var3, var4); } - @ObfuscatedName("fq") + @ObfuscatedName("fe") @Export("Rasterizer2D_drawRectangleAlpha") public static void Rasterizer2D_drawRectangleAlpha(int var0, int var1, int var2, int var3, int var4, int var5) { Rasterizer2D_drawHorizontalLineAlpha(var0, var1, var2, var4, var5); @@ -628,7 +628,7 @@ public static void Rasterizer2D_drawRectangleAlpha(int var0, int var1, int var2, } - @ObfuscatedName("fp") + @ObfuscatedName("ff") public static void Rasterizer2D_drawHorizontalLine(int var0, int var1, int var2, int var3) { if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { if (var0 < Rasterizer2D_xClipStart) { @@ -649,7 +649,7 @@ public static void Rasterizer2D_drawHorizontalLine(int var0, int var1, int var2, } } - @ObfuscatedName("fg") + @ObfuscatedName("fb") @Export("Rasterizer2D_drawHorizontalLineAlpha") static void Rasterizer2D_drawHorizontalLineAlpha(int var0, int var1, int var2, int var3, int var4) { if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) { @@ -679,7 +679,7 @@ static void Rasterizer2D_drawHorizontalLineAlpha(int var0, int var1, int var2, i } } - @ObfuscatedName("fo") + @ObfuscatedName("fr") public static void Rasterizer2D_drawVerticalLine(int var0, int var1, int var2, int var3) { if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { if (var1 < Rasterizer2D_yClipStart) { @@ -700,7 +700,7 @@ public static void Rasterizer2D_drawVerticalLine(int var0, int var1, int var2, i } } - @ObfuscatedName("fz") + @ObfuscatedName("fi") @Export("Rasterizer2D_drawVerticalLineAlpha") static void Rasterizer2D_drawVerticalLineAlpha(int var0, int var1, int var2, int var3, int var4) { if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) { @@ -731,7 +731,7 @@ static void Rasterizer2D_drawVerticalLineAlpha(int var0, int var1, int var2, int } } - @ObfuscatedName("fu") + @ObfuscatedName("fo") @Export("Rasterizer2D_drawLine") public static void Rasterizer2D_drawLine(int var0, int var1, int var2, int var3, int var4) { var2 -= var0; @@ -813,7 +813,7 @@ public static void Rasterizer2D_drawLine(int var0, int var1, int var2, int var3, } } - @ObfuscatedName("fn") + @ObfuscatedName("fw") @Export("Rasterizer2D_setPixel") static void Rasterizer2D_setPixel(int var0, int var1, int var2) { if (var0 >= Rasterizer2D_xClipStart && var1 >= Rasterizer2D_yClipStart && var0 < Rasterizer2D_xClipEnd && var1 < Rasterizer2D_yClipEnd) { @@ -821,7 +821,7 @@ static void Rasterizer2D_setPixel(int var0, int var1, int var2) { } } - @ObfuscatedName("fx") + @ObfuscatedName("fj") @Export("Rasterizer2D_fillMaskedRectangle") public static void Rasterizer2D_fillMaskedRectangle(int var0, int var1, int var2, int[] var3, int[] var4) { int var5 = var0 + Rasterizer2D_width * var1; @@ -838,28 +838,28 @@ public static void Rasterizer2D_fillMaskedRectangle(int var0, int var1, int var2 } - @ObfuscatedName("ff") - public static void method2643() { - if (field4217 != null) { + @ObfuscatedName("fh") + public static void method2660() { + if (field4245 != null) { int var0; int var1; int var2; if (Rasterizer2D_xClipStart == 0 && Rasterizer2D_xClipEnd == Rasterizer2D_width && Rasterizer2D_yClipStart == 0 && Rasterizer2D_yClipEnd == Rasterizer2D_height) { - var0 = field4217.length; + var0 = field4245.length; var1 = var0 - (var0 & 7); - for (var2 = 0; var2 < var1; field4217[var2++] = 0.0F) { - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; - field4217[var2++] = 0.0F; + for (var2 = 0; var2 < var1; field4245[var2++] = 0.0F) { + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; + field4245[var2++] = 0.0F; } while (var2 < var0) { - field4217[var2++] = 0.0F; + field4245[var2++] = 0.0F; } } else { var0 = Rasterizer2D_xClipEnd - Rasterizer2D_xClipStart; @@ -877,21 +877,21 @@ public static void method2643() { do { ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; --var6; } while(var6 > 0); } @@ -901,7 +901,7 @@ public static void method2643() { do { ++var0; - field4217[var0] = 0.0F; + field4245[var0] = 0.0F; --var6; } while(var6 > 0); } @@ -913,14 +913,14 @@ public static void method2643() { } } - @ObfuscatedName("fc") - public static void method2644() { - if (field4217 != null) { - int var0 = field4217.length; + @ObfuscatedName("fg") + public static void method2661() { + if (field4245 != null) { + int var0 = field4245.length; for (int var1 = 0; var1 < var0; ++var1) { - if (var1 % Rasterizer2D_width < Rasterizer2D_width / 2 && field4217[var1] > 0.0F) { - float var3 = field4217[var1]; + if (var1 % Rasterizer2D_width < Rasterizer2D_width / 2 && field4245[var1] > 0.0F) { + float var3 = field4245[var1]; float var4 = 75.0F; float var5 = 10000.0F; float var6 = 750000.0F / (10000.0F - 9925.0F * var3); diff --git a/osrs/src/main/java/Rasterizer3D.java b/osrs/src/main/java/Rasterizer3D.java index 9febe31bf..a15b185eb 100644 --- a/osrs/src/main/java/Rasterizer3D.java +++ b/osrs/src/main/java/Rasterizer3D.java @@ -3,58 +3,58 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ix") +@ObfuscatedName("ki") @Implements("Rasterizer3D") public class Rasterizer3D { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("Rasterizer3D_colorPalette") public static int[] Rasterizer3D_colorPalette; - @ObfuscatedName("ae") - static int[] field2036; + @ObfuscatedName("ah") + static int[] field2218; + @ObfuscatedName("ar") + static int[] field2219; @ObfuscatedName("ao") - static int[] field2037; - @ObfuscatedName("at") @Export("Rasterizer3D_sine") public static int[] Rasterizer3D_sine; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("Rasterizer3D_cosine") public static int[] Rasterizer3D_cosine; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Ljl;" + descriptor = "Lkh;" ) @Export("clips") public static Clips clips; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lkn;" ) - static class228 field2035; - @ObfuscatedName("ap") + static class268 field2220; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lkn;" ) - static final class228 field2039; - @ObfuscatedName("aa") + static final class268 field2221; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lid;" + descriptor = "Lkn;" ) - static final class228 field2038; + static final class268 field2222; static { Rasterizer3D_colorPalette = new int[65536]; - field2036 = new int[512]; - field2037 = new int[2048]; + field2218 = new int[512]; + field2219 = new int[2048]; Rasterizer3D_sine = new int[2048]; Rasterizer3D_cosine = new int[2048]; int var0; for (var0 = 1; var0 < 512; ++var0) { - field2036[var0] = 32768 / var0; + field2218[var0] = 32768 / var0; } for (var0 = 1; var0 < 2048; ++var0) { - field2037[var0] = 65536 / var0; + field2219[var0] = 65536 / var0; } for (var0 = 0; var0 < 2048; ++var0) { @@ -63,35 +63,35 @@ public class Rasterizer3D { } clips = new Clips(); - field2039 = new class243(clips); - field2038 = new class245(clips); - field2035 = field2039; + field2221 = new class283(clips); + field2222 = new class285(clips); + field2220 = field2221; } - @ObfuscatedName("au") - public static void method1185(boolean var0) { - if (var0 && Rasterizer2D.field4217 != null) { - field2035 = field2038; + @ObfuscatedName("at") + public static void method1413(boolean var0) { + if (var0 && Rasterizer2D.field4245 != null) { + field2220 = field2222; } else { - field2035 = field2039; + field2220 = field2221; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljs;)V" + descriptor = "(Llw;)V" ) - public static void method1186(TextureLoader var0) { + public static void method1414(TextureLoader var0) { clips.Rasterizer3D_textureLoader = var0; } - @ObfuscatedName("ao") - public static void method1187(double var0) { + @ObfuscatedName("ar") + public static void method1415(double var0) { Rasterizer3D_buildPalette(var0, 0, 512); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("Rasterizer3D_buildPalette") static void Rasterizer3D_buildPalette(double var0, int var2, int var3) { int var4 = var2 * 128; @@ -170,7 +170,7 @@ static void Rasterizer3D_buildPalette(double var0, int var2, int var3) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("Rasterizer3D_brighten") static int Rasterizer3D_brighten(int var0, double var1) { double var3 = (double)(var0 >> 16) / 256.0D; @@ -185,128 +185,128 @@ static int Rasterizer3D_brighten(int var0, double var1) { return var11 + (var10 << 8) + (var9 << 16); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("getClipMidX") static int getClipMidX() { - return clips.field2272; + return clips.field2454; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("getClipMidY") static int getClipMidY() { - return clips.field2274; + return clips.field2453; } - @ObfuscatedName("ap") - static int method1192() { + @ObfuscatedName("ac") + static int method1420() { return clips.clipNegativeMidX; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("getClipMidX2") static int getClipMidX2() { - return clips.field2273; + return clips.field2450; } - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("getClipMidY2") static int getClipMidY2() { - return clips.field2271; + return clips.field2447; } - @ObfuscatedName("ad") - static int method1195() { + @ObfuscatedName("ap") + static int method1423() { return clips.clipNegativeMidY; } - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("get3dZoom") public static int get3dZoom() { - return clips.field2280; + return clips.field2458; } - @ObfuscatedName("al") - static int method1197() { - return clips.field2276; + @ObfuscatedName("ax") + static int method1425() { + return clips.field2455; } - @ObfuscatedName("an") - public static void method1198(int[] var0, int var1, int var2, float[] var3) { - if (var3 == null && field2035 == field2038) { - field2035 = field2039; + @ObfuscatedName("as") + public static void method1426(int[] var0, int var1, int var2, float[] var3) { + if (var3 == null && field2220 == field2222) { + field2220 = field2221; } - field2035.method1220(var0, var1, var2, var3); + field2220.method1445(var0, var1, var2, var3); } - @ObfuscatedName("ar") - public static void method1199() { - method1200(Rasterizer2D.Rasterizer2D_xClipStart, Rasterizer2D.Rasterizer2D_yClipStart, Rasterizer2D.Rasterizer2D_xClipEnd, Rasterizer2D.Rasterizer2D_yClipEnd); + @ObfuscatedName("ay") + public static void method1427() { + method1428(Rasterizer2D.Rasterizer2D_xClipStart, Rasterizer2D.Rasterizer2D_yClipStart, Rasterizer2D.Rasterizer2D_xClipEnd, Rasterizer2D.Rasterizer2D_yClipEnd); } - @ObfuscatedName("ab") - static void method1200(int var0, int var1, int var2, int var3) { - clips.field2276 = var2 - var0; - clips.field2269 = var3 - var1; - method1201(); - if (clips.Rasterizer3D_rowOffsets.length < clips.field2269) { - clips.Rasterizer3D_rowOffsets = new int[WorldMapIcon_1.method1401(clips.field2269)]; + @ObfuscatedName("ak") + static void method1428(int var0, int var1, int var2, int var3) { + clips.field2455 = var2 - var0; + clips.field2449 = var3 - var1; + method1429(); + if (clips.Rasterizer3D_rowOffsets.length < clips.field2449) { + clips.Rasterizer3D_rowOffsets = new int[class184.method927(clips.field2449)]; } int var4 = var0 + Rasterizer2D.Rasterizer2D_width * var1; - for (int var5 = 0; var5 < clips.field2269; ++var5) { + for (int var5 = 0; var5 < clips.field2449; ++var5) { clips.Rasterizer3D_rowOffsets[var5] = var4; var4 += Rasterizer2D.Rasterizer2D_width; } } - @ObfuscatedName("ag") - public static void method1201() { - clips.method1361(); + @ObfuscatedName("aj") + public static void method1429() { + clips.method1578(); } @ObfuscatedName("am") - public static void method1202(int var0, int var1) { + public static void method1430(int var0, int var1) { int var2 = clips.Rasterizer3D_rowOffsets[0]; int var3 = var2 / Rasterizer2D.Rasterizer2D_width; int var4 = var2 - var3 * Rasterizer2D.Rasterizer2D_width; - clips.method1362(var0, var4, var1, var3); + clips.method1579(var0, var4, var1, var3); } - @ObfuscatedName("ax") - public static void method1203(int var0, int var1, int var2) { - clips.method1363(var0, var1, var2); + @ObfuscatedName("aq") + public static void method1431(int var0, int var1, int var2) { + clips.method1580(var0, var1, var2); } - @ObfuscatedName("ah") - static void method1204(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11) { - field2035.vmethod1374(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11); + @ObfuscatedName("ai") + static void method1432(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11) { + field2220.vmethod1374(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11); } - @ObfuscatedName("as") - public static void method1205(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9) { - field2035.vmethod1366(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9); + @ObfuscatedName("aw") + public static void method1433(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9) { + field2220.vmethod1366(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9); } - @ObfuscatedName("ay") - static void method1206(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21) { - field2035.vmethod1378(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20, var21); + @ObfuscatedName("ae") + static void method1434(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21) { + field2220.vmethod1378(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20, var21); } - @ObfuscatedName("aj") - static void method1207(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21) { - field2035.vmethod1362(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20, var21); + @ObfuscatedName("an") + static void method1435(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21) { + field2220.vmethod1362(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15, var16, var17, var18, var19, var20, var21); } - @ObfuscatedName("av") - static void method1208(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, byte var12, byte var13, byte var14, byte var15) { - field2035.method1223(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15); + @ObfuscatedName("ag") + static void method1436(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, int var10, int var11, byte var12, byte var13, byte var14, byte var15) { + field2220.method1448(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14, var15); } - @ObfuscatedName("aw") - static void method1209(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, byte var10, byte var11, byte var12, byte var13) { - field2035.method1224(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13); + @ObfuscatedName("ad") + static void method1437(int var0, int var1, int var2, int var3, int var4, int var5, float var6, float var7, float var8, int var9, byte var10, byte var11, byte var12, byte var13) { + field2220.method1449(var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13); } } \ No newline at end of file diff --git a/osrs/src/main/java/RawPcmStream.java b/osrs/src/main/java/RawPcmStream.java index 0095ecb4b..d2f9efe95 100644 --- a/osrs/src/main/java/RawPcmStream.java +++ b/osrs/src/main/java/RawPcmStream.java @@ -3,108 +3,108 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bn") +@ObfuscatedName("bb") @Implements("RawPcmStream") public class RawPcmStream extends PcmStream { - @ObfuscatedName("au") - int field245; - @ObfuscatedName("ae") - int field235; - @ObfuscatedName("ao") - int field240; @ObfuscatedName("at") - int field244; - @ObfuscatedName("ac") + int field236; + @ObfuscatedName("ah") + int field231; + @ObfuscatedName("ar") int field234; - @ObfuscatedName("ai") + @ObfuscatedName("ao") + int field233; + @ObfuscatedName("ab") + int field229; + @ObfuscatedName("au") int field237; - @ObfuscatedName("az") - int field246; - @ObfuscatedName("ap") + @ObfuscatedName("aa") + int field228; + @ObfuscatedName("ac") @Export("numLoops") int numLoops; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("start") int start; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("end") int end; - @ObfuscatedName("ad") - boolean field232; - @ObfuscatedName("aq") - int field242; - @ObfuscatedName("al") + @ObfuscatedName("ap") + boolean field227; + @ObfuscatedName("av") int field238; - @ObfuscatedName("an") + @ObfuscatedName("ax") int field239; - @ObfuscatedName("ar") - int field243; + @ObfuscatedName("as") + int field235; + @ObfuscatedName("ay") + int field240; @ObfuscatedSignature( - descriptor = "(Lbu;III)V" + descriptor = "(Lbt;III)V" ) RawPcmStream(RawSound var1, int var2, int var3, int var4) { super.sound = var1; this.start = var1.start; this.end = var1.end; - this.field232 = var1.field167; - this.field235 = var2; - this.field240 = var3; - this.field244 = var4; - this.field245 = 0; - this.method236(); + this.field227 = var1.field165; + this.field231 = var2; + this.field234 = var3; + this.field233 = var4; + this.field236 = 0; + this.method250(); } @ObfuscatedSignature( - descriptor = "(Lbu;II)V" + descriptor = "(Lbt;II)V" ) RawPcmStream(RawSound var1, int var2, int var3) { super.sound = var1; this.start = var1.start; this.end = var1.end; - this.field232 = var1.field167; - this.field235 = var2; - this.field240 = var3; - this.field244 = 8192; - this.field245 = 0; - this.method236(); + this.field227 = var1.field165; + this.field231 = var2; + this.field234 = var3; + this.field233 = 8192; + this.field236 = 0; + this.method250(); } - @ObfuscatedName("ac") - void method236() { - this.field234 = this.field240; - this.field237 = method231(this.field240, this.field244); - this.field246 = method232(this.field240, this.field244); + @ObfuscatedName("ab") + void method250() { + this.field229 = this.field234; + this.field237 = method245(this.field234, this.field233); + this.field228 = method246(this.field234, this.field233); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("firstSubStream") protected PcmStream firstSubStream() { return null; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "()Lbw;" + descriptor = "()Lbk;" ) @Export("nextSubStream") protected PcmStream nextSubStream() { return null; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod5648") protected int vmethod5648() { - return this.field240 == 0 && this.field242 == 0 ? 0 : 1; + return this.field234 == 0 && this.field238 == 0 ? 0 : 1; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("fill") public synchronized void fill(int[] var1, int var2, int var3) { - if (this.field240 == 0 && this.field242 == 0) { + if (this.field234 == 0 && this.field238 == 0) { this.skip(var3); } else { RawSound var4 = (RawSound)super.sound; @@ -118,163 +118,163 @@ public synchronized void fill(int[] var1, int var2, int var3) { int var9 = var2; var3 += var2; - if (this.field245 < 0) { - if (this.field235 <= 0) { - this.method245(); + if (this.field236 < 0) { + if (this.field231 <= 0) { + this.method259(); this.remove(); return; } - this.field245 = 0; + this.field236 = 0; } - if (this.field245 >= var7) { - if (this.field235 >= 0) { - this.method245(); + if (this.field236 >= var7) { + if (this.field231 >= 0) { + this.method259(); this.remove(); return; } - this.field245 = var7 - 1; + this.field236 = var7 - 1; } if (this.numLoops < 0) { - if (this.field232) { - if (this.field235 < 0) { - var9 = this.method259(var1, var2, var5, var3, var4.samples[this.start]); - if (this.field245 >= var5) { + if (this.field227) { + if (this.field231 < 0) { + var9 = this.method273(var1, var2, var5, var3, var4.samples[this.start]); + if (this.field236 >= var5) { return; } - this.field245 = var5 + var5 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var5 + var5 - 1 - this.field236; + this.field231 = -this.field231; } while (true) { - var9 = this.method258(var1, var9, var6, var3, var4.samples[this.end - 1]); - if (this.field245 < var6) { + var9 = this.method272(var1, var9, var6, var3, var4.samples[this.end - 1]); + if (this.field236 < var6) { return; } - this.field245 = var6 + var6 - 1 - this.field245; - this.field235 = -this.field235; - var9 = this.method259(var1, var9, var5, var3, var4.samples[this.start]); - if (this.field245 >= var5) { + this.field236 = var6 + var6 - 1 - this.field236; + this.field231 = -this.field231; + var9 = this.method273(var1, var9, var5, var3, var4.samples[this.start]); + if (this.field236 >= var5) { return; } - this.field245 = var5 + var5 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var5 + var5 - 1 - this.field236; + this.field231 = -this.field231; } - } else if (this.field235 < 0) { + } else if (this.field231 < 0) { while (true) { - var9 = this.method259(var1, var9, var5, var3, var4.samples[this.end - 1]); - if (this.field245 >= var5) { + var9 = this.method273(var1, var9, var5, var3, var4.samples[this.end - 1]); + if (this.field236 >= var5) { return; } - this.field245 = var6 - 1 - (var6 - 1 - this.field245) % var8; + this.field236 = var6 - 1 - (var6 - 1 - this.field236) % var8; } } else { while (true) { - var9 = this.method258(var1, var9, var6, var3, var4.samples[this.start]); - if (this.field245 < var6) { + var9 = this.method272(var1, var9, var6, var3, var4.samples[this.start]); + if (this.field236 < var6) { return; } - this.field245 = var5 + (this.field245 - var5) % var8; + this.field236 = var5 + (this.field236 - var5) % var8; } } } else { if (this.numLoops > 0) { - if (this.field232) { + if (this.field227) { label133: { - if (this.field235 < 0) { - var9 = this.method259(var1, var2, var5, var3, var4.samples[this.start]); - if (this.field245 >= var5) { + if (this.field231 < 0) { + var9 = this.method273(var1, var2, var5, var3, var4.samples[this.start]); + if (this.field236 >= var5) { return; } - this.field245 = var5 + var5 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var5 + var5 - 1 - this.field236; + this.field231 = -this.field231; if (--this.numLoops == 0) { break label133; } } do { - var9 = this.method258(var1, var9, var6, var3, var4.samples[this.end - 1]); - if (this.field245 < var6) { + var9 = this.method272(var1, var9, var6, var3, var4.samples[this.end - 1]); + if (this.field236 < var6) { return; } - this.field245 = var6 + var6 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var6 + var6 - 1 - this.field236; + this.field231 = -this.field231; if (--this.numLoops == 0) { break; } - var9 = this.method259(var1, var9, var5, var3, var4.samples[this.start]); - if (this.field245 >= var5) { + var9 = this.method273(var1, var9, var5, var3, var4.samples[this.start]); + if (this.field236 >= var5) { return; } - this.field245 = var5 + var5 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var5 + var5 - 1 - this.field236; + this.field231 = -this.field231; } while(--this.numLoops != 0); } } else { int var10; - if (this.field235 < 0) { + if (this.field231 < 0) { while (true) { - var9 = this.method259(var1, var9, var5, var3, var4.samples[this.end - 1]); - if (this.field245 >= var5) { + var9 = this.method273(var1, var9, var5, var3, var4.samples[this.end - 1]); + if (this.field236 >= var5) { return; } - var10 = (var6 - 1 - this.field245) / var8; + var10 = (var6 - 1 - this.field236) / var8; if (var10 >= this.numLoops) { - this.field245 += var8 * this.numLoops; + this.field236 += var8 * this.numLoops; this.numLoops = 0; break; } - this.field245 += var8 * var10; + this.field236 += var8 * var10; this.numLoops -= var10; } } else { while (true) { - var9 = this.method258(var1, var9, var6, var3, var4.samples[this.start]); - if (this.field245 < var6) { + var9 = this.method272(var1, var9, var6, var3, var4.samples[this.start]); + if (this.field236 < var6) { return; } - var10 = (this.field245 - var5) / var8; + var10 = (this.field236 - var5) / var8; if (var10 >= this.numLoops) { - this.field245 -= var8 * this.numLoops; + this.field236 -= var8 * this.numLoops; this.numLoops = 0; break; } - this.field245 -= var8 * var10; + this.field236 -= var8 * var10; this.numLoops -= var10; } } } } - if (this.field235 < 0) { - this.method259(var1, var9, 0, var3, 0); - if (this.field245 < 0) { - this.field245 = -1; - this.method245(); + if (this.field231 < 0) { + this.method273(var1, var9, 0, var3, 0); + if (this.field236 < 0) { + this.field236 = -1; + this.method259(); this.remove(); } } else { - this.method258(var1, var9, var7, var3, 0); - if (this.field245 >= var7) { - this.field245 = var7; - this.method245(); + this.method272(var1, var9, var7, var3, 0); + if (this.field236 >= var7) { + this.field236 = var7; + this.method259(); this.remove(); } } @@ -283,33 +283,33 @@ public synchronized void fill(int[] var1, int var2, int var3) { } } - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("setNumLoops") public synchronized void setNumLoops(int var1) { this.numLoops = var1; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("skip") public synchronized void skip(int var1) { - if (this.field242 > 0) { - if (var1 >= this.field242) { - if (this.field240 == Integer.MIN_VALUE) { - this.field240 = 0; - this.field246 = 0; - this.field237 = 0; + if (this.field238 > 0) { + if (var1 >= this.field238) { + if (this.field234 == Integer.MIN_VALUE) { this.field234 = 0; + this.field228 = 0; + this.field237 = 0; + this.field229 = 0; this.remove(); - var1 = this.field242; + var1 = this.field238; } - this.field242 = 0; - this.method236(); + this.field238 = 0; + this.method250(); } else { - this.field234 += this.field238 * var1; - this.field237 += this.field239 * var1; - this.field246 += this.field243 * var1; - this.field242 -= var1; + this.field229 += this.field239 * var1; + this.field237 += this.field235 * var1; + this.field228 += this.field240 * var1; + this.field238 -= var1; } } @@ -322,130 +322,130 @@ public synchronized void skip(int var1) { this.numLoops = 0; } - if (this.field245 < 0) { - if (this.field235 <= 0) { - this.method245(); + if (this.field236 < 0) { + if (this.field231 <= 0) { + this.method259(); this.remove(); return; } - this.field245 = 0; + this.field236 = 0; } - if (this.field245 >= var5) { - if (this.field235 >= 0) { - this.method245(); + if (this.field236 >= var5) { + if (this.field231 >= 0) { + this.method259(); this.remove(); return; } - this.field245 = var5 - 1; + this.field236 = var5 - 1; } - this.field245 += this.field235 * var1; + this.field236 += this.field231 * var1; if (this.numLoops < 0) { - if (!this.field232) { - if (this.field235 < 0) { - if (this.field245 >= var3) { + if (!this.field227) { + if (this.field231 < 0) { + if (this.field236 >= var3) { return; } - this.field245 = var4 - 1 - (var4 - 1 - this.field245) % var6; + this.field236 = var4 - 1 - (var4 - 1 - this.field236) % var6; } else { - if (this.field245 < var4) { + if (this.field236 < var4) { return; } - this.field245 = var3 + (this.field245 - var3) % var6; + this.field236 = var3 + (this.field236 - var3) % var6; } } else { - if (this.field235 < 0) { - if (this.field245 >= var3) { + if (this.field231 < 0) { + if (this.field236 >= var3) { return; } - this.field245 = var3 + var3 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var3 + var3 - 1 - this.field236; + this.field231 = -this.field231; } - while (this.field245 >= var4) { - this.field245 = var4 + var4 - 1 - this.field245; - this.field235 = -this.field235; - if (this.field245 >= var3) { + while (this.field236 >= var4) { + this.field236 = var4 + var4 - 1 - this.field236; + this.field231 = -this.field231; + if (this.field236 >= var3) { return; } - this.field245 = var3 + var3 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var3 + var3 - 1 - this.field236; + this.field231 = -this.field231; } } } else { if (this.numLoops > 0) { - if (this.field232) { + if (this.field227) { label121: { - if (this.field235 < 0) { - if (this.field245 >= var3) { + if (this.field231 < 0) { + if (this.field236 >= var3) { return; } - this.field245 = var3 + var3 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var3 + var3 - 1 - this.field236; + this.field231 = -this.field231; if (--this.numLoops == 0) { break label121; } } do { - if (this.field245 < var4) { + if (this.field236 < var4) { return; } - this.field245 = var4 + var4 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var4 + var4 - 1 - this.field236; + this.field231 = -this.field231; if (--this.numLoops == 0) { break; } - if (this.field245 >= var3) { + if (this.field236 >= var3) { return; } - this.field245 = var3 + var3 - 1 - this.field245; - this.field235 = -this.field235; + this.field236 = var3 + var3 - 1 - this.field236; + this.field231 = -this.field231; } while(--this.numLoops != 0); } } else { label153: { int var7; - if (this.field235 < 0) { - if (this.field245 >= var3) { + if (this.field231 < 0) { + if (this.field236 >= var3) { return; } - var7 = (var4 - 1 - this.field245) / var6; + var7 = (var4 - 1 - this.field236) / var6; if (var7 >= this.numLoops) { - this.field245 += var6 * this.numLoops; + this.field236 += var6 * this.numLoops; this.numLoops = 0; break label153; } - this.field245 += var6 * var7; + this.field236 += var6 * var7; this.numLoops -= var7; } else { - if (this.field245 < var4) { + if (this.field236 < var4) { return; } - var7 = (this.field245 - var3) / var6; + var7 = (this.field236 - var3) / var6; if (var7 >= this.numLoops) { - this.field245 -= var6 * this.numLoops; + this.field236 -= var6 * this.numLoops; this.numLoops = 0; break label153; } - this.field245 -= var6 * var7; + this.field236 -= var6 * var7; this.numLoops -= var7; } @@ -454,51 +454,51 @@ public synchronized void skip(int var1) { } } - if (this.field235 < 0) { - if (this.field245 < 0) { - this.field245 = -1; - this.method245(); + if (this.field231 < 0) { + if (this.field236 < 0) { + this.field236 = -1; + this.method259(); this.remove(); } - } else if (this.field245 >= var5) { - this.field245 = var5; - this.method245(); + } else if (this.field236 >= var5) { + this.field236 = var5; + this.method259(); this.remove(); } } } - @ObfuscatedName("aq") - public synchronized void method238(int var1) { - this.method240(var1 << 6, this.method242()); + @ObfuscatedName("av") + public synchronized void method252(int var1) { + this.method254(var1 << 6, this.method256()); } - @ObfuscatedName("al") - synchronized void method239(int var1) { - this.method240(var1, this.method242()); + @ObfuscatedName("ax") + synchronized void method253(int var1) { + this.method254(var1, this.method256()); } - @ObfuscatedName("an") - synchronized void method240(int var1, int var2) { - this.field240 = var1; - this.field244 = var2; - this.field242 = 0; - this.method236(); + @ObfuscatedName("as") + synchronized void method254(int var1, int var2) { + this.field234 = var1; + this.field233 = var2; + this.field238 = 0; + this.method250(); } - @ObfuscatedName("ar") - public synchronized int method241() { - return this.field240 == Integer.MIN_VALUE ? 0 : this.field240; + @ObfuscatedName("ay") + public synchronized int method255() { + return this.field234 == Integer.MIN_VALUE ? 0 : this.field234; } - @ObfuscatedName("ab") - public synchronized int method242() { - return this.field244 < 0 ? -1 : this.field244; + @ObfuscatedName("ak") + public synchronized int method256() { + return this.field233 < 0 ? -1 : this.field233; } - @ObfuscatedName("ag") - public synchronized void method243(int var1) { + @ObfuscatedName("aj") + public synchronized void method257(int var1) { int var2 = ((RawSound)super.sound).samples.length << 8; if (var1 < -1) { var1 = -1; @@ -508,7 +508,7 @@ public synchronized void method243(int var1) { var1 = var2; } - this.field245 = var1; + this.field236 = var1; } @ObfuscatedName("am") @@ -516,42 +516,42 @@ public synchronized void method243(int var1) { descriptor = "(Z)V", garbageValue = "1" ) - public synchronized void method244() { - this.field235 = (this.field235 ^ this.field235 >> 31) + (this.field235 >>> 31); - this.field235 = -this.field235; + public synchronized void method258() { + this.field231 = (this.field231 ^ this.field231 >> 31) + (this.field231 >>> 31); + this.field231 = -this.field231; } - @ObfuscatedName("ax") - void method245() { - if (this.field242 != 0) { - if (this.field240 == Integer.MIN_VALUE) { - this.field240 = 0; + @ObfuscatedName("aq") + void method259() { + if (this.field238 != 0) { + if (this.field234 == Integer.MIN_VALUE) { + this.field234 = 0; } - this.field242 = 0; - this.method236(); + this.field238 = 0; + this.method250(); } } - @ObfuscatedName("ah") - public synchronized void method246(int var1, int var2) { - this.method247(var1, var2, this.method242()); + @ObfuscatedName("ai") + public synchronized void method260(int var1, int var2) { + this.method261(var1, var2, this.method256()); } - @ObfuscatedName("as") - public synchronized void method247(int var1, int var2, int var3) { + @ObfuscatedName("aw") + public synchronized void method261(int var1, int var2, int var3) { if (var1 == 0) { - this.method240(var2, var3); + this.method254(var2, var3); } else { - int var4 = method231(var2, var3); - int var5 = method232(var2, var3); - if (var4 == this.field237 && var5 == this.field246) { - this.field242 = 0; + int var4 = method245(var2, var3); + int var5 = method246(var2, var3); + if (var4 == this.field237 && var5 == this.field228) { + this.field238 = 0; } else { - int var6 = var2 - this.field234; - if (this.field234 - var2 > var6) { - var6 = this.field234 - var2; + int var6 = var2 - this.field229; + if (this.field229 - var2 > var6) { + var6 = this.field229 - var2; } if (var4 - this.field237 > var6) { @@ -562,42 +562,42 @@ public synchronized void method247(int var1, int var2, int var3) { var6 = this.field237 - var4; } - if (var5 - this.field246 > var6) { - var6 = var5 - this.field246; + if (var5 - this.field228 > var6) { + var6 = var5 - this.field228; } - if (this.field246 - var5 > var6) { - var6 = this.field246 - var5; + if (this.field228 - var5 > var6) { + var6 = this.field228 - var5; } if (var1 > var6) { var1 = var6; } - this.field242 = var1; - this.field240 = var2; - this.field244 = var3; - this.field238 = (var2 - this.field234) / var1; - this.field239 = (var4 - this.field237) / var1; - this.field243 = (var5 - this.field246) / var1; + this.field238 = var1; + this.field234 = var2; + this.field233 = var3; + this.field239 = (var2 - this.field229) / var1; + this.field235 = (var4 - this.field237) / var1; + this.field240 = (var5 - this.field228) / var1; } } } - @ObfuscatedName("ay") - public synchronized void method248(int var1) { + @ObfuscatedName("ae") + public synchronized void method262(int var1) { if (var1 == 0) { - this.method239(0); + this.method253(0); this.remove(); - } else if (this.field237 == 0 && this.field246 == 0) { - this.field242 = 0; - this.field240 = 0; + } else if (this.field237 == 0 && this.field228 == 0) { + this.field238 = 0; this.field234 = 0; + this.field229 = 0; this.remove(); } else { - int var2 = -this.field234; - if (this.field234 > var2) { - var2 = this.field234; + int var2 = -this.field229; + if (this.field229 > var2) { + var2 = this.field229; } if (-this.field237 > var2) { @@ -608,154 +608,154 @@ public synchronized void method248(int var1) { var2 = this.field237; } - if (-this.field246 > var2) { - var2 = -this.field246; + if (-this.field228 > var2) { + var2 = -this.field228; } - if (this.field246 > var2) { - var2 = this.field246; + if (this.field228 > var2) { + var2 = this.field228; } if (var1 > var2) { var1 = var2; } - this.field242 = var1; - this.field240 = Integer.MIN_VALUE; - this.field238 = -this.field234 / var1; - this.field239 = -this.field237 / var1; - this.field243 = -this.field246 / var1; + this.field238 = var1; + this.field234 = Integer.MIN_VALUE; + this.field239 = -this.field229 / var1; + this.field235 = -this.field237 / var1; + this.field240 = -this.field228 / var1; } } - @ObfuscatedName("aj") - public synchronized void method249(int var1) { - if (this.field235 < 0) { - this.field235 = -var1; + @ObfuscatedName("an") + public synchronized void method263(int var1) { + if (this.field231 < 0) { + this.field231 = -var1; } else { - this.field235 = var1; + this.field231 = var1; } } - @ObfuscatedName("av") - public synchronized int method250() { - return this.field235 < 0 ? -this.field235 : this.field235; + @ObfuscatedName("ag") + public synchronized int method264() { + return this.field231 < 0 ? -this.field231 : this.field231; } - @ObfuscatedName("aw") - public boolean method251() { - return this.field245 < 0 || this.field245 >= ((RawSound)super.sound).samples.length << 8; + @ObfuscatedName("ad") + public boolean method265() { + return this.field236 < 0 || this.field236 >= ((RawSound)super.sound).samples.length << 8; } - @ObfuscatedName("ak") - public boolean method252() { - return this.field242 != 0; + @ObfuscatedName("af") + public boolean method266() { + return this.field238 != 0; } - @ObfuscatedName("bh") - int method258(int[] var1, int var2, int var3, int var4, int var5) { + @ObfuscatedName("bn") + int method272(int[] var1, int var2, int var3, int var4, int var5) { while (true) { - if (this.field242 > 0) { - int var6 = var2 + this.field242; + if (this.field238 > 0) { + int var6 = var2 + this.field238; if (var6 > var4) { var6 = var4; } - this.field242 += var2; - if (this.field235 == 256 && (this.field245 & 255) == 0) { - if (PcmPlayer.PcmPlayer_stereo) { - var2 = method270(0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, this.field239, this.field243, 0, var6, var3, this); + this.field238 += var2; + if (this.field231 == 256 && (this.field236 & 255) == 0) { + if (WorldMapRectangle.PcmPlayer_stereo) { + var2 = method284(0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, this.field235, this.field240, 0, var6, var3, this); } else { - var2 = method269(((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, this.field238, 0, var6, var3, this); + var2 = method283(((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, this.field239, 0, var6, var3, this); } - } else if (PcmPlayer.PcmPlayer_stereo) { - var2 = method274(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, this.field239, this.field243, 0, var6, var3, this, this.field235, var5); + } else if (WorldMapRectangle.PcmPlayer_stereo) { + var2 = method288(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, this.field235, this.field240, 0, var6, var3, this, this.field231, var5); } else { - var2 = method273(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, this.field238, 0, var6, var3, this, this.field235, var5); + var2 = method287(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, this.field239, 0, var6, var3, this, this.field231, var5); } - this.field242 -= var2; - if (this.field242 != 0) { + this.field238 -= var2; + if (this.field238 != 0) { return var2; } - if (!this.method260()) { + if (!this.method274()) { continue; } return var4; } - if (this.field235 == 256 && (this.field245 & 255) == 0) { - if (PcmPlayer.PcmPlayer_stereo) { - return method262(0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, 0, var4, var3, this); + if (this.field231 == 256 && (this.field236 & 255) == 0) { + if (WorldMapRectangle.PcmPlayer_stereo) { + return method276(0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, 0, var4, var3, this); } - return method261(((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, 0, var4, var3, this); + return method275(((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, 0, var4, var3, this); } - if (PcmPlayer.PcmPlayer_stereo) { - return method266(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, 0, var4, var3, this, this.field235, var5); + if (WorldMapRectangle.PcmPlayer_stereo) { + return method280(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, 0, var4, var3, this, this.field231, var5); } - return method265(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, 0, var4, var3, this, this.field235, var5); + return method279(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, 0, var4, var3, this, this.field231, var5); } } - @ObfuscatedName("bm") - int method259(int[] var1, int var2, int var3, int var4, int var5) { + @ObfuscatedName("bo") + int method273(int[] var1, int var2, int var3, int var4, int var5) { while (true) { - if (this.field242 > 0) { - int var6 = var2 + this.field242; + if (this.field238 > 0) { + int var6 = var2 + this.field238; if (var6 > var4) { var6 = var4; } - this.field242 += var2; - if (this.field235 == -256 && (this.field245 & 255) == 0) { - if (PcmPlayer.PcmPlayer_stereo) { - var2 = method272(0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, this.field239, this.field243, 0, var6, var3, this); + this.field238 += var2; + if (this.field231 == -256 && (this.field236 & 255) == 0) { + if (WorldMapRectangle.PcmPlayer_stereo) { + var2 = method286(0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, this.field235, this.field240, 0, var6, var3, this); } else { - var2 = method271(((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, this.field238, 0, var6, var3, this); + var2 = method285(((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, this.field239, 0, var6, var3, this); } - } else if (PcmPlayer.PcmPlayer_stereo) { - var2 = method276(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, this.field239, this.field243, 0, var6, var3, this, this.field235, var5); + } else if (WorldMapRectangle.PcmPlayer_stereo) { + var2 = method290(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, this.field235, this.field240, 0, var6, var3, this, this.field231, var5); } else { - var2 = method275(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, this.field238, 0, var6, var3, this, this.field235, var5); + var2 = method289(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, this.field239, 0, var6, var3, this, this.field231, var5); } - this.field242 -= var2; - if (this.field242 != 0) { + this.field238 -= var2; + if (this.field238 != 0) { return var2; } - if (!this.method260()) { + if (!this.method274()) { continue; } return var4; } - if (this.field235 == -256 && (this.field245 & 255) == 0) { - if (PcmPlayer.PcmPlayer_stereo) { - return method264(0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, 0, var4, var3, this); + if (this.field231 == -256 && (this.field236 & 255) == 0) { + if (WorldMapRectangle.PcmPlayer_stereo) { + return method278(0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, 0, var4, var3, this); } - return method263(((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, 0, var4, var3, this); + return method277(((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, 0, var4, var3, this); } - if (PcmPlayer.PcmPlayer_stereo) { - return method268(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field237, this.field246, 0, var4, var3, this, this.field235, var5); + if (WorldMapRectangle.PcmPlayer_stereo) { + return method282(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field237, this.field228, 0, var4, var3, this, this.field231, var5); } - return method267(0, 0, ((RawSound)super.sound).samples, var1, this.field245, var2, this.field234, 0, var4, var3, this, this.field235, var5); + return method281(0, 0, ((RawSound)super.sound).samples, var1, this.field236, var2, this.field229, 0, var4, var3, this, this.field231, var5); } } - @ObfuscatedName("bf") - boolean method260() { - int var1 = this.field240; + @ObfuscatedName("bz") + boolean method274() { + int var1 = this.field234; int var2; int var3; if (var1 == Integer.MIN_VALUE) { @@ -763,72 +763,72 @@ boolean method260() { var2 = 0; var1 = 0; } else { - var2 = method231(var1, this.field244); - var3 = method232(var1, this.field244); + var2 = method245(var1, this.field233); + var3 = method246(var1, this.field233); } - if (var1 == this.field234 && var2 == this.field237 && var3 == this.field246) { - if (this.field240 == Integer.MIN_VALUE) { - this.field240 = 0; - this.field246 = 0; - this.field237 = 0; + if (var1 == this.field229 && var2 == this.field237 && var3 == this.field228) { + if (this.field234 == Integer.MIN_VALUE) { this.field234 = 0; + this.field228 = 0; + this.field237 = 0; + this.field229 = 0; this.remove(); return true; } else { - this.method236(); + this.method250(); return false; } } else { - if (this.field234 < var1) { - this.field238 = 1; - this.field242 = var1 - this.field234; - } else if (this.field234 > var1) { - this.field238 = -1; - this.field242 = this.field234 - var1; + if (this.field229 < var1) { + this.field239 = 1; + this.field238 = var1 - this.field229; + } else if (this.field229 > var1) { + this.field239 = -1; + this.field238 = this.field229 - var1; } else { - this.field238 = 0; + this.field239 = 0; } if (this.field237 < var2) { - this.field239 = 1; - if (this.field242 == 0 || this.field242 > var2 - this.field237) { - this.field242 = var2 - this.field237; + this.field235 = 1; + if (this.field238 == 0 || this.field238 > var2 - this.field237) { + this.field238 = var2 - this.field237; } } else if (this.field237 > var2) { - this.field239 = -1; - if (this.field242 == 0 || this.field242 > this.field237 - var2) { - this.field242 = this.field237 - var2; + this.field235 = -1; + if (this.field238 == 0 || this.field238 > this.field237 - var2) { + this.field238 = this.field237 - var2; } } else { - this.field239 = 0; + this.field235 = 0; } - if (this.field246 < var3) { - this.field243 = 1; - if (this.field242 == 0 || this.field242 > var3 - this.field246) { - this.field242 = var3 - this.field246; + if (this.field228 < var3) { + this.field240 = 1; + if (this.field238 == 0 || this.field238 > var3 - this.field228) { + this.field238 = var3 - this.field228; } - } else if (this.field246 > var3) { - this.field243 = -1; - if (this.field242 == 0 || this.field242 > this.field246 - var3) { - this.field242 = this.field246 - var3; + } else if (this.field228 > var3) { + this.field240 = -1; + if (this.field238 == 0 || this.field238 > this.field228 - var3) { + this.field238 = this.field228 - var3; } } else { - this.field243 = 0; + this.field240 = 0; } return false; } } - @ObfuscatedName("br") + @ObfuscatedName("bx") @Export("vmethod1019") int vmethod1019() { - int var1 = this.field234 * 3 >> 6; + int var1 = this.field229 * 3 >> 6; var1 = (var1 ^ var1 >> 31) + (var1 >>> 31); if (this.numLoops == 0) { - var1 -= var1 * this.field245 / (((RawSound)super.sound).samples.length << 8); + var1 -= var1 * this.field236 / (((RawSound)super.sound).samples.length << 8); } else if (this.numLoops >= 0) { var1 -= var1 * this.start / ((RawSound)super.sound).samples.length; } @@ -836,38 +836,38 @@ int vmethod1019() { return var1 > 255 ? 255 : var1; } - @ObfuscatedName("au") - static int method231(int var0, int var1) { + @ObfuscatedName("at") + static int method245(int var0, int var1) { return var1 < 0 ? var0 : (int)((double)var0 * Math.sqrt((double)(16384 - var1) * 1.220703125E-4D) + 0.5D); } - @ObfuscatedName("ae") - static int method232(int var0, int var1) { + @ObfuscatedName("ah") + static int method246(int var0, int var1) { return var1 < 0 ? -var0 : (int)((double)var0 * Math.sqrt((double)var1 * 1.220703125E-4D) + 0.5D); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lbu;II)Lbn;" + descriptor = "(Lbt;II)Lbb;" ) @Export("createRawPcmStream") public static RawPcmStream createRawPcmStream(RawSound var0, int var1, int var2) { - return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, (int)((long)var0.sampleRate * 256L * (long)var1 / (long)(PcmPlayer.field181 * 100)), var2 << 6) : null; + return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, (int)((long)var0.sampleRate * 256L * (long)var1 / (long)(PcmPlayer.field179 * 100)), var2 << 6) : null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lbu;III)Lbn;" + descriptor = "(Lbt;III)Lbb;" ) - public static RawPcmStream method235(RawSound var0, int var1, int var2, int var3) { + public static RawPcmStream method249(RawSound var0, int var1, int var2, int var3) { return var0.samples != null && var0.samples.length != 0 ? new RawPcmStream(var0, var1, var2, var3) : null; } - @ObfuscatedName("bq") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "([B[IIIIIIILbn;)I" + descriptor = "([B[IIIIIIILbb;)I" ) - static int method261(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { + static int method275(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { var2 >>= 8; var7 >>= 8; var4 <<= 2; @@ -890,15 +890,15 @@ static int method261(byte[] var0, int[] var1, int var2, int var3, int var4, int var10001 = var3++; } - var8.field245 = var2 << 8; + var8.field236 = var2 << 8; return var3; } - @ObfuscatedName("ba") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIILbn;)I" + descriptor = "(I[B[IIIIIIIILbb;)I" ) - static int method262(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { + static int method276(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { var3 >>= 8; var9 >>= 8; var5 <<= 2; @@ -941,15 +941,15 @@ static int method262(int var0, byte[] var1, int[] var2, int var3, int var4, int var10001 = var4++; } - var10.field245 = var3 << 8; + var10.field236 = var3 << 8; return var4 >> 1; } - @ObfuscatedName("bl") + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "([B[IIIIIIILbn;)I" + descriptor = "([B[IIIIIIILbb;)I" ) - static int method263(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { + static int method277(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, RawPcmStream var8) { var2 >>= 8; var7 >>= 8; var4 <<= 2; @@ -972,15 +972,15 @@ static int method263(byte[] var0, int[] var1, int var2, int var3, int var4, int var10001 = var3++; } - var8.field245 = var2 << 8; + var8.field236 = var2 << 8; return var3; } - @ObfuscatedName("be") + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIILbn;)I" + descriptor = "(I[B[IIIIIIIILbb;)I" ) - static int method264(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { + static int method278(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10) { var3 >>= 8; var9 >>= 8; var5 <<= 2; @@ -1023,15 +1023,15 @@ static int method264(int var0, byte[] var1, int[] var2, int var3, int var4, int var10001 = var4++; } - var10.field245 = var3 << 8; + var10.field236 = var3 << 8; return var4 >> 1; } - @ObfuscatedName("bi") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIILbb;II)I" ) - static int method265(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { + static int method279(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { if (var11 == 0 || (var7 = var5 + (var11 + (var9 - var4) - 257) / var11) > var8) { var7 = var8; } @@ -1056,15 +1056,15 @@ static int method265(int var0, int var1, byte[] var2, int[] var3, int var4, int var3[var10001] += ((var13 << 8) + (var1 - var13) * (var4 & 255)) * var6 >> 6; } - var10.field245 = var4; + var10.field236 = var4; return var5; } - @ObfuscatedName("bz") + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIILbb;II)I" ) - static int method266(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + static int method280(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { var8 = var9; } @@ -1098,15 +1098,15 @@ static int method266(int var0, int var1, byte[] var2, int[] var3, int var4, int var3[var10001] += var0 * var7 >> 6; } - var11.field245 = var4; + var11.field236 = var4; return var5 >> 1; } - @ObfuscatedName("bx") + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIILbb;II)I" ) - static int method267(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { + static int method281(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, RawPcmStream var10, int var11, int var12) { if (var11 == 0 || (var7 = var5 + (var11 + (var9 + 256 - var4)) / var11) > var8) { var7 = var8; } @@ -1131,15 +1131,15 @@ static int method267(int var0, int var1, byte[] var2, int[] var3, int var4, int var3[var10001] += ((var0 << 8) + (var2[var4 >> 8] - var0) * (var4 & 255)) * var6 >> 6; } - var10.field245 = var4; + var10.field236 = var4; return var5; } - @ObfuscatedName("bn") + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIILbb;II)I" ) - static int method268(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + static int method282(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { var8 = var9; } @@ -1171,15 +1171,15 @@ static int method268(int var0, int var1, byte[] var2, int[] var3, int var4, int var3[var10001] += var0 * var7 >> 6; } - var11.field245 = var4; + var11.field236 = var4; return var5 >> 1; } - @ObfuscatedName("bw") + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "([B[IIIIIIIILbn;)I" + descriptor = "([B[IIIIIIIILbb;)I" ) - static int method269(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { + static int method283(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { var2 >>= 8; var8 >>= 8; var4 <<= 2; @@ -1188,8 +1188,8 @@ static int method269(byte[] var0, int[] var1, int var2, int var3, int var4, int var6 = var7; } - var9.field237 += var9.field239 * (var6 - var3); - var9.field246 += var9.field243 * (var6 - var3); + var9.field237 += var9.field235 * (var6 - var3); + var9.field228 += var9.field240 * (var6 - var3); int var10001; for (var6 -= 3; var3 < var6; var4 += var5) { @@ -1211,16 +1211,16 @@ static int method269(byte[] var0, int[] var1, int var2, int var3, int var4, int var1[var10001] += var0[var2++] * var4; } - var9.field234 = var4 >> 2; - var9.field245 = var2 << 8; + var9.field229 = var4 >> 2; + var9.field236 = var2 << 8; return var3; } - @ObfuscatedName("bc") + @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIIIILbn;)I" + descriptor = "(I[B[IIIIIIIIIILbb;)I" ) - static int method270(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { + static int method284(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { var3 >>= 8; var11 >>= 8; var5 <<= 2; @@ -1231,7 +1231,7 @@ static int method270(int var0, byte[] var1, int[] var2, int var3, int var4, int var9 = var10; } - var12.field234 += var12.field238 * (var9 - var4); + var12.field229 += var12.field239 * (var9 - var4); var4 <<= 1; var9 <<= 1; @@ -1277,16 +1277,16 @@ static int method270(int var0, byte[] var1, int[] var2, int var3, int var4, int } var12.field237 = var5 >> 2; - var12.field246 = var6 >> 2; - var12.field245 = var3 << 8; + var12.field228 = var6 >> 2; + var12.field236 = var3 << 8; return var4 >> 1; } - @ObfuscatedName("bg") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "([B[IIIIIIIILbn;)I" + descriptor = "([B[IIIIIIIILbb;)I" ) - static int method271(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { + static int method285(byte[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, RawPcmStream var9) { var2 >>= 8; var8 >>= 8; var4 <<= 2; @@ -1295,8 +1295,8 @@ static int method271(byte[] var0, int[] var1, int var2, int var3, int var4, int var6 = var7; } - var9.field237 += var9.field239 * (var6 - var3); - var9.field246 += var9.field243 * (var6 - var3); + var9.field237 += var9.field235 * (var6 - var3); + var9.field228 += var9.field240 * (var6 - var3); int var10001; for (var6 -= 3; var3 < var6; var4 += var5) { @@ -1318,16 +1318,16 @@ static int method271(byte[] var0, int[] var1, int var2, int var3, int var4, int var1[var10001] += var0[var2--] * var4; } - var9.field234 = var4 >> 2; - var9.field245 = var2 << 8; + var9.field229 = var4 >> 2; + var9.field236 = var2 << 8; return var3; } - @ObfuscatedName("cw") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(I[B[IIIIIIIIIILbn;)I" + descriptor = "(I[B[IIIIIIIIIILbb;)I" ) - static int method272(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { + static int method286(int var0, byte[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, RawPcmStream var12) { var3 >>= 8; var11 >>= 8; var5 <<= 2; @@ -1338,7 +1338,7 @@ static int method272(int var0, byte[] var1, int[] var2, int var3, int var4, int var9 = var10; } - var12.field234 += var12.field238 * (var9 - var4); + var12.field229 += var12.field239 * (var9 - var4); var4 <<= 1; var9 <<= 1; @@ -1384,18 +1384,18 @@ static int method272(int var0, byte[] var1, int[] var2, int var3, int var4, int } var12.field237 = var5 >> 2; - var12.field246 = var6 >> 2; - var12.field245 = var3 << 8; + var12.field228 = var6 >> 2; + var12.field236 = var3 << 8; return var4 >> 1; } - @ObfuscatedName("cf") + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIILbb;II)I" ) - static int method273(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - var11.field237 -= var11.field239 * var5; - var11.field246 -= var11.field243 * var5; + static int method287(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + var11.field237 -= var11.field235 * var5; + var11.field228 -= var11.field240 * var5; if (var12 == 0 || (var8 = var5 + (var10 - var4 + var12 - 257) / var12) > var9) { var8 = var9; } @@ -1422,19 +1422,19 @@ static int method273(int var0, int var1, byte[] var2, int[] var3, int var4, int var6 += var7; } - var11.field237 += var11.field239 * var5; - var11.field246 += var11.field243 * var5; - var11.field234 = var6; - var11.field245 = var4; + var11.field237 += var11.field235 * var5; + var11.field228 += var11.field240 * var5; + var11.field229 = var6; + var11.field236 = var4; return var5; } - @ObfuscatedName("cm") + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIIIILbb;II)I" ) - static int method274(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { - var13.field234 -= var5 * var13.field238; + static int method288(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { + var13.field229 -= var5 * var13.field239; if (var14 == 0 || (var10 = var5 + (var12 - var4 + var14 - 257) / var14) > var11) { var10 = var11; } @@ -1473,20 +1473,20 @@ static int method274(int var0, int var1, byte[] var2, int[] var3, int var4, int } var5 >>= 1; - var13.field234 += var13.field238 * var5; + var13.field229 += var13.field239 * var5; var13.field237 = var6; - var13.field246 = var7; - var13.field245 = var4; + var13.field228 = var7; + var13.field236 = var4; return var5; } - @ObfuscatedName("cn") + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIILbb;II)I" ) - static int method275(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { - var11.field237 -= var11.field239 * var5; - var11.field246 -= var11.field243 * var5; + static int method289(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, RawPcmStream var11, int var12, int var13) { + var11.field237 -= var11.field235 * var5; + var11.field228 -= var11.field240 * var5; if (var12 == 0 || (var8 = var5 + (var10 + 256 - var4 + var12) / var12) > var9) { var8 = var9; } @@ -1513,19 +1513,19 @@ static int method275(int var0, int var1, byte[] var2, int[] var3, int var4, int var6 += var7; } - var11.field237 += var11.field239 * var5; - var11.field246 += var11.field243 * var5; - var11.field234 = var6; - var11.field245 = var4; + var11.field237 += var11.field235 * var5; + var11.field228 += var11.field240 * var5; + var11.field229 = var6; + var11.field236 = var4; return var5; } - @ObfuscatedName("cs") + @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "(II[B[IIIIIIIIIILbn;II)I" + descriptor = "(II[B[IIIIIIIIIILbb;II)I" ) - static int method276(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { - var13.field234 -= var5 * var13.field238; + static int method290(int var0, int var1, byte[] var2, int[] var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, RawPcmStream var13, int var14, int var15) { + var13.field229 -= var5 * var13.field239; if (var14 == 0 || (var10 = var5 + (var12 + 256 - var4 + var14) / var14) > var11) { var10 = var11; } @@ -1562,10 +1562,10 @@ static int method276(int var0, int var1, byte[] var2, int[] var3, int var4, int } var5 >>= 1; - var13.field234 += var13.field238 * var5; + var13.field229 += var13.field239 * var5; var13.field237 = var6; - var13.field246 = var7; - var13.field245 = var4; + var13.field228 = var7; + var13.field236 = var4; return var5; } } \ No newline at end of file diff --git a/osrs/src/main/java/RawSound.java b/osrs/src/main/java/RawSound.java index 9b6989313..3511a5acb 100644 --- a/osrs/src/main/java/RawSound.java +++ b/osrs/src/main/java/RawSound.java @@ -3,23 +3,23 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bu") +@ObfuscatedName("bt") @Implements("RawSound") public class RawSound extends AbstractSound { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("sampleRate") public int sampleRate; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("samples") public byte[] samples; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("start") public int start; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("end") int end; - @ObfuscatedName("ac") - public boolean field167; + @ObfuscatedName("ab") + public boolean field165; RawSound(int var1, byte[] var2, int var3, int var4) { this.sampleRate = var1; @@ -33,12 +33,12 @@ public class RawSound extends AbstractSound { this.samples = var2; this.start = var3; this.end = var4; - this.field167 = var5; + this.field165 = var5; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lcx;)Lbu;" + descriptor = "(Lce;)Lbt;" ) @Export("resample") public RawSound resample(Decimator var1) { diff --git a/osrs/src/main/java/Reflection.java b/osrs/src/main/java/Reflection.java deleted file mode 100644 index 9b6348085..000000000 --- a/osrs/src/main/java/Reflection.java +++ /dev/null @@ -1,161 +0,0 @@ -import net.runelite.mapping.ObfuscatedGetter; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.ObfuscatedClassMap; - -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; - -public class Reflection { - static Map> classes = new HashMap<>(); - - //These are mixed in - public static void reportFindClass(String className) {} - public static void reportFindField(Class className, String fieldName) {} - public static void reportInvoke(Method method, Object object, Object[] args) {} - - static { - ObfuscatedClassMap.INSTANCE.forEach((deobClassName, obfuscatedClassName) -> { - if (!deobClassName.contains("/") && !obfuscatedClassName.contains("/")) { - Class c = null; - try { - c = Class.forName(deobClassName); - } catch (Exception e) { - e.printStackTrace(); - } - classes.put(obfuscatedClassName, c); - } - }); - } - - public static Class findClass(String name) throws ClassNotFoundException { - Class clazz = classes.get(name); - if (clazz != null) { - reportFindClass(clazz.getName()); - return clazz; - } - return Class.forName(name); - } - - public static Field findField(Class clazz, String name) throws NoSuchFieldException { - reportFindField(clazz, name); - for (Field f : clazz.getDeclaredFields()) { - ObfuscatedName annotation = f.getAnnotation(ObfuscatedName.class); - if ((annotation != null) && annotation.value().equals(name)) { - return f; - } - } - return clazz.getDeclaredField(name); - } - - public static String getMethodName(Method method) { - ObfuscatedName annotation = method.getAnnotation(ObfuscatedName.class); - if (annotation != null) { - return annotation.value(); - } - return method.getName(); - } - - public static Class[] getParameterTypes(Method method) { - ObfuscatedSignature sig = method.getAnnotation(ObfuscatedSignature.class); - Class[] types = method.getParameterTypes(); - if (sig == null) { - return types; - } - String s = sig.descriptor(); - int i = s.lastIndexOf(')'); - char c = s.charAt(i - 1); - Class last; - switch (c) { - case 'B' : - last = byte.class; - break; - case 'I' : - last = int.class; - break; - case 'S' : - last = short.class; - break; - default : - throw new IllegalStateException();} - - types = Arrays.copyOf(types, types.length + 1); - types[types.length - 1] = last; - return types; - } - - public static int getInt(Field field, Object obj) throws IllegalArgumentException, IllegalAccessException { - boolean unset = false; - if ((field.getModifiers() & Modifier.PRIVATE) == 0) { - - - field.setAccessible(true); - unset = true; - } - int i; - try { - i = field.getInt(obj); - } catch (Exception ex) { - throw ex; - } finally { - if (unset) { - field.setAccessible(false); - } - } - ObfuscatedGetter og = field.getAnnotation(ObfuscatedGetter.class); - if (og != null) { - int getter = og.intValue(); - int setter = modInverse(getter); - - i *= setter; - } - return i; - } - - public static void setInt(Field field, Object obj, int value) throws IllegalArgumentException, IllegalAccessException { - ObfuscatedGetter og = field.getAnnotation(ObfuscatedGetter.class); - if (og != null) { - int getter = og.intValue(); - - value *= getter; - } - boolean unset = false; - if ((field.getModifiers() & Modifier.PRIVATE) == 0) { - - - field.setAccessible(true); - unset = true; - } - try { - field.setInt(obj, value); - } finally { - if (unset) { - field.setAccessible(false); - } - } - } - - public static BigInteger modInverse(BigInteger val, int bits) { - BigInteger shift = BigInteger.ONE.shiftLeft(bits); - return val.modInverse(shift); - } - - public static int modInverse(int val) { - return modInverse(BigInteger.valueOf(val), 32).intValue(); - } - - public static Object invoke(Method method, Object object, Object[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException { - reportInvoke(method, object, args); - try { - return method.invoke(object, args); - } catch (Throwable ex) { - throw ex; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/ReflectionCheck.java b/osrs/src/main/java/ReflectionCheck.java index 05347ae42..9b3297368 100644 --- a/osrs/src/main/java/ReflectionCheck.java +++ b/osrs/src/main/java/ReflectionCheck.java @@ -6,58 +6,199 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; -@ObfuscatedName("ba") +@ObfuscatedName("bj") @Implements("ReflectionCheck") public class ReflectionCheck extends Node { - @ObfuscatedName("sh") - @ObfuscatedSignature( - descriptor = "Lqc;" - ) - @Export("friendsChat") - static FriendsChat friendsChat; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("size") int size; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("operations") int[] operations; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("creationErrors") int[] creationErrors; - @ObfuscatedName("ac") + @ObfuscatedName("ab") + @Export("fields") Field[] fields; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("intReplaceValues") int[] intReplaceValues; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("methods") Method[] methods; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("arguments") byte[][][] arguments; ReflectionCheck() { } - @ObfuscatedName("bi") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(Lmi;II)V", - garbageValue = "-1454269975" + descriptor = "(ILdt;ZB)I", + garbageValue = "1" ) - public static void method174(Widget var0, int var1) { - ItemComposition var2 = InvDefinition.ItemDefinition_get(var1); - var0.field3101.equipment[var2.maleModel] = var1 + 512; - if (var2.maleModel1 != -1) { - var0.field3101.equipment[var2.maleModel1] = 0; - } + static int method186(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + if (var0 == 1600) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollX; + return 1; + } else if (var0 == 1601) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollY; + return 1; + } else { + class341 var7; + if (var0 == 1602) { + if (var3.type == 12) { + var7 = var3.method1871(); + if (var7 != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7.method1807().method2056(); + return 1; + } + } + + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.text; + return 1; + } else if (var0 == 1603) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollWidth; + return 1; + } else if (var0 == 1604) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollHeight; + return 1; + } else if (var0 == 1605) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelZoom; + return 1; + } else if (var0 == 1606) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleX; + return 1; + } else if (var0 == 1607) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleZ; + return 1; + } else if (var0 == 1608) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleY; + return 1; + } else if (var0 == 1609) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.transparencyTop; + return 1; + } else if (var0 == 1610) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.transparencyBot; + return 1; + } else if (var0 == 1611) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.color; + return 1; + } else if (var0 == 1612) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.color2; + return 1; + } else if (var0 == 1613) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); + return 1; + } else if (var0 == 1614) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; + return 1; + } else { + class336 var4; + if (var0 == 1617) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2923 : 0; + } - if (var2.maleModel2 != -1) { - var0.field3101.equipment[var2.maleModel2] = 0; + if (var0 == 1618) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2921 : 0; + return 1; + } else if (var0 == 1619) { + var7 = var3.method1871(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1808().method2056() : ""; + return 1; + } else if (var0 == 1620) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2922 : 0; + return 1; + } else if (var0 == 1621) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1818() : 0; + return 1; + } else if (var0 == 1622) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1819() : 0; + return 1; + } else if (var0 == 1623) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1820() : 0; + return 1; + } else if (var0 == 1624) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null && var7.method1810() ? 1 : 0; + return 1; + } else if (var0 != 1625) { + if (var0 == 1626) { + var7 = var3.method1871(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1809().method2131() : ""; + return 1; + } else if (var0 == 1627) { + var7 = var3.method1871(); + int var5 = var7 != null ? var7.method1814() : 0; + int var6 = var7 != null ? var7.method1813() : 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Math.min(var5, var6); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Math.max(var5, var6); + return 1; + } else if (var0 == 1628) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1813() : 0; + return 1; + } else if (var0 == 1629) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1822() : 0; + return 1; + } else if (var0 == 1630) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1821() : 0; + return 1; + } else if (var0 == 1631) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1823() : 0; + return 1; + } else if (var0 == 1632) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1824() : 0; + return 1; + } else { + class27 var8; + if (var0 == 1633) { + var8 = var3.method1873(); + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = var8 != null ? var8.method115(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]) : 0; + return 1; + } else if (var0 == 1634) { + var8 = var3.method1873(); + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = var8 != null ? var8.method116((char)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]) : 0; + return 1; + } else { + return 2; + } + } + } else { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null && var7.method1811() ? 1 : 0; + return 1; + } + } } + } - var0.field3101.method1729(); + @ObfuscatedName("lz") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "674487818" + ) + static String method187(int var0) { + if (var0 < 0) { + return ""; + } else { + return Client.menuTargets[var0].length() > 0 ? Client.menuActions[var0] + " " + Client.menuTargets[var0] : Client.menuActions[var0]; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/RefreshAccessTokenRequester.java b/osrs/src/main/java/RefreshAccessTokenRequester.java deleted file mode 100644 index 6c0f51bb8..000000000 --- a/osrs/src/main/java/RefreshAccessTokenRequester.java +++ /dev/null @@ -1,12 +0,0 @@ -import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedName; - -import java.net.URL; -import java.util.Map; -import java.util.concurrent.Future; - -@Implements("com/jagex/oldscape/pub/RefreshAccessTokenRequester") -@ObfuscatedName("com/jagex/oldscape/pub/RefreshAccessTokenRequester") -public interface RefreshAccessTokenRequester { - Future request(String var1, URL var2, Map var3, String var4); -} \ No newline at end of file diff --git a/osrs/src/main/java/RefreshAccessTokenResponse.java b/osrs/src/main/java/RefreshAccessTokenResponse.java deleted file mode 100644 index 82833cb94..000000000 --- a/osrs/src/main/java/RefreshAccessTokenResponse.java +++ /dev/null @@ -1,19 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.Implements; -import net.runelite.mapping.ObfuscatedName; - -@Implements("com/jagex/oldscape/pub/RefreshAccessTokenResponse") -@ObfuscatedName("com/jagex/oldscape/pub/RefreshAccessTokenResponse") -public interface RefreshAccessTokenResponse { - @Export("isSuccess") - @ObfuscatedName("isSuccess") - boolean isSuccess(); - - @Export("getAccessToken") - @ObfuscatedName("getAccessToken") - String getAccessToken(); - - @Export("getRefreshToken") - @ObfuscatedName("getRefreshToken") - String getRefreshToken(); -} \ No newline at end of file diff --git a/osrs/src/main/java/Renderable.java b/osrs/src/main/java/Renderable.java index 2cbfc8b55..345ef7092 100644 --- a/osrs/src/main/java/Renderable.java +++ b/osrs/src/main/java/Renderable.java @@ -3,10 +3,10 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ik") +@ObfuscatedName("kt") @Implements("Renderable") public abstract class Renderable extends DualNode { - @ObfuscatedName("eq") + @ObfuscatedName("ek") @Export("height") public int height; @@ -14,17 +14,17 @@ protected Renderable() { this.height = 1000; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected Model getModel() { return null; } - @ObfuscatedName("db") + @ObfuscatedName("dw") @Export("draw") void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) { Model var11 = this.getModel(); @@ -35,28 +35,66 @@ void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, } - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-109873503" + garbageValue = "1945159516" ) - public static void method1290() { - FloorOverlayDefinition.FloorOverlayDefinition_cached.clear(); + static void method1514() { + ByteArrayPool.field3780.clear(); + ByteArrayPool.field3780.add(100); + ByteArrayPool.field3780.add(5000); + ByteArrayPool.field3780.add(10000); + ByteArrayPool.field3780.add(30000); } - @ObfuscatedName("hc") + @ObfuscatedName("ld") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-597035474" + descriptor = "(Lnn;IIZB)V", + garbageValue = "-74" ) - static final void method1291() { - if (Client.logoutTimer > 0) { - ArchiveDisk.logOut(); - } else { - Client.timer.method2151(); - MusicSong.updateGameState(40); - AbstractSocket.field3819 = Client.packetWriter.getSocket(); - Client.packetWriter.removeSocket(); + @Export("alignWidgetSize") + static void alignWidgetSize(Widget var0, int var1, int var2, boolean var3) { + int var4 = var0.width; + int var5 = var0.height; + if (var0.widthAlignment == 0) { + var0.width = var0.rawWidth; + } else if (var0.widthAlignment == 1) { + var0.width = var1 - var0.rawWidth; + } else if (var0.widthAlignment == 2) { + var0.width = var0.rawWidth * var1 >> 14; + } + + if (var0.heightAlignment == 0) { + var0.height = var0.rawHeight; + } else if (var0.heightAlignment == 1) { + var0.height = var2 - var0.rawHeight; + } else if (var0.heightAlignment == 2) { + var0.height = var2 * var0.rawHeight >> 14; + } + + if (var0.widthAlignment == 4) { + var0.width = var0.field3006 * var0.height / var0.field3020; + } + + if (var0.heightAlignment == 4) { + var0.height = var0.width * var0.field3020 / var0.field3006; } + + if (var0.contentType == 1337) { + Client.viewportWidget = var0; + } + + if (var0.type == 12) { + var0.method1871().method1764(var0.width, var0.height); + } + + if (var3 && var0.onResize != null && (var4 != var0.width || var5 != var0.height)) { + ScriptEvent var6 = new ScriptEvent(); + var6.widget = var0; + var6.args = var0.onResize; + Client.scriptEvents.addFirst(var6); + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/RouteStrategy.java b/osrs/src/main/java/RouteStrategy.java index cdba866f6..de1f973bd 100644 --- a/osrs/src/main/java/RouteStrategy.java +++ b/osrs/src/main/java/RouteStrategy.java @@ -3,42 +3,74 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iw") +@ObfuscatedName("it") @Implements("RouteStrategy") public abstract class RouteStrategy { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("approxDestinationX") public int approxDestinationX; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("approxDestinationY") public int approxDestinationY; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("approxDestinationSizeX") public int approxDestinationSizeX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("approxDestinationSizeY") public int approxDestinationSizeY; protected RouteStrategy() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIILis;B)Z", - garbageValue = "85" + descriptor = "(IIILiw;I)Z", + garbageValue = "729664573" ) @Export("hasArrived") protected abstract boolean hasArrived(int var1, int var2, int var3, CollisionMap var4); - @ObfuscatedName("ja") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Lir;", + garbageValue = "-994113329" + ) + static class225[] method1149() { + return new class225[]{class225.field1912, class225.field1909, class225.field1907, class225.field1911, class225.field1913, class225.field1910, class225.field1908}; + } + + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1131670989" + garbageValue = "820783273" ) - static void method1125() { - if (Client.field386) { - class92.addPlayerToScene(VarbitComposition.localPlayer, false); - } + public static void method1150() { + PlayerComposition.PlayerAppearance_cachedModels.clear(); + PlayerComposition.field2938.clearFiles(); + PlayerComposition.field2936 = 0; + } + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "52" + ) + static int method1151(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 3500) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.getKeyPressed(var3) ? 1 : 0; + return 1; + } else if (var0 == 3501) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.method1129(var3) ? 1 : 0; + return 1; + } else if (var0 == 3502) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.method1131(var3) ? 1 : 0; + return 1; + } else { + return 2; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/RunException.java b/osrs/src/main/java/RunException.java index 2d33c007c..eb6783957 100644 --- a/osrs/src/main/java/RunException.java +++ b/osrs/src/main/java/RunException.java @@ -4,31 +4,24 @@ import java.applet.Applet; -@ObfuscatedName("uy") +@ObfuscatedName("vf") @Implements("RunException") public class RunException extends RuntimeException { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("RunException_applet") public static Applet RunException_applet; - @ObfuscatedName("ae") - public static String field4289; @ObfuscatedName("ao") - @Export("RunException_revision") - public static int RunException_revision; - @ObfuscatedName("at") - public static int field4287; - @ObfuscatedName("ac") - public static int field4285; - @ObfuscatedName("jy") - @Export("xteaKeys") - static int[][] xteaKeys; - @ObfuscatedName("ai") - String field4291; - @ObfuscatedName("az") + public static int field4318; + @ObfuscatedName("ab") + public static int field4317; + @ObfuscatedName("au") + String field4320; + @ObfuscatedName("aa") + @Export("parent") Throwable parent; RunException(Throwable var1, String var2) { - this.field4291 = var2; + this.field4320 = var2; this.parent = var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/Scene.java b/osrs/src/main/java/Scene.java index 7f928e4b4..309399f5a 100644 --- a/osrs/src/main/java/Scene.java +++ b/osrs/src/main/java/Scene.java @@ -3,188 +3,188 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iv") +@ObfuscatedName("kf") @Implements("Scene") public class Scene { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("Scene_isLowDetail") public static boolean Scene_isLowDetail; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("tileUpdateCount") static int tileUpdateCount; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("Scene_plane") static int Scene_plane; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("Scene_drawnCount") static int Scene_drawnCount; @ObfuscatedName("am") @Export("Scene_cameraXTileMin") static int Scene_cameraXTileMin; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("Scene_cameraXTileMax") static int Scene_cameraXTileMax; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("Scene_cameraYTileMin") static int Scene_cameraYTileMin; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("Scene_cameraYTileMax") static int Scene_cameraYTileMax; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("Scene_cameraXTile") static int Scene_cameraXTile; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("Scene_cameraYTile") static int Scene_cameraYTile; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("Scene_cameraX") static int Scene_cameraX; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("Scene_cameraY") static int Scene_cameraY; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("Scene_cameraZ") static int Scene_cameraZ; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("Scene_cameraPitchSine") static int Scene_cameraPitchSine; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("Scene_cameraPitchCosine") static int Scene_cameraPitchCosine; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("Scene_cameraYawSine") static int Scene_cameraYawSine; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("Scene_cameraYawCosine") static int Scene_cameraYawCosine; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "[Ljy;" + descriptor = "[Lle;" ) @Export("gameObjects") static GameObject[] gameObjects; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("checkClick") static boolean checkClick; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("Scene_selectedPlane") static int Scene_selectedPlane; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("Scene_selectedScreenX") static int Scene_selectedScreenX; @ObfuscatedName("bm") @Export("Scene_selectedScreenY") static int Scene_selectedScreenY; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("Scene_selectedX") public static int Scene_selectedX; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("Scene_selectedY") public static int Scene_selectedY; - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("viewportWalking") static boolean viewportWalking; - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("Scene_planesCount") static int Scene_planesCount; - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("Scene_planeOccluderCounts") static int[] Scene_planeOccluderCounts; - @ObfuscatedName("bb") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "[[Ljn;" + descriptor = "[[Lkw;" ) @Export("Scene_planeOccluders") static Occluder[][] Scene_planeOccluders; - @ObfuscatedName("br") + @ObfuscatedName("bh") @Export("Scene_currentOccludersCount") static int Scene_currentOccludersCount; - @ObfuscatedName("be") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "[Ljn;" + descriptor = "[Lkw;" ) @Export("Scene_currentOccluders") static Occluder[] Scene_currentOccluders; - @ObfuscatedName("bi") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("Scene_tilesDeque") static NodeDeque Scene_tilesDeque; - @ObfuscatedName("bz") - static final int[] field2098; + @ObfuscatedName("bs") + static final int[] field2279; @ObfuscatedName("bx") - static final int[] field2097; - @ObfuscatedName("bn") - static final int[] field2095; - @ObfuscatedName("bw") - static final int[] field2096; - @ObfuscatedName("bc") - static final int[] field2093; - @ObfuscatedName("bg") - static final int[] field2094; - @ObfuscatedName("cw") - static final int[] field2099; - @ObfuscatedName("cd") + static final int[] field2280; + @ObfuscatedName("bb") + static final int[] field2275; + @ObfuscatedName("bk") + static final int[] field2276; + @ObfuscatedName("br") + static final int[] field2278; + @ObfuscatedName("bq") + static final int[] field2277; + @ObfuscatedName("cf") + static final int[] field2281; + @ObfuscatedName("ct") @Export("visibilityMap") static boolean[][][][] visibilityMap; - @ObfuscatedName("ce") + @ObfuscatedName("cw") @Export("visibleTiles") static boolean[][] visibleTiles; @ObfuscatedName("cq") @Export("Scene_viewportXCenter") static int Scene_viewportXCenter; - @ObfuscatedName("cp") + @ObfuscatedName("cl") @Export("Scene_viewportYCenter") static int Scene_viewportYCenter; - @ObfuscatedName("cv") + @ObfuscatedName("cs") @Export("Scene_viewportXMin") static int Scene_viewportXMin; @ObfuscatedName("co") @Export("Scene_viewportYMin") static int Scene_viewportYMin; - @ObfuscatedName("cl") + @ObfuscatedName("cm") @Export("Scene_viewportXMax") static int Scene_viewportXMax; - @ObfuscatedName("cu") + @ObfuscatedName("cn") @Export("Scene_viewportYMax") static int Scene_viewportYMax; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("planes") int planes; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("xSize") int xSize; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("ySize") int ySize; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("tileHeights") int[][][] tileHeights; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "[[[Lii;" + descriptor = "[[[Lkv;" ) @Export("tiles") Tile[][][] tiles; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("minPlane") int minPlane; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("tempGameObjectsCount") int tempGameObjectsCount; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "[Ljy;" + descriptor = "[Lle;" ) @Export("tempGameObjects") GameObject[] tempGameObjects; - @ObfuscatedName("af") - int[][][] field2109; - @ObfuscatedName("cx") + @ObfuscatedName("az") + int[][][] field2290; + @ObfuscatedName("ce") @Export("tileShape2D") int[][] tileShape2D; - @ObfuscatedName("cr") + @ObfuscatedName("ci") @Export("tileRotation2D") int[][] tileRotation2D; @@ -206,13 +206,13 @@ public class Scene { Scene_currentOccludersCount = 0; Scene_currentOccluders = new Occluder[500]; Scene_tilesDeque = new NodeDeque(); - field2098 = new int[]{19, 55, 38, 155, 255, 110, 137, 205, 76}; - field2097 = new int[]{160, 192, 80, 96, 0, 144, 80, 48, 160}; - field2095 = new int[]{76, 8, 137, 4, 0, 1, 38, 2, 19}; - field2096 = new int[]{0, 0, 2, 0, 0, 2, 1, 1, 0}; - field2093 = new int[]{2, 0, 0, 2, 0, 0, 0, 4, 4}; - field2094 = new int[]{0, 4, 4, 8, 0, 0, 8, 0, 0}; - field2099 = new int[]{1, 1, 0, 0, 0, 8, 0, 0, 8}; + field2279 = new int[]{19, 55, 38, 155, 255, 110, 137, 205, 76}; + field2280 = new int[]{160, 192, 80, 96, 0, 144, 80, 48, 160}; + field2275 = new int[]{76, 8, 137, 4, 0, 1, 38, 2, 19}; + field2276 = new int[]{0, 0, 2, 0, 0, 2, 1, 1, 0}; + field2278 = new int[]{2, 0, 0, 2, 0, 0, 0, 4, 4}; + field2277 = new int[]{0, 4, 4, 8, 0, 0, 8, 0, 0}; + field2281 = new int[]{1, 1, 0, 0, 0, 8, 0, 0, 8}; visibilityMap = new boolean[8][32][51][51]; } @@ -226,12 +226,12 @@ public Scene(int var1, int var2, int var3, int[][][] var4) { this.xSize = var2; this.ySize = var3; this.tiles = new Tile[var1][var2][var3]; - this.field2109 = new int[var1][var2 + 1][var3 + 1]; + this.field2290 = new int[var1][var2 + 1][var3 + 1]; this.tileHeights = var4; this.clear(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("clear") public void clear() { int var1; @@ -264,7 +264,7 @@ public void clear() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("init") public void init(int var1) { this.minPlane = var1; @@ -279,7 +279,7 @@ public void init(int var1) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("setLinkBelow") public void setLinkBelow(int var1, int var2) { Tile var3 = this.tiles[0][var1][var2]; @@ -292,7 +292,7 @@ public void setLinkBelow(int var1, int var2) { for (int var6 = 0; var6 < var5.gameObjectsCount; ++var6) { GameObject var7 = var5.gameObjects[var6]; long var9 = var7.tag; - boolean var8 = class177.method918(var9) == 2; + boolean var8 = class158.method828(var9) == 2; if (var8 && var7.startX == var1 && var2 == var7.startY) { --var7.plane; } @@ -308,7 +308,7 @@ public void setLinkBelow(int var1, int var2) { this.tiles[3][var1][var2] = null; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("setTileMinPlane") public void setTileMinPlane(int var1, int var2, int var3, int var4) { Tile var5 = this.tiles[var1][var2][var3]; @@ -317,7 +317,7 @@ public void setTileMinPlane(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("addTile") public void addTile(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20) { SceneTilePaint var21; @@ -355,9 +355,9 @@ public void addTile(int var1, int var2, int var3, int var4, int var5, int var6, } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IIIILik;JI)V" + descriptor = "(IIIILkt;JI)V" ) @Export("newFloorDecoration") public void newFloorDecoration(int var1, int var2, int var3, int var4, Renderable var5, long var6, int var8) { @@ -377,9 +377,9 @@ public void newFloorDecoration(int var1, int var2, int var3, int var4, Renderabl } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(IIIILik;JLik;Lik;)V" + descriptor = "(IIIILkt;JLkt;Lkt;)V" ) @Export("newGroundItemPile") public void newGroundItemPile(int var1, int var2, int var3, int var4, Renderable var5, long var6, Renderable var8, Renderable var9) { @@ -413,9 +413,9 @@ public void newGroundItemPile(int var1, int var2, int var3, int var4, Renderable this.tiles[var1][var2][var3].itemLayer = var10; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(IIIILik;Lik;IIJI)V" + descriptor = "(IIIILkt;Lkt;IIJI)V" ) @Export("newBoundaryObject") public void newBoundaryObject(int var1, int var2, int var3, int var4, Renderable var5, Renderable var6, int var7, int var8, long var9, int var11) { @@ -441,9 +441,9 @@ public void newBoundaryObject(int var1, int var2, int var3, int var4, Renderable } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(IIIILik;Lik;IIIIJI)V" + descriptor = "(IIIILkt;Lkt;IIIIJI)V" ) @Export("newWallDecoration") public void newWallDecoration(int var1, int var2, int var3, int var4, Renderable var5, Renderable var6, int var7, int var8, int var9, int var10, long var11, int var13) { @@ -471,11 +471,11 @@ public void newWallDecoration(int var1, int var2, int var3, int var4, Renderable } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IIIIIILik;IJI)Z" + descriptor = "(IIIIIILkt;IJI)Z" ) - public boolean method1243(int var1, int var2, int var3, int var4, int var5, int var6, Renderable var7, int var8, long var9, int var11) { + public boolean method1467(int var1, int var2, int var3, int var4, int var5, int var6, Renderable var7, int var8, long var9, int var11) { if (var7 == null) { return true; } else { @@ -485,9 +485,9 @@ public boolean method1243(int var1, int var2, int var3, int var4, int var5, int } } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(IIIIILik;IJZ)Z" + descriptor = "(IIIIILkt;IJZ)Z" ) @Export("drawEntity") public boolean drawEntity(int var1, int var2, int var3, int var4, int var5, Renderable var6, int var7, long var8, boolean var10) { @@ -524,18 +524,18 @@ public boolean drawEntity(int var1, int var2, int var3, int var4, int var5, Rend } } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IIIIILik;IJIIII)Z" + descriptor = "(IIIIILkt;IJIIII)Z" ) @Export("addNullableObject") public boolean addNullableObject(int var1, int var2, int var3, int var4, int var5, Renderable var6, int var7, long var8, int var10, int var11, int var12, int var13) { return var6 == null ? true : this.newGameObject(var1, var10, var11, var12 - var10 + 1, var13 - var11 + 1, var2, var3, var4, var6, var7, true, var8, 0); } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(IIIIIIIILik;IZJI)Z" + descriptor = "(IIIIIIIILkt;IZJI)Z" ) @Export("newGameObject") boolean newGameObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, Renderable var9, int var10, boolean var11, long var12, int var14) { @@ -607,7 +607,7 @@ boolean newGameObject(int var1, int var2, int var3, int var4, int var5, int var6 return true; } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("clearTempGameObjects") public void clearTempGameObjects() { for (int var1 = 0; var1 < this.tempGameObjectsCount; ++var1) { @@ -619,9 +619,9 @@ public void clearTempGameObjects() { this.tempGameObjectsCount = 0; } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(Ljy;)V" + descriptor = "(Lle;)V" ) @Export("removeGameObject") void removeGameObject(GameObject var1) { @@ -655,8 +655,8 @@ void removeGameObject(GameObject var1) { } - @ObfuscatedName("ag") - public void method1249(int var1, int var2, int var3, int var4) { + @ObfuscatedName("aj") + public void method1473(int var1, int var2, int var3, int var4) { Tile var5 = this.tiles[var1][var2][var3]; if (var5 != null) { WallDecoration var6 = var5.wallDecoration; @@ -676,7 +676,7 @@ public void removeBoundaryObject(int var1, int var2, int var3) { } } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("removeWallDecoration") public void removeWallDecoration(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; @@ -685,7 +685,7 @@ public void removeWallDecoration(int var1, int var2, int var3) { } } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("removeGameObject") public void removeGameObject(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; @@ -693,7 +693,7 @@ public void removeGameObject(int var1, int var2, int var3) { for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { GameObject var6 = var4.gameObjects[var5]; long var8 = var6.tag; - boolean var7 = class177.method918(var8) == 2; + boolean var7 = class158.method828(var8) == 2; if (var7 && var2 == var6.startX && var3 == var6.startY) { this.removeGameObject(var6); return; @@ -703,7 +703,7 @@ public void removeGameObject(int var1, int var2, int var3) { } } - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("removeFloorDecoration") public void removeFloorDecoration(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; @@ -712,7 +712,7 @@ public void removeFloorDecoration(int var1, int var2, int var3) { } } - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("removeGroundItemPile") public void removeGroundItemPile(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; @@ -721,27 +721,27 @@ public void removeGroundItemPile(int var1, int var2, int var3) { } } - @ObfuscatedName("aj") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(III)Ljo;" + descriptor = "(III)Llv;" ) - public BoundaryObject method1255(int var1, int var2, int var3) { + public BoundaryObject method1479(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; return var4 == null ? null : var4.boundaryObject; } - @ObfuscatedName("av") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(III)Ljw;" + descriptor = "(III)Llj;" ) - public WallDecoration method1256(int var1, int var2, int var3) { + public WallDecoration method1480(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; return var4 == null ? null : var4.wallDecoration; } - @ObfuscatedName("aw") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(III)Ljy;" + descriptor = "(III)Lle;" ) @Export("getGameObject") public GameObject getGameObject(int var1, int var2, int var3) { @@ -752,7 +752,7 @@ public GameObject getGameObject(int var1, int var2, int var3) { for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { GameObject var6 = var4.gameObjects[var5]; long var8 = var6.tag; - boolean var7 = class177.method918(var8) == 2; + boolean var7 = class158.method828(var8) == 2; if (var7 && var2 == var6.startX && var3 == var6.startY) { return var6; } @@ -762,9 +762,9 @@ public GameObject getGameObject(int var1, int var2, int var3) { } } - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(III)Liy;" + descriptor = "(III)Lkm;" ) @Export("getFloorDecoration") public FloorDecoration getFloorDecoration(int var1, int var2, int var3) { @@ -772,21 +772,21 @@ public FloorDecoration getFloorDecoration(int var1, int var2, int var3) { return var4 != null && var4.floorDecoration != null ? var4.floorDecoration : null; } - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("getBoundaryObjectTag") public long getBoundaryObjectTag(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; return var4 != null && var4.boundaryObject != null ? var4.boundaryObject.tag : 0L; } - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("getWallDecorationTag") public long getWallDecorationTag(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; return var4 != null && var4.wallDecoration != null ? var4.wallDecoration.tag : 0L; } - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("getGameObjectTag") public long getGameObjectTag(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; @@ -796,7 +796,7 @@ public long getGameObjectTag(int var1, int var2, int var3) { for (int var5 = 0; var5 < var4.gameObjectsCount; ++var5) { GameObject var6 = var4.gameObjects[var5]; long var8 = var6.tag; - boolean var7 = class177.method918(var8) == 2; + boolean var7 = class158.method828(var8) == 2; if (var7 && var2 == var6.startX && var3 == var6.startY) { return var6.tag; } @@ -806,14 +806,14 @@ public long getGameObjectTag(int var1, int var2, int var3) { } } - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("getFloorDecorationTag") public long getFloorDecorationTag(int var1, int var2, int var3) { Tile var4 = this.tiles[var1][var2][var3]; return var4 != null && var4.floorDecoration != null ? var4.floorDecoration.tag : 0L; } - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("getObjectFlags") public int getObjectFlags(int var1, int var2, int var3, long var4) { Tile var6 = this.tiles[var1][var2][var3]; @@ -836,8 +836,8 @@ public int getObjectFlags(int var1, int var2, int var3, long var4) { } } - @ObfuscatedName("bd") - public void method1264(int var1, int var2, int var3) { + @ObfuscatedName("bf") + public void method1488(int var1, int var2, int var3) { for (int var4 = 0; var4 < this.planes; ++var4) { for (int var5 = 0; var5 < this.xSize; ++var5) { for (int var6 = 0; var6 < this.ySize; ++var6) { @@ -847,11 +847,11 @@ public void method1264(int var1, int var2, int var3) { ModelData var10; if (var8 != null && var8.renderable1 instanceof ModelData) { ModelData var9 = (ModelData)var8.renderable1; - this.method1266(var9, var4, var5, var6, 1, 1); + this.method1490(var9, var4, var5, var6, 1, 1); if (var8.renderable2 instanceof ModelData) { var10 = (ModelData)var8.renderable2; - this.method1266(var10, var4, var5, var6, 1, 1); - ModelData.method1175(var9, var10, 0, 0, 0, false); + this.method1490(var10, var4, var5, var6, 1, 1); + ModelData.method1405(var9, var10, 0, 0, 0, false); var8.renderable2 = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); } @@ -862,7 +862,7 @@ public void method1264(int var1, int var2, int var3) { GameObject var14 = var7.gameObjects[var12]; if (var14 != null && var14.renderable instanceof ModelData) { ModelData var11 = (ModelData)var14.renderable; - this.method1266(var11, var4, var5, var6, var14.endX - var14.startX + 1, var14.endY - var14.startY + 1); + this.method1490(var11, var4, var5, var6, var14.endX - var14.startX + 1, var14.endY - var14.startY + 1); var14.renderable = var11.toModel(var11.ambient, var11.contrast, var1, var2, var3); } } @@ -870,7 +870,7 @@ public void method1264(int var1, int var2, int var3) { FloorDecoration var13 = var7.floorDecoration; if (var13 != null && var13.renderable instanceof ModelData) { var10 = (ModelData)var13.renderable; - this.method1265(var10, var4, var5, var6); + this.method1489(var10, var4, var5, var6); var13.renderable = var10.toModel(var10.ambient, var10.contrast, var1, var2, var3); } } @@ -880,11 +880,11 @@ public void method1264(int var1, int var2, int var3) { } - @ObfuscatedName("by") + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "(Lic;III)V" + descriptor = "(Lkq;III)V" ) - void method1265(ModelData var1, int var2, int var3, int var4) { + void method1489(ModelData var1, int var2, int var3, int var4) { int var6 = var3 + 1; int var7 = var4 - 1; int var8 = var4 + 1; @@ -895,9 +895,9 @@ void method1265(ModelData var1, int var2, int var3, int var4) { if (var10 >= 0 && var10 < this.ySize && (var9 >= var6 || var10 >= var8)) { Tile var11 = this.tiles[var2][var9][var10]; if (var11 != null && var11.floorDecoration != null && var11.floorDecoration.renderable instanceof ModelData) { - int var12 = this.method1267(var2, var9, var10, var2, var3, var4); + int var12 = this.method1491(var2, var9, var10, var2, var3, var4); ModelData var13 = (ModelData)var11.floorDecoration.renderable; - ModelData.method1175(var1, var13, (var9 - var3) * 128, var12, (var10 - var4) * 128, true); + ModelData.method1405(var1, var13, (var9 - var3) * 128, var12, (var10 - var4) * 128, true); } } } @@ -906,11 +906,11 @@ void method1265(ModelData var1, int var2, int var3, int var4) { } - @ObfuscatedName("bs") + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "(Lic;IIIII)V" + descriptor = "(Lkq;IIIII)V" ) - void method1266(ModelData var1, int var2, int var3, int var4, int var5, int var6) { + void method1490(ModelData var1, int var2, int var3, int var4, int var5, int var6) { boolean var7 = true; int var8 = var3; int var9 = var3 + var5; @@ -925,18 +925,18 @@ void method1266(ModelData var1, int var2, int var3, int var4, int var5, int var6 if (var14 >= 0 && var14 < this.ySize && (!var7 || var13 >= var9 || var14 >= var11 || var14 < var4 && var3 != var13)) { Tile var15 = this.tiles[var12][var13][var14]; if (var15 != null) { - int var16 = this.method1267(var12, var13, var14, var2, var3, var4); + int var16 = this.method1491(var12, var13, var14, var2, var3, var4); BoundaryObject var17 = var15.boundaryObject; if (var17 != null) { ModelData var18; if (var17.renderable1 instanceof ModelData) { var18 = (ModelData)var17.renderable1; - ModelData.method1175(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); + ModelData.method1405(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); } if (var17.renderable2 instanceof ModelData) { var18 = (ModelData)var17.renderable2; - ModelData.method1175(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); + ModelData.method1405(var1, var18, (1 - var5) * 64 + (var13 - var3) * 128, var16, (var14 - var4) * 128 + (1 - var6) * 64, var7); } } @@ -946,7 +946,7 @@ void method1266(ModelData var1, int var2, int var3, int var4, int var5, int var6 ModelData var20 = (ModelData)var19.renderable; int var21 = var19.endX - var19.startX + 1; int var22 = var19.endY - var19.startY + 1; - ModelData.method1175(var1, var20, (var21 - var5) * 64 + (var19.startX - var3) * 128, var16, (var19.startY - var4) * 128 + (var22 - var6) * 64, var7); + ModelData.method1405(var1, var20, (var21 - var5) * 64 + (var19.startX - var3) * 128, var16, (var19.startY - var4) * 128 + (var22 - var6) * 64, var7); } } } @@ -963,16 +963,16 @@ void method1266(ModelData var1, int var2, int var3, int var4, int var5, int var6 } @ObfuscatedName("bm") - int method1267(int var1, int var2, int var3, int var4, int var5, int var6) { - return this.method1268(var1, var2, var3) - this.method1268(var4, var5, var6); + int method1491(int var1, int var2, int var3, int var4, int var5, int var6) { + return this.method1492(var1, var2, var3) - this.method1492(var4, var5, var6); } - @ObfuscatedName("bf") - int method1268(int var1, int var2, int var3) { + @ObfuscatedName("bp") + int method1492(int var1, int var2, int var3) { return (this.tileHeights[var1][var2 + 1][var3 + 1] + this.tileHeights[var1][var2][var3] + this.tileHeights[var1][var2][var3 + 1] + this.tileHeights[var1][var2 + 1][var3]) / 4; } - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("drawTileMinimap") public void drawTileMinimap(int[] var1, int var2, int var3, int var4, int var5, int var6) { Tile var7 = this.tiles[var4][var5][var6]; @@ -1037,7 +1037,7 @@ public void drawTileMinimap(int[] var1, int var2, int var3, int var4, int var5, } } - @ObfuscatedName("bp") + @ObfuscatedName("bo") @Export("menuOpen") public void menuOpen(int var1, int var2, int var3, boolean var4) { if (!shouldSendWalk() || var4) { @@ -1051,13 +1051,13 @@ public void menuOpen(int var1, int var2, int var3, boolean var4) { } } - @ObfuscatedName("bu") + @ObfuscatedName("bt") @Export("setViewportWalking") public void setViewportWalking() { viewportWalking = true; } - @ObfuscatedName("br") + @ObfuscatedName("bh") @Export("draw") public void draw(int var1, int var2, int var3, int var4, int var5, int var6) { if (var1 < 0) { @@ -1254,9 +1254,9 @@ public void draw(int var1, int var2, int var3, int var4, int var5, int var6) { checkClick = false; } - @ObfuscatedName("be") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "(Lii;Z)V" + descriptor = "(Lkv;Z)V" ) @Export("drawTile") void drawTile(Tile var1, boolean var2) { @@ -1350,10 +1350,10 @@ void drawTile(Tile var1, boolean var2) { if (var3.linkedBelowTile != null) { var9 = var3.linkedBelowTile; if (var9.paint != null) { - if (!this.method1283(0, var4, var5)) { + if (!this.method1507(0, var4, var5)) { this.drawTileUnderlay(var9.paint, 0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } - } else if (var9.model != null && !this.method1283(0, var4, var5)) { + } else if (var9.model != null && !this.method1507(0, var4, var5)) { this.drawTileOverlay(var9.model, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } @@ -1372,13 +1372,13 @@ void drawTile(Tile var1, boolean var2) { var20 = false; if (var3.paint != null) { - if (!this.method1283(var7, var4, var5)) { + if (!this.method1507(var7, var4, var5)) { var20 = true; if (var3.paint.neColor != 12345678 || checkClick && var6 <= Scene_selectedPlane) { this.drawTileUnderlay(var3.paint, var7, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } } - } else if (var3.model != null && !this.method1283(var7, var4, var5)) { + } else if (var3.model != null && !this.method1507(var7, var4, var5)) { var20 = true; this.drawTileOverlay(var3.model, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var4, var5); } @@ -1400,43 +1400,43 @@ void drawTile(Tile var1, boolean var2) { var21 += 6; } - var11 = field2098[var21]; - var3.field2022 = field2095[var21]; + var11 = field2279[var21]; + var3.field2194 = field2275[var21]; } if (var31 != null) { - if ((var31.orientationA & field2097[var21]) != 0) { + if ((var31.orientationA & field2280[var21]) != 0) { if (var31.orientationA == 16) { var3.drawGameObjectEdges = 3; - var3.field2014 = field2096[var21]; - var3.field2018 = 3 - var3.field2014; + var3.field2196 = field2276[var21]; + var3.field2203 = 3 - var3.field2196; } else if (var31.orientationA == 32) { var3.drawGameObjectEdges = 6; - var3.field2014 = field2093[var21]; - var3.field2018 = 6 - var3.field2014; + var3.field2196 = field2278[var21]; + var3.field2203 = 6 - var3.field2196; } else if (var31.orientationA == 64) { var3.drawGameObjectEdges = 12; - var3.field2014 = field2094[var21]; - var3.field2018 = 12 - var3.field2014; + var3.field2196 = field2277[var21]; + var3.field2203 = 12 - var3.field2196; } else { var3.drawGameObjectEdges = 9; - var3.field2014 = field2099[var21]; - var3.field2018 = 9 - var3.field2014; + var3.field2196 = field2281[var21]; + var3.field2203 = 9 - var3.field2196; } } else { var3.drawGameObjectEdges = 0; } - if ((var31.orientationA & var11) != 0 && !this.method1284(var7, var4, var5, var31.orientationA)) { + if ((var31.orientationA & var11) != 0 && !this.method1508(var7, var4, var5, var31.orientationA)) { var31.renderable1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x - Scene_cameraX, var31.z - Scene_cameraY, var31.y - Scene_cameraZ, var31.tag); } - if ((var31.orientationB & var11) != 0 && !this.method1284(var7, var4, var5, var31.orientationB)) { + if ((var31.orientationB & var11) != 0 && !this.method1508(var7, var4, var5, var31.orientationB)) { var31.renderable2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var31.x - Scene_cameraX, var31.z - Scene_cameraY, var31.y - Scene_cameraZ, var31.tag); } } - if (var13 != null && !this.method1285(var7, var4, var5, var13.renderable1.height)) { + if (var13 != null && !this.method1509(var7, var4, var5, var13.renderable1.height)) { if ((var13.orientation & var11) != 0) { var13.renderable1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var13.x - Scene_cameraX + var13.xOffset, var13.z - Scene_cameraY, var13.y - Scene_cameraZ + var13.yOffset, var13.tag); } else if (var13.orientation == 256) { @@ -1524,7 +1524,7 @@ void drawTile(Tile var1, boolean var2) { var20 = true; for (var21 = 0; var21 < var3.gameObjectsCount; ++var21) { - if (var3.gameObjects[var21].lastDrawn != Scene_drawnCount && (var3.gameObjectEdgeMasks[var21] & var3.drawGameObjectEdges) == var3.field2014) { + if (var3.gameObjects[var21].lastDrawn != Scene_drawnCount && (var3.gameObjectEdgeMasks[var21] & var3.drawGameObjectEdges) == var3.field2196) { var20 = false; break; } @@ -1532,7 +1532,7 @@ void drawTile(Tile var1, boolean var2) { if (var20) { var10 = var3.boundaryObject; - if (!this.method1284(var7, var4, var5, var10.orientationA)) { + if (!this.method1508(var7, var4, var5, var10.orientationA)) { var10.renderable1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var10.x - Scene_cameraX, var10.z - Scene_cameraY, var10.y - Scene_cameraZ, var10.tag); } @@ -1579,7 +1579,7 @@ void drawTile(Tile var1, boolean var2) { var16 += 2; } - if ((var16 & var36.drawGameObjectEdges) == var3.field2018) { + if ((var16 & var36.drawGameObjectEdges) == var3.field2203) { var3.drawGameObjects = true; continue label563; } @@ -1597,9 +1597,9 @@ void drawTile(Tile var1, boolean var2) { var15 = Scene_cameraYTile - var12.startY; var16 = var12.endY - Scene_cameraYTile; if (var16 > var15) { - var12.field2306 = var24 + var16; + var12.field2486 = var24 + var16; } else { - var12.field2306 = var24 + var15; + var12.field2486 = var24 + var15; } } } @@ -1611,10 +1611,10 @@ void drawTile(Tile var1, boolean var2) { for (var24 = 0; var24 < var21; ++var24) { GameObject var35 = gameObjects[var24]; if (var35.lastDrawn != Scene_drawnCount) { - if (var35.field2306 > var11) { - var11 = var35.field2306; + if (var35.field2486 > var11) { + var11 = var35.field2486; var25 = var24; - } else if (var11 == var35.field2306) { + } else if (var11 == var35.field2486) { var15 = var35.centerX - Scene_cameraX; var16 = var35.centerY - Scene_cameraZ; var17 = gameObjects[var25].centerX - Scene_cameraX; @@ -1632,7 +1632,7 @@ void drawTile(Tile var1, boolean var2) { GameObject var33 = gameObjects[var25]; var33.lastDrawn = Scene_drawnCount; - if (!this.method1286(var7, var33.startX, var33.endX, var33.startY, var33.endY, var33.renderable.height)) { + if (!this.method1510(var7, var33.startX, var33.endX, var33.startY, var33.endY, var33.renderable.height)) { var33.renderable.draw(var33.orientation, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var33.centerX - Scene_cameraX, var33.z - Scene_cameraY, var33.centerY - Scene_cameraZ, var33.tag); } @@ -1704,10 +1704,10 @@ void drawTile(Tile var1, boolean var2) { } } - if (var3.field2022 != 0) { + if (var3.field2194 != 0) { WallDecoration var29 = var3.wallDecoration; - if (var29 != null && !this.method1285(var7, var4, var5, var29.renderable1.height)) { - if ((var29.orientation & var3.field2022) != 0) { + if (var29 != null && !this.method1509(var7, var4, var5, var29.renderable1.height)) { + if ((var29.orientation & var3.field2194) != 0) { var29.renderable1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var29.x - Scene_cameraX + var29.xOffset, var29.z - Scene_cameraY, var29.y - Scene_cameraZ + var29.yOffset, var29.tag); } else if (var29.orientation == 256) { var11 = var29.x - Scene_cameraX; @@ -1736,11 +1736,11 @@ void drawTile(Tile var1, boolean var2) { BoundaryObject var27 = var3.boundaryObject; if (var27 != null) { - if ((var27.orientationB & var3.field2022) != 0 && !this.method1284(var7, var4, var5, var27.orientationB)) { + if ((var27.orientationB & var3.field2194) != 0 && !this.method1508(var7, var4, var5, var27.orientationB)) { var27.renderable2.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x - Scene_cameraX, var27.z - Scene_cameraY, var27.y - Scene_cameraZ, var27.tag); } - if ((var27.orientationA & var3.field2022) != 0 && !this.method1284(var7, var4, var5, var27.orientationA)) { + if ((var27.orientationA & var3.field2194) != 0 && !this.method1508(var7, var4, var5, var27.orientationA)) { var27.renderable1.draw(0, Scene_cameraPitchSine, Scene_cameraPitchCosine, Scene_cameraYawSine, Scene_cameraYawCosine, var27.x - Scene_cameraX, var27.z - Scene_cameraY, var27.y - Scene_cameraZ, var27.tag); } } @@ -1784,9 +1784,9 @@ void drawTile(Tile var1, boolean var2) { } } - @ObfuscatedName("bi") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(Ljg;IIIIIII)V" + descriptor = "(Lke;IIIIIII)V" ) @Export("drawTileUnderlay") void drawTileUnderlay(SceneTilePaint var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { @@ -1837,18 +1837,18 @@ void drawTileUnderlay(SceneTilePaint var1, int var2, int var3, int var4, int var int var27 = Rasterizer3D.getClipMidY() + var19 * Rasterizer3D.get3dZoom() / var16; int var28 = Rasterizer3D.getClipMidX() + var9 * Rasterizer3D.get3dZoom() / var15; int var29 = Rasterizer3D.getClipMidY() + var21 * Rasterizer3D.get3dZoom() / var15; - float var30 = AbstractWorldMapIcon.method1556(var12); - float var31 = AbstractWorldMapIcon.method1556(var11); - float var32 = AbstractWorldMapIcon.method1556(var16); - float var33 = AbstractWorldMapIcon.method1556(var15); - Rasterizer3D.clips.field2275 = 0; + float var30 = WorldMapAreaData.method1364(var12); + float var31 = WorldMapAreaData.method1364(var11); + float var32 = WorldMapAreaData.method1364(var16); + float var33 = WorldMapAreaData.method1364(var15); + Rasterizer3D.clips.field2452 = 0; int var34; int var35; if ((var26 - var28) * (var25 - var29) - (var27 - var29) * (var24 - var28) > 0) { - Rasterizer3D.clips.field2268 = false; - var34 = Rasterizer3D.method1197(); + Rasterizer3D.clips.field2446 = false; + var34 = Rasterizer3D.method1425(); if (var26 < 0 || var28 < 0 || var24 < 0 || var26 > var34 || var28 > var34 || var24 > var34) { - Rasterizer3D.clips.field2268 = true; + Rasterizer3D.clips.field2446 = true; } if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var27, var29, var25, var26, var28, var24)) { @@ -1858,25 +1858,25 @@ void drawTileUnderlay(SceneTilePaint var1, int var2, int var3, int var4, int var if (var1.texture == -1) { if (var1.neColor != 12345678) { - Rasterizer3D.method1204(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor); + Rasterizer3D.method1432(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor); } } else if (!Scene_isLowDetail) { if (var1.isFlat) { - Rasterizer3D.method1207(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); + Rasterizer3D.method1435(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); } else { - Rasterizer3D.method1207(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor, var13, var9, var14, var19, var21, var18, var16, var15, var11, var1.texture); + Rasterizer3D.method1435(var27, var29, var25, var26, var28, var24, var32, var33, var31, var1.neColor, var1.nwColor, var1.seColor, var13, var9, var14, var19, var21, var18, var16, var15, var11, var1.texture); } } else { var35 = Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); - Rasterizer3D.method1204(var27, var29, var25, var26, var28, var24, var32, var33, var31, method1280(var35, var1.neColor), method1280(var35, var1.nwColor), method1280(var35, var1.seColor)); + Rasterizer3D.method1432(var27, var29, var25, var26, var28, var24, var32, var33, var31, method1504(var35, var1.neColor), method1504(var35, var1.nwColor), method1504(var35, var1.seColor)); } } if ((var22 - var24) * (var29 - var25) - (var23 - var25) * (var28 - var24) > 0) { - Rasterizer3D.clips.field2268 = false; - var34 = Rasterizer3D.method1197(); + Rasterizer3D.clips.field2446 = false; + var34 = Rasterizer3D.method1425(); if (var22 < 0 || var24 < 0 || var28 < 0 || var22 > var34 || var24 > var34 || var28 > var34) { - Rasterizer3D.clips.field2268 = true; + Rasterizer3D.clips.field2446 = true; } if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var23, var25, var29, var22, var24, var28)) { @@ -1886,13 +1886,13 @@ void drawTileUnderlay(SceneTilePaint var1, int var2, int var3, int var4, int var if (var1.texture == -1) { if (var1.swColor != 12345678) { - Rasterizer3D.method1204(var23, var25, var29, var22, var24, var28, var30, var31, var33, var1.swColor, var1.seColor, var1.nwColor); + Rasterizer3D.method1432(var23, var25, var29, var22, var24, var28, var30, var31, var33, var1.swColor, var1.seColor, var1.nwColor); } } else if (!Scene_isLowDetail) { - Rasterizer3D.method1207(var23, var25, var29, var22, var24, var28, var30, var31, var33, var1.swColor, var1.seColor, var1.nwColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); + Rasterizer3D.method1435(var23, var25, var29, var22, var24, var28, var30, var31, var33, var1.swColor, var1.seColor, var1.nwColor, var10, var14, var9, var17, var18, var21, var12, var11, var15, var1.texture); } else { var35 = Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.texture); - Rasterizer3D.method1204(var23, var25, var29, var22, var24, var28, var30, var31, var33, method1280(var35, var1.swColor), method1280(var35, var1.seColor), method1280(var35, var1.nwColor)); + Rasterizer3D.method1432(var23, var25, var29, var22, var24, var28, var30, var31, var33, method1504(var35, var1.swColor), method1504(var35, var1.seColor), method1504(var35, var1.nwColor)); } } @@ -1902,9 +1902,9 @@ void drawTileUnderlay(SceneTilePaint var1, int var2, int var3, int var4, int var } } - @ObfuscatedName("bz") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(Ljv;IIIIII)V" + descriptor = "(Lkl;IIIIII)V" ) @Export("drawTileOverlay") void drawTileOverlay(SceneTileModel var1, int var2, int var3, int var4, int var5, int var6, int var7) { @@ -1929,37 +1929,37 @@ void drawTileOverlay(SceneTileModel var1, int var2, int var3, int var4, int var5 } if (var1.triangleTextureId != null) { - SceneTileModel.field2154[var9] = var10; - SceneTileModel.field2152[var9] = var13; - SceneTileModel.field2153[var9] = var12; + SceneTileModel.field2333[var9] = var10; + SceneTileModel.field2330[var9] = var13; + SceneTileModel.field2334[var9] = var12; } - SceneTileModel.field2150[var9] = Rasterizer3D.getClipMidX() + var10 * Rasterizer3D.get3dZoom() / var12; - SceneTileModel.field2151[var9] = Rasterizer3D.getClipMidY() + var13 * Rasterizer3D.get3dZoom() / var12; - SceneTileModel.field2149[var9] = AbstractWorldMapIcon.method1556(var12); + SceneTileModel.field2332[var9] = Rasterizer3D.getClipMidX() + var10 * Rasterizer3D.get3dZoom() / var12; + SceneTileModel.field2331[var9] = Rasterizer3D.getClipMidY() + var13 * Rasterizer3D.get3dZoom() / var12; + SceneTileModel.field2329[var9] = WorldMapAreaData.method1364(var12); } - Rasterizer3D.clips.field2275 = 0; + Rasterizer3D.clips.field2452 = 0; var8 = var1.faceX.length; for (var9 = 0; var9 < var8; ++var9) { var10 = var1.faceX[var9]; var11 = var1.faceY[var9]; var12 = var1.faceZ[var9]; - var13 = SceneTileModel.field2150[var10]; - int var14 = SceneTileModel.field2150[var11]; - int var15 = SceneTileModel.field2150[var12]; - int var16 = SceneTileModel.field2151[var10]; - int var17 = SceneTileModel.field2151[var11]; - int var18 = SceneTileModel.field2151[var12]; - float var19 = SceneTileModel.field2149[var10]; - float var20 = SceneTileModel.field2149[var11]; - float var21 = SceneTileModel.field2149[var12]; + var13 = SceneTileModel.field2332[var10]; + int var14 = SceneTileModel.field2332[var11]; + int var15 = SceneTileModel.field2332[var12]; + int var16 = SceneTileModel.field2331[var10]; + int var17 = SceneTileModel.field2331[var11]; + int var18 = SceneTileModel.field2331[var12]; + float var19 = SceneTileModel.field2329[var10]; + float var20 = SceneTileModel.field2329[var11]; + float var21 = SceneTileModel.field2329[var12]; if ((var13 - var14) * (var18 - var17) - (var16 - var17) * (var15 - var14) > 0) { - Rasterizer3D.clips.field2268 = false; - int var22 = Rasterizer3D.method1197(); + Rasterizer3D.clips.field2446 = false; + int var22 = Rasterizer3D.method1425(); if (var13 < 0 || var14 < 0 || var15 < 0 || var13 > var22 || var14 > var22 || var15 > var22) { - Rasterizer3D.clips.field2268 = true; + Rasterizer3D.clips.field2446 = true; } if (checkClick && containsBounds(Scene_selectedScreenX, Scene_selectedScreenY, var16, var17, var18, var13, var14, var15)) { @@ -1970,23 +1970,23 @@ void drawTileOverlay(SceneTileModel var1, int var2, int var3, int var4, int var5 if (var1.triangleTextureId != null && var1.triangleTextureId[var9] != -1) { if (!Scene_isLowDetail) { if (var1.isFlat) { - Rasterizer3D.method1207(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], SceneTileModel.field2154[0], SceneTileModel.field2154[1], SceneTileModel.field2154[3], SceneTileModel.field2152[0], SceneTileModel.field2152[1], SceneTileModel.field2152[3], SceneTileModel.field2153[0], SceneTileModel.field2153[1], SceneTileModel.field2153[3], var1.triangleTextureId[var9]); + Rasterizer3D.method1435(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], SceneTileModel.field2333[0], SceneTileModel.field2333[1], SceneTileModel.field2333[3], SceneTileModel.field2330[0], SceneTileModel.field2330[1], SceneTileModel.field2330[3], SceneTileModel.field2334[0], SceneTileModel.field2334[1], SceneTileModel.field2334[3], var1.triangleTextureId[var9]); } else { - Rasterizer3D.method1207(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], SceneTileModel.field2154[var10], SceneTileModel.field2154[var11], SceneTileModel.field2154[var12], SceneTileModel.field2152[var10], SceneTileModel.field2152[var11], SceneTileModel.field2152[var12], SceneTileModel.field2153[var10], SceneTileModel.field2153[var11], SceneTileModel.field2153[var12], var1.triangleTextureId[var9]); + Rasterizer3D.method1435(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9], SceneTileModel.field2333[var10], SceneTileModel.field2333[var11], SceneTileModel.field2333[var12], SceneTileModel.field2330[var10], SceneTileModel.field2330[var11], SceneTileModel.field2330[var12], SceneTileModel.field2334[var10], SceneTileModel.field2334[var11], SceneTileModel.field2334[var12], var1.triangleTextureId[var9]); } } else { int var23 = Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var1.triangleTextureId[var9]); - Rasterizer3D.method1204(var16, var17, var18, var13, var14, var15, var19, var20, var21, method1280(var23, var1.triangleColorA[var9]), method1280(var23, var1.triangleColorB[var9]), method1280(var23, var1.triangleColorC[var9])); + Rasterizer3D.method1432(var16, var17, var18, var13, var14, var15, var19, var20, var21, method1504(var23, var1.triangleColorA[var9]), method1504(var23, var1.triangleColorB[var9]), method1504(var23, var1.triangleColorC[var9])); } } else if (var1.triangleColorA[var9] != 12345678) { - Rasterizer3D.method1204(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9]); + Rasterizer3D.method1432(var16, var17, var18, var13, var14, var15, var19, var20, var21, var1.triangleColorA[var9], var1.triangleColorB[var9], var1.triangleColorC[var9]); } } } } - @ObfuscatedName("bw") + @ObfuscatedName("bk") @Export("occlude") void occlude() { int var1 = Scene_planeOccluderCounts[Scene_plane]; @@ -2025,20 +2025,20 @@ void occlude() { if (var13) { var9 = Scene_cameraX - var4.minX; if (var9 > 32) { - var4.field2137 = 1; + var4.field2318 = 1; } else { if (var9 >= -32) { continue; } - var4.field2137 = 2; + var4.field2318 = 2; var9 = -var9; } - var4.field2138 = (var4.minZ - Scene_cameraZ << 8) / var9; - var4.field2125 = (var4.maxZ - Scene_cameraZ << 8) / var9; - var4.field2130 = (var4.minY - Scene_cameraY << 8) / var9; - var4.field2133 = (var4.maxY - Scene_cameraY << 8) / var9; + var4.field2320 = (var4.minZ - Scene_cameraZ << 8) / var9; + var4.field2309 = (var4.maxZ - Scene_cameraZ << 8) / var9; + var4.field2308 = (var4.minY - Scene_cameraY << 8) / var9; + var4.field2311 = (var4.maxY - Scene_cameraY << 8) / var9; Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } @@ -2067,20 +2067,20 @@ void occlude() { if (var13) { var9 = Scene_cameraZ - var4.minZ; if (var9 > 32) { - var4.field2137 = 3; + var4.field2318 = 3; } else { if (var9 >= -32) { continue; } - var4.field2137 = 4; + var4.field2318 = 4; var9 = -var9; } - var4.field2132 = (var4.minX - Scene_cameraX << 8) / var9; - var4.field2134 = (var4.maxX - Scene_cameraX << 8) / var9; - var4.field2130 = (var4.minY - Scene_cameraY << 8) / var9; - var4.field2133 = (var4.maxY - Scene_cameraY << 8) / var9; + var4.field2319 = (var4.minX - Scene_cameraX << 8) / var9; + var4.field2315 = (var4.maxX - Scene_cameraX << 8) / var9; + var4.field2308 = (var4.minY - Scene_cameraY << 8) / var9; + var4.field2311 = (var4.maxY - Scene_cameraY << 8) / var9; Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } @@ -2121,11 +2121,11 @@ void occlude() { } if (var10) { - var4.field2137 = 5; - var4.field2132 = (var4.minX - Scene_cameraX << 8) / var5; - var4.field2134 = (var4.maxX - Scene_cameraX << 8) / var5; - var4.field2138 = (var4.minZ - Scene_cameraZ << 8) / var5; - var4.field2125 = (var4.maxZ - Scene_cameraZ << 8) / var5; + var4.field2318 = 5; + var4.field2319 = (var4.minX - Scene_cameraX << 8) / var5; + var4.field2315 = (var4.maxX - Scene_cameraX << 8) / var5; + var4.field2320 = (var4.minZ - Scene_cameraZ << 8) / var5; + var4.field2309 = (var4.maxZ - Scene_cameraZ << 8) / var5; Scene_currentOccluders[Scene_currentOccludersCount++] = var4; } } @@ -2135,9 +2135,9 @@ void occlude() { } - @ObfuscatedName("bc") - boolean method1283(int var1, int var2, int var3) { - int var4 = this.field2109[var1][var2][var3]; + @ObfuscatedName("br") + boolean method1507(int var1, int var2, int var3) { + int var4 = this.field2290[var1][var2][var3]; if (var4 == -Scene_drawnCount) { return false; } else if (var4 == Scene_drawnCount) { @@ -2145,19 +2145,19 @@ boolean method1283(int var1, int var2, int var3) { } else { int var5 = var2 << 7; int var6 = var3 << 7; - if (this.method1287(var5 + 1, this.tileHeights[var1][var2][var3], var6 + 1) && this.method1287(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3], var6 + 1) && this.method1287(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1], var6 + 128 - 1) && this.method1287(var5 + 1, this.tileHeights[var1][var2][var3 + 1], var6 + 128 - 1)) { - this.field2109[var1][var2][var3] = Scene_drawnCount; + if (this.method1511(var5 + 1, this.tileHeights[var1][var2][var3], var6 + 1) && this.method1511(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3], var6 + 1) && this.method1511(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1], var6 + 128 - 1) && this.method1511(var5 + 1, this.tileHeights[var1][var2][var3 + 1], var6 + 128 - 1)) { + this.field2290[var1][var2][var3] = Scene_drawnCount; return true; } else { - this.field2109[var1][var2][var3] = -Scene_drawnCount; + this.field2290[var1][var2][var3] = -Scene_drawnCount; return false; } } } - @ObfuscatedName("bg") - boolean method1284(int var1, int var2, int var3, int var4) { - if (!this.method1283(var1, var2, var3)) { + @ObfuscatedName("bq") + boolean method1508(int var1, int var2, int var3, int var4) { + if (!this.method1507(var1, var2, var3)) { return false; } else { int var5 = var2 << 7; @@ -2169,30 +2169,30 @@ boolean method1284(int var1, int var2, int var3, int var4) { if (var4 < 16) { if (var4 == 1) { if (var5 > Scene_cameraX) { - if (!this.method1287(var5, var7, var6)) { + if (!this.method1511(var5, var7, var6)) { return false; } - if (!this.method1287(var5, var7, var6 + 128)) { + if (!this.method1511(var5, var7, var6 + 128)) { return false; } } if (var1 > 0) { - if (!this.method1287(var5, var8, var6)) { + if (!this.method1511(var5, var8, var6)) { return false; } - if (!this.method1287(var5, var8, var6 + 128)) { + if (!this.method1511(var5, var8, var6 + 128)) { return false; } } - if (!this.method1287(var5, var9, var6)) { + if (!this.method1511(var5, var9, var6)) { return false; } - if (!this.method1287(var5, var9, var6 + 128)) { + if (!this.method1511(var5, var9, var6 + 128)) { return false; } @@ -2201,30 +2201,30 @@ boolean method1284(int var1, int var2, int var3, int var4) { if (var4 == 2) { if (var6 < Scene_cameraZ) { - if (!this.method1287(var5, var7, var6 + 128)) { + if (!this.method1511(var5, var7, var6 + 128)) { return false; } - if (!this.method1287(var5 + 128, var7, var6 + 128)) { + if (!this.method1511(var5 + 128, var7, var6 + 128)) { return false; } } if (var1 > 0) { - if (!this.method1287(var5, var8, var6 + 128)) { + if (!this.method1511(var5, var8, var6 + 128)) { return false; } - if (!this.method1287(var5 + 128, var8, var6 + 128)) { + if (!this.method1511(var5 + 128, var8, var6 + 128)) { return false; } } - if (!this.method1287(var5, var9, var6 + 128)) { + if (!this.method1511(var5, var9, var6 + 128)) { return false; } - if (!this.method1287(var5 + 128, var9, var6 + 128)) { + if (!this.method1511(var5 + 128, var9, var6 + 128)) { return false; } @@ -2233,30 +2233,30 @@ boolean method1284(int var1, int var2, int var3, int var4) { if (var4 == 4) { if (var5 < Scene_cameraX) { - if (!this.method1287(var5 + 128, var7, var6)) { + if (!this.method1511(var5 + 128, var7, var6)) { return false; } - if (!this.method1287(var5 + 128, var7, var6 + 128)) { + if (!this.method1511(var5 + 128, var7, var6 + 128)) { return false; } } if (var1 > 0) { - if (!this.method1287(var5 + 128, var8, var6)) { + if (!this.method1511(var5 + 128, var8, var6)) { return false; } - if (!this.method1287(var5 + 128, var8, var6 + 128)) { + if (!this.method1511(var5 + 128, var8, var6 + 128)) { return false; } } - if (!this.method1287(var5 + 128, var9, var6)) { + if (!this.method1511(var5 + 128, var9, var6)) { return false; } - if (!this.method1287(var5 + 128, var9, var6 + 128)) { + if (!this.method1511(var5 + 128, var9, var6 + 128)) { return false; } @@ -2265,30 +2265,30 @@ boolean method1284(int var1, int var2, int var3, int var4) { if (var4 == 8) { if (var6 > Scene_cameraZ) { - if (!this.method1287(var5, var7, var6)) { + if (!this.method1511(var5, var7, var6)) { return false; } - if (!this.method1287(var5 + 128, var7, var6)) { + if (!this.method1511(var5 + 128, var7, var6)) { return false; } } if (var1 > 0) { - if (!this.method1287(var5, var8, var6)) { + if (!this.method1511(var5, var8, var6)) { return false; } - if (!this.method1287(var5 + 128, var8, var6)) { + if (!this.method1511(var5 + 128, var8, var6)) { return false; } } - if (!this.method1287(var5, var9, var6)) { + if (!this.method1511(var5, var9, var6)) { return false; } - if (!this.method1287(var5 + 128, var9, var6)) { + if (!this.method1511(var5 + 128, var9, var6)) { return false; } @@ -2296,49 +2296,49 @@ boolean method1284(int var1, int var2, int var3, int var4) { } } - if (!this.method1287(var5 + 64, var10, var6 + 64)) { + if (!this.method1511(var5 + 64, var10, var6 + 64)) { return false; } else if (var4 == 16) { - return this.method1287(var5, var9, var6 + 128); + return this.method1511(var5, var9, var6 + 128); } else if (var4 == 32) { - return this.method1287(var5 + 128, var9, var6 + 128); + return this.method1511(var5 + 128, var9, var6 + 128); } else if (var4 == 64) { - return this.method1287(var5 + 128, var9, var6); + return this.method1511(var5 + 128, var9, var6); } else if (var4 == 128) { - return this.method1287(var5, var9, var6); + return this.method1511(var5, var9, var6); } else { return true; } } } - @ObfuscatedName("cw") - boolean method1285(int var1, int var2, int var3, int var4) { - if (!this.method1283(var1, var2, var3)) { + @ObfuscatedName("cf") + boolean method1509(int var1, int var2, int var3, int var4) { + if (!this.method1507(var1, var2, var3)) { return false; } else { int var5 = var2 << 7; int var6 = var3 << 7; - return this.method1287(var5 + 1, this.tileHeights[var1][var2][var3] - var4, var6 + 1) && this.method1287(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3] - var4, var6 + 1) && this.method1287(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1] - var4, var6 + 128 - 1) && this.method1287(var5 + 1, this.tileHeights[var1][var2][var3 + 1] - var4, var6 + 128 - 1); + return this.method1511(var5 + 1, this.tileHeights[var1][var2][var3] - var4, var6 + 1) && this.method1511(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3] - var4, var6 + 1) && this.method1511(var5 + 128 - 1, this.tileHeights[var1][var2 + 1][var3 + 1] - var4, var6 + 128 - 1) && this.method1511(var5 + 1, this.tileHeights[var1][var2][var3 + 1] - var4, var6 + 128 - 1); } } - @ObfuscatedName("cf") - boolean method1286(int var1, int var2, int var3, int var4, int var5, int var6) { + @ObfuscatedName("cg") + boolean method1510(int var1, int var2, int var3, int var4, int var5, int var6) { int var7; int var8; if (var3 == var2 && var5 == var4) { - if (!this.method1283(var1, var2, var4)) { + if (!this.method1507(var1, var2, var4)) { return false; } else { var7 = var2 << 7; var8 = var4 << 7; - return this.method1287(var7 + 1, this.tileHeights[var1][var2][var4] - var6, var8 + 1) && this.method1287(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4] - var6, var8 + 1) && this.method1287(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4 + 1] - var6, var8 + 128 - 1) && this.method1287(var7 + 1, this.tileHeights[var1][var2][var4 + 1] - var6, var8 + 128 - 1); + return this.method1511(var7 + 1, this.tileHeights[var1][var2][var4] - var6, var8 + 1) && this.method1511(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4] - var6, var8 + 1) && this.method1511(var7 + 128 - 1, this.tileHeights[var1][var2 + 1][var4 + 1] - var6, var8 + 128 - 1) && this.method1511(var7 + 1, this.tileHeights[var1][var2][var4 + 1] - var6, var8 + 128 - 1); } } else { for (var7 = var2; var7 <= var3; ++var7) { for (var8 = var4; var8 <= var5; ++var8) { - if (this.field2109[var1][var7][var8] == -Scene_drawnCount) { + if (this.field2290[var1][var7][var8] == -Scene_drawnCount) { return false; } } @@ -2347,17 +2347,17 @@ boolean method1286(int var1, int var2, int var3, int var4, int var5, int var6) { var7 = (var2 << 7) + 1; var8 = (var4 << 7) + 2; int var9 = this.tileHeights[var1][var2][var4] - var6; - if (!this.method1287(var7, var9, var8)) { + if (!this.method1511(var7, var9, var8)) { return false; } else { int var10 = (var3 << 7) - 1; - if (!this.method1287(var10, var9, var8)) { + if (!this.method1511(var10, var9, var8)) { return false; } else { int var11 = (var5 << 7) - 1; - if (!this.method1287(var7, var9, var11)) { + if (!this.method1511(var7, var9, var11)) { return false; - } else if (!this.method1287(var10, var9, var11)) { + } else if (!this.method1511(var10, var9, var11)) { return false; } else { return true; @@ -2367,8 +2367,8 @@ boolean method1286(int var1, int var2, int var3, int var4, int var5, int var6) { } } - @ObfuscatedName("cm") - boolean method1287(int var1, int var2, int var3) { + @ObfuscatedName("cv") + boolean method1511(int var1, int var2, int var3) { for (int var4 = 0; var4 < Scene_currentOccludersCount; ++var4) { Occluder var5 = Scene_currentOccluders[var4]; int var6; @@ -2376,57 +2376,57 @@ boolean method1287(int var1, int var2, int var3) { int var8; int var9; int var10; - if (var5.field2137 == 1) { + if (var5.field2318 == 1) { var6 = var5.minX - var1; if (var6 > 0) { - var7 = (var6 * var5.field2138 >> 8) + var5.minZ; - var8 = (var6 * var5.field2125 >> 8) + var5.maxZ; - var9 = (var6 * var5.field2130 >> 8) + var5.minY; - var10 = (var6 * var5.field2133 >> 8) + var5.maxY; + var7 = (var6 * var5.field2320 >> 8) + var5.minZ; + var8 = (var6 * var5.field2309 >> 8) + var5.maxZ; + var9 = (var6 * var5.field2308 >> 8) + var5.minY; + var10 = (var6 * var5.field2311 >> 8) + var5.maxY; if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field2137 == 2) { + } else if (var5.field2318 == 2) { var6 = var1 - var5.minX; if (var6 > 0) { - var7 = (var6 * var5.field2138 >> 8) + var5.minZ; - var8 = (var6 * var5.field2125 >> 8) + var5.maxZ; - var9 = (var6 * var5.field2130 >> 8) + var5.minY; - var10 = (var6 * var5.field2133 >> 8) + var5.maxY; + var7 = (var6 * var5.field2320 >> 8) + var5.minZ; + var8 = (var6 * var5.field2309 >> 8) + var5.maxZ; + var9 = (var6 * var5.field2308 >> 8) + var5.minY; + var10 = (var6 * var5.field2311 >> 8) + var5.maxY; if (var3 >= var7 && var3 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field2137 == 3) { + } else if (var5.field2318 == 3) { var6 = var5.minZ - var3; if (var6 > 0) { - var7 = (var6 * var5.field2132 >> 8) + var5.minX; - var8 = (var6 * var5.field2134 >> 8) + var5.maxX; - var9 = (var6 * var5.field2130 >> 8) + var5.minY; - var10 = (var6 * var5.field2133 >> 8) + var5.maxY; + var7 = (var6 * var5.field2319 >> 8) + var5.minX; + var8 = (var6 * var5.field2315 >> 8) + var5.maxX; + var9 = (var6 * var5.field2308 >> 8) + var5.minY; + var10 = (var6 * var5.field2311 >> 8) + var5.maxY; if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field2137 == 4) { + } else if (var5.field2318 == 4) { var6 = var3 - var5.minZ; if (var6 > 0) { - var7 = (var6 * var5.field2132 >> 8) + var5.minX; - var8 = (var6 * var5.field2134 >> 8) + var5.maxX; - var9 = (var6 * var5.field2130 >> 8) + var5.minY; - var10 = (var6 * var5.field2133 >> 8) + var5.maxY; + var7 = (var6 * var5.field2319 >> 8) + var5.minX; + var8 = (var6 * var5.field2315 >> 8) + var5.maxX; + var9 = (var6 * var5.field2308 >> 8) + var5.minY; + var10 = (var6 * var5.field2311 >> 8) + var5.maxY; if (var1 >= var7 && var1 <= var8 && var2 >= var9 && var2 <= var10) { return true; } } - } else if (var5.field2137 == 5) { + } else if (var5.field2318 == 5) { var6 = var2 - var5.minY; if (var6 > 0) { - var7 = (var6 * var5.field2132 >> 8) + var5.minX; - var8 = (var6 * var5.field2134 >> 8) + var5.maxX; - var9 = (var6 * var5.field2138 >> 8) + var5.minZ; - var10 = (var6 * var5.field2125 >> 8) + var5.maxZ; + var7 = (var6 * var5.field2319 >> 8) + var5.minX; + var8 = (var6 * var5.field2315 >> 8) + var5.maxX; + var9 = (var6 * var5.field2320 >> 8) + var5.minZ; + var10 = (var6 * var5.field2309 >> 8) + var5.maxZ; if (var1 >= var7 && var1 <= var8 && var3 >= var9 && var3 <= var10) { return true; } @@ -2437,7 +2437,7 @@ boolean method1287(int var1, int var2, int var3) { return false; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("Scene_addOccluder") public static void Scene_addOccluder(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { Occluder var8 = new Occluder(); @@ -2455,7 +2455,7 @@ public static void Scene_addOccluder(int var0, int var1, int var2, int var3, int Scene_planeOccluders[var0][Scene_planeOccluderCounts[var0]++] = var8; } - @ObfuscatedName("ba") + @ObfuscatedName("bj") @Export("Scene_buildVisiblityMap") public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int var3, int var4) { Scene_viewportXMin = 0; @@ -2488,7 +2488,7 @@ public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int v boolean var14 = false; for (int var15 = -var1; var15 <= var2; var15 += 128) { - if (method1271(var12, var0[var8] + var15, var13)) { + if (method1495(var12, var0[var8] + var15, var13)) { var14 = true; break; } @@ -2539,8 +2539,8 @@ public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int v } - @ObfuscatedName("bl") - static boolean method1271(int var0, int var1, int var2) { + @ObfuscatedName("bn") + static boolean method1495(int var0, int var1, int var2) { int var3 = var0 * Scene_cameraYawCosine + var2 * Scene_cameraYawSine >> 16; int var4 = var2 * Scene_cameraYawCosine - var0 * Scene_cameraYawSine >> 16; int var5 = var4 * Scene_cameraPitchCosine + Scene_cameraPitchSine * var1 >> 16; @@ -2554,20 +2554,20 @@ static boolean method1271(int var0, int var1, int var2) { } } - @ObfuscatedName("bo") + @ObfuscatedName("bu") @Export("shouldSendWalk") public static boolean shouldSendWalk() { return viewportWalking && Scene_selectedX != -1; } - @ObfuscatedName("bb") - public static void method1275() { + @ObfuscatedName("by") + public static void method1499() { Scene_selectedX = -1; viewportWalking = false; } @ObfuscatedName("bx") - static final int method1280(int var0, int var1) { + static final int method1504(int var0, int var1) { var1 = (var0 & 127) * var1 >> 7; if (var1 < 2) { var1 = 2; @@ -2578,7 +2578,7 @@ static final int method1280(int var0, int var1) { return (var0 & 65408) + var1; } - @ObfuscatedName("bn") + @ObfuscatedName("bb") @Export("containsBounds") static boolean containsBounds(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { if (var1 < var2 && var1 < var3 && var1 < var4) { diff --git a/osrs/src/main/java/SceneTileModel.java b/osrs/src/main/java/SceneTileModel.java index 402ecdafa..189210a7b 100644 --- a/osrs/src/main/java/SceneTileModel.java +++ b/osrs/src/main/java/SceneTileModel.java @@ -2,80 +2,80 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("jv") +@ObfuscatedName("kl") @Implements("SceneTileModel") public final class SceneTileModel { - @ObfuscatedName("ab") - static int[] field2150; - @ObfuscatedName("ag") - static int[] field2151; - @ObfuscatedName("am") - static float[] field2149; - @ObfuscatedName("ax") - static int[] field2154; - @ObfuscatedName("ah") - static int[] field2152; - @ObfuscatedName("as") - static int[] field2153; - @ObfuscatedName("ay") - static final int[][] field2156; + @ObfuscatedName("ak") + static int[] field2332; @ObfuscatedName("aj") - static final int[][] field2155; - @ObfuscatedName("au") + static int[] field2331; + @ObfuscatedName("am") + static float[] field2329; + @ObfuscatedName("aq") + static int[] field2333; + @ObfuscatedName("ai") + static int[] field2330; + @ObfuscatedName("aw") + static int[] field2334; + @ObfuscatedName("ae") + static final int[][] field2335; + @ObfuscatedName("an") + static final int[][] field2336; + @ObfuscatedName("at") @Export("vertexX") int[] vertexX; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("vertexY") int[] vertexY; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("vertexZ") int[] vertexZ; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("triangleColorA") int[] triangleColorA; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("triangleColorB") int[] triangleColorB; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("triangleColorC") int[] triangleColorC; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("faceX") int[] faceX; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("faceY") int[] faceY; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("faceZ") int[] faceZ; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("triangleTextureId") int[] triangleTextureId; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("isFlat") boolean isFlat; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("shape") int shape; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("rotation") int rotation; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("underlayRgb") int underlayRgb; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("overlayRgb") int overlayRgb; static { - field2150 = new int[6]; - field2151 = new int[6]; - field2149 = new float[6]; - field2154 = new int[6]; - field2152 = new int[6]; - field2153 = new int[6]; - field2156 = new int[][]{{1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 2, 6}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 13, 14}}; - field2155 = new int[][]{{0, 1, 2, 3, 0, 0, 1, 3}, {1, 1, 2, 3, 1, 0, 1, 3}, {0, 1, 2, 3, 1, 0, 1, 3}, {0, 0, 1, 2, 0, 0, 2, 4, 1, 0, 4, 3}, {0, 0, 1, 4, 0, 0, 4, 3, 1, 1, 2, 4}, {0, 0, 4, 3, 1, 0, 1, 2, 1, 0, 2, 4}, {0, 1, 2, 4, 1, 0, 1, 4, 1, 0, 4, 3}, {0, 4, 1, 2, 0, 4, 2, 5, 1, 0, 4, 5, 1, 0, 5, 3}, {0, 4, 1, 2, 0, 4, 2, 3, 0, 4, 3, 5, 1, 0, 4, 5}, {0, 0, 4, 5, 1, 4, 1, 2, 1, 4, 2, 3, 1, 4, 3, 5}, {0, 0, 1, 5, 0, 1, 4, 5, 0, 1, 2, 4, 1, 0, 5, 3, 1, 5, 4, 3, 1, 4, 2, 3}, {1, 0, 1, 5, 1, 1, 4, 5, 1, 1, 2, 4, 0, 0, 5, 3, 0, 5, 4, 3, 0, 4, 2, 3}, {1, 0, 5, 4, 1, 0, 1, 5, 0, 0, 4, 3, 0, 4, 5, 3, 0, 5, 2, 3, 0, 1, 2, 5}}; + field2332 = new int[6]; + field2331 = new int[6]; + field2329 = new float[6]; + field2333 = new int[6]; + field2330 = new int[6]; + field2334 = new int[6]; + field2335 = new int[][]{{1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 6}, {1, 3, 5, 7, 2, 6}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 2, 8}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 11, 12}, {1, 3, 5, 7, 13, 14}}; + field2336 = new int[][]{{0, 1, 2, 3, 0, 0, 1, 3}, {1, 1, 2, 3, 1, 0, 1, 3}, {0, 1, 2, 3, 1, 0, 1, 3}, {0, 0, 1, 2, 0, 0, 2, 4, 1, 0, 4, 3}, {0, 0, 1, 4, 0, 0, 4, 3, 1, 1, 2, 4}, {0, 0, 4, 3, 1, 0, 1, 2, 1, 0, 2, 4}, {0, 1, 2, 4, 1, 0, 1, 4, 1, 0, 4, 3}, {0, 4, 1, 2, 0, 4, 2, 5, 1, 0, 4, 5, 1, 0, 5, 3}, {0, 4, 1, 2, 0, 4, 2, 3, 0, 4, 3, 5, 1, 0, 4, 5}, {0, 0, 4, 5, 1, 4, 1, 2, 1, 4, 2, 3, 1, 4, 3, 5}, {0, 0, 1, 5, 0, 1, 4, 5, 0, 1, 2, 4, 1, 0, 5, 3, 1, 5, 4, 3, 1, 4, 2, 3}, {1, 0, 1, 5, 1, 1, 4, 5, 1, 1, 2, 4, 0, 0, 5, 3, 0, 5, 4, 3, 0, 4, 2, 3}, {1, 0, 5, 4, 1, 0, 1, 5, 0, 0, 4, 3, 0, 4, 5, 3, 0, 5, 2, 3, 0, 1, 2, 5}}; } SceneTileModel(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19) { @@ -92,7 +92,7 @@ public final class SceneTileModel { int var21 = var20 / 2; int var22 = var20 / 4; int var23 = var20 * 3 / 4; - int[] var24 = field2156[var1]; + int[] var24 = field2335[var1]; int var25 = var24.length; this.vertexX = new int[var25]; this.vertexY = new int[var25]; @@ -227,7 +227,7 @@ public final class SceneTileModel { var27[var30] = var36; } - int[] var38 = field2155[var1]; + int[] var38 = field2336[var1]; var31 = var38.length / 4; this.faceX = new int[var31]; this.faceY = new int[var31]; diff --git a/osrs/src/main/java/SceneTilePaint.java b/osrs/src/main/java/SceneTilePaint.java index 62d7f0745..4ee8dcc97 100644 --- a/osrs/src/main/java/SceneTilePaint.java +++ b/osrs/src/main/java/SceneTilePaint.java @@ -2,41 +2,29 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import net.runelite.rs.Reflection; -import java.io.*; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - -@ObfuscatedName("jg") +@ObfuscatedName("ke") @Implements("SceneTilePaint") public final class SceneTilePaint { - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - @Export("scriptActiveWidget") - static Widget scriptActiveWidget; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("swColor") int swColor; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("seColor") int seColor; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("neColor") int neColor; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("nwColor") int nwColor; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("texture") int texture; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("isFlat") boolean isFlat; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("rgb") int rgb; @@ -53,128 +41,11 @@ public final class SceneTilePaint { @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(ILru;Lnk;B)V", - garbageValue = "7" - ) - static void method1350(int var0, ArchiveDisk var1, Archive var2) { - ArchiveDiskAction var3 = new ArchiveDiskAction(); - var3.type = 1; - var3.key = (long)var0; - var3.archiveDisk = var1; - var3.archive = var2; - synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { - ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.addFirst(var3); - } - - UserComparator8.method671(); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lto;I)V", - garbageValue = "1309449245" - ) - @Export("performReflectionCheck") - public static void performReflectionCheck(PacketBuffer var0) { - ReflectionCheck var1 = (ReflectionCheck)class36.reflectionChecks.last(); - if (var1 != null) { - int var2 = var0.offset; - var0.writeInt(var1.id); - - for (int var3 = 0; var3 < var1.size; ++var3) { - if (var1.creationErrors[var3] != 0) { - var0.writeByte(var1.creationErrors[var3]); - } else { - try { - int var4 = var1.operations[var3]; - Field var5; - int var6; - if (var4 == 0) { - var5 = var1.fields[var3]; - var6 = Reflection.getInt(var5, (Object)null); - var0.writeByte(0); - var0.writeInt(var6); - } else if (var4 == 1) { - var5 = var1.fields[var3]; - Reflection.setInt(var5, (Object)null, var1.intReplaceValues[var3]); - var0.writeByte(0); - } else if (var4 == 2) { - var5 = var1.fields[var3]; - var6 = var5.getModifiers(); - var0.writeByte(0); - var0.writeInt(var6); - } - - Method var25; - if (var4 != 3) { - if (var4 == 4) { - var25 = var1.methods[var3]; - var6 = var25.getModifiers(); - var0.writeByte(0); - var0.writeInt(var6); - } - } else { - var25 = var1.methods[var3]; - byte[][] var10 = var1.arguments[var3]; - Object[] var7 = new Object[var10.length]; - - for (int var8 = 0; var8 < var10.length; ++var8) { - ObjectInputStream var9 = new ObjectInputStream(new ByteArrayInputStream(var10[var8])); - var7[var8] = var9.readObject(); - } - - Object var11 = Reflection.invoke(var25, (Object)null, var7); - if (var11 == null) { - var0.writeByte(0); - } else if (var11 instanceof Number) { - var0.writeByte(1); - var0.writeLong(((Number)var11).longValue()); - } else if (var11 instanceof String) { - var0.writeByte(2); - var0.writeStringCp1252NullTerminated((String)var11); - } else { - var0.writeByte(4); - } - } - } catch (ClassNotFoundException var13) { - var0.writeByte(-10); - } catch (InvalidClassException var14) { - var0.writeByte(-11); - } catch (StreamCorruptedException var15) { - var0.writeByte(-12); - } catch (OptionalDataException var16) { - var0.writeByte(-13); - } catch (IllegalAccessException var17) { - var0.writeByte(-14); - } catch (IllegalArgumentException var18) { - var0.writeByte(-15); - } catch (InvocationTargetException var19) { - var0.writeByte(-16); - } catch (SecurityException var20) { - var0.writeByte(-17); - } catch (IOException var21) { - var0.writeByte(-18); - } catch (NullPointerException var22) { - var0.writeByte(-19); - } catch (Exception var23) { - var0.writeByte(-20); - } catch (Throwable var24) { - var0.writeByte(-21); - } - } - } - - var0.writeCrc(var2); - var1.remove(); - } - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(CI)C", - garbageValue = "1859445774" + descriptor = "(IZB)Ljava/lang/String;", + garbageValue = "12" ) - static char method1352(char var0) { - return var0 != 181 && var0 != 402 ? Character.toTitleCase(var0) : var0; + @Export("intToString") + public static String intToString(int var0, boolean var1) { + return var1 && var0 >= 0 ? Players.method619(var0, 10, var1) : Integer.toString(var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/Script.java b/osrs/src/main/java/Script.java index 1a592e071..213e6171a 100644 --- a/osrs/src/main/java/Script.java +++ b/osrs/src/main/java/Script.java @@ -3,44 +3,41 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; -import java.util.Iterator; - -@ObfuscatedName("dh") +@ObfuscatedName("dt") @Implements("Script") public class Script extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("Script_cached") static EvictingDualNodeHashTable Script_cached; - @ObfuscatedName("ae") - String field817; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + String instructions; + @ObfuscatedName("ar") @Export("opcodes") int[] opcodes; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("intOperands") int[] intOperands; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("stringOperands") String[] stringOperands; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("localIntCount") int localIntCount; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("localStringCount") int localStringCount; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("intArgumentCount") int intArgumentCount; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("stringArgumentCount") int stringArgumentCount; - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "[Lsf;" + descriptor = "[Ltz;" ) @Export("switches") IterableNodeHashTable[] switches; @@ -52,59 +49,74 @@ public class Script extends DualNode { Script() { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(II)[Lsf;", - garbageValue = "-723912201" + descriptor = "(II)[Ltz;", + garbageValue = "714760120" ) @Export("newIterableNodeHashTable") IterableNodeHashTable[] newIterableNodeHashTable(int var1) { return new IterableNodeHashTable[var1]; } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "0" + descriptor = "(Ljava/lang/CharSequence;IZI)Z", + garbageValue = "1142322479" ) - public static void method445(int var0, int var1) { - class270.method1537(var0, var1, 0, 0); - class305.field2773.clear(); - class305.field2771.clear(); - if (class305.musicSongs.isEmpty() || var0 == 0 && var1 == 0) { - ByteArrayPool.method2148(); - } else { - class305.field2771.add(new DelayFadeTask((SongTask)null, class305.musicPlayerStatus)); - class305.field2771.add(new FadeOutTask((SongTask)null, 0, false, class305.field2766)); - ArrayList var3 = new ArrayList(); - Iterator var4 = class305.musicSongs.iterator(); + static boolean method447(CharSequence var0, int var1, boolean var2) { + if (var1 >= 2 && var1 <= 36) { + boolean var3 = false; + boolean var4 = false; + int var5 = 0; + int var6 = var0.length(); - while (var4.hasNext()) { - MusicSong var5 = (MusicSong)var4.next(); - var3.add(var5); - } + for (int var7 = 0; var7 < var6; ++var7) { + char var8 = var0.charAt(var7); + if (var7 == 0) { + if (var8 == '-') { + var3 = true; + continue; + } - class305.field2771.add(new class401((SongTask)null, var3)); - } + if (var8 == '+') { + continue; + } + } - } + int var10; + if (var8 >= '0' && var8 <= '9') { + var10 = var8 - '0'; + } else if (var8 >= 'A' && var8 <= 'Z') { + var10 = var8 - '7'; + } else { + if (var8 < 'a' || var8 > 'z') { + return false; + } - @ObfuscatedName("hf") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-69260226" - ) - @Export("forceDisconnect") - static final void forceDisconnect(int var0) { - ArchiveDisk.logOut(); - switch(var0) { - case 1: - class463.method2343(); - break; - case 2: - PcmPlayer.method212(24); - class318.setLoginResponseString("The game servers are currently being updated.", "Please wait a few minutes and try again.", ""); - } + var10 = var8 - 'W'; + } + if (var10 >= var1) { + return false; + } + + if (var3) { + var10 = -var10; + } + + int var9 = var5 * var1 + var10; + if (var9 / var1 != var5) { + return false; + } + + var5 = var9; + var4 = true; + } + + return var4; + } else { + throw new IllegalArgumentException("" + var1); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/ScriptEvent.java b/osrs/src/main/java/ScriptEvent.java index 7b64b9fd6..a911ab737 100644 --- a/osrs/src/main/java/ScriptEvent.java +++ b/osrs/src/main/java/ScriptEvent.java @@ -3,47 +3,47 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dy") +@ObfuscatedName("do") @Implements("ScriptEvent") public class ScriptEvent extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("args") Object[] args; - @ObfuscatedName("ae") - boolean field861; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + boolean field866; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("widget") Widget widget; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("mouseX") int mouseX; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("mouseY") int mouseY; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("opIndex") int opIndex; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("dragTarget") Widget dragTarget; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("keyTyped") int keyTyped; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("keyPressed") int keyPressed; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("targetName") String targetName; - @ObfuscatedName("ad") - int field864; - @ObfuscatedName("aq") + @ObfuscatedName("ap") + int field871; + @ObfuscatedName("av") @Export("type") int type; @@ -51,32 +51,41 @@ public ScriptEvent() { this.type = 76; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "([Ljava/lang/Object;I)V", - garbageValue = "-1709292397" + garbageValue = "-1214962197" ) @Export("setArgs") public void setArgs(Object[] var1) { this.args = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "693110805" + garbageValue = "334360487" ) @Export("setType") public void setType(int var1) { this.type = var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lmi;B)V", - garbageValue = "-48" + descriptor = "(Lnn;B)V", + garbageValue = "102" ) - public void method479(Widget var1) { + public void method467(Widget var1) { this.widget = var1; } + + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "0" + ) + static int method468(int var0, Script var1, boolean var2) { + return 2; + } } \ No newline at end of file diff --git a/osrs/src/main/java/ScriptFrame.java b/osrs/src/main/java/ScriptFrame.java index ee67dabe6..55ab6ba4d 100644 --- a/osrs/src/main/java/ScriptFrame.java +++ b/osrs/src/main/java/ScriptFrame.java @@ -3,28 +3,82 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cv") +@ObfuscatedName("cs") @Implements("ScriptFrame") public class ScriptFrame { - @ObfuscatedName("ay") - static String field345; - @ObfuscatedName("au") + @ObfuscatedName("lk") + @Export("oculusOrbFocalPointY") + static int oculusOrbFocalPointY; + @ObfuscatedName("uh") + @Export("cameraLookAtX") + static int cameraLookAtX; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ldh;" + descriptor = "Ldt;" ) @Export("script") Script script; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("pc") int pc; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("intLocals") int[] intLocals; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("stringLocals") String[] stringLocals; ScriptFrame() { this.pc = -1; } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1468769999" + ) + static final void method343(String var0) { + PacketBufferNode var1 = class113.getPacketBufferNode(ClientPacket.FIREND_ADDUSER, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); + } + + @ObfuscatedName("kr") + @ObfuscatedSignature( + descriptor = "(Ldp;I)V", + garbageValue = "128237974" + ) + static final void method344(PendingSpawn var0) { + long var1 = 0L; + int var3 = -1; + int var4 = 0; + int var5 = 0; + if (var0.type == 0) { + var1 = class36.scene.getBoundaryObjectTag(var0.plane, var0.x, var0.y); + } + + if (var0.type == 1) { + var1 = class36.scene.getWallDecorationTag(var0.plane, var0.x, var0.y); + } + + if (var0.type == 2) { + var1 = class36.scene.getGameObjectTag(var0.plane, var0.x, var0.y); + } + + if (var0.type == 3) { + var1 = class36.scene.getFloorDecorationTag(var0.plane, var0.x, var0.y); + } + + if (0L != var1) { + int var6 = class36.scene.getObjectFlags(var0.plane, var0.x, var0.y, var1); + var3 = class232.Entity_unpackID(var1); + var4 = var6 & 31; + var5 = var6 >> 6 & 3; + } + + var0.objectId = var3; + var0.field951 = var4; + var0.field961 = var5; + } } \ No newline at end of file diff --git a/osrs/src/main/java/SecureRandomCallable.java b/osrs/src/main/java/SecureRandomCallable.java index 9da41a22f..f5474fbfc 100644 --- a/osrs/src/main/java/SecureRandomCallable.java +++ b/osrs/src/main/java/SecureRandomCallable.java @@ -3,27 +3,17 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.File; -import java.io.IOException; -import java.io.RandomAccessFile; -import java.security.SecureRandom; +import java.util.Iterator; import java.util.concurrent.Callable; -@ObfuscatedName("dn") +@ObfuscatedName("dx") @Implements("SecureRandomCallable") public class SecureRandomCallable implements Callable { - @ObfuscatedName("ds") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "Lol;" ) - @Export("worldSelectStars") - static IndexedSprite[] worldSelectStars; - @ObfuscatedName("iq") - @ObfuscatedSignature( - descriptor = "Lpi;" - ) - @Export("fontPlain12") - static Font fontPlain12; + public static AbstractArchive field851; SecureRandomCallable() { } @@ -31,234 +21,406 @@ public class SecureRandomCallable implements Callable { @Export("call") @ObfuscatedName("call") public Object call() { - SecureRandom var2 = new SecureRandom(); - var2.nextInt(); - return var2; + return HealthBarDefinition.method911(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;III)V", - garbageValue = "297617664" + descriptor = "(B)[Lun;", + garbageValue = "0" ) - public static void method462(String var0, String var1, String var2, int var3, int var4) throws IOException { - if (var1 != null && !var1.isEmpty()) { - var0 = var0 + "-" + var1; - } - - JagexCache.field1461 = var4; - JagexCache.cacheGamebuild = var3; + static PrivateChatMode[] method456() { + return new PrivateChatMode[]{PrivateChatMode.field4304, PrivateChatMode.field4305, PrivateChatMode.field4303}; + } - try { - ScriptFrame.field345 = System.getProperty("os.name"); - } catch (Exception var31) { - ScriptFrame.field345 = "Unknown"; - } + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2131515534" + ) + static void method457() { + Iterator var0 = class316.musicSongs.iterator(); + + while (true) { + MusicSong var1; + do { + if (!var0.hasNext()) { + class316.musicSongs.clear(); + return; + } - Messages.field1146 = ScriptFrame.field345.toLowerCase(); - class36.userHomeDirectory = null; + var1 = (MusicSong)var0.next(); + } while(var1 == null); - try { - class36.userHomeDirectory = System.getProperty("jagex.userhome"); - } catch (Exception var30) { - } + var1.midiPcmStream.clear(); + var1.midiPcmStream.method1657(); + var1.midiPcmStream.setPcmStreamVolume(0); + var1.midiPcmStream.field2830 = 0; + int var2 = var1.musicTrackGroupId; + int var3 = var1.musicTrackFileId; + Iterator var4 = class316.field2793.iterator(); - if (class36.userHomeDirectory == null) { - try { - class36.userHomeDirectory = System.getProperty("user.home"); - } catch (Exception var29) { + while (var4.hasNext()) { + class322 var5 = (class322)var4.next(); + var5.vmethod1644(var2, var3); } } + } - if (class36.userHomeDirectory != null) { - class36.userHomeDirectory = class36.userHomeDirectory + "/"; - } - - try { - if (Messages.field1146.startsWith("win")) { - if (class36.userHomeDirectory == null) { - class36.userHomeDirectory = System.getenv("USERPROFILE"); + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-732445486" + ) + static int method458(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 6600) { + var3 = ItemLayer.Client_plane; + int var9 = (class229.localPlayer.x >> 7) + NewShit.baseX; + int var5 = (class229.localPlayer.y >> 7) + class101.baseY; + WorldMapArchiveLoader.getWorldMap().method2408(var3, var9, var5, true); + return 1; + } else { + WorldMapArea var11; + if (var0 == 6601) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + String var16 = ""; + var11 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var11 != null) { + var16 = var11.getExternalName(); } - } else if (class36.userHomeDirectory == null) { - class36.userHomeDirectory = System.getenv("HOME"); - } - if (class36.userHomeDirectory != null) { - class36.userHomeDirectory = class36.userHomeDirectory + "/"; - } - } catch (Exception var28) { - } - - if (class36.userHomeDirectory == null) { - class36.userHomeDirectory = "~/"; - } - - DelayFadeTask.field3712 = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", class36.userHomeDirectory, "/tmp/", ""}; - JagexCache.field1464 = new String[]{".jagex_cache_" + JagexCache.cacheGamebuild, ".file_store_" + JagexCache.cacheGamebuild}; - int var19 = 0; - - label233: - while (var19 < 4) { - String var7 = var19 == 0 ? "" : "" + var19; - JagexCache.field1463 = new File(class36.userHomeDirectory, "jagex_cl_" + var0 + "_" + var2 + var7 + ".dat"); - String var8 = null; - String var9 = null; - boolean var10 = false; - int var15; - File var36; - if (JagexCache.field1463.exists()) { - try { - AccessFile var11 = new AccessFile(JagexCache.field1463, "rw", 10000L); - - Buffer var12; - int var13; - for (var12 = new Buffer((int)var11.length()); var12.offset < var12.array.length; var12.offset += var13) { - var13 = var11.read(var12.array, var12.offset, var12.array.length - var12.offset); - if (var13 == -1) { - throw new IOException(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var16; + return 1; + } else if (var0 == 6602) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + WorldMapArchiveLoader.getWorldMap().setCurrentMapAreaId(var3); + return 1; + } else if (var0 == 6603) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getZoomLevel(); + return 1; + } else if (var0 == 6604) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + WorldMapArchiveLoader.getWorldMap().setZoomPercentage(var3); + return 1; + } else if (var0 == 6605) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().isCacheLoaded() ? 1 : 0; + return 1; + } else { + Coord var15; + if (var0 == 6606) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + WorldMapArchiveLoader.getWorldMap().setWorldMapPositionTarget(var15.x, var15.y); + return 1; + } else if (var0 == 6607) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + WorldMapArchiveLoader.getWorldMap().setWorldMapPositionTargetInstant(var15.x, var15.y); + return 1; + } else if (var0 == 6608) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + WorldMapArchiveLoader.getWorldMap().jumpToSourceCoord(var15.plane, var15.x, var15.y); + return 1; + } else if (var0 == 6609) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + WorldMapArchiveLoader.getWorldMap().jumpToSourceCoordInstant(var15.plane, var15.x, var15.y); + return 1; + } else if (var0 == 6610) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getDisplayX(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getDisplayY(); + return 1; + } else { + WorldMapArea var13; + if (var0 == 6611) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getOrigin().packed(); } - } - - var12.offset = 0; - var13 = var12.readUnsignedByte(); - if (var13 < 1 || var13 > 3) { - throw new IOException("" + var13); - } - int var14 = 0; - if (var13 > 1) { - var14 = var12.readUnsignedByte(); - } - - if (var13 <= 2) { - var8 = var12.readStringCp1252NullCircumfixed(); - if (var14 == 1) { - var9 = var12.readStringCp1252NullCircumfixed(); - } - } else { - var8 = var12.method2556(); - if (var14 == 1) { - var9 = var12.method2556(); + return 1; + } else if (var0 == 6612) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (var13.getRegionHighX() - var13.getRegionLowX() + 1) * 64; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (var13.getRegionHighY() - var13.getRegionLowY() + 1) * 64; } - } - - var11.close(); - } catch (IOException var33) { - var33.printStackTrace(); - } - if (var8 != null) { - var36 = new File(var8); - if (!var36.exists()) { - var8 = null; - } - } - - if (var8 != null) { - var36 = new File(var8, "test.dat"); - - boolean var38; - try { - RandomAccessFile var20 = new RandomAccessFile(var36, "rw"); - var15 = var20.read(); - var20.seek(0L); - var20.write(var15); - var20.seek(0L); - var20.close(); - var36.delete(); - var38 = true; - } catch (Exception var27) { - var38 = false; - } - - if (!var38) { - var8 = null; - } - } - } - - if (var8 == null && var19 == 0) { - label208: - for (int var21 = 0; var21 < JagexCache.field1464.length; ++var21) { - for (int var22 = 0; var22 < DelayFadeTask.field3712.length; ++var22) { - File var23 = new File(DelayFadeTask.field3712[var22] + JagexCache.field1464[var21] + File.separatorChar + var0 + File.separatorChar); - if (var23.exists() && Message.method340(new File(var23, "test.dat"), true)) { - var8 = var23.toString(); - var10 = true; - break label208; + return 1; + } else if (var0 == 6613) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getRegionLowX() * 64; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getRegionLowY() * 64; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getRegionHighX() * 64 + 64 - 1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getRegionHighY() * 64 + 64 - 1; } - } - } - } - - if (var8 == null) { - var8 = class36.userHomeDirectory + File.separatorChar + "jagexcache" + var7 + File.separatorChar + var0 + File.separatorChar + var2 + File.separatorChar; - var10 = true; - } - - if (var9 != null) { - File var35 = new File(var9); - var36 = new File(var8); - try { - File[] var40 = var35.listFiles(); - File[] var39 = var40; - - for (var15 = 0; var15 < var39.length; ++var15) { - File var16 = var39[var15]; - File var17 = new File(var36, var16.getName()); - boolean var18 = var16.renameTo(var17); - if (!var18) { - throw new IOException(); + return 1; + } else if (var0 == 6614) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getZoom(); } - } - } catch (Exception var32) { - var32.printStackTrace(); - } - - var10 = true; - } - - if (var10) { - class165.method868(new File(var8), (File)null); - } - File var6 = new File(var8); - JagexCache.cacheDir = var6; - if (!JagexCache.cacheDir.exists()) { - JagexCache.cacheDir.mkdirs(); - } - - File[] var34 = JagexCache.cacheDir.listFiles(); - if (var34 != null) { - File[] var37 = var34; + return 1; + } else if (var0 == 6615) { + var15 = WorldMapArchiveLoader.getWorldMap().getDisplayCoord(); + if (var15 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var15.x; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var15.y; + } - for (int var24 = 0; var24 < var37.length; ++var24) { - File var25 = var37[var24]; - if (!Message.method340(var25, false)) { - ++var19; - continue label233; + return 1; + } else if (var0 == 6616) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().currentMapAreaId(); + return 1; + } else if (var0 == 6617) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + var13 = WorldMapArchiveLoader.getWorldMap().getCurrentMapArea(); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + return 1; + } else { + int[] var14 = var13.position(var15.plane, var15.x, var15.y); + if (var14 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var14[0]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var14[1]; + } + + return 1; + } + } else { + Coord var7; + if (var0 == 6618) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + var13 = WorldMapArchiveLoader.getWorldMap().getCurrentMapArea(); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + return 1; + } else { + var7 = var13.coord(var15.x, var15.y); + if (var7 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7.packed(); + } + + return 1; + } + } else { + Coord var12; + if (var0 == 6619) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var12 = new Coord(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + FriendsChat.method2224(var3, var12, false); + return 1; + } else if (var0 == 6620) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var12 = new Coord(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + FriendsChat.method2224(var3, var12, true); + return 1; + } else if (var0 == 6621) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var12 = new Coord(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + var11 = WorldMapArchiveLoader.getWorldMap().getMapArea(var3); + if (var11 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var11.containsCoord(var12.plane, var12.x, var12.y) ? 1 : 0; + return 1; + } + } else if (var0 == 6622) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getDisplayWith(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getDisplayHeight(); + return 1; + } else if (var0 == 6623) { + var15 = new Coord(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + var13 = WorldMapArchiveLoader.getWorldMap().mapAreaAtCoord(var15.plane, var15.x, var15.y); + if (var13 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var13.getId(); + } + + return 1; + } else if (var0 == 6624) { + WorldMapArchiveLoader.getWorldMap().setMaxFlashCount(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return 1; + } else if (var0 == 6625) { + WorldMapArchiveLoader.getWorldMap().resetMaxFlashCount(); + return 1; + } else if (var0 == 6626) { + WorldMapArchiveLoader.getWorldMap().setCyclesPerFlash(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return 1; + } else if (var0 == 6627) { + WorldMapArchiveLoader.getWorldMap().resetCyclesPerFlash(); + return 1; + } else { + boolean var10; + if (var0 == 6628) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + WorldMapArchiveLoader.getWorldMap().setPerpetualFlash(var10); + return 1; + } else if (var0 == 6629) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + WorldMapArchiveLoader.getWorldMap().flashElement(var3); + return 1; + } else if (var0 == 6630) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + WorldMapArchiveLoader.getWorldMap().flashCategory(var3); + return 1; + } else if (var0 == 6631) { + WorldMapArchiveLoader.getWorldMap().stopCurrentFlashes(); + return 1; + } else if (var0 == 6632) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + WorldMapArchiveLoader.getWorldMap().setElementsDisabled(var10); + return 1; + } else { + boolean var4; + if (var0 == 6633) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1] == 1; + WorldMapArchiveLoader.getWorldMap().disableElement(var3, var4); + return 1; + } else if (var0 == 6634) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1] == 1; + WorldMapArchiveLoader.getWorldMap().setCategoryDisabled(var3, var4); + return 1; + } else if (var0 == 6635) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().getElementsDisabled() ? 1 : 0; + return 1; + } else if (var0 == 6636) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().isElementDisabled(var3) ? 1 : 0; + return 1; + } else if (var0 == 6637) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapArchiveLoader.getWorldMap().isCategoryDisabled(var3) ? 1 : 0; + return 1; + } else if (var0 == 6638) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var12 = new Coord(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + var7 = WorldMapArchiveLoader.getWorldMap().method2452(var3, var12); + if (var7 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7.packed(); + } + + return 1; + } else { + AbstractWorldMapIcon var8; + if (var0 == 6639) { + var8 = WorldMapArchiveLoader.getWorldMap().iconStart(); + if (var8 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.getElement(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.coord2.packed(); + } + + return 1; + } else if (var0 == 6640) { + var8 = WorldMapArchiveLoader.getWorldMap().iconNext(); + if (var8 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.getElement(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.coord2.packed(); + } + + return 1; + } else { + WorldMapElement var6; + if (var0 == 6693) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class141.WorldMapElement_get(var3); + if (var6.name == null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var6.name; + } + + return 1; + } else if (var0 == 6694) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class141.WorldMapElement_get(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.textSize; + return 1; + } else if (var0 == 6695) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class141.WorldMapElement_get(var3); + if (var6 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.category; + } + + return 1; + } else if (var0 == 6696) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var6 = class141.WorldMapElement_get(var3); + if (var6 == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6.sprite1; + } + + return 1; + } else if (var0 == 6697) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class133.worldMapEvent.mapElement; + return 1; + } else if (var0 == 6698) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class133.worldMapEvent.coord1.packed(); + return 1; + } else if (var0 == 6699) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class133.worldMapEvent.coord2.packed(); + return 1; + } else { + return 2; + } + } + } + } + } + } } } } - break; - } - - File var5 = JagexCache.cacheDir; - FileSystem.FileSystem_cacheDir = var5; - if (!FileSystem.FileSystem_cacheDir.exists()) { - throw new RuntimeException(""); - } else { - FileSystem.FileSystem_hasPermissions = true; - FileSystem.method913(); - JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(class299.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); - JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(class299.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); - WallDecoration.JagexCache_idxFiles = new BufferedFile[JagexCache.field1461]; - - for (int var26 = 0; var26 < JagexCache.field1461; ++var26) { - WallDecoration.JagexCache_idxFiles[var26] = new BufferedFile(new AccessFile(class299.getFile("main_file_cache.idx" + var26), "rw", 1048576L), 6000, 0); - } - } } } \ No newline at end of file diff --git a/osrs/src/main/java/SecureRandomFuture.java b/osrs/src/main/java/SecureRandomFuture.java index f68f3e275..a72b828d6 100644 --- a/osrs/src/main/java/SecureRandomFuture.java +++ b/osrs/src/main/java/SecureRandomFuture.java @@ -8,13 +8,16 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; -@ObfuscatedName("cc") +@ObfuscatedName("cd") @Implements("SecureRandomFuture") public class SecureRandomFuture { - @ObfuscatedName("au") + @ObfuscatedName("kh") + @Export("cameraY") + static int cameraY; + @ObfuscatedName("at") @Export("executor") ExecutorService executor; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("future") Future future; @@ -23,10 +26,10 @@ public class SecureRandomFuture { this.future = this.executor.submit(new SecureRandomCallable()); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-2045980697" + garbageValue = "-55292502" ) @Export("shutdown") void shutdown() { @@ -34,20 +37,20 @@ void shutdown() { this.executor = null; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1770543009" + descriptor = "(B)Z", + garbageValue = "20" ) @Export("isDone") boolean isDone() { return this.future.isDone(); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)Ljava/security/SecureRandom;", - garbageValue = "-53" + descriptor = "(I)Ljava/security/SecureRandom;", + garbageValue = "694331827" ) @Export("get") SecureRandom get() { @@ -59,230 +62,4 @@ SecureRandom get() { return var3; } } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-1197212946" - ) - public static void method435(AbstractArchive var0) { - FloorUnderlayDefinition.FloorUnderlayDefinition_archive = var0; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Throwable;Ljava/lang/String;)Luy;" - ) - public static RunException method438(Throwable var0, String var1) { - RunException var2; - if (var0 instanceof RunException) { - var2 = (RunException)var0; - var2.field4291 = var2.field4291 + ' ' + var1; - } else { - var2 = new RunException(var0, var1); - } - - return var2; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(ILdh;ZS)I", - garbageValue = "-1442" - ) - static int method441(int var0, Script var1, boolean var2) { - int var3 = -1; - Widget var4; - if (var0 >= 2000) { - var0 -= 1000; - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var4 = class92.getWidget(var3); - } else { - var4 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - } - - if (var0 == 1000) { - SoundCache.Interpreter_intStackSize -= 4; - var4.rawX = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4.rawY = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var4.xAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var4.yAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - class218.invalidateWidget(var4); - class219.client.alignWidget(var4); - if (var3 != -1 && var4.type == 0) { - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var3 >> 16], var4, false); - } - - return 1; - } else if (var0 == 1001) { - SoundCache.Interpreter_intStackSize -= 4; - var4.rawWidth = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4.rawHeight = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var4.widthAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var4.heightAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - class218.invalidateWidget(var4); - class219.client.alignWidget(var4); - if (var3 != -1 && var4.type == 0) { - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var3 >> 16], var4, false); - } - - return 1; - } else if (var0 == 1003) { - boolean var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (var5 != var4.isHidden) { - var4.isHidden = var5; - class218.invalidateWidget(var4); - } - - return 1; - } else if (var0 == 1005) { - var4.noClickThrough = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 1006) { - var4.noScrollThrough = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else { - return 2; - } - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Ltm;IIIIIII)V", - garbageValue = "-1694412552" - ) - @Export("loadTerrain") - static final void loadTerrain(Buffer var0, int var1, int var2, int var3, int var4, int var5, int var6) { - int var7; - if (class30.method116(var1, var2, var3)) { - Tiles.Tiles_renderFlags[var1][var2][var3] = 0; - - while (true) { - var7 = var0.readUnsignedShort(); - if (var7 == 0) { - if (var1 == 0) { - int[] var8 = Tiles.Tiles_heights[0][var2]; - int var11 = var4 + 932731; - int var12 = var5 + 556238; - int var13 = class141.method765(var11 + 45365, 91923 + var12, 4) - 128 + (class141.method765(10294 + var11, var12 + 37821, 2) - 128 >> 1) + (class141.method765(var11, var12, 1) - 128 >> 2); - var13 = (int)((double)var13 * 0.3D) + 35; - if (var13 < 10) { - var13 = 10; - } else if (var13 > 60) { - var13 = 60; - } - - var8[var3] = -var13 * 8; - } else { - Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - 240; - } - break; - } - - if (var7 == 1) { - int var14 = var0.readUnsignedByte(); - if (var14 == 1) { - var14 = 0; - } - - if (var1 == 0) { - Tiles.Tiles_heights[0][var2][var3] = -var14 * 8; - } else { - Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - var14 * 8; - } - break; - } - - if (var7 <= 49) { - class227.Tiles_overlays[var1][var2][var3] = (short)var0.readShort(); - class172.Tiles_shapes[var1][var2][var3] = (byte)((var7 - 2) / 4); - ModelData0.field2282[var1][var2][var3] = (byte)(var7 - 2 + var6 & 3); - } else if (var7 <= 81) { - Tiles.Tiles_renderFlags[var1][var2][var3] = (byte)(var7 - 49); - } else { - Tiles.Tiles_underlays[var1][var2][var3] = (short)(var7 - 81); - } - } - } else { - while (true) { - var7 = var0.readUnsignedShort(); - if (var7 == 0) { - break; - } - - if (var7 == 1) { - var0.readUnsignedByte(); - break; - } - - if (var7 <= 49) { - var0.readShort(); - } - } - } - - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-760322108" - ) - public static int method439(int var0, int var1) { - int var2 = var0 >>> 31; - return (var0 + var2) / var1 - var2; - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-52" - ) - static int method442(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - if (var0 == 1800) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = HealthBarDefinition.Widget_unpackTargetMask(NewShit.getWidgetFlags(var3)); - return 1; - } else if (var0 != 1801) { - if (var0 == 1802) { - if (var3.dataText == null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.dataText; - } - - return 1; - } else { - return 2; - } - } else { - int var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - --var4; - if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.actions[var4]; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } - } - - @ObfuscatedName("jm") - @ObfuscatedSignature( - descriptor = "(Ldr;II)V", - garbageValue = "1880526861" - ) - static final void method443(Actor var0, int var1) { - HealthBar.worldToScreen(var0.x, var0.y, var1); - } - - @ObfuscatedName("ou") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1763932419" - ) - static void method444(boolean var0) { - Client.leftClickOpensMenu = var0; - } } \ No newline at end of file diff --git a/osrs/src/main/java/SequenceDefinition.java b/osrs/src/main/java/SequenceDefinition.java index 9a73ef756..de0a28286 100644 --- a/osrs/src/main/java/SequenceDefinition.java +++ b/osrs/src/main/java/SequenceDefinition.java @@ -6,91 +6,103 @@ import java.util.HashMap; import java.util.Map; -@ObfuscatedName("ib") +@ObfuscatedName("hx") @Implements("SequenceDefinition") public class SequenceDefinition extends DualNode { + @ObfuscatedName("at") + static boolean field1789; @ObfuscatedName("au") - static boolean field1836; - @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Lol;" + ) + @Export("SequenceDefinition_animationsArchive") + public static AbstractArchive SequenceDefinition_animationsArchive; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("SequenceDefinition_skeletonsArchive") + public static AbstractArchive SequenceDefinition_skeletonsArchive; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Llk;" ) @Export("SequenceDefinition_cached") public static EvictingDualNodeHashTable SequenceDefinition_cached; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("SequenceDefinition_cachedFrames") public static EvictingDualNodeHashTable SequenceDefinition_cachedFrames; - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("SequenceDefinition_cachedModel") public static EvictingDualNodeHashTable SequenceDefinition_cachedModel; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("SequenceDefinition_cachedModelId") public int SequenceDefinition_cachedModelId; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("animMayaFrameSounds") public Map animMayaFrameSounds; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("animMayaStart") int animMayaStart; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("animMayaEnd") int animMayaEnd; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("frameIds") public int[] frameIds; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("chatFrameIds") int[] chatFrameIds; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("frameLengths") public int[] frameLengths; @ObfuscatedName("am") @Export("soundEffects") public int[] soundEffects; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("frameCount") public int frameCount; - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("mergedBoneGroups") int[] mergedBoneGroups; - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("animMayaMasks") boolean[] animMayaMasks; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("stretches") public boolean stretches; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("forcedPriority") public int forcedPriority; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("shield") public int shield; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("weapon") public int weapon; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("iterations") public int iterations; - @ObfuscatedName("bh") - public boolean field1843; - @ObfuscatedName("bj") + @ObfuscatedName("be") + public boolean field1796; + @ObfuscatedName("bd") @Export("precedenceAnimating") public int precedenceAnimating; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("priority") public int priority; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("replyMode") public int replyMode; static { - field1836 = false; + field1789 = false; SequenceDefinition_cached = new EvictingDualNodeHashTable(64); SequenceDefinition_cachedFrames = new EvictingDualNodeHashTable(100); SequenceDefinition_cachedModel = new EvictingDualNodeHashTable(100); @@ -106,16 +118,16 @@ public class SequenceDefinition extends DualNode { this.shield = -1; this.weapon = -1; this.iterations = 99; - this.field1843 = false; + this.field1796 = false; this.precedenceAnimating = -1; this.priority = -1; this.replyMode = 2; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1228314075" + descriptor = "(Luj;I)V", + garbageValue = "724172563" ) @Export("decode") void decode(Buffer var1) { @@ -129,10 +141,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "-998572107" + descriptor = "(Luj;II)V", + garbageValue = "-848433725" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -176,7 +188,7 @@ void decodeNext(Buffer var1, int var2) { this.weapon = var1.readUnsignedShort(); } else if (var2 == 8) { this.iterations = var1.readUnsignedByte(); - this.field1843 = true; + this.field1796 = true; } else if (var2 == 9) { this.precedenceAnimating = var1.readUnsignedByte(); } else if (var2 == 10) { @@ -231,10 +243,10 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("ac") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "968421208" + descriptor = "(B)V", + garbageValue = "-73" ) @Export("postDecode") void postDecode() { @@ -256,17 +268,17 @@ void postDecode() { } - @ObfuscatedName("ai") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljr;II)Ljr;", - garbageValue = "-2024092599" + descriptor = "(Lka;IB)Lka;", + garbageValue = "61" ) @Export("transformActorModel") public Model transformActorModel(Model var1, int var2) { Model var4; if (!this.isCachedModelIdSet()) { var2 = this.frameIds[var2]; - Frames var5 = MidiPcmStream.getFrames(var2 >> 16); + Frames var5 = class102.getFrames(var2 >> 16); var2 &= 65535; if (var5 == null) { return var1.toSharedSequenceModel(true); @@ -276,28 +288,28 @@ public Model transformActorModel(Model var1, int var2) { return var4; } } else { - class137 var3 = Tile.method1184(this.SequenceDefinition_cachedModelId); + class139 var3 = class151.method788(this.SequenceDefinition_cachedModelId); if (var3 == null) { return var1.toSharedSequenceModel(true); } else { - var4 = var1.toSharedSequenceModel(!var3.method748()); - var4.method1325(var3, var2); + var4 = var1.toSharedSequenceModel(!var3.method743()); + var4.method1543(var3, var2); return var4; } } } - @ObfuscatedName("az") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ljr;IIB)Ljr;", - garbageValue = "93" + descriptor = "(Lka;III)Lka;", + garbageValue = "-1872374798" ) @Export("transformObjectModel") Model transformObjectModel(Model var1, int var2, int var3) { Model var5; if (!this.isCachedModelIdSet()) { var2 = this.frameIds[var2]; - Frames var6 = MidiPcmStream.getFrames(var2 >> 16); + Frames var6 = class102.getFrames(var2 >> 16); var2 &= 65535; if (var6 == null) { return var1.toSharedSequenceModel(true); @@ -324,11 +336,11 @@ Model transformObjectModel(Model var1, int var2, int var3) { return var5; } } else { - class137 var4 = Tile.method1184(this.SequenceDefinition_cachedModelId); + class139 var4 = class151.method788(this.SequenceDefinition_cachedModelId); if (var4 == null) { return var1.toSharedSequenceModel(true); } else { - var5 = var1.toSharedSequenceModel(!var4.method748()); + var5 = var1.toSharedSequenceModel(!var4.method743()); var3 &= 3; if (var3 == 1) { var5.rotateY270Ccw(); @@ -338,7 +350,7 @@ Model transformObjectModel(Model var1, int var2, int var3) { var5.rotateY90Ccw(); } - var5.method1325(var4, var2); + var5.method1543(var4, var2); if (var3 == 1) { var5.rotateY90Ccw(); } else if (var3 == 2) { @@ -352,17 +364,17 @@ Model transformObjectModel(Model var1, int var2, int var3) { } } - @ObfuscatedName("ap") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Ljr;II)Ljr;", - garbageValue = "1650193615" + descriptor = "(Lka;IB)Lka;", + garbageValue = "55" ) @Export("transformSpotAnimationModel") Model transformSpotAnimationModel(Model var1, int var2) { Model var4; if (!this.isCachedModelIdSet()) { var2 = this.frameIds[var2]; - Frames var5 = MidiPcmStream.getFrames(var2 >> 16); + Frames var5 = class102.getFrames(var2 >> 16); var2 &= 65535; if (var5 == null) { return var1.toSharedSpotAnimationModel(true); @@ -372,48 +384,48 @@ Model transformSpotAnimationModel(Model var1, int var2) { return var4; } } else { - class137 var3 = Tile.method1184(this.SequenceDefinition_cachedModelId); + class139 var3 = class151.method788(this.SequenceDefinition_cachedModelId); if (var3 == null) { return var1.toSharedSpotAnimationModel(true); } else { - var4 = var1.toSharedSpotAnimationModel(!var3.method748()); - var4.method1325(var3, var2); + var4 = var1.toSharedSpotAnimationModel(!var3.method743()); + var4.method1543(var3, var2); return var4; } } } - @ObfuscatedName("aa") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljr;ILib;II)Ljr;", - garbageValue = "-587997563" + descriptor = "(Lka;ILhx;IB)Lka;", + garbageValue = "-75" ) @Export("applyTransformations") public Model applyTransformations(Model var1, int var2, SequenceDefinition var3, int var4) { - if (field1836 && !this.isCachedModelIdSet() && !var3.isCachedModelIdSet()) { - return this.method1082(var1, var2, var3, var4); + if (field1789 && !this.isCachedModelIdSet() && !var3.isCachedModelIdSet()) { + return this.method1049(var1, var2, var3, var4); } else { Model var5 = var1.toSharedSequenceModel(false); boolean var6 = false; Frames var7 = null; Skeleton var8 = null; - class137 var9; + class139 var9; if (this.isCachedModelIdSet()) { - var9 = this.method1086(); + var9 = this.method1053(); if (var9 == null) { return var5; } if (var3.isCachedModelIdSet() && this.animMayaMasks == null) { - var5.method1325(var9, var2); + var5.method1543(var9, var2); return var5; } - var8 = var9.field1305; - var5.method1329(var8, var9, var2, this.animMayaMasks, false, !var3.isCachedModelIdSet()); + var8 = var9.field1317; + var5.method1547(var8, var9, var2, this.animMayaMasks, false, !var3.isCachedModelIdSet()); } else { var2 = this.frameIds[var2]; - var7 = MidiPcmStream.getFrames(var2 >> 16); + var7 = class102.getFrames(var2 >> 16); var2 &= 65535; if (var7 == null) { return var3.transformActorModel(var1, var4); @@ -431,34 +443,34 @@ public Model applyTransformations(Model var1, int var2, SequenceDefinition var3, var6 = var3.isCachedModelIdSet(); if (!var6) { - var5.method1330(var7, var2, this.mergedBoneGroups, false); + var5.method1548(var7, var2, this.mergedBoneGroups, false); } } if (var3.isCachedModelIdSet()) { - var9 = var3.method1086(); + var9 = var3.method1053(); if (var9 == null) { return var5; } if (var8 == null) { - var8 = var9.field1305; + var8 = var9.field1317; } - var5.method1329(var8, var9, var4, this.animMayaMasks, true, true); + var5.method1547(var8, var9, var4, this.animMayaMasks, true, true); } else { var4 = var3.frameIds[var4]; - Frames var10 = MidiPcmStream.getFrames(var4 >> 16); + Frames var10 = class102.getFrames(var4 >> 16); var4 &= 65535; if (var10 == null) { return this.transformActorModel(var1, var2); } - var5.method1330(var10, var4, this.mergedBoneGroups, true); + var5.method1548(var10, var4, this.mergedBoneGroups, true); } if (var6 && var7 != null) { - var5.method1330(var7, var2, this.mergedBoneGroups, false); + var5.method1548(var7, var2, this.mergedBoneGroups, false); } var5.resetBounds(); @@ -466,20 +478,20 @@ public Model applyTransformations(Model var1, int var2, SequenceDefinition var3, } } - @ObfuscatedName("af") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Ljr;ILib;II)Ljr;", - garbageValue = "-2128259101" + descriptor = "(Lka;ILhx;II)Lka;", + garbageValue = "1735546670" ) - Model method1082(Model var1, int var2, SequenceDefinition var3, int var4) { + Model method1049(Model var1, int var2, SequenceDefinition var3, int var4) { var2 = this.frameIds[var2]; - Frames var5 = MidiPcmStream.getFrames(var2 >> 16); + Frames var5 = class102.getFrames(var2 >> 16); var2 &= 65535; if (var5 == null) { return var3.transformActorModel(var1, var4); } else { var4 = var3.frameIds[var4]; - Frames var6 = MidiPcmStream.getFrames(var4 >> 16); + Frames var6 = class102.getFrames(var4 >> 16); var4 &= 65535; Model var7; if (var6 == null) { @@ -494,16 +506,16 @@ Model method1082(Model var1, int var2, SequenceDefinition var3, int var4) { } } - @ObfuscatedName("ad") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Ljr;II)Ljr;", - garbageValue = "-1580674405" + descriptor = "(Lka;II)Lka;", + garbageValue = "1947242189" ) @Export("transformWidgetModel") public Model transformWidgetModel(Model var1, int var2) { if (!this.isCachedModelIdSet()) { int var3 = this.frameIds[var2]; - Frames var4 = MidiPcmStream.getFrames(var3 >> 16); + Frames var4 = class102.getFrames(var3 >> 16); var3 &= 65535; if (var4 == null) { return var1.toSharedSequenceModel(true); @@ -512,7 +524,7 @@ public Model transformWidgetModel(Model var1, int var2) { int var6 = 0; if (this.chatFrameIds != null && var2 < this.chatFrameIds.length) { var6 = this.chatFrameIds[var2]; - var5 = MidiPcmStream.getFrames(var6 >> 16); + var5 = class102.getFrames(var6 >> 16); var6 &= 65535; } @@ -533,47 +545,72 @@ public Model transformWidgetModel(Model var1, int var2) { } } - @ObfuscatedName("aq") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1169271782" + garbageValue = "-2015458472" ) @Export("isCachedModelIdSet") public boolean isCachedModelIdSet() { return this.SequenceDefinition_cachedModelId >= 0; } - @ObfuscatedName("al") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2010728570" + garbageValue = "759292138" ) - public int method1085() { + public int method1052() { return this.animMayaEnd - this.animMayaStart; } - @ObfuscatedName("ab") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(I)Lfv;", - garbageValue = "-46871670" + descriptor = "(B)Lfo;", + garbageValue = "52" ) - class137 method1086() { - return this.isCachedModelIdSet() ? Tile.method1184(this.SequenceDefinition_cachedModelId) : null; + class139 method1053() { + return this.isCachedModelIdSet() ? class151.method788(this.SequenceDefinition_cachedModelId) : null; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Ltb;", - garbageValue = "1250355259" + descriptor = "(IIB)I", + garbageValue = "12" ) - public static class502 method1074(int var0) { - int var1 = class500.field4098[var0]; - if (var1 == 1) { - return class502.field4101; - } else if (var1 == 2) { - return class502.field4100; - } else { - return var1 == 3 ? class502.field4099 : null; + public static int method1040(int var0, int var1) { + return (int)(Math.atan2((double)var0, (double)var1) * 325.94932345220167D) & 2047; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "294649800" + ) + public static int method1041(int var0) { + return var0 >>> 12; + } + + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "2048798044" + ) + static int method1055(int var0, Script var1, boolean var2) { + return 2; + } + + @ObfuscatedName("hu") + @ObfuscatedSignature( + descriptor = "(IZZZZZI)Loh;", + garbageValue = "550564154" + ) + static Archive method1054(int var0, boolean var1, boolean var2, boolean var3, boolean var4, boolean var5) { + ArchiveDisk var6 = null; + if (JagexCache.JagexCache_dat2File != null) { + var6 = new ArchiveDisk(var0, JagexCache.JagexCache_dat2File, KeyHandler.JagexCache_idxFiles[var0], 1000000); } + + return new Archive(var6, class302.field2511, WorldMapSectionType.field2038, var0, var1, var2, var3, var4, var5); } } \ No newline at end of file diff --git a/osrs/src/main/java/ServerPacket.java b/osrs/src/main/java/ServerPacket.java index 5098070ad..7d481f991 100644 --- a/osrs/src/main/java/ServerPacket.java +++ b/osrs/src/main/java/ServerPacket.java @@ -3,876 +3,872 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lg") +@ObfuscatedName("lu") @Implements("ServerPacket") public class ServerPacket { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NPC_ANIM_SPECIFIC") - public static final ServerPacket NPC_ANIM_SPECIFIC; - @ObfuscatedName("ae") + public static final ServerPacket field2651; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("AREA_SOUND") - public static final ServerPacket AREA_SOUND; - @ObfuscatedName("ao") + public static final ServerPacket field2639; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("TRADING_POST_UPDATE") public static final ServerPacket TRADING_POST_UPDATE; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("SEND_PING") public static final ServerPacket SEND_PING; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_REBOOT_TIMER") - public static final ServerPacket UPDATE_REBOOT_TIMER; - @ObfuscatedName("ai") + public static final ServerPacket field2633; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETEVENTS") - public static final ServerPacket IF_SETEVENTS; - @ObfuscatedName("az") + @Export("IF_SETNPCHEAD") + public static final ServerPacket IF_SETNPCHEAD; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NEW_PACKET_CAM_RESET_V2") - public static final ServerPacket NEW_PACKET_CAM_RESET_V2; - @ObfuscatedName("ap") + @Export("IF_SETTEXT") + public static final ServerPacket IF_SETTEXT; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("SET_PLAYER_OP") public static final ServerPacket SET_PLAYER_OP; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("VARP_LARGE") - public static final ServerPacket VARP_LARGE; - @ObfuscatedName("af") + @Export("OBJ_COUNT") + public static final ServerPacket OBJ_COUNT; + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETOBJECT") - public static final ServerPacket IF_SETOBJECT; - @ObfuscatedName("ad") + @Export("UPDATE_UID192") + public static final ServerPacket UPDATE_UID192; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("OPEN_URL") - public static final ServerPacket OPEN_URL; - @ObfuscatedName("aq") + @Export("OBJ_DEL_LEGACY") + public static final ServerPacket OBJ_DEL_LEGACY; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_MOVESUB") - public static final ServerPacket IF_MOVESUB; - @ObfuscatedName("al") + @Export("RESET_ANIMS") + public static final ServerPacket RESET_ANIMS; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_LOOKAT_EASED_ANGLE_ABSOLUTE") - public static final ServerPacket CAM_LOOKAT_EASED_ANGLE_ABSOLUTE; - @ObfuscatedName("an") + public static final ServerPacket field2655; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_MOVETO_EASED_CIRCULAR") - public static final ServerPacket CAM_MOVETO_EASED_CIRCULAR; - @ObfuscatedName("ar") + @Export("IF_OPENTOP") + public static final ServerPacket IF_OPENTOP; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETTEXT") - public static final ServerPacket IF_SETTEXT; - @ObfuscatedName("ab") + public static final ServerPacket field2656; + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("REFLECTIONCHECK_FRIENDLIST") - public static final ServerPacket REFLECTIONCHECK_FRIENDLIST; - @ObfuscatedName("ag") + public static final ServerPacket field2642; + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MAPPROJ_ANIM") - public static final ServerPacket MAPPROJ_ANIM; + public static final ServerPacket field2641; @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("GAMEFRAME_FULL") - public static final ServerPacket GAMEFRAME_FULL; - @ObfuscatedName("ax") + @Export("PREFETCH_GAMEOBJECTS") + public static final ServerPacket PREFETCH_GAMEOBJECTS; + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_INV_STOP_TRANSMIT") - public static final ServerPacket UPDATE_INV_STOP_TRANSMIT; - @ObfuscatedName("ah") + public static final ServerPacket field2648; + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MESSAGE_PRIVATE_ECHO") - public static final ServerPacket MESSAGE_PRIVATE_ECHO; - @ObfuscatedName("as") + @Export("MIDI_SONG_WITH_SECONDARY") + public static final ServerPacket MIDI_SONG_WITH_SECONDARY; + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("RUN_CLIENTSCRIPT") - public static final ServerPacket RUN_CLIENTSCRIPT; - @ObfuscatedName("ay") + @Export("UPDATE_FRIENDCHAT_CHANNEL_FULL") + public static final ServerPacket UPDATE_FRIENDCHAT_CHANNEL_FULL; + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("VARCLAN_ENABLE") - public static final ServerPacket VARCLAN_ENABLE; - @ObfuscatedName("aj") + @Export("MAPPROJ_ANIM") + public static final ServerPacket MAPPROJ_ANIM; + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MAPPROJ_ANIM_SPECIFIC") - public static final ServerPacket MAPPROJ_ANIM_SPECIFIC; - @ObfuscatedName("av") + @Export("NPC_ANIM_SPECIFIC") + public static final ServerPacket NPC_ANIM_SPECIFIC; + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_RUNENERGY") - public static final ServerPacket UPDATE_RUNENERGY; - @ObfuscatedName("aw") + @Export("VARP_LARGE") + public static final ServerPacket VARP_LARGE; + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_SHAKE") - public static final ServerPacket CAM_SHAKE; - @ObfuscatedName("ak") + @Export("TRADING_POST_RESULTS") + public static final ServerPacket TRADING_POST_RESULTS; + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MESSAGE_CLANCHANNEL") - public static final ServerPacket MESSAGE_CLANCHANNEL; - @ObfuscatedName("bh") + public static final ServerPacket field2637; + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETNPCHEAD") - public static final ServerPacket IF_SETNPCHEAD; - @ObfuscatedName("bj") + @Export("NPC_SPOTANIM_SPECIFIC") + public static final ServerPacket NPC_SPOTANIM_SPECIFIC; + @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_CLOSESUB") - public static final ServerPacket IF_CLOSESUB; - @ObfuscatedName("bk") + @Export("REFLECTIONCHECK_FRIENDLIST") + public static final ServerPacket REFLECTIONCHECK_FRIENDLIST; + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("UPDATE_STAT") public static final ServerPacket UPDATE_STAT; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("UPDATE_IGNORELIST") public static final ServerPacket UPDATE_IGNORELIST; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETCOLOUR") - public static final ServerPacket IF_SETCOLOUR; - @ObfuscatedName("bd") + @Export("IF_SETPLAYERMODEL_BASECOLOUR") + public static final ServerPacket IF_SETPLAYERMODEL_BASECOLOUR; + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MAP_ANIM") - public static final ServerPacket MAP_ANIM; - @ObfuscatedName("by") + @Export("TOGGLE_OCULUS_ORB") + public static final ServerPacket TOGGLE_OCULUS_ORB; + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NPC_SPOTANIM_SPECIFIC") - public static final ServerPacket NPC_SPOTANIM_SPECIFIC; - @ObfuscatedName("bs") + @Export("VARCLAN_ENABLE") + public static final ServerPacket VARCLAN_ENABLE; + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("HEAT_MAP") - public static final ServerPacket HEAT_MAP; + @Export("MIDI_SONG_STOP") + public static final ServerPacket MIDI_SONG_STOP; @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOC_ADD_CHANGE") - public static final ServerPacket LOC_ADD_CHANGE; - @ObfuscatedName("bf") + public static final ServerPacket field2670; + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("PLAYER_ANIM_SPECIFIC") - public static final ServerPacket PLAYER_ANIM_SPECIFIC; - @ObfuscatedName("bq") + public static final ServerPacket field2673; + @ObfuscatedName("bw") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("OBJ_ADD") - public static final ServerPacket OBJ_ADD; - @ObfuscatedName("ba") + @Export("IF_SETSCROLLPOS") + public static final ServerPacket IF_SETSCROLLPOS; + @ObfuscatedName("bj") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("TRADING_POST_RESULTS") - public static final ServerPacket TRADING_POST_RESULTS; - @ObfuscatedName("bl") + @Export("LOC_ANIM_SPECIFIC") + public static final ServerPacket LOC_ANIM_SPECIFIC; + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("SPOTANIM_SPECIFIC") - public static final ServerPacket SPOTANIM_SPECIFIC; - @ObfuscatedName("bp") + @Export("MESSAGE_PRIVATE_ECHO") + public static final ServerPacket MESSAGE_PRIVATE_ECHO; + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("VARP_SMALL") - public static final ServerPacket VARP_SMALL; - @ObfuscatedName("bu") + @Export("PLAYER_INFO") + public static final ServerPacket PLAYER_INFO; + @ObfuscatedName("bt") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CHAT_FILTER_SETTINGS") - public static final ServerPacket CHAT_FILTER_SETTINGS; - @ObfuscatedName("bo") + @Export("EMPTY_PACKET") + public static final ServerPacket EMPTY_PACKET; + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("UPDATE_RUNWEIGHT") public static final ServerPacket UPDATE_RUNWEIGHT; - @ObfuscatedName("bb") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_ZONE_PARTIAL_FOLLOWS") - public static final ServerPacket UPDATE_ZONE_PARTIAL_FOLLOWS; - @ObfuscatedName("br") + public static final ServerPacket field2682; + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("RESET_ANIMS") - public static final ServerPacket RESET_ANIMS; - @ObfuscatedName("be") + @Export("VARP_SMALL") + public static final ServerPacket VARP_SMALL; + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("SYNTH_SOUND") - public static final ServerPacket SYNTH_SOUND; - @ObfuscatedName("bi") + @Export("PLAYER_SPOTANIM_SPECIFIC") + public static final ServerPacket PLAYER_SPOTANIM_SPECIFIC; + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MIDI_JINGLE") - public static final ServerPacket MIDI_JINGLE; - @ObfuscatedName("bz") + @Export("IF_SETPLAYERMODEL_OBJ") + public static final ServerPacket IF_SETPLAYERMODEL_OBJ; + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF1_MODELROTATE") - public static final ServerPacket IF1_MODELROTATE; + @Export("IF_CLOSESUB") + public static final ServerPacket IF_CLOSESUB; @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("HINT_ARROW") public static final ServerPacket HINT_ARROW; - @ObfuscatedName("bn") + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("NEW_PACK_215") public static final ServerPacket NEW_PACK_215; - @ObfuscatedName("bw") + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETPLAYERMODEL_BASECOLOUR") - public static final ServerPacket IF_SETPLAYERMODEL_BASECOLOUR; - @ObfuscatedName("bc") + @Export("UPDATE_ZONE_PARTIAL_ENCLOSED") + public static final ServerPacket UPDATE_ZONE_PARTIAL_ENCLOSED; + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETANGLE") - public static final ServerPacket IF_SETANGLE; - @ObfuscatedName("bg") + @Export("OPEN_URL") + public static final ServerPacket OPEN_URL; + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NPC_HEADICON_SPECIFIC") - public static final ServerPacket NPC_HEADICON_SPECIFIC; - @ObfuscatedName("cw") + public static final ServerPacket field2674; + @ObfuscatedName("cf") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("MESSAGE_PRIVATE") public static final ServerPacket MESSAGE_PRIVATE; - @ObfuscatedName("cf") + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETSCROLLPOS") - public static final ServerPacket IF_SETSCROLLPOS; - @ObfuscatedName("cm") + @Export("IF_SETOBJECT") + public static final ServerPacket IF_SETOBJECT; + @ObfuscatedName("cv") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("REBUILD_REGION") - public static final ServerPacket REBUILD_REGION; - @ObfuscatedName("cn") + @Export("CAM_MOVETO_EASED_CIRCULAR") + static final ServerPacket CAM_MOVETO_EASED_CIRCULAR; + @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOC_ANIM_SPECIFIC") - public static final ServerPacket LOC_ANIM_SPECIFIC; - @ObfuscatedName("cs") + @Export("MINIMAP_TOGGLE") + public static final ServerPacket MINIMAP_TOGGLE; + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MESSAGE_GAME") - public static final ServerPacket MESSAGE_GAME; - @ObfuscatedName("cx") + @Export("NEW_PACKET_CAM_RESET_V2") + public static final ServerPacket NEW_PACKET_CAM_RESET_V2; + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_INV_FULL") - public static final ServerPacket UPDATE_INV_FULL; - @ObfuscatedName("cr") + @Export("MESSAGE_CLANCHANNEL") + public static final ServerPacket MESSAGE_CLANCHANNEL; + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETANIM") - public static final ServerPacket IF_SETANIM; - @ObfuscatedName("cd") + @Export("CHAT_FILTER_SETTINGS_PRIVATECHAT") + public static final ServerPacket CHAT_FILTER_SETTINGS_PRIVATECHAT; + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("IF_OPENSUB") public static final ServerPacket IF_OPENSUB; - @ObfuscatedName("ce") + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETMODEL") - public static final ServerPacket IF_SETMODEL; + @Export("IF_SETPOSITION") + public static final ServerPacket IF_SETPOSITION; @ObfuscatedName("cq") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_UID192") - public static final ServerPacket UPDATE_UID192; - @ObfuscatedName("cp") + @Export("CAM_RESET") + public static final ServerPacket CAM_RESET; + @ObfuscatedName("cl") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("SYNC_CLIENT_VARCACHE") - public static final ServerPacket SYNC_CLIENT_VARCACHE; - @ObfuscatedName("cv") + @Export("UPDATE_FRIENDCHAT_CHANNEL_FULL_V2") + public static final ServerPacket UPDATE_FRIENDCHAT_CHANNEL_FULL_V2; + @ObfuscatedName("cs") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("CLANSETTINGS_FULL") public static final ServerPacket CLANSETTINGS_FULL; @ObfuscatedName("co") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_LOOKAT") - public static final ServerPacket CAM_LOOKAT; - @ObfuscatedName("cl") + public static final ServerPacket field2698; + @ObfuscatedName("cm") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("SET_MAP_FLAG") public static final ServerPacket SET_MAP_FLAG; - @ObfuscatedName("cu") + @ObfuscatedName("cn") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MINIMAP_TOGGLE") - public static final ServerPacket MINIMAP_TOGGLE; - @ObfuscatedName("ch") + public static final ServerPacket field2697; + @ObfuscatedName("cr") @ObfuscatedSignature( - descriptor = "Llg;" - ) - @Export("UPDATE_FRIENDLIST") - public static final ServerPacket UPDATE_FRIENDLIST; - @ObfuscatedName("ci") + descriptor = "Llu;" + ) + @Export("UPDATE_REBOOT_TIMER") + public static final ServerPacket UPDATE_REBOOT_TIMER; + @ObfuscatedName("cj") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("TRIGGER_ONDIALOGABORT") public static final ServerPacket TRIGGER_ONDIALOGABORT; @ObfuscatedName("ca") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETPLAYERMODEL_OBJ") - public static final ServerPacket IF_SETPLAYERMODEL_OBJ; - @ObfuscatedName("cb") + public static final ServerPacket field2684; + @ObfuscatedName("cc") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("PLAYER_SPOTANIM_SPECIFIC") - public static final ServerPacket PLAYER_SPOTANIM_SPECIFIC; - @ObfuscatedName("cg") + @Export("REBUILD_REGION") + public static final ServerPacket REBUILD_REGION; + @ObfuscatedName("cu") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("OBJ_COUNT") - public static final ServerPacket OBJ_COUNT; - @ObfuscatedName("cj") + @Export("RUN_CLIENTSCRIPT") + public static final ServerPacket RUN_CLIENTSCRIPT; + @ObfuscatedName("ch") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETPOSITION") - public static final ServerPacket IF_SETPOSITION; - @ObfuscatedName("cz") + @Export("NPC_HEADICON_SPECIFIC") + public static final ServerPacket NPC_HEADICON_SPECIFIC; + @ObfuscatedName("cb") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_INV_PARTIAL") - public static final ServerPacket UPDATE_INV_PARTIAL; - @ObfuscatedName("ct") + @Export("UPDATE_ZONE_PARTIAL_FOLLOWS") + public static final ServerPacket UPDATE_ZONE_PARTIAL_FOLLOWS; + @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("RESET_CLIENT_VARCACHE") public static final ServerPacket RESET_CLIENT_VARCACHE; @ObfuscatedName("cy") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("FRIENDLIST_LOADED") - public static final ServerPacket FRIENDLIST_LOADED; + public static final ServerPacket field2707; @ObfuscatedName("ck") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NPC_INFO_SMALL") - public static final ServerPacket NPC_INFO_SMALL; - @ObfuscatedName("cc") + public static final ServerPacket field2694; + @ObfuscatedName("cd") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MESSAGE_FRIENDCHANNEL") - public static final ServerPacket MESSAGE_FRIENDCHANNEL; - @ObfuscatedName("dh") + @Export("CAM_MOVETO") + public static final ServerPacket CAM_MOVETO; + @ObfuscatedName("dt") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CHAT_FILTER_SETTINGS_PRIVATECHAT") - public static final ServerPacket CHAT_FILTER_SETTINGS_PRIVATECHAT; - @ObfuscatedName("dj") + public static final ServerPacket field2728; + @ObfuscatedName("di") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("PLAYER_INFO") - public static final ServerPacket PLAYER_INFO; - @ObfuscatedName("di") + @Export("VARCLAN") + public static final ServerPacket VARCLAN; + @ObfuscatedName("dk") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETPLAYERMODEL_BODYTYPE") - public static final ServerPacket IF_SETPLAYERMODEL_BODYTYPE; - @ObfuscatedName("du") + public static final ServerPacket field2719; + @ObfuscatedName("dd") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("TOGGLE_OCULUS_ORB") - public static final ServerPacket TOGGLE_OCULUS_ORB; - @ObfuscatedName("dn") + @Export("MESSAGE_GAME") + public static final ServerPacket MESSAGE_GAME; + @ObfuscatedName("dx") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_MOVETO_EASED") - public static final ServerPacket CAM_MOVETO_EASED; - @ObfuscatedName("dg") + @Export("LOC_ADD_CHANGE") + public static final ServerPacket LOC_ADD_CHANGE; + @ObfuscatedName("dh") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("VARCLAN") - public static final ServerPacket VARCLAN; - @ObfuscatedName("dd") + @Export("SYNTH_SOUND") + public static final ServerPacket SYNTH_SOUND; + @ObfuscatedName("du") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOC_DEL") - public static final ServerPacket LOC_DEL; - @ObfuscatedName("da") + @Export("MESSAGE_FRIENDCHANNEL") + public static final ServerPacket MESSAGE_FRIENDCHANNEL; + @ObfuscatedName("dg") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("REFLECTION_CHECK") - public static final ServerPacket REFLECTION_CHECK; - @ObfuscatedName("ds") + @Export("SYNC_CLIENT_VARCACHE") + public static final ServerPacket SYNC_CLIENT_VARCACHE; + @ObfuscatedName("dc") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("VARCLAN_DISABLE") - public static final ServerPacket VARCLAN_DISABLE; - @ObfuscatedName("dy") + @Export("CAM_SHAKE") + public static final ServerPacket CAM_SHAKE; + @ObfuscatedName("do") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("ENTER_FREECAM") - public static final ServerPacket ENTER_FREECAM; - @ObfuscatedName("dt") + @Export("UPDATE_RUNENERGY") + public static final ServerPacket UPDATE_RUNENERGY; + @ObfuscatedName("db") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CLANCHANNEL_FULL") - public static final ServerPacket CLANCHANNEL_FULL; - @ObfuscatedName("dl") + @Export("IF_SETANIM") + public static final ServerPacket IF_SETANIM; + @ObfuscatedName("dm") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MIDI_SONG_LEGACY") - public static final ServerPacket MIDI_SONG_LEGACY; - @ObfuscatedName("dk") + @Export("UPDATE_INV_STOP_TRANSMIT") + public static final ServerPacket UPDATE_INV_STOP_TRANSMIT; + @ObfuscatedName("dr") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETHIDE") - public static final ServerPacket IF_SETHIDE; - @ObfuscatedName("df") + @Export("MIDI_JINGLE") + public static final ServerPacket MIDI_JINGLE; + @ObfuscatedName("ds") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("MESSAGE_CLANCHANNEL_SYSTEM") public static final ServerPacket MESSAGE_CLANCHANNEL_SYSTEM; - @ObfuscatedName("dz") + @ObfuscatedName("da") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("OBJ_DEL_LEGACY") - public static final ServerPacket OBJ_DEL_LEGACY; + public static final ServerPacket field2709; @ObfuscatedName("dw") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CLANSETTINGS_DELTA") - public static final ServerPacket CLANSETTINGS_DELTA; - @ObfuscatedName("dv") + @Export("ENTER_FREECAM") + public static final ServerPacket ENTER_FREECAM; + @ObfuscatedName("dp") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_ZONE_FULL_FOLLOWS") - public static final ServerPacket UPDATE_ZONE_FULL_FOLLOWS; - @ObfuscatedName("dr") + public static final ServerPacket field2724; + @ObfuscatedName("df") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_INV_CLEAR") - public static final ServerPacket UPDATE_INV_CLEAR; - @ObfuscatedName("do") + @Export("UPDATE_SITESETTINGS") + public static final ServerPacket UPDATE_SITESETTINGS; + @ObfuscatedName("dv") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CLANCHANNEL_DELTA") - public static final ServerPacket CLANCHANNEL_DELTA; - @ObfuscatedName("db") + @Export("UPDATE_ZONE_FULL_FOLLOWS") + public static final ServerPacket UPDATE_ZONE_FULL_FOLLOWS; + @ObfuscatedName("dz") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_RESET") - public static final ServerPacket CAM_RESET; - @ObfuscatedName("dp") + @Export("LOGOUT_FULL") + public static final ServerPacket LOGOUT_FULL; + @ObfuscatedName("dl") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("EMPTY_PACKET") - public static final ServerPacket EMPTY_PACKET; - @ObfuscatedName("dm") + @Export("PLAYER_ANIM_SPECIFIC") + public static final ServerPacket PLAYER_ANIM_SPECIFIC; + @ObfuscatedName("de") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("REBUILD_REGION_NORMAL") - public static final ServerPacket REBUILD_REGION_NORMAL; - @ObfuscatedName("dx") + public static final ServerPacket field2713; + @ObfuscatedName("dn") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOGOUT") - public static final ServerPacket LOGOUT; + public static final ServerPacket field2722; @ObfuscatedName("dq") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOGOUT_FULL") - public static final ServerPacket LOGOUT_FULL; - @ObfuscatedName("de") + @Export("NPC_INFO_SMALL") + public static final ServerPacket NPC_INFO_SMALL; + @ObfuscatedName("dj") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_ZONE_PARTIAL_ENCLOSED") - public static final ServerPacket UPDATE_ZONE_PARTIAL_ENCLOSED; - @ObfuscatedName("dc") + public static final ServerPacket field2718; + @ObfuscatedName("dy") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_LOOKAT_EASED_COORD") - public static final ServerPacket CAM_LOOKAT_EASED_COORD; - @ObfuscatedName("ed") + @Export("VARCLAN_DISABLE") + public static final ServerPacket VARCLAN_DISABLE; + @ObfuscatedName("ec") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_LOOKAT_EASED_ANGLE_RELATIVE") - public static final ServerPacket CAM_LOOKAT_EASED_ANGLE_RELATIVE; - @ObfuscatedName("eh") + @Export("LOGIN_SCREEN_PACKET") + public static final ServerPacket LOGIN_SCREEN_PACKET; + @ObfuscatedName("ew") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_FRIENDCHAT_CHANNEL_FULL_V2") - public static final ServerPacket UPDATE_FRIENDCHAT_CHANNEL_FULL_V2; - @ObfuscatedName("ey") + public static final ServerPacket field2754; + @ObfuscatedName("ex") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_OPENTOP") - public static final ServerPacket IF_OPENTOP; - @ObfuscatedName("ee") + @Export("UPDATE_FRIENDLIST") + public static final ServerPacket UPDATE_FRIENDLIST; + @ObfuscatedName("ev") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - public static final ServerPacket field2725; - @ObfuscatedName("eq") + public static final ServerPacket field2753; + @ObfuscatedName("ek") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("CAM_MOVETO") - public static final ServerPacket CAM_MOVETO; - @ObfuscatedName("ej") + public static final ServerPacket field2743; + @ObfuscatedName("em") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_SITESETTINGS") - public static final ServerPacket UPDATE_SITESETTINGS; - @ObfuscatedName("ea") + public static final ServerPacket field2745; + @ObfuscatedName("eo") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("PREFETCH_GAMEOBJECTS") - public static final ServerPacket PREFETCH_GAMEOBJECTS; - @ObfuscatedName("er") + @Export("SPOTANIM_SPECIFIC") + public static final ServerPacket SPOTANIM_SPECIFIC; + @ObfuscatedName("ef") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("IF_SETPLAYERHEAD") public static final ServerPacket IF_SETPLAYERHEAD; - @ObfuscatedName("ev") + @ObfuscatedName("el") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOC_ANIM") - public static final ServerPacket LOC_ANIM; - @ObfuscatedName("ez") + @Export("UPDATE_INV_CLEAR") + public static final ServerPacket UPDATE_INV_CLEAR; + @ObfuscatedName("es") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("OBJ_DEL") - public static final ServerPacket OBJ_DEL; - @ObfuscatedName("et") + @Export("UPDATE_INV_FULL") + public static final ServerPacket UPDATE_INV_FULL; + @ObfuscatedName("ea") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("LOGIN_SCREEN_PACKET") - public static final ServerPacket LOGIN_SCREEN_PACKET; + @Export("IF_SETPLAYERMODEL_SELF") + public static final ServerPacket IF_SETPLAYERMODEL_SELF; @ObfuscatedName("en") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("NPC_INFO_LARGE") - public static final ServerPacket NPC_INFO_LARGE; - @ObfuscatedName("eb") + @Export("REBUILD_REGION_NORMAL") + public static final ServerPacket REBUILD_REGION_NORMAL; + @ObfuscatedName("eh") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("IF_SETPLAYERMODEL_SELF") - public static final ServerPacket IF_SETPLAYERMODEL_SELF; + @Export("CAM_LOOKAT_EASED_ANGLE_RELATIVE") + public static final ServerPacket CAM_LOOKAT_EASED_ANGLE_RELATIVE; @ObfuscatedName("ei") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("UPDATE_FRIENDCHAT_CHANNEL_FULL") - public static final ServerPacket UPDATE_FRIENDCHAT_CHANNEL_FULL; - @ObfuscatedName("es") + @Export("NPC_INFO_LARGE") + public static final ServerPacket NPC_INFO_LARGE; + @ObfuscatedName("et") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("MIDI_SONG") - static final ServerPacket MIDI_SONG; - @ObfuscatedName("el") + public static final ServerPacket MIDI_SONG; + @ObfuscatedName("er") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MIDI_SONG_STOP") - public static final ServerPacket MIDI_SONG_STOP; - @ObfuscatedName("em") + @Export("OBJ_ADD") + public static final ServerPacket OBJ_ADD; + @ObfuscatedName("ez") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - @Export("MIDI_SONG_WITH_SECONDARY") - public static final ServerPacket MIDI_SONG_WITH_SECONDARY; - @ObfuscatedName("ef") + public static final ServerPacket field2757; + @ObfuscatedName("eu") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) @Export("MIDI_SWAP") public static final ServerPacket MIDI_SWAP; - @ObfuscatedName("ek") + @ObfuscatedName("eg") @ObfuscatedSignature( - descriptor = "Llg;" + descriptor = "Llu;" ) - public static final ServerPacket field2730; - @ObfuscatedName("ec") + public static final ServerPacket field2740; + @ObfuscatedName("ey") + @ObfuscatedSignature( + descriptor = "Llu;" + ) + public static final ServerPacket field2756; + @ObfuscatedName("eb") + @ObfuscatedSignature( + descriptor = "Llu;" + ) + public static final ServerPacket field2736; + @ObfuscatedName("ed") + @ObfuscatedSignature( + descriptor = "Llu;" + ) + @Export("IF_SETHIDE") + public static final ServerPacket IF_SETHIDE; + @ObfuscatedName("eq") + @ObfuscatedSignature( + descriptor = "Llu;" + ) + public static final ServerPacket field2748; + @ObfuscatedName("ee") @Export("id") public final int id; - @ObfuscatedName("eu") + @ObfuscatedName("ej") @Export("length") public final int length; static { - NPC_ANIM_SPECIFIC = new ServerPacket(0, 5); - AREA_SOUND = new ServerPacket(1, 6); - TRADING_POST_UPDATE = new ServerPacket(2, 1); - SEND_PING = new ServerPacket(3, 17); - UPDATE_REBOOT_TIMER = new ServerPacket(4, 2); - IF_SETEVENTS = new ServerPacket(5, 10); - NEW_PACKET_CAM_RESET_V2 = new ServerPacket(6, 6); - SET_PLAYER_OP = new ServerPacket(7, 0); - VARP_LARGE = new ServerPacket(8, 4); - IF_SETOBJECT = new ServerPacket(9, 7); - OPEN_URL = new ServerPacket(10, -2); - IF_MOVESUB = new ServerPacket(11, 2); - CAM_LOOKAT_EASED_ANGLE_ABSOLUTE = new ServerPacket(12, 8); - CAM_MOVETO_EASED_CIRCULAR = new ServerPacket(13, 1); - IF_SETTEXT = new ServerPacket(14, -1); - REFLECTIONCHECK_FRIENDLIST = new ServerPacket(15, 6); - MAPPROJ_ANIM = new ServerPacket(16, -2); - GAMEFRAME_FULL = new ServerPacket(17, -2); - UPDATE_INV_STOP_TRANSMIT = new ServerPacket(18, 2); - MESSAGE_PRIVATE_ECHO = new ServerPacket(19, 10); - RUN_CLIENTSCRIPT = new ServerPacket(20, 0); - VARCLAN_ENABLE = new ServerPacket(21, 2); - MAPPROJ_ANIM_SPECIFIC = new ServerPacket(22, 16); - UPDATE_RUNENERGY = new ServerPacket(23, -1); - CAM_SHAKE = new ServerPacket(24, -2); - MESSAGE_CLANCHANNEL = new ServerPacket(25, 6); - IF_SETNPCHEAD = new ServerPacket(26, 12); - IF_CLOSESUB = new ServerPacket(27, 9); - UPDATE_STAT = new ServerPacket(28, 0); - UPDATE_IGNORELIST = new ServerPacket(29, 4); - IF_SETCOLOUR = new ServerPacket(30, 8); - MAP_ANIM = new ServerPacket(31, -2); - NPC_SPOTANIM_SPECIFIC = new ServerPacket(32, 6); - HEAT_MAP = new ServerPacket(33, 8); - LOC_ADD_CHANGE = new ServerPacket(34, -2); - PLAYER_ANIM_SPECIFIC = new ServerPacket(35, 5); - OBJ_ADD = new ServerPacket(36, 2); - TRADING_POST_RESULTS = new ServerPacket(37, -1); - SPOTANIM_SPECIFIC = new ServerPacket(38, -2); - VARP_SMALL = new ServerPacket(39, 6); - CHAT_FILTER_SETTINGS = new ServerPacket(40, 2); - UPDATE_RUNWEIGHT = new ServerPacket(41, 0); - UPDATE_ZONE_PARTIAL_FOLLOWS = new ServerPacket(42, -2); - RESET_ANIMS = new ServerPacket(43, 3); - SYNTH_SOUND = new ServerPacket(44, 7); - MIDI_JINGLE = new ServerPacket(45, 2); - IF1_MODELROTATE = new ServerPacket(46, 10); - HINT_ARROW = new ServerPacket(47, 6); - NEW_PACK_215 = new ServerPacket(48, -1); - IF_SETPLAYERMODEL_BASECOLOUR = new ServerPacket(49, 2); - IF_SETANGLE = new ServerPacket(50, -2); - NPC_HEADICON_SPECIFIC = new ServerPacket(51, -2); - MESSAGE_PRIVATE = new ServerPacket(52, 10); - IF_SETSCROLLPOS = new ServerPacket(53, 8); - REBUILD_REGION = new ServerPacket(54, -2); - LOC_ANIM_SPECIFIC = new ServerPacket(55, 5); - MESSAGE_GAME = new ServerPacket(56, -2); - UPDATE_INV_FULL = new ServerPacket(57, -2); - IF_SETANIM = new ServerPacket(58, 4); - IF_OPENSUB = new ServerPacket(59, 6); - IF_SETMODEL = new ServerPacket(60, 6); - UPDATE_UID192 = new ServerPacket(61, 1); - SYNC_CLIENT_VARCACHE = new ServerPacket(62, 0); - CLANSETTINGS_FULL = new ServerPacket(63, 5); - CAM_LOOKAT = new ServerPacket(64, 0); - SET_MAP_FLAG = new ServerPacket(65, 1); - MINIMAP_TOGGLE = new ServerPacket(66, 6); - UPDATE_FRIENDLIST = new ServerPacket(67, -2); - TRIGGER_ONDIALOGABORT = new ServerPacket(68, -2); - IF_SETPLAYERMODEL_OBJ = new ServerPacket(69, 1); - PLAYER_SPOTANIM_SPECIFIC = new ServerPacket(70, -2); - OBJ_COUNT = new ServerPacket(71, 6); - IF_SETPOSITION = new ServerPacket(72, 0); - UPDATE_INV_PARTIAL = new ServerPacket(73, 7); - RESET_CLIENT_VARCACHE = new ServerPacket(74, 2); - FRIENDLIST_LOADED = new ServerPacket(75, 2); - NPC_INFO_SMALL = new ServerPacket(76, 6); - MESSAGE_FRIENDCHANNEL = new ServerPacket(77, -2); - CHAT_FILTER_SETTINGS_PRIVATECHAT = new ServerPacket(78, 4); - PLAYER_INFO = new ServerPacket(79, -2); - IF_SETPLAYERMODEL_BODYTYPE = new ServerPacket(80, -1); - TOGGLE_OCULUS_ORB = new ServerPacket(81, 8); - CAM_MOVETO_EASED = new ServerPacket(82, 9); - VARCLAN = new ServerPacket(83, 28); - LOC_DEL = new ServerPacket(84, 8); - REFLECTION_CHECK = new ServerPacket(85, -2); - VARCLAN_DISABLE = new ServerPacket(86, 0); - ENTER_FREECAM = new ServerPacket(87, 0); - CLANCHANNEL_FULL = new ServerPacket(88, 6); - MIDI_SONG_LEGACY = new ServerPacket(89, 7); - IF_SETHIDE = new ServerPacket(90, -2); - MESSAGE_CLANCHANNEL_SYSTEM = new ServerPacket(91, -2); - OBJ_DEL_LEGACY = new ServerPacket(92, 6); - CLANSETTINGS_DELTA = new ServerPacket(93, 5); - UPDATE_ZONE_FULL_FOLLOWS = new ServerPacket(94, 14); - UPDATE_INV_CLEAR = new ServerPacket(95, 4); - CLANCHANNEL_DELTA = new ServerPacket(96, 4); - CAM_RESET = new ServerPacket(97, -2); - EMPTY_PACKET = new ServerPacket(98, 20); - REBUILD_REGION_NORMAL = new ServerPacket(99, 4); - LOGOUT = new ServerPacket(100, 8); - LOGOUT_FULL = new ServerPacket(101, -1); - UPDATE_ZONE_PARTIAL_ENCLOSED = new ServerPacket(102, -1); - CAM_LOOKAT_EASED_COORD = new ServerPacket(103, 2); - CAM_LOOKAT_EASED_ANGLE_RELATIVE = new ServerPacket(104, 11); - UPDATE_FRIENDCHAT_CHANNEL_FULL_V2 = new ServerPacket(105, -2); - IF_OPENTOP = new ServerPacket(106, 4); - field2725 = new ServerPacket(107, -1); - CAM_MOVETO = new ServerPacket(108, -1); - UPDATE_SITESETTINGS = new ServerPacket(109, 5); - PREFETCH_GAMEOBJECTS = new ServerPacket(110, 12); - IF_SETPLAYERHEAD = new ServerPacket(111, 8); - LOC_ANIM = new ServerPacket(112, 14); - OBJ_DEL = new ServerPacket(113, 4); - LOGIN_SCREEN_PACKET = new ServerPacket(114, 5); - NPC_INFO_LARGE = new ServerPacket(115, 9); - IF_SETPLAYERMODEL_SELF = new ServerPacket(116, 3); - UPDATE_FRIENDCHAT_CHANNEL_FULL = new ServerPacket(117, 5); - MIDI_SONG = new ServerPacket(118, -2); - MIDI_SONG_STOP = new ServerPacket(119, 0); - MIDI_SONG_WITH_SECONDARY = new ServerPacket(120, 7); + field2651 = new ServerPacket(0, -2); + field2639 = new ServerPacket(1, 6); + TRADING_POST_UPDATE = new ServerPacket(2, -2); + SEND_PING = new ServerPacket(3, 6); + field2633 = new ServerPacket(4, 6); + IF_SETNPCHEAD = new ServerPacket(5, 20); + IF_SETTEXT = new ServerPacket(6, 8); + SET_PLAYER_OP = new ServerPacket(7, 6); + OBJ_COUNT = new ServerPacket(8, 4); + UPDATE_UID192 = new ServerPacket(9, 10); + OBJ_DEL_LEGACY = new ServerPacket(10, -2); + RESET_ANIMS = new ServerPacket(11, 9); + field2655 = new ServerPacket(12, 2); + IF_OPENTOP = new ServerPacket(13, -2); + field2656 = new ServerPacket(14, 2); + field2642 = new ServerPacket(15, 5); + field2641 = new ServerPacket(16, 1); + PREFETCH_GAMEOBJECTS = new ServerPacket(17, -1); + field2648 = new ServerPacket(18, 2); + MIDI_SONG_WITH_SECONDARY = new ServerPacket(19, 4); + UPDATE_FRIENDCHAT_CHANNEL_FULL = new ServerPacket(20, 8); + MAPPROJ_ANIM = new ServerPacket(21, 3); + NPC_ANIM_SPECIFIC = new ServerPacket(22, 19); + VARP_LARGE = new ServerPacket(23, 10); + TRADING_POST_RESULTS = new ServerPacket(24, -2); + field2637 = new ServerPacket(25, 5); + NPC_SPOTANIM_SPECIFIC = new ServerPacket(26, -2); + REFLECTIONCHECK_FRIENDLIST = new ServerPacket(27, 3); + UPDATE_STAT = new ServerPacket(28, 6); + UPDATE_IGNORELIST = new ServerPacket(29, 6); + IF_SETPLAYERMODEL_BASECOLOUR = new ServerPacket(30, 1); + TOGGLE_OCULUS_ORB = new ServerPacket(31, 20); + VARCLAN_ENABLE = new ServerPacket(32, 0); + MIDI_SONG_STOP = new ServerPacket(33, 6); + field2670 = new ServerPacket(34, 4); + field2673 = new ServerPacket(35, -1); + IF_SETSCROLLPOS = new ServerPacket(36, 5); + LOC_ANIM_SPECIFIC = new ServerPacket(37, 7); + MESSAGE_PRIVATE_ECHO = new ServerPacket(38, -2); + PLAYER_INFO = new ServerPacket(39, 14); + EMPTY_PACKET = new ServerPacket(40, 4); + UPDATE_RUNWEIGHT = new ServerPacket(41, 6); + field2682 = new ServerPacket(42, 1); + VARP_SMALL = new ServerPacket(43, 14); + PLAYER_SPOTANIM_SPECIFIC = new ServerPacket(44, 0); + IF_SETPLAYERMODEL_OBJ = new ServerPacket(45, 8); + IF_CLOSESUB = new ServerPacket(46, 5); + HINT_ARROW = new ServerPacket(47, 7); + NEW_PACK_215 = new ServerPacket(48, 8); + UPDATE_ZONE_PARTIAL_ENCLOSED = new ServerPacket(49, -2); + OPEN_URL = new ServerPacket(50, 8); + field2674 = new ServerPacket(51, 4); + MESSAGE_PRIVATE = new ServerPacket(52, 4); + IF_SETOBJECT = new ServerPacket(53, 5); + CAM_MOVETO_EASED_CIRCULAR = new ServerPacket(54, -2); + MINIMAP_TOGGLE = new ServerPacket(55, 7); + NEW_PACKET_CAM_RESET_V2 = new ServerPacket(56, 0); + MESSAGE_CLANCHANNEL = new ServerPacket(57, -2); + CHAT_FILTER_SETTINGS_PRIVATECHAT = new ServerPacket(58, 6); + IF_OPENSUB = new ServerPacket(59, 0); + IF_SETPOSITION = new ServerPacket(60, -1); + CAM_RESET = new ServerPacket(61, 0); + UPDATE_FRIENDCHAT_CHANNEL_FULL_V2 = new ServerPacket(62, 1); + CLANSETTINGS_FULL = new ServerPacket(63, -2); + field2698 = new ServerPacket(64, 8); + SET_MAP_FLAG = new ServerPacket(65, -2); + field2697 = new ServerPacket(66, 5); + UPDATE_REBOOT_TIMER = new ServerPacket(67, 4); + TRIGGER_ONDIALOGABORT = new ServerPacket(68, 12); + field2684 = new ServerPacket(69, 7); + REBUILD_REGION = new ServerPacket(70, 6); + RUN_CLIENTSCRIPT = new ServerPacket(71, -1); + NPC_HEADICON_SPECIFIC = new ServerPacket(72, -2); + UPDATE_ZONE_PARTIAL_FOLLOWS = new ServerPacket(73, -1); + RESET_CLIENT_VARCACHE = new ServerPacket(74, -2); + field2707 = new ServerPacket(75, 4); + field2694 = new ServerPacket(76, 28); + CAM_MOVETO = new ServerPacket(77, 19); + field2728 = new ServerPacket(78, 2); + VARCLAN = new ServerPacket(79, 2); + field2719 = new ServerPacket(80, -2); + MESSAGE_GAME = new ServerPacket(81, 9); + LOC_ADD_CHANGE = new ServerPacket(82, 5); + SYNTH_SOUND = new ServerPacket(83, -2); + MESSAGE_FRIENDCHANNEL = new ServerPacket(84, -2); + SYNC_CLIENT_VARCACHE = new ServerPacket(85, 17); + CAM_SHAKE = new ServerPacket(86, -2); + UPDATE_RUNENERGY = new ServerPacket(87, 2); + IF_SETANIM = new ServerPacket(88, 0); + UPDATE_INV_STOP_TRANSMIT = new ServerPacket(89, 9); + MIDI_JINGLE = new ServerPacket(90, 2); + MESSAGE_CLANCHANNEL_SYSTEM = new ServerPacket(91, 0); + field2709 = new ServerPacket(92, 16); + ENTER_FREECAM = new ServerPacket(93, -2); + field2724 = new ServerPacket(94, 11); + UPDATE_SITESETTINGS = new ServerPacket(95, 4); + UPDATE_ZONE_FULL_FOLLOWS = new ServerPacket(96, 6); + LOGOUT_FULL = new ServerPacket(97, 5); + PLAYER_ANIM_SPECIFIC = new ServerPacket(98, -1); + field2713 = new ServerPacket(99, 0); + field2722 = new ServerPacket(100, 1); + NPC_INFO_SMALL = new ServerPacket(101, 8); + field2718 = new ServerPacket(102, 10); + VARCLAN_DISABLE = new ServerPacket(103, 0); + LOGIN_SCREEN_PACKET = new ServerPacket(104, -1); + field2754 = new ServerPacket(105, -1); + UPDATE_FRIENDLIST = new ServerPacket(106, 7); + field2753 = new ServerPacket(107, -2); + field2743 = new ServerPacket(108, 6); + field2745 = new ServerPacket(109, -2); + SPOTANIM_SPECIFIC = new ServerPacket(110, -1); + IF_SETPLAYERHEAD = new ServerPacket(111, 12); + UPDATE_INV_CLEAR = new ServerPacket(112, -2); + UPDATE_INV_FULL = new ServerPacket(113, 10); + IF_SETPLAYERMODEL_SELF = new ServerPacket(114, 6); + REBUILD_REGION_NORMAL = new ServerPacket(115, 2); + CAM_LOOKAT_EASED_ANGLE_RELATIVE = new ServerPacket(116, 0); + NPC_INFO_LARGE = new ServerPacket(117, -2); + MIDI_SONG = new ServerPacket(118, 2); + OBJ_ADD = new ServerPacket(119, 2); + field2757 = new ServerPacket(120, 8); MIDI_SWAP = new ServerPacket(121, -2); - field2730 = new ServerPacket(122, 19); + field2740 = new ServerPacket(122, 6); + field2756 = new ServerPacket(123, -2); + field2736 = new ServerPacket(124, 2); + IF_SETHIDE = new ServerPacket(125, 7); + field2748 = new ServerPacket(126, -2); } ServerPacket(int var1, int var2) { @@ -880,12 +876,70 @@ public class ServerPacket { this.length = var2; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-76771490" + descriptor = "(II)V", + garbageValue = "128950429" ) - public static void method1612(AbstractArchive var0) { - VarbitComposition.VarbitDefinition_archive = var0; + static void method1640(int var0) { + class462.field3906 = var0; + class462.field3907 = new class462[var0]; + DirectByteArrayCopier.field3136 = 0; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IZI)[B", + garbageValue = "-2070270076" + ) + @Export("ByteArrayPool_getArrayBool") + public static byte[] ByteArrayPool_getArrayBool(int var0, boolean var1) { + synchronized(ByteArrayPool.field3781) { + byte[] var3; + if ((var0 == 100 || var0 < 100 && var1) && ByteArrayPool.ByteArrayPool_smallCount > 0) { + var3 = ByteArrayPool.ByteArrayPool_small[--ByteArrayPool.ByteArrayPool_smallCount]; + ByteArrayPool.ByteArrayPool_small[ByteArrayPool.ByteArrayPool_smallCount] = null; + return var3; + } + + if ((var0 == 5000 || var0 < 5000 && var1) && ByteArrayPool.ByteArrayPool_mediumCount > 0) { + var3 = ByteArrayPool.ByteArrayPool_medium[--ByteArrayPool.ByteArrayPool_mediumCount]; + ByteArrayPool.ByteArrayPool_medium[ByteArrayPool.ByteArrayPool_mediumCount] = null; + return var3; + } + + if ((var0 == 10000 || var0 < 10000 && var1) && ByteArrayPool.ByteArrayPool_largeCount > 0) { + var3 = ByteArrayPool.ByteArrayPool_large[--ByteArrayPool.ByteArrayPool_largeCount]; + ByteArrayPool.ByteArrayPool_large[ByteArrayPool.ByteArrayPool_largeCount] = null; + return var3; + } + + if ((var0 == 30000 || var0 < 30000 && var1) && ByteArrayPool.field3774 > 0) { + var3 = ByteArrayPool.field3768[--ByteArrayPool.field3774]; + ByteArrayPool.field3768[ByteArrayPool.field3774] = null; + return var3; + } + + int var6; + if (class1.ByteArrayPool_arrays != null) { + for (var6 = 0; var6 < Clock.ByteArrayPool_alternativeSizes.length; ++var6) { + if ((Clock.ByteArrayPool_alternativeSizes[var6] == var0 || var0 < Clock.ByteArrayPool_alternativeSizes[var6] && var1) && class267.ByteArrayPool_altSizeArrayCounts[var6] > 0) { + byte[] var4 = class1.ByteArrayPool_arrays[var6][--class267.ByteArrayPool_altSizeArrayCounts[var6]]; + class1.ByteArrayPool_arrays[var6][class267.ByteArrayPool_altSizeArrayCounts[var6]] = null; + return var4; + } + } + } + + if (var1 && Clock.ByteArrayPool_alternativeSizes != null) { + for (var6 = 0; var6 < Clock.ByteArrayPool_alternativeSizes.length; ++var6) { + if (var0 <= Clock.ByteArrayPool_alternativeSizes[var6] && class267.ByteArrayPool_altSizeArrayCounts[var6] < class1.ByteArrayPool_arrays[var6].length) { + return new byte[Clock.ByteArrayPool_alternativeSizes[var6]]; + } + } + } + } + + return new byte[var0]; } } \ No newline at end of file diff --git a/osrs/src/main/java/Skeleton.java b/osrs/src/main/java/Skeleton.java index d146e3c1a..d97844855 100644 --- a/osrs/src/main/java/Skeleton.java +++ b/osrs/src/main/java/Skeleton.java @@ -3,32 +3,26 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("iu") +@ObfuscatedName("kd") @Implements("Skeleton") public class Skeleton extends Node { - @ObfuscatedName("dl") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - @Export("worldSelectRightSprite") - static IndexedSprite worldSelectRightSprite; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("id") int id; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("count") int count; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("transformTypes") int[] transformTypes; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("labels") int[][] labels; - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lim;" + descriptor = "Lkz;" ) - class227 field2049; + class267 field2235; public Skeleton(int var1, byte[] var2) { this.id = var1; @@ -55,206 +49,42 @@ public Skeleton(int var1, byte[] var2) { if (var3.offset < var3.array.length) { var4 = var3.readUnsignedShort(); if (var4 > 0) { - this.field2049 = new class227(var3, var4); + this.field2235 = new class267(var3, var4); } } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "657439907" + garbageValue = "-1055269733" ) - public int method1230() { + public int method1454() { return this.count; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Lim;", - garbageValue = "-896390577" + descriptor = "(I)Lkz;", + garbageValue = "-155827584" ) - public class227 method1231() { - return this.field2049; + public class267 method1455() { + return this.field2235; } - @ObfuscatedName("au") + @ObfuscatedName("ha") @ObfuscatedSignature( - descriptor = "(Lfh;FB)F", - garbageValue = "0" + descriptor = "(IZZZZI)Loh;", + garbageValue = "-1589546581" ) - static float method1229(class130 var0, float var1) { - if (var0 != null && var0.method726() != 0) { - if (var1 < (float)var0.field1244[0].field1202) { - return var0.field1245 == class128.field1229 ? var0.field1244[0].field1198 : UserComparator4.method669(var0, var1, true); - } else if (var1 > (float)var0.field1244[var0.method726() - 1].field1202) { - return var0.field1246 == class128.field1229 ? var0.field1244[var0.method726() - 1].field1198 : UserComparator4.method669(var0, var1, false); - } else if (var0.field1240) { - return var0.field1244[0].field1198; - } else { - class125 var2 = var0.method725(var1); - boolean var3 = false; - boolean var4 = false; - if (var2 == null) { - return 0.0F; - } else { - float var5; - float var6; - if (0.0D == (double)var2.field1197 && (double)var2.field1199 == 0.0D) { - var3 = true; - } else if (Float.MAX_VALUE == var2.field1197 && Float.MAX_VALUE == var2.field1199) { - var4 = true; - } else if (var2.field1196 != null) { - if (var0.field1241) { - var5 = (float)var2.field1202; - float var9 = var2.field1198; - var6 = 0.33333334F * var2.field1197 + var5; - float var10 = var2.field1199 * 0.33333334F + var9; - float var8 = (float)var2.field1196.field1202; - float var12 = var2.field1196.field1198; - float var7 = var8 - var2.field1196.field1200 * 0.33333334F; - float var11 = var12 - var2.field1196.field1201 * 0.33333334F; - float var15; - float var16; - float var17; - float var18; - float var19; - if (var0.field1243) { - var15 = var10; - var16 = var11; - if (var0 != null) { - var17 = var8 - var5; - if ((double)var17 != 0.0D) { - var18 = var6 - var5; - var19 = var7 - var5; - float[] var20 = new float[]{var18 / var17, var19 / var17}; - var0.field1242 = 0.33333334F == var20[0] && var20[1] == 0.6666667F; - float var21 = var20[0]; - float var22 = var20[1]; - if ((double)var20[0] < 0.0D) { - var20[0] = 0.0F; - } - - if ((double)var20[1] > 1.0D) { - var20[1] = 1.0F; - } - - if ((double)var20[0] > 1.0D || var20[1] < -1.0F) { - class160.method845(var20); - } - - float var10000; - if (var20[0] != var21) { - var10000 = var5 + var17 * var20[0]; - if (0.0D != (double)var21) { - var15 = (var10 - var9) * var20[0] / var21 + var9; - } - } - - if (var22 != var20[1]) { - var10000 = var5 + var17 * var20[1]; - if (1.0D != (double)var22) { - var16 = (float)((double)var12 - (1.0D - (double)var20[1]) * (double)(var12 - var11) / (1.0D - (double)var22)); - } - } - - var0.field1258 = var5; - var0.field1254 = var8; - float var23 = var20[0]; - float var24 = var20[1]; - float var25 = var23 - 0.0F; - float var26 = var24 - var23; - float var27 = 1.0F - var24; - float var28 = var26 - var25; - var0.field1255 = var27 - var26 - var28; - var0.field1249 = var28 + var28 + var28; - var0.field1250 = var25 + var25 + var25; - var0.field1247 = 0.0F; - var25 = var15 - var9; - var26 = var16 - var15; - var27 = var12 - var16; - var28 = var26 - var25; - var0.field1248 = var27 - var26 - var28; - var0.field1256 = var28 + var28 + var28; - var0.field1253 = var25 + var25 + var25; - var0.field1252 = var9; - } - } - } else if (var0 != null) { - var0.field1258 = var5; - float var13 = var8 - var5; - float var14 = var12 - var9; - var15 = var6 - var5; - var16 = 0.0F; - var17 = 0.0F; - if ((double)var15 != 0.0D) { - var16 = (var10 - var9) / var15; - } - - var15 = var8 - var7; - if ((double)var15 != 0.0D) { - var17 = (var12 - var11) / var15; - } - - var18 = 1.0F / (var13 * var13); - var19 = var16 * var13; - float var29 = var17 * var13; - var0.field1247 = var18 * (var19 + var29 - var14 - var14) / var13; - var0.field1250 = var18 * (var14 + var14 + var14 - var19 - var19 - var29); - var0.field1249 = var16; - var0.field1255 = var9; - } - - var0.field1241 = false; - } - } else { - var3 = true; - } - - if (var3) { - return var2.field1198; - } else if (var4) { - return (float)var2.field1202 != var1 && var2.field1196 != null ? var2.field1196.field1198 : var2.field1198; - } else if (var0.field1243) { - return class454.method2321(var0, var1); - } else { - if (var0 == null) { - var5 = 0.0F; - } else { - var6 = var1 - var0.field1258; - var5 = var0.field1255 + var6 * ((var6 * var0.field1247 + var0.field1250) * var6 + var0.field1249); - } - - return var5; - } - } - } - } else { - return 0.0F; + @Export("newArchive") + static Archive newArchive(int var0, boolean var1, boolean var2, boolean var3, boolean var4) { + ArchiveDisk var5 = null; + if (JagexCache.JagexCache_dat2File != null) { + var5 = new ArchiveDisk(var0, JagexCache.JagexCache_dat2File, KeyHandler.JagexCache_idxFiles[var0], 1000000); } - } - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1406508387" - ) - public static void method1232(int var0) { - if (var0 != -1) { - if (class316.Widget_loadedInterfaces[var0]) { - Decimator.Widget_archive.clearFilesGroup(var0); - if (PacketBufferNode.Widget_interfaceComponents[var0] != null) { - for (int var1 = 0; var1 < PacketBufferNode.Widget_interfaceComponents[var0].length; ++var1) { - if (PacketBufferNode.Widget_interfaceComponents[var0][var1] != null) { - PacketBufferNode.Widget_interfaceComponents[var0][var1] = null; - } - } - - PacketBufferNode.Widget_interfaceComponents[var0] = null; - class316.Widget_loadedInterfaces[var0] = false; - } - } - } + return new Archive(var5, class302.field2511, WorldMapSectionType.field2038, var0, var1, var2, var3, var4, false); } } \ No newline at end of file diff --git a/osrs/src/main/java/Skills.java b/osrs/src/main/java/Skills.java index 1a9495ae3..bbaf0b68c 100644 --- a/osrs/src/main/java/Skills.java +++ b/osrs/src/main/java/Skills.java @@ -3,20 +3,15 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nl") +@ObfuscatedName("nj") @Implements("Skills") public class Skills { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("Skills_enabled") public static final boolean[] Skills_enabled; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("Skills_experienceTable") public static int[] Skills_experienceTable; - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - static IndexedSprite field3145; static { Skills_enabled = new boolean[]{true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false}; @@ -31,4 +26,35 @@ public class Skills { } } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Lol;Ljava/lang/String;Ljava/lang/String;I)[Lup;", + garbageValue = "900236984" + ) + public static IndexedSprite[] method1895(AbstractArchive var0, String var1, String var2) { + if (!var0.isValidFileName(var1, var2)) { + return null; + } else { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + byte[] var7 = var0.takeFile(var3, var4); + boolean var6; + if (var7 == null) { + var6 = false; + } else { + class162.SpriteBuffer_decode(var7); + var6 = true; + } + + IndexedSprite[] var5; + if (!var6) { + var5 = null; + } else { + var5 = DbTable.method2519(); + } + + return var5; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/SoftWrapper.java b/osrs/src/main/java/SoftWrapper.java index 9f0851468..53f0e0d4a 100644 --- a/osrs/src/main/java/SoftWrapper.java +++ b/osrs/src/main/java/SoftWrapper.java @@ -4,10 +4,10 @@ import java.lang.ref.SoftReference; -@ObfuscatedName("lx") +@ObfuscatedName("ln") @Implements("SoftWrapper") public class SoftWrapper extends Wrapper { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("ref") SoftReference ref; @@ -16,13 +16,13 @@ public class SoftWrapper extends Wrapper { this.ref = new SoftReference(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("get") Object get() { return this.ref.get(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("isSoft") boolean isSoft() { return true; diff --git a/osrs/src/main/java/SongTask.java b/osrs/src/main/java/SongTask.java index 5ee7a8307..8b07dde0d 100644 --- a/osrs/src/main/java/SongTask.java +++ b/osrs/src/main/java/SongTask.java @@ -3,144 +3,81 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pm") +@ObfuscatedName("ql") @Implements("SongTask") public abstract class SongTask { - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lpm;" + descriptor = "Lql;" ) - SongTask field3724; - @ObfuscatedName("at") - String field3723; - @ObfuscatedName("ac") - String field3722; - @ObfuscatedName("ai") - boolean field3720; - @ObfuscatedName("az") - boolean field3721; + SongTask field3758; + @ObfuscatedName("ao") + String field3757; + @ObfuscatedName("ab") + String field3756; + @ObfuscatedName("au") + boolean field3755; + @ObfuscatedName("aa") + boolean field3754; @ObfuscatedSignature( - descriptor = "(Lpm;)V" + descriptor = "(Lql;)V" ) SongTask(SongTask var1) { - this.field3724 = var1; + this.field3758 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public abstract boolean vmethod2142(); - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "3" + descriptor = "(I)Z", + garbageValue = "1285191143" ) - public boolean method2132() { - return this.field3720; + public boolean method2156() { + return this.field3755; } - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1850076782" + descriptor = "(B)Z", + garbageValue = "0" ) - public boolean method2134() { - return this.field3721; + public boolean method2157() { + return this.field3754; } - @ObfuscatedName("ap") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "2126528347" + garbageValue = "1733616113" ) - public String method2135() { - return "Error in task: " + this.field3722 + ", Error message: " + this.field3723; + public String method2158() { + return "Error in task: " + this.field3756 + ", Error message: " + this.field3757; } - @ObfuscatedName("aa") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(S)Lpm;", - garbageValue = "255" + descriptor = "(I)Lql;", + garbageValue = "1680402489" ) - public SongTask method2136() { - return this.field3724; + public SongTask method2159() { + return this.field3758; } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;B)V", - garbageValue = "14" - ) - void method2138(String var1) { - this.field3720 = true; - this.field3723 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-7" + garbageValue = "2" ) - @Export("isWorldMapEvent") - public static boolean isWorldMapEvent(int var0) { - return var0 == 10 || var0 == 11 || var0 == 12 || var0 == 13 || var0 == 14 || var0 == 15 || var0 == 16 || var0 == 17; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1563316878" - ) - public static int method2137(int var0) { - return class464.field3908[var0 & 16383]; - } - - @ObfuscatedName("mg") - @ObfuscatedSignature( - descriptor = "(Lmi;IIIIIIB)V", - garbageValue = "-68" - ) - static final void method2139(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { - if (Client.field382) { - Client.alternativeScrollbarWidth = 32; - } else { - Client.alternativeScrollbarWidth = 0; - } - - Client.field382 = false; - int var7; - if (MouseHandler.MouseHandler_currentButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { - if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { - var0.scrollY -= 4; - class218.invalidateWidget(var0); - } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { - var0.scrollY += 4; - class218.invalidateWidget(var0); - } else if (var5 >= var1 - Client.alternativeScrollbarWidth && var5 < Client.alternativeScrollbarWidth + var1 + 16 && var6 >= var2 + 16 && var6 < var3 + var2 - 16) { - var7 = var3 * (var3 - 32) / var4; - if (var7 < 8) { - var7 = 8; - } - - int var8 = var6 - var2 - 16 - var7 / 2; - int var9 = var3 - 32 - var7; - var0.scrollY = var8 * (var4 - var3) / var9; - class218.invalidateWidget(var0); - Client.field382 = true; - } - } - - if (Client.mouseWheelRotation != 0) { - var7 = var0.width; - if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { - var0.scrollY += Client.mouseWheelRotation * 45; - class218.invalidateWidget(var0); - } - } - + void method2160(String var1) { + this.field3755 = true; + this.field3757 = var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/SoundCache.java b/osrs/src/main/java/SoundCache.java index 5e27e3c56..c0a8ff140 100644 --- a/osrs/src/main/java/SoundCache.java +++ b/osrs/src/main/java/SoundCache.java @@ -3,59 +3,50 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.LinkedList; -import java.util.List; - -@ObfuscatedName("bi") +@ObfuscatedName("bc") @Implements("SoundCache") public class SoundCache { - @ObfuscatedName("aa") - @Export("Interpreter_intStackSize") - static int Interpreter_intStackSize; - @ObfuscatedName("dd") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - @Export("worldSelectFlagSprites") - static IndexedSprite[] worldSelectFlagSprites; - @ObfuscatedName("au") + @ObfuscatedName("gy") + @Export("playerUUIDLength") + static int playerUUIDLength; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("soundEffectIndex") AbstractArchive soundEffectIndex; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) - AbstractArchive field216; - @ObfuscatedName("ao") + AbstractArchive field212; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lso;" + descriptor = "Ltw;" ) - NodeHashTable field218; + NodeHashTable field214; @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;)V" + descriptor = "(Lol;Lol;)V" ) public SoundCache(AbstractArchive var1, AbstractArchive var2) { new NodeHashTable(256); - this.field218 = new NodeHashTable(256); + this.field214 = new NodeHashTable(256); this.soundEffectIndex = var1; - this.field216 = var2; + this.field212 = var2; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II[II)Lbu;", - garbageValue = "-1861641707" + descriptor = "(II[II)Lbt;", + garbageValue = "1933572054" ) @Export("getSoundEffect0") RawSound getSoundEffect0(int var1, int var2, int[] var3) { - long var4 = this.method226(var1, var2, false); - class53 var6 = (class53)this.field218.get(var4); + long var4 = this.method241(var1, var2, false); + class53 var6 = (class53)this.field214.get(var4); if (var6 != null) { - return var6.method292(); + return var6.method305(); } else if (var3 != null && var3[0] <= 0) { return null; } else { @@ -64,7 +55,7 @@ RawSound getSoundEffect0(int var1, int var2, int[] var3) { return null; } else { RawSound var8 = var7.toRawSound(); - this.field218.put(new class53(var8), var4); + this.field214.put(new class53(var8), var4); if (var3 != null) { var3[0] -= var8.samples.length; } @@ -74,32 +65,32 @@ RawSound getSoundEffect0(int var1, int var2, int[] var3) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)Lcf;", - garbageValue = "-98" + descriptor = "(IIB)Lcg;", + garbageValue = "1" ) - class53 method221(int var1, int var2) { - long var3 = this.method226(var1, var2, true); - class53 var5 = (class53)this.field218.get(var3); + class53 method237(int var1, int var2) { + long var3 = this.method241(var1, var2, true); + class53 var5 = (class53)this.field214.get(var3); if (var5 != null) { return var5; } else { - VorbisSample var6 = VorbisSample.readMusicSample(this.field216, var1, var2); + VorbisSample var6 = VorbisSample.readMusicSample(this.field212, var1, var2); if (var6 == null) { return new class53(); } else { class53 var7 = new class53(var6); - this.field218.put(var7, var3); + this.field214.put(var7, var3); return var7; } } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I[II)Lbu;", - garbageValue = "88728645" + descriptor = "(I[IB)Lbt;", + garbageValue = "47" ) @Export("getSoundEffect") RawSound getSoundEffect(int var1, int[] var2) { @@ -112,271 +103,117 @@ RawSound getSoundEffect(int var1, int[] var2) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)Lcf;", - garbageValue = "134889372" + descriptor = "(II)Lcg;", + garbageValue = "656232055" ) - public class53 method223(int var1) { - if (this.field216.getGroupCount() == 1) { - return this.method221(0, var1); - } else if (this.field216.getGroupFileCount(var1) == 1) { - return this.method221(var1, 0); + public class53 method239(int var1) { + if (this.field212.getGroupCount() == 1) { + return this.method237(0, var1); + } else if (this.field212.getGroupFileCount(var1) == 1) { + return this.method237(var1, 0); } else { throw new RuntimeException(); } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(II)Lbu;", - garbageValue = "1913686453" + descriptor = "(IS)Lbt;", + garbageValue = "26403" ) - public RawSound method225(int var1) { + public RawSound method240(int var1) { return this.getSoundEffect(var1, (int[])null); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(IIZI)J", - garbageValue = "1190461425" + garbageValue = "414633479" ) - long method226(int var1, int var2, boolean var3) { + long method241(int var1, int var2, boolean var3) { int var4 = var2 ^ (var1 << 4 & 65535 | var1 >> 12); var4 |= var1 << 16; return var3 ? (long)var4 ^ 4294967296L : (long)var4; } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(III)Lmi;", - garbageValue = "139540914" - ) - @Export("getWidgetChild") - public static Widget getWidgetChild(int var0, int var1) { - Widget var2 = class92.getWidget(var0); - if (var1 == -1) { - return var2; - } else { - return var2 != null && var2.children != null && var1 < var2.children.length ? var2.children[var1] : null; - } - } - - @ObfuscatedName("ac") + @ObfuscatedName("ma") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1117171488" + descriptor = "([Lnn;II)V", + garbageValue = "685108589" ) - @Export("clearItemContainer") - static void clearItemContainer(int var0) { - ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var1 != null) { - for (int var2 = 0; var2 < var1.ids.length; ++var2) { - var1.ids[var2] = -1; - var1.quantities[var2] = 0; - } - - } - } - - @ObfuscatedName("cw") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1164645966" - ) - static int method228(int var0, Script var1, boolean var2) { - int var3; - int var5; - int var7; - Object var21; - class506 var22; - if (var0 != 7500 && var0 != 7508) { - if (var0 != 7501) { - int var4; - int var6; - if (var0 == 7502) { - Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[Interpreter_intStackSize + 2]; - var6 = UserComparator3.method682(var4); - var7 = NewShit.method979(var4); - int var8 = MoveSpeed.method1141(var4); - DbRowType var23 = class159.getDbRowType(var3); - DbTableType var24 = class159.getDbTableType(var6); - int[] var25 = var24.types[var7]; - int var12 = 0; - int var13 = var25.length; - if (var8 >= 0) { - if (var8 >= var13) { - throw new RuntimeException("Tuple index out-of-bounds. Requested: " + var8 + ", Max: " + var13); - } - - var12 = var8; - var13 = var8 + 1; + @Export("drawModelComponents") + static final void drawModelComponents(Widget[] var0, int var1) { + for (int var2 = 0; var2 < var0.length; ++var2) { + Widget var3 = var0[var2]; + if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !class11.isComponentHidden(var3))) { + if (var3.type == 0) { + if (!var3.isIf3 && class11.isComponentHidden(var3) && var3 != Interpreter.mousedOverWidgetIf1) { + continue; } - Object[] var14 = var23.getColumnType(var7); - if (var14 == null && var24.defaultValues != null) { - var14 = var24.defaultValues[var7]; - } - - int var15; - int var16; - if (var14 == null) { - for (var15 = var12; var15 < var13; ++var15) { - var16 = var25[var15]; - class502 var17 = SequenceDefinition.method1074(var16); - if (var17 == class502.field4100) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } else { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = class127.method703(var16); - } - } - - return 1; - } else { - var15 = var14.length / var25.length; - if (var5 >= 0 && var5 < var15) { - for (var16 = var12; var16 < var13; ++var16) { - int var19 = var16 + var25.length * var5; - class502 var18 = SequenceDefinition.method1074(var25[var16]); - if (var18 == class502.field4100) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = (String)var14[var19]; - } else { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = (Integer)var14[var19]; - } - } - - return 1; - } else { - throw new RuntimeException(); - } - } - } else if (var0 == 7503) { - Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[Interpreter_intStackSize + 1]; - var5 = 0; - var6 = UserComparator3.method682(var4); - var7 = NewShit.method979(var4); - DbRowType var26 = class159.getDbRowType(var3); - DbTableType var9 = class159.getDbTableType(var6); - int[] var10 = var9.types[var7]; - Object[] var11 = var26.getColumnType(var7); - if (var11 == null && var9.defaultValues != null) { - var11 = var9.defaultValues[var7]; + drawModelComponents(var0, var3.id); + if (var3.children != null) { + drawModelComponents(var3.children, var3.id); } - if (var11 != null) { - var5 = var11.length / var10.length; + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); + if (var4 != null) { + ClanChannel.method862(var4.group); } + } - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = var5; - return 1; - } else if (var0 != 7504 && var0 != 7510) { - if (var0 == 7505) { - var3 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - DbRowType var28 = class159.getDbRowType(var3); - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = var28.tableId; - return 1; - } else if (var0 == 7506) { - var3 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - var4 = -1; - if (VarcInt.field1532 != null && var3 >= 0 && var3 < VarcInt.field1532.size()) { - var4 = (Integer)VarcInt.field1532.get(var3); + if (var3.type == 6) { + int var5; + if (var3.sequenceId != -1 || var3.sequenceId2 != -1) { + boolean var8 = WidgetDefinition.runCs1(var3); + if (var8) { + var5 = var3.sequenceId2; + } else { + var5 = var3.sequenceId; } - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = var4; - return 1; - } else if (var0 != 7507 && var0 != 7509) { - return 2; - } else { - var3 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - var21 = MoveSpeed.method1143(var3); - var5 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - var22 = class344.method1868(var5); - if (var22 == null) { - throw new RuntimeException(); - } else if (UserComparator3.method682(var5) != Client.field549) { - throw new RuntimeException(); - } else if (VarcInt.field1532 == null && VarcInt.field1532.isEmpty()) { - throw new RuntimeException(); - } else { - var7 = MoveSpeed.method1141(var5); - List var20 = var22.method2507(var21, var7); - VarcInt.field1532 = new LinkedList(VarcInt.field1532); - if (var20 != null) { - VarcInt.field1532.retainAll(var20); + if (var5 != -1) { + SequenceDefinition var6 = DynamicObject.SequenceDefinition_get(var5); + if (!var6.isCachedModelIdSet()) { + for (var3.modelFrameCycle += Client.field460; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; class159.invalidateWidget(var3)) { + var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame]; + ++var3.modelFrame; + if (var3.modelFrame >= var6.frameIds.length) { + var3.modelFrame -= var6.frameCount; + if (var3.modelFrame < 0 || var3.modelFrame >= var6.frameIds.length) { + var3.modelFrame = 0; + } + } + } } else { - VarcInt.field1532.clear(); - } + var3.modelFrame += Client.field460; + int var7 = var6.method1052(); + if (var3.modelFrame >= var7) { + var3.modelFrame -= var6.frameCount; + if (var3.modelFrame < 0 || var3.modelFrame >= var7) { + var3.modelFrame = 0; + } + } - Decimator.field296 = VarcInt.field1532.iterator(); - if (var0 == 7507) { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = VarcInt.field1532.size(); + class159.invalidateWidget(var3); } - - return 1; } } - } else { - --Interpreter_intStackSize; - var3 = Interpreter.Interpreter_intStack[Interpreter_intStackSize]; - class506 var27 = IgnoreList.method2190(var3); - if (var27 == null) { - throw new RuntimeException(); - } else { - VarcInt.field1532 = var27.method2507(0, 0); - var5 = 0; - if (VarcInt.field1532 != null) { - Client.field549 = var3; - Decimator.field296 = VarcInt.field1532.iterator(); - var5 = VarcInt.field1532.size(); - } - - if (var0 == 7504) { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = var5; - } - return 1; + if (var3.rotationKey != 0 && !var3.isIf3) { + int var9 = var3.rotationKey >> 16; + var5 = var3.rotationKey << 16 >> 16; + var9 *= Client.field460; + var5 *= Client.field460; + var3.modelAngleX = var9 + var3.modelAngleX & 2047; + var3.modelAngleY = var5 + var3.modelAngleY & 2047; + class159.invalidateWidget(var3); } } - } else { - if (Decimator.field296 != null && Decimator.field296.hasNext()) { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = (Integer)Decimator.field296.next(); - } else { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = -1; - } - - return 1; - } - } else { - var3 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - var21 = MoveSpeed.method1143(var3); - var5 = Interpreter.Interpreter_intStack[--Interpreter_intStackSize]; - var22 = class344.method1868(var5); - if (var22 == null) { - throw new RuntimeException(); - } else { - var7 = MoveSpeed.method1141(var5); - VarcInt.field1532 = var22.method2507(var21, var7); - if (VarcInt.field1532 != null) { - Client.field549 = UserComparator3.method682(var5); - Decimator.field296 = VarcInt.field1532.iterator(); - if (var0 == 7500) { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = VarcInt.field1532.size(); - } - } else { - Client.field549 = -1; - Decimator.field296 = null; - if (var0 == 7500) { - Interpreter.Interpreter_intStack[++Interpreter_intStackSize - 1] = 0; - } - } - - return 1; } } + } } \ No newline at end of file diff --git a/osrs/src/main/java/SoundEffect.java b/osrs/src/main/java/SoundEffect.java index aa01b3be8..11ac1aa1f 100644 --- a/osrs/src/main/java/SoundEffect.java +++ b/osrs/src/main/java/SoundEffect.java @@ -3,24 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bp") +@ObfuscatedName("bo") @Implements("SoundEffect") public class SoundEffect { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "[Lcq;" ) @Export("instruments") Instrument[] instruments; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("start") int start; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("end") int end; @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) SoundEffect(Buffer var1) { this.instruments = new Instrument[10]; @@ -38,9 +38,9 @@ public class SoundEffect { this.end = var1.readUnsignedShort(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "()Lbu;" + descriptor = "()Lbt;" ) @Export("toRawSound") public RawSound toRawSound() { @@ -48,7 +48,7 @@ public RawSound toRawSound() { return new RawSound(22050, var1, this.start * 22050 / 1000, this.end * 22050 / 1000); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("calculateDelay") public final int calculateDelay() { int var1 = 9999999; @@ -83,7 +83,7 @@ public final int calculateDelay() { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("mix") final byte[] mix() { int var1 = 0; @@ -122,9 +122,9 @@ final byte[] mix() { } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;II)Lbp;" + descriptor = "(Lol;II)Lbo;" ) @Export("readSoundEffect") public static SoundEffect readSoundEffect(AbstractArchive var0, int var1, int var2) { diff --git a/osrs/src/main/java/SoundEnvelope.java b/osrs/src/main/java/SoundEnvelope.java index b5f50238b..eb7ac3ef7 100644 --- a/osrs/src/main/java/SoundEnvelope.java +++ b/osrs/src/main/java/SoundEnvelope.java @@ -3,40 +3,40 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("br") +@ObfuscatedName("bh") @Implements("SoundEnvelope") public class SoundEnvelope { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("segments") int segments; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("durations") int[] durations; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("phases") int[] phases; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("start") int start; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("end") int end; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("form") int form; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("ticks") int ticks; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("phaseIndex") int phaseIndex; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("step") int step; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("amplitude") int amplitude; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("max") int max; @@ -50,9 +50,9 @@ public class SoundEnvelope { this.phases[1] = 65535; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) @Export("decode") final void decode(Buffer var1) { @@ -62,9 +62,9 @@ final void decode(Buffer var1) { this.decodeSegments(var1); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) @Export("decodeSegments") final void decodeSegments(Buffer var1) { @@ -79,7 +79,7 @@ final void decodeSegments(Buffer var1) { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("reset") final void reset() { this.ticks = 0; @@ -89,7 +89,7 @@ final void reset() { this.max = 0; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("doStep") final int doStep(int var1) { if (this.max >= this.ticks) { diff --git a/osrs/src/main/java/SoundSystem.java b/osrs/src/main/java/SoundSystem.java index 11b89467f..bc4d16547 100644 --- a/osrs/src/main/java/SoundSystem.java +++ b/osrs/src/main/java/SoundSystem.java @@ -3,23 +3,22 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("be") +@ObfuscatedName("bz") @Implements("SoundSystem") public class SoundSystem implements Runnable { - @ObfuscatedName("ad") + @ObfuscatedName("ge") @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Loh;" ) - @Export("logoSprite") - static IndexedSprite logoSprite; - @ObfuscatedName("au") + static Archive field209; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lbb;" + descriptor = "[Lby;" ) @Export("players") - volatile PcmPlayer[] players; + public volatile PcmPlayer[] players; - SoundSystem() { + public SoundSystem() { this.players = new PcmPlayer[2]; } @@ -34,28 +33,642 @@ public void run() { } } } catch (Exception var4) { - Messages.RunException_sendStackTrace((String)null, var4); + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var4); } } - @ObfuscatedName("nx") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(IIZB)V", + descriptor = "(B)Liu;", + garbageValue = "1" + ) + public static Clock method230() { + try { + return new NanoClock(); + } catch (Throwable var1) { + return new MilliClock(); + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "467776303" + ) + @Export("Login_promptCredentials") + static void Login_promptCredentials(boolean var0) { + if (!SpriteMask.client.method364() && !SpriteMask.client.method366() && !SpriteMask.client.method365()) { + Login.Login_response1 = ""; + Login.Login_response2 = "Enter your username/email & password."; + Login.Login_response3 = ""; + UserComparator7.method674(2); + if (var0) { + Login.Login_password = ""; + } + + Frames.method1519(); + class150.method785(); + } else { + UserComparator7.method674(10); + } + } + + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", garbageValue = "0" ) - static final void method219(int var0, int var1, boolean var2) { - if (Client.currentClanChannels[var0] != null) { - if (var1 >= 0 && var1 < Client.currentClanChannels[var0].method859()) { - ClanChannelMember var3 = (ClanChannelMember)Client.currentClanChannels[var0].members.get(var1); - PacketBufferNode var4 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.AFFINEDCLANSETTINGS_SETMUTED_FROMCHANNEL, Client.packetWriter.isaacCipher); - var4.packetBuffer.writeByte(4 + AbstractSocket.stringCp1252NullTerminatedByteSize(var3.username.getName())); - var4.packetBuffer.writeByte(var0); - var4.packetBuffer.writeShort(var1); - var4.packetBuffer.writeBoolean(var2); - var4.packetBuffer.writeStringCp1252NullTerminated(var3.username.getName()); - Client.packetWriter.addNode(var4); + static int method232(int var0, Script var1, boolean var2) { + int var3; + if (var0 == 5504) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + int var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (!Client.isCameraLocked) { + Client.camAngleX = var3; + Client.camAngleY = var4; + } + + return 1; + } else if (var0 == 5505) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.camAngleX; + return 1; + } else if (var0 == 5506) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.camAngleY; + return 1; + } else if (var0 == 5530) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3 < 0) { + var3 = 0; + } + + Client.camFollowHeight = var3; + return 1; + } else if (var0 == 5531) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.camFollowHeight; + return 1; + } else { + return 2; + } + } + + @ObfuscatedName("kg") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "702782966" + ) + static final void method233(int var0, int var1, int var2, int var3) { + for (int var4 = 0; var4 < Client.rootWidgetCount; ++var4) { + if (Client.rootWidgetXs[var4] + Client.rootWidgetWidths[var4] > var0 && Client.rootWidgetXs[var4] < var0 + var2 && Client.rootWidgetYs[var4] + Client.rootWidgetHeights[var4] > var1 && Client.rootWidgetYs[var4] < var3 + var1) { + Client.field408[var4] = true; + } + } + + } + + @ObfuscatedName("lk") + @ObfuscatedSignature( + descriptor = "([Lnn;IIIIIIIII)V", + garbageValue = "-610795305" + ) + @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.method1427(); + + for (int var9 = 0; var9 < var0.length; ++var9) { + Widget var10 = var0[var9]; + if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) { + int var11; + if (var8 == -1) { + Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; + Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y; + Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width; + Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height; + var11 = ++Client.rootWidgetCount - 1; + } else { + var11 = var8; + } + + var10.rootIndex = var11; + var10.cycle = Client.cycle; + if (!var10.isIf3 || !class11.isComponentHidden(var10)) { + if (var10.contentType > 0) { + class348.method1886(var10); + } + + int var12 = var10.x + var6; + int var13 = var7 + var10.y; + int var14 = var10.transparencyTop; + int var15; + int var16; + if (var10 == Client.clickedWidget) { + if (var1 != -1412584499 && !var10.isScrollBar) { + UserComparator10.field1197 = var0; + ParamComposition.field1629 = var6; + PendingSpawn.field950 = var7; + continue; + } + + if (Client.isDraggingWidget && Client.field396) { + var15 = MouseHandler.MouseHandler_x; + var16 = MouseHandler.MouseHandler_y; + var15 -= Client.widgetClickX; + var16 -= Client.widgetClickY; + if (var15 < Client.field512) { + var15 = Client.field512; + } + + if (var15 + var10.width > Client.field512 + Client.clickedWidgetParent.width) { + var15 = Client.field512 + Client.clickedWidgetParent.width - var10.width; + } + + if (var16 < Client.field513) { + var16 = Client.field513; + } + + if (var16 + var10.height > Client.field513 + Client.clickedWidgetParent.height) { + var16 = Client.field513 + Client.clickedWidgetParent.height - var10.height; + } + + var12 = var15; + var13 = var16; + } + + if (!var10.isScrollBar) { + var14 = 128; + } + } + + int var17; + int var18; + int var19; + int var20; + int var21; + int var22; + if (var10.type == 9) { + var19 = var12; + var20 = var13; + var21 = var12 + var10.width; + var22 = var13 + var10.height; + if (var21 < var12) { + var19 = var21; + var21 = var12; + } + + if (var22 < var13) { + var20 = var22; + var22 = var13; + } + + ++var21; + ++var22; + var15 = var19 > var2 ? var19 : var2; + var16 = var20 > var3 ? var20 : var3; + var17 = var21 < var4 ? var21 : var4; + var18 = var22 < var5 ? var22 : var5; + } else { + var19 = var12 + var10.width; + var20 = var13 + var10.height; + var15 = var12 > var2 ? var12 : var2; + var16 = var13 > var3 ? var13 : var3; + var17 = var19 < var4 ? var19 : var4; + var18 = var20 < var5 ? var20 : var5; + } + + if (!var10.isIf3 || var15 < var17 && var16 < var18) { + if (var10.contentType != 0) { + if (var10.contentType == 1336) { + if (WorldMapIcon_1.clientPreferences.method547()) { + var13 += 15; + ItemLayer.fontPlain12.drawRightAligned("Fps:" + GameEngine.fps, var12 + var10.width, var13, 16776960, -1); + var13 += 15; + Runtime var41 = Runtime.getRuntime(); + var20 = (int)((var41.totalMemory() - var41.freeMemory()) / 1024L); + var21 = 16776960; + if (var20 > 327680 && !Client.isLowDetail) { + var21 = 16711680; + } + + ItemLayer.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1); + var13 += 15; + } + continue; + } + + if (var10.contentType == 1337) { + Client.viewportX = var12; + Client.viewportY = var13; + PlayerComposition.drawEntities(var12, var13, var10.width, var10.height); + Client.field407[var10.rootIndex] = true; + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1338) { + class36.drawMinimap(var10, var12, var13, var11); + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1339) { + MilliClock.method1103(var10, var12, var13, var11); + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + continue; + } + + if (var10.contentType == 1400) { + NewShit.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle); + } + + if (var10.contentType == 1401) { + NewShit.worldMap.drawOverview(var12, var13, var10.width, var10.height); + } + + if (var10.contentType == 1402) { + EnumComposition.field1505.draw(var12, Client.cycle); + } + } + + if (var10.type == 0) { + if (!var10.isIf3 && class11.isComponentHidden(var10) && var10 != Interpreter.mousedOverWidgetIf1) { + continue; + } + + if (!var10.isIf3) { + if (var10.scrollY > var10.scrollHeight - var10.height) { + var10.scrollY = var10.scrollHeight - var10.height; + } + + if (var10.scrollY < 0) { + var10.scrollY = 0; + } + } + + drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + if (var10.children != null) { + drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + } + + InterfaceParent var28 = (InterfaceParent)Client.interfaceParents.get((long)var10.id); + if (var28 != null) { + Canvas.drawWidgets(var28.group, var15, var16, var17, var18, var12, var13, var11); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer3D.method1427(); + } else if (var10.type == 11) { + if (class11.isComponentHidden(var10) && var10 != Interpreter.mousedOverWidgetIf1) { + continue; + } + + if (var10.children != null) { + drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + Rasterizer3D.method1427(); + } + + if (Client.isResizable || Client.field409[var11] || Client.gameDrawingMode > 1) { + if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) { + Varcs.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight); + } + + if (var10.type != 1) { + if (var10.type == 3) { + if (WidgetDefinition.runCs1(var10)) { + var19 = var10.color2; + if (var10 == Interpreter.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { + var19 = var10.mouseOverColor2; + } + } else { + var19 = var10.color; + if (var10 == Interpreter.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { + var19 = var10.mouseOverColor; + } + } + + if (var10.fill) { + switch(var10.fillMode.field4261) { + case 1: + Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); + break; + case 2: + Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255)); + break; + default: + if (var14 == 0) { + Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19); + } else { + Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); + } + } + } else if (var14 == 0) { + Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19); + } else { + Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); + } + } else if (var10.type == 4) { + Font var40 = var10.getFont(HealthBarDefinition.widgetDefinition); + if (var40 == null) { + if (Widget.field2976) { + class159.invalidateWidget(var10); + } + } else { + String var42 = var10.text; + if (WidgetDefinition.runCs1(var10)) { + var20 = var10.color2; + if (var10 == Interpreter.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { + var20 = var10.mouseOverColor2; + } + + if (var10.text2.length() > 0) { + var42 = var10.text2; + } + } else { + var20 = var10.color; + if (var10 == Interpreter.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { + var20 = var10.mouseOverColor; + } + } + + if (var10.isIf3 && var10.itemId != -1) { + ItemComposition var43 = class214.ItemDefinition_get(var10.itemId); + var42 = var43.name; + if (var42 == null) { + var42 = "null"; + } + + if ((var43.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) { + var42 = class167.colorStartTag(16748608) + var42 + "" + " " + 'x' + class355.formatItemStacks(var10.itemQuantity); + } + } + + if (var10 == Client.meslayerContinueWidget) { + var42 = "Please wait..."; + var20 = var10.color; + } + + if (!var10.isIf3) { + var42 = HitSplatDefinition.method998(var42, var10); + } + + var40.method2111(var42, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, class478.method2364(var10.transparencyTop), var10.textXAlignment, var10.textYAlignment, var10.textLineHeight); + } + } else { + int var23; + int var24; + int var25; + if (var10.type == 5) { + SpritePixels var38; + if (!var10.isIf3) { + var38 = var10.getSprite(HealthBarDefinition.widgetDefinition, WidgetDefinition.runCs1(var10), class60.urlRequester); + if (var38 != null) { + var38.drawTransBgAt(var12, var13); + } else if (Widget.field2976) { + class159.invalidateWidget(var10); + } + } else { + if (var10.itemId != -1) { + var38 = class6.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false); + } else { + var38 = var10.getSprite(HealthBarDefinition.widgetDefinition, false, class60.urlRequester); + } + + if (var38 == null) { + if (Widget.field2976) { + class159.invalidateWidget(var10); + } + } else { + var20 = var38.width; + var21 = var38.height; + if (!var10.spriteTiling) { + var22 = var10.width * 4096 / var20; + if (var10.spriteAngle != 0) { + var38.method2704(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22); + } else if (var14 != 0) { + var38.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255)); + } else if (var20 == var10.width && var21 == var10.height) { + var38.drawTransBgAt(var12, var13); + } else { + var38.drawScaledAt(var12, var13, var10.width, var10.height); + } + } else { + Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height); + var22 = (var20 - 1 + var10.width) / var20; + var23 = (var21 - 1 + var10.height) / var21; + + for (var24 = 0; var24 < var22; ++var24) { + for (var25 = 0; var25 < var23; ++var25) { + if (var10.spriteAngle != 0) { + var38.method2704(var20 / 2 + var12 + var20 * var24, var21 / 2 + var13 + var21 * var25, var10.spriteAngle, 4096); + } else if (var14 != 0) { + var38.drawTransAt(var12 + var20 * var24, var13 + var21 * var25, 256 - (var14 & 255)); + } else { + var38.drawTransBgAt(var12 + var20 * var24, var13 + var25 * var21); + } + } + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + } + } + } + } else { + int var34; + if (var10.type == 6) { + boolean var36 = WidgetDefinition.runCs1(var10); + if (var36) { + var20 = var10.sequenceId2; + } else { + var20 = var10.sequenceId; + } + + Model var39 = null; + var22 = 0; + if (var10.itemId != -1) { + ItemComposition var44 = class214.ItemDefinition_get(var10.itemId); + if (var44 != null) { + var44 = var44.getCountObj(var10.itemQuantity); + var39 = var44.getModel(1); + if (var39 != null) { + var39.calculateBoundsCylinder(); + var22 = var39.height / 2; + } else { + class159.invalidateWidget(var10); + } + } + } else if (var10.modelType == 5) { + if (var10.modelId == 0) { + var39 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); + } else { + var39 = class229.localPlayer.getModel(); + } + } else if (var10.modelType == 7) { + var39 = var10.field3125.getModel((SequenceDefinition)null, -1, DynamicObject.SequenceDefinition_get(class229.localPlayer.idleSequence), class229.localPlayer.movementFrame); + } else { + NPCComposition var45 = null; + NewShit var32 = null; + if (var10.modelType == 6) { + var25 = var10.modelId; + if (var25 >= 0 && var25 < Client.npcs.length) { + NPC var26 = Client.npcs[var25]; + if (var26 != null) { + var45 = var26.definition; + var32 = var26.method590(); + } + } + } + + SequenceDefinition var33 = null; + var34 = -1; + if (var20 != -1) { + var33 = DynamicObject.SequenceDefinition_get(var20); + var34 = var10.modelFrame; + } + + var39 = var10.getModel(HealthBarDefinition.widgetDefinition, var33, var34, var36, class229.localPlayer.appearance, var45, var32); + if (var39 == null && Widget.field2976) { + class159.invalidateWidget(var10); + } + } + + Rasterizer3D.method1430(var10.width / 2 + var12, var10.height / 2 + var13); + var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16; + var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16; + if (var39 != null) { + if (!var10.isIf3) { + var39.method1556(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24); + } else { + var39.calculateBoundsCylinder(); + if (var10.modelOrthog) { + var39.method1557(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var23 + var22 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom); + } else { + var39.method1556(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY); + } + } + } + + Rasterizer3D.method1429(); + } else { + Font var29; + if (var10.type == 8 && var10 == SwapSongTask.field3744 && Client.field492 == Client.field493) { + var19 = 0; + var20 = 0; + var29 = ItemLayer.fontPlain12; + String var30 = var10.text; + + String var31; + for (var30 = HitSplatDefinition.method998(var30, var10); var30.length() > 0; var20 = var20 + var29.ascent + 1) { + var24 = var30.indexOf("
"); + if (var24 != -1) { + var31 = var30.substring(0, var24); + var30 = var30.substring(var24 + 4); + } else { + var31 = var30; + var30 = ""; + } + + var25 = var29.stringWidth(var31); + if (var25 > var19) { + var19 = var25; + } + } + + var19 += 6; + var20 += 7; + var24 = var12 + var10.width - 5 - var19; + var25 = var13 + var10.height + 5; + if (var24 < var12 + 5) { + var24 = var12 + 5; + } + + if (var19 + var24 > var4) { + var24 = var4 - var19; + } + + if (var20 + var25 > var5) { + var25 = var5 - var20; + } + + Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120); + Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0); + var30 = var10.text; + var34 = var25 + var29.ascent + 2; + + for (var30 = HitSplatDefinition.method998(var30, var10); var30.length() > 0; var34 = var34 + var29.ascent + 1) { + int var27 = var30.indexOf("
"); + if (var27 != -1) { + var31 = var30.substring(0, var27); + var30 = var30.substring(var27 + 4); + } else { + var31 = var30; + var30 = ""; + } + + var29.draw(var31, var24 + 3, var34, 0, -1); + } + } + + if (var10.type == 9) { + if (var10.field2989) { + var19 = var12; + var20 = var13 + var10.height; + var21 = var12 + var10.width; + var22 = var13; + } else { + var19 = var12; + var20 = var13; + var21 = var12 + var10.width; + var22 = var13 + var10.height; + } + + if (var10.lineWid == 1) { + Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color); + } else { + UrlRequest.method661(var19, var20, var21, var22, var10.color, var10.lineWid); + } + } else if (var10.type == 12) { + class341 var37 = var10.method1871(); + class336 var35 = var10.method1872(); + if (var37 != null && var35 != null && var37.method1815()) { + var29 = var10.getFont(HealthBarDefinition.widgetDefinition); + if (var29 != null) { + Client.field649.method2712(var12, var13, var10.width, var10.height, var37.method1816(), var37.method1817(), var37.method1813(), var37.method1814(), var37.method1812()); + var22 = var10.textShadowed ? var10.spriteShadow : -1; + if (!var37.method1810() && var37.method1807().method2053()) { + Client.field649.method2713(var35.field2922, var22, var35.field2923, var35.field2921); + Client.field649.method2714(var37.method1808(), var29); + } else { + Client.field649.method2713(var10.color, var22, var35.field2923, var35.field2921); + Client.field649.method2714(var37.method1807(), var29); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); + } + } + } + } + } + } + } + } + } + } } } + + } + + @ObfuscatedName("mc") + @ObfuscatedSignature( + descriptor = "(IS)V", + garbageValue = "4026" + ) + static final void method235(int var0) { + var0 = Math.min(Math.max(var0, 0), 127); + WorldMapIcon_1.clientPreferences.setCurrentSoundEffectVolume(var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/SpotAnimation.java b/osrs/src/main/java/SpotAnimation.java index c3d8fdb9f..b5c90948e 100644 --- a/osrs/src/main/java/SpotAnimation.java +++ b/osrs/src/main/java/SpotAnimation.java @@ -1,29 +1,29 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("un") +@ObfuscatedName("vl") @Implements("SpotAnimation") public class SpotAnimation extends Node { - @ObfuscatedName("au") - public int field4281; - @ObfuscatedName("ae") - public int field4278; - @ObfuscatedName("ao") - public int field4279; @ObfuscatedName("at") - public int field4280; - @ObfuscatedName("ac") - public int field4277; + public int field4313; + @ObfuscatedName("ah") + public int field4310; + @ObfuscatedName("ar") + public int field4312; + @ObfuscatedName("ao") + public int field4311; + @ObfuscatedName("ab") + public int field4309; public SpotAnimation(int var1, int var2, int var3, int var4) { - this.field4281 = -1; - this.field4278 = 0; - this.field4279 = 0; - this.field4280 = 0; - this.field4277 = 0; - this.field4281 = var1; - this.field4277 = var2; - this.field4280 = var3; - this.field4278 = var4; + this.field4313 = -1; + this.field4310 = 0; + this.field4312 = 0; + this.field4311 = 0; + this.field4309 = 0; + this.field4313 = var1; + this.field4309 = var2; + this.field4311 = var3; + this.field4310 = var4; } } \ No newline at end of file diff --git a/osrs/src/main/java/SpotAnimationDefinition.java b/osrs/src/main/java/SpotAnimationDefinition.java index 5daec246a..87190df0f 100644 --- a/osrs/src/main/java/SpotAnimationDefinition.java +++ b/osrs/src/main/java/SpotAnimationDefinition.java @@ -3,75 +3,72 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; - @ObfuscatedName("ha") @Implements("SpotAnimationDefinition") public class SpotAnimationDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("SpotAnimationDefinition_archive") - public static AbstractArchive SpotAnimationDefinition_archive; - @ObfuscatedName("ae") + static AbstractArchive SpotAnimationDefinition_archive; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("SpotAnimationDefinition_modelArchive") - public static AbstractArchive SpotAnimationDefinition_modelArchive; - @ObfuscatedName("ao") + static AbstractArchive SpotAnimationDefinition_modelArchive; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("SpotAnimationDefinition_cached") public static EvictingDualNodeHashTable SpotAnimationDefinition_cached; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("SpotAnimationDefinition_cachedModels") public static EvictingDualNodeHashTable SpotAnimationDefinition_cachedModels; - @ObfuscatedName("sl") - @Export("ClanChat_inClanChat") - static boolean ClanChat_inClanChat; - @ObfuscatedName("ac") + @ObfuscatedName("gm") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1597; + @ObfuscatedName("ab") @Export("id") int id; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("archive") int archive; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("sequence") public int sequence; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("recolorFrom") short[] recolorFrom; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("recolorTo") short[] recolorTo; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("retextureFrom") short[] retextureFrom; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("retextureTo") short[] retextureTo; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("widthScale") int widthScale; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("heightScale") int heightScale; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("orientation") int orientation; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("ambient") int ambient; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("contrast") int contrast; @@ -89,10 +86,10 @@ public class SpotAnimationDefinition extends DualNode { this.contrast = 0; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "127" + descriptor = "(Luj;I)V", + garbageValue = "-1590582359" ) @Export("decode") void decode(Buffer var1) { @@ -108,8 +105,8 @@ void decode(Buffer var1) { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "83" + descriptor = "(Luj;IB)V", + garbageValue = "-22" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -153,17 +150,17 @@ void decodeNext(Buffer var1, int var2) { } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(II)Ljr;", - garbageValue = "620606809" + descriptor = "(IB)Lka;", + garbageValue = "-10" ) @Export("getModel") public final Model getModel(int var1) { - Model var2 = this.method1002(); + Model var2 = this.method966(); Model var3; if (this.sequence != -1 && var1 != -1) { - var3 = EnumComposition.SequenceDefinition_get(this.sequence).transformSpotAnimationModel(var2, var1); + var3 = DynamicObject.SequenceDefinition_get(this.sequence).transformSpotAnimationModel(var2, var1); } else { var3 = var2.toSharedSpotAnimationModel(true); } @@ -192,12 +189,12 @@ public final Model getModel(int var1) { return var3; } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)Ljr;", - garbageValue = "-10" + descriptor = "(B)Lka;", + garbageValue = "115" ) - public final Model method1002() { + public final Model method966() { Model var1 = (Model)SpotAnimationDefinition_cachedModels.get((long)this.id); if (var1 == null) { ModelData var2 = ModelData.ModelData_get(SpotAnimationDefinition_modelArchive, this.archive, 0); @@ -225,29 +222,18 @@ public final Model method1002() { return var1; } - @ObfuscatedName("aa") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Ljava/util/Date;", - garbageValue = "1382100876" + descriptor = "(B)J", + garbageValue = "32" ) - static Date method1003() throws ParseException { - SimpleDateFormat var0 = new SimpleDateFormat("ddMMyyyyHH", Locale.ENGLISH); - var0.setLenient(false); - StringBuilder var1 = new StringBuilder(); - String[] var2 = Login.field768; - - for (int var3 = 0; var3 < var2.length; ++var3) { - String var4 = var2[var3]; - if (var4 == null) { - PcmPlayer.method212(7); - class318.setLoginResponseString("Date not valid.", "Please ensure all characters are populated.", ""); - return null; - } - - var1.append(var4); + public static final synchronized long method962() { + long var0 = System.currentTimeMillis(); + if (var0 < class312.field2773) { + class312.field2772 += class312.field2773 - var0; } - var1.append("12"); - return var0.parse(var1.toString()); + class312.field2773 = var0; + return class312.field2772 + var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/SpriteMask.java b/osrs/src/main/java/SpriteMask.java index c5fc33b4f..c2ad3cef5 100644 --- a/osrs/src/main/java/SpriteMask.java +++ b/osrs/src/main/java/SpriteMask.java @@ -6,19 +6,22 @@ @ObfuscatedName("me") @Implements("SpriteMask") public class SpriteMask extends DualNode { - @ObfuscatedName("az") - @Export("SpriteBuffer_spriteHeights") - static int[] SpriteBuffer_spriteHeights; - @ObfuscatedName("au") + @ObfuscatedName("bk") + @Export("client") + @ObfuscatedSignature( + descriptor = "Lclient;" + ) + public static Client client; + @ObfuscatedName("at") @Export("width") public final int width; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("height") public final int height; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("xWidths") public final int[] xWidths; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("xStarts") public final int[] xStarts; @@ -29,10 +32,10 @@ public class SpriteMask extends DualNode { this.xStarts = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(III)Z", - garbageValue = "152224212" + garbageValue = "1206229207" ) @Export("contains") public boolean contains(int var1, int var2) { @@ -45,13 +48,4 @@ public boolean contains(int var1, int var2) { return false; } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-1301851589" - ) - public static int method1706(int var0) { - return var0 >> 17 & 7; - } } \ No newline at end of file diff --git a/osrs/src/main/java/SpritePixels.java b/osrs/src/main/java/SpritePixels.java index 5a81c5f67..46b2c0cfb 100644 --- a/osrs/src/main/java/SpritePixels.java +++ b/osrs/src/main/java/SpritePixels.java @@ -3,28 +3,28 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ui") +@ObfuscatedName("uz") @Implements("SpritePixels") public final class SpritePixels extends Rasterizer2D { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("pixels") public int[] pixels; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("subWidth") public int subWidth; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("subHeight") public int subHeight; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("xOffset") public int xOffset; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("yOffset") int yOffset; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("width") public int width; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("height") public int height; @@ -43,9 +43,9 @@ public SpritePixels(int var1, int var2) { SpritePixels() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "()Lui;" + descriptor = "()Luz;" ) @Export("mirrorHorizontally") public SpritePixels mirrorHorizontally() { @@ -64,11 +64,11 @@ public SpritePixels mirrorHorizontally() { return var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "()Lui;" + descriptor = "()Luz;" ) - public SpritePixels method2657() { + public SpritePixels method2674() { SpritePixels var1 = new SpritePixels(this.subWidth, this.subHeight); var1.width = this.width; var1.height = this.height; @@ -83,9 +83,9 @@ public SpritePixels method2657() { return var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "()Lui;" + descriptor = "()Luz;" ) @Export("copyNormalized") public SpritePixels copyNormalized() { @@ -100,13 +100,13 @@ public SpritePixels copyNormalized() { return var1; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("setRaster") public void setRaster() { - Rasterizer2D.method2620(this.pixels, this.subWidth, this.subHeight, (float[])null); + Rasterizer2D.method2637(this.pixels, this.subWidth, this.subHeight, (float[])null); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("normalize") public void normalize() { if (this.subWidth != this.width || this.subHeight != this.height) { @@ -126,7 +126,7 @@ public void normalize() { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("pad") public void pad(int var1) { if (this.subWidth != this.width || this.subHeight != this.height) { @@ -168,7 +168,7 @@ public void pad(int var1) { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("flipHorizontally") public void flipHorizontally() { int[] var1 = new int[this.subWidth * this.subHeight]; @@ -184,7 +184,7 @@ public void flipHorizontally() { this.xOffset = this.width - this.subWidth - this.xOffset; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("flipVertically") public void flipVertically() { int[] var1 = new int[this.subWidth * this.subHeight]; @@ -200,7 +200,7 @@ public void flipVertically() { this.yOffset = this.height - this.subHeight - this.yOffset; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("outline") public void outline(int var1) { int[] var2 = new int[this.subWidth * this.subHeight]; @@ -228,7 +228,7 @@ public void outline(int var1) { this.pixels = var2; } - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("shadow") public void shadow(int var1) { for (int var2 = this.subHeight - 1; var2 > 0; --var2) { @@ -243,7 +243,7 @@ public void shadow(int var1) { } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("drawAt") public void drawAt(int var1, int var2) { var1 += this.xOffset; @@ -289,7 +289,7 @@ public void drawAt(int var1, int var2) { } } - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("drawTransBgAt") public void drawTransBgAt(int var1, int var2) { var1 += this.xOffset; @@ -335,7 +335,7 @@ public void drawTransBgAt(int var1, int var2) { } } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("drawScaledAt") public void drawScaledAt(int var1, int var2, int var3, int var4) { if (var3 > 0 && var4 > 0) { @@ -400,7 +400,7 @@ public void drawScaledAt(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("drawTransOverlayAt") public void drawTransOverlayAt(int var1, int var2, int var3, int var4) { if (var3 == 256) { @@ -450,7 +450,7 @@ public void drawTransOverlayAt(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("drawTransAt") public void drawTransAt(int var1, int var2, int var3) { var1 += this.xOffset; @@ -496,7 +496,7 @@ public void drawTransAt(int var1, int var2, int var3) { } } - @ObfuscatedName("as") + @ObfuscatedName("aw") @Export("drawTransScaledAt") public void drawTransScaledAt(int var1, int var2, int var3, int var4, int var5) { if (var3 > 0 && var4 > 0) { @@ -561,8 +561,8 @@ public void drawTransScaledAt(int var1, int var2, int var3, int var4, int var5) } } - @ObfuscatedName("aj") - public void method2678(int var1, int var2, int var3) { + @ObfuscatedName("an") + public void method2695(int var1, int var2, int var3) { var1 += this.xOffset; var2 += this.yOffset; int var4 = var1 + var2 * Rasterizer2D.Rasterizer2D_width; @@ -603,16 +603,16 @@ public void method2678(int var1, int var2, int var3) { if (var7 > 0 && var6 > 0) { if (var3 == 256) { - method2679(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9); + method2696(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9); } else { - method2680(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9, var3); + method2697(0, 0, 0, Rasterizer2D.Rasterizer2D_pixels, this.pixels, var5, 0, var4, 0, var7, var6, var8, var9, var3); } } } - @ObfuscatedName("ak") - public void method2681(int var1, int var2, int var3, int var4, int var5) { + @ObfuscatedName("af") + public void method2698(int var1, int var2, int var3, int var4, int var5) { if (var3 > 0 && var4 > 0) { int var6 = this.subWidth; int var7 = this.subHeight; @@ -672,16 +672,16 @@ public void method2681(int var1, int var2, int var3, int var4, int var5) { } if (var5 == 256) { - method2682(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6); + method2699(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6); } else { - method2683(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6, var5); + method2700(0, 0, 0, var8, this.pixels, Rasterizer2D.Rasterizer2D_pixels, 0, 0, -var4, var9, var14, var15, var3, var12, var13, var6, var5); } } } - @ObfuscatedName("bk") - public void method2684(int var1, int var2, int var3, int var4, int var5, int var6, int[] var7, int[] var8) { + @ObfuscatedName("bl") + public void method2701(int var1, int var2, int var3, int var4, int var5, int var6, int[] var7, int[] var8) { int var9 = var2 < 0 ? -var2 : 0; int var10 = var2 + this.subHeight <= var6 ? this.subHeight : var6 - var2; int var11 = var1 < 0 ? -var1 : 0; @@ -728,7 +728,7 @@ public void method2684(int var1, int var2, int var3, int var4, int var5, int var } - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("drawRotatedMaskedCenteredAround") public void drawRotatedMaskedCenteredAround(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int[] var9, int[] var10) { try { @@ -763,8 +763,8 @@ public void drawRotatedMaskedCenteredAround(int var1, int var2, int var3, int va } - @ObfuscatedName("bt") - public void method2686(int var1, int var2, int var3, int var4, int var5, int var6, double var7, int var9) { + @ObfuscatedName("bv") + public void method2703(int var1, int var2, int var3, int var4, int var5, int var6, double var7, int var9) { try { int var10 = -var3 / 2; int var11 = -var4 / 2; @@ -802,13 +802,13 @@ public void method2686(int var1, int var2, int var3, int var4, int var5, int var } - @ObfuscatedName("bd") - public void method2687(int var1, int var2, int var3, int var4) { - this.method2688(this.width << 3, this.height << 3, var1 << 4, var2 << 4, var3, var4); + @ObfuscatedName("bf") + public void method2704(int var1, int var2, int var3, int var4) { + this.method2705(this.width << 3, this.height << 3, var1 << 4, var2 << 4, var3, var4); } - @ObfuscatedName("by") - void method2688(int var1, int var2, int var3, int var4, int var5, int var6) { + @ObfuscatedName("bg") + void method2705(int var1, int var2, int var3, int var4, int var5, int var6) { if (var6 != 0) { var1 -= this.xOffset << 4; var2 -= this.yOffset << 4; @@ -1276,7 +1276,7 @@ void method2688(int var1, int var2, int var3, int var4, int var5, int var6) { } } - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("drawScaledWorldmap") public void drawScaledWorldmap(int var1, int var2, int var3, int var4) { if (var3 <= this.width && var4 <= this.height) { @@ -1399,7 +1399,7 @@ public void drawScaledWorldmap(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("Sprite_draw") static void Sprite_draw(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7) { for (int var8 = -var5; var8 < 0; ++var8) { @@ -1419,7 +1419,7 @@ static void Sprite_draw(int[] var0, int[] var1, int var2, int var3, int var4, in } - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("Sprite_drawTransBg") static void Sprite_drawTransBg(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { int var9 = -(var5 >> 2); @@ -1472,7 +1472,7 @@ static void Sprite_drawTransBg(int[] var0, int[] var1, int var2, int var3, int v } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("Sprite_drawScaled") static void Sprite_drawScaled(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11) { int var12 = var3; @@ -1524,7 +1524,7 @@ static void Sprite_drawTransOverlay(int[] var0, int[] var1, int var2, int var3, } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @Export("Sprite_drawTransparent") static void Sprite_drawTransparent(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9) { int var10 = 256 - var9; @@ -1546,7 +1546,7 @@ static void Sprite_drawTransparent(int[] var0, int[] var1, int var2, int var3, i } - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("Sprite_drawTransScaled") static void Sprite_drawTransScaled(int[] var0, int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { int var13 = 256 - var12; @@ -1574,8 +1574,8 @@ static void Sprite_drawTransScaled(int[] var0, int[] var1, int var2, int var3, i } - @ObfuscatedName("av") - static void method2679(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { + @ObfuscatedName("ag") + static void method2696(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12) { for (var8 = -var10; var8 < 0; ++var8) { for (var6 = -var9; var6 < 0; ++var6) { var0 = var4[var5++]; @@ -1596,8 +1596,8 @@ static void method2679(int var0, int var1, int var2, int[] var3, int[] var4, int } - @ObfuscatedName("aw") - static void method2680(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13) { + @ObfuscatedName("ad") + static void method2697(int var0, int var1, int var2, int[] var3, int[] var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13) { for (var8 = -var10; var8 < 0; ++var8) { for (var6 = -var9; var6 < 0; ++var6) { var0 = var4[var5++]; @@ -1620,8 +1620,8 @@ static void method2680(int var0, int var1, int var2, int[] var3, int[] var4, int } - @ObfuscatedName("bh") - static void method2682(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { + @ObfuscatedName("be") + static void method2699(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { for (int var16 = var3; var8 < 0; ++var8) { var7 = var15 * (var9 >> 16); @@ -1647,8 +1647,8 @@ static void method2682(int var0, int var1, int var2, int var3, int[] var4, int[] } - @ObfuscatedName("bj") - static void method2683(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16) { + @ObfuscatedName("bd") + static void method2700(int var0, int var1, int var2, int var3, int[] var4, int[] var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16) { for (int var17 = var3; var8 < 0; ++var8) { var7 = var15 * (var9 >> 16); diff --git a/osrs/src/main/java/Strings.java b/osrs/src/main/java/Strings.java index c12154aa1..6f7678789 100644 --- a/osrs/src/main/java/Strings.java +++ b/osrs/src/main/java/Strings.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @@ -5,40 +6,29 @@ @ObfuscatedName("nr") @Implements("Strings") public class Strings { - @ObfuscatedName("fs") - public static String field3315; - @ObfuscatedName("kl") - public static String field3423; - @ObfuscatedName("kk") - public static String field3422; - @ObfuscatedName("kc") - public static String field3414; + @ObfuscatedName("fa") + public static String field3326; + @ObfuscatedName("ka") + public static String field3442; + @ObfuscatedName("kb") + public static String field3443; + @ObfuscatedName("ky") + public static String field3465; static { - field3315 = "Please visit the support page for assistance."; - field3423 = ""; - field3422 = "Page has opened in the browser."; - field3414 = ""; + field3326 = "Please visit the support page for assistance."; + field3442 = ""; + field3443 = "Page has opened in the browser."; + field3465 = ""; } - @ObfuscatedName("af") + @ObfuscatedName("mk") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "64" + descriptor = "(B)Z", + garbageValue = "-80" ) - static final void method1877(String var0) { - UserComparator8.method673(var0 + " is already on your friend list"); - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "-116" - ) - static final int method1878(int var0, int var1) { - int var2 = var1 * 57 + var0; - var2 ^= var2 << 13; - int var3 = var2 * (var2 * var2 * 15731 + 789221) + 1376312589 & Integer.MAX_VALUE; - return var3 >> 19 & 255; + @Export("getTapToDrop") + static boolean getTapToDrop() { + return Client.tapToDrop; } } \ No newline at end of file diff --git a/osrs/src/main/java/StructComposition.java b/osrs/src/main/java/StructComposition.java index e4c7bcc19..099fc6bbe 100644 --- a/osrs/src/main/java/StructComposition.java +++ b/osrs/src/main/java/StructComposition.java @@ -3,27 +3,29 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hc") +@ObfuscatedName("hy") @Implements("StructComposition") public class StructComposition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("StructDefinition_archive") - public static AbstractArchive StructDefinition_archive; - @ObfuscatedName("ae") + static AbstractArchive StructDefinition_archive; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("StructDefinition_cached") - public static EvictingDualNodeHashTable StructDefinition_cached; - @ObfuscatedName("am") - @Export("ByteArrayPool_altSizeArrayCounts") - static int[] ByteArrayPool_altSizeArrayCounts; - @ObfuscatedName("ao") + static EvictingDualNodeHashTable StructDefinition_cached; + @ObfuscatedName("fn") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1637; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lsf;" + descriptor = "Ltz;" ) @Export("params") IterableNodeHashTable params; @@ -35,10 +37,10 @@ public class StructComposition extends DualNode { StructComposition() { } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1093103177" + garbageValue = "-968582789" ) @Export("postDecode") void postDecode() { @@ -46,8 +48,8 @@ void postDecode() { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-50" + descriptor = "(Luj;I)V", + garbageValue = "-1850200983" ) @Export("decode") void decode(Buffer var1) { @@ -61,33 +63,33 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1817135134" + descriptor = "(Luj;IB)V", + garbageValue = "4" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { if (var2 == 249) { - this.params = Decimator.readStringIntParameters(var1, this.params); + this.params = class144.readStringIntParameters(var1, this.params); } } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(III)I", - garbageValue = "-1339358564" + garbageValue = "-408803352" ) @Export("getIntParam") public int getIntParam(int var1, int var2) { - return class14.method39(this.params, var1, var2); + return Player.method478(this.params, var1, var2); } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)Ljava/lang/String;", - garbageValue = "792481447" + descriptor = "(ILjava/lang/String;B)Ljava/lang/String;", + garbageValue = "78" ) @Export("getStringParam") public String getStringParam(int var1, String var2) { @@ -106,85 +108,4 @@ public String getStringParam(int var1, String var2) { return var3; } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IS)Lha;", - garbageValue = "-32325" - ) - @Export("SpotAnimationDefinition_get") - public static SpotAnimationDefinition SpotAnimationDefinition_get(int var0) { - SpotAnimationDefinition var1 = (SpotAnimationDefinition)SpotAnimationDefinition.SpotAnimationDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = SpotAnimationDefinition.SpotAnimationDefinition_archive.takeFile(13, var0); - var1 = new SpotAnimationDefinition(); - var1.id = var0; - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - SpotAnimationDefinition.SpotAnimationDefinition_cached.put(var1, (long)var0); - return var1; - } - } - - @ObfuscatedName("jo") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1529858789" - ) - static final int method1024() { - if (class449.clientPreferences.getRoofsHidden()) { - return HealthBar.Client_plane; - } else { - int var0 = class18.getTileHeight(NPCComposition.cameraX, class139.cameraZ, HealthBar.Client_plane); - return var0 - class133.cameraY < 800 && (Tiles.Tiles_renderFlags[HealthBar.Client_plane][NPCComposition.cameraX >> 7][class139.cameraZ >> 7] & 4) != 0 ? HealthBar.Client_plane : 3; - } - } - - @ObfuscatedName("nt") - @ObfuscatedSignature( - descriptor = "(Lmi;B)V", - garbageValue = "-126" - ) - static final void method1025(Widget var0) { - int var1 = var0.contentType; - if (var1 == 324) { - if (Client.field542 == -1) { - Client.field542 = var0.spriteId2; - Client.field547 = var0.spriteId; - } - - if (Client.playerAppearance.field2916 == 1) { - var0.spriteId2 = Client.field542; - } else { - var0.spriteId2 = Client.field547; - } - - } else if (var1 == 325) { - if (Client.field542 == -1) { - Client.field542 = var0.spriteId2; - Client.field547 = var0.spriteId; - } - - if (Client.playerAppearance.field2916 == 1) { - var0.spriteId2 = Client.field547; - } else { - var0.spriteId2 = Client.field542; - } - - } else if (var1 == 327) { - var0.modelAngleX = 150; - var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; - var0.modelType = 5; - var0.modelId = 0; - } else if (var1 == 328) { - var0.modelAngleX = 150; - var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; - var0.modelType = 5; - var0.modelId = 1; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/StudioGame.java b/osrs/src/main/java/StudioGame.java index 12d650fbd..62f210d46 100644 --- a/osrs/src/main/java/StudioGame.java +++ b/osrs/src/main/java/StudioGame.java @@ -3,50 +3,50 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ns") +@ObfuscatedName("nt") @Implements("StudioGame") -public enum StudioGame implements class371 { - @ObfuscatedName("au") +public enum StudioGame implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("runescape") runescape("runescape", "RuneScape", 0), - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("stellardawn") stellardawn("stellardawn", "Stellar Dawn", 1), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("game3") game3("game3", "Game 3", 2), - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("game4") game4("game4", "Game 4", 3), - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("game5") game5("game5", "Game 5", 4), - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Lnt;" ) @Export("oldscape") oldscape("oldscape", "RuneScape 2007", 5); - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("name") public final String name; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("id") final int id; @@ -55,105 +55,13 @@ public enum StudioGame implements class371 { this.id = var5; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Lon;I)I", - garbageValue = "-1695354605" - ) - @Export("compareStrings") - public static int compareStrings(CharSequence var0, CharSequence var1, Language var2) { - int var3 = var0.length(); - int var4 = var1.length(); - int var5 = 0; - int var6 = 0; - char var7 = 0; - char var8 = 0; - - while (var5 - var7 < var3 || var6 - var8 < var4) { - if (var5 - var7 >= var3) { - return -1; - } - - if (var6 - var8 >= var4) { - return 1; - } - - char var9; - if (var7 != 0) { - var9 = var7; - boolean var14 = false; - } else { - var9 = var0.charAt(var5++); - } - - char var10; - if (var8 != 0) { - var10 = var8; - boolean var15 = false; - } else { - var10 = var1.charAt(var6++); - } - - var7 = JagNetThread.method1931(var9); - var8 = JagNetThread.method1931(var10); - var9 = PlayerComposition.standardizeChar(var9, var2); - var10 = PlayerComposition.standardizeChar(var10, var2); - if (var10 != var9 && Character.toUpperCase(var9) != Character.toUpperCase(var10)) { - var9 = Character.toLowerCase(var9); - var10 = Character.toLowerCase(var10); - if (var9 != var10) { - return class59.lowercaseChar(var9, var2) - class59.lowercaseChar(var10, var2); - } - } - } - - int var16 = Math.min(var3, var4); - - char var12; - int var17; - for (var17 = 0; var17 < var16; ++var17) { - if (var2 == Language.Language_FR) { - var5 = var3 - 1 - var17; - var6 = var4 - 1 - var17; - } else { - var6 = var17; - var5 = var17; - } - - char var11 = var0.charAt(var5); - var12 = var1.charAt(var6); - if (var12 != var11 && Character.toUpperCase(var11) != Character.toUpperCase(var12)) { - var11 = Character.toLowerCase(var11); - var12 = Character.toLowerCase(var12); - if (var11 != var12) { - return class59.lowercaseChar(var11, var2) - class59.lowercaseChar(var12, var2); - } - } - } - - var17 = var3 - var4; - if (var17 != 0) { - return var17; - } else { - for (int var18 = 0; var18 < var16; ++var18) { - var12 = var0.charAt(var18); - char var13 = var1.charAt(var18); - if (var13 != var12) { - return class59.lowercaseChar(var12, var2) - class59.lowercaseChar(var13, var2); - } - } - - return 0; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/SwapSongTask.java b/osrs/src/main/java/SwapSongTask.java index 521a72cb9..128372865 100644 --- a/osrs/src/main/java/SwapSongTask.java +++ b/osrs/src/main/java/SwapSongTask.java @@ -3,36 +3,66 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("po") +@ObfuscatedName("pi") @Implements("SwapSongTask") public class SwapSongTask extends SongTask { - @ObfuscatedName("rd") + @ObfuscatedName("ok") @ObfuscatedSignature( - descriptor = "Lth;" + descriptor = "Lnn;" ) - @Export("HitSplatDefinition_cached") - static class497 HitSplatDefinition_cached; + static Widget field3744; @ObfuscatedSignature( - descriptor = "(Lpm;)V" + descriptor = "(Lql;)V" ) public SwapSongTask(SongTask var1) { super(var1); - super.field3722 = "SwapSongTask"; + super.field3756 = "SwapSongTask"; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1604030758" + garbageValue = "-799935345" ) + @Export("vmethod2142") public boolean vmethod2142() { - if (class305.musicSongs.size() > 1 && class305.musicSongs.get(0) != null && ((MusicSong)class305.musicSongs.get(0)).midiPcmStream.isReady() && class305.musicSongs.get(1) != null && ((MusicSong)class305.musicSongs.get(1)).midiPcmStream.isReady()) { - MusicSong var1 = (MusicSong)class305.musicSongs.get(0); - class305.musicSongs.set(0, class305.musicSongs.get(1)); - class305.musicSongs.set(1, var1); + if (class316.musicSongs.size() > 1 && class316.musicSongs.get(0) != null && ((MusicSong)class316.musicSongs.get(0)).midiPcmStream.isReady() && class316.musicSongs.get(1) != null && ((MusicSong)class316.musicSongs.get(1)).midiPcmStream.isReady()) { + MusicSong var1 = (MusicSong)class316.musicSongs.get(0); + class316.musicSongs.set(0, class316.musicSongs.get(1)); + class316.musicSongs.set(1, var1); } return true; } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "([BB)V", + garbageValue = "23" + ) + @Export("ByteArrayPool_release") + public static void ByteArrayPool_release(byte[] var0) { + synchronized(ByteArrayPool.field3781) { + if (var0.length == 100 && ByteArrayPool.ByteArrayPool_smallCount < ByteArrayPool.field3779) { + ByteArrayPool.ByteArrayPool_small[++ByteArrayPool.ByteArrayPool_smallCount - 1] = var0; + } else if (var0.length == 5000 && ByteArrayPool.ByteArrayPool_mediumCount < ByteArrayPool.field3775) { + ByteArrayPool.ByteArrayPool_medium[++ByteArrayPool.ByteArrayPool_mediumCount - 1] = var0; + } else if (var0.length == 10000 && ByteArrayPool.ByteArrayPool_largeCount < ByteArrayPool.field3777) { + ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0; + } else if (var0.length == 30000 && ByteArrayPool.field3774 < ByteArrayPool.field3778) { + ByteArrayPool.field3768[++ByteArrayPool.field3774 - 1] = var0; + } else { + if (class1.ByteArrayPool_arrays != null) { + for (int var2 = 0; var2 < Clock.ByteArrayPool_alternativeSizes.length; ++var2) { + if (var0.length == Clock.ByteArrayPool_alternativeSizes[var2] && class267.ByteArrayPool_altSizeArrayCounts[var2] < class1.ByteArrayPool_arrays[var2].length) { + class1.ByteArrayPool_arrays[var2][class267.ByteArrayPool_altSizeArrayCounts[var2]++] = var0; + return; + } + } + } + + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/Task.java b/osrs/src/main/java/Task.java index ae230de5d..25d0294d6 100644 --- a/osrs/src/main/java/Task.java +++ b/osrs/src/main/java/Task.java @@ -3,28 +3,28 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gz") +@ObfuscatedName("iq") @Implements("Task") public class Task { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Liq;" ) @Export("next") Task next; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("status") public volatile int status; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("type") int type; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("intArgument") public int intArgument; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("objectArgument") Object objectArgument; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("result") public volatile Object result; diff --git a/osrs/src/main/java/TaskHandler.java b/osrs/src/main/java/TaskHandler.java index 626f1b8f1..a61f6bab5 100644 --- a/osrs/src/main/java/TaskHandler.java +++ b/osrs/src/main/java/TaskHandler.java @@ -8,28 +8,37 @@ import java.net.Socket; import java.net.URL; -@ObfuscatedName("gh") +@ObfuscatedName("ih") @Implements("TaskHandler") public class TaskHandler implements Runnable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("javaVendor") public static String javaVendor; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + @Export("javaVersion") + public static String javaVersion; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lpf;" + ) + @Export("ItemDefinition_fontPlain11") + public static Font ItemDefinition_fontPlain11; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Liq;" ) @Export("current") Task current; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Liq;" ) @Export("task") Task task; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("thread") Thread thread; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("isClosed") boolean isClosed; @@ -38,11 +47,11 @@ public TaskHandler() { this.task = null; this.isClosed = false; javaVendor = "Unknown"; - class106.javaVersion = "1.6"; + javaVersion = "1.6"; try { javaVendor = System.getProperty("java.vendor"); - class106.javaVersion = System.getProperty("java.version"); + javaVersion = System.getProperty("java.version"); } catch (Exception var2) { } @@ -53,10 +62,10 @@ public TaskHandler() { this.thread.start(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "629286454" + garbageValue = "-585427867" ) @Export("close") public final void close() { @@ -72,10 +81,10 @@ public final void close() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIILjava/lang/Object;B)Lgz;", - garbageValue = "-15" + descriptor = "(IIILjava/lang/Object;I)Liq;", + garbageValue = "-993585503" ) @Export("newTask") final Task newTask(int var1, int var2, int var3, Object var4) { @@ -96,20 +105,20 @@ final Task newTask(int var1, int var2, int var3, Object var4) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)Lgz;", - garbageValue = "1426154941" + descriptor = "(Ljava/lang/String;II)Liq;", + garbageValue = "-180890687" ) @Export("newSocketTask") public final Task newSocketTask(String var1, int var2) { return this.newTask(1, var2, 0, var1); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Runnable;II)Lgz;", - garbageValue = "1501831193" + descriptor = "(Ljava/lang/Runnable;II)Liq;", + garbageValue = "1323280137" ) @Export("newThreadTask") public final Task newThreadTask(Runnable var1, int var2) { @@ -165,4 +174,27 @@ public final void run() { } } } + + @ObfuscatedName("km") + @ObfuscatedSignature( + descriptor = "(IIIIII)Z", + garbageValue = "1243535616" + ) + static final boolean method1086(int var0, int var1, int var2, int var3, int var4) { + PendingSpawn var5 = null; + + for (PendingSpawn var6 = (PendingSpawn)Client.pendingSpawns.last(); var6 != null; var6 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var0 == var6.plane && var6.x == var1 && var2 == var6.y && var3 == var6.type) { + var5 = var6; + break; + } + } + + if (var5 != null) { + var5.field957 = var4; + return true; + } else { + return false; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/Texture.java b/osrs/src/main/java/Texture.java index 6e3c63e86..da0ebe096 100644 --- a/osrs/src/main/java/Texture.java +++ b/osrs/src/main/java/Texture.java @@ -3,46 +3,46 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("if") +@ObfuscatedName("ks") @Implements("Texture") public class Texture extends Node { - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("Texture_animatedPixels") static int[] Texture_animatedPixels; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("averageRGB") int averageRGB; - @ObfuscatedName("ai") - boolean field1987; - @ObfuscatedName("az") + @ObfuscatedName("au") + boolean field2171; + @ObfuscatedName("aa") @Export("fileIds") int[] fileIds; + @ObfuscatedName("ac") + int[] field2176; + @ObfuscatedName("al") + int[] field2177; + @ObfuscatedName("az") + int[] field2179; @ObfuscatedName("ap") - int[] field1995; - @ObfuscatedName("aa") - int[] field1992; - @ObfuscatedName("af") - int[] field1993; - @ObfuscatedName("ad") @Export("animationDirection") int animationDirection; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("animationSpeed") int animationSpeed; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("pixels") int[] pixels; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("isLoaded") boolean isLoaded; @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) Texture(Buffer var1) { this.isLoaded = false; this.averageRGB = var1.readUnsignedShort(); - this.field1987 = var1.readUnsignedByte() == 1; + this.field2171 = var1.readUnsignedByte() == 1; int var2 = var1.readUnsignedByte(); if (var2 >= 1 && var2 <= 4) { this.fileIds = new int[var2]; @@ -53,25 +53,25 @@ public class Texture extends Node { } if (var2 > 1) { - this.field1995 = new int[var2 - 1]; + this.field2176 = new int[var2 - 1]; for (var3 = 0; var3 < var2 - 1; ++var3) { - this.field1995[var3] = var1.readUnsignedByte(); + this.field2176[var3] = var1.readUnsignedByte(); } } if (var2 > 1) { - this.field1992 = new int[var2 - 1]; + this.field2177 = new int[var2 - 1]; for (var3 = 0; var3 < var2 - 1; ++var3) { - this.field1992[var3] = var1.readUnsignedByte(); + this.field2177[var3] = var1.readUnsignedByte(); } } - this.field1993 = new int[var2]; + this.field2179 = new int[var2]; for (var3 = 0; var3 < var2; ++var3) { - this.field1993[var3] = var1.readInt(); + this.field2179[var3] = var1.readInt(); } this.animationDirection = var1.readUnsignedByte(); @@ -82,9 +82,9 @@ public class Texture extends Node { } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(DILnu;)Z" + descriptor = "(DILol;)Z" ) @Export("load") boolean load(double var1, int var3, AbstractArchive var4) { @@ -101,16 +101,31 @@ boolean load(double var1, int var3, AbstractArchive var4) { for (int var6 = 0; var6 < this.fileIds.length; ++var6) { int var8 = this.fileIds[var6]; IndexedSprite var7; - if (!Decimator.method313(var4, var8)) { + if (!EnumComposition.method926(var4, var8)) { var7 = null; } else { - var7 = class493.method2466(); + IndexedSprite var10 = new IndexedSprite(); + var10.width = class541.SpriteBuffer_spriteWidth; + var10.height = GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight; + var10.xOffset = class541.SpriteBuffer_xOffsets[0]; + var10.yOffset = class541.SpriteBuffer_yOffsets[0]; + var10.subWidth = class541.SpriteBuffer_spriteWidths[0]; + var10.subHeight = class520.SpriteBuffer_spriteHeights[0]; + var10.palette = class541.SpriteBuffer_spritePalette; + var10.pixels = class396.SpriteBuffer_pixels[0]; + class541.SpriteBuffer_xOffsets = null; + class541.SpriteBuffer_yOffsets = null; + class541.SpriteBuffer_spriteWidths = null; + class520.SpriteBuffer_spriteHeights = null; + class541.SpriteBuffer_spritePalette = null; + class396.SpriteBuffer_pixels = null; + var7 = var10; } var7.normalize(); - byte[] var10 = var7.pixels; + byte[] var17 = var7.pixels; int[] var11 = var7.palette; - int var12 = this.field1993[var6]; + int var12 = this.field2179[var6]; if ((var12 & -16777216) == 16777216) { } @@ -141,20 +156,20 @@ boolean load(double var1, int var3, AbstractArchive var4) { if (var6 == 0) { var13 = 0; } else { - var13 = this.field1995[var6 - 1]; + var13 = this.field2176[var6 - 1]; } if (var13 == 0) { if (var3 == var7.subWidth) { for (var14 = 0; var14 < var5; ++var14) { - this.pixels[var14] = var11[var10[var14] & 255]; + this.pixels[var14] = var11[var17[var14] & 255]; } } else if (var7.subWidth == 64 && var3 == 128) { var14 = 0; for (var15 = 0; var15 < var3; ++var15) { for (var16 = 0; var16 < var3; ++var16) { - this.pixels[var14++] = var11[var10[(var15 >> 1 << 6) + (var16 >> 1)] & 255]; + this.pixels[var14++] = var11[var17[(var15 >> 1 << 6) + (var16 >> 1)] & 255]; } } } else { @@ -166,7 +181,7 @@ boolean load(double var1, int var3, AbstractArchive var4) { for (var15 = 0; var15 < var3; ++var15) { for (var16 = 0; var16 < var3; ++var16) { - this.pixels[var14++] = var11[var10[(var16 << 1) + (var15 << 1 << 7)] & 255]; + this.pixels[var14++] = var11[var17[(var16 << 1) + (var15 << 1 << 7)] & 255]; } } } @@ -185,13 +200,13 @@ boolean load(double var1, int var3, AbstractArchive var4) { return true; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("reset") void reset() { this.pixels = null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("animate") void animate(int var1) { if (this.pixels != null) { diff --git a/osrs/src/main/java/TextureLoader.java b/osrs/src/main/java/TextureLoader.java index 4125a000c..29d367261 100644 --- a/osrs/src/main/java/TextureLoader.java +++ b/osrs/src/main/java/TextureLoader.java @@ -3,37 +3,37 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("js") +@ObfuscatedName("lw") @Implements("TextureLoader") public interface TextureLoader { - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)[I", - garbageValue = "-1284455059" + garbageValue = "2146690386" ) @Export("getTexturePixels") int[] getTexturePixels(int var1); - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1228029354" + garbageValue = "-799593144" ) @Export("getAverageTextureRGB") int getAverageTextureRGB(int var1); - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "89" + descriptor = "(II)Z", + garbageValue = "-293103198" ) @Export("vmethod3989") boolean vmethod3989(int var1); - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1328264692" + descriptor = "(IS)Z", + garbageValue = "32621" ) @Export("isLowDetail") boolean isLowDetail(int var1); diff --git a/osrs/src/main/java/TextureProvider.java b/osrs/src/main/java/TextureProvider.java index fe0f16322..81432da29 100644 --- a/osrs/src/main/java/TextureProvider.java +++ b/osrs/src/main/java/TextureProvider.java @@ -3,42 +3,42 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jk") +@ObfuscatedName("kg") @Implements("TextureProvider") public class TextureProvider implements TextureLoader { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lif;" + descriptor = "[Lks;" ) @Export("textures") Texture[] textures; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Low;" + descriptor = "Lon;" ) @Export("deque") NodeDeque deque; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("capacity") int capacity; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("remaining") int remaining; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("brightness") double brightness; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("textureSize") int textureSize; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("archive") AbstractArchive archive; @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;IDI)V" + descriptor = "(Lol;Lol;IDI)V" ) public TextureProvider(AbstractArchive var1, AbstractArchive var2, int var3, double var4, int var6) { this.deque = new NodeDeque(); @@ -65,10 +65,10 @@ public TextureProvider(AbstractArchive var1, AbstractArchive var2, int var3, dou } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "1" + garbageValue = "81" ) @Export("getLoadedPercentage") public int getLoadedPercentage() { @@ -87,7 +87,7 @@ public int getLoadedPercentage() { for (int var7 = 0; var7 < var6.length; ++var7) { int var8 = var6[var7]; - if (this.archive.method1906(var8)) { + if (this.archive.method1930(var8)) { ++var2; } } @@ -102,17 +102,17 @@ public int getLoadedPercentage() { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("setBrightness") public void setBrightness(double var1) { this.brightness = var1; this.clear(); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)[I", - garbageValue = "-1284455059" + garbageValue = "2146690386" ) @Export("getTexturePixels") public int[] getTexturePixels(int var1) { @@ -142,40 +142,40 @@ public int[] getTexturePixels(int var1) { return null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1228029354" + garbageValue = "-799593144" ) @Export("getAverageTextureRGB") public int getAverageTextureRGB(int var1) { return this.textures[var1] != null ? this.textures[var1].averageRGB : 0; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "89" + descriptor = "(II)Z", + garbageValue = "-293103198" ) @Export("vmethod3989") public boolean vmethod3989(int var1) { - return this.textures[var1].field1987; + return this.textures[var1].field2171; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1328264692" + descriptor = "(IS)Z", + garbageValue = "32621" ) @Export("isLowDetail") public boolean isLowDetail(int var1) { return this.textureSize == 64; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1655781551" + garbageValue = "1262125265" ) @Export("clear") public void clear() { @@ -189,10 +189,10 @@ public void clear() { this.remaining = this.capacity; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "2107237619" + garbageValue = "2003638345" ) @Export("animate") public void animate(int var1) { @@ -206,78 +206,58 @@ public void animate(int var1) { } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;B)[B", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "-1703102437" ) - public static byte[] method1301(CharSequence var0) { - int var1 = var0.length(); - byte[] var2 = new byte[var1]; + @Export("savePreferences") + static void savePreferences() { + AccessFile var0 = null; - for (int var3 = 0; var3 < var1; ++var3) { - char var4 = var0.charAt(var3); - if (var4 > 0 && var4 < 128 || var4 >= 160 && var4 <= 255) { - var2[var3] = (byte)var4; - } else if (var4 == 8364) { - var2[var3] = -128; - } else if (var4 == 8218) { - var2[var3] = -126; - } else if (var4 == 402) { - var2[var3] = -125; - } else if (var4 == 8222) { - var2[var3] = -124; - } else if (var4 == 8230) { - var2[var3] = -123; - } else if (var4 == 8224) { - var2[var3] = -122; - } else if (var4 == 8225) { - var2[var3] = -121; - } else if (var4 == 710) { - var2[var3] = -120; - } else if (var4 == 8240) { - var2[var3] = -119; - } else if (var4 == 352) { - var2[var3] = -118; - } else if (var4 == 8249) { - var2[var3] = -117; - } else if (var4 == 338) { - var2[var3] = -116; - } else if (var4 == 381) { - var2[var3] = -114; - } else if (var4 == 8216) { - var2[var3] = -111; - } else if (var4 == 8217) { - var2[var3] = -110; - } else if (var4 == 8220) { - var2[var3] = -109; - } else if (var4 == 8221) { - var2[var3] = -108; - } else if (var4 == 8226) { - var2[var3] = -107; - } else if (var4 == 8211) { - var2[var3] = -106; - } else if (var4 == 8212) { - var2[var3] = -105; - } else if (var4 == 732) { - var2[var3] = -104; - } else if (var4 == 8482) { - var2[var3] = -103; - } else if (var4 == 353) { - var2[var3] = -102; - } else if (var4 == 8250) { - var2[var3] = -101; - } else if (var4 == 339) { - var2[var3] = -100; - } else if (var4 == 382) { - var2[var3] = -98; - } else if (var4 == 376) { - var2[var3] = -97; - } else { - var2[var3] = 63; + try { + var0 = class131.getPreferencesFile("", Messages.field1156.name, true); + Buffer var1 = WorldMapIcon_1.clientPreferences.toBuffer(); + var0.write(var1.array, 0, var1.offset); + } catch (Exception var3) { + } + + try { + if (var0 != null) { + var0.closeSync(true); } + } catch (Exception var2) { + } + + } + + @ObfuscatedName("iu") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-73" + ) + static final void method1529() { + class314.method1649(FloorOverlayDefinition.field1772, class323.field2851, Projectile.field783); + class303.method1628(class127.field1224, CollisionMap.field1901); + if (FloorOverlayDefinition.field1772 == ViewportMouse.cameraX && SecureRandomFuture.cameraY == class323.field2851 && class36.cameraZ == Projectile.field783 && class127.field1224 == Varcs.cameraPitch && CollisionMap.field1901 == class192.cameraYaw) { + Client.field400 = false; + Client.isCameraLocked = false; + Client.field402 = false; + Client.field404 = false; + Messages.cameraMoveToX = 0; + AbstractWorldMapData.cameraMoveToY = 0; + class302.cameraMoveToHeight = 0; + class60.cameraMoveToSpeed = 0; + class134.cameraMoveToAcceleration = 0; + class1.cameraLookAtAcceleration = 0; + WorldMapIcon_0.cameraLookAtSpeed = 0; + ScriptFrame.cameraLookAtX = 0; + class216.cameraLookAtY = 0; + class127.cameraLookAtHeight = 0; + Client.field644 = null; + Client.field642 = null; + Client.field643 = null; } - return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/Tile.java b/osrs/src/main/java/Tile.java index 5c13ee528..832df429f 100644 --- a/osrs/src/main/java/Tile.java +++ b/osrs/src/main/java/Tile.java @@ -3,96 +3,96 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ii") +@ObfuscatedName("kv") @Implements("Tile") public final class Tile extends Node { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("plane") int plane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") int y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("originalPlane") int originalPlane; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ljg;" + descriptor = "Lke;" ) @Export("paint") SceneTilePaint paint; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Ljv;" + descriptor = "Lkl;" ) @Export("model") SceneTileModel model; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Ljo;" + descriptor = "Llv;" ) @Export("boundaryObject") BoundaryObject boundaryObject; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Ljw;" + descriptor = "Llj;" ) @Export("wallDecoration") WallDecoration wallDecoration; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Liy;" + descriptor = "Lkm;" ) @Export("floorDecoration") FloorDecoration floorDecoration; - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lir;" + descriptor = "Lkj;" ) @Export("itemLayer") ItemLayer itemLayer; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("gameObjectsCount") int gameObjectsCount; - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "[Ljy;" + descriptor = "[Lle;" ) @Export("gameObjects") GameObject[] gameObjects; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("gameObjectEdgeMasks") int[] gameObjectEdgeMasks; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("gameObjectsEdgeMask") int gameObjectsEdgeMask; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("minPlane") int minPlane; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("drawPrimary") boolean drawPrimary; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("drawSecondary") boolean drawSecondary; @ObfuscatedName("am") @Export("drawGameObjects") boolean drawGameObjects; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @Export("drawGameObjectEdges") int drawGameObjectEdges; - @ObfuscatedName("ah") - int field2014; - @ObfuscatedName("as") - int field2018; - @ObfuscatedName("ay") - int field2022; - @ObfuscatedName("aj") + @ObfuscatedName("ai") + int field2196; + @ObfuscatedName("aw") + int field2203; + @ObfuscatedName("ae") + int field2194; + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Lii;" + descriptor = "Lkv;" ) @Export("linkedBelowTile") Tile linkedBelowTile; @@ -106,22 +106,15 @@ public final class Tile extends Node { this.y = var3; } - @ObfuscatedName("au") + @ObfuscatedName("jh") @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "-1321170330" + descriptor = "(I)V", + garbageValue = "1636778707" ) - @Export("addImageTag") - static String addImageTag(int var0) { - return ""; - } + static void method1412() { + for (class222 var0 = (class222)Client.field625.last(); var0 != null; var0 = (class222)Client.field625.previous()) { + var0.remove(); + } - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(II)Lfv;", - garbageValue = "-1875628936" - ) - static class137 method1184(int var0) { - return ClientPreferences.method571(var0) != 0 ? null : class338.method1862(var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/TileItem.java b/osrs/src/main/java/TileItem.java index 3e8a4a2ad..15cceade4 100644 --- a/osrs/src/main/java/TileItem.java +++ b/osrs/src/main/java/TileItem.java @@ -3,52 +3,49 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; - -@ObfuscatedName("ed") +@ObfuscatedName("ec") @Implements("TileItem") public final class TileItem extends Renderable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("quantity") int quantity; - @ObfuscatedName("at") - int field1104; + @ObfuscatedName("ao") + int field1110; TileItem() { - this.field1104 = 31; + this.field1110 = 31; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "11584" + descriptor = "(II)V", + garbageValue = "-2048402866" ) void method609(int var1) { - this.field1104 = var1; + this.field1110 = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljr;", - garbageValue = "798227647" + descriptor = "(B)Lka;", + garbageValue = "1" ) @Export("getModel") protected final Model getModel() { - return InvDefinition.ItemDefinition_get(this.id).getModel(this.quantity); + return class214.ItemDefinition_get(this.id).getModel(this.quantity); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "1782436453" + garbageValue = "117367628" ) boolean method610(int var1) { if (var1 >= 0 && var1 <= 4) { - return (this.field1104 & 1 << var1) != 0; + return (this.field1110 & 1 << var1) != 0; } else { return true; } @@ -56,46 +53,122 @@ boolean method610(int var1) { @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgh;III)Lbb;", - garbageValue = "881365546" + descriptor = "(CLof;I)C", + garbageValue = "938832228" ) - public static final PcmPlayer method612(TaskHandler var0, int var1, int var2) { - if (var1 >= 0 && var1 < 2) { - if (var2 < 256) { - var2 = 256; - } - - try { - PcmPlayer var3 = FloorDecoration.pcmPlayerProvider.player(); - var3.samples = new int[256 * (PcmPlayer.PcmPlayer_stereo ? 2 : 1)]; - var3.field194 = var2; - var3.init(); - var3.capacity = (var2 & -1024) + 1024; - if (var3.capacity > 16384) { - var3.capacity = 16384; - } - - var3.open(var3.capacity); - if (PcmPlayer.field182 > 0 && Canvas.soundSystem == null) { - Canvas.soundSystem = new SoundSystem(); - PcmPlayer.soundSystemExecutor = Executors.newScheduledThreadPool(1); - PcmPlayer.soundSystemExecutor.scheduleAtFixedRate(Canvas.soundSystem, 0L, 10L, TimeUnit.MILLISECONDS); - } - - if (Canvas.soundSystem != null) { - if (Canvas.soundSystem.players[var1] != null) { - throw new IllegalArgumentException(); - } - - Canvas.soundSystem.players[var1] = var3; - } - - return var3; - } catch (Throwable var4) { - return new PcmPlayer(); + @Export("standardizeChar") + static char standardizeChar(char var0, Language var1) { + if (var0 >= 192 && var0 <= 255) { + if (var0 >= 192 && var0 <= 198) { + return 'A'; + } + + if (var0 == 199) { + return 'C'; + } + + if (var0 >= 200 && var0 <= 203) { + return 'E'; + } + + if (var0 >= 204 && var0 <= 207) { + return 'I'; + } + + if (var0 == 209 && var1 != Language.Language_ES) { + return 'N'; + } + + if (var0 >= 210 && var0 <= 214) { + return 'O'; + } + + if (var0 >= 217 && var0 <= 220) { + return 'U'; + } + + if (var0 == 221) { + return 'Y'; + } + + if (var0 == 223) { + return 's'; + } + + if (var0 >= 224 && var0 <= 230) { + return 'a'; } + + if (var0 == 231) { + return 'c'; + } + + if (var0 >= 232 && var0 <= 235) { + return 'e'; + } + + if (var0 >= 236 && var0 <= 239) { + return 'i'; + } + + if (var0 == 241 && var1 != Language.Language_ES) { + return 'n'; + } + + if (var0 >= 242 && var0 <= 246) { + return 'o'; + } + + if (var0 >= 249 && var0 <= 252) { + return 'u'; + } + + if (var0 == 253 || var0 == 255) { + return 'y'; + } + } + + if (var0 == 338) { + return 'O'; + } else if (var0 == 339) { + return 'o'; } else { - throw new IllegalArgumentException(); + return var0 == 376 ? 'Y' : var0; } } + + @ObfuscatedName("kq") + @ObfuscatedSignature( + descriptor = "(IIIIIIIIIII)V", + garbageValue = "2136163663" + ) + @Export("updatePendingSpawn") + static final void updatePendingSpawn(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9) { + PendingSpawn var10 = null; + + for (PendingSpawn var11 = (PendingSpawn)Client.pendingSpawns.last(); var11 != null; var11 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var0 == var11.plane && var11.x == var1 && var2 == var11.y && var3 == var11.type) { + var10 = var11; + break; + } + } + + if (var10 == null) { + var10 = new PendingSpawn(); + var10.plane = var0; + var10.type = var3; + var10.x = var1; + var10.y = var2; + var10.field957 = -1; + ScriptFrame.method344(var10); + Client.pendingSpawns.addFirst(var10); + } + + var10.id = var4; + var10.objectType = var5; + var10.rotation = var6; + var10.startCycle = var8; + var10.endCycle = var9; + var10.method503(var7); + } } \ No newline at end of file diff --git a/osrs/src/main/java/Tiles.java b/osrs/src/main/java/Tiles.java index e8bf2f70b..379acd2a1 100644 --- a/osrs/src/main/java/Tiles.java +++ b/osrs/src/main/java/Tiles.java @@ -3,103 +3,66 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("du") +@ObfuscatedName("dd") @Implements("Tiles") public final class Tiles { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("Tiles_heights") static int[][][] Tiles_heights; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("Tiles_renderFlags") static byte[][][] Tiles_renderFlags; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("Tiles_minPlane") static int Tiles_minPlane; - @ObfuscatedName("at") - @Export("Tiles_underlays") - static short[][][] Tiles_underlays; + @ObfuscatedName("al") + static int[][] field843; + @ObfuscatedName("ap") + @Export("Tiles_saturation") + static int[] Tiles_saturation; @ObfuscatedName("aq") - @Export("Tiles_lightness") - static int[] Tiles_lightness; - @ObfuscatedName("ax") - static final int[] field844; - @ObfuscatedName("ah") - static final int[] field840; - @ObfuscatedName("as") - static final int[] field842; - @ObfuscatedName("ay") - static final int[] field845; - @ObfuscatedName("aj") - static final int[] field841; - @ObfuscatedName("av") - static final int[] field843; + static final int[] field849; + @ObfuscatedName("ai") + static final int[] field847; @ObfuscatedName("aw") + static final int[] field850; + @ObfuscatedName("ae") + static final int[] field845; + @ObfuscatedName("an") + static final int[] field848; + @ObfuscatedName("ag") + static final int[] field846; + @ObfuscatedName("ad") @Export("rndHue") static int rndHue; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("rndLightness") static int rndLightness; - @ObfuscatedName("fi") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field838; - @ObfuscatedName("jc") - @Export("timeOfPreviousKeyPress") - static int timeOfPreviousKeyPress; static { Tiles_heights = new int[4][105][105]; Tiles_renderFlags = new byte[4][104][104]; Tiles_minPlane = 99; - field844 = new int[]{1, 2, 4, 8}; - field840 = new int[]{16, 32, 64, 128}; - field842 = new int[]{1, 0, -1, 0}; + field849 = new int[]{1, 2, 4, 8}; + field847 = new int[]{16, 32, 64, 128}; + field850 = new int[]{1, 0, -1, 0}; field845 = new int[]{0, -1, 0, 1}; - field841 = new int[]{1, -1, -1, 1}; - field843 = new int[]{-1, -1, 1, 1}; + field848 = new int[]{1, -1, -1, 1}; + field846 = new int[]{-1, -1, 1, 1}; rndHue = (int)(Math.random() * 17.0D) - 8; rndLightness = (int)(Math.random() * 33.0D) - 16; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[Lhy;", - garbageValue = "1" - ) - static VerticalAlignment[] method457() { - return new VerticalAlignment[]{VerticalAlignment.VerticalAlignment_centered, VerticalAlignment.field1634, VerticalAlignment.field1633}; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIIII)I", - garbageValue = "-360252292" - ) - static final int method456(int var0, int var1, int var2, int var3) { - return var0 * var2 - var3 * var1 >> 16; - } - - @ObfuscatedName("ao") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Lnu;III)Lui;", - garbageValue = "1499324687" + descriptor = "([BIIIIIIILkf;[Liw;)V" ) - @Export("SpriteBuffer_getSprite") - public static SpritePixels SpriteBuffer_getSprite(AbstractArchive var0, int var1, int var2) { - return !ApproximateRouteStrategy.method345(var0, var1, var2) ? null : UserComparator6.method693(); - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "([BIIIIIIILiv;[Lis;)V" - ) - static final void method459(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, Scene var8, CollisionMap[] var9) { + static final void method455(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, Scene var8, CollisionMap[] var9) { Buffer var10 = new Buffer(var0); int var11 = -1; while (true) { - int var12 = var10.method2561(); + int var12 = var10.readIncrSmallSmart(); if (var12 == 0) { return; } @@ -121,7 +84,7 @@ static final void method459(byte[] var0, int var1, int var2, int var3, int var4, int var19 = var18 >> 2; int var20 = var18 & 3; if (var17 == var4 && var16 >= var5 && var16 < var5 + 8 && var15 >= var6 && var15 < var6 + 8) { - ObjectComposition var21 = WorldMapElement.getObjectDefinition(var11); + ObjectComposition var21 = WorldMapSection2.getObjectDefinition(var11); int var24 = var16 & 7; int var25 = var15 & 7; int var27 = var21.sizeX; @@ -145,87 +108,46 @@ static final void method459(byte[] var0, int var1, int var2, int var3, int var4, var23 = 7 - var25 - (var28 - 1); } - var29 = var2 + var23; - int var30 = var3 + InterfaceParent.method473(var16 & 7, var15 & 7, var7, var21.sizeX, var21.sizeY, var20); - if (var29 > 0 && var30 > 0 && var29 < 103 && var30 < 103) { - int var31 = var1; - if ((Tiles_renderFlags[1][var29][var30] & 2) == 2) { - var31 = var1 - 1; + var29 = var23 + var2; + int var32 = var16 & 7; + int var33 = var15 & 7; + int var35 = var21.sizeX; + int var36 = var21.sizeY; + int var37; + if ((var20 & 1) == 1) { + var37 = var35; + var35 = var36; + var36 = var37; + } + + int var34 = var7 & 3; + int var31; + if (var34 == 0) { + var31 = var33; + } else if (var34 == 1) { + var31 = 7 - var32 - (var35 - 1); + } else if (var34 == 2) { + var31 = 7 - var33 - (var36 - 1); + } else { + var31 = var32; + } + + var37 = var31 + var3; + if (var29 > 0 && var37 > 0 && var29 < 103 && var37 < 103) { + int var38 = var1; + if ((Tiles_renderFlags[1][var29][var37] & 2) == 2) { + var38 = var1 - 1; } - CollisionMap var32 = null; - if (var31 >= 0) { - var32 = var9[var31]; + CollisionMap var39 = null; + if (var38 >= 0) { + var39 = var9[var38]; } - class128.addObjects(var1, var29, var30, var11, var20 + var7 & 3, var19, var8, var32); + Interpreter.addObjects(var1, var29, var37, var11, var20 + var7 & 3, var19, var8, var39); } } } } } - - @ObfuscatedName("be") - @ObfuscatedSignature( - descriptor = "(Lmi;III)V", - garbageValue = "2062613871" - ) - public static void method460(Widget var0, int var1, int var2) { - var0.field3101.bodyColors[var1] = var2; - var0.field3101.method1729(); - } - - @ObfuscatedName("hx") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "645111513" - ) - static final void method461() { - Renderable.method1290(); - FloorUnderlayDefinition.FloorUnderlayDefinition_cached.clear(); - class153.method802(); - UserComparator9.method685(); - NPCComposition.NpcDefinition_cached.clear(); - NPCComposition.NpcDefinition_cachedModels.clear(); - ItemComposition.ItemDefinition_cached.clear(); - ItemComposition.ItemDefinition_cachedModels.clear(); - ItemComposition.ItemDefinition_cachedSprites.clear(); - SequenceDefinition.SequenceDefinition_cached.clear(); - SequenceDefinition.SequenceDefinition_cachedFrames.clear(); - SequenceDefinition.SequenceDefinition_cachedModel.clear(); - SpotAnimationDefinition.SpotAnimationDefinition_cached.clear(); - SpotAnimationDefinition.SpotAnimationDefinition_cachedModels.clear(); - VarbitComposition.VarbitDefinition_cached.clear(); - VarpDefinition.VarpDefinition_cached.clear(); - class47.HitSplatDefinition_cachedSprites.method2483(); - SwapSongTask.HitSplatDefinition_cached.method2483(); - class394.method2053(); - HealthBarDefinition.HealthBarDefinition_cached.clear(); - HealthBarDefinition.HealthBarDefinition_cachedSprites.clear(); - StructComposition.StructDefinition_cached.clear(); - class126.method700(); - WorldMapElement.WorldMapElement_cachedSprites.clear(); - class219.method1150(); - class19.method60(); - Client.Widget_cachedModels.clear(); - Client.Widget_cachedFonts.clear(); - PlayerComposition.PlayerAppearance_cachedModels.clear(); - class261.method1501(); - ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).clear(); - Script.Script_cached.clear(); - Client.archive5.method2184(); - AttackOption.field1096.clearFiles(); - class318.archive7.clearFiles(); - ObjectSound.archive4.clearFiles(); - class28.field81.clearFiles(); - class499.archive9.clearFiles(); - class385.archive6.clearFiles(); - Message.archive11.clearFiles(); - PcmPlayer.archive8.clearFiles(); - class147.field1348.clearFiles(); - class141.archive10.clearFiles(); - class388.field3655.clearFiles(); - GrandExchangeOffer.archive12.clearFiles(); - class343.field3148.clearFiles(); - } } \ No newline at end of file diff --git a/osrs/src/main/java/Timer.java b/osrs/src/main/java/Timer.java index d338ce442..a2a58d69d 100644 --- a/osrs/src/main/java/Timer.java +++ b/osrs/src/main/java/Timer.java @@ -3,202 +3,151 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; - -@ObfuscatedName("py") +@ObfuscatedName("qn") @Implements("Timer") public class Timer { - @ObfuscatedName("au") - long field3755; - @ObfuscatedName("ae") - long field3752; - @ObfuscatedName("ao") - public boolean field3756; + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lfc;" + ) + static ClanSettings field3782; @ObfuscatedName("at") - long field3754; + long field3790; + @ObfuscatedName("ah") + long field3788; + @ObfuscatedName("ar") + public boolean field3792; + @ObfuscatedName("ao") + long field3789; + @ObfuscatedName("ab") + long field3787; + @ObfuscatedName("au") + long field3791; + @ObfuscatedName("aa") + int field3783; @ObfuscatedName("ac") - long field3751; - @ObfuscatedName("ai") - long field3753; + int field3784; + @ObfuscatedName("al") + int field3785; @ObfuscatedName("az") - int field3750; - @ObfuscatedName("ap") - int field3749; - @ObfuscatedName("aa") - int field3747; - @ObfuscatedName("af") - int field3748; + int field3786; public Timer() { - this.field3755 = -1L; - this.field3752 = -1L; - this.field3756 = false; - this.field3754 = 0L; - this.field3751 = 0L; - this.field3753 = 0L; - this.field3750 = 0; - this.field3749 = 0; - this.field3747 = 0; - this.field3748 = 0; + this.field3790 = -1L; + this.field3788 = -1L; + this.field3792 = false; + this.field3789 = 0L; + this.field3787 = 0L; + this.field3791 = 0L; + this.field3783 = 0; + this.field3784 = 0; + this.field3785 = 0; + this.field3786 = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "8457" + descriptor = "(I)V", + garbageValue = "919653710" ) - public void method2150() { - this.field3755 = GameEngine.clockNow(); + public void method2170() { + this.field3790 = SpotAnimationDefinition.method962(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1934849344" + garbageValue = "587956368" ) - public void method2151() { - if (-1L != this.field3755) { - this.field3751 = GameEngine.clockNow() - this.field3755; - this.field3755 = -1L; + public void method2171() { + if (this.field3790 != -1L) { + this.field3787 = SpotAnimationDefinition.method962() - this.field3790; + this.field3790 = -1L; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-350362388" + garbageValue = "1512116667" ) - public void method2152(int var1) { - this.field3752 = GameEngine.clockNow(); - this.field3750 = var1; + public void method2172(int var1) { + this.field3788 = SpotAnimationDefinition.method962(); + this.field3783 = var1; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1654604746" + descriptor = "(B)V", + garbageValue = "-7" ) - public void method2153() { - if (-1L != this.field3752) { - this.field3754 = GameEngine.clockNow() - this.field3752; - this.field3752 = -1L; + public void method2173() { + if (-1L != this.field3788) { + this.field3789 = SpotAnimationDefinition.method962() - this.field3788; + this.field3788 = -1L; } - ++this.field3747; - this.field3756 = true; + ++this.field3785; + this.field3792 = true; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1332700570" + garbageValue = "2032251318" ) - public void method2154() { - this.field3756 = false; - this.field3749 = 0; + public void method2174() { + this.field3792 = false; + this.field3784 = 0; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1203645178" + descriptor = "(B)V", + garbageValue = "36" ) - public void method2155() { - this.method2153(); + public void method2175() { + this.method2173(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1131300040" + descriptor = "(Luj;I)V", + garbageValue = "221618490" ) @Export("write") public void write(Buffer var1) { - ClientPreferences.method539(var1, this.field3751); - ClientPreferences.method539(var1, this.field3754); - ClientPreferences.method539(var1, this.field3753); - var1.writeShort(this.field3750); - var1.writeShort(this.field3749); - var1.writeShort(this.field3747); - var1.writeShort(this.field3748); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;ZII)V", - garbageValue = "-1307965199" - ) - static void method2157(AbstractArchive var0, AbstractArchive var1, boolean var2, int var3) { - if (class403.clearLoginScreen) { - if (var3 == 4) { - PcmPlayer.method212(4); - } - - } else { - if (var3 == 0) { - WorldMapAreaData.method1574(var2); - } else { - PcmPlayer.method212(var3); - } - - Rasterizer2D.Rasterizer2D_clear(); - byte[] var4 = var0.takeFileByNames("title.jpg", ""); - Login.leftTitleSprite = WorldMapData_1.method1484(var4); - Bounds.rightTitleSprite = Login.leftTitleSprite.mirrorHorizontally(); - int var5 = Client.worldProperties; - if ((var5 & class510.field4132.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "logo_deadman_mode", ""); - } else if ((var5 & class510.field4131.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "logo_seasonal_mode", ""); - } else if ((var5 & class510.field4122.rsOrdinal()) != 0) { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "logo_speedrunning", ""); - } else { - SoundSystem.logoSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "logo", ""); - } - - Login.titleboxSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "titlebox", ""); - class219.titlebuttonSprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton", ""); - Login.field777 = class172.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton_large", ""); - ItemContainer.field853 = class172.SpriteBuffer_getIndexedSpriteByName(var1, "play_now_text", ""); - class172.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton_wide42,1", ""); - Login.runesSprite = class219.method1149(var1, "runes", ""); - class13.title_muteSprite = class219.method1149(var1, "title_mute", ""); - Login.options_buttons_0Sprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,0", ""); - Skills.field3145 = class172.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,4", ""); - UserComparator6.options_buttons_2Sprite = class172.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,2", ""); - VerticalAlignment.field1631 = class172.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,6", ""); - class136.field1295 = Login.options_buttons_0Sprite.subWidth; - User.field3801 = Login.options_buttons_0Sprite.subHeight; - class139.field1323 = new LoginScreenAnimation(Login.runesSprite); - if (var2) { - Login.Login_username = ""; - Login.Login_password = ""; - Login.field768 = new String[8]; - Login.field752 = 0; - } + long var2 = this.field3787; + var2 /= 10L; + if (var2 < 0L) { + var2 = 0L; + } else if (var2 > 65535L) { + var2 = 65535L; + } - class503.field4107 = 0; - class369.otp = ""; - Login.field743 = true; - Login.worldSelectOpen = false; - if (!class449.clientPreferences.getTitleMusicDisabled()) { - ArrayList var6 = new ArrayList(); - var6.add(new MusicSong(class385.archive6, "scape main", "", 255, false)); - class53.method291(var6, 0, 0, 0, 100, false); - } else { - Script.method445(0, 0); - } + var1.writeShort((int)var2); + long var4 = this.field3789; + var4 /= 10L; + if (var4 < 0L) { + var4 = 0L; + } else if (var4 > 65535L) { + var4 = 65535L; + } - UrlRequester.method652(); - CollisionMap.method1122().method1932(false); - class403.clearLoginScreen = true; - Login.xPadding = (class113.canvasWidth - 765) / 2; - Login.loginBoxX = Login.xPadding + 202; - class452.loginBoxCenter = Login.loginBoxX + 180; - Login.leftTitleSprite.drawAt(Login.xPadding, 0); - Bounds.rightTitleSprite.drawAt(Login.xPadding + 382, 0); - SoundSystem.logoSprite.drawAt(Login.xPadding + 382 - SoundSystem.logoSprite.subWidth / 2, 18); + var1.writeShort((int)var4); + long var6 = this.field3791; + var6 /= 10L; + if (var6 < 0L) { + var6 = 0L; + } else if (var6 > 65535L) { + var6 = 65535L; } + + var1.writeShort((int)var6); + var1.writeShort(this.field3783); + var1.writeShort(this.field3784); + var1.writeShort(this.field3785); + var1.writeShort(this.field3786); } } \ No newline at end of file diff --git a/osrs/src/main/java/TriBool.java b/osrs/src/main/java/TriBool.java index d6fe9b27c..e9bdb20d6 100644 --- a/osrs/src/main/java/TriBool.java +++ b/osrs/src/main/java/TriBool.java @@ -3,24 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qp") +@ObfuscatedName("rw") @Implements("TriBool") public class TriBool { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("TriBool_unknown") public static final TriBool TriBool_unknown; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("TriBool_true") public static final TriBool TriBool_true; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lqp;" + descriptor = "Lrw;" ) @Export("TriBool_false") public static final TriBool TriBool_false; @@ -33,4 +33,74 @@ public class TriBool { TriBool() { } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-999239127" + ) + static int method2273(int var0, int var1) { + FloorOverlayDefinition var2 = Canvas.method85(var0); + if (var2 == null) { + return var1; + } else { + int var4; + int var5; + int var6; + int var7; + int var8; + if (var2.secondaryRgb >= 0) { + var4 = var2.secondaryHue; + var5 = var2.secondarySaturation; + var6 = var2.secondaryLightness; + if (var6 > 179) { + var5 /= 2; + } + + if (var6 > 192) { + var5 /= 2; + } + + if (var6 > 217) { + var5 /= 2; + } + + if (var6 > 243) { + var5 /= 2; + } + + var7 = (var5 / 32 << 7) + var6 / 2 + (var4 / 4 << 10); + var8 = UserComparator3.method680(var7, 96); + return Rasterizer3D.Rasterizer3D_colorPalette[var8] | -16777216; + } else if (var2.texture >= 0) { + int var3 = UserComparator3.method680(Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var2.texture), 96); + return Rasterizer3D.Rasterizer3D_colorPalette[var3] | -16777216; + } else if (var2.primaryRgb == 16711935) { + return var1; + } else { + var4 = var2.hue; + var5 = var2.saturation; + var6 = var2.lightness; + if (var6 > 179) { + var5 /= 2; + } + + if (var6 > 192) { + var5 /= 2; + } + + if (var6 > 217) { + var5 /= 2; + } + + if (var6 > 243) { + var5 /= 2; + } + + var7 = (var5 / 32 << 7) + var6 / 2 + (var4 / 4 << 10); + var8 = UserComparator3.method680(var7, 96); + return Rasterizer3D.Rasterizer3D_colorPalette[var8] | -16777216; + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/UrlRequest.java b/osrs/src/main/java/UrlRequest.java index 6627c7dc6..53c5948fd 100644 --- a/osrs/src/main/java/UrlRequest.java +++ b/osrs/src/main/java/UrlRequest.java @@ -5,68 +5,669 @@ import java.net.URL; -@ObfuscatedName("et") +@ObfuscatedName("ea") @Implements("UrlRequest") public class UrlRequest { - @ObfuscatedName("ae") - static int field1175; - @ObfuscatedName("ao") - static int field1176; - @ObfuscatedName("ad") - public static short[] field1174; - @ObfuscatedName("au") - final URL field1177; + @ObfuscatedName("ah") + static int field1180; + @ObfuscatedName("ar") + static int field1181; + @ObfuscatedName("kz") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("headIconPkSprites") + static SpritePixels[] headIconPkSprites; + @ObfuscatedName("pr") + @Export("selectedSpellFlags") + static int selectedSpellFlags; @ObfuscatedName("at") - volatile int field1179; - @ObfuscatedName("ac") + final URL field1184; + @ObfuscatedName("ao") + volatile int field1186; + @ObfuscatedName("ab") @Export("response0") volatile byte[] response0; static { - field1175 = -1; - field1176 = -2; + field1180 = -1; + field1181 = -2; } UrlRequest(URL var1) { - this.field1179 = field1175; - this.field1177 = var1; + this.field1186 = field1180; + this.field1184 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "1941771443" + garbageValue = "143275860" ) @Export("isDone") public boolean isDone() { - return this.field1179 != field1175; + return this.field1186 != field1180; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-90219734" + descriptor = "(B)[B", + garbageValue = "1" ) @Export("getResponse") public byte[] getResponse() { return this.response0; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "79865594" + garbageValue = "1515971347" + ) + public String method659() { + return this.field1184.toString(); + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Lpf;Lpf;Lpf;I)V", + garbageValue = "-1245628340" + ) + @Export("drawTitle") + static void drawTitle(Font var0, Font var1, Font var2) { + Login.xPadding = (Language.canvasWidth - 765) / 2; + Login.loginBoxX = Login.xPadding + 202; + class157.loginBoxCenter = Login.loginBoxX + 180; + if (Login.worldSelectOpen) { + ParamComposition.method981(var0, var1); + } else { + class250.leftTitleSprite.drawAt(Login.xPadding, 0); + Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + Login.logoSprite.drawAt(Login.xPadding + 382 - Login.logoSprite.subWidth / 2, 18); + int var4; + if (Client.gameState == 0 || Client.gameState == 5) { + byte var3 = 20; + var0.drawCentered("RuneScape is loading - please wait...", Login.loginBoxX + 180, 245 - var3, 16777215, -1); + var4 = 253 - var3; + Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 152, var4, 304, 34, 9179409); + Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 151, var4 + 1, 302, 32, 0); + Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150, var4 + 2, Login.Login_loadingPercent * 3, 30, 9179409); + Rasterizer2D.Rasterizer2D_fillRectangle(Login.Login_loadingPercent * 3 + (Login.loginBoxX + 180 - 150), var4 + 2, 300 - Login.Login_loadingPercent * 3, 30, 0); + var0.drawCentered(Login.Login_loadingText, Login.loginBoxX + 180, 276 - var3, 16777215, -1); + } + + String var5; + String var6; + String var7; + short var23; + int var24; + short var25; + if (Client.gameState == 20) { + Login.titleboxSprite.drawAt(Login.loginBoxX + 180 - Login.titleboxSprite.subWidth / 2, 271 - Login.titleboxSprite.subHeight / 2); + var23 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var24 += 7; + if (Login.loginIndex != 4 && Login.loginIndex != 10) { + var0.draw("Login: ", Login.loginBoxX + 180 - 110, var24, 16777215, 0); + var25 = 200; + var5 = WorldMapIcon_1.clientPreferences.getIsUsernameHidden() ? MusicPatch.method1709(Login.Login_username) : Login.Login_username; + + for (var6 = var5; var0.stringWidth(var6) > var25; var6 = var6.substring(0, var6.length() - 1)) { + } + + var0.draw(AbstractFont.escapeBrackets(var6), Login.loginBoxX + 180 - 70, var24, 16777215, 0); + var24 += 15; + + for (var7 = MusicPatch.method1709(Login.Login_password); var0.stringWidth(var7) > var25; var7 = var7.substring(1)) { + } + + var0.draw("Password: " + var7, Login.loginBoxX + 180 - 108, var24, 16777215, 0); + var24 += 15; + } + } + + if (Client.gameState == 10 || Client.gameState == 11 || Client.gameState == 50) { + Login.titleboxSprite.drawAt(Login.loginBoxX, 171); + short var18; + if (Login.loginIndex == 0) { + var23 = 251; + var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 30; + var4 = Login.loginBoxX + 180 - 80; + var18 = 291; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawLines("New User", var4 - 73, var18 - 20, 144, 40, 16777215, 0, 1, 1, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawLines("Existing User", var4 - 73, var18 - 20, 144, 40, 16777215, 0, 1, 1, 0); + } else if (Login.loginIndex == 1) { + var0.drawCentered(Login.Login_response0, Login.loginBoxX + 180, 201, 16776960, 0); + var23 = 236; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16777215, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var4 = Login.loginBoxX + 180 - 80; + var18 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Continue", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Cancel", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 2) { + var23 = 201; + var0.drawCentered(Login.Login_response1, class157.loginBoxCenter, var23, 16776960, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, class157.loginBoxCenter, var24, 16776960, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, class157.loginBoxCenter, var24, 16776960, 0); + var24 += 15; + var24 += 7; + var0.draw("Login: ", class157.loginBoxCenter - 110, var24, 16777215, 0); + var25 = 200; + var5 = WorldMapIcon_1.clientPreferences.getIsUsernameHidden() ? MusicPatch.method1709(Login.Login_username) : Login.Login_username; + + for (var6 = var5; var0.stringWidth(var6) > var25; var6 = var6.substring(1)) { + } + + var0.draw(AbstractFont.escapeBrackets(var6) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? class167.colorStartTag(16776960) + "|" : ""), class157.loginBoxCenter - 70, var24, 16777215, 0); + var24 += 15; + + for (var7 = MusicPatch.method1709(Login.Login_password); var0.stringWidth(var7) > var25; var7 = var7.substring(1)) { + } + + var0.draw("Password: " + var7 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? class167.colorStartTag(16776960) + "|" : ""), class157.loginBoxCenter - 108, var24, 16777215, 0); + var24 += 15; + var23 = 277; + int var8 = class157.loginBoxCenter + -117; + boolean var10 = Client.Login_isUsernameRemembered; + boolean var11 = Login.field743; + IndexedSprite var9 = var10 ? (var11 ? GrandExchangeEvents.field3611 : FriendsList.options_buttons_2Sprite) : (var11 ? Login.field779 : class310.options_buttons_0Sprite); + var9.drawAt(var8, var23); + var8 = var8 + var9.subWidth + 5; + var1.draw("Remember username", var8, var23 + 13, 16776960, 0); + var8 = class157.loginBoxCenter + 24; + boolean var14 = WorldMapIcon_1.clientPreferences.getIsUsernameHidden(); + boolean var15 = Login.field745; + IndexedSprite var13 = var14 ? (var15 ? GrandExchangeEvents.field3611 : FriendsList.options_buttons_2Sprite) : (var15 ? Login.field779 : class310.options_buttons_0Sprite); + var13.drawAt(var8, var23); + var8 = var8 + var13.subWidth + 5; + var1.draw("Hide username", var8, var23 + 13, 16776960, 0); + var24 = var23 + 15; + int var16 = class157.loginBoxCenter - 80; + short var17 = 321; + Login.titlebuttonSprite.drawAt(var16 - 73, var17 - 20); + var0.drawCentered("Login", var16, var17 + 5, 16777215, 0); + var16 = class157.loginBoxCenter + 80; + Login.titlebuttonSprite.drawAt(var16 - 73, var17 - 20); + var0.drawCentered("Cancel", var16, var17 + 5, 16777215, 0); + var23 = 357; + switch(Login.field750) { + case 2: + ModeWhere.field3652 = "Having trouble logging in?"; + break; + default: + ModeWhere.field3652 = "Can't login? Click here."; + } + + Login.field775 = new Bounds(class157.loginBoxCenter, var23, var1.stringWidth(ModeWhere.field3652), 11); + class7.field13 = new Bounds(class157.loginBoxCenter, var23, var1.stringWidth("Still having trouble logging in?"), 11); + var1.drawCentered(ModeWhere.field3652, class157.loginBoxCenter, var23, 16777215, 0); + } else if (Login.loginIndex == 3) { + var23 = 201; + var0.drawCentered("Incorrect username or password.", Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 20; + var1.drawCentered("If you have upgraded to a Jagex Account, you", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 20; + var1.drawCentered("need to log in using the Jagex Launcher instead.", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180; + var18 = 276; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var2.drawCentered("Try again", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180; + var18 = 326; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var2.drawCentered("Forgotten password?", var4, var18 + 5, 16777215, 0); + } else { + int var19; + short var27; + int var28; + if (Login.loginIndex == 4) { + var0.drawCentered("Authenticator", Login.loginBoxX + 180, 201, 16776960, 0); + var23 = 236; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16777215, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var0.draw("PIN: " + MusicPatch.method1709(NewShit.otp) + (Client.cycle % 40 < 20 ? class167.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var24, 16777215, 0); + var24 -= 8; + var0.draw("Trust this computer", Login.loginBoxX + 180 - 9, var24, 16776960, 0); + var24 += 15; + var0.draw("for 30 days: ", Login.loginBoxX + 180 - 9, var24, 16776960, 0); + var4 = Login.loginBoxX + 180 - 9 + var0.stringWidth("for 30 days: ") + 15; + var28 = var24 - var0.ascent; + IndexedSprite var26; + if (Login.field744) { + var26 = FriendsList.options_buttons_2Sprite; + } else { + var26 = class310.options_buttons_0Sprite; + } + + var26.drawAt(var4, var28); + var24 += 15; + var19 = Login.loginBoxX + 180 - 80; + var27 = 321; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + var0.drawCentered("Continue", var19, var27 + 5, 16777215, 0); + var19 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + var0.drawCentered("Cancel", var19, var27 + 5, 16777215, 0); + var1.drawCentered("Can't login? Click here.", Login.loginBoxX + 180, var27 + 36, 16777215, 0); + } else if (Login.loginIndex == 5) { + var0.drawCentered("Forgotten your password?", Login.loginBoxX + 180, 201, 16776960, 0); + var23 = 221; + var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var2.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var2.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var24 += 14; + var0.draw("Username/email: ", Login.loginBoxX + 180 - 145, var24, 16777215, 0); + var25 = 174; + var5 = WorldMapIcon_1.clientPreferences.getIsUsernameHidden() ? MusicPatch.method1709(Login.Login_username) : Login.Login_username; + + for (var6 = var5; var0.stringWidth(var6) > var25; var6 = var6.substring(1)) { + } + + var0.draw(AbstractFont.escapeBrackets(var6) + (Client.cycle % 40 < 20 ? class167.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var24, 16777215, 0); + var24 += 15; + var19 = Login.loginBoxX + 180 - 80; + var27 = 321; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + var0.drawCentered("Recover", var19, var27 + 5, 16777215, 0); + var19 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + var0.drawCentered("Back", var19, var27 + 5, 16777215, 0); + var27 = 356; + var1.drawCentered("Still having trouble logging in?", class157.loginBoxCenter, var27, 268435455, 0); + } else if (Login.loginIndex == 6) { + var23 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180; + var18 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Back", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 7) { + if (PendingSpawn.field949 && !Client.onMobile) { + var23 = 201; + var0.drawCentered(Login.Login_response1, class157.loginBoxCenter, var23, 16776960, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, class157.loginBoxCenter, var24, 16776960, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, class157.loginBoxCenter, var24, 16776960, 0); + var4 = class157.loginBoxCenter - 150; + var24 += 10; + + for (var28 = 0; var28 < 8; ++var28) { + Login.titlebuttonSprite.method2671(var4, var24, 30, 40); + boolean var20 = var28 == Login.field753 & Client.cycle % 40 < 20; + var0.draw((Login.field769[var28] == null ? "" : Login.field769[var28]) + (var20 ? class167.colorStartTag(16776960) + "|" : ""), var4 + 10, var24 + 27, 16777215, 0); + if (var28 != 1 && var28 != 3) { + var4 += 35; + } else { + var4 += 50; + var0.draw(AbstractFont.escapeBrackets("/"), var4 - 13, var24 + 27, 16777215, 0); + } + } + + var28 = class157.loginBoxCenter - 80; + short var29 = 321; + Login.titlebuttonSprite.drawAt(var28 - 73, var29 - 20); + var0.drawCentered("Submit", var28, var29 + 5, 16777215, 0); + var28 = class157.loginBoxCenter + 80; + Login.titlebuttonSprite.drawAt(var28 - 73, var29 - 20); + var0.drawCentered("Cancel", var28, var29 + 5, 16777215, 0); + } else { + var23 = 216; + var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180 - 80; + var18 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Set Date of Birth", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Back", var4, var18 + 5, 16777215, 0); + } + } else if (Login.loginIndex == 8) { + var23 = 216; + var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var2.drawCentered("For more information, please take a look at", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var2.drawCentered("our privacy policy.", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180 - 80; + var18 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Privacy Policy", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Back", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 9) { + var23 = 221; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 25; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 25; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16776960, 0); + var4 = Login.loginBoxX + 180; + var18 = 311; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Try again", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 10) { + var24 = Login.loginBoxX + 180; + var25 = 209; + var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var25, 16776960, 0); + var4 = var25 + 20; + Login.field776.drawAt(var24 - 109, var4); + if (Login.field763.isEmpty()) { + class11.field38.drawAt(var24 - 48, var4 + 18); + } else { + class11.field38.drawAt(var24 - 48, var4 + 5); + var0.drawCentered(Login.field763, var24, var4 + 68 - 15, 16776960, 0); + } + } else if (Login.loginIndex == 12) { + var24 = class157.loginBoxCenter; + var25 = 216; + var2.drawCentered("Before using this app, please read and accept our", var24, var25, 16777215, 0); + var4 = var25 + 17; + var2.drawCentered("terms of use, privacy policy, and end user licence", var24, var4, 16777215, 0); + var4 += 17; + var2.drawCentered("agreement (EULA).", var24, var4, 16777215, 0); + var4 += 17; + var2.drawCentered("By accepting, you agree to these documents.", var24, var4, 16777215, 0); + var24 = class157.loginBoxCenter - 80; + var25 = 311; + Login.titlebuttonSprite.drawAt(var24 - 73, var25 - 20); + var0.drawCentered("Accept", var24, var25 + 5, 16777215, 0); + var24 = class157.loginBoxCenter + 80; + Login.titlebuttonSprite.drawAt(var24 - 73, var25 - 20); + var0.drawCentered("Decline", var24, var25 + 5, 16777215, 0); + } else if (Login.loginIndex == 13) { + var23 = 231; + var2.drawCentered("You must accept our terms of use, privacy policy,", Login.loginBoxX + 180, var23, 16777215, 0); + var24 = var23 + 20; + var2.drawCentered("and end user licence agreement to continue.", Login.loginBoxX + 180, var24, 16777215, 0); + var4 = Login.loginBoxX + 180; + var23 = 311; + Login.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); + var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); + } else if (Login.loginIndex == 14) { + var23 = 201; + String var21 = ""; + var5 = ""; + var6 = ""; + switch(Login.field751) { + case 0: + var21 = "Your account has been involved"; + var5 = "in serious rule breaking."; + var6 = ""; + break; + case 1: + var21 = "Your account has been locked due to"; + var5 = "suspicious activity."; + var6 = "Please recover your account."; + break; + case 2: + var21 = "The unpaid balance on your account needs"; + var5 = "to be resolved before you can play."; + var6 = Strings.field3326; + break; + default: + SoundSystem.Login_promptCredentials(false); + } + + var0.drawCentered(var21, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 20; + var0.drawCentered(var5, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 20; + var0.drawCentered(var6, Login.loginBoxX + 180, var24, 16776960, 0); + var19 = Login.loginBoxX + 180; + var27 = 276; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + if (Login.field751 == 1) { + var0.drawCentered("Recover Account", var19, var27 + 5, 16777215, 0); + } else { + var0.drawCentered("View Appeal Options", var19, var27 + 5, 16777215, 0); + } + + var19 = Login.loginBoxX + 180; + var27 = 326; + Login.titlebuttonSprite.drawAt(var19 - 73, var27 - 20); + var0.drawCentered("Back", var19, var27 + 5, 16777215, 0); + } else if (Login.loginIndex == 24) { + var23 = 221; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16777215, 0); + var24 = var23 + 15; + var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16777215, 0); + var24 += 15; + var4 = Login.loginBoxX + 180; + var18 = 301; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Ok", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 32) { + var23 = 216; + var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 15; + var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180 - 80; + var18 = 321; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Set Date of Birth", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180 + 80; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var0.drawCentered("Back", var4, var18 + 5, 16777215, 0); + } else if (Login.loginIndex == 33) { + var23 = 201; + var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var23, 16776960, 0); + var24 = var23 + 20; + var1.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 20; + var1.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var24, 16776960, 0); + var24 += 15; + var4 = Login.loginBoxX + 180; + var18 = 276; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var2.drawCentered("Download Launcher", var4, var18 + 5, 16777215, 0); + var4 = Login.loginBoxX + 180; + var18 = 326; + Login.titlebuttonSprite.drawAt(var4 - 73, var18 - 20); + var2.drawCentered("Back", var4, var18 + 5, 16777215, 0); + } + } + } + + if (Client.gameState >= 10) { + int[] var22 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var22); + Rasterizer2D.Rasterizer2D_setClip(Login.xPadding, 0, Login.xPadding + 765, class47.canvasHeight); + EnumComposition.field1505.draw(Login.xPadding - 22, Client.cycle); + EnumComposition.field1505.draw(Login.xPadding + 22 + 765 - 128, Client.cycle); + Rasterizer2D.Rasterizer2D_setClipArray(var22); + } + + Login.title_muteSprite[WorldMapIcon_1.clientPreferences.getTitleMusicDisabled() ? 1 : 0].drawAt(Login.xPadding + 765 - 40, 463); + if (Client.gameState > 5 && class85.clientLanguage == Language.Language_EN) { + if (FadeOutTask.field3749 != null) { + var24 = Login.xPadding + 5; + var25 = 463; + byte var31 = 100; + byte var30 = 35; + FadeOutTask.field3749.drawAt(var24, var25); + var0.drawCentered("World" + " " + Client.worldId, var31 / 2 + var24, var30 / 2 + var25 - 2, 16777215, 0); + if (class542.World_request != null) { + var1.drawCentered("Loading...", var31 / 2 + var24, var30 / 2 + var25 + 12, 16777215, 0); + } else { + var1.drawCentered("Click to switch", var31 / 2 + var24, var30 / 2 + var25 + 12, 16777215, 0); + } + } else { + FadeOutTask.field3749 = class313.SpriteBuffer_getIndexedSpriteByName(GrandExchangeOfferOwnWorldComparator.archive8, "sl_button", ""); + } + } + + } + } + + @ObfuscatedName("ll") + @ObfuscatedSignature( + descriptor = "(IIIIIIB)V", + garbageValue = "-1" ) - public String method667() { - return this.field1177.toString(); + static final void method661(int var0, int var1, int var2, int var3, int var4, int var5) { + int var6 = var2 - var0; + int var7 = var3 - var1; + int var8 = var6 >= 0 ? var6 : -var6; + int var9 = var7 >= 0 ? var7 : -var7; + int var10 = var8; + if (var8 < var9) { + var10 = var9; + } + + if (var10 != 0) { + int var11 = (var6 << 16) / var10; + int var12 = (var7 << 16) / var10; + if (var12 <= var11) { + var11 = -var11; + } else { + var12 = -var12; + } + + int var13 = var5 * var12 >> 17; + int var14 = var5 * var12 + 1 >> 17; + int var15 = var5 * var11 >> 17; + int var16 = var5 * var11 + 1 >> 17; + var0 -= Rasterizer2D.Rasterizer2D_xClipStart; + var1 -= Rasterizer2D.Rasterizer2D_yClipStart; + int var17 = var0 + var13; + int var18 = var0 - var14; + int var19 = var0 + var6 - var14; + int var20 = var0 + var6 + var13; + int var21 = var15 + var1; + int var22 = var1 - var16; + int var23 = var7 + var1 - var16; + int var24 = var7 + var15 + var1; + Rasterizer3D.method1431(var17, var18, var19); + Rasterizer3D.method1433(var21, var22, var23, var17, var18, var19, 0.0F, 0.0F, 0.0F, var4); + Rasterizer3D.method1431(var17, var19, var20); + Rasterizer3D.method1433(var21, var23, var24, var17, var19, var20, 0.0F, 0.0F, 0.0F, var4); + } } - @ObfuscatedName("au") + @ObfuscatedName("ly") @ObfuscatedSignature( - descriptor = "(I)[Lnb;", - garbageValue = "2139207855" + descriptor = "([Lnn;IIIZB)V", + garbageValue = "2" ) - public static GameBuild[] method664() { - return new GameBuild[]{GameBuild.LIVE, GameBuild.RC, GameBuild.WIP, GameBuild.BUILDLIVE}; + @Export("resizeInterface") + static void resizeInterface(Widget[] var0, int var1, int var2, int var3, boolean var4) { + for (int var5 = 0; var5 < var0.length; ++var5) { + Widget var6 = var0[var5]; + if (var6 != null && var6.parentId == var1) { + Renderable.alignWidgetSize(var6, var2, var3, var4); + JagexCache.alignWidgetPosition(var6, var2, var3); + if (var6.scrollX > var6.scrollWidth - var6.width) { + var6.scrollX = var6.scrollWidth - var6.width; + } + + if (var6.scrollX < 0) { + var6.scrollX = 0; + } + + if (var6.scrollY > var6.scrollHeight - var6.height) { + var6.scrollY = var6.scrollHeight - var6.height; + } + + if (var6.scrollY < 0) { + var6.scrollY = 0; + } + + if (var6.type == 0) { + class132.revalidateWidgetScroll(var0, var6, var4); + } + } + } + + } + + @ObfuscatedName("nl") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZB)V", + garbageValue = "99" + ) + @Export("findItemDefinitions") + static void findItemDefinitions(String var0, boolean var1) { + var0 = var0.toLowerCase(); + short[] var2 = new short[16]; + int var3 = 0; + + for (int var4 = 0; var4 < ItemComposition.ItemDefinition_fileCount; ++var4) { + ItemComposition var5 = class214.ItemDefinition_get(var4); + if ((!var1 || var5.isTradable) && var5.noteTemplate == -1 && var5.name.toLowerCase().indexOf(var0) != -1) { + if (var3 >= 250) { + BuddyRankComparator.foundItemIdCount = -1; + MusicPatchNode.foundItemIds = null; + return; + } + + if (var3 >= var2.length) { + short[] var6 = new short[var2.length * 2]; + + for (int var7 = 0; var7 < var3; ++var7) { + var6[var7] = var2[var7]; + } + + var2 = var6; + } + + var2[var3++] = (short)var4; + } + } + + MusicPatchNode.foundItemIds = var2; + ApproximateRouteStrategy.foundItemIndex = 0; + BuddyRankComparator.foundItemIdCount = var3; + String[] var8 = new String[BuddyRankComparator.foundItemIdCount]; + + for (int var9 = 0; var9 < BuddyRankComparator.foundItemIdCount; ++var9) { + var8[var9] = class214.ItemDefinition_get(var2[var9]).name; + } + + class215.method1095(var8, MusicPatchNode.foundItemIds); } } \ No newline at end of file diff --git a/osrs/src/main/java/UrlRequester.java b/osrs/src/main/java/UrlRequester.java index fccb81eaf..957743d63 100644 --- a/osrs/src/main/java/UrlRequester.java +++ b/osrs/src/main/java/UrlRequester.java @@ -11,46 +11,43 @@ import java.util.LinkedList; import java.util.Queue; -@ObfuscatedName("ev") +@ObfuscatedName("el") @Implements("UrlRequester") public abstract class UrlRequester implements Runnable { - @ObfuscatedName("je") - @Export("baseX") - static int baseX; - @ObfuscatedName("au") - final Thread field1169; - @ObfuscatedName("ae") + @ObfuscatedName("at") + final Thread field1176; + @ObfuscatedName("ah") @Export("isClosed") volatile boolean isClosed; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("requests") Queue requests; - @ObfuscatedName("at") - int field1167; + @ObfuscatedName("ao") + int field1174; UrlRequester(int var1) { this.requests = new LinkedList(); - this.field1169 = new Thread(this); - this.field1169.setPriority(1); - this.field1169.start(); - this.field1167 = var1; + this.field1176 = new Thread(this); + this.field1176.setPriority(1); + this.field1176.start(); + this.field1174 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Let;B)V", - garbageValue = "-114" + descriptor = "(Lea;I)V", + garbageValue = "422697771" ) @Export("vmethod2700") abstract void vmethod2700(UrlRequest var1) throws IOException; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(Ljava/net/URLConnection;B)I", - garbageValue = "20" + garbageValue = "117" ) - int method647(URLConnection var1) { - int var2 = UrlRequest.field1176; + int method645(URLConnection var1) { + int var2 = UrlRequest.field1181; if (var1 != null) { try { if (var1 instanceof HttpURLConnection) { @@ -63,25 +60,25 @@ int method647(URLConnection var1) { return var2; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljava/net/URLConnection;B)V", - garbageValue = "61" + descriptor = "(Ljava/net/URLConnection;I)V", + garbageValue = "-727405176" ) - void method648(URLConnection var1) { + void method646(URLConnection var1) { var1.setConnectTimeout(5000); var1.setReadTimeout(5000); var1.setUseCaches(false); var1.setRequestProperty("Connection", "close"); - var1.setRequestProperty("User-Agent", "OldSchoolRuneScape/" + this.field1167); + var1.setRequestProperty("User-Agent", "OldSchoolRuneScape/" + this.field1174); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljava/net/URLConnection;Let;I)V", - garbageValue = "-703916602" + descriptor = "(Ljava/net/URLConnection;Lea;I)V", + garbageValue = "-1518278388" ) - void method649(URLConnection var1, UrlRequest var2) { + void method647(URLConnection var1, UrlRequest var2) { DataInputStream var3 = null; try { @@ -93,23 +90,23 @@ void method649(URLConnection var1, UrlRequest var2) { var3.readFully(var4); } else { var4 = new byte[0]; - byte[] var6 = class125.ByteArrayPool_getArray(5000); + byte[] var6 = class362.ByteArrayPool_getArray(5000); - byte[] var8; - for (int var7 = var3.read(var6, 0, var6.length); var7 > -1; var4 = var8) { - var8 = new byte[var4.length + var7]; + for (int var7 = var3.read(var6); var7 > -1; var7 = var3.read(var6)) { + byte[] var8 = new byte[var4.length + var7]; System.arraycopy(var4, 0, var8, 0, var4.length); System.arraycopy(var6, 0, var8, var4.length, var7); + var4 = var8; } - PlayerType.ByteArrayPool_release(var6); + SwapSongTask.ByteArrayPool_release(var6); } var2.response0 = var4; } catch (IOException var14) { var2.response0 = null; } finally { - var2.field1179 = this.method647(var1); + var2.field1186 = this.method645(var1); } if (var3 != null) { @@ -121,10 +118,10 @@ void method649(URLConnection var1, UrlRequest var2) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljava/net/URL;B)Let;", - garbageValue = "95" + descriptor = "(Ljava/net/URL;I)Lea;", + garbageValue = "-511964616" ) @Export("request") public UrlRequest request(URL var1) { @@ -136,10 +133,10 @@ public UrlRequest request(URL var1) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-710296298" + garbageValue = "-264971545" ) @Export("close") public void close() { @@ -150,7 +147,7 @@ public void close() { this.notify(); } - this.field1169.join(); + this.field1176.join(); } catch (InterruptedException var4) { } @@ -175,60 +172,80 @@ public void run() { this.vmethod2700(var1); } catch (Exception var7) { - Messages.RunException_sendStackTrace((String)null, var7); + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var7); } } } - @ObfuscatedName("az") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2153026" + descriptor = "(IIILhs;II)V", + garbageValue = "237436184" ) - public static void method652() { - class305.field2773.clear(); - } + static void method648(int var0, int var1, int var2, ObjectComposition var3, int var4) { + ObjectSound var5 = new ObjectSound(); + var5.plane = var0; + var5.x = var1 * 128; + var5.y = var2 * 128; + int var6 = var3.sizeX; + int var7 = var3.sizeY; + if (var4 == 1 || var4 == 3) { + var6 = var3.sizeY; + var7 = var3.sizeX; + } - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-85" - ) - public static void method653() { - ItemComposition.ItemDefinition_cachedSprites.clear(); - } + var5.maxX = (var6 + var1) * 128; + var5.maxY = (var7 + var2) * 128; + var5.soundEffectId = var3.ambientSoundId; + var5.field691 = var3.int7 * 128; + var5.field700 = var3.int5; + var5.field696 = var3.int6; + var5.soundEffectIds = var3.soundEffectIds; + if (var3.transforms != null) { + var5.obj = var3; + var5.set(); + } - @ObfuscatedName("hb") - @ObfuscatedSignature( - descriptor = "(I)J", - garbageValue = "286684178" - ) - static long method654() { - return Client.playerUUID; - } + ObjectSound.objectSounds.addFirst(var5); + if (var5.soundEffectIds != null) { + var5.field699 = var5.field700 + (int)(Math.random() * (double)(var5.field696 - var5.field700)); + } - @ObfuscatedName("jb") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1352739934" - ) - static boolean method655() { - return (Client.drawPlayerNames & 2) != 0; } - @ObfuscatedName("nj") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1224778546" + descriptor = "(ILdt;ZS)I", + garbageValue = "-175" ) - @Export("Clan_joinChat") - static final void Clan_joinChat(String var0) { - if (!var0.equals("")) { - PacketBufferNode var1 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLAN_JOINCHAT_LEAVECHAT, Client.packetWriter.isaacCipher); - var1.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var0)); - var1.packetBuffer.writeStringCp1252NullTerminated(var0); - Client.packetWriter.addNode(var1); + static int method651(int var0, Script var1, boolean var2) { + Widget var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var0 == 2800) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapData_0.Widget_unpackTargetMask(class361.getWidgetFlags(var3)); + return 1; + } else if (var0 != 2801) { + if (var0 == 2802) { + if (var3.dataText == null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.dataText; + } + + return 1; + } else { + return 2; + } + } else { + int var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + --var4; + if (var3.actions != null && var4 < var3.actions.length && var3.actions[var4] != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.actions[var4]; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; } } } \ No newline at end of file diff --git a/osrs/src/main/java/User.java b/osrs/src/main/java/User.java index a6614c8ea..721f2da33 100644 --- a/osrs/src/main/java/User.java +++ b/osrs/src/main/java/User.java @@ -3,20 +3,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qs") +@ObfuscatedName("rf") @Implements("User") public class User implements Comparable { - @ObfuscatedName("cj") - static int field3801; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("username") Username username; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Luc;" + descriptor = "Lvj;" ) @Export("previousUsername") Username previousUsername; @@ -24,50 +22,50 @@ public class User implements Comparable { User() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lqs;I)I", - garbageValue = "1756748027" + descriptor = "(Lrf;B)I", + garbageValue = "-95" ) @Export("compareTo_user") public int compareTo_user(User var1) { return this.username.compareToTyped(var1.username); } - @ObfuscatedName("as") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(I)Luc;", - garbageValue = "807179111" + descriptor = "(I)Lvj;", + garbageValue = "-1855232108" ) @Export("getUsername") public Username getUsername() { return this.username; } - @ObfuscatedName("ay") + @ObfuscatedName("bd") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "-346787089" + garbageValue = "1231899353" ) @Export("getName") public String getName() { return this.username == null ? "" : this.username.getName(); } - @ObfuscatedName("aj") + @ObfuscatedName("bl") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "1703373764" + garbageValue = "52965911" ) @Export("getPreviousName") public String getPreviousName() { return this.previousUsername == null ? "" : this.previousUsername.getName(); } - @ObfuscatedName("av") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "(Luc;Luc;I)V", - garbageValue = "-733820505" + descriptor = "(Lvj;Lvj;B)V", + garbageValue = "16" ) @Export("set") void set(Username var1, Username var2) { @@ -84,4 +82,43 @@ void set(Username var1, Username var2) { public int compareTo(Object var1) { return this.compareTo_user((User)var1); } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lol;Lol;S)I", + garbageValue = "-21186" + ) + static int method2239(AbstractArchive var0, AbstractArchive var1) { + int var2 = 0; + String[] var3 = Login.field771; + + int var4; + String var5; + for (var4 = 0; var4 < var3.length; ++var4) { + var5 = var3[var4]; + if (var0.tryLoadFileByNames(var5, "")) { + ++var2; + } + } + + var3 = Login.field772; + + for (var4 = 0; var4 < var3.length; ++var4) { + var5 = var3[var4]; + if (var1.tryLoadFileByNames(var5, "")) { + ++var2; + } + } + + var3 = Login.field770; + + for (var4 = 0; var4 < var3.length; ++var4) { + var5 = var3[var4]; + if (var1.getGroupId(var5) != -1 && var1.tryLoadFileByNames(var5, "")) { + ++var2; + } + } + + return var2; + } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator1.java b/osrs/src/main/java/UserComparator1.java index b1bbae3e3..0bc766c67 100644 --- a/osrs/src/main/java/UserComparator1.java +++ b/osrs/src/main/java/UserComparator1.java @@ -5,10 +5,10 @@ import java.util.Comparator; -@ObfuscatedName("ua") +@ObfuscatedName("ul") @Implements("UserComparator1") public class UserComparator1 implements Comparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -16,10 +16,10 @@ public UserComparator1(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqs;Lqs;B)I", - garbageValue = "2" + descriptor = "(Lrf;Lrf;I)I", + garbageValue = "415712924" ) @Export("compare_bridged") int compare_bridged(User var1, User var2) { diff --git a/osrs/src/main/java/UserComparator10.java b/osrs/src/main/java/UserComparator10.java index 0fb1352ce..6707a3246 100644 --- a/osrs/src/main/java/UserComparator10.java +++ b/osrs/src/main/java/UserComparator10.java @@ -3,13 +3,20 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ef") +import java.lang.management.GarbageCollectorMXBean; + +@ObfuscatedName("eu") @Implements("UserComparator10") public class UserComparator10 extends AbstractUserComparator { - @ObfuscatedName("kh") - @Export("cameraYaw") - static int cameraYaw; - @ObfuscatedName("au") + @ObfuscatedName("bc") + @Export("garbageCollector") + static GarbageCollectorMXBean garbageCollector; + @ObfuscatedName("qw") + @ObfuscatedSignature( + descriptor = "[Lnn;" + ) + static Widget[] field1197; + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -17,10 +24,10 @@ public UserComparator10(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-1110862870" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "-1398324092" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -37,63 +44,18 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;B)Ljava/lang/String;", - garbageValue = "74" - ) - public static String method687(CharSequence var0) { - int var1 = var0.length(); - StringBuilder var2 = new StringBuilder(var1); - - for (int var3 = 0; var3 < var1; ++var3) { - char var4 = var0.charAt(var3); - if ((var4 < 'a' || var4 > 'z') && (var4 < 'A' || var4 > 'Z') && (var4 < '0' || var4 > '9') && var4 != '.' && var4 != '-' && var4 != '*' && var4 != '_') { - if (var4 == ' ') { - var2.append('+'); - } else { - byte var5 = class348.charToByteCp1252(var4); - var2.append('%'); - int var6 = var5 >> 4 & 15; - if (var6 >= 10) { - var2.append((char)(var6 + 55)); - } else { - var2.append((char)(var6 + 48)); - } - - var6 = var5 & 15; - if (var6 >= 10) { - var2.append((char)(var6 + 55)); - } else { - var2.append((char)(var6 + 48)); - } - } - } else { - var2.append(var4); - } - } - - return var2.toString(); - } - - @ObfuscatedName("nf") + @ObfuscatedName("kt") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1771624140" + descriptor = "(I)V", + garbageValue = "-2060260259" ) - static final void method689(int var0, int var1) { - ClanChannel var2 = var0 >= 0 ? Client.currentClanChannels[var0] : VerticalAlignment.guestClanChannel; - if (var2 != null && var1 >= 0 && var1 < var2.method859()) { - ClanChannelMember var3 = (ClanChannelMember)var2.members.get(var1); - if (var3.rank == -1) { - String var4 = var3.username.getName(); - PacketBufferNode var5 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLANCHANNEL_KICKUSER, Client.packetWriter.isaacCipher); - var5.packetBuffer.writeByte(3 + AbstractSocket.stringCp1252NullTerminatedByteSize(var4)); - var5.packetBuffer.writeByte(var0); - var5.packetBuffer.writeShort(var1); - var5.packetBuffer.writeStringCp1252NullTerminated(var4); - Client.packetWriter.addNode(var5); - } - } + @Export("addCancelMenuEntry") + static void addCancelMenuEntry() { + class160.method840(); + Client.menuActions[0] = "Cancel"; + Client.menuTargets[0] = ""; + Client.menuOpcodes[0] = 1006; + Client.menuShiftClick[0] = false; + Client.menuOptionsCount = 1; } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator2.java b/osrs/src/main/java/UserComparator2.java index 8211cc0e2..a97967bd6 100644 --- a/osrs/src/main/java/UserComparator2.java +++ b/osrs/src/main/java/UserComparator2.java @@ -5,16 +5,10 @@ import java.util.Comparator; -@ObfuscatedName("uj") +@ObfuscatedName("ud") @Implements("UserComparator2") public class UserComparator2 implements Comparator { - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("SequenceDefinition_archive") - static AbstractArchive SequenceDefinition_archive; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -22,10 +16,10 @@ public UserComparator2(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqs;Lqs;I)I", - garbageValue = "-732761109" + descriptor = "(Lrf;Lrf;B)I", + garbageValue = "1" ) @Export("compare_bridged") int compare_bridged(User var1, User var2) { diff --git a/osrs/src/main/java/UserComparator3.java b/osrs/src/main/java/UserComparator3.java index b81c02c79..92cf8eae1 100644 --- a/osrs/src/main/java/UserComparator3.java +++ b/osrs/src/main/java/UserComparator3.java @@ -3,10 +3,13 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("el") +@ObfuscatedName("er") @Implements("UserComparator3") public class UserComparator3 extends AbstractUserComparator { - @ObfuscatedName("au") + @ObfuscatedName("ji") + @Export("regionLandArchiveIds") + static int[] regionLandArchiveIds; + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -14,10 +17,10 @@ public UserComparator3(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "1524706236" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "1490590572" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -34,12 +37,41 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1521964885" + descriptor = "(I)[Ldr;", + garbageValue = "-253012574" ) - public static int method682(int var0) { - return var0 >>> 12; + static class90[] method679() { + return new class90[]{class90.field894, class90.field896, class90.field898, class90.field899, class90.field897, class90.field895}; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "868585172" + ) + static int method680(int var0, int var1) { + if (var0 == -2) { + return 12345678; + } else if (var0 == -1) { + if (var1 < 0) { + var1 = 0; + } else if (var1 > 127) { + var1 = 127; + } + + var1 = 127 - var1; + return var1; + } else { + var1 = (var0 & 127) * var1 / 128; + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; + } + + return (var0 & 65408) + var1; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator4.java b/osrs/src/main/java/UserComparator4.java index 7ac51bff7..0badcbfe5 100644 --- a/osrs/src/main/java/UserComparator4.java +++ b/osrs/src/main/java/UserComparator4.java @@ -8,9 +8,7 @@ @ObfuscatedName("en") @Implements("UserComparator4") public class UserComparator4 implements Comparator { - @ObfuscatedName("vv") - static int field1180; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -18,10 +16,10 @@ public UserComparator4(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-1072568679" + descriptor = "(Lrh;Lrh;B)I", + garbageValue = "26" ) @Export("compare_bridged") int compare_bridged(Buddy var1, Buddy var2) { @@ -40,94 +38,215 @@ public boolean equals(Object var1) { return super.equals(var1); } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfh;FZI)F", - garbageValue = "-229947551" + descriptor = "(II)I", + garbageValue = "1918308972" ) - static float method669(class130 var0, float var1, boolean var2) { - float var3 = 0.0F; - if (var0 != null && var0.method726() != 0) { - float var4 = (float)var0.field1244[0].field1202; - float var5 = (float)var0.field1244[var0.method726() - 1].field1202; - float var6 = var5 - var4; - if ((double)var6 == 0.0D) { - return var0.field1244[0].field1198; - } else { - float var7 = 0.0F; - if (var1 > var5) { - var7 = (var1 - var5) / var6; - } else { - var7 = (var1 - var4) / var6; - } + public static int method665(int var0) { + var0 = (var0 & 1431655765) + (var0 >>> 1 & 1431655765); + var0 = (var0 >>> 2 & 858993459) + (var0 & 858993459); + var0 = var0 + (var0 >>> 4) & 252645135; + var0 += var0 >>> 8; + var0 += var0 >>> 16; + return var0 & 255; + } + + @ObfuscatedName("mb") + @ObfuscatedSignature( + descriptor = "(Lnn;II)I", + garbageValue = "1187363281" + ) + static final int method666(Widget var0, int var1) { + if (var0.cs1Instructions != null && var1 < var0.cs1Instructions.length) { + try { + int[] var2 = var0.cs1Instructions[var1]; + int var3 = 0; + int var4 = 0; + byte var5 = 0; + + while (true) { + int var6 = var2[var4++]; + int var7 = 0; + byte var8 = 0; + if (var6 == 0) { + return var3; + } + + if (var6 == 1) { + var7 = Client.currentLevels[var2[var4++]]; + } - double var8 = (double)((int)var7); - float var10 = Math.abs((float)((double)var7 - var8)); - float var11 = var10 * var6; - var8 = Math.abs(1.0D + var8); - double var12 = var8 / 2.0D; - double var14 = (double)((int)var12); - var10 = (float)(var12 - var14); - float var16; - float var17; - if (var2) { - if (var0.field1245 == class128.field1225) { - if ((double)var10 != 0.0D) { - var11 += var4; - } else { - var11 = var5 - var11; + if (var6 == 2) { + var7 = Client.levels[var2[var4++]]; + } + + if (var6 == 3) { + var7 = Client.experience[var2[var4++]]; + } + + int var9; + Widget var10; + int var11; + int var12; + if (var6 == 4) { + var9 = var2[var4++] << 16; + var9 += var2[var4++]; + var10 = HealthBarDefinition.widgetDefinition.method1733(var9); + var11 = var2[var4++]; + if (var11 != -1 && (!class214.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { + for (var12 = 0; var12 < var10.itemIds.length; ++var12) { + if (var11 + 1 == var10.itemIds[var12]) { + var7 += var10.field3077[var12]; + } + } } - } else if (var0.field1245 != class128.field1227 && var0.field1245 != class128.field1228) { - if (var0.field1245 == class128.field1226) { - var11 = var4 - var1; - var16 = var0.field1244[0].field1200; - var17 = var0.field1244[0].field1201; - var3 = var0.field1244[0].field1198; - if (0.0D != (double)var16) { - var3 -= var11 * var17 / var16; + } + + if (var6 == 5) { + var7 = Varps.Varps_main[var2[var4++]]; + } + + if (var6 == 6) { + var7 = Skills.Skills_experienceTable[Client.levels[var2[var4++]] - 1]; + } + + if (var6 == 7) { + var7 = Varps.Varps_main[var2[var4++]] * 100 / 46875; + } + + if (var6 == 8) { + var7 = class229.localPlayer.combatLevel; + } + + if (var6 == 9) { + for (var9 = 0; var9 < 25; ++var9) { + if (Skills.Skills_enabled[var9]) { + var7 += Client.levels[var9]; } + } + } - return var3; + if (var6 == 10) { + var9 = var2[var4++] << 16; + var9 += var2[var4++]; + var10 = HealthBarDefinition.widgetDefinition.method1733(var9); + var11 = var2[var4++]; + if (var11 != -1 && (!class214.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { + for (var12 = 0; var12 < var10.itemIds.length; ++var12) { + if (var11 + 1 == var10.itemIds[var12]) { + var7 = 999999999; + break; + } + } } - } else { - var11 = var5 - var11; } - } else if (var0.field1246 == class128.field1225) { - if ((double)var10 != 0.0D) { - var11 = var5 - var11; - } else { - var11 += var4; - } - } else if (var0.field1246 != class128.field1227 && var0.field1246 != class128.field1228) { - if (var0.field1246 == class128.field1226) { - var11 = var1 - var5; - var16 = var0.field1244[var0.method726() - 1].field1197; - var17 = var0.field1244[var0.method726() - 1].field1199; - var3 = var0.field1244[var0.method726() - 1].field1198; - if (0.0D != (double)var16) { - var3 += var17 * var11 / var16; + + if (var6 == 11) { + var7 = Client.runEnergy; + } + + if (var6 == 12) { + var7 = Client.weight; + } + + if (var6 == 13) { + var9 = Varps.Varps_main[var2[var4++]]; + int var13 = var2[var4++]; + var7 = (var9 & 1 << var13) != 0 ? 1 : 0; + } + + if (var6 == 14) { + var9 = var2[var4++]; + var7 = HealthBar.getVarbit(var9); + } + + if (var6 == 15) { + var8 = 1; + } + + if (var6 == 16) { + var8 = 2; + } + + if (var6 == 17) { + var8 = 3; + } + + if (var6 == 18) { + var7 = (class229.localPlayer.x >> 7) + NewShit.baseX; + } + + if (var6 == 19) { + var7 = (class229.localPlayer.y >> 7) + class101.baseY; + } + + if (var6 == 20) { + var7 = var2[var4++]; + } + + if (var8 == 0) { + if (var5 == 0) { + var3 += var7; } - return var3; + if (var5 == 1) { + var3 -= var7; + } + + if (var5 == 2 && var7 != 0) { + var3 /= var7; + } + + if (var5 == 3) { + var3 *= var7; + } + + var5 = 0; + } else { + var5 = var8; } - } else { - var11 += var4; } + } catch (Exception var14) { + return -1; + } + } else { + return -2; + } + } - var3 = Skeleton.method1229(var0, var11); - float var18; - if (var2 && var0.field1245 == class128.field1228) { - var18 = var0.field1244[var0.method726() - 1].field1198 - var0.field1244[0].field1198; - var3 = (float)((double)var3 - (double)var18 * var8); - } else if (!var2 && var0.field1246 == class128.field1228) { - var18 = var0.field1244[var0.method726() - 1].field1198 - var0.field1244[0].field1198; - var3 = (float)((double)var3 + (double)var18 * var8); + @ObfuscatedName("nf") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "52" + ) + static final void method667(int var0, int var1) { + if (Client.currentClanChannels[var0] != null) { + if (var1 >= 0 && var1 < Client.currentClanChannels[var0].method857()) { + ClanChannelMember var2 = (ClanChannelMember)Client.currentClanChannels[var0].members.get(var1); + if (var2.rank == -1) { + PacketBufferNode var3 = class113.getPacketBufferNode(ClientPacket.f83, Client.packetWriter.isaacCipher); + var3.packetBuffer.writeByte(3 + ClanChannel.stringCp1252NullTerminatedByteSize(var2.username.getName())); + var3.packetBuffer.writeByte(var0); + var3.packetBuffer.writeShort(var1); + var3.packetBuffer.writeStringCp1252NullTerminated(var2.username.getName()); + Client.packetWriter.addNode(var3); } - - return var3; } - } else { - return var3; } } + + @ObfuscatedName("om") + @ObfuscatedSignature( + descriptor = "(II)Lte;", + garbageValue = "-125616841" + ) + static DbTable method668(int var0) { + DbTable var1 = (DbTable)Client.archive11.get((long)var0); + if (var1 == null) { + var1 = new DbTable(class267.field2224, var0); + } + + return var1; + } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator5.java b/osrs/src/main/java/UserComparator5.java index 75b19d675..2ab5b5eb9 100644 --- a/osrs/src/main/java/UserComparator5.java +++ b/osrs/src/main/java/UserComparator5.java @@ -2,17 +2,11 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; -@ObfuscatedName("es") +@ObfuscatedName("et") @Implements("UserComparator5") public class UserComparator5 extends AbstractUserComparator { - @ObfuscatedName("jx") - @Export("regionLandArchives") - static byte[][] regionLandArchives; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -20,10 +14,10 @@ public UserComparator5(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;B)I", - garbageValue = "-73" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "-405710173" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -44,200 +38,50 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("ah") + @ObfuscatedName("mm") @ObfuscatedSignature( - descriptor = "(Lorg/json/JSONObject;Ljava/lang/String;S)[F", - garbageValue = "21147" + descriptor = "([Lnn;IB)V", + garbageValue = "58" ) - static float[] method679(JSONObject var0, String var1) throws JSONException { - float[] var2 = new float[4]; - - try { - JSONArray var3 = var0.getJSONArray(var1); - var2[0] = (float)var3.optDouble(0, 0.0D); - var2[1] = (float)var3.optDouble(1, 0.0D); - var2[2] = (float)var3.optDouble(2, 1.0D); - var2[3] = (float)var3.optDouble(3, 1.0D); - } catch (JSONException var4) { - var2[0] = 0.0F; - var2[1] = 0.0F; - var2[2] = 1.0F; - var2[3] = 1.0F; - } - - return var2; - } - - @ObfuscatedName("iv") - @ObfuscatedSignature( - descriptor = "(Ldr;I)V", - garbageValue = "-316834748" - ) - static final void method680(Actor var0) { - var0.isWalking = false; - if (var0.movementSequence != -1) { - SequenceDefinition var1 = EnumComposition.SequenceDefinition_get(var0.movementSequence); - if (var1 != null) { - if (!var1.isCachedModelIdSet() && var1.frameIds != null) { - ++var0.movementFrameCycle; - if (var0.movementFrame < var1.frameIds.length && var0.movementFrameCycle > var1.frameLengths[var0.movementFrame]) { - var0.movementFrameCycle = 1; - ++var0.movementFrame; - FileSystem.method914(var1, var0.movementFrame, var0.x, var0.y); + @Export("runComponentCloseListeners") + static final void runComponentCloseListeners(Widget[] var0, int var1) { + for (int var2 = 0; var2 < var0.length; ++var2) { + Widget var3 = var0[var2]; + if (var3 != null) { + if (var3.type == 0) { + if (var3.children != null) { + runComponentCloseListeners(var3.children, var1); } - if (var0.movementFrame >= var1.frameIds.length) { - if (var1.frameCount > 0) { - var0.movementFrame -= var1.frameCount; - if (var1.field1843) { - ++var0.field999; - } - - if (var0.movementFrame < 0 || var0.movementFrame >= var1.frameIds.length || var1.field1843 && var0.field999 >= var1.iterations) { - var0.movementFrameCycle = 0; - var0.movementFrame = 0; - var0.field999 = 0; - } - } else { - var0.movementFrameCycle = 0; - var0.movementFrame = 0; - } - - FileSystem.method914(var1, var0.movementFrame, var0.x, var0.y); - } - } else if (var1.isCachedModelIdSet()) { - ++var0.movementFrame; - int var2 = var1.method1085(); - if (var0.movementFrame < var2) { - class169.method880(var1, var0.movementFrame, var0.x, var0.y); - } else { - if (var1.frameCount > 0) { - var0.movementFrame -= var1.frameCount; - if (var1.field1843) { - ++var0.field999; - } - - if (var0.movementFrame < 0 || var0.movementFrame >= var2 || var1.field1843 && var0.field999 >= var1.iterations) { - var0.movementFrame = 0; - var0.movementFrameCycle = 0; - var0.field999 = 0; - } - } else { - var0.movementFrameCycle = 0; - var0.movementFrame = 0; - } - - class169.method880(var1, var0.movementFrame, var0.x, var0.y); + InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); + if (var4 != null) { + class514.runIntfCloseListener(var4.group, var1); } - } else { - var0.movementSequence = -1; } - } else { - var0.movementSequence = -1; - } - } - - IterableNodeHashTableIterator var7 = new IterableNodeHashTableIterator(var0.method518()); - int var3; - for (SpotAnimation var6 = (SpotAnimation)var7.method2449(); var6 != null; var6 = (SpotAnimation)var7.next()) { - if (var6.field4281 != -1 && Client.cycle >= var6.field4280) { - var3 = StructComposition.SpotAnimationDefinition_get(var6.field4281).sequence; - if (var3 == -1) { - var6.remove(); - --var0.field1011; - } else { - var6.field4278 = Math.max(var6.field4278, 0); - SequenceDefinition var4 = EnumComposition.SequenceDefinition_get(var3); - if (var4.frameIds != null && !var4.isCachedModelIdSet()) { - ++var6.field4279; - if (var6.field4278 < var4.frameIds.length && var6.field4279 > var4.frameLengths[var6.field4278]) { - var6.field4279 = 1; - ++var6.field4278; - FileSystem.method914(var4, var6.field4278, var0.x, var0.y); - } - - if (var6.field4278 >= var4.frameIds.length) { - var6.remove(); - --var0.field1011; - } - } else if (var4.isCachedModelIdSet()) { - ++var6.field4278; - int var5 = var4.method1085(); - if (var6.field4278 < var5) { - class169.method880(var4, var6.field4278, var0.x, var0.y); - } else { - var6.remove(); - --var0.field1011; - } - } else { - var6.remove(); - --var0.field1011; - } + ScriptEvent var5; + if (var1 == 0 && var3.onDialogAbort != null) { + var5 = new ScriptEvent(); + var5.widget = var3; + var5.args = var3.onDialogAbort; + class157.runScriptEvent(var5); } - } - } - - SequenceDefinition var8; - if (var0.sequence != -1 && var0.sequenceDelay <= 1) { - var8 = EnumComposition.SequenceDefinition_get(var0.sequence); - if (var8.precedenceAnimating == 1 && var0.field1022 > 0 && var0.spotAnimation <= Client.cycle && var0.exactMoveArrive1Cycle < Client.cycle) { - var0.sequenceDelay = 1; - return; - } - } - - if (var0.sequence != -1 && var0.sequenceDelay == 0) { - var8 = EnumComposition.SequenceDefinition_get(var0.sequence); - if (var8 != null) { - if (!var8.isCachedModelIdSet() && var8.frameIds != null) { - ++var0.sequenceFrameCycle; - if (var0.sequenceFrame < var8.frameIds.length && var0.sequenceFrameCycle > var8.frameLengths[var0.sequenceFrame]) { - var0.sequenceFrameCycle = 1; - ++var0.sequenceFrame; - FileSystem.method914(var8, var0.sequenceFrame, var0.x, var0.y); - } - if (var0.sequenceFrame >= var8.frameIds.length) { - var0.sequenceFrame -= var8.frameCount; - ++var0.currentSequenceFrameIndex; - if (var0.currentSequenceFrameIndex >= var8.iterations) { - var0.sequence = -1; - } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var8.frameIds.length) { - FileSystem.method914(var8, var0.sequenceFrame, var0.x, var0.y); - } else { - var0.sequence = -1; + if (var1 == 1 && var3.onSubChange != null) { + if (var3.childIndex >= 0) { + Widget var6 = HealthBarDefinition.widgetDefinition.method1733(var3.id); + if (var6 == null || var6.children == null || var3.childIndex >= var6.children.length || var3 != var6.children[var3.childIndex]) { + continue; } } - var0.isWalking = var8.stretches; - } else if (var8.isCachedModelIdSet()) { - ++var0.sequenceFrame; - var3 = var8.method1085(); - if (var0.sequenceFrame < var3) { - class169.method880(var8, var0.sequenceFrame, var0.x, var0.y); - } else { - var0.sequenceFrame -= var8.frameCount; - ++var0.currentSequenceFrameIndex; - if (var0.currentSequenceFrameIndex >= var8.iterations) { - var0.sequence = -1; - } else if (var0.sequenceFrame >= 0 && var0.sequenceFrame < var3) { - class169.method880(var8, var0.sequenceFrame, var0.x, var0.y); - } else { - var0.sequence = -1; - } - } - } else { - var0.sequence = -1; + var5 = new ScriptEvent(); + var5.widget = var3; + var5.args = var3.onSubChange; + class157.runScriptEvent(var5); } - } else { - var0.sequence = -1; } } - if (var0.sequenceDelay > 0) { - --var0.sequenceDelay; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator6.java b/osrs/src/main/java/UserComparator6.java index 4cf224be5..a08951b42 100644 --- a/osrs/src/main/java/UserComparator6.java +++ b/osrs/src/main/java/UserComparator6.java @@ -3,19 +3,12 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.text.ParseException; -import java.util.Date; - -@ObfuscatedName("ec") +@ObfuscatedName("ey") @Implements("UserComparator6") public class UserComparator6 extends AbstractUserComparator { - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - @Export("options_buttons_2Sprite") - static IndexedSprite options_buttons_2Sprite; @ObfuscatedName("au") + static int field1202; + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -23,10 +16,10 @@ public UserComparator6(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-110280632" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "-464829605" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -43,78 +36,59 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("ac") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1944121723" + descriptor = "(ILdt;ZB)I", + garbageValue = "-32" ) - static boolean method694() { - Date var0; - try { - var0 = SpotAnimationDefinition.method1003(); - } catch (ParseException var6) { - WorldMapScaleHandler.method1587("Date not valid.", "Please ensure date follows the format", "DD/MM/YYYY and is after 01/01/1900"); - return false; - } - - if (var0 == null) { - return false; - } else { - boolean var4 = ModelData0.method1383(var0); - Date var3 = class312.method1686(); - boolean var2 = var0.after(var3); - if (!var2) { - PcmPlayer.method212(7); - class318.setLoginResponseString("Date not valid.", "Please ensure date follows the format", "DD/MM/YYYY and is after 01/01/1900"); - return false; - } else { - if (!var4) { - class72.field730 = 8388607; + static int method689(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 != 1927 && var0 != 2927) { + int var4; + if (var0 == 1928) { + var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var4 >= 1 && var4 <= 10) { + class102 var5 = new class102(var4, var3.id, var3.childIndex, var3.itemId); + Interpreter.field712.add(var5); + return 1; } else { - class72.field730 = (int)(var0.getTime() / 86400000L - 11745L); + throw new RuntimeException(); } - - return true; + } else if (var0 == 2928) { + DbTableType.Interpreter_intStackSize -= 3; + int var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + int var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + if (var8 >= 1 && var8 <= 10) { + class102 var6 = new class102(var8, var7, var4, HealthBarDefinition.widgetDefinition.method1733(var7).itemId); + Interpreter.field712.add(var6); + return 1; + } else { + throw new RuntimeException(); + } + } else { + return 2; + } + } else if (Interpreter.field705 >= 10) { + throw new RuntimeException(); + } else { + if (var0 >= 2000) { + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } else { + var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; } - } - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(B)Lui;", - garbageValue = "111" - ) - static SpritePixels method693() { - SpritePixels var0 = new SpritePixels(); - var0.width = class529.SpriteBuffer_spriteWidth; - var0.height = class420.SpriteBuffer_spriteHeight; - var0.xOffset = class529.SpriteBuffer_xOffsets[0]; - var0.yOffset = class152.SpriteBuffer_yOffsets[0]; - var0.subWidth = HealthBarUpdate.SpriteBuffer_spriteWidths[0]; - var0.subHeight = SpriteMask.SpriteBuffer_spriteHeights[0]; - int var1 = var0.subHeight * var0.subWidth; - byte[] var2 = Coord.SpriteBuffer_pixels[0]; - var0.pixels = new int[var1]; - for (int var3 = 0; var3 < var1; ++var3) { - var0.pixels[var3] = DbTableType.SpriteBuffer_spritePalette[var2[var3] & 255]; + if (var3.onResize == null) { + return 0; + } else { + ScriptEvent var9 = new ScriptEvent(); + var9.widget = var3; + var9.args = var3.onResize; + var9.field871 = Interpreter.field705 + 1; + Client.scriptEvents.addFirst(var9); + return 1; + } } - - class529.SpriteBuffer_xOffsets = null; - class152.SpriteBuffer_yOffsets = null; - HealthBarUpdate.SpriteBuffer_spriteWidths = null; - SpriteMask.SpriteBuffer_spriteHeights = null; - DbTableType.SpriteBuffer_spritePalette = null; - Coord.SpriteBuffer_pixels = null; - return var0; - } - - @ObfuscatedName("ju") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-11" - ) - static boolean method695() { - return (Client.drawPlayerNames & 4) != 0; } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator7.java b/osrs/src/main/java/UserComparator7.java index 08b9c390f..774e476d1 100644 --- a/osrs/src/main/java/UserComparator7.java +++ b/osrs/src/main/java/UserComparator7.java @@ -6,7 +6,15 @@ @ObfuscatedName("ei") @Implements("UserComparator7") public class UserComparator7 extends AbstractUserComparator { - @ObfuscatedName("au") + @ObfuscatedName("fw") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1190; + @ObfuscatedName("jd") + @Export("regionMapArchiveIds") + static int[] regionMapArchiveIds; + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -14,10 +22,10 @@ public UserComparator7(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-2147158295" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "1768375186" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -34,23 +42,33 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("am") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-1608362555" + descriptor = "(IB)V", + garbageValue = "19" ) - static final int method677(int var0, int var1) { - if (var0 == -1) { - return 12345678; - } else { - var1 = (var0 & 127) * var1 / 128; - if (var1 < 2) { - var1 = 2; - } else if (var1 > 126) { - var1 = 126; - } + static void method674(int var0) { + if (var0 != Login.loginIndex) { + Login.loginIndex = var0; + } + } - return (var0 & 65408) + var1; + @ObfuscatedName("ol") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "-1939309328" + ) + static String method675(String var0) { + PlayerType[] var1 = class320.PlayerType_values(); + + for (int var2 = 0; var2 < var1.length; ++var2) { + PlayerType var3 = var1[var2]; + if (var3.modIcon != -1 && var0.startsWith(FloorUnderlayDefinition.addImageTag(var3.modIcon))) { + var0 = var0.substring(6 + Integer.toString(var3.modIcon).length()); + break; + } } + + return var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator8.java b/osrs/src/main/java/UserComparator8.java index 8aebdeb29..5d28540c2 100644 --- a/osrs/src/main/java/UserComparator8.java +++ b/osrs/src/main/java/UserComparator8.java @@ -3,10 +3,10 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eb") +@ObfuscatedName("eh") @Implements("UserComparator8") public class UserComparator8 extends AbstractUserComparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -14,10 +14,10 @@ public UserComparator8(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-1255726150" + descriptor = "(Lrh;Lrh;B)I", + garbageValue = "118" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -38,207 +38,50 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-334645983" + descriptor = "(S)[Lfw;", + garbageValue = "226" ) - static void method671() { - synchronized(ArchiveDiskActionHandler.field3513) { - if (ArchiveDiskActionHandler.field3512 == 0) { - class167.ArchiveDiskActionHandler_thread = new Thread(new ArchiveDiskActionHandler()); - class167.ArchiveDiskActionHandler_thread.setDaemon(true); - class167.ArchiveDiskActionHandler_thread.start(); - class167.ArchiveDiskActionHandler_thread.setPriority(5); - } - - ArchiveDiskActionHandler.field3512 = 600; - ArchiveDiskActionHandler.field3511 = false; - } + static class140[] method671() { + return new class140[]{class140.field1326, class140.field1322, class140.field1325, class140.field1324, class140.field1320, class140.field1327, class140.field1319, class140.field1321, class140.field1323}; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lto;II)V", - garbageValue = "-32046829" + descriptor = "(Lol;Lol;I)V", + garbageValue = "-1842959884" ) - @Export("updatePlayers") - static final void updatePlayers(PacketBuffer var0, int var1) { - int var2 = var0.offset; - Players.Players_pendingUpdateCount = 0; - int var3 = 0; - var0.importIndex(); - - byte[] var10000; - int var4; - int var5; - int var6; - for (var4 = 0; var4 < Players.Players_count; ++var4) { - var5 = Players.Players_indices[var4]; - if ((Players.activityFlags[var5] & 1) == 0) { - if (var3 > 0) { - --var3; - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var6 = var0.readBits(1); - if (var6 == 0) { - var3 = class20.method68(var0); - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - AbstractArchive.readPlayerUpdate(var0, var5); - } - } - } - } - - var0.exportIndex(); - if (var3 != 0) { - throw new RuntimeException(); - } else { - var0.importIndex(); - - for (var4 = 0; var4 < Players.Players_count; ++var4) { - var5 = Players.Players_indices[var4]; - if ((Players.activityFlags[var5] & 1) != 0) { - if (var3 > 0) { - --var3; - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var6 = var0.readBits(1); - if (var6 == 0) { - var3 = class20.method68(var0); - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - AbstractArchive.readPlayerUpdate(var0, var5); - } - } - } - } - - var0.exportIndex(); - if (var3 != 0) { - throw new RuntimeException(); - } else { - var0.importIndex(); - - for (var4 = 0; var4 < Players.Players_emptyIdxCount; ++var4) { - var5 = Players.Players_emptyIndices[var4]; - if ((Players.activityFlags[var5] & 1) != 0) { - if (var3 > 0) { - --var3; - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var6 = var0.readBits(1); - if (var6 == 0) { - var3 = class20.method68(var0); - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else if (KitDefinition.updateExternalPlayer(var0, var5)) { - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } - } - } - } - - var0.exportIndex(); - if (var3 != 0) { - throw new RuntimeException(); - } else { - var0.importIndex(); - - for (var4 = 0; var4 < Players.Players_emptyIdxCount; ++var4) { - var5 = Players.Players_emptyIndices[var4]; - if ((Players.activityFlags[var5] & 1) == 0) { - if (var3 > 0) { - --var3; - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else { - var6 = var0.readBits(1); - if (var6 == 0) { - var3 = class20.method68(var0); - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } else if (KitDefinition.updateExternalPlayer(var0, var5)) { - var10000 = Players.activityFlags; - var10000[var5] = (byte)(var10000[var5] | 2); - } - } - } - } - - var0.exportIndex(); - if (var3 != 0) { - throw new RuntimeException(); - } else { - Players.Players_count = 0; - Players.Players_emptyIdxCount = 0; - - for (var4 = 1; var4 < 2048; ++var4) { - var10000 = Players.activityFlags; - var10000[var4] = (byte)(var10000[var4] >> 1); - Player var7 = Client.players[var4]; - if (var7 != null) { - Players.Players_indices[++Players.Players_count - 1] = var4; - } else { - Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var4; - } - } - - class85.method471(var0); - if (var0.offset - var2 != var1) { - throw new RuntimeException(var0.offset - var2 + " " + var1); - } - } - } - } - } - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "1" - ) - static final void method673(String var0) { - MouseHandler.addGameMessage(30, "", var0); + public static void method670(AbstractArchive var0, AbstractArchive var1) { + SpotAnimationDefinition.SpotAnimationDefinition_archive = var0; + SpotAnimationDefinition.SpotAnimationDefinition_modelArchive = var1; } - @ObfuscatedName("ic") + @ObfuscatedName("nq") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-33" + descriptor = "(IIII)Ldc;", + garbageValue = "853776255" ) - static final int method674(int var0) { - return Math.min(Math.max(var0, 128), 383); - } - - @ObfuscatedName("lk") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIIZI)V", - garbageValue = "-1798702842" - ) - @Export("insertMenuItem") - static final void insertMenuItem(String var0, String var1, int var2, int var3, int var4, int var5, int var6, boolean var7) { - if (!Client.isMenuOpen) { - if (Client.menuOptionsCount < 500) { - Client.menuActions[Client.menuOptionsCount] = var0; - Client.menuTargets[Client.menuOptionsCount] = var1; - Client.menuOpcodes[Client.menuOptionsCount] = var2; - Client.menuIdentifiers[Client.menuOptionsCount] = var3; - Client.menuArguments1[Client.menuOptionsCount] = var4; - Client.menuArguments2[Client.menuOptionsCount] = var5; - Client.menuItemIds[Client.menuOptionsCount] = var6; - Client.menuShiftClick[Client.menuOptionsCount] = var7; - ++Client.menuOptionsCount; - } + @Export("openInterface") + static final InterfaceParent openInterface(int var0, int var1, int var2) { + InterfaceParent var3 = new InterfaceParent(); + var3.group = var1; + var3.type = var2; + Client.interfaceParents.put(var3, (long)var0); + class130.method713(var1); + Widget var4 = HealthBarDefinition.widgetDefinition.method1733(var0); + class159.invalidateWidget(var4); + if (Client.meslayerContinueWidget != null) { + class159.invalidateWidget(Client.meslayerContinueWidget); + Client.meslayerContinueWidget = null; + } + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0 >> 16], var4, false); + class106.runWidgetOnLoadListener(var1); + if (Client.rootInterface != -1) { + class514.runIntfCloseListener(Client.rootInterface, 1); } + + return var3; } } \ No newline at end of file diff --git a/osrs/src/main/java/UserComparator9.java b/osrs/src/main/java/UserComparator9.java index 2ead907af..c27604383 100644 --- a/osrs/src/main/java/UserComparator9.java +++ b/osrs/src/main/java/UserComparator9.java @@ -3,10 +3,10 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("em") +@ObfuscatedName("ez") @Implements("UserComparator9") public class UserComparator9 extends AbstractUserComparator { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("reversed") final boolean reversed; @@ -14,10 +14,10 @@ public UserComparator9(boolean var1) { this.reversed = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lqb;Lqb;I)I", - garbageValue = "-38492655" + descriptor = "(Lrh;Lrh;I)I", + garbageValue = "573682833" ) @Export("compareBuddy") int compareBuddy(Buddy var1, Buddy var2) { @@ -34,187 +34,30 @@ public int compare(Object var1, Object var2) { return this.compareBuddy((Buddy)var1, (Buddy)var2); } - @ObfuscatedName("au") + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "(Lmx;I)V", - garbageValue = "2064536991" + descriptor = "(ILdt;ZI)I", + garbageValue = "1141161217" ) - public static void method683(Huffman var0) { - class334.huffman = var0; - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-273787824" - ) - public static void method685() { - ObjectComposition.ObjectDefinition_cached.clear(); - ObjectComposition.ObjectDefinition_cachedModelData.clear(); - ObjectComposition.ObjectDefinition_cachedEntities.clear(); - ObjectComposition.ObjectDefinition_cachedModels.clear(); + static int method682(int var0, Script var1, boolean var2) { + if (var0 == 5630) { + Client.logoutTimer = 250; + return 1; + } else { + return 2; + } } - @ObfuscatedName("mr") + @ObfuscatedName("na") @ObfuscatedSignature( - descriptor = "(Lmi;IB)I", - garbageValue = "1" + descriptor = "(B)V", + garbageValue = "40" ) - static final int method686(Widget var0, int var1) { - if (var0.cs1Instructions != null && var1 < var0.cs1Instructions.length) { - try { - int[] var2 = var0.cs1Instructions[var1]; - int var3 = 0; - int var4 = 0; - byte var5 = 0; - - while (true) { - int var6 = var2[var4++]; - int var7 = 0; - byte var8 = 0; - if (var6 == 0) { - return var3; - } - - if (var6 == 1) { - var7 = Client.currentLevels[var2[var4++]]; - } - - if (var6 == 2) { - var7 = Client.levels[var2[var4++]]; - } - - if (var6 == 3) { - var7 = Client.experience[var2[var4++]]; - } - - int var9; - Widget var10; - int var11; - int var12; - if (var6 == 4) { - var9 = var2[var4++] << 16; - var9 += var2[var4++]; - var10 = class92.getWidget(var9); - var11 = var2[var4++]; - if (var11 != -1 && (!InvDefinition.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { - for (var12 = 0; var12 < var10.itemIds.length; ++var12) { - if (var11 + 1 == var10.itemIds[var12]) { - var7 += var10.field3054[var12]; - } - } - } - } - - if (var6 == 5) { - var7 = Varps.Varps_main[var2[var4++]]; - } - - if (var6 == 6) { - var7 = Skills.Skills_experienceTable[Client.levels[var2[var4++]] - 1]; - } - - if (var6 == 7) { - var7 = Varps.Varps_main[var2[var4++]] * 100 / 46875; - } - - if (var6 == 8) { - var7 = VarbitComposition.localPlayer.combatLevel; - } - - if (var6 == 9) { - for (var9 = 0; var9 < 25; ++var9) { - if (Skills.Skills_enabled[var9]) { - var7 += Client.levels[var9]; - } - } - } - - if (var6 == 10) { - var9 = var2[var4++] << 16; - var9 += var2[var4++]; - var10 = class92.getWidget(var9); - var11 = var2[var4++]; - if (var11 != -1 && (!InvDefinition.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) { - for (var12 = 0; var12 < var10.itemIds.length; ++var12) { - if (var11 + 1 == var10.itemIds[var12]) { - var7 = 999999999; - break; - } - } - } - } - - if (var6 == 11) { - var7 = Client.runEnergy; - } - - if (var6 == 12) { - var7 = Client.weight; - } - - if (var6 == 13) { - var9 = Varps.Varps_main[var2[var4++]]; - int var13 = var2[var4++]; - var7 = (var9 & 1 << var13) != 0 ? 1 : 0; - } - - if (var6 == 14) { - var9 = var2[var4++]; - var7 = ClientPreferences.getVarbit(var9); - } - - if (var6 == 15) { - var8 = 1; - } - - if (var6 == 16) { - var8 = 2; - } - - if (var6 == 17) { - var8 = 3; - } - - if (var6 == 18) { - var7 = (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX; - } - - if (var6 == 19) { - var7 = (VarbitComposition.localPlayer.y >> 7) + class47.baseY; - } - - if (var6 == 20) { - var7 = var2[var4++]; - } - - if (var8 == 0) { - if (var5 == 0) { - var3 += var7; - } - - if (var5 == 1) { - var3 -= var7; - } - - if (var5 == 2 && var7 != 0) { - var3 /= var7; - } - - if (var5 == 3) { - var3 *= var7; - } - - var5 = 0; - } else { - var5 = var8; - } - } - } catch (Exception var14) { - return -1; - } - } else { - return -2; + static final void method683() { + for (int var0 = 0; var0 < Players.Players_count; ++var0) { + Player var1 = Client.players[Players.Players_indices[var0]]; + var1.clearIsInClanChat(); } + } } \ No newline at end of file diff --git a/osrs/src/main/java/UserList.java b/osrs/src/main/java/UserList.java index bfbc2921c..d4fbc8598 100644 --- a/osrs/src/main/java/UserList.java +++ b/osrs/src/main/java/UserList.java @@ -7,28 +7,28 @@ import java.util.Comparator; import java.util.HashMap; -@ObfuscatedName("qt") +@ObfuscatedName("rc") @Implements("UserList") public abstract class UserList { - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("capacity") final int capacity; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("size") int size; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "[Lqs;" + descriptor = "[Lrf;" ) @Export("array") User[] array; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("usernamesMap") HashMap usernamesMap; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("previousUsernamesMap") HashMap previousUsernamesMap; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("comparator") Comparator comparator; @@ -41,26 +41,26 @@ public abstract class UserList { this.previousUsernamesMap = new HashMap(var1 / 8); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lqs;", - garbageValue = "-1997275235" + descriptor = "(I)Lrf;", + garbageValue = "794695059" ) @Export("newInstance") abstract User newInstance(); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)[Lqs;", - garbageValue = "99" + descriptor = "(II)[Lrf;", + garbageValue = "-190310061" ) @Export("newTypedArray") abstract User[] newTypedArray(int var1); - @ObfuscatedName("bk") + @ObfuscatedName("bf") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "501302871" + garbageValue = "-1535217845" ) @Export("clear") public void clear() { @@ -70,30 +70,30 @@ public void clear() { this.previousUsernamesMap.clear(); } - @ObfuscatedName("bv") + @ObfuscatedName("bg") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "899062224" + garbageValue = "-1124880837" ) @Export("getSize") public int getSize() { return this.size; } - @ObfuscatedName("bt") + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "31" + descriptor = "(I)Z", + garbageValue = "458796278" ) @Export("isFull") public boolean isFull() { return this.capacity == this.size; } - @ObfuscatedName("bd") + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "(Luc;I)Z", - garbageValue = "-2059645334" + descriptor = "(Lvj;S)Z", + garbageValue = "18697" ) @Export("contains") public boolean contains(Username var1) { @@ -104,10 +104,10 @@ public boolean contains(Username var1) { } } - @ObfuscatedName("by") + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "(Luc;I)Lqs;", - garbageValue = "1337477510" + descriptor = "(Lvj;I)Lrf;", + garbageValue = "-1933118786" ) @Export("getByUsername") public User getByUsername(Username var1) { @@ -115,30 +115,30 @@ public User getByUsername(Username var1) { return var2 != null ? var2 : this.getByPreviousUsername(var1); } - @ObfuscatedName("bs") + @ObfuscatedName("bw") @ObfuscatedSignature( - descriptor = "(Luc;I)Lqs;", - garbageValue = "1463265876" + descriptor = "(Lvj;I)Lrf;", + garbageValue = "756260945" ) @Export("getByCurrentUsername") User getByCurrentUsername(Username var1) { return !var1.hasCleanName() ? null : (User)this.usernamesMap.get(var1); } - @ObfuscatedName("bm") + @ObfuscatedName("bj") @ObfuscatedSignature( - descriptor = "(Luc;S)Lqs;", - garbageValue = "24556" + descriptor = "(Lvj;I)Lrf;", + garbageValue = "-858632406" ) @Export("getByPreviousUsername") User getByPreviousUsername(Username var1) { return !var1.hasCleanName() ? null : (User)this.previousUsernamesMap.get(var1); } - @ObfuscatedName("bf") + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(Luc;I)Z", - garbageValue = "-810573248" + descriptor = "(Lvj;I)Z", + garbageValue = "-1442833706" ) @Export("removeByUsername") public final boolean removeByUsername(Username var1) { @@ -151,10 +151,10 @@ public final boolean removeByUsername(Username var1) { } } - @ObfuscatedName("bq") + @ObfuscatedName("bo") @ObfuscatedSignature( - descriptor = "(Lqs;I)V", - garbageValue = "1938550187" + descriptor = "(Lrf;I)V", + garbageValue = "-1690044546" ) @Export("remove") final void remove(User var1) { @@ -165,38 +165,34 @@ final void remove(User var1) { } } - @ObfuscatedName("ba") + @ObfuscatedName("bt") @ObfuscatedSignature( - descriptor = "(Luc;B)Lqs;", - garbageValue = "118" + descriptor = "(Lvj;B)Lrf;", + garbageValue = "-83" ) @Export("addLastNoPreviousUsername") User addLastNoPreviousUsername(Username var1) { return this.addLast(var1, (Username)null); } - @ObfuscatedName("bl") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "(Luc;Luc;B)Lqs;", - garbageValue = "0" + descriptor = "(Lvj;Lvj;I)Lrf;", + garbageValue = "1851941311" ) @Export("addLast") User addLast(Username var1, Username var2) { - if (this.getByCurrentUsername(var1) != null) { - throw new IllegalStateException(); - } else { - User var3 = this.newInstance(); - var3.set(var1, var2); - this.arrayAddLast(var3); - this.mapPut(var3); - return var3; - } + User var3 = this.newInstance(); + var3.set(var1, var2); + this.arrayAddLast(var3); + this.mapPut(var3); + return var3; } - @ObfuscatedName("bp") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(IB)Lqs;", - garbageValue = "20" + descriptor = "(II)Lrf;", + garbageValue = "-56414305" ) @Export("get") public final User get(int var1) { @@ -207,10 +203,10 @@ public final User get(int var1) { } } - @ObfuscatedName("bu") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1136384662" + descriptor = "(B)V", + garbageValue = "76" ) @Export("sort") public final void sort() { @@ -222,10 +218,10 @@ public final void sort() { } - @ObfuscatedName("bo") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "(Lqs;Luc;Luc;I)V", - garbageValue = "1687018867" + descriptor = "(Lrf;Lvj;Lvj;B)V", + garbageValue = "30" ) @Export("changeName") final void changeName(User var1, Username var2, Username var3) { @@ -234,10 +230,10 @@ final void changeName(User var1, Username var2, Username var3) { this.mapPut(var1); } - @ObfuscatedName("bb") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(Lqs;B)I", - garbageValue = "2" + descriptor = "(Lrf;B)I", + garbageValue = "-102" ) @Export("indexOf") final int indexOf(User var1) { @@ -250,37 +246,33 @@ final int indexOf(User var1) { return -1; } - @ObfuscatedName("br") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(Lqs;I)V", - garbageValue = "-1136381607" + descriptor = "(Lrf;B)V", + garbageValue = "-78" ) @Export("mapRemove") final void mapRemove(User var1) { - if (this.usernamesMap.remove(var1.username) == null) { - throw new IllegalStateException(); - } else { - if (var1.previousUsername != null) { - this.previousUsernamesMap.remove(var1.previousUsername); - } - + if (var1.previousUsername != null) { + this.previousUsernamesMap.remove(var1.previousUsername); } + } - @ObfuscatedName("be") + @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(Lqs;I)V", - garbageValue = "-633410463" + descriptor = "(Lrf;I)V", + garbageValue = "-488058670" ) @Export("arrayAddLast") final void arrayAddLast(User var1) { this.array[++this.size - 1] = var1; } - @ObfuscatedName("bi") + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "(Lqs;B)V", - garbageValue = "-26" + descriptor = "(Lrf;I)V", + garbageValue = "-1090734641" ) @Export("mapPut") final void mapPut(User var1) { @@ -294,10 +286,10 @@ final void mapPut(User var1) { } - @ObfuscatedName("bz") + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-87" + descriptor = "(II)V", + garbageValue = "-312876519" ) @Export("arrayRemove") final void arrayRemove(int var1) { @@ -308,20 +300,20 @@ final void arrayRemove(int var1) { } - @ObfuscatedName("bx") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "85" + descriptor = "(I)V", + garbageValue = "1908013155" ) @Export("removeComparator") public final void removeComparator() { this.comparator = null; } - @ObfuscatedName("bn") + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "(Ljava/util/Comparator;B)V", - garbageValue = "68" + descriptor = "(Ljava/util/Comparator;S)V", + garbageValue = "-18324" ) @Export("addComparator") public final void addComparator(Comparator var1) { @@ -333,93 +325,26 @@ public final void addComparator(Comparator var1) { } - @ObfuscatedName("bj") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1913527870" + descriptor = "(IS)Lhy;", + garbageValue = "196" ) - static int method2243(int var0, Script var1, boolean var2) { - int var3; - int var4; - int var6; - if (var0 == 3400) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - EnumComposition var5 = class271.getEnum(var3); - if (var5.outputType != 's') { - } - - for (var6 = 0; var6 < var5.outputCount; ++var6) { - if (var4 == var5.keys[var6]) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var5.strVals[var6]; - var5 = null; - break; - } - } - - if (var5 != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var5.defaultStr; - } - - return 1; - } else if (var0 != 3408) { - if (var0 == 3411) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - EnumComposition var10 = class271.getEnum(var3); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var10.size(); - return 1; - } else { - return 2; - } + @Export("StructDefinition_getStructDefinition") + public static StructComposition StructDefinition_getStructDefinition(int var0) { + StructComposition var1 = (StructComposition)StructComposition.StructDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - SoundCache.Interpreter_intStackSize -= 4; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - int var9 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - EnumComposition var7 = class271.getEnum(var9); - if (var3 == var7.inputType && var4 == var7.outputType) { - for (int var8 = 0; var8 < var7.outputCount; ++var8) { - if (var6 == var7.keys[var8]) { - if (var4 == 115) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7.strVals[var8]; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7.intVals[var8]; - } - - var7 = null; - break; - } - } - - if (var7 != null) { - if (var4 == 115) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7.defaultStr; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7.defaultInt; - } - } - - return 1; - } else { - if (var4 == 115) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = "null"; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; + byte[] var2 = StructComposition.StructDefinition_archive.takeFile(34, var0); + var1 = new StructComposition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); } - } - } - @ObfuscatedName("kh") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-587387192" - ) - static final boolean method2244() { - return Client.isMenuOpen; + var1.postDecode(); + StructComposition.StructDefinition_cached.put(var1, (long)var0); + return var1; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/Username.java b/osrs/src/main/java/Username.java index 27ae8c40b..37beaa1b2 100644 --- a/osrs/src/main/java/Username.java +++ b/osrs/src/main/java/Username.java @@ -3,78 +3,22 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("uc") +@ObfuscatedName("vj") @Implements("Username") public class Username implements Comparable { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("name") String name; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("cleanName") String cleanName; @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lsl;)V" + descriptor = "(Ljava/lang/String;Ltt;)V" ) public Username(String var1, LoginType var2) { this.name = var1; - String var4; - if (var1 == null) { - var4 = null; - } else { - label67: { - int var5 = 0; - - int var6; - for (var6 = var1.length(); var5 < var6 && ArchiveDiskActionHandler.method1885(var1.charAt(var5)); ++var5) { - } - - while (var6 > var5 && ArchiveDiskActionHandler.method1885(var1.charAt(var6 - 1))) { - --var6; - } - - int var7 = var6 - var5; - if (var7 >= 1) { - byte var9; - if (var2 == null) { - var9 = 12; - } else { - switch(var2.field4076) { - case 0: - var9 = 20; - break; - default: - var9 = 12; - } - } - - if (var7 <= var9) { - StringBuilder var12 = new StringBuilder(var7); - - for (int var13 = var5; var13 < var6; ++var13) { - char var10 = var1.charAt(var13); - if (ClientPreferences.method537(var10)) { - char var11 = KeyHandler.method91(var10); - if (var11 != 0) { - var12.append(var11); - } - } - } - - if (var12.length() == 0) { - var4 = null; - } else { - var4 = var12.toString(); - } - break label67; - } - } - - var4 = null; - } - } - - this.cleanName = var4; + this.cleanName = class14.method52(var1, var2); } public Username(String var1) { @@ -84,14 +28,14 @@ public Username(String var1) { if (var1 == null) { var3 = null; } else { - label67: { + label100: { int var5 = 0; int var6; - for (var6 = var1.length(); var5 < var6 && ArchiveDiskActionHandler.method1885(var1.charAt(var5)); ++var5) { + for (var6 = var1.length(); var5 < var6 && class489.method2381(var1.charAt(var5)); ++var5) { } - while (var6 > var5 && ArchiveDiskActionHandler.method1885(var1.charAt(var6 - 1))) { + while (var6 > var5 && class489.method2381(var1.charAt(var6 - 1))) { --var6; } @@ -101,8 +45,8 @@ public Username(String var1) { if (var4 == null) { var9 = 12; } else { - switch(var4.field4076) { - case 0: + switch(var4.field4102) { + case 1: var9 = 20; break; default: @@ -111,24 +55,61 @@ public Username(String var1) { } if (var7 <= var9) { - StringBuilder var12 = new StringBuilder(var7); - - for (int var13 = var5; var13 < var6; ++var13) { - char var10 = var1.charAt(var13); - if (ClientPreferences.method537(var10)) { - char var11 = KeyHandler.method91(var10); - if (var11 != 0) { - var12.append(var11); + StringBuilder var15 = new StringBuilder(var7); + + for (int var17 = var5; var17 < var6; ++var17) { + char var10 = var1.charAt(var17); + boolean var11; + if (Character.isISOControl(var10)) { + var11 = false; + } else if (KeyHandler.isAlphaNumeric(var10)) { + var11 = true; + } else { + char[] var12 = class505.field4104; + int var13 = 0; + + label67: + while (true) { + char var14; + if (var13 >= var12.length) { + var12 = class505.field4103; + + for (var13 = 0; var13 < var12.length; ++var13) { + var14 = var12[var13]; + if (var14 == var10) { + var11 = true; + break label67; + } + } + + var11 = false; + break; + } + + var14 = var12[var13]; + if (var10 == var14) { + var11 = true; + break; + } + + ++var13; + } + } + + if (var11) { + char var16 = FriendsChat.method2219(var10); + if (var16 != 0) { + var15.append(var16); } } } - if (var12.length() == 0) { + if (var15.length() == 0) { var3 = null; } else { - var3 = var12.toString(); + var3 = var15.toString(); } - break label67; + break label100; } } @@ -139,39 +120,39 @@ public Username(String var1) { this.cleanName = var3; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1021488493" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "8" ) @Export("getName") public String getName() { return this.name; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "28" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-1344600615" ) - public String method2700() { + public String method2718() { return this.cleanName; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-911492900" + descriptor = "(B)Z", + garbageValue = "19" ) @Export("hasCleanName") public boolean hasCleanName() { return this.cleanName != null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Luc;I)I", - garbageValue = "-2077400310" + descriptor = "(Lvj;I)I", + garbageValue = "1848187995" ) @Export("compareToTyped") public int compareToTyped(Username var1) { diff --git a/osrs/src/main/java/Usernamed.java b/osrs/src/main/java/Usernamed.java index b3b7c9b17..888d1dc2e 100644 --- a/osrs/src/main/java/Usernamed.java +++ b/osrs/src/main/java/Usernamed.java @@ -3,13 +3,13 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ql") +@ObfuscatedName("qz") @Implements("Usernamed") public interface Usernamed { - @ObfuscatedName("ok") + @ObfuscatedName("or") @ObfuscatedSignature( - descriptor = "(S)Luc;", - garbageValue = "-775" + descriptor = "(I)Lvj;", + garbageValue = "-1748725154" ) @Export("username") Username username(); diff --git a/osrs/src/main/java/VarbitComposition.java b/osrs/src/main/java/VarbitComposition.java index b4b4fe12a..b8d79512e 100644 --- a/osrs/src/main/java/VarbitComposition.java +++ b/osrs/src/main/java/VarbitComposition.java @@ -3,49 +3,46 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hb") +@ObfuscatedName("ht") @Implements("VarbitComposition") public class VarbitComposition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("VarbitDefinition_archive") - static AbstractArchive VarbitDefinition_archive; - @ObfuscatedName("ae") + public static AbstractArchive VarbitDefinition_archive; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("VarbitDefinition_cached") - public static EvictingDualNodeHashTable VarbitDefinition_cached; - @ObfuscatedName("ai") - static final int[] field1674; - @ObfuscatedName("mo") + static EvictingDualNodeHashTable VarbitDefinition_cached; + @ObfuscatedName("au") + static final int[] field1624; + @ObfuscatedName("fy") @ObfuscatedSignature( - descriptor = "Ldf;" + descriptor = "Loh;" ) - @Export("localPlayer") - static Player localPlayer; - @ObfuscatedName("us") - @Export("cameraLookAtY") - static int cameraLookAtY; - @ObfuscatedName("ao") + @Export("archive13") + static Archive archive13; + @ObfuscatedName("ar") @Export("baseVar") public int baseVar; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("startBit") public int startBit; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("endBit") public int endBit; static { VarbitDefinition_cached = new EvictingDualNodeHashTable(64); - field1674 = new int[32]; + field1624 = new int[32]; int var0 = 2; for (int var1 = 0; var1 < 32; ++var1) { - field1674[var1] = var0 - 1; + field1624[var1] = var0 - 1; var0 += var0; } @@ -54,10 +51,10 @@ public class VarbitComposition extends DualNode { VarbitComposition() { } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "1889164320" + descriptor = "(Luj;B)V", + garbageValue = "-93" ) @Export("decode") void decode(Buffer var1) { @@ -71,10 +68,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1344279898" + descriptor = "(Luj;II)V", + garbageValue = "-30709508" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -85,20 +82,4 @@ void decodeNext(Buffer var1, int var2) { } } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;B)I", - garbageValue = "14" - ) - public static int method1012(CharSequence var0) { - int var1 = var0.length(); - int var2 = 0; - - for (int var3 = 0; var3 < var1; ++var3) { - var2 = (var2 << 5) - var2 + var0.charAt(var3); - } - - return var2; - } } \ No newline at end of file diff --git a/osrs/src/main/java/VarcInt.java b/osrs/src/main/java/VarcInt.java index a63292aa1..b8228f9c2 100644 --- a/osrs/src/main/java/VarcInt.java +++ b/osrs/src/main/java/VarcInt.java @@ -3,37 +3,21 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.List; - -@ObfuscatedName("hk") +@ObfuscatedName("gk") @Implements("VarcInt") public class VarcInt extends DualNode { - @ObfuscatedName("wz") - static List field1532; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("VarcInt_archive") - public static AbstractArchive VarcInt_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("VarcInt_cached") - static EvictingDualNodeHashTable VarcInt_cached; - @ObfuscatedName("dy") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - static IndexedSprite field1534; - @ObfuscatedName("if") + public static EvictingDualNodeHashTable VarcInt_cached; + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Lgz;" + descriptor = "Lgn;" ) - @Export("socketTask") - static Task socketTask; - @ObfuscatedName("ao") + static ClanChannel field1474; + @ObfuscatedName("ar") @Export("persist") public boolean persist; @@ -45,41 +29,83 @@ public class VarcInt extends DualNode { this.persist = false; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-2131192855" + descriptor = "(Luj;S)V", + garbageValue = "-26758" ) - void method954(Buffer var1) { + void method901(Buffer var1) { while (true) { int var2 = var1.readUnsignedByte(); if (var2 == 0) { return; } - this.method955(var1, var2); + this.method902(var1, var2); } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "-12" + descriptor = "(Luj;IB)V", + garbageValue = "14" ) - void method955(Buffer var1, int var2) { + void method902(Buffer var1, int var2) { if (var2 == 2) { this.persist = true; } } - @ObfuscatedName("aa") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([BZI)Ljava/lang/Object;", + garbageValue = "-648175177" + ) + public static Object method899(byte[] var0, boolean var1) { + if (var0 == null) { + return null; + } else if (var0.length > 136) { + DirectByteArrayCopier var2 = new DirectByteArrayCopier(); + var2.set(var0); + return var2; + } else { + return var0; + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "60" + ) + public static void method900() { + class176.archive5.clear(); + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Lch;", - garbageValue = "-580226644" + descriptor = "(III)V", + garbageValue = "1925718940" ) - @Export("getNextWorldListWorld") - static World getNextWorldListWorld() { - return World.World_listCount < World.World_count ? class176.World_worlds[++World.World_listCount - 1] : null; + @Export("changeWorldSelectSorting") + static void changeWorldSelectSorting(int var0, int var1) { + int[] var2 = new int[4]; + int[] var3 = new int[4]; + var2[0] = var0; + var3[0] = var1; + int var4 = 1; + + for (int var5 = 0; var5 < 4; ++var5) { + if (World.World_sortOption1[var5] != var0) { + var2[var4] = World.World_sortOption1[var5]; + var3[var4] = World.World_sortOption2[var5]; + ++var4; + } + } + + World.World_sortOption1 = var2; + World.World_sortOption2 = var3; + class181.sortWorlds(class361.World_worlds, 0, class361.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); } } \ No newline at end of file diff --git a/osrs/src/main/java/Varcs.java b/osrs/src/main/java/Varcs.java index 44e590e05..0969445ff 100644 --- a/osrs/src/main/java/Varcs.java +++ b/osrs/src/main/java/Varcs.java @@ -9,53 +9,57 @@ import java.util.Map; import java.util.Map.Entry; -@ObfuscatedName("ej") +@ObfuscatedName("em") @Implements("Varcs") public class Varcs { - @ObfuscatedName("gr") - static String field1140; - @ObfuscatedName("ao") + @ObfuscatedName("jw") + @Export("xteaKeys") + static int[][] xteaKeys; + @ObfuscatedName("lf") + @Export("cameraPitch") + static int cameraPitch; + @ObfuscatedName("ar") @Export("intsPersistence") boolean[] intsPersistence; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("map") Map map; /** @deprecated */ @Deprecated - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("strings") String[] strings; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("unwrittenChanges") boolean unwrittenChanges; - @ObfuscatedName("az") - long field1145; + @ObfuscatedName("aa") + long field1152; Varcs() { this.unwrittenChanges = false; - int var1 = class1.archive2.getGroupFileCount(19); + int var1 = class344.archive2.getGroupFileCount(19); this.map = new HashMap(); this.intsPersistence = new boolean[var1]; int var2; for (var2 = 0; var2 < var1; ++var2) { - VarcInt var3 = class227.method1210(var2); + VarcInt var3 = class140.method750(var2); this.intsPersistence[var2] = var3.persist; } var2 = 0; - if (class1.archive2.method1898(15)) { - var2 = class1.archive2.getGroupFileCount(15); + if (class344.archive2.method1923(15)) { + var2 = class344.archive2.getGroupFileCount(15); } this.strings = new String[var2]; this.read(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1506039349" + garbageValue = "-1897497270" ) @Export("setInt") void setInt(int var1, int var2) { @@ -66,10 +70,10 @@ void setInt(int var1, int var2) { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "2" + descriptor = "(II)I", + garbageValue = "-1991515717" ) @Export("getInt") int getInt(int var1) { @@ -77,20 +81,20 @@ int getInt(int var1) { return var2 instanceof Integer ? (Integer)var2 : -1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)V", - garbageValue = "-1902210814" + descriptor = "(ILjava/lang/String;B)V", + garbageValue = "-59" ) @Export("setString") void setString(int var1, String var2) { this.map.put(var1, var2); } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(IB)Ljava/lang/String;", - garbageValue = "2" + garbageValue = "32" ) @Export("getString") String getString(int var1) { @@ -100,10 +104,10 @@ String getString(int var1) { /** @deprecated */ @Deprecated - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)V", - garbageValue = "544618073" + garbageValue = "-1603974039" ) @Export("setStringOld") void setStringOld(int var1, String var2) { @@ -112,20 +116,20 @@ void setStringOld(int var1, String var2) { /** @deprecated */ @Deprecated - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(IB)Ljava/lang/String;", - garbageValue = "-128" + garbageValue = "0" ) @Export("getStringOld") String getStringOld(int var1) { return this.strings[var1]; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-54" + descriptor = "(I)V", + garbageValue = "19136992" ) @Export("clearTransient") void clearTransient() { @@ -142,20 +146,20 @@ void clearTransient() { } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(ZI)Ltu;", - garbageValue = "-924681157" + descriptor = "(ZI)Lto;", + garbageValue = "-1859436086" ) @Export("getPreferencesFile") AccessFile getPreferencesFile(boolean var1) { - return Decimator.getPreferencesFile("2", WorldMapSectionType.field2417.name, var1); + return class131.getPreferencesFile("2", Messages.field1156.name, var1); } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "25" + descriptor = "(I)V", + garbageValue = "-2104867526" ) @Export("write") void write() { @@ -175,7 +179,7 @@ void write() { if (var7 instanceof Integer) { var2 += 4; } else if (var7 instanceof String) { - var2 += AbstractSocket.stringCp1252NullTerminatedByteSize((String)var7); + var2 += ClanChannel.stringCp1252NullTerminatedByteSize((String)var7); } ++var3; @@ -193,15 +197,15 @@ void write() { if (this.intsPersistence[var16]) { var26.writeShort(var16); Object var8 = var15.getValue(); - class502 var9 = class502.method2495(var8.getClass()); - var26.writeByte(var9.field4103); + class514 var9 = class514.method2504(var8.getClass()); + var26.writeByte(var9.field4128); Class var11 = var8.getClass(); - class502 var12 = class502.method2495(var11); + class514 var12 = class514.method2504(var11); if (var12 == null) { throw new IllegalArgumentException(); } - class498 var10 = var12.field4106; + class510 var10 = var12.field4131; var10.vmethod8274(var8, var26); } } @@ -217,121 +221,132 @@ void write() { } this.unwrittenChanges = false; - this.field1145 = GameEngine.clockNow(); + this.field1152 = SpotAnimationDefinition.method962(); } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-137734629" + descriptor = "(B)V", + garbageValue = "121" ) @Export("read") void read() { AccessFile var1 = this.getPreferencesFile(false); - label220: { - try { - byte[] var2 = new byte[(int)var1.length()]; + try { + byte[] var2 = new byte[(int)var1.length()]; - int var4; - for (int var3 = 0; var3 < var2.length; var3 += var4) { - var4 = var1.read(var2, var3, var2.length - var3); - if (var4 == -1) { - throw new EOFException(); - } + int var4; + for (int var3 = 0; var3 < var2.length; var3 += var4) { + var4 = var1.read(var2, var3, var2.length - var3); + if (var4 == -1) { + throw new EOFException(); } + } - Buffer var14 = new Buffer(var2); - if (var14.array.length - var14.offset >= 1) { - int var15 = var14.readUnsignedByte(); - if (var15 < 0 || var15 > 2) { - return; - } + Buffer var14 = new Buffer(var2); + if (var14.array.length - var14.offset < 1) { + return; + } + + int var15 = var14.readUnsignedByte(); + if (var15 < 0 || var15 > 2) { + return; + } - int var7; - int var8; - int var9; - int var16; - if (var15 >= 2) { - var16 = var14.readUnsignedShort(); - var7 = 0; - - while (true) { - if (var7 >= var16) { - break label220; - } - - var8 = var14.readUnsignedShort(); - var9 = var14.readUnsignedByte(); - class502 var10 = (class502)KeyHandler.findEnumerated(class502.method2494(), var9); - Object var11 = var10.method2497(var14); - if (var8 >= 0 && var8 < this.intsPersistence.length && this.intsPersistence[var8]) { - this.map.put(var8, var11); - } - - ++var7; - } - } else { - var16 = var14.readUnsignedShort(); - - for (var7 = 0; var7 < var16; ++var7) { - var8 = var14.readUnsignedShort(); - var9 = var14.readInt(); - if (var8 >= 0 && var8 < this.intsPersistence.length && this.intsPersistence[var8]) { - this.map.put(var8, var9); - } - } - - var7 = var14.readUnsignedShort(); - var8 = 0; - - while (true) { - if (var8 >= var7) { - break label220; - } - - var14.readUnsignedShort(); - var14.readStringCp1252NullTerminated(); - ++var8; - } + int var7; + int var8; + int var9; + int var16; + if (var15 >= 2) { + var16 = var14.readUnsignedShort(); + + for (var7 = 0; var7 < var16; ++var7) { + var8 = var14.readUnsignedShort(); + var9 = var14.readUnsignedByte(); + class514 var10 = (class514)class12.findEnumerated(class514.method2503(), var9); + Object var11 = var10.method2506(var14); + if (var8 >= 0 && var8 < this.intsPersistence.length && this.intsPersistence[var8]) { + this.map.put(var8, var11); } } - } catch (Exception var25) { - break label220; - } finally { - try { - var1.close(); - } catch (Exception var24) { + } else { + var16 = var14.readUnsignedShort(); + + for (var7 = 0; var7 < var16; ++var7) { + var8 = var14.readUnsignedShort(); + var9 = var14.readInt(); + if (var8 >= 0 && var8 < this.intsPersistence.length && this.intsPersistence[var8]) { + this.map.put(var8, var9); + } } + var7 = var14.readUnsignedShort(); + + for (var8 = 0; var8 < var7; ++var8) { + var14.readUnsignedShort(); + var14.readStringCp1252NullTerminated(); + } + } + } catch (Exception var25) { + } finally { + try { + var1.close(); + } catch (Exception var24) { } - return; } this.unwrittenChanges = false; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1824287438" + garbageValue = "1055402619" ) @Export("tryWrite") void tryWrite() { - if (this.unwrittenChanges && this.field1145 < GameEngine.clockNow() - 60000L) { + if (this.unwrittenChanges && this.field1152 < SpotAnimationDefinition.method962() - 60000L) { this.write(); } } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "7" + garbageValue = "3" ) @Export("hasUnwrittenChanges") boolean hasUnwrittenChanges() { return this.unwrittenChanges; } + + @ObfuscatedName("lg") + @ObfuscatedSignature( + descriptor = "(IIIIII)V", + garbageValue = "2070284698" + ) + @Export("drawScrollBar") + static final void drawScrollBar(int var0, int var1, int var2, int var3, int var4) { + class31.scrollBarSprites[0].drawAt(var0, var1); + class31.scrollBarSprites[1].drawAt(var0, var3 + var1 - 16); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1 + 16, 16, var3 - 32, Client.field461); + int var5 = var3 * (var3 - 32) / var4; + if (var5 < 8) { + var5 = 8; + } + + int var6 = (var3 - 32 - var5) * var2 / (var4 - var3); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var6 + var1 + 16, 16, var5, Client.field458); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0, var6 + var1 + 16, var5, Client.field457); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 1, var6 + var1 + 16, var5, Client.field457); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 16, 16, Client.field457); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 17, 16, Client.field457); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 15, var6 + var1 + 16, var5, Client.field459); + Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 14, var6 + var1 + 17, var5 - 1, Client.field459); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var5 + var6 + var1 + 15, 16, Client.field459); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0 + 1, var6 + var5 + var1 + 14, 15, Client.field459); + } } \ No newline at end of file diff --git a/osrs/src/main/java/VarpDefinition.java b/osrs/src/main/java/VarpDefinition.java index 541dc47be..fdf38acb8 100644 --- a/osrs/src/main/java/VarpDefinition.java +++ b/osrs/src/main/java/VarpDefinition.java @@ -3,33 +3,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hi") +@ObfuscatedName("gv") @Implements("VarpDefinition") public class VarpDefinition extends DualNode { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("VarpDefinition_archive") static AbstractArchive VarpDefinition_archive; - @ObfuscatedName("ae") - public static int field1498; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + public static int field1443; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lle;" + descriptor = "Llk;" ) @Export("VarpDefinition_cached") - public static EvictingDualNodeHashTable VarpDefinition_cached; - @ObfuscatedName("ai") + static EvictingDualNodeHashTable VarpDefinition_cached; + @ObfuscatedName("ki") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "[Lup;" ) - @Export("SequenceDefinition_animationsArchive") - static AbstractArchive SequenceDefinition_animationsArchive; - @ObfuscatedName("uk") - @Export("cameraMoveToHeight") - static int cameraMoveToHeight; - @ObfuscatedName("at") + @Export("mapSceneSprites") + static IndexedSprite[] mapSceneSprites; + @ObfuscatedName("ku") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("crossSprites") + static SpritePixels[] crossSprites; + @ObfuscatedName("ao") @Export("type") public int type; @@ -41,10 +44,10 @@ public class VarpDefinition extends DualNode { this.type = 0; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-2" + descriptor = "(Luj;B)V", + garbageValue = "-51" ) @Export("decode") void decode(Buffer var1) { @@ -58,10 +61,10 @@ void decode(Buffer var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1878082130" + descriptor = "(Luj;II)V", + garbageValue = "-521810807" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { @@ -70,4 +73,13 @@ void decodeNext(Buffer var1, int var2) { } } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "-634068040" + ) + static int method886(int var0, int var1, int var2) { + return var0 << 28 | var1 << 14 | var2; + } } \ No newline at end of file diff --git a/osrs/src/main/java/Varps.java b/osrs/src/main/java/Varps.java index bc26c0d53..2352c4d08 100644 --- a/osrs/src/main/java/Varps.java +++ b/osrs/src/main/java/Varps.java @@ -3,21 +3,24 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mz") +@ObfuscatedName("mg") @Implements("Varps") public class Varps { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("Varps_masks") static int[] Varps_masks; - @ObfuscatedName("ae") + @ObfuscatedName("ar") @Export("Varps_temp") public static int[] Varps_temp; @ObfuscatedName("ao") @Export("Varps_main") public static int[] Varps_main; - @ObfuscatedName("at") - @Export("Interpreter_intLocals") - static int[] Interpreter_intLocals; + @ObfuscatedName("db") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + @Export("worldSelectLeftSprite") + static IndexedSprite worldSelectLeftSprite; static { Varps_masks = new int[32]; @@ -28,16 +31,7 @@ public class Varps { var0 += var0; } - Varps_temp = new int[4000]; - Varps_main = new int[4000]; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Ldl;", - garbageValue = "-195730682" - ) - static class89[] method1708() { - return new class89[]{class89.field881, class89.field883, class89.field882, class89.field880, class89.field884}; + Varps_temp = new int[5000]; + Varps_main = new int[5000]; } } \ No newline at end of file diff --git a/osrs/src/main/java/VertexNormal.java b/osrs/src/main/java/VertexNormal.java index 3ea0c450d..a57468304 100644 --- a/osrs/src/main/java/VertexNormal.java +++ b/osrs/src/main/java/VertexNormal.java @@ -3,21 +3,19 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ja") +@ObfuscatedName("ky") @Implements("VertexNormal") public class VertexNormal { - @ObfuscatedName("ul") - static int field2255; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("x") int x; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("y") int y; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("z") int z; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("magnitude") int magnitude; @@ -25,7 +23,7 @@ public class VertexNormal { } @ObfuscatedSignature( - descriptor = "(Lja;)V" + descriptor = "(Lky;)V" ) VertexNormal(VertexNormal var1) { this.x = var1.x; @@ -33,4 +31,60 @@ public class VertexNormal { this.z = var1.z; this.magnitude = var1.magnitude; } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lol;B)V", + garbageValue = "-54" + ) + public static void method1567(AbstractArchive var0) { + ParamComposition.ParamDefinition_archive = var0; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lol;IIB)[Luz;", + garbageValue = "-73" + ) + public static SpritePixels[] method1568(AbstractArchive var0, int var1, int var2) { + byte[] var4 = var0.takeFile(var1, var2); + boolean var3; + if (var4 == null) { + var3 = false; + } else { + class162.SpriteBuffer_decode(var4); + var3 = true; + } + + if (!var3) { + return null; + } else { + SpritePixels[] var5 = new SpritePixels[class541.SpriteBuffer_spriteCount]; + + for (int var6 = 0; var6 < class541.SpriteBuffer_spriteCount; ++var6) { + SpritePixels var7 = var5[var6] = new SpritePixels(); + var7.width = class541.SpriteBuffer_spriteWidth; + var7.height = GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight; + var7.xOffset = class541.SpriteBuffer_xOffsets[var6]; + var7.yOffset = class541.SpriteBuffer_yOffsets[var6]; + var7.subWidth = class541.SpriteBuffer_spriteWidths[var6]; + var7.subHeight = class520.SpriteBuffer_spriteHeights[var6]; + int var8 = var7.subHeight * var7.subWidth; + byte[] var9 = class396.SpriteBuffer_pixels[var6]; + var7.pixels = new int[var8]; + + for (int var10 = 0; var10 < var8; ++var10) { + var7.pixels[var10] = class541.SpriteBuffer_spritePalette[var9[var10] & 255]; + } + } + + class541.SpriteBuffer_xOffsets = null; + class541.SpriteBuffer_yOffsets = null; + class541.SpriteBuffer_spriteWidths = null; + class520.SpriteBuffer_spriteHeights = null; + class541.SpriteBuffer_spritePalette = null; + class396.SpriteBuffer_pixels = null; + return var5; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/VerticalAlignment.java b/osrs/src/main/java/VerticalAlignment.java index a786fbfba..fea7627ce 100644 --- a/osrs/src/main/java/VerticalAlignment.java +++ b/osrs/src/main/java/VerticalAlignment.java @@ -3,41 +3,30 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hy") +@ObfuscatedName("hg") @Implements("VerticalAlignment") -public enum VerticalAlignment implements class371 { - @ObfuscatedName("au") +public enum VerticalAlignment implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lhy;" + descriptor = "Lhg;" ) - field1634(1, 0), - @ObfuscatedName("ae") + field1581(2, 0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lhy;" + descriptor = "Lhg;" ) @Export("VerticalAlignment_centered") VerticalAlignment_centered(0, 1), - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lhy;" + descriptor = "Lhg;" ) - field1633(2, 2); + field1580(1, 2); - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - static IndexedSprite field1631; - @ObfuscatedName("td") - @ObfuscatedSignature( - descriptor = "Lgo;" - ) - @Export("guestClanChannel") - static ClanChannel guestClanChannel; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("value") public final int value; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("id") final int id; @@ -46,49 +35,80 @@ public enum VerticalAlignment implements class371 { this.id = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([Ljava/lang/String;[IIII)V", - garbageValue = "807517970" + descriptor = "(I)[Lnt;", + garbageValue = "1599103276" ) - public static void method998(String[] var0, int[] var1, int var2, int var3) { - if (var2 < var3) { - int var4 = (var3 + var2) / 2; - int var5 = var2; - String var6 = var0[var4]; - var0[var4] = var0[var3]; - var0[var3] = var6; - int var7 = var1[var4]; - var1[var4] = var1[var3]; - var1[var3] = var7; + public static StudioGame[] method955() { + return new StudioGame[]{StudioGame.game5, StudioGame.stellardawn, StudioGame.oldscape, StudioGame.game3, StudioGame.runescape, StudioGame.game4}; + } - for (int var8 = var2; var8 < var3; ++var8) { - if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { - String var9 = var0[var8]; - var0[var8] = var0[var5]; - var0[var5] = var9; - int var10 = var1[var8]; - var1[var8] = var1[var5]; - var1[var5++] = var10; - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IS)Lhw;", + garbageValue = "4625" + ) + @Export("getNpcDefinition") + public static NPCComposition getNpcDefinition(int var0) { + NPCComposition var1 = (NPCComposition)NPCComposition.NpcDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = NPCComposition.NpcDefinition_archive.takeFile(9, var0); + var1 = new NPCComposition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); } - var0[var3] = var0[var5]; - var0[var5] = var6; - var1[var3] = var1[var5]; - var1[var5] = var7; - method998(var0, var1, var2, var5 - 1); - method998(var0, var1, var5 + 1, var3); + var1.postDecode(); + NPCComposition.NpcDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("bx") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-2145020206" + ) + static int method959(int var0, Script var1, boolean var2) { + return 2; + } + + @ObfuscatedName("hx") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "-52" + ) + static final void method958(boolean var0) { + if (var0) { + Client.field419 = Login.field744 ? class124.field1205 : class124.field1206; + } else { + Client.field419 = WorldMapIcon_1.clientPreferences.method565(Login.Login_username) ? class124.field1208 : class124.field1207; + } + + } + + @ObfuscatedName("oh") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-66" + ) + static void method960() { + if (Client.oculusOrbState == 1) { + Client.oculusOrbOnLocalPlayer = true; } } diff --git a/osrs/src/main/java/ViewportMouse.java b/osrs/src/main/java/ViewportMouse.java index 77a421f81..43d1fa553 100644 --- a/osrs/src/main/java/ViewportMouse.java +++ b/osrs/src/main/java/ViewportMouse.java @@ -3,37 +3,39 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jc") +@ObfuscatedName("kb") @Implements("ViewportMouse") public class ViewportMouse { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("ViewportMouse_isInViewport") static boolean ViewportMouse_isInViewport; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("ViewportMouse_x") static int ViewportMouse_x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("ViewportMouse_y") static int ViewportMouse_y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("ViewportMouse_false0") static boolean ViewportMouse_false0; - @ObfuscatedName("ac") - static int field2249; - @ObfuscatedName("ai") - static int field2252; + @ObfuscatedName("au") + @Export("Tiles_shapes") + static byte[][][] Tiles_shapes; @ObfuscatedName("az") - static int field2254; - @ObfuscatedName("aa") - static int field2248; - @ObfuscatedName("ad") - static int field2250; - @ObfuscatedName("an") + static int field2433; + @ObfuscatedName("ap") + static int field2429; + @ObfuscatedName("ax") + static int field2432; + @ObfuscatedName("as") @Export("ViewportMouse_entityCount") - public static int ViewportMouse_entityCount; - @ObfuscatedName("ar") + static int ViewportMouse_entityCount; + @ObfuscatedName("ay") @Export("ViewportMouse_entityTags") public static long[] ViewportMouse_entityTags; + @ObfuscatedName("kx") + @Export("cameraX") + static int cameraX; static { ViewportMouse_isInViewport = false; @@ -44,39 +46,13 @@ public class ViewportMouse { ViewportMouse_entityTags = new long[1000]; } - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(BI)C", - garbageValue = "-1224781915" - ) - public static char method1348(byte var0) { - int var1 = var0 & 255; - if (var1 == 0) { - throw new IllegalArgumentException("" + Integer.toString(var1, 16)); - } else { - if (var1 >= 128 && var1 < 160) { - char var2 = class384.cp1252AsciiExtension[var1 - 128]; - if (var2 == 0) { - var2 = '?'; - } - - var1 = var2; - } - - return (char)var1; - } - } - - @ObfuscatedName("al") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "759776126" + descriptor = "(Lol;I)V", + garbageValue = "181873849" ) - static int method1349(int var0, int var1, int var2) { - if ((Tiles.Tiles_renderFlags[var0][var1][var2] & 8) != 0) { - return 0; - } else { - return var0 > 0 && (Tiles.Tiles_renderFlags[1][var1][var2] & 2) != 0 ? var0 - 1 : var0; - } + public static void method1566(AbstractArchive var0) { + VarpDefinition.VarpDefinition_archive = var0; + VarpDefinition.field1443 = VarpDefinition.VarpDefinition_archive.getGroupFileCount(16); } } \ No newline at end of file diff --git a/osrs/src/main/java/VorbisCodebook.java b/osrs/src/main/java/VorbisCodebook.java index 4b3f537af..d8700fd63 100644 --- a/osrs/src/main/java/VorbisCodebook.java +++ b/osrs/src/main/java/VorbisCodebook.java @@ -3,79 +3,79 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cw") +@ObfuscatedName("cf") @Implements("VorbisCodebook") public class VorbisCodebook { - @ObfuscatedName("au") - int field257; - @ObfuscatedName("ae") + @ObfuscatedName("at") + int field252; + @ObfuscatedName("ah") @Export("entries") int entries; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("lengthMap") int[] lengthMap; - @ObfuscatedName("at") - int[] field260; - @ObfuscatedName("ac") - float[][] field255; - @ObfuscatedName("ai") + @ObfuscatedName("ao") + int[] field253; + @ObfuscatedName("ab") + float[][] field250; + @ObfuscatedName("au") @Export("keys") int[] keys; VorbisCodebook() { - class60 var1 = VorbisSample.field267; - var1.method325(24); - this.field257 = var1.method325(16); - this.entries = var1.method325(24); + class60 var1 = VorbisSample.field264; + var1.method335(24); + this.field252 = var1.method335(16); + this.entries = var1.method335(24); this.lengthMap = new int[this.entries]; - boolean var2 = var1.method326() != 0; + boolean var2 = var1.method336() != 0; int var3; int var4; int var6; if (var2) { var3 = 0; - for (var4 = var1.method325(5) + 1; var3 < this.entries; ++var4) { - int var5 = var1.method325(class16.iLog(this.entries - var3)); + for (var4 = var1.method335(5) + 1; var3 < this.entries; ++var4) { + int var5 = var1.method335(LoginScreenAnimation.iLog(this.entries - var3)); for (var6 = 0; var6 < var5; ++var6) { this.lengthMap[var3++] = var4; } } } else { - boolean var15 = var1.method326() != 0; + boolean var15 = var1.method336() != 0; for (var4 = 0; var4 < this.entries; ++var4) { - if (var15 && var1.method326() == 0) { + if (var15 && var1.method336() == 0) { this.lengthMap[var4] = 0; } else { - this.lengthMap[var4] = var1.method325(5) + 1; + this.lengthMap[var4] = var1.method335(5) + 1; } } } - this.method286(); - var3 = var1.method325(4); + this.method300(); + var3 = var1.method335(4); if (var3 > 0) { - float var16 = VorbisSample.float32Unpack(var1.method325(32)); - float var17 = VorbisSample.float32Unpack(var1.method325(32)); - var6 = var1.method325(4) + 1; - boolean var7 = var1.method326() != 0; + float var16 = VorbisSample.float32Unpack(var1.method335(32)); + float var17 = VorbisSample.float32Unpack(var1.method335(32)); + var6 = var1.method335(4) + 1; + boolean var7 = var1.method336() != 0; int var8; if (var3 == 1) { - var8 = mapType1QuantValues(this.entries, this.field257); + var8 = mapType1QuantValues(this.entries, this.field252); } else { - var8 = this.entries * this.field257; + var8 = this.entries * this.field252; } - this.field260 = new int[var8]; + this.field253 = new int[var8]; int var9; for (var9 = 0; var9 < var8; ++var9) { - this.field260[var9] = var1.method325(var6); + this.field253[var9] = var1.method335(var6); } - this.field255 = new float[this.entries][this.field257]; + this.field250 = new float[this.entries][this.field252]; float var10; int var11; int var12; @@ -84,10 +84,10 @@ public class VorbisCodebook { var10 = 0.0F; var11 = 1; - for (var12 = 0; var12 < this.field257; ++var12) { + for (var12 = 0; var12 < this.field252; ++var12) { int var13 = var9 / var11 % var8; - float var14 = (float)this.field260[var13] * var17 + var16 + var10; - this.field255[var9][var12] = var14; + float var14 = (float)this.field253[var13] * var17 + var16 + var10; + this.field250[var9][var12] = var14; if (var7) { var10 = var14; } @@ -98,11 +98,11 @@ public class VorbisCodebook { } else { for (var9 = 0; var9 < this.entries; ++var9) { var10 = 0.0F; - var11 = var9 * this.field257; + var11 = var9 * this.field252; - for (var12 = 0; var12 < this.field257; ++var12) { - float var18 = (float)this.field260[var11] * var17 + var16 + var10; - this.field255[var9][var12] = var18; + for (var12 = 0; var12 < this.field252; ++var12) { + float var18 = (float)this.field253[var11] * var17 + var16 + var10; + this.field250[var9][var12] = var18; if (var7) { var10 = var18; } @@ -115,8 +115,8 @@ public class VorbisCodebook { } - @ObfuscatedName("ae") - void method286() { + @ObfuscatedName("ah") + void method300() { int[] var1 = new int[this.entries]; int[] var2 = new int[33]; @@ -209,33 +209,56 @@ void method286() { } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lce;)I" + descriptor = "(Lcw;)I" ) - int method287(class60 var1) { + int method301(class60 var1) { int var2; - for (var2 = 0; this.keys[var2] >= 0; var2 = var1.method326() != 0 ? this.keys[var2] : var2 + 1) { + for (var2 = 0; this.keys[var2] >= 0; var2 = var1.method336() != 0 ? this.keys[var2] : var2 + 1) { } return ~this.keys[var2]; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lce;)[F" + descriptor = "(Lcw;)[F" ) - float[] method288(class60 var1) { - return this.field255[this.method287(var1)]; + float[] method302(class60 var1) { + return this.field250[this.method301(var1)]; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("mapType1QuantValues") static int mapType1QuantValues(int var0, int var1) { - int var2; - for (var2 = (int)Math.pow((double)var0, 1.0D / (double)var1) + 1; NPC.method578(var2, var1) > var0; --var2) { - } + int var2 = (int)Math.pow((double)var0, 1.0D / (double)var1) + 1; + + while (true) { + int var4 = var2; + int var5 = var1; + + int var6; + for (var6 = 1; var5 > 1; var5 >>= 1) { + if ((var5 & 1) != 0) { + var6 *= var4; + } + + var4 *= var4; + } - return var2; + int var3; + if (var5 == 1) { + var3 = var4 * var6; + } else { + var3 = var6; + } + + if (var3 <= var0) { + return var2; + } + + --var2; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/VorbisFloor.java b/osrs/src/main/java/VorbisFloor.java index f004abbe6..b343de576 100644 --- a/osrs/src/main/java/VorbisFloor.java +++ b/osrs/src/main/java/VorbisFloor.java @@ -3,104 +3,104 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bo") +@ObfuscatedName("bu") @Implements("VorbisFloor") public class VorbisFloor { - @ObfuscatedName("au") - static final int[] field172; - @ObfuscatedName("ae") + @ObfuscatedName("at") + static final int[] field170; + @ObfuscatedName("ah") @Export("VorbisFloor_decibelStatics") static final float[] VorbisFloor_decibelStatics; + @ObfuscatedName("ar") + int[] field175; @ObfuscatedName("ao") - int[] field176; - @ObfuscatedName("at") @Export("multiplier") int multiplier; + @ObfuscatedName("ab") + int[] field173; + @ObfuscatedName("au") + int[] field176; + @ObfuscatedName("aa") + int[] field172; @ObfuscatedName("ac") int[] field174; - @ObfuscatedName("ai") - int[] field175; - @ObfuscatedName("az") - int[] field178; - @ObfuscatedName("ap") - int[] field177; - @ObfuscatedName("aa") - int[][] field179; + @ObfuscatedName("al") + int[][] field177; static { - field172 = new int[]{256, 128, 86, 64}; + field170 = new int[]{256, 128, 86, 64}; VorbisFloor_decibelStatics = new float[]{1.0649863E-7F, 1.1341951E-7F, 1.2079015E-7F, 1.2863978E-7F, 1.369995E-7F, 1.459025E-7F, 1.5538409E-7F, 1.6548181E-7F, 1.7623574E-7F, 1.8768856E-7F, 1.998856E-7F, 2.128753E-7F, 2.2670913E-7F, 2.4144197E-7F, 2.5713223E-7F, 2.7384212E-7F, 2.9163792E-7F, 3.1059022E-7F, 3.307741E-7F, 3.5226967E-7F, 3.7516213E-7F, 3.995423E-7F, 4.255068E-7F, 4.5315863E-7F, 4.8260745E-7F, 5.1397E-7F, 5.4737063E-7F, 5.829419E-7F, 6.208247E-7F, 6.611694E-7F, 7.041359E-7F, 7.4989464E-7F, 7.98627E-7F, 8.505263E-7F, 9.057983E-7F, 9.646621E-7F, 1.0273513E-6F, 1.0941144E-6F, 1.1652161E-6F, 1.2409384E-6F, 1.3215816E-6F, 1.4074654E-6F, 1.4989305E-6F, 1.5963394E-6F, 1.7000785E-6F, 1.8105592E-6F, 1.9282195E-6F, 2.053526E-6F, 2.1869757E-6F, 2.3290977E-6F, 2.4804558E-6F, 2.6416496E-6F, 2.813319E-6F, 2.9961443E-6F, 3.1908505E-6F, 3.39821E-6F, 3.619045E-6F, 3.8542307E-6F, 4.1047006E-6F, 4.371447E-6F, 4.6555283E-6F, 4.958071E-6F, 5.280274E-6F, 5.623416E-6F, 5.988857E-6F, 6.3780467E-6F, 6.7925284E-6F, 7.2339453E-6F, 7.704048E-6F, 8.2047E-6F, 8.737888E-6F, 9.305725E-6F, 9.910464E-6F, 1.0554501E-5F, 1.1240392E-5F, 1.1970856E-5F, 1.2748789E-5F, 1.3577278E-5F, 1.4459606E-5F, 1.5399271E-5F, 1.6400005E-5F, 1.7465769E-5F, 1.8600793E-5F, 1.9809577E-5F, 2.1096914E-5F, 2.2467912E-5F, 2.3928002E-5F, 2.5482977E-5F, 2.7139005E-5F, 2.890265E-5F, 3.078091E-5F, 3.2781227E-5F, 3.4911533E-5F, 3.718028E-5F, 3.9596467E-5F, 4.2169668E-5F, 4.491009E-5F, 4.7828602E-5F, 5.0936775E-5F, 5.424693E-5F, 5.7772202E-5F, 6.152657E-5F, 6.552491E-5F, 6.9783084E-5F, 7.4317984E-5F, 7.914758E-5F, 8.429104E-5F, 8.976875E-5F, 9.560242E-5F, 1.0181521E-4F, 1.0843174E-4F, 1.1547824E-4F, 1.2298267E-4F, 1.3097477E-4F, 1.3948625E-4F, 1.4855085E-4F, 1.5820454E-4F, 1.6848555E-4F, 1.7943469E-4F, 1.9109536E-4F, 2.0351382E-4F, 2.167393E-4F, 2.3082423E-4F, 2.4582449E-4F, 2.6179955E-4F, 2.7881275E-4F, 2.9693157E-4F, 3.1622787E-4F, 3.3677815E-4F, 3.5866388E-4F, 3.8197188E-4F, 4.0679457E-4F, 4.3323037E-4F, 4.613841E-4F, 4.913675E-4F, 5.2329927E-4F, 5.573062E-4F, 5.935231E-4F, 6.320936E-4F, 6.731706E-4F, 7.16917E-4F, 7.635063E-4F, 8.1312325E-4F, 8.6596457E-4F, 9.2223985E-4F, 9.821722E-4F, 0.0010459992F, 0.0011139743F, 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F, 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F, 0.0019632196F, 0.0020908006F, 0.0022266726F, 0.0023713743F, 0.0025254795F, 0.0026895993F, 0.0028643848F, 0.0030505287F, 0.003248769F, 0.0034598925F, 0.0036847359F, 0.0039241905F, 0.0041792067F, 0.004450795F, 0.004740033F, 0.005048067F, 0.0053761187F, 0.005725489F, 0.0060975635F, 0.0064938175F, 0.0069158226F, 0.0073652514F, 0.007843887F, 0.008353627F, 0.008896492F, 0.009474637F, 0.010090352F, 0.01074608F, 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F, 0.014722068F, 0.015678791F, 0.016697686F, 0.017782796F, 0.018938422F, 0.020169148F, 0.021479854F, 0.022875736F, 0.02436233F, 0.025945531F, 0.027631618F, 0.029427277F, 0.031339627F, 0.03337625F, 0.035545226F, 0.037855156F, 0.0403152F, 0.042935107F, 0.045725275F, 0.048696756F, 0.05186135F, 0.05523159F, 0.05882085F, 0.062643364F, 0.06671428F, 0.07104975F, 0.075666964F, 0.08058423F, 0.08582105F, 0.09139818F, 0.097337745F, 0.1036633F, 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F, 0.14201812F, 0.15124726F, 0.16107617F, 0.1715438F, 0.18269168F, 0.19456401F, 0.20720787F, 0.22067343F, 0.23501402F, 0.25028655F, 0.26655158F, 0.28387362F, 0.3023213F, 0.32196787F, 0.34289113F, 0.36517414F, 0.3889052F, 0.41417846F, 0.44109413F, 0.4697589F, 0.50028646F, 0.53279793F, 0.5674221F, 0.6042964F, 0.64356697F, 0.6853896F, 0.72993004F, 0.777365F, 0.8278826F, 0.88168305F, 0.9389798F, 1.0F}; } VorbisFloor() { - class60 var1 = VorbisSample.field267; - int var2 = var1.method325(16); + class60 var1 = VorbisSample.field264; + int var2 = var1.method335(16); if (var2 != 1) { throw new RuntimeException(); } else { - int var3 = var1.method325(5); + int var3 = var1.method335(5); int var4 = 0; - this.field174 = new int[var3]; + this.field173 = new int[var3]; int var5; int var6; for (var5 = 0; var5 < var3; ++var5) { - var6 = var1.method325(4); - this.field174[var5] = var6; + var6 = var1.method335(4); + this.field173[var5] = var6; if (var6 >= var4) { var4 = var6 + 1; } } - this.field175 = new int[var4]; - this.field178 = new int[var4]; - this.field177 = new int[var4]; - this.field179 = new int[var4][]; + this.field176 = new int[var4]; + this.field172 = new int[var4]; + this.field174 = new int[var4]; + this.field177 = new int[var4][]; int var8; for (var5 = 0; var5 < var4; ++var5) { - this.field175[var5] = var1.method325(3) + 1; - var6 = this.field178[var5] = var1.method325(2); + this.field176[var5] = var1.method335(3) + 1; + var6 = this.field172[var5] = var1.method335(2); if (var6 != 0) { - this.field177[var5] = var1.method325(8); + this.field174[var5] = var1.method335(8); } var6 = 1 << var6; int[] var10 = new int[var6]; - this.field179[var5] = var10; + this.field177[var5] = var10; for (var8 = 0; var8 < var6; ++var8) { - var10[var8] = var1.method325(8) - 1; + var10[var8] = var1.method335(8) - 1; } } - this.multiplier = var1.method325(2) + 1; - var5 = var1.method325(4); + this.multiplier = var1.method335(2) + 1; + var5 = var1.method335(4); var6 = 2; int var7; for (var7 = 0; var7 < var3; ++var7) { - var6 += this.field175[this.field174[var7]]; + var6 += this.field176[this.field173[var7]]; } - this.field176 = new int[var6]; - this.field176[0] = 0; - this.field176[1] = 1 << var5; + this.field175 = new int[var6]; + this.field175[0] = 0; + this.field175[1] = 1 << var5; var6 = 2; for (var7 = 0; var7 < var3; ++var7) { - var8 = this.field174[var7]; + var8 = this.field173[var7]; - for (int var9 = 0; var9 < this.field175[var8]; ++var9) { - this.field176[var6++] = var1.method325(var5); + for (int var9 = 0; var9 < this.field176[var8]; ++var9) { + this.field175[var6++] = var1.method335(var5); } } } } - @ObfuscatedName("au") - int method192(int[] var1, int var2) { + @ObfuscatedName("at") + int method205(int[] var1, int var2) { int var3 = var1[var2]; int var4 = -1; int var5 = Integer.MIN_VALUE; @@ -116,8 +116,8 @@ int method192(int[] var1, int var2) { return var4; } - @ObfuscatedName("ae") - int method193(int[] var1, int var2) { + @ObfuscatedName("ah") + int method206(int[] var1, int var2) { int var3 = var1[var2]; int var4 = -1; int var5 = Integer.MAX_VALUE; @@ -133,8 +133,8 @@ int method193(int[] var1, int var2) { return var4; } - @ObfuscatedName("ao") - int method194(int var1, int var2, int var3, int var4, int var5) { + @ObfuscatedName("ar") + int method207(int var1, int var2, int var3, int var4, int var5) { int var6 = var4 - var2; int var7 = var3 - var1; int var8 = var6 < 0 ? -var6 : var6; @@ -143,8 +143,8 @@ int method194(int var1, int var2, int var3, int var4, int var5) { return var6 < 0 ? var2 - var10 : var10 + var2; } - @ObfuscatedName("at") - void method195(int var1, int var2, int var3, int var4, float[] var5, int var6) { + @ObfuscatedName("ao") + void method208(int var1, int var2, int var3, int var4, float[] var5, int var6) { int var7 = var4 - var2; int var8 = var3 - var1; int var9 = var7 < 0 ? -var7 : var7; @@ -172,48 +172,48 @@ void method195(int var1, int var2, int var3, int var4, float[] var5, int var6) { } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lce;)Lcd;" + descriptor = "(Lcw;)Lct;" ) - class59 method196(class60 var1) { - boolean var2 = var1.method326() != 0; + class59 method209(class60 var1) { + boolean var2 = var1.method336() != 0; if (!var2) { return new class59(this, false, (int[])null, (int[])null, (boolean[])null); } else { class59 var3 = new class59(this, true, (int[])null, (int[])null, (boolean[])null); - int var4 = this.field176.length; - if (var3.field314 == null || var3.field314.length < var4) { - var3.field314 = new int[var4]; - var3.field315 = new int[var4]; - var3.field313 = new boolean[var4]; + int var4 = this.field175.length; + if (var3.field307 == null || var3.field307.length < var4) { + var3.field307 = new int[var4]; + var3.field306 = new int[var4]; + var3.field304 = new boolean[var4]; } int var5; for (var5 = 0; var5 < var4; ++var5) { - var3.field314[var5] = this.field176[var5]; + var3.field307[var5] = this.field175[var5]; } - var5 = field172[this.multiplier - 1]; - int var6 = class16.iLog(var5 - 1); - var3.field315[0] = var1.method325(var6); - var3.field315[1] = var1.method325(var6); + var5 = field170[this.multiplier - 1]; + int var6 = LoginScreenAnimation.iLog(var5 - 1); + var3.field306[0] = var1.method335(var6); + var3.field306[1] = var1.method335(var6); int var7 = 2; - for (int var8 = 0; var8 < this.field174.length; ++var8) { - int var9 = this.field174[var8]; - int var10 = this.field175[var9]; - int var11 = this.field178[var9]; + for (int var8 = 0; var8 < this.field173.length; ++var8) { + int var9 = this.field173[var8]; + int var10 = this.field176[var9]; + int var11 = this.field172[var9]; int var12 = (1 << var11) - 1; int var13 = 0; if (var11 > 0) { - var13 = VorbisSample.field268[this.field177[var9]].method287(var1); + var13 = VorbisSample.field263[this.field174[var9]].method301(var1); } for (int var14 = 0; var14 < var10; ++var14) { - int var15 = this.field179[var9][var13 & var12]; + int var15 = this.field177[var9][var13 & var12]; var13 >>>= var11; - var3.field315[var7++] = var15 >= 0 ? VorbisSample.field268[var15].method287(var1) : 0; + var3.field306[var7++] = var15 >= 0 ? VorbisSample.field263[var15].method301(var1) : 0; } } diff --git a/osrs/src/main/java/VorbisMapping.java b/osrs/src/main/java/VorbisMapping.java index 7b9fcf64b..8fb4b6b81 100644 --- a/osrs/src/main/java/VorbisMapping.java +++ b/osrs/src/main/java/VorbisMapping.java @@ -1,38 +1,38 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("bc") +@ObfuscatedName("br") @Implements("VorbisMapping") public class VorbisMapping { - @ObfuscatedName("au") - int field252; - @ObfuscatedName("ae") - int field251; - @ObfuscatedName("ao") - int[] field253; @ObfuscatedName("at") - int[] field254; + int field247; + @ObfuscatedName("ah") + int field246; + @ObfuscatedName("ar") + int[] field249; + @ObfuscatedName("ao") + int[] field248; VorbisMapping() { - class60 var1 = VorbisSample.field267; - var1.method325(16); - this.field252 = var1.method326() != 0 ? var1.method325(4) + 1 : 1; - if (var1.method326() != 0) { - var1.method325(8); + class60 var1 = VorbisSample.field264; + var1.method335(16); + this.field247 = var1.method336() != 0 ? var1.method335(4) + 1 : 1; + if (var1.method336() != 0) { + var1.method335(8); } - var1.method325(2); - if (this.field252 > 1) { - this.field251 = var1.method325(4); + var1.method335(2); + if (this.field247 > 1) { + this.field246 = var1.method335(4); } - this.field253 = new int[this.field252]; - this.field254 = new int[this.field252]; + this.field249 = new int[this.field247]; + this.field248 = new int[this.field247]; - for (int var2 = 0; var2 < this.field252; ++var2) { - var1.method325(8); - this.field253[var2] = var1.method325(8); - this.field254[var2] = var1.method325(8); + for (int var2 = 0; var2 < this.field247; ++var2) { + var1.method335(8); + this.field249[var2] = var1.method335(8); + this.field248[var2] = var1.method335(8); } } diff --git a/osrs/src/main/java/VorbisSample.java b/osrs/src/main/java/VorbisSample.java index 52703f2e2..2e76c9490 100644 --- a/osrs/src/main/java/VorbisSample.java +++ b/osrs/src/main/java/VorbisSample.java @@ -3,104 +3,104 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cm") +@ObfuscatedName("cv") @Implements("VorbisSample") public class VorbisSample extends Node { - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lce;" + descriptor = "Lcw;" ) - static class60 field267; - @ObfuscatedName("ap") - static int field276; - @ObfuscatedName("aa") - static int field275; - @ObfuscatedName("af") + static class60 field264; + @ObfuscatedName("ac") + static int field271; + @ObfuscatedName("al") + static int field272; + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "[Lcw;" + descriptor = "[Lcf;" ) - static VorbisCodebook[] field268; - @ObfuscatedName("ad") + static VorbisCodebook[] field263; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "[Lbo;" + descriptor = "[Lbu;" ) - static VorbisFloor[] field263; - @ObfuscatedName("aq") + static VorbisFloor[] field262; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "[Lbz;" + descriptor = "[Lbs;" ) - static class46[] field266; - @ObfuscatedName("al") + static class46[] field261; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "[Lbc;" + descriptor = "[Lbr;" ) - static VorbisMapping[] field262; - @ObfuscatedName("an") - static boolean[] field265; - @ObfuscatedName("ar") - static int[] field277; - @ObfuscatedName("ab") - static boolean field264; + static VorbisMapping[] field260; + @ObfuscatedName("as") + static boolean[] field259; @ObfuscatedName("ay") - static float[] field273; - @ObfuscatedName("aj") - static float[] field269; - @ObfuscatedName("av") - static float[] field271; - @ObfuscatedName("aw") - static float[] field272; + static int[] field273; @ObfuscatedName("ak") - static float[] field270; - @ObfuscatedName("bh") - static float[] field274; - @ObfuscatedName("bj") - static int[] field278; - @ObfuscatedName("bk") - static int[] field279; - @ObfuscatedName("au") - byte[][] field283; + static boolean field258; @ObfuscatedName("ae") + static float[] field266; + @ObfuscatedName("an") + static float[] field269; + @ObfuscatedName("ag") + static float[] field268; + @ObfuscatedName("ad") + static float[] field265; + @ObfuscatedName("af") + static float[] field267; + @ObfuscatedName("be") + static float[] field270; + @ObfuscatedName("bd") + static int[] field274; + @ObfuscatedName("bl") + static int[] field275; + @ObfuscatedName("at") + byte[][] field279; + @ObfuscatedName("ah") @Export("sampleRate") int sampleRate; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("sampleCount") int sampleCount; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("start") int start; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("end") int end; - @ObfuscatedName("ai") - boolean field281; - @ObfuscatedName("ag") - float[] field284; + @ObfuscatedName("au") + boolean field277; + @ObfuscatedName("aj") + float[] field280; @ObfuscatedName("am") - int field288; - @ObfuscatedName("ax") - int field291; - @ObfuscatedName("ah") - boolean field280; - @ObfuscatedName("as") - float[] field285; - @ObfuscatedName("bv") + int field284; + @ObfuscatedName("aq") + int field286; + @ObfuscatedName("ai") + boolean field276; + @ObfuscatedName("aw") + float[] field281; + @ObfuscatedName("bi") @Export("samples") byte[] samples; - @ObfuscatedName("bt") - int field293; - @ObfuscatedName("bd") - int field292; + @ObfuscatedName("bv") + int field289; + @ObfuscatedName("bf") + int field288; static { - field267 = new class60(); - field264 = false; + field264 = new class60(); + field258 = false; } VorbisSample(byte[] var1) { this.read(var1); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("read") void read(byte[] var1) { Buffer var2 = new Buffer(var1); @@ -110,11 +110,11 @@ void read(byte[] var1) { this.end = var2.readInt(); if (this.end < 0) { this.end = ~this.end; - this.field281 = true; + this.field277 = true; } int var3 = var2.readInt(); - this.field283 = new byte[var3][]; + this.field279 = new byte[var3][]; for (int var4 = 0; var4 < var3; ++var4) { int var5 = 0; @@ -127,25 +127,25 @@ void read(byte[] var1) { byte[] var7 = new byte[var5]; var2.readBytes(var7, 0, var5); - this.field283[var4] = var7; + this.field279[var4] = var7; } } - @ObfuscatedName("at") - float[] method302(int var1) { + @ObfuscatedName("ao") + float[] method312(int var1) { class60 var2 = new class60(); - var2.method327(this.field283[var1], 0); - this.field285 = new float[field275]; - var2.method326(); - int var3 = var2.method325(class16.iLog(field277.length - 1)); - boolean var4 = field265[var3]; - int var5 = var4 ? field275 : field276; + var2.method337(this.field279[var1], 0); + this.field281 = new float[field272]; + var2.method336(); + int var3 = var2.method335(LoginScreenAnimation.iLog(field273.length - 1)); + boolean var4 = field259[var3]; + int var5 = var4 ? field272 : field271; boolean var6 = false; boolean var7 = false; if (var4) { - var6 = var2.method326() != 0; - var7 = var2.method326() != 0; + var6 = var2.method336() != 0; + var7 = var2.method336() != 0; } int var8 = var5 >> 1; @@ -153,9 +153,9 @@ float[] method302(int var1) { int var10; int var11; if (var4 && !var6) { - var9 = (var5 >> 2) - (field276 >> 2); - var10 = (field276 >> 2) + (var5 >> 2); - var11 = field276 >> 1; + var9 = (var5 >> 2) - (field271 >> 2); + var10 = (field271 >> 2) + (var5 >> 2); + var11 = field271 >> 1; } else { var9 = 0; var10 = var8; @@ -166,45 +166,45 @@ float[] method302(int var1) { int var13; int var14; if (var4 && !var7) { - var12 = var5 - (var5 >> 2) - (field276 >> 2); - var13 = (field276 >> 2) + (var5 - (var5 >> 2)); - var14 = field276 >> 1; + var12 = var5 - (var5 >> 2) - (field271 >> 2); + var13 = (field271 >> 2) + (var5 - (var5 >> 2)); + var14 = field271 >> 1; } else { var12 = var8; var13 = var5; var14 = var5 >> 1; } - VorbisMapping var15 = field262[field277[var3]]; - int var16 = var15.field251; - int var17 = var15.field253[var16]; - class59 var18 = field263[var17].method196(var2); - boolean var19 = !var18.method322(); + VorbisMapping var15 = field260[field273[var3]]; + int var16 = var15.field246; + int var17 = var15.field249[var16]; + class59 var18 = field262[var17].method209(var2); + boolean var19 = !var18.method330(); int var20; - for (var20 = 0; var20 < var15.field252; ++var20) { - class46 var21 = field266[var15.field254[var20]]; - float[] var22 = this.field285; - var21.method229(var22, var5 >> 1, var19, var2); + for (var20 = 0; var20 < var15.field247; ++var20) { + class46 var21 = field261[var15.field248[var20]]; + float[] var22 = this.field281; + var21.method243(var22, var5 >> 1, var19, var2); } - if (var18.method322()) { - var16 = var15.field251; - int var10000 = var15.field253[var16]; - var18.method321(this.field285, var5 >> 1); + if (var18.method330()) { + var16 = var15.field246; + int var10000 = var15.field249[var16]; + var18.method329(this.field281, var5 >> 1); } int var43; int var44; - if (!var18.method322()) { + if (!var18.method330()) { for (var20 = var5 >> 1; var20 < var5; ++var20) { - this.field285[var20] = 0.0F; + this.field281[var20] = 0.0F; } } else { var20 = var5 >> 1; var43 = var5 >> 2; var44 = var5 >> 3; - float[] var23 = this.field285; + float[] var23 = this.field281; int var24; for (var24 = 0; var24 < var20; ++var24) { @@ -215,10 +215,10 @@ float[] method302(int var1) { var23[var24] = -var23[var5 - var24 - 1]; } - float[] var45 = var4 ? field272 : field273; - float[] var25 = var4 ? field270 : field269; - float[] var26 = var4 ? field274 : field271; - int[] var27 = var4 ? field279 : field278; + float[] var45 = var4 ? field265 : field266; + float[] var25 = var4 ? field267 : field269; + float[] var26 = var4 ? field270 : field268; + int[] var27 = var4 ? field275 : field274; int var28; float var29; @@ -249,7 +249,7 @@ float[] method302(int var1) { var23[var28 * 4 + 1] = (var30 - var32) * var33 + (var29 - var31) * var34; } - var28 = class16.iLog(var5 - 1); + var28 = LoginScreenAnimation.iLog(var5 - 1); int var49; int var50; @@ -349,49 +349,49 @@ float[] method302(int var1) { float[] var57; for (var49 = var9; var49 < var10; ++var49) { var30 = (float)Math.sin(((double)(var49 - var9) + 0.5D) / (double)var11 * 0.5D * 3.141592653589793D); - var57 = this.field285; + var57 = this.field281; var57[var49] *= (float)Math.sin(1.5707963267948966D * (double)var30 * (double)var30); } for (var49 = var12; var49 < var13; ++var49) { var30 = (float)Math.sin(((double)(var49 - var12) + 0.5D) / (double)var14 * 0.5D * 3.141592653589793D + 1.5707963267948966D); - var57 = this.field285; + var57 = this.field281; var57[var49] *= (float)Math.sin(1.5707963267948966D * (double)var30 * (double)var30); } } float[] var46 = null; - if (this.field288 > 0) { - var43 = var5 + this.field288 >> 2; + if (this.field284 > 0) { + var43 = var5 + this.field284 >> 2; var46 = new float[var43]; int var47; - if (!this.field280) { - for (var44 = 0; var44 < this.field291; ++var44) { - var47 = var44 + (this.field288 >> 1); - var46[var44] += this.field284[var47]; + if (!this.field276) { + for (var44 = 0; var44 < this.field286; ++var44) { + var47 = var44 + (this.field284 >> 1); + var46[var44] += this.field280[var47]; } } - if (var18.method322()) { + if (var18.method330()) { for (var44 = var9; var44 < var5 >> 1; ++var44) { var47 = var46.length - (var5 >> 1) + var44; - var46[var47] += this.field285[var44]; + var46[var47] += this.field281[var44]; } } } - float[] var48 = this.field284; - this.field284 = this.field285; - this.field285 = var48; - this.field288 = var5; - this.field291 = var13 - (var5 >> 1); - this.field280 = !var18.method322(); + float[] var48 = this.field280; + this.field280 = this.field281; + this.field281 = var48; + this.field284 = var5; + this.field286 = var13 - (var5 >> 1); + this.field276 = !var18.method330(); return var46; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "([I)Lbu;" + descriptor = "([I)Lbt;" ) @Export("toRawSound") RawSound toRawSound(int[] var1) { @@ -399,21 +399,21 @@ RawSound toRawSound(int[] var1) { return null; } else { if (this.samples == null) { - this.field288 = 0; - this.field284 = new float[field275]; + this.field284 = 0; + this.field280 = new float[field272]; this.samples = new byte[this.sampleCount]; - this.field293 = 0; - this.field292 = 0; + this.field289 = 0; + this.field288 = 0; } - for (; this.field292 < this.field283.length; ++this.field292) { + for (; this.field288 < this.field279.length; ++this.field288) { if (var1 != null && var1[0] <= 0) { return null; } - float[] var2 = this.method302(this.field292); + float[] var2 = this.method312(this.field288); if (var2 != null) { - int var3 = this.field293; + int var3 = this.field289; int var4 = var2.length; if (var4 > this.sampleCount - var3) { var4 = this.sampleCount - var3; @@ -429,21 +429,21 @@ RawSound toRawSound(int[] var1) { } if (var1 != null) { - var1[0] -= var3 - this.field293; + var1[0] -= var3 - this.field289; } - this.field293 = var3; + this.field289 = var3; } } - this.field284 = null; + this.field280 = null; byte[] var7 = this.samples; this.samples = null; - return new RawSound(this.sampleRate, var7, this.start, this.end, this.field281); + return new RawSound(this.sampleRate, var7, this.start, this.end, this.field277); } } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("float32Unpack") static float float32Unpack(int var0) { int var1 = var0 & 2097151; @@ -456,12 +456,12 @@ static float float32Unpack(int var0) { return (float)((double)var1 * Math.pow(2.0D, (double)(var3 - 788))); } - @ObfuscatedName("ao") - static void method301(byte[] var0) { - class60 var1 = field267; - var1.method327(var0, 0); - field276 = 1 << var1.method325(4); - field275 = 1 << var1.method325(4); + @ObfuscatedName("ar") + static void method311(byte[] var0) { + class60 var1 = field264; + var1.method337(var0, 0); + field271 = 1 << var1.method335(4); + field272 = 1 << var1.method335(4); int var2; int var3; @@ -469,132 +469,123 @@ static void method301(byte[] var0) { int var5; int var6; for (var2 = 0; var2 < 2; ++var2) { - var3 = var2 != 0 ? field275 : field276; + var3 = var2 != 0 ? field272 : field271; var4 = var3 >> 1; var5 = var3 >> 2; var6 = var3 >> 3; - float[] var19 = new float[var4]; + float[] var13 = new float[var4]; for (int var8 = 0; var8 < var5; ++var8) { - var19[var8 * 2] = (float)Math.cos((double)(var8 * 4) * 3.141592653589793D / (double)var3); - var19[var8 * 2 + 1] = -((float)Math.sin((double)(var8 * 4) * 3.141592653589793D / (double)var3)); + var13[var8 * 2] = (float)Math.cos((double)(var8 * 4) * 3.141592653589793D / (double)var3); + var13[var8 * 2 + 1] = -((float)Math.sin((double)(var8 * 4) * 3.141592653589793D / (double)var3)); } - float[] var20 = new float[var4]; + float[] var14 = new float[var4]; for (int var9 = 0; var9 < var5; ++var9) { - var20[var9 * 2] = (float)Math.cos((double)(var9 * 2 + 1) * 3.141592653589793D / (double)(var3 * 2)); - var20[var9 * 2 + 1] = (float)Math.sin((double)(var9 * 2 + 1) * 3.141592653589793D / (double)(var3 * 2)); + var14[var9 * 2] = (float)Math.cos((double)(var9 * 2 + 1) * 3.141592653589793D / (double)(var3 * 2)); + var14[var9 * 2 + 1] = (float)Math.sin((double)(var9 * 2 + 1) * 3.141592653589793D / (double)(var3 * 2)); } - float[] var21 = new float[var5]; + float[] var15 = new float[var5]; for (int var10 = 0; var10 < var6; ++var10) { - var21[var10 * 2] = (float)Math.cos((double)(var10 * 4 + 2) * 3.141592653589793D / (double)var3); - var21[var10 * 2 + 1] = -((float)Math.sin((double)(var10 * 4 + 2) * 3.141592653589793D / (double)var3)); + var15[var10 * 2] = (float)Math.cos((double)(var10 * 4 + 2) * 3.141592653589793D / (double)var3); + var15[var10 * 2 + 1] = -((float)Math.sin((double)(var10 * 4 + 2) * 3.141592653589793D / (double)var3)); } - int[] var22 = new int[var6]; - int var11 = class16.iLog(var6 - 1); + int[] var16 = new int[var6]; + int var11 = LoginScreenAnimation.iLog(var6 - 1); for (int var12 = 0; var12 < var6; ++var12) { - int var16 = var12; - int var17 = var11; - - int var18; - for (var18 = 0; var17 > 0; --var17) { - var18 = var18 << 1 | var16 & 1; - var16 >>>= 1; - } - - var22[var12] = var18; + var16[var12] = class361.method1902(var12, var11); } if (var2 != 0) { - field272 = var19; - field270 = var20; - field274 = var21; - field279 = var22; + field265 = var13; + field267 = var14; + field270 = var15; + field275 = var16; } else { - field273 = var19; - field269 = var20; - field271 = var21; - field278 = var22; + field266 = var13; + field269 = var14; + field268 = var15; + field274 = var16; } } - var2 = var1.method325(8) + 1; - field268 = new VorbisCodebook[var2]; + var2 = var1.method335(8) + 1; + field263 = new VorbisCodebook[var2]; for (var3 = 0; var3 < var2; ++var3) { - field268[var3] = new VorbisCodebook(); + field263[var3] = new VorbisCodebook(); } - var3 = var1.method325(6) + 1; + var3 = var1.method335(6) + 1; for (var4 = 0; var4 < var3; ++var4) { - var1.method325(16); + var1.method335(16); } - var3 = var1.method325(6) + 1; - field263 = new VorbisFloor[var3]; + var3 = var1.method335(6) + 1; + field262 = new VorbisFloor[var3]; for (var4 = 0; var4 < var3; ++var4) { - field263[var4] = new VorbisFloor(); + field262[var4] = new VorbisFloor(); } - var4 = var1.method325(6) + 1; - field266 = new class46[var4]; + var4 = var1.method335(6) + 1; + field261 = new class46[var4]; for (var5 = 0; var5 < var4; ++var5) { - field266[var5] = new class46(); + field261[var5] = new class46(); } - var5 = var1.method325(6) + 1; - field262 = new VorbisMapping[var5]; + var5 = var1.method335(6) + 1; + field260 = new VorbisMapping[var5]; for (var6 = 0; var6 < var5; ++var6) { - field262[var6] = new VorbisMapping(); + field260[var6] = new VorbisMapping(); } - var6 = var1.method325(6) + 1; - field265 = new boolean[var6]; - field277 = new int[var6]; + var6 = var1.method335(6) + 1; + field259 = new boolean[var6]; + field273 = new int[var6]; for (int var7 = 0; var7 < var6; ++var7) { - field265[var7] = var1.method326() != 0; - var1.method325(16); - var1.method325(16); - field277[var7] = var1.method325(8); + field259[var7] = var1.method336() != 0; + var1.method335(16); + var1.method335(16); + field273[var7] = var1.method335(8); } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lnu;)Z" + descriptor = "(Lol;)Z" ) - static boolean method303(AbstractArchive var0) { - if (!field264) { + static boolean method313(AbstractArchive var0) { + if (!field258) { byte[] var1 = var0.takeFile(0, 0); if (var1 == null) { return false; } - method301(var1); - field264 = true; + method311(var1); + field258 = true; } return true; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lnu;II)Lcm;" + descriptor = "(Lol;II)Lcv;" ) @Export("readMusicSample") static VorbisSample readMusicSample(AbstractArchive var0, int var1, int var2) { - if (!method303(var0)) { + if (!method313(var0)) { var0.tryLoadFile(var1, var2); return null; } else { diff --git a/osrs/src/main/java/WallDecoration.java b/osrs/src/main/java/WallDecoration.java index f43916f5f..b2b822385 100644 --- a/osrs/src/main/java/WallDecoration.java +++ b/osrs/src/main/java/WallDecoration.java @@ -3,52 +3,46 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jw") +@ObfuscatedName("lj") @Implements("WallDecoration") public final class WallDecoration { - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "[Ltd;" - ) - @Export("JagexCache_idxFiles") - public static BufferedFile[] JagexCache_idxFiles; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("z") int z; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("x") int x; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("y") int y; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("orientation") int orientation; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("orientation2") int orientation2; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("xOffset") int xOffset; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("yOffset") int yOffset; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable1") public Renderable renderable1; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lik;" + descriptor = "Lkt;" ) @Export("renderable2") public Renderable renderable2; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("tag") public long tag; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("flags") int flags; @@ -56,4 +50,14 @@ public final class WallDecoration { this.tag = 0L; this.flags = 0; } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Luk;", + garbageValue = "-1385996560" + ) + @Export("FillMode_values") + public static FillMode[] FillMode_values() { + return new FillMode[]{FillMode.SOLID, FillMode.field4258, FillMode.field4259}; + } } \ No newline at end of file diff --git a/osrs/src/main/java/Widget.java b/osrs/src/main/java/Widget.java index 8a05663de..5dd8d8269 100644 --- a/osrs/src/main/java/Widget.java +++ b/osrs/src/main/java/Widget.java @@ -7,494 +7,456 @@ import java.util.HashMap; import java.util.Iterator; -@ObfuscatedName("mi") +@ObfuscatedName("nn") @Implements("Widget") public class Widget extends Node { - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("Widget_cachedSprites") - static EvictingDualNodeHashTable Widget_cachedSprites; - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("Widget_cachedModels") - static EvictingDualNodeHashTable Widget_cachedModels; - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("Widget_cachedFonts") - static EvictingDualNodeHashTable Widget_cachedFonts; - @ObfuscatedName("bm") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("Widget_cachedSpriteMasks") - static EvictingDualNodeHashTable Widget_cachedSpriteMasks; - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "Lqv;" - ) - static class423 field2950; - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "Lqv;" - ) - static class423 field2951; - @ObfuscatedName("ba") - public static boolean field2945; - @ObfuscatedName("bl") + @ObfuscatedName("af") + public static boolean field2976; + @ObfuscatedName("be") @Export("isIf3") public boolean isIf3; - @ObfuscatedName("bp") + @ObfuscatedName("bd") @Export("id") public int id; - @ObfuscatedName("bu") + @ObfuscatedName("bl") @Export("childIndex") public int childIndex; - @ObfuscatedName("bo") + @ObfuscatedName("bi") + String field2981; + @ObfuscatedName("bv") @Export("type") public int type; - @ObfuscatedName("bb") + @ObfuscatedName("bf") @Export("buttonType") public int buttonType; - @ObfuscatedName("br") + @ObfuscatedName("bg") @Export("contentType") public int contentType; - @ObfuscatedName("be") + @ObfuscatedName("ba") @Export("xAlignment") public int xAlignment; - @ObfuscatedName("bi") + @ObfuscatedName("bm") @Export("yAlignment") public int yAlignment; - @ObfuscatedName("bz") + @ObfuscatedName("bp") @Export("widthAlignment") public int widthAlignment; - @ObfuscatedName("bx") + @ObfuscatedName("bw") @Export("heightAlignment") public int heightAlignment; - @ObfuscatedName("bn") + @ObfuscatedName("bj") @Export("rawX") public int rawX; - @ObfuscatedName("bw") + @ObfuscatedName("bn") @Export("rawY") public int rawY; - @ObfuscatedName("bc") + @ObfuscatedName("bo") @Export("rawWidth") public int rawWidth; - @ObfuscatedName("bg") + @ObfuscatedName("bt") @Export("rawHeight") public int rawHeight; - @ObfuscatedName("cw") + @ObfuscatedName("bu") @Export("x") public int x; - @ObfuscatedName("cf") + @ObfuscatedName("by") @Export("y") public int y; - @ObfuscatedName("cm") + @ObfuscatedName("bh") @Export("width") public int width; - @ObfuscatedName("cn") + @ObfuscatedName("bz") @Export("height") public int height; - @ObfuscatedName("cs") + @ObfuscatedName("bc") public int field3006; - @ObfuscatedName("cx") - public int field3011; - @ObfuscatedName("cr") + @ObfuscatedName("bs") + public int field3020; + @ObfuscatedName("bx") @Export("parentId") public int parentId; - @ObfuscatedName("cd") + @ObfuscatedName("bb") @Export("isHidden") public boolean isHidden; - @ObfuscatedName("ce") + @ObfuscatedName("bk") @Export("scrollX") public int scrollX; - @ObfuscatedName("cq") + @ObfuscatedName("br") @Export("scrollY") public int scrollY; - @ObfuscatedName("cp") + @ObfuscatedName("bq") @Export("scrollWidth") public int scrollWidth; - @ObfuscatedName("cv") + @ObfuscatedName("cf") @Export("scrollHeight") public int scrollHeight; - @ObfuscatedName("co") + @ObfuscatedName("cg") @Export("color") public int color; - @ObfuscatedName("cl") + @ObfuscatedName("cv") @Export("color2") public int color2; - @ObfuscatedName("cu") + @ObfuscatedName("cx") @Export("mouseOverColor") public int mouseOverColor; - @ObfuscatedName("ch") + @ObfuscatedName("cp") @Export("mouseOverColor2") public int mouseOverColor2; - @ObfuscatedName("ci") + @ObfuscatedName("ce") @Export("fill") public boolean fill; - @ObfuscatedName("ca") + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "Lum;" + descriptor = "Luk;" ) @Export("fillMode") public FillMode fillMode; - @ObfuscatedName("cb") + @ObfuscatedName("ct") @Export("transparencyTop") public int transparencyTop; - @ObfuscatedName("cg") + @ObfuscatedName("cw") @Export("transparencyBot") public int transparencyBot; - @ObfuscatedName("cj") + @ObfuscatedName("cq") @Export("lineWid") public int lineWid; - @ObfuscatedName("cz") - public boolean field2962; - @ObfuscatedName("ct") + @ObfuscatedName("cl") + public boolean field2989; + @ObfuscatedName("cs") @Export("spriteId2") public int spriteId2; - @ObfuscatedName("cy") + @ObfuscatedName("co") @Export("spriteId") public int spriteId; - @ObfuscatedName("ck") - public String field3091; - @ObfuscatedName("cc") + @ObfuscatedName("cm") + public String field3117; + @ObfuscatedName("cn") @Export("spriteAngle") public int spriteAngle; - @ObfuscatedName("dh") + @ObfuscatedName("cr") @Export("spriteTiling") public boolean spriteTiling; - @ObfuscatedName("dj") + @ObfuscatedName("cj") @Export("outline") public int outline; - @ObfuscatedName("di") + @ObfuscatedName("ca") @Export("spriteShadow") public int spriteShadow; - @ObfuscatedName("du") + @ObfuscatedName("cc") @Export("spriteFlipV") public boolean spriteFlipV; - @ObfuscatedName("dn") + @ObfuscatedName("cu") @Export("spriteFlipH") public boolean spriteFlipH; - @ObfuscatedName("dg") + @ObfuscatedName("ch") @Export("modelType") public int modelType; - @ObfuscatedName("dd") + @ObfuscatedName("cb") @Export("modelId") public int modelId; - @ObfuscatedName("da") + @ObfuscatedName("cz") @Export("modelType2") int modelType2; - @ObfuscatedName("ds") + @ObfuscatedName("cy") @Export("modelId2") int modelId2; - @ObfuscatedName("dy") + @ObfuscatedName("ck") @Export("sequenceId") public int sequenceId; - @ObfuscatedName("dt") + @ObfuscatedName("cd") @Export("sequenceId2") public int sequenceId2; - @ObfuscatedName("dl") + @ObfuscatedName("dt") @Export("modelOffsetX") public int modelOffsetX; - @ObfuscatedName("dk") + @ObfuscatedName("di") @Export("modelOffsetY") public int modelOffsetY; - @ObfuscatedName("df") + @ObfuscatedName("dk") @Export("modelAngleX") public int modelAngleX; - @ObfuscatedName("dz") + @ObfuscatedName("dd") @Export("modelAngleY") public int modelAngleY; - @ObfuscatedName("dw") + @ObfuscatedName("dx") @Export("modelAngleZ") public int modelAngleZ; - @ObfuscatedName("dv") + @ObfuscatedName("dh") @Export("modelZoom") public int modelZoom; - @ObfuscatedName("dr") + @ObfuscatedName("du") @Export("modelRotation") public int modelRotation; - @ObfuscatedName("do") + @ObfuscatedName("dg") @Export("rotationKey") public int rotationKey; - @ObfuscatedName("db") + @ObfuscatedName("dc") @ObfuscatedSignature( - descriptor = "Lmt;" + descriptor = "Lnb;" ) - public PlayerComposition field3101; - @ObfuscatedName("dp") + public PlayerComposition field3125; + @ObfuscatedName("do") @Export("modelOrthog") public boolean modelOrthog; - @ObfuscatedName("dm") + @ObfuscatedName("db") @Export("modelTransparency") public boolean modelTransparency; - @ObfuscatedName("dx") + @ObfuscatedName("dm") @Export("itemQuantityMode") public int itemQuantityMode; - @ObfuscatedName("dq") + @ObfuscatedName("dr") @Export("fontId") public int fontId; - @ObfuscatedName("de") + @ObfuscatedName("ds") @Export("text") public String text; - @ObfuscatedName("dc") + @ObfuscatedName("da") @Export("text2") public String text2; - @ObfuscatedName("ed") + @ObfuscatedName("dw") @Export("textLineHeight") public int textLineHeight; - @ObfuscatedName("eh") + @ObfuscatedName("dp") @Export("textXAlignment") public int textXAlignment; - @ObfuscatedName("ey") + @ObfuscatedName("df") @Export("textYAlignment") public int textYAlignment; - @ObfuscatedName("ee") + @ObfuscatedName("dv") @Export("textShadowed") public boolean textShadowed; - @ObfuscatedName("eq") + @ObfuscatedName("dz") @ObfuscatedSignature( - descriptor = "Lgf;" + descriptor = "Lic;" ) - class170 field2952; - @ObfuscatedName("ej") - int field2955; - @ObfuscatedName("ea") - HashMap field2956; - @ObfuscatedName("er") - HashMap field2957; - @ObfuscatedName("ez") + class208 field2977; + @ObfuscatedName("dl") + int field2980; + @ObfuscatedName("de") + HashMap field2982; + @ObfuscatedName("dn") + HashMap field2983; + @ObfuscatedName("dj") @ObfuscatedSignature( - descriptor = "Lmp;" + descriptor = "Lnq;" ) - class327 field2958; - @ObfuscatedName("et") + class339 field2984; + @ObfuscatedName("dy") @Export("flags") public int flags; - @ObfuscatedName("en") - public boolean field2969; - @ObfuscatedName("eb") - public byte[][] field2977; - @ObfuscatedName("ei") - public byte[][] field2978; + @ObfuscatedName("ec") + public boolean field2995; + @ObfuscatedName("ew") + public byte[][] field3003; + @ObfuscatedName("ex") + public byte[][] field3004; + @ObfuscatedName("ev") + public int[] field3073; + @ObfuscatedName("ek") + public int[] field3072; @ObfuscatedName("es") - public int[] field3047; - @ObfuscatedName("el") - public int[] field3046; - @ObfuscatedName("eu") @Export("dataText") public String dataText; - @ObfuscatedName("eg") + @ObfuscatedName("ea") @Export("actions") public String[] actions; - @ObfuscatedName("ex") + @ObfuscatedName("en") @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("parent") public Widget parent; - @ObfuscatedName("eo") + @ObfuscatedName("eh") @Export("dragZoneSize") public int dragZoneSize; - @ObfuscatedName("ew") + @ObfuscatedName("ei") @Export("dragThreshold") public int dragThreshold; - @ObfuscatedName("ep") + @ObfuscatedName("et") @Export("isScrollBar") public boolean isScrollBar; - @ObfuscatedName("fh") + @ObfuscatedName("er") @Export("spellActionName") public String spellActionName; - @ObfuscatedName("ft") + @ObfuscatedName("ez") @Export("hasListener") public boolean hasListener; - @ObfuscatedName("fs") + @ObfuscatedName("eu") @Export("onLoad") public Object[] onLoad; - @ObfuscatedName("fl") + @ObfuscatedName("eg") @Export("onClick") public Object[] onClick; - @ObfuscatedName("fe") + @ObfuscatedName("ey") @Export("onClickRepeat") public Object[] onClickRepeat; - @ObfuscatedName("fd") + @ObfuscatedName("eb") @Export("onRelease") public Object[] onRelease; - @ObfuscatedName("fj") + @ObfuscatedName("ed") @Export("onHold") public Object[] onHold; - @ObfuscatedName("fv") + @ObfuscatedName("eq") @Export("onMouseOver") public Object[] onMouseOver; - @ObfuscatedName("fb") + @ObfuscatedName("ee") @Export("onMouseRepeat") public Object[] onMouseRepeat; - @ObfuscatedName("fr") + @ObfuscatedName("ej") @Export("onMouseLeave") public Object[] onMouseLeave; - @ObfuscatedName("fq") + @ObfuscatedName("ep") @Export("onDrag") public Object[] onDrag; - @ObfuscatedName("fp") + @ObfuscatedName("fd") @Export("onDragComplete") public Object[] onDragComplete; - @ObfuscatedName("fg") + @ObfuscatedName("fm") @Export("onTargetEnter") public Object[] onTargetEnter; - @ObfuscatedName("fo") + @ObfuscatedName("fa") @Export("onTargetLeave") public Object[] onTargetLeave; - @ObfuscatedName("fz") + @ObfuscatedName("fq") @Export("onVarTransmit") public Object[] onVarTransmit; - @ObfuscatedName("fu") + @ObfuscatedName("fe") @Export("varTransmitTriggers") public int[] varTransmitTriggers; - @ObfuscatedName("fn") + @ObfuscatedName("ff") @Export("onInvTransmit") public Object[] onInvTransmit; - @ObfuscatedName("fx") + @ObfuscatedName("fb") @Export("invTransmitTriggers") public int[] invTransmitTriggers; - @ObfuscatedName("ff") + @ObfuscatedName("fr") @Export("onStatTransmit") public Object[] onStatTransmit; - @ObfuscatedName("fc") + @ObfuscatedName("fi") @Export("statTransmitTriggers") public int[] statTransmitTriggers; - @ObfuscatedName("fk") + @ObfuscatedName("fo") @Export("onTimer") public Object[] onTimer; - @ObfuscatedName("fm") + @ObfuscatedName("fw") @Export("onOp") public Object[] onOp; - @ObfuscatedName("fy") - public Object[] field3076; - @ObfuscatedName("fw") + @ObfuscatedName("fj") + public Object[] field3098; + @ObfuscatedName("fh") @Export("onScroll") public Object[] onScroll; - @ObfuscatedName("fi") + @ObfuscatedName("fg") @Export("onChatTransmit") public Object[] onChatTransmit; - @ObfuscatedName("fa") + @ObfuscatedName("fl") @Export("onKey") public Object[] onKey; - @ObfuscatedName("gu") - public Object[] field3089; - @ObfuscatedName("gc") - public Object[] field3079; - @ObfuscatedName("gd") + @ObfuscatedName("fs") + public Object[] field3107; + @ObfuscatedName("ft") + public Object[] field3108; + @ObfuscatedName("fv") @Export("onFriendTransmit") public Object[] onFriendTransmit; - @ObfuscatedName("gm") + @ObfuscatedName("fp") @Export("onClanTransmit") public Object[] onClanTransmit; - @ObfuscatedName("gg") - public Object[] field3082; - @ObfuscatedName("gw") - public Object[] field3090; - @ObfuscatedName("gi") + @ObfuscatedName("fk") + public Object[] field3099; + @ObfuscatedName("fz") + public Object[] field3114; + @ObfuscatedName("fx") @Export("onMiscTransmit") public Object[] onMiscTransmit; - @ObfuscatedName("go") + @ObfuscatedName("fu") @Export("onDialogAbort") public Object[] onDialogAbort; - @ObfuscatedName("gl") + @ObfuscatedName("fy") @Export("onSubChange") public Object[] onSubChange; - @ObfuscatedName("gb") + @ObfuscatedName("fn") @Export("onResize") public Object[] onResize; - @ObfuscatedName("gj") + @ObfuscatedName("fc") @Export("onStockTransmit") public Object[] onStockTransmit; - @ObfuscatedName("ge") - public Object[] field3081; - @ObfuscatedName("gs") - public Object[] field3088; - @ObfuscatedName("gv") + @ObfuscatedName("gm") + public Object[] field3115; + @ObfuscatedName("gw") + public Object[] field3116; + @ObfuscatedName("gl") @Export("cs1Instructions") public int[][] cs1Instructions; - @ObfuscatedName("gf") + @ObfuscatedName("ge") @Export("cs1Comparisons") public int[] cs1Comparisons; - @ObfuscatedName("gh") + @ObfuscatedName("gs") @Export("cs1ComparisonValues") public int[] cs1ComparisonValues; - @ObfuscatedName("gy") + @ObfuscatedName("gi") @Export("mouseOverRedirect") public int mouseOverRedirect; @ObfuscatedName("gp") - public String field3097; - @ObfuscatedName("gk") + public String field3122; + @ObfuscatedName("gq") @Export("buttonText") public String buttonText; - @ObfuscatedName("ga") + @ObfuscatedName("gn") @Export("itemIds") public int[] itemIds; - @ObfuscatedName("gx") - public int[] field3054; - @ObfuscatedName("gq") + @ObfuscatedName("gb") + public int[] field3077; + @ObfuscatedName("gu") @Export("itemId") public int itemId; - @ObfuscatedName("gt") + @ObfuscatedName("ga") @Export("itemQuantity") public int itemQuantity; - @ObfuscatedName("gr") + @ObfuscatedName("gf") @Export("modelFrame") public int modelFrame; - @ObfuscatedName("gz") + @ObfuscatedName("gx") @Export("modelFrameCycle") public int modelFrameCycle; - @ObfuscatedName("gn") + @ObfuscatedName("gz") @ObfuscatedSignature( - descriptor = "[Lmi;" + descriptor = "[Lnn;" ) @Export("children") public Widget[] children; - @ObfuscatedName("ht") - public boolean field2975; - @ObfuscatedName("ho") - public boolean field2974; - @ObfuscatedName("hj") - public int field3043; - @ObfuscatedName("hh") - public int field3041; - @ObfuscatedName("hi") - public int field3042; - @ObfuscatedName("hd") - public int field3040; - @ObfuscatedName("hk") + @ObfuscatedName("gt") + public boolean field3001; + @ObfuscatedName("gg") + public boolean field2999; + @ObfuscatedName("gj") + public int field3065; + @ObfuscatedName("gy") + public int field3071; + @ObfuscatedName("gv") + public int field3069; + @ObfuscatedName("gc") + public int field3062; + @ObfuscatedName("gr") @Export("rootIndex") public int rootIndex; - @ObfuscatedName("hz") + @ObfuscatedName("gk") @Export("cycle") public int cycle; - @ObfuscatedName("hl") - public int[] field3055; - @ObfuscatedName("hg") + @ObfuscatedName("go") + public int[] field3080; + @ObfuscatedName("gh") @Export("noClickThrough") public boolean noClickThrough; - @ObfuscatedName("hu") + @ObfuscatedName("gd") @Export("noScrollThrough") public boolean noScrollThrough; - @ObfuscatedName("he") + @ObfuscatedName("hb") @Export("prioritizeMenuEntry") public boolean prioritizeMenuEntry; static { - Widget_cachedSprites = new EvictingDualNodeHashTable(200); - Widget_cachedModels = new EvictingDualNodeHashTable(50); - Widget_cachedFonts = new EvictingDualNodeHashTable(20); - Widget_cachedSpriteMasks = new EvictingDualNodeHashTable(8); - field2950 = new class423(10, class421.field3766); - field2951 = new class423(10, class421.field3766); - field2945 = false; + field2976 = false; } public Widget() { @@ -516,7 +478,7 @@ public Widget() { this.width = 0; this.height = 0; this.field3006 = 1; - this.field3011 = 1; + this.field3020 = 1; this.parentId = -1; this.isHidden = false; this.scrollX = 0; @@ -532,7 +494,7 @@ public Widget() { this.transparencyTop = 0; this.transparencyBot = 0; this.lineWid = 1; - this.field2962 = false; + this.field2989 = false; this.spriteId2 = -1; this.spriteId = -1; this.spriteAngle = 0; @@ -563,9 +525,9 @@ public Widget() { this.textXAlignment = 0; this.textYAlignment = 0; this.textShadowed = false; - this.field2955 = -1; + this.field2980 = -1; this.flags = 0; - this.field2969 = false; + this.field2995 = false; this.dataText = ""; this.parent = null; this.dragZoneSize = 0; @@ -574,18 +536,18 @@ public Widget() { this.spellActionName = ""; this.hasListener = false; this.mouseOverRedirect = -1; - this.field3097 = ""; + this.field3122 = ""; this.buttonText = "Ok"; this.itemId = -1; this.itemQuantity = 0; this.modelFrame = 0; this.modelFrameCycle = 0; - this.field2975 = false; - this.field2974 = false; - this.field3043 = -1; - this.field3041 = 0; - this.field3042 = 0; - this.field3040 = 0; + this.field3001 = false; + this.field2999 = false; + this.field3065 = -1; + this.field3071 = 0; + this.field3069 = 0; + this.field3062 = 0; this.rootIndex = -1; this.cycle = -1; this.noClickThrough = false; @@ -593,10 +555,10 @@ public Widget() { this.prioritizeMenuEntry = false; } - @ObfuscatedName("ac") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-122" + descriptor = "(Luj;I)V", + garbageValue = "1076912273" ) @Export("decodeLegacy") void decodeLegacy(Buffer var1) { @@ -731,7 +693,7 @@ void decodeLegacy(Buffer var1) { if (this.buttonType == 2) { this.spellActionName = var1.readStringCp1252NullTerminated(); - this.field3097 = var1.readStringCp1252NullTerminated(); + this.field3122 = var1.readStringCp1252NullTerminated(); var4 = var1.readUnsignedShort() & 63; this.flags |= var4 << 11; } @@ -767,10 +729,10 @@ void decodeLegacy(Buffer var1) { } - @ObfuscatedName("ai") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-1617832353" + descriptor = "(Luj;I)V", + garbageValue = "167197032" ) @Export("decode") void decode(Buffer var1) { @@ -868,7 +830,7 @@ void decode(Buffer var1) { if (this.type == 9) { this.lineWid = var1.readUnsignedByte(); this.color = var1.readInt(); - this.field2962 = var1.readUnsignedByte() == 1; + this.field2989 = var1.readUnsignedByte() == 1; } this.flags = var1.readMedium(); @@ -909,10 +871,19 @@ void decode(Buffer var1) { this.statTransmitTriggers = this.readListenerTriggers(var1); } - @ObfuscatedName("az") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;I)[Ljava/lang/Object;", - garbageValue = "-631733803" + descriptor = "(Luj;I)V", + garbageValue = "361710485" + ) + void method1841(Buffer var1) { + this.field2981 = var1.readStringCp1252NullTerminated(); + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Luj;I)[Ljava/lang/Object;", + garbageValue = "-1864963770" ) @Export("readListener") Object[] readListener(Buffer var1) { @@ -936,10 +907,10 @@ Object[] readListener(Buffer var1) { } } - @ObfuscatedName("ap") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ltm;I)[I", - garbageValue = "132481992" + descriptor = "(Luj;I)[I", + garbageValue = "1916026116" ) @Export("readListenerTriggers") int[] readListenerTriggers(Buffer var1) { @@ -957,107 +928,107 @@ int[] readListenerTriggers(Buffer var1) { } } - @ObfuscatedName("aa") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(ZLev;I)Lui;", - garbageValue = "1752459087" + descriptor = "(Lmr;ZLel;I)Luz;", + garbageValue = "-1408001366" ) @Export("getSprite") - public SpritePixels getSprite(boolean var1, UrlRequester var2) { - field2945 = false; - if (this.field3091 != null) { - SpritePixels var3 = this.method1818(var2); - if (var3 != null) { - return var3; + public SpritePixels getSprite(WidgetDefinition var1, boolean var2, UrlRequester var3) { + field2976 = false; + if (this.field3117 != null) { + SpritePixels var4 = this.method1845(var1, var3); + if (var4 != null) { + return var4; } } - int var7; - if (var1) { - var7 = this.spriteId; + int var8; + if (var2) { + var8 = this.spriteId; } else { - var7 = this.spriteId2; + var8 = this.spriteId2; } - if (var7 == -1) { + if (var8 == -1) { return null; } else { - long var4 = ((long)this.spriteShadow << 40) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((long)this.outline << 36) + (long)var7 + ((this.spriteFlipH ? 1L : 0L) << 39); - SpritePixels var6 = (SpritePixels)Widget_cachedSprites.get(var4); - if (var6 != null) { - return var6; + long var5 = ((long)this.spriteShadow << 40) + ((this.spriteFlipH ? 1L : 0L) << 39) + ((this.spriteFlipV ? 1L : 0L) << 38) + ((long)this.outline << 36) + (long)var8; + SpritePixels var7 = (SpritePixels)var1.Widget_cachedSprites.get(var5); + if (var7 != null) { + return var7; } else { - var6 = Tiles.SpriteBuffer_getSprite(Language.Widget_spritesArchive, var7, 0); - if (var6 == null) { - field2945 = true; + var7 = IgnoreList.SpriteBuffer_getSprite(var1.field2915, var8, 0); + if (var7 == null) { + field2976 = true; return null; } else { - this.method1821(var6); - Widget_cachedSprites.put(var6, var4); - return var6; + this.method1848(var7); + var1.Widget_cachedSprites.put(var7, var5); + return var7; } } } } - @ObfuscatedName("af") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lev;B)Lui;", - garbageValue = "24" + descriptor = "(Lmr;Lel;I)Luz;", + garbageValue = "243499919" ) - SpritePixels method1818(UrlRequester var1) { - if (!this.method1820()) { - return this.method1819(var1); + SpritePixels method1845(WidgetDefinition var1, UrlRequester var2) { + if (!this.method1847()) { + return this.method1846(var1, var2); } else { - String var2 = this.field3091 + (this.spriteFlipV ? 1 : 0) + (this.spriteFlipH ? 1 : 0) + this.outline + this.spriteShadow; - SpritePixels var3 = (SpritePixels)field2951.method2180(var2); - if (var3 == null) { - SpritePixels var4 = this.method1819(var1); - if (var4 != null) { - var3 = var4.method2657(); - this.method1821(var3); - field2951.method2181(var2, var3); + String var3 = this.field3117 + (this.spriteFlipV ? 1 : 0) + (this.spriteFlipH ? 1 : 0) + this.outline + this.spriteShadow; + SpritePixels var4 = (SpritePixels)var1.field2918.method2196(var3); + if (var4 == null) { + SpritePixels var5 = this.method1846(var1, var2); + if (var5 != null) { + var4 = var5.method2674(); + this.method1848(var4); + var1.field2918.method2197(var3, var4); } } - return var3; + return var4; } } - @ObfuscatedName("ad") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Lev;I)Lui;", - garbageValue = "-853434695" + descriptor = "(Lmr;Lel;I)Luz;", + garbageValue = "769156512" ) - SpritePixels method1819(UrlRequester var1) { - if (this.field3091 != null && var1 != null) { - class326 var2 = (class326)field2950.method2180(this.field3091); - if (var2 == null) { - var2 = new class326(this.field3091, var1); - field2950.method2181(this.field3091, var2); + SpritePixels method1846(WidgetDefinition var1, UrlRequester var2) { + if (this.field3117 != null && var2 != null) { + class338 var3 = (class338)var1.field2919.method2196(this.field3117); + if (var3 == null) { + var3 = new class338(this.field3117, var2); + var1.field2919.method2197(this.field3117, var3); } - return var2.method1715(); + return var3.method1742(); } else { return null; } } - @ObfuscatedName("aq") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-32" + descriptor = "(I)Z", + garbageValue = "623493870" ) - boolean method1820() { + boolean method1847() { return this.spriteFlipV || this.spriteFlipH || this.outline != 0 || this.spriteShadow != 0; } - @ObfuscatedName("al") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Lui;B)V", - garbageValue = "-60" + descriptor = "(Luz;I)V", + garbageValue = "-891883391" ) - void method1821(SpritePixels var1) { + void method1848(SpritePixels var1) { if (this.spriteFlipV) { var1.flipVertically(); } @@ -1084,180 +1055,197 @@ void method1821(SpritePixels var1) { } - @ObfuscatedName("an") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(I)Lpi;", - garbageValue = "1973823248" + descriptor = "(Lmr;I)Lpf;", + garbageValue = "1649883355" ) @Export("getFont") - public Font getFont() { - field2945 = false; + public Font getFont(WidgetDefinition var1) { + field2976 = false; if (this.fontId == -1) { return null; } else { - Font var1 = (Font)Widget_cachedFonts.get((long)this.fontId); - if (var1 != null) { - return var1; + Font var2 = (Font)var1.Widget_cachedFonts.get((long)this.fontId); + if (var2 != null) { + return var2; } else { - var1 = LoginPacket.method1613(Language.Widget_spritesArchive, class155.Widget_fontsArchive, this.fontId, 0); - if (var1 != null) { - Widget_cachedFonts.put(var1, (long)this.fontId); + AbstractArchive var4 = var1.field2915; + AbstractArchive var5 = var1.field2913; + int var6 = this.fontId; + byte[] var8 = var4.takeFile(var6, 0); + boolean var7; + if (var8 == null) { + var7 = false; } else { - field2945 = true; + class162.SpriteBuffer_decode(var8); + var7 = true; } - return var1; + Font var3; + if (!var7) { + var3 = null; + } else { + var3 = WorldMapArea.method1229(var5.takeFile(var6, 0)); + } + + if (var3 != null) { + var1.Widget_cachedFonts.put(var3, (long)this.fontId); + } else { + field2976 = true; + } + + return var3; } } } - @ObfuscatedName("ar") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(Lib;IZLmt;Lhw;Lhq;B)Ljr;", - garbageValue = "-43" + descriptor = "(Lmr;Lhx;IZLnb;Lhw;Lhf;B)Lka;", + garbageValue = "52" ) @Export("getModel") - public Model getModel(SequenceDefinition var1, int var2, boolean var3, PlayerComposition var4, NPCComposition var5, NewShit var6) { - field2945 = false; - int var7; + public Model getModel(WidgetDefinition var1, SequenceDefinition var2, int var3, boolean var4, PlayerComposition var5, NPCComposition var6, NewShit var7) { + field2976 = false; int var8; - if (var3) { - var7 = this.modelType2; - var8 = this.modelId2; + int var9; + if (var4) { + var8 = this.modelType2; + var9 = this.modelId2; } else { - var7 = this.modelType; - var8 = this.modelId; + var8 = this.modelType; + var9 = this.modelId; } - if (var7 == 6) { - if (var5 == null) { + if (var8 == 6) { + if (var6 == null) { return null; } - var8 = var5.id; + var9 = var6.id; } - if (var7 == 0) { + if (var8 == 0) { return null; - } else if (var7 == 1 && var8 == -1) { + } else if (var8 == 1 && var9 == -1) { return null; } else { - if (var6 != null && var6.field1581 && var7 == 6) { - var7 = 3; + if (var7 != null && var7.field1530 && var8 == 6) { + var8 = 3; } - long var9 = (long)(var8 + (var7 << 16)); - if (var6 != null) { - var9 |= var6.field1582 << 20; + long var10 = (long)(var9 + (var8 << 16)); + if (var7 != null) { + var10 |= var7.field1531 << 20; } - Model var11 = (Model)Widget_cachedModels.get(var9); - if (var11 == null) { - ModelData var12 = null; - int var13 = 64; - int var14 = 768; - switch(var7) { + Model var12 = (Model)var1.Widget_cachedModels.get(var10); + if (var12 == null) { + ModelData var13 = null; + int var14 = 64; + int var15 = 768; + switch(var8) { case 1: - var12 = ModelData.ModelData_get(class47.field226, var8, 0); + var13 = ModelData.ModelData_get(var1.field2916, var9, 0); break; case 2: - var12 = class90.getNpcDefinition(var8).method986((NewShit)null); + var13 = VerticalAlignment.getNpcDefinition(var9).method941((NewShit)null); break; case 3: - var12 = var4 != null ? var4.getModelData() : null; + var13 = var5 != null ? var5.getModelData() : null; break; case 4: - ItemComposition var15 = InvDefinition.ItemDefinition_get(var8); - var12 = var15.getModelData(10); - var13 += var15.field1812; - var14 += var15.field1809; + ItemComposition var16 = class214.ItemDefinition_get(var9); + var13 = var16.getModelData(10); + var14 += var16.field1756; + var15 += var16.field1759; case 5: default: break; case 6: - var12 = class90.getNpcDefinition(var8).method986(var6); + var13 = VerticalAlignment.getNpcDefinition(var9).method941(var7); } - if (var12 == null) { - field2945 = true; + if (var13 == null) { + field2976 = true; return null; } - var11 = var12.toModel(var13, var14, -50, -10, -50); - Widget_cachedModels.put(var11, var9); + var12 = var13.toModel(var14, var15, -50, -10, -50); + var1.Widget_cachedModels.put(var12, var10); } - if (var1 != null) { - var11 = var1.transformWidgetModel(var11, var2); + if (var2 != null) { + var12 = var2.transformWidgetModel(var12, var3); } - return var11; + return var12; } } - @ObfuscatedName("ab") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(ZI)Lme;", - garbageValue = "1022020243" + descriptor = "(Lmr;ZB)Lme;", + garbageValue = "4" ) - @Export("getSpriteMask") - public SpriteMask getSpriteMask(boolean var1) { + public SpriteMask method1851(WidgetDefinition var1, boolean var2) { if (this.spriteId == -1) { - var1 = false; + var2 = false; } - int var2 = var1 ? this.spriteId * -329704335 * -243850095 : this.spriteId2 * 1694560891 * -1390207821; - if (var2 == -1) { + int var3 = var2 ? this.spriteId : this.spriteId2; + if (var3 == -1) { return null; } else { - long var3 = ((long)this.spriteShadow << 40) + ((long)this.outline << 36) + (long)var2 + ((this.spriteFlipV ? 1L : 0L) << 38) + ((this.spriteFlipH ? 1L : 0L) << 39); - SpriteMask var5 = (SpriteMask)Widget_cachedSpriteMasks.get(var3); - if (var5 != null) { - return var5; + long var4 = ((this.spriteFlipH ? 1L : 0L) << 39) + ((this.spriteFlipV ? 1L : 0L) << 38) + (long)var3 + ((long)this.outline << 36) + ((long)this.spriteShadow << 40); + SpriteMask var6 = (SpriteMask)var1.Widget_cachedSpriteMasks.get(var4); + if (var6 != null) { + return var6; } else { - SpritePixels var6 = this.getSprite(var1, (UrlRequester)null); - if (var6 == null) { + SpritePixels var7 = this.getSprite(var1, var2, (UrlRequester)null); + if (var7 == null) { return null; } else { - SpritePixels var7 = var6.copyNormalized(); - int[] var8 = new int[var7.subHeight]; - int[] var9 = new int[var7.subHeight]; - - for (int var10 = 0; var10 < var7.subHeight; ++var10) { - int var11 = 0; - int var12 = var7.subWidth; - - int var13; - for (var13 = 0; var13 < var7.subWidth; ++var13) { - if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { - var11 = var13; + SpritePixels var8 = var7.copyNormalized(); + int[] var9 = new int[var8.subHeight]; + int[] var10 = new int[var8.subHeight]; + + for (int var11 = 0; var11 < var8.subHeight; ++var11) { + int var12 = 0; + int var13 = var8.subWidth; + + int var14; + for (var14 = 0; var14 < var8.subWidth; ++var14) { + if (var8.pixels[var14 + var11 * var8.subWidth] == 0) { + var12 = var14; break; } } - for (var13 = var7.subWidth - 1; var13 >= var11; --var13) { - if (var7.pixels[var13 + var10 * var7.subWidth] == 0) { - var12 = var13 + 1; + for (var14 = var8.subWidth - 1; var14 >= var12; --var14) { + if (var8.pixels[var14 + var11 * var8.subWidth] == 0) { + var13 = var14 + 1; break; } } - var8[var10] = var11; - var9[var10] = var12 - var11; + var9[var11] = var12; + var10[var11] = var13 - var12; } - var5 = new SpriteMask(var7.subWidth, var7.subHeight, var9, var8, var2); - Widget_cachedSpriteMasks.put(var5, var3); - return var5; + var6 = new SpriteMask(var8.subWidth, var8.subHeight, var10, var9, var3); + var1.Widget_cachedSpriteMasks.put(var6, var4); + return var6; } } } } - @ObfuscatedName("am") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)V", - garbageValue = "-1578890937" + descriptor = "(ILjava/lang/String;B)V", + garbageValue = "-73" ) @Export("setAction") public void setAction(int var1, String var2) { @@ -1275,159 +1263,159 @@ public void setAction(int var1, String var2) { this.actions[var1] = var2; } - @ObfuscatedName("ax") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "10" + descriptor = "(I)Z", + garbageValue = "101495939" ) - public boolean method1826() { + public boolean method1853() { return !this.isIf3 || this.type == 0 || this.type == 11 || this.hasListener || this.contentType == 1338 || this.type == 12; } - @ObfuscatedName("ah") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(S)Z", - garbageValue = "13293" + descriptor = "(B)Z", + garbageValue = "54" ) - public boolean method1827() { + public boolean method1854() { return this.type == 11 || this.type == 12; } - @ObfuscatedName("as") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lev;J)V" + descriptor = "(Ljava/lang/String;Lel;J)V" ) - public void method1828(String var1, UrlRequester var2, long var3) { - if (this.type == 11 && var3 != -1L) { + public void method1855(String var1, UrlRequester var2, long var3) { + if (this.type == 11 && -1L != var3) { var1 = var1.replaceAll("%userid%", Long.toString(var3)); - this.field2952 = new class170(); - if (!this.field2952.method881(var1, var2)) { - this.field2952 = null; + this.field2977 = new class208(); + if (!this.field2977.method1063(var1, var2)) { + this.field2977 = null; } else { - if (this.field2956 == null || this.field2957 == null) { - this.method1830(); + if (this.field2982 == null || this.field2983 == null) { + this.method1857(); } } } } - @ObfuscatedName("ay") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lev;I)V", - garbageValue = "1047552277" + descriptor = "(Ljava/lang/String;Lel;I)V", + garbageValue = "-1255401092" ) - public void method1829(String var1, UrlRequester var2) { + public void method1856(String var1, UrlRequester var2) { if (this.type == 11 && var1 != null) { - this.field2952 = new class170(); - this.field2952.method899(var1, var2); + this.field2977 = new class208(); + this.field2977.method1081(var1, var2); } } - @ObfuscatedName("aj") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-11260" + descriptor = "(I)V", + garbageValue = "1944060082" ) - void method1830() { - this.field2956 = new HashMap(); - this.field2957 = new HashMap(); + void method1857() { + this.field2982 = new HashMap(); + this.field2983 = new HashMap(); } - @ObfuscatedName("av") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1873888023" + descriptor = "(IIB)V", + garbageValue = "105" ) - public void method1831(int var1, int var2) { + public void method1858(int var1, int var2) { if (this.type == 11) { - if (this.field2956 == null) { - this.method1830(); + if (this.field2982 == null) { + this.method1857(); } - this.field2956.put(var1, var2); + this.field2982.put(var1, var2); } } @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)V", - garbageValue = "1531233902" + descriptor = "(Ljava/lang/String;IB)V", + garbageValue = "40" ) - public void method1832(String var1, int var2) { + public void method1859(String var1, int var2) { if (this.type == 11) { - if (this.field2957 == null) { - this.method1830(); + if (this.field2983 == null) { + this.method1857(); } - this.field2957.put(var1, var2); + this.field2983.put(var1, var2); } } - @ObfuscatedName("ak") + @ObfuscatedName("ae") @ObfuscatedSignature( descriptor = "(IIIII)Z", - garbageValue = "182136505" + garbageValue = "-1885191377" ) - public boolean method1833(int var1, int var2, int var3, int var4) { - if (this.type == 11 && this.field2952 != null && this.method1834()) { + public boolean method1860(int var1, int var2, int var3, int var4) { + if (this.type == 11 && this.field2977 != null && this.method1861()) { var1 -= var3; var2 -= var4; - int var5 = (int)(this.field2952.method889()[0] * (float)this.width); - int var6 = (int)(this.field2952.method889()[1] * (float)this.height); - int var7 = var5 + (int)(this.field2952.method889()[2] * (float)this.width); - int var8 = var6 + (int)(this.field2952.method889()[3] * (float)this.height); + int var5 = (int)(this.field2977.method1071()[0] * (float)this.width); + int var6 = (int)(this.field2977.method1071()[1] * (float)this.height); + int var7 = var5 + (int)(this.field2977.method1071()[2] * (float)this.width); + int var8 = var6 + (int)(this.field2977.method1071()[3] * (float)this.height); return var1 >= var5 && var2 >= var6 && var1 < var7 && var2 < var8; } else { return false; } } - @ObfuscatedName("bh") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1140949643" + descriptor = "(B)Z", + garbageValue = "29" ) - public boolean method1834() { - return this.field2955 == 2; + public boolean method1861() { + return this.field2980 == 2; } - @ObfuscatedName("bj") + @ObfuscatedName("ag") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-2121469782" + garbageValue = "-720840753" ) - public int method1835(String var1) { - return this.type == 11 && this.field2952 != null && this.method1834() ? this.field2952.method884(var1) : -1; + public int method1862(String var1) { + return this.type == 11 && this.field2977 != null && this.method1861() ? this.field2977.method1066(var1) : -1; } - @ObfuscatedName("bk") + @ObfuscatedName("ad") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "-1095190564" + garbageValue = "1149651075" ) - public String method1836(String var1) { - return this.type == 11 && this.field2952 != null && this.method1834() ? this.field2952.method885(var1) : null; + public String method1863(String var1) { + return this.type == 11 && this.field2977 != null && this.method1861() ? this.field2977.method1067(var1) : null; } - @ObfuscatedName("bv") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "44" + descriptor = "(I)I", + garbageValue = "2095276271" ) - public int method1837() { - return this.field2957 != null && this.field2957.size() > 0 ? 1 : 0; + public int method1864() { + return this.field2983 != null && this.field2983.size() > 0 ? 1 : 0; } - @ObfuscatedName("bt") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "47" + descriptor = "(I)I", + garbageValue = "1126201283" ) - public int method1838() { - if (this.type == 11 && this.field2952 != null && this.field2957 != null && !this.field2957.isEmpty()) { - String var1 = this.field2952.method888(); - return var1 != null && this.field2957.containsKey(this.field2952.method888()) ? (Integer)this.field2957.get(var1) : -1; + public int method1865() { + if (this.type == 11 && this.field2977 != null && this.field2983 != null && !this.field2983.isEmpty()) { + String var1 = this.field2977.method1070(); + return var1 != null && this.field2983.containsKey(this.field2977.method1070()) ? (Integer)this.field2983.get(var1) : -1; } else { return -1; } @@ -1435,17 +1423,17 @@ public int method1838() { @ObfuscatedName("bd") @ObfuscatedSignature( - descriptor = "(S)Ljava/lang/String;", - garbageValue = "11076" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "81" ) - public String method1839() { - if (this.type == 11 && this.field2952 != null) { - String var1 = this.field2952.method888(); - Iterator var2 = this.field2952.method890().iterator(); + public String method1866() { + if (this.type == 11 && this.field2977 != null) { + String var1 = this.field2977.method1070(); + Iterator var2 = this.field2977.method1072().iterator(); while (var2.hasNext()) { - class181 var3 = (class181)var2.next(); - String var4 = String.format("%%%S%%", var3.method925()); + class219 var3 = (class219)var2.next(); + String var4 = String.format("%%%S%%", var3.method1105()); if (var3.vmethod3379() == 0) { var1.replaceAll(var4, Integer.toString(var3.vmethod3378())); } else { @@ -1459,20 +1447,20 @@ public String method1839() { } } - @ObfuscatedName("by") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(I)[I", - garbageValue = "-2142205826" + descriptor = "(B)[I", + garbageValue = "-61" ) - public int[] method1840() { - if (this.type == 11 && this.field2952 != null) { + public int[] method1867() { + if (this.type == 11 && this.field2977 != null) { int[] var1 = new int[3]; int var2 = 0; - Iterator var3 = this.field2952.method890().iterator(); + Iterator var3 = this.field2977.method1072().iterator(); while (var3.hasNext()) { - class181 var4 = (class181)var3.next(); - if (!var4.method925().equals("user_id")) { + class219 var4 = (class219)var3.next(); + if (!var4.method1105().equals("user_id")) { if (var4.vmethod3379() != 0) { return null; } @@ -1490,22 +1478,22 @@ public int[] method1840() { } } - @ObfuscatedName("bs") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "(Lev;B)Z", - garbageValue = "84" + descriptor = "(Lmr;Lel;I)Z", + garbageValue = "1588534614" ) - public boolean method1841(UrlRequester var1) { - if (this.type == 11 && this.field2952 != null) { - this.field2952.method882(var1); - if (this.field2952.method883() != this.field2955) { - this.field2955 = this.field2952.method883(); - if (this.field2955 >= 100) { + public boolean method1868(WidgetDefinition var1, UrlRequester var2) { + if (this.type == 11 && this.field2977 != null) { + this.field2977.method1064(var2); + if (this.field2977.method1065() != this.field2980) { + this.field2980 = this.field2977.method1065(); + if (this.field2980 >= 100) { return true; } - if (this.field2955 == 2) { - this.method1842(); + if (this.field2980 == 2) { + this.method1869(var1); return true; } } @@ -1516,186 +1504,215 @@ public boolean method1841(UrlRequester var1) { } } - @ObfuscatedName("bm") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "757418391" + descriptor = "(Lmr;I)V", + garbageValue = "1425941595" ) - void method1842() { + void method1869(WidgetDefinition var1) { this.noClickThrough = true; - ArrayList var1 = this.field2952.method886(); - ArrayList var2 = this.field2952.method887(); - int var3 = var1.size() + var2.size(); - this.children = new Widget[var3]; - int var4 = 0; - - Iterator var5; - float[] var9; - Widget var10; - for (var5 = var1.iterator(); var5.hasNext(); this.children[var4++] = var10) { - class176 var6 = (class176)var5.next(); - var9 = var6.field1470; - var10 = new Widget(); - var10.type = 5; - var10.parentId = this.id; - var10.childIndex = var4; - var10.isIf3 = true; - var10.xAlignment = 0; - var10.yAlignment = 0; - var10.widthAlignment = 0; - var10.heightAlignment = 0; - var10.rawX = (int)(var9[0] * (float)this.width); - var10.rawY = (int)(var9[1] * (float)this.height); - var10.rawWidth = (int)(var9[2] * (float)this.width); - var10.rawHeight = (int)((float)this.height * var9[3]); - var10.field3091 = var6.field1469.method667(); - class326 var11 = new class326(var6.field1469); - field2950.method2181(var10.field3091, var11); + ArrayList var2 = this.field2977.method1068(); + ArrayList var3 = this.field2977.method1069(); + int var4 = var2.size() + var3.size(); + this.children = new Widget[var4]; + int var5 = 0; + + Iterator var6; + Widget var8; + for (var6 = var2.iterator(); var6.hasNext(); this.children[var5++] = var8) { + class214 var7 = (class214)var6.next(); + var8 = class160.method839(5, this, var5, 0, 0, 0, 0, var7.field1853); + var8.field3117 = var7.field1852.method659(); + class338 var9 = new class338(var7.field1852); + var1.field2919.method2197(var8.field3117, var9); } - for (var5 = var2.iterator(); var5.hasNext(); this.children[var4++] = var10) { - class177 var12 = (class177)var5.next(); - var9 = var12.field1472; - var10 = new Widget(); - var10.type = 4; - var10.parentId = this.id; - var10.childIndex = var4; - var10.isIf3 = true; - var10.xAlignment = 0; - var10.yAlignment = 0; - var10.widthAlignment = 0; - var10.heightAlignment = 0; - var10.rawX = (int)(var9[0] * (float)this.width); - var10.rawY = (int)(var9[1] * (float)this.height); - var10.rawWidth = (int)((float)this.width * var9[2]); - var10.rawHeight = (int)(var9[3] * (float)this.height); - var10.text = var12.field1476; - var10.fontId = (Integer)this.field2956.get(var12.field1474); - var10.textXAlignment = var12.field1473; - var10.textYAlignment = var12.field1475; + for (var6 = var3.iterator(); var6.hasNext(); this.children[var5++] = var8) { + class215 var10 = (class215)var6.next(); + var8 = class160.method839(4, this, var5, 0, 0, 0, 0, var10.field1855); + var8.text = var10.field1859; + var8.fontId = (Integer)this.field2982.get(var10.field1857); + var8.textXAlignment = var10.field1858; + var8.textYAlignment = var10.field1856; } } - @ObfuscatedName("bf") + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-109" + descriptor = "(I)V", + garbageValue = "-1475013178" ) - public void method1843() { - this.field2958 = new class327(); + public void method1870() { + this.field2984 = new class339(); for (int var1 = 1; var1 <= 12; ++var1) { - this.field2958.field2896.method96(var1, 0); + this.field2984.field2928.method111(var1, 0); } for (char var2 = 0; var2 < ' '; ++var2) { - this.field2958.field2896.method97(var2, 0); + this.field2984.field2928.method113(var2, 0); } - this.field2958.field2896.method97('\u0080', 0); - this.field2958.field2896.method96(82, 2); - this.field2958.field2896.method96(81, 2); - this.field2958.field2896.method96(86, 2); + this.field2984.field2928.method113('\u0080', 0); + this.field2984.field2928.method111(82, 2); + this.field2984.field2928.method111(81, 2); + this.field2984.field2928.method111(86, 2); } - @ObfuscatedName("bq") + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "(B)Lmb;", - garbageValue = "-14" + descriptor = "(I)Lni;", + garbageValue = "-2105376256" ) - public class329 method1844() { - return this.field2958 != null ? this.field2958.field2902 : null; + public class341 method1871() { + return this.field2984 != null ? this.field2984.field2934 : null; } - @ObfuscatedName("ba") + @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "(B)Lml;", - garbageValue = "25" + descriptor = "(B)Lmp;", + garbageValue = "-116" ) - public class324 method1845() { - return this.field2958 != null ? this.field2958.field2897 : null; + public class336 method1872() { + return this.field2984 != null ? this.field2984.field2929 : null; } - @ObfuscatedName("bl") + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "(I)Lbj;", - garbageValue = "1077698230" + descriptor = "(I)Lbd;", + garbageValue = "-35642997" ) - public class27 method1846() { - return this.field2958 != null ? this.field2958.field2896 : null; + public class27 method1873() { + return this.field2984 != null ? this.field2984.field2928 : null; } - @ObfuscatedName("bp") + @ObfuscatedName("bw") @ObfuscatedSignature( - descriptor = "(I)Lmp;", - garbageValue = "-1932900136" + descriptor = "(I)Lnq;", + garbageValue = "1933652600" ) - public class327 method1847() { - return this.field2958; + public class339 method1874() { + return this.field2984; } - @ObfuscatedName("bu") + @ObfuscatedName("bj") @ObfuscatedSignature( - descriptor = "(Lmb;B)Z", - garbageValue = "1" + descriptor = "(Lni;I)Z", + garbageValue = "588474161" ) - boolean method1848(class329 var1) { + boolean method1875(class341 var1) { boolean var2 = false; + String var5; + String var6; + StringBuilder var7; + int var8; + int var9; + int var10; + char var11; + String var12; if (this.text != null && !this.text.isEmpty()) { - var2 |= var1.method1733(class157.method832(this.text)); + var6 = this.text; + var7 = new StringBuilder(var6.length()); + var8 = 0; + var9 = -1; + + for (var10 = 0; var10 < var6.length(); ++var10) { + var11 = var6.charAt(var10); + if (var11 == '<') { + var7.append(var6.substring(var8, var10)); + var9 = var10; + } else if (var11 == '>' && var9 != -1) { + var12 = var6.substring(var9 + 1, var10); + var9 = -1; + if (var12.equals("lt")) { + var7.append("<"); + } else if (var12.equals("gt")) { + var7.append(">"); + } else if (var12.equals("br")) { + var7.append("\n"); + } + + var8 = var10 + 1; + } + } + + if (var8 < var6.length()) { + var7.append(var6.substring(var8, var6.length())); + } + + var5 = var7.toString(); + var2 |= var1.method1761(var5); this.text = ""; } if (this.text2 != null && !this.text2.isEmpty()) { - var2 |= var1.method1734(class157.method832(this.text2)); + var6 = this.text2; + var7 = new StringBuilder(var6.length()); + var8 = 0; + var9 = -1; + + for (var10 = 0; var10 < var6.length(); ++var10) { + var11 = var6.charAt(var10); + if (var11 == '<') { + var7.append(var6.substring(var8, var10)); + var9 = var10; + } else if (var11 == '>' && var9 != -1) { + var12 = var6.substring(var9 + 1, var10); + var9 = -1; + if (var12.equals("lt")) { + var7.append("<"); + } else if (var12.equals("gt")) { + var7.append(">"); + } else if (var12.equals("br")) { + var7.append("\n"); + } + + var8 = var10 + 1; + } + } + + if (var8 < var6.length()) { + var7.append(var6.substring(var8, var6.length())); + } + + var5 = var7.toString(); + var2 |= var1.method1762(var5); this.text2 = ""; } return var2; } - @ObfuscatedName("bo") + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1006338343" + descriptor = "(Lmr;B)Z", + garbageValue = "16" ) - public boolean method1849() { - class329 var1 = this.method1844(); - if (var1 == null) { + public boolean method1876(WidgetDefinition var1) { + class341 var2 = this.method1871(); + if (var2 == null) { return false; } else { - boolean var2 = false; - if (!var1.method1787() && this.fontId != -1) { - int var3 = var1.method1788(); - int var4 = var1.method1789(); - int var5 = var1.method1786(); - int var6 = var1.method1785(); - Font var7 = this.getFont(); - if (var7 != null) { - var2 |= var1.method1735(var7); - var2 |= this.method1848(var1); - var2 |= var1.method1740(var3, var4); - var2 |= var1.method1755(var5, var6); + boolean var3 = false; + if (!var2.method1815() && this.fontId != -1) { + int var4 = var2.method1816(); + int var5 = var2.method1817(); + int var6 = var2.method1814(); + int var7 = var2.method1813(); + Font var8 = this.getFont(var1); + if (var8 != null) { + var3 |= var2.method1763(var8); + var3 |= this.method1875(var2); + var3 |= var2.method1768(var4, var5); + var3 |= var2.method1783(var6, var7); } - } else if (var1.method1787()) { - var2 |= this.method1848(var1); + } else if (var2.method1815()) { + var3 |= this.method1875(var2); } - var1.method1730(); - return var2; + var2.method1758(); + return var3; } } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-1138526298" - ) - public static int method1812(int var0, int var1, int var2) { - int var3 = Projectile.method430(var2 - var1 + 1); - var3 <<= var1; - var0 |= var3; - return var0; - } } \ No newline at end of file diff --git a/osrs/src/main/java/WidgetDefinition.java b/osrs/src/main/java/WidgetDefinition.java new file mode 100644 index 000000000..f1e4e59b5 --- /dev/null +++ b/osrs/src/main/java/WidgetDefinition.java @@ -0,0 +1,320 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.Implements; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.HashMap; +import java.util.Map; + +@ObfuscatedName("mr") +@Implements("WidgetDefinition") +public class WidgetDefinition { + @ObfuscatedName("aa") + static boolean[] field2907; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("widgetArchive") + AbstractArchive widgetArchive; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field2914; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field2916; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field2915; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field2913; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "[[Lnn;" + ) + @Export("Widget_interfaceComponents") + public Widget[][] Widget_interfaceComponents; + @ObfuscatedName("ac") + Map field2908; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedSprites") + EvictingDualNodeHashTable Widget_cachedSprites; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedModels") + EvictingDualNodeHashTable Widget_cachedModels; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedFonts") + EvictingDualNodeHashTable Widget_cachedFonts; + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedSpriteMasks") + EvictingDualNodeHashTable Widget_cachedSpriteMasks; + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lqc;" + ) + class435 field2919; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lqc;" + ) + class435 field2918; + + @ObfuscatedSignature( + descriptor = "(Lol;Lol;Lol;Lol;Lol;)V" + ) + public WidgetDefinition(AbstractArchive var1, AbstractArchive var2, AbstractArchive var3, AbstractArchive var4, AbstractArchive var5) { + this.field2908 = new HashMap(); + this.Widget_cachedSprites = new EvictingDualNodeHashTable(200); + this.Widget_cachedModels = new EvictingDualNodeHashTable(50); + this.Widget_cachedFonts = new EvictingDualNodeHashTable(20); + this.Widget_cachedSpriteMasks = new EvictingDualNodeHashTable(8); + this.field2919 = new class435(10, class433.field3801); + this.field2918 = new class435(10, class433.field3801); + int var6 = 0; + if (var1 != null) { + this.widgetArchive = var1; + this.field2916 = var2; + this.field2915 = var3; + this.field2913 = var4; + this.field2914 = var5; + var6 = this.widgetArchive.getGroupCount(); + } + + this.Widget_interfaceComponents = new Widget[var6][]; + field2907 = new boolean[var6]; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IB)Lnn;", + garbageValue = "16" + ) + public Widget method1733(int var1) { + int var2 = var1 >> 16; + int var3 = var1 & 65535; + if (this.Widget_interfaceComponents[var2] == null || this.Widget_interfaceComponents[var2][var3] == null) { + boolean var4 = this.loadInterface(var2); + if (!var4) { + return null; + } + } + + return this.Widget_interfaceComponents[var2][var3]; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(III)Lnn;", + garbageValue = "1789235417" + ) + @Export("getWidgetChild") + public Widget getWidgetChild(int var1, int var2) { + Widget var3 = this.method1733(var1); + if (var2 == -1) { + return var3; + } else { + return var3 != null && var3.children != null && var2 < var3.children.length ? var3.children[var2] : null; + } + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-1302781087" + ) + @Export("loadInterface") + public boolean loadInterface(int var1) { + if (field2907[var1]) { + return true; + } else if (!this.widgetArchive.tryLoadGroup(var1)) { + return false; + } else { + int var2 = this.widgetArchive.getGroupFileCount(var1); + if (var2 == 0) { + field2907[var1] = true; + return true; + } else { + if (this.Widget_interfaceComponents[var1] == null) { + this.Widget_interfaceComponents[var1] = new Widget[var2]; + } + + for (int var3 = 0; var3 < var2; ++var3) { + if (this.Widget_interfaceComponents[var1][var3] == null) { + byte[] var4 = this.widgetArchive.takeFile(var1, var3); + if (var4 != null) { + this.Widget_interfaceComponents[var1][var3] = new Widget(); + this.Widget_interfaceComponents[var1][var3].id = var3 + (var1 << 16); + if (var4[0] == -1) { + this.Widget_interfaceComponents[var1][var3].decode(new Buffer(var4)); + } else { + this.Widget_interfaceComponents[var1][var3].decodeLegacy(new Buffer(var4)); + } + + if (this.field2914 != null) { + byte[] var5 = this.field2914.takeFile(var1, var3); + if (var5 != null && var5.length > 0) { + this.Widget_interfaceComponents[var1][var3].method1841(new Buffer(var5)); + this.field2908.put(this.Widget_interfaceComponents[var1][var3].field2981, var1); + } + } + } + } + } + + field2907[var1] = true; + return true; + } + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "0" + ) + public void method1736(int var1) { + if (var1 != -1) { + if (field2907[var1]) { + this.widgetArchive.clearFilesGroup(var1); + if (this.Widget_interfaceComponents[var1] != null) { + for (int var2 = 0; var2 < this.Widget_interfaceComponents[var1].length; ++var2) { + if (this.Widget_interfaceComponents[var1][var2] != null) { + this.Widget_interfaceComponents[var1][var2] = null; + } + } + + this.Widget_interfaceComponents[var1] = null; + field2907[var1] = false; + } + } + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2131589936" + ) + public void method1737() { + this.Widget_cachedSprites.clear(); + this.Widget_cachedModels.clear(); + this.Widget_cachedFonts.clear(); + this.Widget_cachedSpriteMasks.clear(); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "0" + ) + static int method1738(int var0, Script var1, boolean var2) { + int var3 = -1; + Widget var4; + if (var0 >= 2000) { + var0 -= 1000; + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = HealthBarDefinition.widgetDefinition.method1733(var3); + } else { + var4 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + } + + if (var0 == 1000) { + DbTableType.Interpreter_intStackSize -= 4; + var4.rawX = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4.rawY = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var4.xAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var4.yAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + class159.invalidateWidget(var4); + SpriteMask.client.alignWidget(var4); + if (var3 != -1 && var4.type == 0) { + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var3 >> 16], var4, false); + } + + return 1; + } else if (var0 == 1001) { + DbTableType.Interpreter_intStackSize -= 4; + var4.rawWidth = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4.rawHeight = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var4.widthAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var4.heightAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + class159.invalidateWidget(var4); + SpriteMask.client.alignWidget(var4); + if (var3 != -1 && var4.type == 0) { + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var3 >> 16], var4, false); + } + + return 1; + } else if (var0 == 1003) { + boolean var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (var5 != var4.isHidden) { + var4.isHidden = var5; + class159.invalidateWidget(var4); + } + + return 1; + } else if (var0 == 1005) { + var4.noClickThrough = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 1006) { + var4.noScrollThrough = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else { + return 2; + } + } + + @ObfuscatedName("lt") + @ObfuscatedSignature( + descriptor = "(Lnn;B)Z", + garbageValue = "64" + ) + @Export("runCs1") + static final boolean runCs1(Widget var0) { + if (var0.cs1Comparisons == null) { + return false; + } else { + for (int var1 = 0; var1 < var0.cs1Comparisons.length; ++var1) { + int var2 = UserComparator4.method666(var0, var1); + int var3 = var0.cs1ComparisonValues[var1]; + if (var0.cs1Comparisons[var1] == 2) { + if (var2 >= var3) { + return false; + } + } else if (var0.cs1Comparisons[var1] == 3) { + if (var2 <= var3) { + return false; + } + } else if (var0.cs1Comparisons[var1] == 4) { + if (var2 == var3) { + return false; + } + } else if (var2 != var3) { + return false; + } + } + + return true; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/World.java b/osrs/src/main/java/World.java index db7b1a548..63372ff42 100644 --- a/osrs/src/main/java/World.java +++ b/osrs/src/main/java/World.java @@ -3,40 +3,40 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ch") +@ObfuscatedName("cr") @Implements("World") public class World { - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("World_count") static int World_count; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("World_listCount") static int World_listCount; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("World_sortOption2") static int[] World_sortOption2; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("World_sortOption1") static int[] World_sortOption1; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("id") int id; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("properties") int properties; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("population") int population; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("host") String host; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("activity") String activity; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("location") int location; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @Export("index") int index; @ObfuscatedName("am") @@ -52,514 +52,488 @@ public class World { World() { } - @ObfuscatedName("af") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "2" + garbageValue = "-98" ) @Export("isMembersOnly") boolean isMembersOnly() { - return (class510.field4129.rsOrdinal() & this.properties) != 0; + return (class522.field4158.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("ad") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1342373424" + descriptor = "(B)Z", + garbageValue = "0" ) @Export("isDeadman") boolean isDeadman() { - return (class510.field4125.rsOrdinal() & this.properties) != 0; + return (class522.field4153.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("aq") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1471748283" + descriptor = "(B)Z", + garbageValue = "25" ) - boolean method388() { - return (class510.field4124.rsOrdinal() & this.properties) != 0; + boolean method399() { + return (class522.field4152.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("al") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-87" + descriptor = "(I)Z", + garbageValue = "2092493983" ) @Export("isPvp") boolean isPvp() { - return (class510.field4127.rsOrdinal() & this.properties) != 0; + return (class522.field4157.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("an") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1678180347" + garbageValue = "-1744253846" ) - boolean method390() { - return (class510.field4128.rsOrdinal() & this.properties) != 0; + boolean method401() { + return (class522.field4155.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1233565973" + descriptor = "(S)Z", + garbageValue = "1917" ) - boolean method391() { - return (class510.field4132.rsOrdinal() & this.properties) != 0; + boolean method402() { + return (class522.field4160.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("ab") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "879753429" + garbageValue = "-1429834032" ) @Export("isBeta") boolean isBeta() { - return (class510.field4126.rsOrdinal() & this.properties) != 0; + return (class522.field4151.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("ag") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-6" + descriptor = "(I)Z", + garbageValue = "893660966" ) - boolean method393() { - return (class510.field4131.rsOrdinal() & this.properties) != 0; + boolean method404() { + return (class522.field4161.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("am") + @ObfuscatedName("aj") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "2" + garbageValue = "-42" ) - boolean method394() { - return (class510.field4122.rsOrdinal() & this.properties) != 0; + boolean method405() { + return (class522.field4154.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "8" + garbageValue = "-15" ) - boolean method395() { - return (class510.field4130.rsOrdinal() & this.properties) != 0; + boolean method406() { + return (class522.field4159.rsOrdinal() & this.properties) != 0; } - @ObfuscatedName("an") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "-2141322867" + descriptor = "([BIII)Ljava/lang/String;", + garbageValue = "-1248471414" ) - public static String method385(String var0) { - int var1 = var0.length(); - char[] var2 = new char[var1]; - byte var3 = 2; - - for (int var4 = 0; var4 < var1; ++var4) { - char var5 = var0.charAt(var4); - if (var3 == 0) { - var5 = Character.toLowerCase(var5); - } else if (var3 == 2 || Character.isUpperCase(var5)) { - var5 = SceneTilePaint.method1352(var5); - } - - if (Character.isLetter(var5)) { - var3 = 0; - } else if (var5 != '.' && var5 != '?' && var5 != '!') { - if (Character.isSpaceChar(var5)) { - if (var3 != 2) { - var3 = 1; + @Export("decodeStringCp1252") + public static String decodeStringCp1252(byte[] var0, int var1, int var2) { + char[] var3 = new char[var2]; + int var4 = 0; + + for (int var5 = 0; var5 < var2; ++var5) { + int var6 = var0[var5 + var1] & 255; + if (var6 != 0) { + if (var6 >= 128 && var6 < 160) { + char var7 = class396.cp1252AsciiExtension[var6 - 128]; + if (var7 == 0) { + var7 = '?'; } - } else { - var3 = 1; + + var6 = var7; } - } else { - var3 = 2; - } - var2[var4] = var5; + var3[var4++] = (char)var6; + } } - return new String(var2); + return new String(var3, 0, var4); } - @ObfuscatedName("kq") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(Lls;I)V", - garbageValue = "681545140" + descriptor = "(ILdt;ZI)I", + garbageValue = "1960092148" ) - @Export("processZoneOperation") - static final void processZoneOperation(ZoneOperation var0) { - PacketBuffer var1 = Client.packetWriter.packetBuffer; - int var2; - int var3; - int var4; - int var5; - int var6; - int var7; - if (ZoneOperation.AREA_SOUND == var0) { - var2 = var1.readUnsignedIntIME(); - var3 = var1.readIntIME(); - var4 = var1.readUnsignedByte(); - var5 = (var4 >> 4 & 7) + ObjectSound.field686; - var6 = (var4 & 7) + class125.field1193; - var7 = var1.readUnsignedShortLE(); - if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { - NodeDeque var41 = Client.groundItems[HealthBar.Client_plane][var5][var6]; - if (var41 != null) { - for (TileItem var9 = (TileItem)var41.last(); var9 != null; var9 = (TileItem)var41.previous()) { - if ((var7 & 32767) == var9.id && var3 == var9.quantity) { - var9.quantity = var2; - break; - } - } - - class135.updateItemPile(var5, var6); - } + static int method407(int var0, Script var1, boolean var2) { + String var3; + if (var0 == 3100) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + GrandExchangeOfferUnitPriceComparator.addGameMessage(0, "", var3); + return 1; + } else if (var0 == 3101) { + DbTableType.Interpreter_intStackSize -= 2; + WorldMapLabelSize.performPlayerAnimation(class229.localPlayer, Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + return 1; + } else if (var0 == 3103) { + if (!Interpreter.field703) { + Interpreter.field702 = true; } + return 1; } else { - byte var10; - int var12; - int var13; - int var31; - int var32; - if (ZoneOperation.OBJ_ADD == var0) { - var2 = var1.readUnsignedByteAdd(); - var3 = var2 >> 2; - var4 = var2 & 3; - var5 = Client.field653[var3]; - var6 = var1.readUnsignedByteNeg(); - var7 = (var6 >> 4 & 7) + ObjectSound.field686; - var31 = (var6 & 7) + class125.field1193; - var32 = var1.method2587(); - var10 = var1.readByteAdd(); - byte var11 = var1.readByteNeg(); - var12 = var1.readIntME(); - var13 = var1.readIntME(); - byte var14 = var1.readSignedByteSub(); - byte var15 = var1.readByte(); - int var16 = var1.method2587(); - Player var17; - if (var32 == Client.localPlayerIndex) { - var17 = VarbitComposition.localPlayer; - } else { - var17 = Client.players[var32]; - } - - if (var17 != null) { - ObjectComposition var18 = WorldMapElement.getObjectDefinition(var13); - int var19; - int var20; - if (var4 != 1 && var4 != 3) { - var19 = var18.sizeX; - var20 = var18.sizeY; - } else { - var19 = var18.sizeY; - var20 = var18.sizeX; - } - - int var21 = var7 + (var19 >> 1); - int var22 = var7 + (var19 + 1 >> 1); - int var23 = var31 + (var20 >> 1); - int var24 = var31 + (var20 + 1 >> 1); - int[][] var25 = Tiles.Tiles_heights[HealthBar.Client_plane]; - int var26 = var25[var22][var24] + var25[var21][var24] + var25[var22][var23] + var25[var21][var23] >> 2; - int var27 = (var7 << 7) + (var19 << 6); - int var28 = (var31 << 7) + (var20 << 6); - Model var29 = var18.getModel(var3, var4, var25, var27, var26, var28); - if (var29 != null) { - ClientPreferences.updatePendingSpawn(HealthBar.Client_plane, var7, var31, var5, -1, 0, 0, 31, var12 + 1, var16 + 1); - var17.animationCycleStart = var12 + Client.cycle; - var17.animationCycleEnd = var16 + Client.cycle; - var17.attachedModel = var29; - var17.field909 = var19 * 64 + var7 * 128; - var17.field910 = var20 * 64 + var31 * 128; - var17.baseTileHeight = var26; - byte var30; - if (var14 > var10) { - var30 = var14; - var14 = var10; - var10 = var30; - } - - if (var11 > var15) { - var30 = var11; - var11 = var15; - var15 = var30; - } - - var17.minX = var7 + var14; - var17.maxX = var10 + var7; - var17.minY = var11 + var31; - var17.maxY = var15 + var31; - } - } - } - - if (ZoneOperation.LOC_ANIM == var0) { - var2 = var1.readUnsignedByteNeg(); - var3 = (var2 >> 4 & 7) + ObjectSound.field686; - var4 = (var2 & 7) + class125.field1193; - var5 = var1.readUnsignedShort(); - var6 = var1.readUnsignedByteNeg(); - var7 = var1.readUnsignedShortLE(); - if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { - var3 = var3 * 128 + 64; - var4 = var4 * 128 + 64; - GraphicsObject var40 = new GraphicsObject(var7, HealthBar.Client_plane, var3, var4, class18.getTileHeight(var3, var4, HealthBar.Client_plane) - var6, var5, Client.cycle); - Client.graphicsObjects.addFirst(var40); + int var10; + if (var0 == 3104) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var10 = 0; + if (ClientPacket.isNumber(var3)) { + var10 = Huffman.method1888(var3); } + PacketBufferNode var12 = class113.getPacketBufferNode(ClientPacket.RESUME_COUNTDIALOG, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeInt(var10); + Client.packetWriter.addNode(var12); + return 1; } else { - int var42; - if (ZoneOperation.MAP_ANIM == var0) { - var2 = var1.readUnsignedByteAdd(); - var3 = var1.readUnsignedByteNeg(); - var4 = var3 >> 2; - var5 = var3 & 3; - var6 = Client.field653[var4]; - var7 = var1.method2587(); - var31 = var1.readUnsignedByteSub(); - var32 = (var31 >> 4 & 7) + ObjectSound.field686; - var42 = (var31 & 7) + class125.field1193; - if (var32 >= 0 && var42 >= 0 && var32 < 104 && var42 < 104) { - ClientPreferences.updatePendingSpawn(HealthBar.Client_plane, var32, var42, var6, var7, var4, var5, var2, 0, -1); - } - + PacketBufferNode var14; + if (var0 == 3105) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var14 = class113.getPacketBufferNode(ClientPacket.RESUME_NAMEDIALOG, Client.packetWriter.isaacCipher); + var14.packetBuffer.writeByte(var3.length() + 1); + var14.packetBuffer.writeStringCp1252NullTerminated(var3); + Client.packetWriter.addNode(var14); + return 1; + } else if (var0 == 3106) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var14 = class113.getPacketBufferNode(ClientPacket.RESUME_STRINGDIALOG, Client.packetWriter.isaacCipher); + var14.packetBuffer.writeByte(var3.length() + 1); + var14.packetBuffer.writeStringCp1252NullTerminated(var3); + Client.packetWriter.addNode(var14); + return 1; } else { - int var43; - if (ZoneOperation.OBJ_COUNT == var0) { - var2 = var1.readUnsignedByteNeg(); - var3 = var2 >> 2; - var4 = var2 & 3; - var5 = Client.field653[var3]; - var6 = var1.readIntME(); - var7 = var1.readUnsignedByteNeg(); - var31 = (var7 >> 4 & 7) + ObjectSound.field686; - var32 = (var7 & 7) + class125.field1193; - if (var31 >= 0 && var32 >= 0 && var31 < 103 && var32 < 103) { - if (var5 == 0) { - BoundaryObject var33 = class130.scene.method1255(HealthBar.Client_plane, var31, var32); - if (var33 != null) { - var43 = InvDefinition.Entity_unpackID(var33.tag); - if (var3 == 2) { - var33.renderable1 = new DynamicObject(var43, 2, var4 + 4, HealthBar.Client_plane, var31, var32, var6, false, var33.renderable1); - var33.renderable2 = new DynamicObject(var43, 2, var4 + 1 & 3, HealthBar.Client_plane, var31, var32, var6, false, var33.renderable2); - } else { - var33.renderable1 = new DynamicObject(var43, var3, var4, HealthBar.Client_plane, var31, var32, var6, false, var33.renderable1); - } - - return; - } - } - - if (var5 == 1) { - WallDecoration var46 = class130.scene.method1256(HealthBar.Client_plane, var31, var32); - if (var46 != null) { - var43 = InvDefinition.Entity_unpackID(var46.tag); - if (var3 != 4 && var3 != 5) { - if (var3 == 6) { - var46.renderable1 = new DynamicObject(var43, 4, var4 + 4, HealthBar.Client_plane, var31, var32, var6, false, var46.renderable1); - } else if (var3 == 7) { - var46.renderable1 = new DynamicObject(var43, 4, (var4 + 2 & 3) + 4, HealthBar.Client_plane, var31, var32, var6, false, var46.renderable1); - } else if (var3 == 8) { - var46.renderable1 = new DynamicObject(var43, 4, var4 + 4, HealthBar.Client_plane, var31, var32, var6, false, var46.renderable1); - var46.renderable2 = new DynamicObject(var43, 4, (var4 + 2 & 3) + 4, HealthBar.Client_plane, var31, var32, var6, false, var46.renderable2); - } - } else { - var46.renderable1 = new DynamicObject(var43, 4, var4, HealthBar.Client_plane, var31, var32, var6, false, var46.renderable1); - } - - return; - } - } - - if (var5 == 2) { - GameObject var47 = class130.scene.getGameObject(HealthBar.Client_plane, var31, var32); - if (var3 == 11) { - var3 = 10; - } + String var7; + int var8; + if (var0 == 3107) { + var8 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var7 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class402.method2043(var8, var7); + return 1; + } else if (var0 == 3108) { + DbTableType.Interpreter_intStackSize -= 3; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var10 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + int var9 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + Widget var13 = HealthBarDefinition.widgetDefinition.method1733(var9); + HorizontalAlignment.clickWidget(var13, var8, var10); + return 1; + } else if (var0 == 3109) { + DbTableType.Interpreter_intStackSize -= 2; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var10 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Widget var11 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + HorizontalAlignment.clickWidget(var11, var8, var10); + return 1; + } else if (var0 == 3110) { + class19.mouseCam = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3111) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapIcon_1.clientPreferences.getRoofsHidden() ? 1 : 0; + return 1; + } else if (var0 == 3112) { + WorldMapIcon_1.clientPreferences.setRoofsHidden(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1); + return 1; + } else if (var0 == 3113) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + boolean var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + HealthBar.openURL(var3, var4, false); + return 1; + } else if (var0 == 3115) { + var8 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var14 = class113.getPacketBufferNode(ClientPacket.RESUME_OBJDIALOG, Client.packetWriter.isaacCipher); + var14.packetBuffer.writeShort(var8); + Client.packetWriter.addNode(var14); + return 1; + } else if (var0 == 3116) { + var8 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class127.Interpreter_stringStackSize -= 2; + var7 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + String var5 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + if (var7.length() > 500) { + return 1; + } else if (var5.length() > 500) { + return 1; + } else { + PacketBufferNode var6 = class113.getPacketBufferNode(ClientPacket.f66, Client.packetWriter.isaacCipher); + var6.packetBuffer.writeShort(1 + ClanChannel.stringCp1252NullTerminatedByteSize(var7) + ClanChannel.stringCp1252NullTerminatedByteSize(var5)); + var6.packetBuffer.writeStringCp1252NullTerminated(var5); + var6.packetBuffer.writeStringCp1252NullTerminated(var7); + var6.packetBuffer.writeByteAdd(var8); + Client.packetWriter.addNode(var6); + return 1; + } + } else if (var0 == 3117) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 3118) { + Client.showMouseOverText = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3119) { + Client.field387 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3120) { + if (Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 1; + } else { + Client.drawPlayerNames &= -2; + } - if (var47 != null) { - var47.renderable = new DynamicObject(InvDefinition.Entity_unpackID(var47.tag), var3, var4, HealthBar.Client_plane, var31, var32, var6, false, var47.renderable); - return; - } - } + return 1; + } else if (var0 == 3121) { + if (Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 2; + } else { + Client.drawPlayerNames &= -3; + } - if (var5 == 3) { - FloorDecoration var48 = class130.scene.getFloorDecoration(HealthBar.Client_plane, var31, var32); - if (var48 != null) { - var48.renderable = new DynamicObject(InvDefinition.Entity_unpackID(var48.tag), 22, var4, HealthBar.Client_plane, var31, var32, var6, false, var48.renderable); - return; - } - } + return 1; + } else if (var0 == 3122) { + if (Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 4; + } else { + Client.drawPlayerNames &= -5; + } - class460.method2332(HealthBar.Client_plane, var31, var32, var5, var6); + return 1; + } else if (var0 == 3123) { + if (Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1) { + Client.drawPlayerNames |= 8; + } else { + Client.drawPlayerNames &= -9; } + return 1; + } else if (var0 == 3124) { + Client.drawPlayerNames = 0; + return 1; + } else if (var0 == 3125) { + Client.showMouseCross = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3126) { + Client.showLoadingMessages = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 3127) { + IgnoreList.setTapToDrop(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1); + return 1; + } else if (var0 == 3128) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Strings.getTapToDrop() ? 1 : 0; + return 1; + } else if (var0 == 3129) { + DbTableType.Interpreter_intStackSize -= 2; + Client.oculusOrbNormalSpeed = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + Client.oculusOrbSlowedSpeed = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + return 1; + } else if (var0 == 3130) { + DbTableType.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3131) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 3132) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Language.canvasWidth; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class47.canvasHeight; + return 1; + } else if (var0 == 3133) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 3134) { + return 1; + } else if (var0 == 3135) { + DbTableType.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3136) { + Client.field505 = 3; + Client.field499 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + return 1; + } else if (var0 == 3137) { + Client.field505 = 2; + Client.field499 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + return 1; + } else if (var0 == 3138) { + Client.field505 = 0; + return 1; + } else if (var0 == 3139) { + Client.field505 = 1; + return 1; + } else if (var0 == 3140) { + Client.field505 = 3; + Client.field499 = var2 ? Interpreter.scriptDotWidget.id : HealthBar.scriptActiveWidget.id ; + return 1; } else { - TileItem var8; - if (ZoneOperation.OBJ_DEL_LEGACY == var0) { - var1.readUnsignedByteAdd(); - var2 = var1.readUnsignedByteAdd(); - var3 = (var2 >> 4 & 7) + ObjectSound.field686; - var4 = (var2 & 7) + class125.field1193; - var5 = var1.readUnsignedByte(); - var6 = var1.readInt(); - var1.method2587(); - var1.readIntME(); - var1.readUnsignedByteAdd(); - var7 = var1.readUnsignedShort(); - if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { - var8 = new TileItem(); - var8.id = var7; - var8.quantity = var6; - var8.method609(var5); - if (Client.groundItems[HealthBar.Client_plane][var3][var4] == null) { - Client.groundItems[HealthBar.Client_plane][var3][var4] = new NodeDeque(); - } - - Client.groundItems[HealthBar.Client_plane][var3][var4].addFirst(var8); - class135.updateItemPile(var3, var4); - } - - } else if (ZoneOperation.LOC_ADD_CHANGE == var0) { - var2 = var1.readUnsignedByte(); - var3 = (var2 >> 4 & 7) + ObjectSound.field686; - var4 = (var2 & 7) + class125.field1193; - var5 = var1.readUnsignedByteNeg(); - var6 = var5 >> 2; - var7 = var5 & 3; - var31 = Client.field653[var6]; - if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { - ClientPreferences.updatePendingSpawn(HealthBar.Client_plane, var3, var4, var31, -1, var6, var7, 31, 0, -1); + boolean var15; + if (var0 == 3141) { + var15 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + WorldMapIcon_1.clientPreferences.setIsUsernameHidden(var15); + return 1; + } else if (var0 == 3142) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapIcon_1.clientPreferences.getIsUsernameHidden() ? 1 : 0; + return 1; + } else if (var0 == 3143) { + var15 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + Client.Login_isUsernameRemembered = var15; + if (!var15) { + WorldMapIcon_1.clientPreferences.setUsernameToRemember(""); } + return 1; + } else if (var0 == 3144) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.Login_isUsernameRemembered ? 1 : 0; + return 1; + } else if (var0 == 3145) { + return 1; + } else if (var0 == 3146) { + var15 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + WorldMapIcon_1.clientPreferences.getTitleMusicDisabled(!var15); + return 1; + } else if (var0 == 3147) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapIcon_1.clientPreferences.getTitleMusicDisabled() ? 0 : 1; + return 1; + } else if (var0 == 3148) { + return 1; + } else if (var0 == 3149) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3150) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3151) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3152) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3153) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Login.Login_loadingPercent; + return 1; + } else if (var0 == 3154) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapData_1.method1285(); + return 1; + } else if (var0 == 3155) { + --class127.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3156) { + return 1; + } else if (var0 == 3157) { + DbTableType.Interpreter_intStackSize -= 2; + return 1; + } else if (var0 == 3158) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3159) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3160) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3161) { + --DbTableType.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3162) { + --DbTableType.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3163) { + --class127.Interpreter_stringStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3164) { + --DbTableType.Interpreter_intStackSize; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + return 1; + } else if (var0 == 3165) { + --DbTableType.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3166) { + DbTableType.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3167) { + DbTableType.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3168) { + DbTableType.Interpreter_intStackSize -= 2; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + return 1; + } else if (var0 == 3169) { + return 1; + } else if (var0 == 3170) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3171) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3172) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 3173) { + --DbTableType.Interpreter_intStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3174) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 3175) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 3176) { + return 1; + } else if (var0 == 3177) { + return 1; + } else if (var0 == 3178) { + --class127.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3179) { + return 1; + } else if (var0 == 3180) { + --class127.Interpreter_stringStackSize; + return 1; + } else if (var0 == 3181) { + class311.method1647(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return 1; + } else if (var0 == 3182) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class216.method1099(); + return 1; + } else if (var0 == 3189) { + var8 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class240.method1294(var8); + return 1; } else { - NodeDeque var34; - if (ZoneOperation.PREFETCH_GAMEOBJECTS == var0) { - var2 = var1.method2587(); - var3 = var1.readUnsignedIntIME(); - var4 = var1.readUnsignedByte(); - var5 = (var4 >> 4 & 7) + ObjectSound.field686; - var6 = (var4 & 7) + class125.field1193; - if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { - var34 = Client.groundItems[HealthBar.Client_plane][var5][var6]; - if (var34 != null) { - for (var8 = (TileItem)var34.last(); var8 != null; var8 = (TileItem)var34.previous()) { - if ((var2 & 32767) == var8.id && var3 == var8.quantity) { - var8.remove(); - break; - } - } - - if (var34.last() == null) { - Client.groundItems[HealthBar.Client_plane][var5][var6] = null; - } - - class135.updateItemPile(var5, var6); - } - } - - } else { - if (ZoneOperation.MAPPROJ_ANIM == var0) { - var2 = var1.readUnsignedByteAdd(); - var3 = (var2 >> 4 & 7) + ObjectSound.field686; - var4 = (var2 & 7) + class125.field1193; - var5 = var1.readUnsignedByteSub(); - var6 = var5 >> 4 & 15; - var7 = var5 & 7; - var31 = var1.readUnsignedByte(); - var32 = var1.method2587(); - if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { - var42 = var6 + 1; - if (VarbitComposition.localPlayer.pathX[0] >= var3 - var42 && VarbitComposition.localPlayer.pathX[0] <= var42 + var3 && VarbitComposition.localPlayer.pathY[0] >= var4 - var42 && VarbitComposition.localPlayer.pathY[0] <= var42 + var4 && class449.clientPreferences.getAreaSoundEffectsVolume() != 0 && var7 > 0 && Client.soundEffectCount < 50) { - Client.soundEffectIds[Client.soundEffectCount] = var32; - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var7; - Client.queuedSoundEffectDelays[Client.soundEffectCount] = var31; - Client.soundEffects[Client.soundEffectCount] = null; - Client.soundLocations[Client.soundEffectCount] = var6 + (var4 << 8) + (var3 << 16); - ++Client.soundEffectCount; - } - } - } - - int var44; - if (ZoneOperation.OBJ_DEL == var0) { - var2 = var1.readUnsignedShortLE(); - var3 = var1.readUnsignedShort(); - byte var37 = var1.readSignedByteSub(); - var5 = var1.readUnsignedByteNeg(); - var6 = var1.method2593(); - byte var39 = var1.readByte(); - var31 = var1.readUnsignedByteAdd() * 4; - var32 = var1.readUnsignedByteNeg(); - var42 = var1.readUnsignedByteSub() * 4; - var43 = var1.method2594(); - var12 = var1.readUnsignedByte(); - var13 = (var12 >> 4 & 7) + ObjectSound.field686; - var44 = (var12 & 7) + class125.field1193; - int var45 = var1.method2587(); - var4 = var37 + var13; - var7 = var39 + var44; - if (var13 >= 0 && var44 >= 0 && var13 < 104 && var44 < 104 && var4 >= 0 && var7 >= 0 && var4 < 104 && var7 < 104 && var45 != 65535) { - var13 = var13 * 128 + 64; - var44 = var44 * 128 + 64; - var4 = var4 * 128 + 64; - var7 = var7 * 128 + 64; - Projectile var35 = new Projectile(var45, HealthBar.Client_plane, var13, var44, class18.getTileHeight(var13, var44, HealthBar.Client_plane) - var31, var2 + Client.cycle, var3 + Client.cycle, var5, var32, var43, var6, var42); - var35.setDestination(var4, var7, class18.getTileHeight(var4, var7, HealthBar.Client_plane) - var42, var2 + Client.cycle); - Client.projectiles.addFirst(var35); - } - - } else if (ZoneOperation.LOC_DEL == var0) { - var2 = var1.readIntME(); - var3 = var1.readUnsignedByteAdd(); - var4 = (var3 >> 4 & 7) + ObjectSound.field686; - var5 = (var3 & 7) + class125.field1193; - byte var38 = var1.readSignedByteSub(); - var7 = var1.method2594(); - var31 = var1.readUnsignedByteAdd(); - var32 = var1.method2587(); - var10 = var1.readByteAdd(); - var43 = var1.readUnsignedByteNeg() * 4; - var12 = var1.readUnsignedByteAdd(); - var13 = var1.readUnsignedByteAdd() * 4; - var44 = var1.readUnsignedShort(); - var42 = var10 + var4; - var6 = var38 + var5; - if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104 && var42 >= 0 && var6 >= 0 && var42 < 104 && var6 < 104 && var2 != 65535) { - var4 = var4 * 128 + 64; - var5 = var5 * 128 + 64; - var42 = var42 * 128 + 64; - var6 = var6 * 128 + 64; - Projectile var36 = new Projectile(var2, HealthBar.Client_plane, var4, var5, class18.getTileHeight(var4, var5, HealthBar.Client_plane) - var13, var44 + Client.cycle, var32 + Client.cycle, var31, var12, var7, var43); - var36.setDestination(var42, var6, class18.getTileHeight(var42, var6, HealthBar.Client_plane) - var43, var44 + Client.cycle); - Client.projectiles.addFirst(var36); - } - - } else if (ZoneOperation.field2607 == var0) { - var2 = var1.readUnsignedByte(); - var3 = (var2 >> 4 & 7) + ObjectSound.field686; - var4 = (var2 & 7) + class125.field1193; - var5 = var1.readUnsignedByteSub(); - var6 = var1.readIntME(); - if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { - var34 = Client.groundItems[HealthBar.Client_plane][var3][var4]; - if (var34 != null) { - for (var8 = (TileItem)var34.last(); var8 != null; var8 = (TileItem)var34.previous()) { - if ((var6 & 32767) == var8.id) { - var8.method609(var5); - break; - } - } - } - } - - } - } + return 2; } } } diff --git a/osrs/src/main/java/WorldMap.java b/osrs/src/main/java/WorldMap.java index 850e1e780..f4f2b7e39 100644 --- a/osrs/src/main/java/WorldMap.java +++ b/osrs/src/main/java/WorldMap.java @@ -5,208 +5,208 @@ import java.util.*; -@ObfuscatedName("si") +@ObfuscatedName("tn") @Implements("WorldMap") public class WorldMap { - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("fontNameVerdana11") static final FontName fontNameVerdana11; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("fontNameVerdana13") static final FontName fontNameVerdana13; - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lsp;" + descriptor = "Lth;" ) @Export("fontNameVerdana15") static final FontName fontNameVerdana15; - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("WorldMap_archive") AbstractArchive WorldMap_archive; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("WorldMap_geographyArchive") AbstractArchive WorldMap_geographyArchive; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("WorldMap_groundArchive") AbstractArchive WorldMap_groundArchive; - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lpi;" + descriptor = "Lpf;" ) @Export("font") Font font; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("fonts") HashMap fonts; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "[Lup;" ) @Export("mapSceneSprites") IndexedSprite[] mapSceneSprites; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("details") HashMap details; - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Ljf;" + descriptor = "Ljv;" ) @Export("mainMapArea") WorldMapArea mainMapArea; @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Ljf;" + descriptor = "Ljv;" ) @Export("currentMapArea") WorldMapArea currentMapArea; - @ObfuscatedName("ax") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Ljf;" + descriptor = "Ljv;" ) - WorldMapArea field4023; - @ObfuscatedName("ah") + WorldMapArea field4051; + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "Ljd;" + descriptor = "Ljf;" ) @Export("worldMapManager") WorldMapManager worldMapManager; - @ObfuscatedName("as") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "Lsb;" + descriptor = "Lsl;" ) @Export("cacheLoader") WorldMapArchiveLoader cacheLoader; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @Export("centerTileX") int centerTileX; - @ObfuscatedName("aj") + @ObfuscatedName("an") @Export("centerTileY") int centerTileY; - @ObfuscatedName("av") + @ObfuscatedName("ag") @Export("worldMapTargetX") int worldMapTargetX; - @ObfuscatedName("aw") + @ObfuscatedName("ad") @Export("worldMapTargetY") int worldMapTargetY; - @ObfuscatedName("ak") + @ObfuscatedName("af") @Export("zoom") float zoom; - @ObfuscatedName("bh") + @ObfuscatedName("be") @Export("zoomTarget") float zoomTarget; - @ObfuscatedName("bj") + @ObfuscatedName("bd") @Export("worldMapDisplayWidth") int worldMapDisplayWidth; - @ObfuscatedName("bk") + @ObfuscatedName("bl") @Export("worldMapDisplayHeight") int worldMapDisplayHeight; - @ObfuscatedName("bv") + @ObfuscatedName("bi") @Export("worldMapDisplayX") int worldMapDisplayX; - @ObfuscatedName("bt") + @ObfuscatedName("bv") @Export("worldMapDisplayY") int worldMapDisplayY; - @ObfuscatedName("bd") + @ObfuscatedName("bf") @Export("maxFlashCount") int maxFlashCount; - @ObfuscatedName("by") + @ObfuscatedName("bg") @Export("cyclesPerFlash") int cyclesPerFlash; - @ObfuscatedName("bs") + @ObfuscatedName("ba") @Export("perpetualFlash") boolean perpetualFlash; @ObfuscatedName("bm") @Export("flashingElements") HashSet flashingElements; - @ObfuscatedName("bf") + @ObfuscatedName("bp") @Export("flashCount") int flashCount; - @ObfuscatedName("bq") + @ObfuscatedName("bw") @Export("flashCycle") int flashCycle; - @ObfuscatedName("ba") - int field3991; - @ObfuscatedName("bl") - int field3997; - @ObfuscatedName("bp") - int field3998; - @ObfuscatedName("bu") - int field4002; + @ObfuscatedName("bj") + int field4024; + @ObfuscatedName("bn") + int field4026; @ObfuscatedName("bo") - long field4024; - @ObfuscatedName("bb") - int field3992; - @ObfuscatedName("br") - int field4000; - @ObfuscatedName("be") - boolean field3982; + int field4027; + @ObfuscatedName("bt") + int field4029; + @ObfuscatedName("bu") + long field4052; + @ObfuscatedName("by") + int field4032; + @ObfuscatedName("bh") + int field4022; + @ObfuscatedName("bz") + boolean field4012; @ObfuscatedName("bx") @Export("enabledElements") HashSet enabledElements; - @ObfuscatedName("bn") + @ObfuscatedName("bb") @Export("enabledCategories") HashSet enabledCategories; - @ObfuscatedName("bw") + @ObfuscatedName("bk") @Export("enabledElementIds") HashSet enabledElementIds; - @ObfuscatedName("bc") - HashSet field4012; - @ObfuscatedName("bg") + @ObfuscatedName("br") + HashSet field4043; + @ObfuscatedName("bq") @Export("elementsDisabled") boolean elementsDisabled; - @ObfuscatedName("cw") - int field4009; - @ObfuscatedName("cm") + @ObfuscatedName("cf") + int field4033; + @ObfuscatedName("cv") @Export("menuOpcodes") final int[] menuOpcodes; - @ObfuscatedName("cn") - List field4019; - @ObfuscatedName("cs") + @ObfuscatedName("cx") + List field4047; + @ObfuscatedName("cp") @Export("iconIterator") Iterator iconIterator; - @ObfuscatedName("cx") - HashSet field4017; - @ObfuscatedName("cr") + @ObfuscatedName("ce") + HashSet field4045; + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("mouseCoord") Coord mouseCoord; - @ObfuscatedName("cd") + @ObfuscatedName("ct") @Export("showCoord") public boolean showCoord; - @ObfuscatedName("ce") + @ObfuscatedName("cw") @ObfuscatedSignature( - descriptor = "Lui;" + descriptor = "Luz;" ) @Export("sprite") SpritePixels sprite; @ObfuscatedName("cq") @Export("cachedPixelsPerTile") int cachedPixelsPerTile; - @ObfuscatedName("cp") + @ObfuscatedName("cl") @Export("minCachedTileX") int minCachedTileX; - @ObfuscatedName("cv") + @ObfuscatedName("cs") @Export("minCachedTileY") int minCachedTileY; @ObfuscatedName("co") - int field4005; + int field4035; static { fontNameVerdana11 = FontName.FontName_verdana11; @@ -227,30 +227,30 @@ public WorldMap() { this.flashingElements = null; this.flashCount = -1; this.flashCycle = -1; - this.field3991 = -1; - this.field3997 = -1; - this.field3998 = -1; - this.field4002 = -1; - this.field3982 = true; + this.field4024 = -1; + this.field4026 = -1; + this.field4027 = -1; + this.field4029 = -1; + this.field4012 = true; this.enabledElements = new HashSet(); this.enabledCategories = new HashSet(); this.enabledElementIds = new HashSet(); - this.field4012 = new HashSet(); + this.field4043 = new HashSet(); this.elementsDisabled = false; - this.field4009 = 0; + this.field4033 = 0; this.menuOpcodes = new int[]{1008, 1009, 1010, 1011, 1012}; - this.field4017 = new HashSet(); + this.field4045 = new HashSet(); this.mouseCoord = null; this.showCoord = false; this.minCachedTileX = -1; this.minCachedTileY = -1; - this.field4005 = -1; + this.field4035 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;Lnu;Lpi;Ljava/util/HashMap;[Luk;I)V", - garbageValue = "98819926" + descriptor = "(Lol;Lol;Lol;Lpf;Ljava/util/HashMap;[Lup;I)V", + garbageValue = "-686529494" ) @Export("init") public void init(AbstractArchive var1, AbstractArchive var2, AbstractArchive var3, Font var4, HashMap var5, IndexedSprite[] var6) { @@ -264,7 +264,7 @@ public void init(AbstractArchive var1, AbstractArchive var2, AbstractArchive var this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_medium, var5.get(fontNameVerdana13)); this.fonts.put(WorldMapLabelSize.WorldMapLabelSize_large, var5.get(fontNameVerdana15)); this.cacheLoader = new WorldMapArchiveLoader(var1); - int var7 = this.WorldMap_archive.getGroupId(WorldMapCacheName.field2471.name); + int var7 = this.WorldMap_archive.getGroupId(WorldMapCacheName.field2095.name); int[] var8 = this.WorldMap_archive.getGroupFileIds(var7); int var9 = var8 == null ? 0 : var8.length; this.details = new HashMap(var9); @@ -272,7 +272,7 @@ public void init(AbstractArchive var1, AbstractArchive var2, AbstractArchive var for (int var10 = 0; var10 < var9; ++var10) { Buffer var11 = new Buffer(this.WorldMap_archive.takeFile(var7, var8[var10])); WorldMapArea var12 = new WorldMapArea(); - var12.read(var11, var8[var10]); + var12.method1205(var11, var8[var10], Client.param25 >= 217); this.details.put(var12.getInternalName(), var12); if (var12.getIsMain()) { this.mainMapArea = var12; @@ -280,22 +280,22 @@ public void init(AbstractArchive var1, AbstractArchive var2, AbstractArchive var } this.setCurrentMapArea(this.mainMapArea); - this.field4023 = null; + this.field4051 = null; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "58" + descriptor = "(I)V", + garbageValue = "1839563363" ) - public void method2384() { - class18.method56(); + public void method2398() { + WorldMapRegion.WorldMapRegion_cachedSprites.demote(5); } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIZIIIIB)V", - garbageValue = "10" + descriptor = "(IIZIIIII)V", + garbageValue = "-1895076651" ) @Export("onCycle") public void onCycle(int var1, int var2, boolean var3, int var4, int var5, int var6, int var7) { @@ -305,27 +305,27 @@ public void onCycle(int var1, int var2, boolean var3, int var4, int var5, int va if (var3) { int var8 = (int)Math.ceil((double)((float)var6 / this.zoom)); int var9 = (int)Math.ceil((double)((float)var7 / this.zoom)); - List var10 = this.worldMapManager.method1475(this.centerTileX - var8 / 2 - 1, this.centerTileY - var9 / 2 - 1, var8 / 2 + this.centerTileX + 1, var9 / 2 + this.centerTileY + 1, var4, var5, var6, var7, var1, var2); + List var10 = this.worldMapManager.method1270(this.centerTileX - var8 / 2 - 1, this.centerTileY - var9 / 2 - 1, var8 / 2 + this.centerTileX + 1, var9 / 2 + this.centerTileY + 1, var4, var5, var6, var7, var1, var2); HashSet var11 = new HashSet(); Iterator var12; AbstractWorldMapIcon var13; ScriptEvent var14; WorldMapEvent var15; - for (var12 = var10.iterator(); var12.hasNext(); WorldMapSection1.runScriptEvent(var14)) { + for (var12 = var10.iterator(); var12.hasNext(); class157.runScriptEvent(var14)) { var13 = (AbstractWorldMapIcon)var12.next(); var11.add(var13); var14 = new ScriptEvent(); var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); var14.setArgs(new Object[]{var15, var1, var2}); - if (this.field4017.contains(var13)) { + if (this.field4045.contains(var13)) { var14.setType(17); } else { var14.setType(15); } } - var12 = this.field4017.iterator(); + var12 = this.field4045.iterator(); while (var12.hasNext()) { var13 = (AbstractWorldMapIcon)var12.next(); @@ -334,81 +334,84 @@ public void onCycle(int var1, int var2, boolean var3, int var4, int var5, int va var15 = new WorldMapEvent(var13.getElement(), var13.coord1, var13.coord2); var14.setArgs(new Object[]{var15, var1, var2}); var14.setType(16); - WorldMapSection1.runScriptEvent(var14); + class157.runScriptEvent(var14); } } - this.field4017 = var11; + this.field4045 = var11; } } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIZZI)V", - garbageValue = "1934928050" - ) - public void method2386(int var1, int var2, boolean var3, boolean var4) { - long var5; - label33: { - var5 = GameEngine.clockNow(); - this.method2387(var1, var2, var4, var5); - if (!this.hasTarget() && (var4 || var3)) { - boolean var7 = Client.clickedWidget != null; - if (!var7) { - if (var4) { - this.field3998 = var1; - this.field4002 = var2; - this.field3991 = this.centerTileX; - this.field3997 = this.centerTileY; - } - - if (this.field3991 != -1) { - int var8 = var1 - this.field3998; - int var9 = var2 - this.field4002; - this.setWorldMapPosition(this.field3991 - (int)((float)var8 / this.zoomTarget), (int)((float)var9 / this.zoomTarget) + this.field3997, false); - } - break label33; - } + descriptor = "(IIZZS)V", + garbageValue = "4180" + ) + public void method2400(int var1, int var2, boolean var3, boolean var4) { + long var5 = SpotAnimationDefinition.method962(); + this.method2401(var1, var2, var4, var5); + if (!this.hasTarget() && (var4 || var3) && !PacketBufferNode.method1639()) { + if (var4) { + this.field4027 = var1; + this.field4029 = var2; + this.field4024 = this.centerTileX; + this.field4026 = this.centerTileY; } - this.method2391(); + if (this.field4024 != -1) { + int var7 = var1 - this.field4027; + int var8 = var2 - this.field4029; + this.setWorldMapPosition(this.field4024 - (int)((float)var7 / this.zoomTarget), (int)((float)var8 / this.zoomTarget) + this.field4026, false); + } + } else { + this.method2405(); } if (var4) { - this.field4024 = var5; - this.field3992 = var1; - this.field4000 = var2; + this.field4052 = var5; + this.field4032 = var1; + this.field4022 = var2; } } - @ObfuscatedName("ac") - void method2387(int var1, int var2, boolean var3, long var4) { + @ObfuscatedName("ab") + void method2401(int var1, int var2, boolean var3, long var4) { if (this.currentMapArea != null) { int var6 = (int)((float)this.centerTileX + ((float)(var1 - this.worldMapDisplayX) - (float)this.getDisplayWith() * this.zoom / 2.0F) / this.zoom); int var7 = (int)((float)this.centerTileY - ((float)(var2 - this.worldMapDisplayY) - (float)this.getDisplayHeight() * this.zoom / 2.0F) / this.zoom); this.mouseCoord = this.currentMapArea.coord(var6 + this.currentMapArea.getRegionLowX() * 64, var7 + this.currentMapArea.getRegionLowY() * 64); if (this.mouseCoord != null && var3) { - class212 var8 = AbstractWorldMapData.method1526(); - boolean var9 = Client.staffModLevel >= 2; - if (var9 && var8.getKeyPressed(82) && var8.getKeyPressed(81)) { - NPC.method597(this.mouseCoord.x, this.mouseCoord.y, this.mouseCoord.plane, false); + class223 var8 = Client.keyHandlerInstance; + boolean var10 = Client.staffModLevel >= 2; + int var12; + int var13; + if (var10 && var8.getKeyPressed(82) && var8.getKeyPressed(81)) { + int var16 = this.mouseCoord.x; + var12 = this.mouseCoord.y; + var13 = this.mouseCoord.plane; + PacketBufferNode var14 = class113.getPacketBufferNode(ClientPacket.f20, Client.packetWriter.isaacCipher); + var14.packetBuffer.writeInt(0); + var14.packetBuffer.writeShortAddLE(var16); + var14.packetBuffer.writeShortAddLE(var12); + var14.packetBuffer.writeByte(var13); + Client.packetWriter.addNode(var14); } else { - boolean var10 = true; - if (this.field3982) { - int var11 = var1 - this.field3992; - int var12 = var2 - this.field4000; - if (var4 - this.field4024 > 500L || var11 < -25 || var11 > 25 || var12 < -25 || var12 > 25) { - var10 = false; + boolean var11 = true; + if (this.field4012) { + var12 = var1 - this.field4032; + var13 = var2 - this.field4022; + if (var4 - this.field4052 > 500L || var12 < -25 || var12 > 25 || var13 < -25 || var13 > 25) { + var11 = false; } } - if (var10) { - PacketBufferNode var13 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLICKWORLDMAP, Client.packetWriter.isaacCipher); - var13.packetBuffer.writeInt(this.mouseCoord.packed()); - Client.packetWriter.addNode(var13); - this.field4024 = 0L; + if (var11) { + PacketBufferNode var15 = class113.getPacketBufferNode(ClientPacket.field2580, Client.packetWriter.isaacCipher); + var15.packetBuffer.writeIntLE(this.mouseCoord.packed()); + Client.packetWriter.addNode(var15); + this.field4052 = 0L; } } } @@ -418,14 +421,14 @@ void method2387(int var1, int var2, boolean var3, long var4) { } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-12314" + descriptor = "(I)V", + garbageValue = "217198758" ) @Export("smoothZoom") void smoothZoom() { - if (class390.field3656 != null) { + if (MidiPcmStream.field2799 != null) { this.zoom = this.zoomTarget; } else { if (this.zoom < this.zoomTarget) { @@ -439,10 +442,10 @@ void smoothZoom() { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "55" + garbageValue = "84" ) @Export("scrollToTarget") void scrollToTarget() { @@ -466,48 +469,48 @@ void scrollToTarget() { } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(IIZB)V", - garbageValue = "0" + garbageValue = "3" ) @Export("setWorldMapPosition") final void setWorldMapPosition(int var1, int var2, boolean var3) { this.centerTileX = var1; this.centerTileY = var2; - GameEngine.clockNow(); + SpotAnimationDefinition.method962(); if (var3) { - this.method2391(); + this.method2405(); } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "828394242" + garbageValue = "1741658330" ) - final void method2391() { - this.field4002 = -1; - this.field3998 = -1; - this.field3997 = -1; - this.field3991 = -1; + final void method2405() { + this.field4029 = -1; + this.field4027 = -1; + this.field4026 = -1; + this.field4024 = -1; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-778313072" + garbageValue = "-357792182" ) @Export("hasTarget") boolean hasTarget() { return this.worldMapTargetX != -1 && this.worldMapTargetY != -1; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IIII)Ljf;", - garbageValue = "442093441" + descriptor = "(IIII)Ljv;", + garbageValue = "-472972186" ) @Export("mapAreaAtCoord") public WorldMapArea mapAreaAtCoord(int var1, int var2, int var3) { @@ -525,12 +528,12 @@ public WorldMapArea mapAreaAtCoord(int var1, int var2, int var3) { return var5; } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( descriptor = "(IIIZB)V", - garbageValue = "88" + garbageValue = "-68" ) - public void method2394(int var1, int var2, int var3, boolean var4) { + public void method2408(int var1, int var2, int var3, boolean var4) { WorldMapArea var5 = this.mapAreaAtCoord(var1, var2, var3); if (var5 == null) { if (!var4) { @@ -541,8 +544,8 @@ public void method2394(int var1, int var2, int var3, boolean var4) { } boolean var6 = false; - if (var5 != this.field4023 || var4) { - this.field4023 = var5; + if (var5 != this.field4051 || var4) { + this.field4051 = var5; this.setCurrentMapArea(var5); var6 = true; } @@ -553,10 +556,10 @@ public void method2394(int var1, int var2, int var3, boolean var4) { } - @ObfuscatedName("al") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "114" + descriptor = "(IS)V", + garbageValue = "-16384" ) @Export("setCurrentMapAreaId") public void setCurrentMapAreaId(int var1) { @@ -567,30 +570,30 @@ public void setCurrentMapAreaId(int var1) { } - @ObfuscatedName("an") + @ObfuscatedName("as") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "2135473352" + garbageValue = "-370898847" ) @Export("currentMapAreaId") public int currentMapAreaId() { return this.currentMapArea == null ? -1 : this.currentMapArea.getId(); } - @ObfuscatedName("ar") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(B)Ljf;", - garbageValue = "122" + descriptor = "(S)Ljv;", + garbageValue = "2772" ) @Export("getCurrentMapArea") public WorldMapArea getCurrentMapArea() { return this.currentMapArea; } - @ObfuscatedName("ab") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-824827052" + descriptor = "(Ljv;I)V", + garbageValue = "724172563" ) @Export("setCurrentMapArea") void setCurrentMapArea(WorldMapArea var1) { @@ -600,10 +603,10 @@ void setCurrentMapArea(WorldMapArea var1) { } } - @ObfuscatedName("ag") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "1970114808" + descriptor = "(Ljv;B)V", + garbageValue = "6" ) @Export("initializeWorldMapManager") void initializeWorldMapManager(WorldMapArea var1) { @@ -614,10 +617,10 @@ void initializeWorldMapManager(WorldMapArea var1) { @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(Ljf;Lmc;Lmc;ZI)V", - garbageValue = "137024863" + descriptor = "(Ljv;Lmh;Lmh;ZB)V", + garbageValue = "62" ) - public void method2400(WorldMapArea var1, Coord var2, Coord var3, boolean var4) { + public void method2414(WorldMapArea var1, Coord var2, Coord var3, boolean var4) { if (var1 != null) { if (this.currentMapArea == null || var1 != this.currentMapArea) { this.initializeWorldMapManager(var1); @@ -632,10 +635,10 @@ public void method2400(WorldMapArea var1, Coord var2, Coord var3, boolean var4) } } - @ObfuscatedName("ax") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(IIIB)V", - garbageValue = "1" + garbageValue = "0" ) @Export("jump") void jump(int var1, int var2, int var3) { @@ -650,34 +653,34 @@ void jump(int var1, int var2, int var3) { this.worldMapTargetY = -1; this.zoom = this.getZoomFromPercentage(this.currentMapArea.getZoom()); this.zoomTarget = this.zoom; - this.field4019 = null; + this.field4047 = null; this.iconIterator = null; this.worldMapManager.clearIcons(); } } - @ObfuscatedName("ah") + @ObfuscatedName("ai") @ObfuscatedSignature( descriptor = "(IIIIIB)V", - garbageValue = "-27" + garbageValue = "24" ) @Export("draw") public void draw(int var1, int var2, int var3, int var4, int var5) { int[] var6 = new int[4]; Rasterizer2D.Rasterizer2D_getClipArray(var6); Rasterizer2D.Rasterizer2D_setClip(var1, var2, var3 + var1, var2 + var4); - Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); int var7 = this.cacheLoader.getPercentLoaded(); if (var7 < 100) { this.drawLoading(var1, var2, var3, var4, var7); } else { if (!this.worldMapManager.isLoaded()) { - this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); + this.worldMapManager.method1264(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld, Client.param25 >= 217); if (!this.worldMapManager.isLoaded()) { return; } } + Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, this.worldMapManager.method1273()); if (this.flashingElements != null) { ++this.flashCycle; if (this.flashCycle % this.cyclesPerFlash == 0) { @@ -696,15 +699,15 @@ public void draw(int var1, int var2, int var3, int var4, int var5) { boolean var10; if (!this.elementsDisabled) { var10 = false; - if (var5 - this.field4009 > 100) { - this.field4009 = var5; + if (var5 - this.field4033 > 100) { + this.field4033 = var5; var10 = true; } - this.worldMapManager.drawElements(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4, this.field4012, this.flashingElements, this.flashCycle, this.cyclesPerFlash, var10); + this.worldMapManager.drawElements(this.centerTileX - var8 / 2, this.centerTileY - var9 / 2, var8 / 2 + this.centerTileX, var9 / 2 + this.centerTileY, var1, var2, var3 + var1, var2 + var4, this.field4043, this.flashingElements, this.flashCycle, this.cyclesPerFlash, var10); } - this.method2404(var1, var2, var3, var4, var8, var9); + this.method2418(var1, var2, var3, var4, var8, var9); var10 = Client.staffModLevel >= 2; if (var10 && this.showCoord && this.mouseCoord != null) { this.font.draw("Coord: " + this.mouseCoord, Rasterizer2D.Rasterizer2D_xClipStart + 10, Rasterizer2D.Rasterizer2D_yClipStart + 20, 16776960, -1); @@ -718,18 +721,18 @@ public void draw(int var1, int var2, int var3, int var4, int var5) { } } - @ObfuscatedName("as") + @ObfuscatedName("aw") @ObfuscatedSignature( descriptor = "(IIIIIII)Z", - garbageValue = "1770915871" + garbageValue = "-2129366613" ) - boolean method2403(int var1, int var2, int var3, int var4, int var5, int var6) { + boolean method2417(int var1, int var2, int var3, int var4, int var5, int var6) { if (this.sprite == null) { return true; } else if (this.sprite.subWidth == var1 && this.sprite.subHeight == var2) { if (this.worldMapManager.pixelsPerTile != this.cachedPixelsPerTile) { return true; - } else if (this.field4005 != Client.field369) { + } else if (this.field4035 != Client.field369) { return true; } else if (var3 <= 0 && var4 <= 0) { return var3 + var1 < var5 || var2 + var4 < var6; @@ -741,13 +744,13 @@ boolean method2403(int var1, int var2, int var3, int var4, int var5, int var6) { } } - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(IIIIIIS)V", - garbageValue = "512" + descriptor = "(IIIIIII)V", + garbageValue = "1396727376" ) - void method2404(int var1, int var2, int var3, int var4, int var5, int var6) { - if (class390.field3656 != null) { + void method2418(int var1, int var2, int var3, int var4, int var5, int var6) { + if (MidiPcmStream.field2799 != null) { int var7 = 512 / (this.worldMapManager.pixelsPerTile * 2); int var8 = var3 + 512; int var9 = var4 + 512; @@ -758,7 +761,7 @@ void method2404(int var1, int var2, int var3, int var4, int var5, int var6) { int var12 = this.getDisplayY() - var6 / 2 - var7; int var13 = var1 - (var11 + var7 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; int var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); - if (this.method2403(var8, var9, var13, var14, var3, var4)) { + if (this.method2417(var8, var9, var13, var14, var3, var4)) { if (this.sprite != null && this.sprite.subWidth == var8 && this.sprite.subHeight == var9) { Arrays.fill(this.sprite.pixels, 0); } else { @@ -768,32 +771,32 @@ void method2404(int var1, int var2, int var3, int var4, int var5, int var6) { this.minCachedTileX = this.getDisplayX() - var5 / 2 - var7; this.minCachedTileY = this.getDisplayY() - var6 / 2 - var7; this.cachedPixelsPerTile = this.worldMapManager.pixelsPerTile; - class390.field3656.method1965(this.minCachedTileX, this.minCachedTileY, this.sprite, (float)this.cachedPixelsPerTile / var10); - this.field4005 = Client.field369; + MidiPcmStream.field2799.method1987(this.minCachedTileX, this.minCachedTileY, this.sprite, (float)this.cachedPixelsPerTile / var10); + this.field4035 = Client.field369; var13 = var1 - (var7 + var11 - this.minCachedTileX) * this.worldMapManager.pixelsPerTile; var14 = var2 - this.worldMapManager.pixelsPerTile * (var7 - (var12 - this.minCachedTileY)); } Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var1, var2, var3, var4, 0, 128); - if (var10 == 1.0F) { - this.sprite.method2678(var13, var14, 192); + if (1.0F == var10) { + this.sprite.method2695(var13, var14, 192); } else { - this.sprite.method2681(var13, var14, (int)((float)var8 * var10), (int)(var10 * (float)var9), 192); + this.sprite.method2698(var13, var14, (int)((float)var8 * var10), (int)((float)var9 * var10), 192); } } } - @ObfuscatedName("aj") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "1287385022" + descriptor = "(IIIIB)V", + garbageValue = "51" ) @Export("drawOverview") public void drawOverview(int var1, int var2, int var3, int var4) { if (this.cacheLoader.isLoaded()) { if (!this.worldMapManager.isLoaded()) { - this.worldMapManager.load(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld); + this.worldMapManager.method1264(this.WorldMap_archive, this.currentMapArea.getInternalName(), Client.isMembersWorld, Client.param25 >= 217); if (!this.worldMapManager.isLoaded()) { return; } @@ -803,20 +806,20 @@ public void drawOverview(int var1, int var2, int var3, int var4) { } } - @ObfuscatedName("av") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-2033911390" + descriptor = "(IB)V", + garbageValue = "0" ) @Export("setZoomPercentage") public void setZoomPercentage(int var1) { this.zoomTarget = this.getZoomFromPercentage(var1); } - @ObfuscatedName("aw") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(IIIIIB)V", - garbageValue = "4" + descriptor = "(IIIIII)V", + garbageValue = "-699862709" ) @Export("drawLoading") void drawLoading(int var1, int var2, int var3, int var4, int var5) { @@ -826,13 +829,13 @@ void drawLoading(int var1, int var2, int var3, int var4, int var5) { Rasterizer2D.Rasterizer2D_fillRectangle(var1, var2, var3, var4, -16777216); Rasterizer2D.Rasterizer2D_drawRectangle(var7 - 152, var8, 304, 34, -65536); Rasterizer2D.Rasterizer2D_fillRectangle(var7 - 150, var8 + 2, var5 * 3, 30, -65536); - this.font.drawCentered("Loading...", var7, var6 + var8, -1, -1); + this.font.drawCentered("Loading...", var7, var8 + var6, -1, -1); } - @ObfuscatedName("ak") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(II)F", - garbageValue = "818777880" + descriptor = "(IB)F", + garbageValue = "31" ) @Export("getZoomFromPercentage") float getZoomFromPercentage(int var1) { @@ -849,50 +852,50 @@ float getZoomFromPercentage(int var1) { } } - @ObfuscatedName("bh") + @ObfuscatedName("be") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2077099147" + garbageValue = "1066219424" ) @Export("getZoomLevel") public int getZoomLevel() { if ((double)this.zoomTarget == 1.0D) { return 25; - } else if (1.5D == (double)this.zoomTarget) { + } else if ((double)this.zoomTarget == 1.5D) { return 37; - } else if ((double)this.zoomTarget == 2.0D) { + } else if (2.0D == (double)this.zoomTarget) { return 50; - } else if (3.0D == (double)this.zoomTarget) { + } else if ((double)this.zoomTarget == 3.0D) { return 75; } else { return 4.0D == (double)this.zoomTarget ? 100 : 200; } } - @ObfuscatedName("bj") + @ObfuscatedName("bd") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "25" + garbageValue = "123" ) @Export("loadCache") public void loadCache() { this.cacheLoader.load(); } - @ObfuscatedName("bk") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-9" + descriptor = "(I)Z", + garbageValue = "369984889" ) @Export("isCacheLoaded") public boolean isCacheLoaded() { return this.cacheLoader.isLoaded(); } - @ObfuscatedName("bv") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "(IB)Ljf;", - garbageValue = "-2" + descriptor = "(II)Ljv;", + garbageValue = "1808256615" ) @Export("getMapArea") public WorldMapArea getMapArea(int var1) { @@ -910,10 +913,10 @@ public WorldMapArea getMapArea(int var1) { return var3; } - @ObfuscatedName("bt") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-48" + descriptor = "(III)V", + garbageValue = "-678637606" ) @Export("setWorldMapPositionTarget") public void setWorldMapPositionTarget(int var1, int var2) { @@ -923,10 +926,10 @@ public void setWorldMapPositionTarget(int var1, int var2) { } } - @ObfuscatedName("bd") + @ObfuscatedName("bf") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "-2049902032" + garbageValue = "-1573739056" ) @Export("setWorldMapPositionTargetInstant") public void setWorldMapPositionTargetInstant(int var1, int var2) { @@ -937,10 +940,10 @@ public void setWorldMapPositionTargetInstant(int var1, int var2) { } } - @ObfuscatedName("by") + @ObfuscatedName("bg") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "-2060098285" + garbageValue = "-13928817" ) @Export("jumpToSourceCoord") public void jumpToSourceCoord(int var1, int var2, int var3) { @@ -953,10 +956,10 @@ public void jumpToSourceCoord(int var1, int var2, int var3) { } } - @ObfuscatedName("bs") + @ObfuscatedName("ba") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "-843499026" + garbageValue = "996468240" ) @Export("jumpToSourceCoordInstant") public void jumpToSourceCoordInstant(int var1, int var2, int var3) { @@ -971,58 +974,58 @@ public void jumpToSourceCoordInstant(int var1, int var2, int var3) { @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "825863248" + descriptor = "(B)I", + garbageValue = "-43" ) @Export("getDisplayX") public int getDisplayX() { return this.currentMapArea == null ? -1 : this.centerTileX + this.currentMapArea.getRegionLowX() * 64; } - @ObfuscatedName("bf") + @ObfuscatedName("bp") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "388146570" + garbageValue = "-853833323" ) @Export("getDisplayY") public int getDisplayY() { return this.currentMapArea == null ? -1 : this.centerTileY + this.currentMapArea.getRegionLowY() * 64; } - @ObfuscatedName("bq") + @ObfuscatedName("bw") @ObfuscatedSignature( - descriptor = "(I)Lmc;", - garbageValue = "1721090019" + descriptor = "(B)Lmh;", + garbageValue = "0" ) @Export("getDisplayCoord") public Coord getDisplayCoord() { return this.currentMapArea == null ? null : this.currentMapArea.coord(this.getDisplayX(), this.getDisplayY()); } - @ObfuscatedName("ba") + @ObfuscatedName("bj") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-866759946" + garbageValue = "537116922" ) @Export("getDisplayWith") public int getDisplayWith() { return this.worldMapDisplayWidth; } - @ObfuscatedName("bl") + @ObfuscatedName("bn") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1144156363" + garbageValue = "1296388714" ) @Export("getDisplayHeight") public int getDisplayHeight() { return this.worldMapDisplayHeight; } - @ObfuscatedName("bp") + @ObfuscatedName("bo") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "368918336" + garbageValue = "-857515700" ) @Export("setMaxFlashCount") public void setMaxFlashCount(int var1) { @@ -1032,20 +1035,20 @@ public void setMaxFlashCount(int var1) { } - @ObfuscatedName("bu") + @ObfuscatedName("bt") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "74" + descriptor = "(I)V", + garbageValue = "1866064784" ) @Export("resetMaxFlashCount") public void resetMaxFlashCount() { this.maxFlashCount = 3; } - @ObfuscatedName("bo") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "(IS)V", - garbageValue = "-30765" + descriptor = "(IB)V", + garbageValue = "-90" ) @Export("setCyclesPerFlash") public void setCyclesPerFlash(int var1) { @@ -1055,30 +1058,30 @@ public void setCyclesPerFlash(int var1) { } - @ObfuscatedName("bb") + @ObfuscatedName("by") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1849662360" + garbageValue = "1119701020" ) @Export("resetCyclesPerFlash") public void resetCyclesPerFlash() { this.cyclesPerFlash = 50; } - @ObfuscatedName("br") + @ObfuscatedName("bh") @ObfuscatedSignature( descriptor = "(ZI)V", - garbageValue = "21297146" + garbageValue = "1336488312" ) @Export("setPerpetualFlash") public void setPerpetualFlash(boolean var1) { this.perpetualFlash = var1; } - @ObfuscatedName("be") + @ObfuscatedName("bz") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1601393714" + descriptor = "(IB)V", + garbageValue = "41" ) @Export("flashElement") public void flashElement(int var1) { @@ -1088,10 +1091,10 @@ public void flashElement(int var1) { this.flashCycle = 0; } - @ObfuscatedName("bi") + @ObfuscatedName("bc") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "1527059240" + garbageValue = "-1850840845" ) @Export("flashCategory") public void flashCategory(int var1) { @@ -1099,18 +1102,18 @@ public void flashCategory(int var1) { this.flashCount = 0; this.flashCycle = 0; - for (int var2 = 0; var2 < WorldMapElement.WorldMapElement_count; ++var2) { - if (class138.WorldMapElement_get(var2) != null && class138.WorldMapElement_get(var2).category == var1) { - this.flashingElements.add(class138.WorldMapElement_get(var2).objectId); + for (int var2 = 0; var2 < class137.WorldMapElement_count; ++var2) { + if (class141.WorldMapElement_get(var2) != null && class141.WorldMapElement_get(var2).category == var1) { + this.flashingElements.add(class141.WorldMapElement_get(var2).objectId); } } } - @ObfuscatedName("bz") + @ObfuscatedName("bs") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2116976270" + garbageValue = "1649001731" ) @Export("stopCurrentFlashes") public void stopCurrentFlashes() { @@ -1119,18 +1122,18 @@ public void stopCurrentFlashes() { @ObfuscatedName("bx") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1671616581" + descriptor = "(ZB)V", + garbageValue = "0" ) @Export("setElementsDisabled") public void setElementsDisabled(boolean var1) { this.elementsDisabled = !var1; } - @ObfuscatedName("bn") + @ObfuscatedName("bb") @ObfuscatedSignature( descriptor = "(IZB)V", - garbageValue = "123" + garbageValue = "125" ) @Export("disableElement") public void disableElement(int var1, boolean var2) { @@ -1140,13 +1143,13 @@ public void disableElement(int var1, boolean var2) { this.enabledElements.remove(var1); } - this.method2436(); + this.method2450(); } - @ObfuscatedName("bw") + @ObfuscatedName("bk") @ObfuscatedSignature( - descriptor = "(IZB)V", - garbageValue = "-9" + descriptor = "(IZI)V", + garbageValue = "1569784149" ) @Export("setCategoryDisabled") public void setCategoryDisabled(int var1, boolean var2) { @@ -1156,9 +1159,9 @@ public void setCategoryDisabled(int var1, boolean var2) { this.enabledCategories.remove(var1); } - for (int var3 = 0; var3 < WorldMapElement.WorldMapElement_count; ++var3) { - if (class138.WorldMapElement_get(var3) != null && class138.WorldMapElement_get(var3).category == var1) { - int var4 = class138.WorldMapElement_get(var3).objectId; + for (int var3 = 0; var3 < class137.WorldMapElement_count; ++var3) { + if (class141.WorldMapElement_get(var3) != null && class141.WorldMapElement_get(var3).category == var1) { + int var4 = class141.WorldMapElement_get(var3).objectId; if (!var2) { this.enabledElementIds.add(var4); } else { @@ -1167,61 +1170,61 @@ public void setCategoryDisabled(int var1, boolean var2) { } } - this.method2436(); + this.method2450(); } - @ObfuscatedName("bc") + @ObfuscatedName("br") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-441970496" + descriptor = "(B)Z", + garbageValue = "41" ) @Export("getElementsDisabled") public boolean getElementsDisabled() { return !this.elementsDisabled; } - @ObfuscatedName("bg") + @ObfuscatedName("bq") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "115" + descriptor = "(II)Z", + garbageValue = "2012466674" ) @Export("isElementDisabled") public boolean isElementDisabled(int var1) { return !this.enabledElements.contains(var1); } - @ObfuscatedName("cw") + @ObfuscatedName("cf") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-638712237" + garbageValue = "-1791520679" ) @Export("isCategoryDisabled") public boolean isCategoryDisabled(int var1) { return !this.enabledCategories.contains(var1); } - @ObfuscatedName("cf") + @ObfuscatedName("cg") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-444126949" + descriptor = "(B)V", + garbageValue = "96" ) - void method2436() { - this.field4012.clear(); - this.field4012.addAll(this.enabledElements); - this.field4012.addAll(this.enabledElementIds); + void method2450() { + this.field4043.clear(); + this.field4043.addAll(this.enabledElements); + this.field4043.addAll(this.enabledElementIds); } - @ObfuscatedName("cm") + @ObfuscatedName("cv") @ObfuscatedSignature( descriptor = "(IIIIIII)V", - garbageValue = "2039788697" + garbageValue = "-1420454539" ) @Export("addElementMenuOptions") public void addElementMenuOptions(int var1, int var2, int var3, int var4, int var5, int var6) { if (this.cacheLoader.isLoaded()) { int var7 = (int)Math.ceil((double)((float)var3 / this.zoom)); int var8 = (int)Math.ceil((double)((float)var4 / this.zoom)); - List var9 = this.worldMapManager.method1475(this.centerTileX - var7 / 2 - 1, this.centerTileY - var8 / 2 - 1, var7 / 2 + this.centerTileX + 1, var8 / 2 + this.centerTileY + 1, var1, var2, var3, var4, var5, var6); + List var9 = this.worldMapManager.method1270(this.centerTileX - var7 / 2 - 1, this.centerTileY - var8 / 2 - 1, var7 / 2 + this.centerTileX + 1, var8 / 2 + this.centerTileY + 1, var1, var2, var3, var4, var5, var6); if (!var9.isEmpty()) { Iterator var10 = var9.iterator(); @@ -1232,12 +1235,12 @@ public void addElementMenuOptions(int var1, int var2, int var3, int var4, int va } AbstractWorldMapIcon var11 = (AbstractWorldMapIcon)var10.next(); - WorldMapElement var12 = class138.WorldMapElement_get(var11.getElement()); + WorldMapElement var12 = class141.WorldMapElement_get(var11.getElement()); var13 = false; for (int var14 = this.menuOpcodes.length - 1; var14 >= 0; --var14) { if (var12.menuActions[var14] != null) { - class385.insertMenuItemNoShift(var12.menuActions[var14], var12.menuTargetName, this.menuOpcodes[var14], var11.getElement(), var11.coord1.packed(), var11.coord2.packed()); + WorldMapSectionType.insertMenuItemNoShift(var12.menuActions[var14], var12.menuTargetName, this.menuOpcodes[var14], var11.getElement(), var11.coord1.packed(), var11.coord2.packed()); var13 = true; } } @@ -1247,12 +1250,12 @@ public void addElementMenuOptions(int var1, int var2, int var3, int var4, int va } } - @ObfuscatedName("cn") + @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "(ILmc;I)Lmc;", - garbageValue = "501302871" + descriptor = "(ILmh;I)Lmh;", + garbageValue = "1628169243" ) - public Coord method2438(int var1, Coord var2) { + public Coord method2452(int var1, Coord var2) { if (!this.cacheLoader.isLoaded()) { return null; } else if (!this.worldMapManager.isLoaded()) { @@ -1293,10 +1296,10 @@ public Coord method2438(int var1, Coord var2) { } } - @ObfuscatedName("cs") + @ObfuscatedName("cp") @ObfuscatedSignature( - descriptor = "(IILmc;Lmc;I)V", - garbageValue = "-634310433" + descriptor = "(IILmh;Lmh;B)V", + garbageValue = "84" ) @Export("worldMapMenuAction") public void worldMapMenuAction(int var1, int var2, Coord var3, Coord var4) { @@ -1320,13 +1323,13 @@ public void worldMapMenuAction(int var1, int var2, Coord var3, Coord var4) { var5.setType(14); } - WorldMapSection1.runScriptEvent(var5); + class157.runScriptEvent(var5); } - @ObfuscatedName("cx") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(I)Lkp;", - garbageValue = "1868927893" + descriptor = "(B)Ljc;", + garbageValue = "-80" ) @Export("iconStart") public AbstractWorldMapIcon iconStart() { @@ -1336,23 +1339,23 @@ public AbstractWorldMapIcon iconStart() { return null; } else { HashMap var1 = this.worldMapManager.buildIcons(); - this.field4019 = new LinkedList(); + this.field4047 = new LinkedList(); Iterator var2 = var1.values().iterator(); while (var2.hasNext()) { List var3 = (List)var2.next(); - this.field4019.addAll(var3); + this.field4047.addAll(var3); } - this.iconIterator = this.field4019.iterator(); + this.iconIterator = this.field4047.iterator(); return this.iconNext(); } } - @ObfuscatedName("cr") + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "(I)Lkp;", - garbageValue = "-4783763" + descriptor = "(B)Ljc;", + garbageValue = "94" ) @Export("iconNext") public AbstractWorldMapIcon iconNext() { @@ -1372,334 +1375,92 @@ public AbstractWorldMapIcon iconNext() { } } - @ObfuscatedName("af") + @ObfuscatedName("it") @ObfuscatedSignature( - descriptor = "(Lmi;I[B[BI)V", - garbageValue = "359324490" + descriptor = "(Ldf;I)V", + garbageValue = "-921124497" ) - @Export("Widget_setKey") - static final void Widget_setKey(Widget var0, int var1, byte[] var2, byte[] var3) { - if (var0.field2977 == null) { - if (var2 == null) { - return; + static final void method2456(Actor var0) { + int var2; + int var3; + int var4; + if (var0.targetIndex != -1) { + Object var1 = null; + var2 = 65536; + if (var0.targetIndex < var2) { + var1 = Client.npcs[var0.targetIndex]; + } else { + var1 = Client.players[var0.targetIndex - var2]; } - var0.field2977 = new byte[11][]; - var0.field2978 = new byte[11][]; - var0.field3047 = new int[11]; - var0.field3046 = new int[11]; - } - - var0.field2977[var1] = var2; - if (var2 != null) { - var0.field2969 = true; - } else { - var0.field2969 = false; - - for (int var4 = 0; var4 < var0.field2977.length; ++var4) { - if (var0.field2977[var4] != null) { - var0.field2969 = true; - break; + if (var1 != null) { + var3 = var0.x - ((Actor)var1).x; + var4 = var0.y - ((Actor)var1).y; + if (var3 != 0 || var4 != 0) { + var0.orientation = SequenceDefinition.method1040(var3, var4); } + } else if (var0.false0) { + var0.targetIndex = -1; + var0.false0 = false; } } - var0.field2978[var1] = var3; - } - - @ObfuscatedName("kr") - @ObfuscatedSignature( - descriptor = "(IIIIIIIII)V", - garbageValue = "-1305820605" - ) - @Export("addPendingSpawnToScene") - static final void addPendingSpawnToScene(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (var2 >= 1 && var3 >= 1 && var2 <= 102 && var3 <= 102) { - if (Client.isLowDetail && var0 != HealthBar.Client_plane) { - return; - } - - long var8 = 0L; - boolean var10 = true; - boolean var11 = false; - boolean var12 = false; - if (var1 == 0) { - var8 = class130.scene.getBoundaryObjectTag(var0, var2, var3); - } - - if (var1 == 1) { - var8 = class130.scene.getWallDecorationTag(var0, var2, var3); - } - - if (var1 == 2) { - var8 = class130.scene.getGameObjectTag(var0, var2, var3); - } - - if (var1 == 3) { - var8 = class130.scene.getFloorDecorationTag(var0, var2, var3); - } - - int var13; - if (var8 != 0L) { - var13 = class130.scene.getObjectFlags(var0, var2, var3, var8); - int var41 = InvDefinition.Entity_unpackID(var8); - int var42 = var13 & 31; - int var43 = var13 >> 6 & 3; - ObjectComposition var14; - if (var1 == 0) { - class130.scene.removeBoundaryObject(var0, var2, var3); - var14 = WorldMapElement.getObjectDefinition(var41); - if (var14.interactType != 0) { - Client.collisionMaps[var0].method1118(var2, var3, var42, var43, var14.boolean1); - } - } - - if (var1 == 1) { - class130.scene.removeWallDecoration(var0, var2, var3); - } - - if (var1 == 2) { - class130.scene.removeGameObject(var0, var2, var3); - var14 = WorldMapElement.getObjectDefinition(var41); - if (var2 + var14.sizeX > 103 || var3 + var14.sizeX > 103 || var2 + var14.sizeY > 103 || var3 + var14.sizeY > 103) { - return; - } - - if (var14.interactType != 0) { - Client.collisionMaps[var0].setFlagOffNonSquare(var2, var3, var14.sizeX, var14.sizeY, var43, var14.boolean1); - } - } - - if (var1 == 3) { - class130.scene.removeFloorDecoration(var0, var2, var3); - var14 = WorldMapElement.getObjectDefinition(var41); - if (var14.interactType == 1) { - Client.collisionMaps[var0].method1121(var2, var3); - } + int var7; + if (var0.pathLength == 0 || var0.field1028 > 0) { + var7 = -1; + if (var0.field995 != -1 && var0.field997 != -1) { + var2 = var0.field995 * 128 - NewShit.baseX * 128 + 64; + var3 = var0.field997 * 128 - class101.baseY * 128 + 64; + var4 = var0.x - var2; + int var5 = var0.y - var3; + if (var4 != 0 || var5 != 0) { + var7 = SequenceDefinition.method1040(var4, var5); } + } else if (var0.movingOrientation != -1) { + var7 = var0.movingOrientation; } - if (var4 >= 0) { - var13 = var0; - if (var0 < 3 && (Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { - var13 = var0 + 1; + if (var7 != -1) { + var0.orientation = var7; + if (var0.field969) { + var0.rotation = var0.orientation; } + } - Scene var44 = class130.scene; - CollisionMap var15 = Client.collisionMaps[var0]; - ObjectComposition var16 = WorldMapElement.getObjectDefinition(var4); - int var17 = var7 >= 0 ? var7 : var16.animationId * -888756473 * -671344969; - int var18; - int var19; - if (var5 != 1 && var5 != 3) { - var18 = var16.sizeX; - var19 = var16.sizeY; - } else { - var18 = var16.sizeY; - var19 = var16.sizeX; - } + var0.method515(); + } - int var20; - int var21; - if (var18 + var2 <= 104) { - var20 = (var18 >> 1) + var2; - var21 = var2 + (var18 + 1 >> 1); - } else { - var20 = var2; - var21 = var2 + 1; - } + var7 = var0.orientation - var0.rotation & 2047; + if (var7 != 0) { + boolean var8 = true; + boolean var9 = true; + ++var0.field1011; + var4 = var7 > 1024 ? -1 : 1; + var0.rotation += var0.field1018 * var4; + boolean var10 = true; + if (var7 < var0.field1018 || var7 > 2048 - var0.field1018) { + var0.rotation = var0.orientation; + var10 = false; + } - int var22; - int var23; - if (var3 + var19 <= 104) { - var22 = var3 + (var19 >> 1); - var23 = var3 + (var19 + 1 >> 1); + if (var0.field1018 > 0 && var0.movementSequence == var0.idleSequence && (var0.field1011 > 25 || var10)) { + if (var4 == -1 && var0.turnLeftSequence != -1) { + var0.movementSequence = var0.turnLeftSequence; + } else if (var4 == 1 && var0.turnRightSequence != -1) { + var0.movementSequence = var0.turnRightSequence; } else { - var22 = var3; - var23 = var3 + 1; + var0.movementSequence = var0.walkSequence; } + } - int[][] var24 = Tiles.Tiles_heights[var13]; - int var25 = var24[var21][var22] + var24[var20][var22] + var24[var20][var23] + var24[var21][var23] >> 2; - int var26 = (var2 << 7) + (var18 << 6); - int var27 = (var3 << 7) + (var19 << 6); - long var28 = FontName.calculateTag(var2, var3, 2, var16.int1 == 0, var4); - int var30 = (var5 << 6) + var6; - if (var16.int3 == 1) { - var30 += 256; - } - - Object var31; - if (var6 == 22) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(22, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 22, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newFloorDecoration(var0, var2, var3, var25, (Renderable)var31, var28, var30); - if (var16.interactType == 1) { - var15.setBlockedByFloorDec(var2, var3); - } - } else if (var6 != 10 && var6 != 11) { - if (var6 >= 12) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(var6, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, var6, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.method1243(var0, var2, var3, var25, 1, 1, (Renderable)var31, 0, var28, var30); - if (var16.interactType != 0) { - var15.addGameObject(var2, var3, var18, var19, var16.boolean1); - } - } else if (var6 == 0) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(0, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 0, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field844[var5], 0, var28, var30); - if (var16.interactType != 0) { - var15.method1113(var2, var3, var6, var5, var16.boolean1); - } - } else if (var6 == 1) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(1, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 1, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field840[var5], 0, var28, var30); - if (var16.interactType != 0) { - var15.method1113(var2, var3, var6, var5, var16.boolean1); - } - } else { - int var37; - if (var6 == 2) { - var37 = var5 + 1 & 3; - Object var32; - Object var33; - if (var17 == -1 && var16.transforms == null) { - var32 = var16.getModel(2, var5 + 4, var24, var26, var25, var27); - var33 = var16.getModel(2, var37, var24, var26, var25, var27); - } else { - var32 = new DynamicObject(var4, 2, var5 + 4, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - var33 = new DynamicObject(var4, 2, var37, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newBoundaryObject(var0, var2, var3, var25, (Renderable)var32, (Renderable)var33, Tiles.field844[var5], Tiles.field844[var37], var28, var30); - if (var16.interactType != 0) { - var15.method1113(var2, var3, var6, var5, var16.boolean1); - } - } else if (var6 == 3) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(3, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 3, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field840[var5], 0, var28, var30); - if (var16.interactType != 0) { - var15.method1113(var2, var3, var6, var5, var16.boolean1); - } - } else if (var6 == 9) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(var6, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, var6, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.method1243(var0, var2, var3, var25, 1, 1, (Renderable)var31, 0, var28, var30); - if (var16.interactType != 0) { - var15.addGameObject(var2, var3, var18, var19, var16.boolean1); - } - } else if (var6 == 4) { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(4, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 4, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newWallDecoration(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field844[var5], 0, 0, 0, var28, var30); - } else { - Object var34; - long var38; - if (var6 == 5) { - var37 = 16; - var38 = var44.getBoundaryObjectTag(var0, var2, var3); - if (var38 != 0L) { - var37 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var38)).int2; - } - - if (var17 == -1 && var16.transforms == null) { - var34 = var16.getModel(4, var5, var24, var26, var25, var27); - } else { - var34 = new DynamicObject(var4, 4, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)null, Tiles.field844[var5], 0, var37 * Tiles.field842[var5], var37 * Tiles.field845[var5], var28, var30); - } else if (var6 == 6) { - var37 = 8; - var38 = var44.getBoundaryObjectTag(var0, var2, var3); - if (var38 != 0L) { - var37 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var38)).int2 / 2; - } - - if (var17 == -1 && var16.transforms == null) { - var34 = var16.getModel(4, var5 + 4, var24, var26, var25, var27); - } else { - var34 = new DynamicObject(var4, 4, var5 + 4, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)null, 256, var5, var37 * Tiles.field841[var5], var37 * Tiles.field843[var5], var28, var30); - } else if (var6 == 7) { - int var40 = var5 + 2 & 3; - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(4, var40 + 4, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 4, var40 + 4, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newWallDecoration(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, 256, var40, 0, 0, var28, var30); - } else if (var6 == 8) { - var37 = 8; - var38 = var44.getBoundaryObjectTag(var0, var2, var3); - if (0L != var38) { - var37 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var38)).int2 / 2; - } - - int var36 = var5 + 2 & 3; - Object var35; - if (var17 == -1 && var16.transforms == null) { - var34 = var16.getModel(4, var5 + 4, var24, var26, var25, var27); - var35 = var16.getModel(4, var36 + 4, var24, var26, var25, var27); - } else { - var34 = new DynamicObject(var4, 4, var5 + 4, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - var35 = new DynamicObject(var4, 4, var36 + 4, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - var44.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)var35, 256, var5, var37 * Tiles.field841[var5], var37 * Tiles.field843[var5], var28, var30); - } - } - } - } else { - if (var17 == -1 && var16.transforms == null) { - var31 = var16.getModel(10, var5, var24, var26, var25, var27); - } else { - var31 = new DynamicObject(var4, 10, var5, var13, var2, var3, var17, var16.boolean3, (Renderable)null); - } - - if (var31 != null) { - var44.method1243(var0, var2, var3, var25, var18, var19, (Renderable)var31, var6 == 11 ? 256 : 0, var28, var30); - } - - if (var16.interactType != 0) { - var15.addGameObject(var2, var3, var18, var19, var16.boolean1); - } - } + var0.rotation &= 2047; + } else { + if (var0.false0) { + var0.targetIndex = -1; + var0.false0 = false; } + + var0.field1011 = 0; } } diff --git a/osrs/src/main/java/WorldMapArchiveLoader.java b/osrs/src/main/java/WorldMapArchiveLoader.java index 77edf91d0..dec3b6648 100644 --- a/osrs/src/main/java/WorldMapArchiveLoader.java +++ b/osrs/src/main/java/WorldMapArchiveLoader.java @@ -3,27 +3,33 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sb") +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.awt.image.PixelGrabber; +import java.io.ByteArrayInputStream; +import java.io.IOException; + +@ObfuscatedName("sl") @Implements("WorldMapArchiveLoader") public class WorldMapArchiveLoader { - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("cacheName") String cacheName; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("archive") AbstractArchive archive; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("percentLoaded") int percentLoaded; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("loaded") boolean loaded; @ObfuscatedSignature( - descriptor = "(Lnu;)V" + descriptor = "(Lol;)V" ) WorldMapArchiveLoader(AbstractArchive var1) { this.percentLoaded = 0; @@ -31,10 +37,10 @@ public class WorldMapArchiveLoader { this.archive = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1398397545" + garbageValue = "2039026903" ) @Export("reset") void reset(String var1) { @@ -48,10 +54,10 @@ void reset(String var1) { } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "252910623" + descriptor = "(B)I", + garbageValue = "-24" ) @Export("load") int load() { @@ -60,7 +66,7 @@ int load() { this.loaded = true; } else { if (this.percentLoaded < 33) { - if (!this.archive.tryLoadFileByNames(WorldMapCacheName.field2469.name, this.cacheName)) { + if (!this.archive.tryLoadFileByNames(WorldMapCacheName.field2093.name, this.cacheName)) { return this.percentLoaded; } @@ -68,7 +74,7 @@ int load() { } if (this.percentLoaded == 33) { - if (this.archive.isValidFileName(WorldMapCacheName.field2470.name, this.cacheName) && !this.archive.tryLoadFileByNames(WorldMapCacheName.field2470.name, this.cacheName)) { + if (this.archive.isValidFileName(WorldMapCacheName.field2094.name, this.cacheName) && !this.archive.tryLoadFileByNames(WorldMapCacheName.field2094.name, this.cacheName)) { return this.percentLoaded; } @@ -76,7 +82,7 @@ int load() { } if (this.percentLoaded == 66) { - if (!this.archive.tryLoadFileByNames(this.cacheName, WorldMapCacheName.field2468.name)) { + if (!this.archive.tryLoadFileByNames(this.cacheName, WorldMapCacheName.field2092.name)) { return this.percentLoaded; } @@ -88,32 +94,60 @@ int load() { return this.percentLoaded; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "103" + garbageValue = "74" ) @Export("isLoaded") boolean isLoaded() { return this.loaded; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1879178762" + garbageValue = "301299850" ) @Export("getPercentLoaded") int getPercentLoaded() { return this.percentLoaded; } - @ObfuscatedName("ae") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([BI)Luz;", + garbageValue = "1918465427" + ) + public static final SpritePixels method2391(byte[] var0) { + BufferedImage var1 = null; + + try { + Class var2 = ImageIO.class; + synchronized(ImageIO.class) { + var1 = ImageIO.read(new ByteArrayInputStream(var0)); + } + + int var6 = var1.getWidth(); + int var7 = var1.getHeight(); + int[] var4 = new int[var7 * var6]; + PixelGrabber var5 = new PixelGrabber(var1, 0, 0, var6, var7, var4, 0, var6); + var5.grabPixels(); + return new SpritePixels(var4, var6, var7); + } catch (IOException var9) { + } catch (InterruptedException var10) { + } + + return new SpritePixels(0, 0); + } + + @ObfuscatedName("gj") @ObfuscatedSignature( - descriptor = "(Lnu;IIB)[Lui;", - garbageValue = "-50" + descriptor = "(I)Ltn;", + garbageValue = "-472166633" ) - public static SpritePixels[] method2379(AbstractArchive var0, int var1, int var2) { - return !ApproximateRouteStrategy.method345(var0, var1, var2) ? null : ClientPacket.method1608(); + @Export("getWorldMap") + static WorldMap getWorldMap() { + return NewShit.worldMap; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapArea.java b/osrs/src/main/java/WorldMapArea.java index 05ed179b3..61de74079 100644 --- a/osrs/src/main/java/WorldMapArea.java +++ b/osrs/src/main/java/WorldMapArea.java @@ -6,54 +6,54 @@ import java.util.Iterator; import java.util.LinkedList; -@ObfuscatedName("jf") +@ObfuscatedName("jv") @Implements("WorldMapArea") public class WorldMapArea { - @ObfuscatedName("op") - static int field2343; - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("id") int id; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("internalName") String internalName; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("externalName") String externalName; - @ObfuscatedName("at") - @Export("backGroundColor") - int backGroundColor; - @ObfuscatedName("ac") + @ObfuscatedName("ao") + int field1968; + @ObfuscatedName("ab") + int field1965; + @ObfuscatedName("au") @Export("zoom") int zoom; - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("origin") Coord origin; - @ObfuscatedName("az") + @ObfuscatedName("ac") @Export("regionLowX") int regionLowX; - @ObfuscatedName("ap") + @ObfuscatedName("al") @Export("regionHighX") int regionHighX; - @ObfuscatedName("aa") + @ObfuscatedName("az") @Export("regionLowY") int regionLowY; - @ObfuscatedName("af") + @ObfuscatedName("ap") @Export("regionHighY") int regionHighY; - @ObfuscatedName("ad") + @ObfuscatedName("av") @Export("isMain") boolean isMain; - @ObfuscatedName("aq") + @ObfuscatedName("ax") @Export("sections") LinkedList sections; public WorldMapArea() { this.id = -1; - this.backGroundColor = -1; + this.field1968 = -1; + this.field1965 = -16777216; this.zoom = -1; this.origin = null; this.regionLowX = Integer.MAX_VALUE; @@ -63,67 +63,69 @@ public WorldMapArea() { this.isMain = false; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "-21" + descriptor = "(Luj;IZI)V", + garbageValue = "-44094135" ) - @Export("read") - public void read(Buffer var1, int var2) { + public void method1205(Buffer var1, int var2, boolean var3) { this.id = var2; this.internalName = var1.readStringCp1252NullTerminated(); this.externalName = var1.readStringCp1252NullTerminated(); this.origin = new Coord(var1.readInt()); - this.backGroundColor = var1.readInt(); + this.field1968 = var1.readInt(); + if (var3) { + this.field1965 = var1.readInt(); + } + var1.readUnsignedByte(); this.isMain = var1.readUnsignedByte() == 1; this.zoom = var1.readUnsignedByte(); - int var3 = var1.readUnsignedByte(); + int var4 = var1.readUnsignedByte(); this.sections = new LinkedList(); - for (int var4 = 0; var4 < var3; ++var4) { + for (int var5 = 0; var5 < var4; ++var5) { this.sections.add(this.readWorldMapSection(var1)); } this.setBounds(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)Lkw;", - garbageValue = "2096840833" + descriptor = "(Luj;B)Ljj;", + garbageValue = "2" ) @Export("readWorldMapSection") WorldMapSection readWorldMapSection(Buffer var1) { int var2 = var1.readUnsignedByte(); - WorldMapSectionType[] var3 = new WorldMapSectionType[]{WorldMapSectionType.WORLDMAPSECTIONTYPE1, WorldMapSectionType.WORLDMAPSECTIONTYPE0, WorldMapSectionType.WORLDMAPSECTIONTYPE2, WorldMapSectionType.WORLDMAPSECTIONTYPE3}; - WorldMapSectionType var4 = (WorldMapSectionType)KeyHandler.findEnumerated(var3, var2); - Object var5 = null; - switch(var4.type) { + WorldMapSectionType var3 = (WorldMapSectionType)class12.findEnumerated(WorldMapSectionType.method1309(), var2); + Object var4 = null; + switch(var3.type) { case 0: - var5 = new class260(); + var4 = new WorldMapSection2(); break; case 1: - var5 = new WorldMapSection0(); + var4 = new WorldMapSection1(); break; case 2: - var5 = new WorldMapSection2(); + var4 = new class240(); break; case 3: - var5 = new WorldMapSection1(); + var4 = new WorldMapSection0(); break; default: throw new IllegalStateException(""); } - ((WorldMapSection)var5).read(var1); - return (WorldMapSection)var5; + ((WorldMapSection)var4).read(var1); + return (WorldMapSection)var4; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(IIII)Z", - garbageValue = "367578160" + garbageValue = "-808014283" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { @@ -141,10 +143,10 @@ public boolean containsCoord(int var1, int var2, int var3) { return true; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "770144654" + descriptor = "(IIB)Z", + garbageValue = "0" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { @@ -172,10 +174,10 @@ public boolean containsPosition(int var1, int var2) { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "-1546478082" + descriptor = "(IIIB)[I", + garbageValue = "1" ) @Export("position") public int[] position(int var1, int var2, int var3) { @@ -193,10 +195,10 @@ public int[] position(int var1, int var2, int var3) { return var5.getBorderTileLengths(var1, var2, var3); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "1756558235" + descriptor = "(III)Lmh;", + garbageValue = "-468461591" ) @Export("coord") public Coord coord(int var1, int var2) { @@ -214,10 +216,10 @@ public Coord coord(int var1, int var2) { return var4.coord(var1, var2); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-338264651" + garbageValue = "611139604" ) @Export("setBounds") void setBounds() { @@ -230,226 +232,217 @@ void setBounds() { } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-846319025" + descriptor = "(B)I", + garbageValue = "73" ) @Export("getId") public int getId() { return this.id; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1901446023" + garbageValue = "1014185109" ) @Export("getIsMain") public boolean getIsMain() { return this.isMain; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "22" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "2145030252" ) @Export("getInternalName") public String getInternalName() { return this.internalName; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "1846298842" + garbageValue = "-1365317840" ) @Export("getExternalName") public String getExternalName() { return this.externalName; } - @ObfuscatedName("aq") + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "33" + ) + int method1218() { + return this.field1968; + } + + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-797170066" + garbageValue = "-1742263057" ) - @Export("getBackGroundColor") - int getBackGroundColor() { - return this.backGroundColor; + int method1219() { + return this.field1965; } - @ObfuscatedName("al") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "69" + descriptor = "(I)I", + garbageValue = "1577792513" ) @Export("getZoom") public int getZoom() { return this.zoom; } - @ObfuscatedName("an") + @ObfuscatedName("ay") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1630610237" + garbageValue = "-2095033284" ) @Export("getRegionLowX") public int getRegionLowX() { return this.regionLowX; } - @ObfuscatedName("ar") + @ObfuscatedName("ak") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "7" + garbageValue = "119" ) @Export("getRegionHighX") public int getRegionHighX() { return this.regionHighX; } - @ObfuscatedName("ab") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-96" + descriptor = "(I)I", + garbageValue = "-2077646418" ) @Export("getRegionLowY") public int getRegionLowY() { return this.regionLowY; } - @ObfuscatedName("ag") + @ObfuscatedName("am") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-439375988" + garbageValue = "1665861743" ) @Export("getRegionHighY") public int getRegionHighY() { return this.regionHighY; } - @ObfuscatedName("am") + @ObfuscatedName("aq") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2074797827" + garbageValue = "494271544" ) @Export("getOriginX") public int getOriginX() { return this.origin.x; } - @ObfuscatedName("ax") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "123" + descriptor = "(S)I", + garbageValue = "-2282" ) @Export("getOriginPlane") public int getOriginPlane() { return this.origin.plane; } - @ObfuscatedName("ah") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "0" + descriptor = "(I)I", + garbageValue = "927085335" ) @Export("getOriginY") public int getOriginY() { return this.origin.y; } - @ObfuscatedName("as") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(I)Lmc;", - garbageValue = "-1932226468" + descriptor = "(B)Lmh;", + garbageValue = "-69" ) @Export("getOrigin") public Coord getOrigin() { return new Coord(this.origin); } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1197510480" + descriptor = "(CB)Z", + garbageValue = "-71" ) - static void method1413(int var0) { + public static boolean method1207(char var0) { + if ((var0 <= 0 || var0 >= 128) && (var0 < 160 || var0 > 255)) { + if (var0 != 0) { + char[] var1 = class396.cp1252AsciiExtension; + + for (int var2 = 0; var2 < var1.length; ++var2) { + char var3 = var1[var2]; + if (var0 == var3) { + return true; + } + } + } + + return false; + } else { + return true; + } } - @ObfuscatedName("ap") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-41" + descriptor = "(II)Lun;", + garbageValue = "-1672092553" ) - public static boolean method1425() { - boolean var0 = false; - boolean var1 = false; - if (!class305.field2771.isEmpty()) { - SongTask var2 = (SongTask)class305.field2771.get(0); - if (var2 == null) { - class305.field2771.remove(0); - } else if (var2.vmethod2142()) { - if (var2.method2132()) { - System.out.println("Error in midimanager.service: " + var2.method2135()); - var0 = true; - } else { - if (var2.method2136() != null) { - class305.field2771.add(1, var2.method2136()); - } + public static PrivateChatMode method1204(int var0) { + PrivateChatMode[] var1 = SecureRandomCallable.method456(); - var1 = var2.method2134(); - } - - class305.field2771.remove(0); - } else { - var1 = var2.method2134(); + for (int var2 = 0; var2 < var1.length; ++var2) { + PrivateChatMode var3 = var1[var2]; + if (var0 == var3.id) { + return var3; } } - if (var0) { - class305.field2771.clear(); - ByteArrayPool.method2148(); - } - - return var1; + return null; } - @ObfuscatedName("mv") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Lmi;IIB)V", - garbageValue = "116" + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "122" ) - @Export("alignWidgetPosition") - static void alignWidgetPosition(Widget var0, int var1, int var2) { - if (var0.xAlignment == 0) { - var0.x = var0.rawX; - } else if (var0.xAlignment == 1) { - var0.x = var0.rawX + (var1 - var0.width) / 2; - } else if (var0.xAlignment == 2) { - var0.x = var1 - var0.width - var0.rawX; - } else if (var0.xAlignment == 3) { - var0.x = var0.rawX * var1 >> 14; - } else if (var0.xAlignment == 4) { - var0.x = (var0.rawX * var1 >> 14) + (var1 - var0.width) / 2; - } else { - var0.x = var1 - var0.width - (var0.rawX * var1 >> 14); - } + static final void method1213(String var0) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(30, "", var0); + } - if (var0.yAlignment == 0) { - var0.y = var0.rawY; - } else if (var0.yAlignment == 1) { - var0.y = (var2 - var0.height) / 2 + var0.rawY; - } else if (var0.yAlignment == 2) { - var0.y = var2 - var0.height - var0.rawY; - } else if (var0.yAlignment == 3) { - var0.y = var2 * var0.rawY >> 14; - } else if (var0.yAlignment == 4) { - var0.y = (var2 * var0.rawY >> 14) + (var2 - var0.height) / 2; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "([BB)Lpf;", + garbageValue = "94" + ) + public static Font method1229(byte[] var0) { + if (var0 == null) { + return null; } else { - var0.y = var2 - var0.height - (var2 * var0.rawY >> 14); + Font var1 = new Font(var0, class541.SpriteBuffer_xOffsets, class541.SpriteBuffer_yOffsets, class541.SpriteBuffer_spriteWidths, class520.SpriteBuffer_spriteHeights, class541.SpriteBuffer_spritePalette, class396.SpriteBuffer_pixels); + class458.method2306(); + return var1; } - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapAreaData.java b/osrs/src/main/java/WorldMapAreaData.java index 770d0dd3b..88d2336ed 100644 --- a/osrs/src/main/java/WorldMapAreaData.java +++ b/osrs/src/main/java/WorldMapAreaData.java @@ -7,68 +7,70 @@ import java.util.LinkedList; import java.util.List; -@ObfuscatedName("kv") +@ObfuscatedName("jx") @Implements("WorldMapAreaData") public class WorldMapAreaData extends WorldMapArea { - @ObfuscatedName("al") - @Export("worldMapData0Set") - HashSet worldMapData0Set; - @ObfuscatedName("an") - @Export("worldMapData1Set") - HashSet worldMapData1Set; - @ObfuscatedName("ar") + @ObfuscatedName("gi") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field2099; + @ObfuscatedName("as") + HashSet field2100; + @ObfuscatedName("ay") + HashSet field2101; + @ObfuscatedName("ak") @Export("iconList") List iconList; WorldMapAreaData() { } - @ObfuscatedName("cu") + @ObfuscatedName("cz") @ObfuscatedSignature( - descriptor = "(Ltm;Ltm;IZI)V", - garbageValue = "1963374909" + descriptor = "(Luj;Luj;IZZI)V", + garbageValue = "-605935351" ) - @Export("init") - void init(Buffer var1, Buffer var2, int var3, boolean var4) { - this.read(var1, var3); - int var5 = var2.readUnsignedShort(); - this.worldMapData0Set = new HashSet(var5); + void method1363(Buffer var1, Buffer var2, int var3, boolean var4, boolean var5) { + this.method1205(var1, var3, var5); + int var6 = var2.readUnsignedShort(); + this.field2100 = new HashSet(var6); - int var6; - for (var6 = 0; var6 < var5; ++var6) { - WorldMapData_0 var7 = new WorldMapData_0(); + int var7; + for (var7 = 0; var7 < var6; ++var7) { + WorldMapData_0 var8 = new WorldMapData_0(); try { - var7.init(var2); - } catch (IllegalStateException var12) { + var8.init(var2); + } catch (IllegalStateException var13) { continue; } - this.worldMapData0Set.add(var7); + this.field2100.add(var8); } - var6 = var2.readUnsignedShort(); - this.worldMapData1Set = new HashSet(var6); + var7 = var2.readUnsignedShort(); + this.field2101 = new HashSet(var7); - for (int var10 = 0; var10 < var6; ++var10) { - WorldMapData_1 var8 = new WorldMapData_1(); + for (int var11 = 0; var11 < var7; ++var11) { + WorldMapData_1 var9 = new WorldMapData_1(); try { - var8.init(var2); - } catch (IllegalStateException var11) { + var9.init(var2); + } catch (IllegalStateException var12) { continue; } - this.worldMapData1Set.add(var8); + this.field2101.add(var9); } this.initIconsList(var2, var4); } - @ObfuscatedName("ch") + @ObfuscatedName("cy") @ObfuscatedSignature( - descriptor = "(Ltm;ZB)V", - garbageValue = "-123" + descriptor = "(Luj;ZI)V", + garbageValue = "950262169" ) @Export("initIconsList") void initIconsList(Buffer var1, boolean var2) { @@ -76,7 +78,7 @@ void initIconsList(Buffer var1, boolean var2) { int var3 = var1.readUnsignedShort(); for (int var4 = 0; var4 < var3; ++var4) { - int var5 = var1.method2563(); + int var5 = var1.readNullableLargeSmart(); Coord var6 = new Coord(var1.readInt()); boolean var7 = var1.readUnsignedByte() == 1; if (var2 || !var7) { @@ -86,72 +88,371 @@ void initIconsList(Buffer var1, boolean var2) { } - @ObfuscatedName("aq") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "2073842388" + descriptor = "(II)F", + garbageValue = "1883889398" ) - @Export("Login_promptCredentials") - static void Login_promptCredentials(boolean var0) { - if (!class219.client.method352() && !class219.client.method354() && !class219.client.method353()) { - Login.Login_response1 = ""; - Login.Login_response2 = "Enter your username/email & password."; - Login.Login_response3 = ""; - PcmPlayer.method212(2); - if (var0) { - Login.Login_password = ""; - } - - if (Login.Login_username == null || Login.Login_username.length() <= 0) { - if (class449.clientPreferences.getUsernameToRemember() != null) { - Login.Login_username = class449.clientPreferences.getUsernameToRemember(); - Client.Login_isUsernameRemembered = true; - } else { - Client.Login_isUsernameRemembered = false; - } - } + static final float method1364(int var0) { + float var1 = 10075.0F - (float)var0; + return (var1 * 1.0075567F - 75.56675F) / var1; + } - ObjectComposition.method1042(); + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(Lnn;IIII)V", + garbageValue = "-1973089018" + ) + @Export("Widget_setKeyRate") + static final void Widget_setKeyRate(Widget var0, int var1, int var2, int var3) { + if (var0.field3073 == null) { + throw new RuntimeException(); } else { - PcmPlayer.method212(10); + var0.field3073[var1] = var2; + var0.field3072[var1] = var3; } } - @ObfuscatedName("al") + @ObfuscatedName("kv") @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "54" + descriptor = "(IIIIIIIIB)V", + garbageValue = "-113" ) - static void method1574(boolean var0) { - byte var1 = 0; - boolean var2 = class449.clientPreferences.method564() >= Client.param21; - if (!var2) { - var1 = 12; - } else if (class219.client.method352() || class219.client.method354() || class219.client.method353()) { - var1 = 10; - } + @Export("addPendingSpawnToScene") + static final void addPendingSpawnToScene(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { + if (var2 >= 1 && var3 >= 1 && var2 <= 102 && var3 <= 102) { + if (Client.isLowDetail && var0 != ItemLayer.Client_plane) { + return; + } - PcmPlayer.method212(var1); - if (var0) { - Login.Login_username = ""; - Login.Login_password = ""; - class503.field4107 = 0; - class369.otp = ""; - } + long var8 = 0L; + boolean var10 = true; + boolean var11 = false; + boolean var12 = false; + if (var1 == 0) { + var8 = class36.scene.getBoundaryObjectTag(var0, var2, var3); + } - if (Login.Login_username == null || Login.Login_username.length() <= 0) { - if (class449.clientPreferences.getUsernameToRemember() != null) { - Login.Login_username = class449.clientPreferences.getUsernameToRemember(); - Client.Login_isUsernameRemembered = true; - } else { - Client.Login_isUsernameRemembered = false; + if (var1 == 1) { + var8 = class36.scene.getWallDecorationTag(var0, var2, var3); } - } - if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { - Login.currentLoginField = 1; - } else { - Login.currentLoginField = 0; + if (var1 == 2) { + var8 = class36.scene.getGameObjectTag(var0, var2, var3); + } + + if (var1 == 3) { + var8 = class36.scene.getFloorDecorationTag(var0, var2, var3); + } + + int var13; + int var17; + int var18; + int var19; + int var20; + int var21; + int var22; + if (0L != var8) { + var13 = class36.scene.getObjectFlags(var0, var2, var3, var8); + int var44 = class232.Entity_unpackID(var8); + int var45 = var13 & 31; + int var46 = var13 >> 6 & 3; + ObjectComposition var14 = WorldMapSection2.getObjectDefinition(var44); + if (var14 != null && var14.hasSound()) { + var17 = var14.sizeX; + var18 = var14.sizeY; + if (var46 == 1 || var46 == 3) { + var17 = var14.sizeY; + var18 = var14.sizeX; + } + + var19 = (var17 + var2) * 128; + var20 = (var3 + var18) * 128; + int var15 = var2 * 128; + int var16 = var3 * 128; + var21 = var14.ambientSoundId; + var22 = var14.int7 * 128; + if (var14.transforms != null) { + ObjectComposition var23 = var14.transform(); + if (var23 != null) { + var21 = var23.ambientSoundId; + var22 = var23.int7 * 128; + } + } + + Object var10000 = null; + + for (ObjectSound var48 = (ObjectSound)ObjectSound.objectSounds.last(); var48 != null; var48 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var0 == var48.plane && var15 == var48.x && var16 == var48.y && var19 == var48.maxX && var20 == var48.maxY && var21 == var48.soundEffectId && var22 == var48.field691) { + if (var48.stream1 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var48.stream1); + var48.stream1 = null; + } + + if (var48.stream2 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var48.stream2); + var48.stream2 = null; + } + + var48.remove(); + break; + } + + var10000 = null; + } + } + + if (var1 == 0) { + class36.scene.removeBoundaryObject(var0, var2, var3); + if (var14.interactType != 0) { + Client.collisionMaps[var0].method1142(var2, var3, var45, var46, var14.boolean1); + } + } + + if (var1 == 1) { + class36.scene.removeWallDecoration(var0, var2, var3); + } + + if (var1 == 2) { + class36.scene.removeGameObject(var0, var2, var3); + if (var2 + var14.sizeX > 103 || var3 + var14.sizeX > 103 || var2 + var14.sizeY > 103 || var3 + var14.sizeY > 103) { + return; + } + + if (var14.interactType != 0) { + Client.collisionMaps[var0].setFlagOffNonSquare(var2, var3, var14.sizeX, var14.sizeY, var46, var14.boolean1); + } + } + + if (var1 == 3) { + class36.scene.removeFloorDecoration(var0, var2, var3); + if (var14.interactType == 1) { + Client.collisionMaps[var0].method1145(var2, var3); + } + } + } + + if (var4 >= 0) { + var13 = var0; + if (var0 < 3 && (Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { + var13 = var0 + 1; + } + + Scene var47 = class36.scene; + CollisionMap var37 = Client.collisionMaps[var0]; + ObjectComposition var38 = WorldMapSection2.getObjectDefinition(var4); + var17 = var7 >= 0 ? var7 : var38.animationId ; + if (var5 != 1 && var5 != 3) { + var18 = var38.sizeX; + var19 = var38.sizeY; + } else { + var18 = var38.sizeY; + var19 = var38.sizeX; + } + + if (var18 + var2 <= 104) { + var20 = (var18 >> 1) + var2; + var21 = var2 + (var18 + 1 >> 1); + } else { + var20 = var2; + var21 = var2 + 1; + } + + int var39; + if (var3 + var19 <= 104) { + var22 = var3 + (var19 >> 1); + var39 = var3 + (var19 + 1 >> 1); + } else { + var22 = var3; + var39 = var3 + 1; + } + + int[][] var24 = Tiles.Tiles_heights[var13]; + int var25 = var24[var20][var22] + var24[var21][var22] + var24[var20][var39] + var24[var21][var39] >> 2; + int var26 = (var2 << 7) + (var18 << 6); + int var27 = (var3 << 7) + (var19 << 6); + long var28 = Player.calculateTag(var2, var3, 2, var38.int1 == 0, var4); + int var30 = (var5 << 6) + var6; + if (var38.int3 == 1) { + var30 += 256; + } + + Object var31; + if (var6 == 22) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(22, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 22, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newFloorDecoration(var0, var2, var3, var25, (Renderable)var31, var28, var30); + if (var38.interactType == 1) { + var37.setBlockedByFloorDec(var2, var3); + } + } else if (var6 != 10 && var6 != 11) { + if (var6 >= 12) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(var6, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, var6, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.method1467(var0, var2, var3, var25, 1, 1, (Renderable)var31, 0, var28, var30); + if (var38.interactType != 0) { + var37.addGameObject(var2, var3, var18, var19, var38.boolean1); + } + } else if (var6 == 0) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(0, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 0, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field849[var5], 0, var28, var30); + if (var38.interactType != 0) { + var37.method1137(var2, var3, var6, var5, var38.boolean1); + } + } else if (var6 == 1) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(1, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 1, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field847[var5], 0, var28, var30); + if (var38.interactType != 0) { + var37.method1137(var2, var3, var6, var5, var38.boolean1); + } + } else { + int var40; + if (var6 == 2) { + var40 = var5 + 1 & 3; + Object var32; + Object var33; + if (var17 == -1 && var38.transforms == null) { + var32 = var38.getModel(2, var5 + 4, var24, var26, var25, var27); + var33 = var38.getModel(2, var40, var24, var26, var25, var27); + } else { + var32 = new DynamicObject(var4, 2, var5 + 4, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + var33 = new DynamicObject(var4, 2, var40, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newBoundaryObject(var0, var2, var3, var25, (Renderable)var32, (Renderable)var33, Tiles.field849[var5], Tiles.field849[var40], var28, var30); + if (var38.interactType != 0) { + var37.method1137(var2, var3, var6, var5, var38.boolean1); + } + } else if (var6 == 3) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(3, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 3, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newBoundaryObject(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field847[var5], 0, var28, var30); + if (var38.interactType != 0) { + var37.method1137(var2, var3, var6, var5, var38.boolean1); + } + } else if (var6 == 9) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(var6, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, var6, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.method1467(var0, var2, var3, var25, 1, 1, (Renderable)var31, 0, var28, var30); + if (var38.interactType != 0) { + var37.addGameObject(var2, var3, var18, var19, var38.boolean1); + } + } else if (var6 == 4) { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(4, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 4, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newWallDecoration(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, Tiles.field849[var5], 0, 0, 0, var28, var30); + } else { + Object var34; + long var41; + if (var6 == 5) { + var40 = 16; + var41 = var47.getBoundaryObjectTag(var0, var2, var3); + if (var41 != 0L) { + var40 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var41)).int2; + } + + if (var17 == -1 && var38.transforms == null) { + var34 = var38.getModel(4, var5, var24, var26, var25, var27); + } else { + var34 = new DynamicObject(var4, 4, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)null, Tiles.field849[var5], 0, var40 * Tiles.field850[var5], var40 * Tiles.field845[var5], var28, var30); + } else if (var6 == 6) { + var40 = 8; + var41 = var47.getBoundaryObjectTag(var0, var2, var3); + if (0L != var41) { + var40 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var41)).int2 / 2; + } + + if (var17 == -1 && var38.transforms == null) { + var34 = var38.getModel(4, var5 + 4, var24, var26, var25, var27); + } else { + var34 = new DynamicObject(var4, 4, var5 + 4, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)null, 256, var5, var40 * Tiles.field848[var5], var40 * Tiles.field846[var5], var28, var30); + } else if (var6 == 7) { + int var43 = var5 + 2 & 3; + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(4, var43 + 4, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 4, var43 + 4, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newWallDecoration(var0, var2, var3, var25, (Renderable)var31, (Renderable)null, 256, var43, 0, 0, var28, var30); + } else if (var6 == 8) { + var40 = 8; + var41 = var47.getBoundaryObjectTag(var0, var2, var3); + if (var41 != 0L) { + var40 = WorldMapSection2.getObjectDefinition(class232.Entity_unpackID(var41)).int2 / 2; + } + + int var36 = var5 + 2 & 3; + Object var35; + if (var17 == -1 && var38.transforms == null) { + var34 = var38.getModel(4, var5 + 4, var24, var26, var25, var27); + var35 = var38.getModel(4, var36 + 4, var24, var26, var25, var27); + } else { + var34 = new DynamicObject(var4, 4, var5 + 4, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + var35 = new DynamicObject(var4, 4, var36 + 4, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + var47.newWallDecoration(var0, var2, var3, var25, (Renderable)var34, (Renderable)var35, 256, var5, var40 * Tiles.field848[var5], var40 * Tiles.field846[var5], var28, var30); + } + } + } + } else { + if (var17 == -1 && var38.transforms == null) { + var31 = var38.getModel(10, var5, var24, var26, var25, var27); + } else { + var31 = new DynamicObject(var4, 10, var5, var13, var2, var3, var17, var38.boolean3, (Renderable)null); + } + + if (var31 != null) { + var47.method1467(var0, var2, var3, var25, var18, var19, (Renderable)var31, var6 == 11 ? 256 : 0, var28, var30); + } + + if (var38.interactType != 0) { + var37.addGameObject(var2, var3, var18, var19, var38.boolean1); + } + } + + var38 = WorldMapSection2.getObjectDefinition(var4); + if (var38 != null && var38.hasSound()) { + UrlRequester.method648(var13, var2, var3, var38, var5); + } + } } } diff --git a/osrs/src/main/java/WorldMapCacheName.java b/osrs/src/main/java/WorldMapCacheName.java index da8893bd4..c35c2b3ca 100644 --- a/osrs/src/main/java/WorldMapCacheName.java +++ b/osrs/src/main/java/WorldMapCacheName.java @@ -3,68 +3,635 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kr") +import java.util.ArrayList; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; + +@ObfuscatedName("jz") @Implements("WorldMapCacheName") public class WorldMapCacheName { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lkr;" + descriptor = "Ljz;" ) - public static final WorldMapCacheName field2471; - @ObfuscatedName("ae") + public static final WorldMapCacheName field2095; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lkr;" + descriptor = "Ljz;" ) - public static final WorldMapCacheName field2469; - @ObfuscatedName("ao") + public static final WorldMapCacheName field2093; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lkr;" + descriptor = "Ljz;" ) - public static final WorldMapCacheName field2470; - @ObfuscatedName("at") + public static final WorldMapCacheName field2094; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lkr;" + descriptor = "Ljz;" ) - static final WorldMapCacheName field2472; - @ObfuscatedName("ac") + static final WorldMapCacheName field2097; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lkr;" + descriptor = "Ljz;" ) - public static final WorldMapCacheName field2468; - @ObfuscatedName("ai") + public static final WorldMapCacheName field2092; + @ObfuscatedName("gt") + @Export("worldPort") + static int worldPort; + @ObfuscatedName("au") @Export("name") public final String name; static { - field2471 = new WorldMapCacheName("details"); - field2469 = new WorldMapCacheName("compositemap"); - field2470 = new WorldMapCacheName("compositetexture"); - field2472 = new WorldMapCacheName("area"); - field2468 = new WorldMapCacheName("labels"); + field2095 = new WorldMapCacheName("details"); + field2093 = new WorldMapCacheName("compositemap"); + field2094 = new WorldMapCacheName("compositetexture"); + field2097 = new WorldMapCacheName("area"); + field2092 = new WorldMapCacheName("labels"); } WorldMapCacheName(String var1) { this.name = var1; } - @ObfuscatedName("au") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(IB)Lhm;", - garbageValue = "101" + descriptor = "(B)Luz;", + garbageValue = "-120" ) - public static HitSplatDefinition method1564(int var0) { - HitSplatDefinition var1 = (HitSplatDefinition)HitSplatDefinition.HitSplatDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; + static SpritePixels method1353() { + SpritePixels var0 = new SpritePixels(); + var0.width = class541.SpriteBuffer_spriteWidth; + var0.height = GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight; + var0.xOffset = class541.SpriteBuffer_xOffsets[0]; + var0.yOffset = class541.SpriteBuffer_yOffsets[0]; + var0.subWidth = class541.SpriteBuffer_spriteWidths[0]; + var0.subHeight = class520.SpriteBuffer_spriteHeights[0]; + int var1 = var0.subHeight * var0.subWidth; + byte[] var2 = class396.SpriteBuffer_pixels[0]; + var0.pixels = new int[var1]; + + for (int var3 = 0; var3 < var1; ++var3) { + var0.pixels[var3] = class541.SpriteBuffer_spritePalette[var2[var3] & 255]; + } + + class458.method2306(); + return var0; + } + + @ObfuscatedName("hc") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1839929572" + ) + static void method1354() { + int var0; + if (Client.field414 == class92.field942) { + class36.scene = new Scene(4, 104, 104, Tiles.Tiles_heights); + + for (var0 = 0; var0 < 4; ++var0) { + Client.collisionMaps[var0] = new CollisionMap(104, 104); + } + + class102.sceneMinimapSprite = new SpritePixels(512, 512); + Login.Login_loadingText = "Starting game engine..."; + Login.Login_loadingPercent = 5; + Client.field414 = class92.field935; + } else if (Client.field414 == class92.field935) { + Login.Login_loadingText = "Prepared visibility map"; + Login.Login_loadingPercent = 10; + Client.field414 = class92.field940; + } else if (class92.field940 == Client.field414) { + UserComparator7.field1190 = Skeleton.newArchive(0, false, true, true, false); + class145.field1338 = Skeleton.newArchive(1, false, true, true, false); + class344.archive2 = Skeleton.newArchive(2, true, false, true, false); + class313.archive4 = Skeleton.newArchive(3, false, true, true, false); + Language.field3643 = Skeleton.newArchive(4, false, true, true, false); + WorldMapSection0.archive9 = Skeleton.newArchive(5, true, true, true, false); + class514.archive6 = Skeleton.newArchive(6, true, true, true, false); + class19.field59 = Skeleton.newArchive(7, false, true, true, false); + GrandExchangeOfferOwnWorldComparator.archive8 = Skeleton.newArchive(8, false, true, true, false); + Canvas.field68 = Skeleton.newArchive(9, false, true, true, false); + WorldMapDecorationType.archive10 = Skeleton.newArchive(10, false, true, true, false); + PcmPlayer.field181 = Skeleton.newArchive(11, false, true, true, false); + class47.archive12 = Skeleton.newArchive(12, false, true, true, false); + VarbitComposition.archive13 = Skeleton.newArchive(13, true, false, true, false); + StructComposition.field1637 = Skeleton.newArchive(14, false, true, true, false); + class7.field12 = Skeleton.newArchive(15, false, true, true, false); + SoundSystem.field209 = Skeleton.newArchive(17, true, true, true, false); + BuddyRankComparator.field1200 = Skeleton.newArchive(18, false, true, true, false); + SpotAnimationDefinition.field1597 = Skeleton.newArchive(19, false, true, true, false); + WorldMapData_0.field1938 = Skeleton.newArchive(20, false, true, true, false); + class267.field2224 = Skeleton.newArchive(21, false, true, true, false); + WorldMapAreaData.field2099 = SequenceDefinition.method1054(22, false, true, true, true, true); + Login.Login_loadingText = "Connecting to update server"; + Login.Login_loadingPercent = 20; + Client.field414 = class92.field938; + } else if (class92.field938 == Client.field414) { + byte var42 = 0; + var0 = var42 + UserComparator7.field1190.percentage() * 4 / 100; + var0 += class145.field1338.percentage() * 4 / 100; + var0 += class344.archive2.percentage() * 2 / 100; + var0 += class313.archive4.percentage() * 2 / 100; + var0 += Language.field3643.percentage() * 6 / 100; + var0 += WorldMapSection0.archive9.percentage() * 4 / 100; + var0 += class514.archive6.percentage() * 2 / 100; + var0 += class19.field59.percentage() * 54 / 100; + var0 += GrandExchangeOfferOwnWorldComparator.archive8.percentage() * 2 / 100; + var0 += Canvas.field68.percentage() * 2 / 100; + var0 += WorldMapDecorationType.archive10.percentage() * 2 / 100; + var0 += PcmPlayer.field181.percentage() * 2 / 100; + var0 += class47.archive12.percentage() * 2 / 100; + var0 += VarbitComposition.archive13.percentage() * 2 / 100; + var0 += StructComposition.field1637.percentage() * 2 / 100; + var0 += class7.field12.percentage() * 2 / 100; + var0 += SpotAnimationDefinition.field1597.percentage() / 100; + var0 += BuddyRankComparator.field1200.percentage() / 100; + var0 += WorldMapData_0.field1938.percentage() / 100; + var0 += class267.field2224.percentage() / 100; + var0 += WorldMapAreaData.field2099.percentage() / 100; + var0 += SoundSystem.field209.method1912() && SoundSystem.field209.isFullyLoaded() ? 1 : 0; + if (var0 != 100) { + if (var0 != 0) { + Login.Login_loadingText = "Checking for updates - " + var0 + "%"; + } + + Login.Login_loadingPercent = 30; + } else { + class357.method1900(UserComparator7.field1190, "Animations"); + class357.method1900(class145.field1338, "Skeletons"); + class357.method1900(Language.field3643, "Sound FX"); + class357.method1900(WorldMapSection0.archive9, "Maps"); + class357.method1900(class514.archive6, "Music Tracks"); + class357.method1900(class19.field59, "Models"); + class357.method1900(GrandExchangeOfferOwnWorldComparator.archive8, "Sprites"); + class357.method1900(PcmPlayer.field181, "Music Jingles"); + class357.method1900(StructComposition.field1637, "Music Samples"); + class357.method1900(class7.field12, "Music Patches"); + class357.method1900(SpotAnimationDefinition.field1597, "World Map"); + class357.method1900(BuddyRankComparator.field1200, "World Map Geography"); + class357.method1900(WorldMapData_0.field1938, "World Map Ground"); + class376.field3614 = new GraphicsDefaults(); + class376.field3614.decode(SoundSystem.field209); + Login.Login_loadingText = "Loaded update list"; + Login.Login_loadingPercent = 30; + Client.field414 = class92.field933; + } } else { - byte[] var2 = HitSplatDefinition.HitSplatDefinition_archive.takeFile(32, var0); - var1 = new HitSplatDefinition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); + Archive var7; + Archive var8; + Archive var25; + if (class92.field933 == Client.field414) { + boolean var41 = !Client.isLowDetail; + PcmPlayer.field179 = 22050; + WorldMapRectangle.PcmPlayer_stereo = var41; + PcmPlayer.field180 = 2; + ArrayList var34 = new ArrayList(3); + TaskHandler var32 = GameEngine.taskHandler; + short var40 = 2048; + if (var40 < 256) { + var40 = 256; + } + + PcmPlayer var33; + try { + PcmPlayer var36 = PcmPlayer.pcmPlayerProvider.player(); + var36.samples = new int[256 * (WorldMapRectangle.PcmPlayer_stereo ? 2 : 1)]; + var36.field196 = var40; + var36.init(); + var36.capacity = (var40 & -1024) + 1024; + if (var36.capacity > 16384) { + var36.capacity = 16384; + } + + var36.open(var36.capacity); + if (PcmPlayer.field180 > 0 && DelayFadeTask.soundSystem == null) { + DelayFadeTask.soundSystem = new SoundSystem(); + class342.soundSystemExecutor = Executors.newScheduledThreadPool(1); + class342.soundSystemExecutor.scheduleAtFixedRate(DelayFadeTask.soundSystem, 0L, 10L, TimeUnit.MILLISECONDS); + } + + if (DelayFadeTask.soundSystem != null) { + if (DelayFadeTask.soundSystem.players[0] != null) { + throw new IllegalArgumentException(); + } + + DelayFadeTask.soundSystem.players[0] = var36; + } + + var33 = var36; + } catch (Throwable var30) { + var33 = new PcmPlayer(); + } + + MusicPatchPcmStream.pcmPlayer1 = var33; + LoginScreenAnimation.pcmStreamMixer = new PcmStreamMixer(); + PcmStreamMixer var37 = new PcmStreamMixer(); + var37.addSubStream(LoginScreenAnimation.pcmStreamMixer); + + for (int var6 = 0; var6 < 3; ++var6) { + MidiPcmStream var38 = new MidiPcmStream(); + var38.method1662(9, 128); + var37.addSubStream(var38); + var34.add(var38); + } + + MusicPatchPcmStream.pcmPlayer1.setStream(var37); + var25 = class7.field12; + var7 = StructComposition.field1637; + var8 = Language.field3643; + class316.field2792 = var25; + class316.field2791 = var7; + class168.field1428 = var8; + class316.midiPcmStream = var34; + class521.decimator = new Decimator(22050, PcmPlayer.field179); + Login.Login_loadingText = "Prepared sound engine"; + Login.Login_loadingPercent = 35; + Client.field414 = class92.field943; + class140.field1318 = new Fonts(GrandExchangeOfferOwnWorldComparator.archive8, VarbitComposition.archive13); + } else if (Client.field414 == class92.field943) { + var0 = FontName.method2458().length; + Client.fontsMap = class140.field1318.createMap(FontName.method2458()); + if (Client.fontsMap.size() < var0) { + Login.Login_loadingText = "Loading fonts - " + Client.fontsMap.size() * 100 / var0 + "%"; + Login.Login_loadingPercent = 40; + } else { + class369.fontPlain11 = (Font)Client.fontsMap.get(FontName.FontName_plain11); + ItemLayer.fontPlain12 = (Font)Client.fontsMap.get(FontName.FontName_plain12); + GrandExchangeOfferTotalQuantityComparator.fontBold12 = (Font)Client.fontsMap.get(FontName.FontName_bold12); + class60.field312 = Client.field645.get(); + Login.Login_loadingText = "Loaded fonts"; + Login.Login_loadingPercent = 40; + Client.field414 = class92.field932; + } + } else { + int var26; + if (Client.field414 == class92.field932) { + var0 = User.method2239(WorldMapDecorationType.archive10, GrandExchangeOfferOwnWorldComparator.archive8); + var26 = class189.method954(GrandExchangeOfferOwnWorldComparator.archive8); + if (var0 < var26) { + Login.Login_loadingText = "Loading title screen - " + var0 * 100 / var26 + "%"; + Login.Login_loadingPercent = 50; + } else { + Login.Login_loadingText = "Loaded title screen"; + Login.Login_loadingPercent = 50; + WorldMapSection2.updateGameState(5); + Client.field414 = class92.field934; + } + } else { + Archive var2; + boolean var4; + if (class92.field934 != Client.field414) { + if (class92.field937 == Client.field414) { + var0 = 0; + if (ItemLayer.compass == null) { + ItemLayer.compass = IgnoreList.SpriteBuffer_getSprite(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.compass, 0); + } else { + ++var0; + } + + if (class11.redHintArrowSprite == null) { + class11.redHintArrowSprite = IgnoreList.SpriteBuffer_getSprite(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3884, 0); + } else { + ++var0; + } + + int var28; + IndexedSprite[] var31; + byte[] var35; + if (VarpDefinition.mapSceneSprites == null) { + var2 = GrandExchangeOfferOwnWorldComparator.archive8; + var28 = class376.field3614.mapScenes; + var35 = var2.takeFile(var28, 0); + if (var35 == null) { + var4 = false; + } else { + class162.SpriteBuffer_decode(var35); + var4 = true; + } + + if (!var4) { + var31 = null; + } else { + var31 = DbTable.method2519(); + } + + VarpDefinition.mapSceneSprites = var31; + } else { + ++var0; + } + + if (UrlRequest.headIconPkSprites == null) { + UrlRequest.headIconPkSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.headIconsPk, 0); + } else { + ++var0; + } + + if (AbstractByteArrayCopier.headIconPrayerSprites == null) { + AbstractByteArrayCopier.headIconPrayerSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3882, 0); + } else { + ++var0; + } + + if (class60.headIconHintSprites == null) { + class60.headIconHintSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3890, 0); + } else { + ++var0; + } + + if (class12.mapMarkerSprites == null) { + class12.mapMarkerSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3881, 0); + } else { + ++var0; + } + + if (VarpDefinition.crossSprites == null) { + VarpDefinition.crossSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3883, 0); + } else { + ++var0; + } + + if (HorizontalAlignment.mapDotSprites == null) { + HorizontalAlignment.mapDotSprites = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, class376.field3614.field3885, 0); + } else { + ++var0; + } + + if (class31.scrollBarSprites == null) { + var2 = GrandExchangeOfferOwnWorldComparator.archive8; + var28 = class376.field3614.field3891; + var35 = var2.takeFile(var28, 0); + if (var35 == null) { + var4 = false; + } else { + class162.SpriteBuffer_decode(var35); + var4 = true; + } + + if (!var4) { + var31 = null; + } else { + var31 = DbTable.method2519(); + } + + class31.scrollBarSprites = var31; + } else { + ++var0; + } + + if (class134.field1307 == null) { + var2 = GrandExchangeOfferOwnWorldComparator.archive8; + var28 = class376.field3614.field3887; + var35 = var2.takeFile(var28, 0); + if (var35 == null) { + var4 = false; + } else { + class162.SpriteBuffer_decode(var35); + var4 = true; + } + + if (!var4) { + var31 = null; + } else { + var31 = DbTable.method2519(); + } + + class134.field1307 = var31; + } else { + ++var0; + } + + if (var0 < 11) { + Login.Login_loadingText = "Loading sprites - " + var0 * 100 / 12 + "%"; + Login.Login_loadingPercent = 70; + } else { + AbstractFont.AbstractFont_modIconSprites = class134.field1307; + class11.redHintArrowSprite.normalize(); + var26 = (int)(Math.random() * 21.0D) - 10; + int var29 = (int)(Math.random() * 21.0D) - 10; + var28 = (int)(Math.random() * 21.0D) - 10; + int var39 = (int)(Math.random() * 41.0D) - 20; + VarpDefinition.mapSceneSprites[0].shiftColors(var26 + var39, var39 + var29, var39 + var28); + Login.Login_loadingText = "Loaded sprites"; + Login.Login_loadingPercent = 70; + Client.field414 = class92.field947; + } + } else if (class92.field947 == Client.field414) { + if (!Canvas.field68.isFullyLoaded()) { + Login.Login_loadingText = "Loading textures - " + "0%"; + Login.Login_loadingPercent = 90; + } else { + class292.textureProvider = new TextureProvider(Canvas.field68, GrandExchangeOfferOwnWorldComparator.archive8, 20, WorldMapIcon_1.clientPreferences.getBrightness(), Client.isLowDetail ? 64 : 128); + Rasterizer3D.method1414(class292.textureProvider); + Rasterizer3D.method1415(WorldMapIcon_1.clientPreferences.getBrightness()); + Client.field414 = class92.field939; + } + } else if (class92.field939 == Client.field414) { + var0 = class292.textureProvider.getLoadedPercentage(); + if (var0 < 100) { + Login.Login_loadingText = "Loading textures - " + var0 + "%"; + Login.Login_loadingPercent = 90; + } else { + Login.Login_loadingText = "Loaded textures"; + Login.Login_loadingPercent = 90; + Client.field414 = class92.field944; + } + } else if (Client.field414 == class92.field944) { + Message.mouseRecorder = new MouseRecorder(); + GameEngine.taskHandler.newThreadTask(Message.mouseRecorder, 10); + Login.Login_loadingText = "Loaded input handler"; + Login.Login_loadingPercent = 92; + Client.field414 = class92.field945; + } else if (class92.field945 == Client.field414) { + if (!WorldMapDecorationType.archive10.tryLoadFileByNames("huffman", "")) { + Login.Login_loadingText = "Loading wordpack - " + 0 + "%"; + Login.Login_loadingPercent = 94; + } else { + Huffman var44 = new Huffman(WorldMapDecorationType.archive10.takeFileByNames("huffman", "")); + class27.method110(var44); + Login.Login_loadingText = "Loaded wordpack"; + Login.Login_loadingPercent = 94; + Client.field414 = class92.field941; + } + } else if (Client.field414 == class92.field941) { + if (!class313.archive4.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + class313.archive4.loadPercent() * 4 / 5 + "%"; + Login.Login_loadingPercent = 96; + } else if (!WorldMapAreaData.field2099.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + WorldMapAreaData.field2099.loadPercent() * 4 / 5 + "%"; + Login.Login_loadingPercent = 96; + } else if (!class47.archive12.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + (80 + class47.archive12.loadPercent() / 6) + "%"; + Login.Login_loadingPercent = 96; + } else if (!VarbitComposition.archive13.isFullyLoaded()) { + Login.Login_loadingText = "Loading interfaces - " + (96 + VarbitComposition.archive13.loadPercent() / 50) + "%"; + Login.Login_loadingPercent = 96; + } else { + Login.Login_loadingText = "Loaded interfaces"; + Login.Login_loadingPercent = 98; + if (class47.archive12.isValidFileName("version.dat", "")) { + Buffer var43 = new Buffer(class47.archive12.takeFileByNames("version.dat", "")); + var43.readUnsignedShort(); + } + + Client.field414 = class92.field946; + } + } else if (Client.field414 == class92.field946) { + Login.Login_loadingPercent = 100; + if (SpotAnimationDefinition.field1597.getGroupCount() > 0 && !SpotAnimationDefinition.field1597.tryLoadGroupByName(field2095.name)) { + Login.Login_loadingText = "Loading world map - " + SpotAnimationDefinition.field1597.groupLoadPercentByName(field2095.name) / 10 + "%"; + } else { + if (NewShit.worldMap == null) { + NewShit.worldMap = new WorldMap(); + NewShit.worldMap.init(SpotAnimationDefinition.field1597, BuddyRankComparator.field1200, WorldMapData_0.field1938, GrandExchangeOfferTotalQuantityComparator.fontBold12, Client.fontsMap, VarpDefinition.mapSceneSprites); + } + + Login.Login_loadingText = "Loaded world map"; + Client.field414 = class92.field936; + } + } else { + if (Client.field414 == class92.field936) { + WorldMapSection2.updateGameState(10); + } + + } + } else if (!class344.archive2.isFullyLoaded()) { + Login.Login_loadingText = "Loading config - " + class344.archive2.loadPercent() + "%"; + Login.Login_loadingPercent = 60; + } else if (!class267.field2224.isFullyLoaded()) { + Login.Login_loadingText = "Loading config - " + (80 + class47.archive12.loadPercent() / 6) + "%"; + Login.Login_loadingPercent = 60; + } else { + Archive var27 = class344.archive2; + FloorOverlayDefinition.FloorOverlayDefinition_archive = var27; + Archive var1 = class344.archive2; + FloorUnderlayDefinition.FloorUnderlayDefinition_archive = var1; + InvDefinition.method879(class344.archive2, class19.field59); + class406.method2058(class344.archive2, class19.field59, Client.isLowDetail); + LoginScreenAnimation.method526(class344.archive2, class19.field59); + class18.method65(class344.archive2); + var2 = class344.archive2; + Archive var3 = class19.field59; + var4 = Client.isMembersWorld; + Font var5 = class369.fontPlain11; + DbRowType.ItemDefinition_archive = var2; + ItemComposition.ItemDefinition_modelArchive = var3; + class129.ItemDefinition_inMembersWorld = var4; + ItemComposition.ItemDefinition_fileCount = DbRowType.ItemDefinition_archive.getGroupFileCount(10); + TaskHandler.ItemDefinition_fontPlain11 = var5; + var25 = class344.archive2; + var7 = UserComparator7.field1190; + var8 = class145.field1338; + class369.SequenceDefinition_archive = var25; + SequenceDefinition.SequenceDefinition_animationsArchive = var7; + SequenceDefinition.SequenceDefinition_skeletonsArchive = var8; + UserComparator8.method670(class344.archive2, class19.field59); + Archive var9 = class344.archive2; + VarbitComposition.VarbitDefinition_archive = var9; + ViewportMouse.method1566(class344.archive2); + HealthBarDefinition.widgetDefinition = new WidgetDefinition(class313.archive4, class19.field59, GrandExchangeOfferOwnWorldComparator.archive8, VarbitComposition.archive13, WorldMapAreaData.field2099); + Archive var10 = class344.archive2; + InvDefinition.InvDefinition_archive = var10; + Archive var11 = class344.archive2; + EnumComposition.EnumDefinition_archive = var11; + Archive var12 = class344.archive2; + class30.VarcInt_archive = var12; + Archive var13 = class344.archive2; + VertexNormal.method1567(class344.archive2); + Archive var14 = class344.archive2; + DbTableType.field4134 = var14; + Archive var15 = class344.archive2; + DbRowType.field4140 = var15; + class399.Widget_cachedModels = new class509(Messages.field1156, 54, class85.clientLanguage, class344.archive2); + Players.Widget_cachedFonts = new class509(Messages.field1156, 47, class85.clientLanguage, class344.archive2); + class176.varcs = new Varcs(); + Archive var16 = class344.archive2; + Archive var17 = GrandExchangeOfferOwnWorldComparator.archive8; + Archive var18 = VarbitComposition.archive13; + HitSplatDefinition.HitSplatDefinition_archive = var16; + HitSplatDefinition.field1640 = var17; + HitSplatDefinition.HitSplatDefinition_fontsArchive = var18; + Archive var19 = class344.archive2; + Archive var20 = GrandExchangeOfferOwnWorldComparator.archive8; + HealthBarDefinition.HealthBarDefinition_archive = var19; + SecureRandomCallable.field851 = var20; + Archive var21 = class344.archive2; + Archive var22 = GrandExchangeOfferOwnWorldComparator.archive8; + class432.WorldMapElement_archive = var22; + if (var21.isFullyLoaded()) { + class137.WorldMapElement_count = var21.getGroupFileCount(35); + WorldMapElement.WorldMapElement_cached = new WorldMapElement[class137.WorldMapElement_count]; + + for (int var23 = 0; var23 < class137.WorldMapElement_count; ++var23) { + byte[] var24 = var21.takeFile(35, var23); + WorldMapElement.WorldMapElement_cached[var23] = new WorldMapElement(var23); + if (var24 != null) { + WorldMapElement.WorldMapElement_cached[var23].decode(new Buffer(var24)); + WorldMapElement.WorldMapElement_cached[var23].method894(); + } + } + } + + Login.Login_loadingText = "Loaded config"; + Login.Login_loadingPercent = 60; + Client.field414 = class92.field937; + } + } + } + } + } + + @ObfuscatedName("kf") + @ObfuscatedSignature( + descriptor = "(Lds;IILiz;I)V", + garbageValue = "398904459" + ) + static final void method1355(Player var0, int var1, int var2, MoveSpeed var3) { + int var4 = var0.pathX[0]; + int var5 = var0.pathY[0]; + int var6 = var0.transformedSize(); + if (var4 >= var6 && var4 < 104 - var6 && var5 >= var6 && var5 < 104 - var6) { + if (var1 >= var6 && var1 < 104 - var6 && var2 >= var6 && var2 < 104 - var6) { + class229 var7 = Client.field654; + int var10 = var0.transformedSize(); + Client.field651.approxDestinationX = var1; + Client.field651.approxDestinationY = var2; + Client.field651.approxDestinationSizeX = 1; + Client.field651.approxDestinationSizeY = 1; + ApproximateRouteStrategy var11 = Client.field651; + int var12 = var7.method1170(var4, var5, var10, var11, Client.collisionMaps[var0.plane], true, Client.field592, Client.field591); + if (var12 >= 1) { + for (int var13 = 0; var13 < var12 - 1; ++var13) { + var0.method495(Client.field592[var13], Client.field591[var13], var3); + } + + } + } + } + } + + @ObfuscatedName("oy") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1657545960" + ) + static void method1356() { + if (Client.oculusOrbOnLocalPlayer && class229.localPlayer != null) { + int var0 = class229.localPlayer.pathX[0]; + int var1 = class229.localPlayer.pathY[0]; + if (var0 < 0 || var1 < 0 || var0 >= 104 || var1 >= 104) { + return; + } + + LoginScreenAnimation.oculusOrbFocalPointX = class229.localPlayer.x; + int var2 = WorldMapDecorationType.getTileHeight(class229.localPlayer.x, class229.localPlayer.y, ItemLayer.Client_plane) - Client.camFollowHeight; + if (var2 < class12.field41) { + class12.field41 = var2; } - HitSplatDefinition.HitSplatDefinition_cached.put(var1, (long)var0); - return var1; + ScriptFrame.oculusOrbFocalPointY = class229.localPlayer.y; + Client.oculusOrbOnLocalPlayer = false; } + } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapData_0.java b/osrs/src/main/java/WorldMapData_0.java index 61da40e0e..2378a6e45 100644 --- a/osrs/src/main/java/WorldMapData_0.java +++ b/osrs/src/main/java/WorldMapData_0.java @@ -3,63 +3,68 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jx") +import java.io.IOException; +import java.net.Socket; + +@ObfuscatedName("ii") @Implements("WorldMapData_0") public class WorldMapData_0 extends AbstractWorldMapData { + @ObfuscatedName("gl") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1938; + WorldMapData_0() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "0" + descriptor = "(Luj;B)V", + garbageValue = "-89" ) @Export("init") void init(Buffer var1) { int var2 = var1.readUnsignedByte(); - if (var2 != class271.field2456.field2457) { + if (var2 != class251.field2079.field2080) { throw new IllegalStateException(""); } else { - super.field2428 = var1.readUnsignedByte(); + super.field2053 = var1.readUnsignedByte(); super.planes = var1.readUnsignedByte(); - super.field2429 = var1.readUnsignedShort(); - super.field2432 = var1.readUnsignedShort(); + super.field2051 = var1.readUnsignedShort(); + super.field2055 = var1.readUnsignedShort(); super.regionX = var1.readUnsignedShort(); super.regionY = var1.readUnsignedShort(); - super.groupId = var1.method2563(); - super.fileId = var1.method2563(); + super.groupId = var1.readNullableLargeSmart(); + super.fileId = var1.readNullableLargeSmart(); } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "2049371979" + descriptor = "(Luj;B)V", + garbageValue = "7" ) @Export("readGeography") void readGeography(Buffer var1) { super.planes = Math.min(super.planes, 4); super.floorUnderlayIds = new short[1][64][64]; super.floorOverlayIds = new short[super.planes][64][64]; - super.field2427 = new byte[super.planes][64][64]; - super.field2426 = new byte[super.planes][64][64]; + super.field2049 = new byte[super.planes][64][64]; + super.field2048 = new byte[super.planes][64][64]; super.decorations = new WorldMapDecoration[super.planes][64][64][]; int var2 = var1.readUnsignedByte(); - if (var2 != class270.field2453.field2454) { - throw new IllegalStateException(""); - } else { - int var3 = var1.readUnsignedByte(); - int var4 = var1.readUnsignedByte(); - if (var3 == super.regionX && var4 == super.regionY) { - for (int var5 = 0; var5 < 64; ++var5) { - for (int var6 = 0; var6 < 64; ++var6) { - this.readTile(var5, var6, var1); - } + int var3 = var1.readUnsignedByte(); + int var4 = var1.readUnsignedByte(); + if (var3 == super.regionX && var4 == super.regionY) { + for (int var5 = 0; var5 < 64; ++var5) { + for (int var6 = 0; var6 < 64; ++var6) { + this.readTile(var5, var6, var1); } - - } else { - throw new IllegalStateException(""); } + + } else { + throw new IllegalStateException(""); } } @@ -70,7 +75,7 @@ public boolean equals(Object var1) { return false; } else { WorldMapData_0 var2 = (WorldMapData_0)var1; - return super.regionX == var2.regionX && super.regionY == var2.regionY; + return var2.regionX == super.regionX && super.regionY == var2.regionY; } } @@ -80,62 +85,71 @@ public int hashCode() { return super.regionX | super.regionY << 8; } - @ObfuscatedName("ae") - static final void method1390(long var0) { - try { - Thread.sleep(var0); - } catch (InterruptedException var3) { - } - + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/net/Socket;III)Lro;", + garbageValue = "-919788218" + ) + public static AbstractSocket method1178(Socket var0, int var1, int var2) throws IOException { + return new BufferedNetSocket(var0, var1, var2); } - @ObfuscatedName("jj") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "-100" + descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", + garbageValue = "265827581" ) - @Export("addNpcsToScene") - static final void addNpcsToScene(boolean var0) { - for (int var1 = 0; var1 < Client.npcCount; ++var1) { - NPC var2 = Client.npcs[Client.npcIndices[var1]]; - if (var2 != null && var2.isVisible() && var2.definition.isVisible == var0 && var2.definition.transformIsVisible()) { - int var3 = var2.x >> 7; - int var4 = var2.y >> 7; - if (var3 >= 0 && var3 < 104 && var4 >= 0 && var4 < 104) { - if (var2.field976 == 1 && (var2.x & 127) == 64 && (var2.y & 127) == 64) { - if (Client.tileLastDrawnActor[var3][var4] == Client.viewportDrawCount) { - continue; - } + public static String method1179(CharSequence var0) { + int var1 = var0.length(); + StringBuilder var2 = new StringBuilder(var1); - Client.tileLastDrawnActor[var3][var4] = Client.viewportDrawCount; + for (int var3 = 0; var3 < var1; ++var3) { + char var4 = var0.charAt(var3); + if ((var4 < 'a' || var4 > 'z') && (var4 < 'A' || var4 > 'Z') && (var4 < '0' || var4 > '9') && var4 != '.' && var4 != '-' && var4 != '*' && var4 != '_') { + if (var4 == ' ') { + var2.append('+'); + } else { + byte var5 = class137.charToByteCp1252(var4); + var2.append('%'); + int var6 = var5 >> 4 & 15; + if (var6 >= 10) { + var2.append((char)(var6 + 55)); + } else { + var2.append((char)(var6 + 48)); } - long var5 = FontName.calculateTag(0, 0, 1, !var2.definition.isInteractable, Client.npcIndices[var1]); - var2.playerCycle = Client.cycle; - class130.scene.drawEntity(HealthBar.Client_plane, var2.x, var2.y, class18.getTileHeight(var2.field976 * 64 - 64 + var2.x, var2.field976 * 64 - 64 + var2.y, HealthBar.Client_plane), var2.field976 * 64 - 64 + 60, var2, var2.rotation, var5, var2.isWalking); + var6 = var5 & 15; + if (var6 >= 10) { + var2.append((char)(var6 + 55)); + } else { + var2.append((char)(var6 + 48)); + } } + } else { + var2.append(var4); } } + return var2.toString(); } - @ObfuscatedName("lh") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/String;", - garbageValue = "20" + descriptor = "(II)I", + garbageValue = "2049995843" ) - @Export("formatItemStacks") - static final String formatItemStacks(int var0) { - String var1 = Integer.toString(var0); - - for (int var2 = var1.length() - 3; var2 > 0; var2 -= 3) { - var1 = var1.substring(0, var2) + "," + var1.substring(var2); - } + @Export("Widget_unpackTargetMask") + public static int Widget_unpackTargetMask(int var0) { + return var0 >> 11 & 63; + } - if (var1.length() > 9) { - return " " + MoveSpeed.colorStartTag(65408) + var1.substring(0, var1.length() - 8) + "M" + " " + " (" + var1 + ")" + ""; - } else { - return var1.length() > 6 ? " " + MoveSpeed.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + MoveSpeed.colorStartTag(16776960) + var1 + ""; - } + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(I)Lcr;", + garbageValue = "850899958" + ) + @Export("getNextWorldListWorld") + static World getNextWorldListWorld() { + return World.World_listCount < World.World_count ? class361.World_worlds[++World.World_listCount - 1] : null; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapData_1.java b/osrs/src/main/java/WorldMapData_1.java index e3a225214..394c7d72b 100644 --- a/osrs/src/main/java/WorldMapData_1.java +++ b/osrs/src/main/java/WorldMapData_1.java @@ -3,121 +3,122 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import javax.imageio.ImageIO; -import java.awt.image.BufferedImage; -import java.awt.image.PixelGrabber; -import java.io.ByteArrayInputStream; -import java.io.IOException; - -@ObfuscatedName("jh") +@ObfuscatedName("jo") @Implements("WorldMapData_1") public class WorldMapData_1 extends AbstractWorldMapData { - @ObfuscatedName("au") + @ObfuscatedName("jc") + @Export("regionLandArchives") + static byte[][] regionLandArchives; + @ObfuscatedName("at") @Export("chunkXLow") int chunkXLow; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("chunkYLow") int chunkYLow; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("chunkX") int chunkX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("chunkY") int chunkY; WorldMapData_1() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "10" + descriptor = "(Luj;I)V", + garbageValue = "1464083774" ) @Export("init") void init(Buffer var1) { int var2 = var1.readUnsignedByte(); - if (var2 != class271.field2455.field2457) { + if (var2 != class251.field2078.field2080) { throw new IllegalStateException(""); } else { - super.field2428 = var1.readUnsignedByte(); + super.field2053 = var1.readUnsignedByte(); super.planes = var1.readUnsignedByte(); - super.field2429 = var1.readUnsignedShort(); - super.field2432 = var1.readUnsignedShort(); + super.field2051 = var1.readUnsignedShort(); + super.field2055 = var1.readUnsignedShort(); this.chunkXLow = var1.readUnsignedByte(); this.chunkYLow = var1.readUnsignedByte(); super.regionX = var1.readUnsignedShort(); super.regionY = var1.readUnsignedShort(); this.chunkX = var1.readUnsignedByte(); this.chunkY = var1.readUnsignedByte(); - super.groupId = var1.method2563(); - super.fileId = var1.method2563(); + super.groupId = var1.readNullableLargeSmart(); + super.fileId = var1.readNullableLargeSmart(); } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "2049371979" + descriptor = "(Luj;B)V", + garbageValue = "7" ) @Export("readGeography") void readGeography(Buffer var1) { super.planes = Math.min(super.planes, 4); super.floorUnderlayIds = new short[1][64][64]; super.floorOverlayIds = new short[super.planes][64][64]; - super.field2427 = new byte[super.planes][64][64]; - super.field2426 = new byte[super.planes][64][64]; + super.field2049 = new byte[super.planes][64][64]; + super.field2048 = new byte[super.planes][64][64]; super.decorations = new WorldMapDecoration[super.planes][64][64][]; int var2 = var1.readUnsignedByte(); - int var3 = var1.readUnsignedByte(); - int var4 = var1.readUnsignedByte(); - int var5 = var1.readUnsignedByte(); - int var6 = var1.readUnsignedByte(); - if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) { - for (int var7 = 0; var7 < 8; ++var7) { - for (int var8 = 0; var8 < 8; ++var8) { - this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1); + if (var2 != class250.field2075.field2077) { + throw new IllegalStateException(""); + } else { + int var3 = var1.readUnsignedByte(); + int var4 = var1.readUnsignedByte(); + int var5 = var1.readUnsignedByte(); + int var6 = var1.readUnsignedByte(); + if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) { + for (int var7 = 0; var7 < 8; ++var7) { + for (int var8 = 0; var8 < 8; ++var8) { + this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1); + } } - } - } else { - throw new IllegalStateException(""); + } else { + throw new IllegalStateException(""); + } } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-2024763677" + garbageValue = "2104981166" ) @Export("getChunkXLow") int getChunkXLow() { return this.chunkXLow; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1047328997" + descriptor = "(B)I", + garbageValue = "6" ) @Export("getChunkYLow") int getChunkYLow() { return this.chunkYLow; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "127" + garbageValue = "0" ) @Export("getChunkX") int getChunkX() { return this.chunkX; } - @ObfuscatedName("ai") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1777174100" + descriptor = "(B)I", + garbageValue = "98" ) @Export("getChunkY") int getChunkY() { @@ -131,8 +132,8 @@ public boolean equals(Object var1) { return false; } else { WorldMapData_1 var2 = (WorldMapData_1)var1; - if (super.regionX == var2.regionX && var2.regionY == super.regionY) { - return var2.chunkX == this.chunkX && this.chunkY == var2.chunkY; + if (var2.regionX == super.regionX && var2.regionY == super.regionY) { + return var2.chunkX == this.chunkX && var2.chunkY == this.chunkY; } else { return false; } @@ -143,103 +144,55 @@ public int hashCode() { return super.regionX | super.regionY << 8 | this.chunkX << 16 | this.chunkY << 24; } - @ObfuscatedName("au") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "([BI)Lui;", - garbageValue = "-2044426638" + descriptor = "(III)Ldt;", + garbageValue = "1462611314" ) - public static final SpritePixels method1484(byte[] var0) { - BufferedImage var1 = null; + static Script method1280(int var0, int var1) { + Script var2 = (Script)Script.Script_cached.get((long)(var0 << 16)); + if (var2 != null) { + return var2; + } else { + String var3 = String.valueOf(var0); + int var4 = class47.archive12.getGroupId(var3); + if (var4 == -1) { + return null; + } else { + byte[] var5 = class47.archive12.takeFileFlat(var4); + if (var5 != null) { + if (var5.length <= 1) { + return null; + } - try { - Class var2 = ImageIO.class; - synchronized(ImageIO.class) { - var1 = ImageIO.read(new ByteArrayInputStream(var0)); - } + var2 = NewShit.newScript(var5); + if (var2 != null) { + Script.Script_cached.put(var2, (long)(var0 << 16)); + return var2; + } + } - int var6 = var1.getWidth(); - int var7 = var1.getHeight(); - int[] var4 = new int[var7 * var6]; - PixelGrabber var5 = new PixelGrabber(var1, 0, 0, var6, var7, var4, 0, var6); - var5.grabPixels(); - return new SpritePixels(var4, var6, var7); - } catch (IOException var9) { - } catch (InterruptedException var10) { + return null; + } } - - return new SpritePixels(0, 0); } - @ObfuscatedName("ao") + @ObfuscatedName("hj") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;IZI)Z", - garbageValue = "-1629994488" + descriptor = "(B)I", + garbageValue = "5" ) - static boolean method1486(CharSequence var0, int var1, boolean var2) { - if (var1 >= 2 && var1 <= 36) { - boolean var3 = false; - boolean var4 = false; - int var5 = 0; - int var6 = var0.length(); - - for (int var7 = 0; var7 < var6; ++var7) { - char var8 = var0.charAt(var7); - if (var7 == 0) { - if (var8 == '-') { - var3 = true; - continue; - } - - if (var8 == '+') { - continue; - } - } - - int var10; - if (var8 >= '0' && var8 <= '9') { - var10 = var8 - '0'; - } else if (var8 >= 'A' && var8 <= 'Z') { - var10 = var8 - '7'; - } else { - if (var8 < 'a' || var8 > 'z') { - return false; - } + static int method1285() { + if (Client.archiveLoaders != null && Client.archiveLoadersDone < Client.archiveLoaders.size()) { + int var0 = 0; - var10 = var8 - 'W'; - } - - if (var10 >= var1) { - return false; - } - - if (var3) { - var10 = -var10; - } - - int var9 = var5 * var1 + var10; - if (var9 / var1 != var5) { - return false; - } - - var5 = var9; - var4 = true; + for (int var1 = 0; var1 <= Client.archiveLoadersDone; ++var1) { + var0 += ((ArchiveLoader)Client.archiveLoaders.get(var1)).loadedCount; } - return var4; + return var0 * 10000 / Client.field549; } else { - throw new IllegalArgumentException("" + var1); + return 10000; } } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "90675667" - ) - static void method1491() { - Login.worldSelectOpen = false; - Login.leftTitleSprite.drawAt(Login.xPadding, 0); - Bounds.rightTitleSprite.drawAt(Login.xPadding + 382, 0); - SoundSystem.logoSprite.drawAt(Login.xPadding + 382 - SoundSystem.logoSprite.subWidth / 2, 18); - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapDecoration.java b/osrs/src/main/java/WorldMapDecoration.java index 641d68842..e7f462fec 100644 --- a/osrs/src/main/java/WorldMapDecoration.java +++ b/osrs/src/main/java/WorldMapDecoration.java @@ -3,16 +3,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kn") +@ObfuscatedName("js") @Implements("WorldMapDecoration") public class WorldMapDecoration { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("objectDefinitionId") final int objectDefinitionId; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("decoration") final int decoration; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("rotation") final int rotation; @@ -22,168 +22,89 @@ public class WorldMapDecoration { this.rotation = var3; } - @ObfuscatedName("ag") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lmi;I)I", - garbageValue = "1522435265" + descriptor = "(B)Lrz;", + garbageValue = "55" ) - static int method1530(Widget var0) { - if (var0.type != 11) { - --class137.Interpreter_stringStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - return 1; - } else { - String var1 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var0.method1835(var1); - return 1; + public static class462 method1329() { + synchronized(class462.field3907) { + if (DirectByteArrayCopier.field3136 == 0) { + return new class462(); + } else { + class462.field3907[--DirectByteArrayCopier.field3136].method2318(); + return class462.field3907[DirectByteArrayCopier.field3136]; + } } } - @ObfuscatedName("ng") + @ObfuscatedName("jz") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "14" + descriptor = "(II)V", + garbageValue = "750324904" ) - @Export("changeGameOptions") - static final void changeGameOptions(int var0) { - class113.process(); + static final void method1330(int var0) { + int[] var1 = class102.sceneMinimapSprite.pixels; + int var2 = var1.length; - for (ObjectSound var1 = (ObjectSound)ObjectSound.objectSounds.last(); var1 != null; var1 = (ObjectSound)ObjectSound.objectSounds.previous()) { - if (var1.obj != null) { - var1.set(); - } + int var3; + for (var3 = 0; var3 < var2; ++var3) { + var1[var3] = 0; } - int var3 = ApproximateRouteStrategy.VarpDefinition_get(var0).type; - if (var3 != 0) { - int var2 = Varps.Varps_main[var0]; - if (var3 == 1) { - if (var2 == 1) { - Rasterizer3D.method1187(0.9D); - ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.9D); - UrlRequester.method653(); - class449.clientPreferences.setBrightness(0.9D); - } + int var4; + int var5; + for (var3 = 1; var3 < 103; ++var3) { + var4 = (103 - var3) * 2048 + 24628; - if (var2 == 2) { - Rasterizer3D.method1187(0.8D); - ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness(0.8D); - UrlRequester.method653(); - class449.clientPreferences.setBrightness(0.8D); + for (var5 = 1; var5 < 103; ++var5) { + if ((Tiles.Tiles_renderFlags[var0][var5][var3] & 24) == 0) { + class36.scene.drawTileMinimap(var1, var4, 512, var0, var5, var3); } - if (var2 == 3) { - HealthBarUpdate.method526(0.7D); + if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var5][var3] & 8) != 0) { + class36.scene.drawTileMinimap(var1, var4, 512, var0 + 1, var5, var3); } - if (var2 == 4) { - HealthBarUpdate.method526(0.6D); - } - } - - if (var3 == 3) { - if (var2 == 0) { - WorldMapEvent.method1588(255); - } - - if (var2 == 1) { - WorldMapEvent.method1588(192); - } - - if (var2 == 2) { - WorldMapEvent.method1588(128); - } - - if (var2 == 3) { - WorldMapEvent.method1588(64); - } - - if (var2 == 4) { - WorldMapEvent.method1588(0); - } - } - - if (var3 == 4) { - if (var2 == 0) { - class385.method2026(127); - } - - if (var2 == 1) { - class385.method2026(96); - } - - if (var2 == 2) { - class385.method2026(64); - } - - if (var2 == 3) { - class385.method2026(32); - } - - if (var2 == 4) { - class385.method2026(0); - } - } - - if (var3 == 5) { - Client.leftClickOpensMenu = var2 == 1; - } - - if (var3 == 6) { - Client.chatEffects = var2; - } - - if (var3 == 9) { - } - - if (var3 == 10) { - if (var2 == 0) { - class14.method44(127); - } - - if (var2 == 1) { - class14.method44(96); - } - - if (var2 == 2) { - class14.method44(64); - } - - if (var2 == 3) { - class14.method44(32); - } - - if (var2 == 4) { - class14.method44(0); - } + var4 += 4; } + } - if (var3 == 17) { - Client.followerIndex = var2 & 65535; - } + var3 = (238 + (int)(Math.random() * 20.0D) - 10 << 16) + (238 + (int)(Math.random() * 20.0D) - 10 << 8) + (238 + (int)(Math.random() * 20.0D) - 10); + var4 = 238 + (int)(Math.random() * 20.0D) - 10 << 16; + class102.sceneMinimapSprite.setRaster(); - if (var3 == 18) { - Client.playerAttackOption = (AttackOption)KeyHandler.findEnumerated(JagNetThread.method1941(), var2); - if (Client.playerAttackOption == null) { - Client.playerAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + int var6; + for (var5 = 1; var5 < 103; ++var5) { + for (var6 = 1; var6 < 103; ++var6) { + if ((Tiles.Tiles_renderFlags[var0][var6][var5] & 24) == 0) { + class511.drawObject(var0, var6, var5, var3, var4); } - } - if (var3 == 19) { - if (var2 == -1) { - Client.combatTargetPlayerIndex = -1; - } else { - Client.combatTargetPlayerIndex = var2 & 2047; + if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var6][var5] & 8) != 0) { + class511.drawObject(var0 + 1, var6, var5, var3, var4); } } + } - if (var3 == 22) { - Client.npcAttackOption = (AttackOption)KeyHandler.findEnumerated(JagNetThread.method1941(), var2); - if (Client.npcAttackOption == null) { - Client.npcAttackOption = AttackOption.AttackOption_dependsOnCombatLevels; + Client.mapIconCount = 0; + + for (var5 = 0; var5 < 104; ++var5) { + for (var6 = 0; var6 < 104; ++var6) { + long var7 = class36.scene.getFloorDecorationTag(ItemLayer.Client_plane, var5, var6); + if (0L != var7) { + int var9 = class232.Entity_unpackID(var7); + int var10 = WorldMapSection2.getObjectDefinition(var9).mapIconId; + if (var10 >= 0 && class141.WorldMapElement_get(var10).field1462) { + Client.mapIcons[Client.mapIconCount] = class141.WorldMapElement_get(var10).getSpriteBool(false); + Client.mapIconXs[Client.mapIconCount] = var5; + Client.mapIconYs[Client.mapIconCount] = var6; + ++Client.mapIconCount; + } } } - } + + class338.rasterProvider.apply(); } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapDecorationType.java b/osrs/src/main/java/WorldMapDecorationType.java index 4381196ff..6ec7c1f35 100644 --- a/osrs/src/main/java/WorldMapDecorationType.java +++ b/osrs/src/main/java/WorldMapDecorationType.java @@ -3,126 +3,132 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nm") +@ObfuscatedName("nx") @Implements("WorldMapDecorationType") -public enum WorldMapDecorationType implements class371 { - @ObfuscatedName("au") +public enum WorldMapDecorationType implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3123(0, 0), - @ObfuscatedName("ae") + field3155(0, 0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3127(1, 0), - @ObfuscatedName("ao") + field3160(1, 0), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3121(2, 0), - @ObfuscatedName("at") + field3154(2, 0), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3122(3, 0), - @ObfuscatedName("ac") + field3153(3, 0), + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3119(9, 2), - @ObfuscatedName("ai") + field3150(9, 2), + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3131(4, 1), - @ObfuscatedName("az") + field3169(4, 1), + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3141(5, 1), - @ObfuscatedName("ap") + field3158(5, 1), + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3135(6, 1), - @ObfuscatedName("aa") + field3159(6, 1), + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3124(7, 1), - @ObfuscatedName("af") + field3164(7, 1), + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3128(8, 1), - @ObfuscatedName("ad") + field3173(8, 1), + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3126(12, 2), - @ObfuscatedName("aq") + field3166(12, 2), + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3136(13, 2), - @ObfuscatedName("al") + field3170(13, 2), + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3132(14, 2), - @ObfuscatedName("an") + field3171(14, 2), + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3134(15, 2), - @ObfuscatedName("ar") + field3168(15, 2), + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3137(16, 2), - @ObfuscatedName("ab") + field3172(16, 2), + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3125(17, 2), - @ObfuscatedName("ag") + field3163(17, 2), + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3129(18, 2), + field3162(18, 2), @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3133(19, 2), - @ObfuscatedName("ax") + field3165(19, 2), + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3139(20, 2), - @ObfuscatedName("ah") + field3167(20, 2), + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3130(21, 2), - @ObfuscatedName("as") + field3161(21, 2), + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3138(10, 2), - @ObfuscatedName("ay") + field3156(10, 2), + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3140(11, 2), - @ObfuscatedName("aj") + field3151(11, 2), + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "Lnm;" + descriptor = "Lnx;" ) - field3120(22, 3); + field3152(22, 3); - @ObfuscatedName("av") + @ObfuscatedName("fz") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + @Export("archive10") + static Archive archive10; + @ObfuscatedName("ag") @Export("id") public final int id; @@ -134,13 +140,38 @@ public enum WorldMapDecorationType implements class371 { this.id = var3; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } + + @ObfuscatedName("jk") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "1041005781" + ) + @Export("getTileHeight") + static final int getTileHeight(int var0, int var1, int var2) { + int var3 = var0 >> 7; + int var4 = var1 >> 7; + if (var3 >= 0 && var4 >= 0 && var3 <= 103 && var4 <= 103) { + int var5 = var2; + if (var2 < 3 && (Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { + var5 = var2 + 1; + } + + int var6 = var0 & 127; + int var7 = var1 & 127; + int var8 = (128 - var6) * Tiles.Tiles_heights[var5][var3][var4] + Tiles.Tiles_heights[var5][var3 + 1][var4] * var6 >> 7; + int var9 = var6 * Tiles.Tiles_heights[var5][var3 + 1][var4 + 1] + Tiles.Tiles_heights[var5][var3][var4 + 1] * (128 - var6) >> 7; + return var8 * (128 - var7) + var7 * var9 >> 7; + } else { + return 0; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapElement.java b/osrs/src/main/java/WorldMapElement.java index 0e6cf7847..6183255af 100644 --- a/osrs/src/main/java/WorldMapElement.java +++ b/osrs/src/main/java/WorldMapElement.java @@ -3,120 +3,103 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hd") +@ObfuscatedName("gr") @Implements("WorldMapElement") public class WorldMapElement extends DualNode { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("WorldMapElement_archive") - public static AbstractArchive WorldMapElement_archive; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "[Lhd;" + descriptor = "[Lgr;" ) @Export("WorldMapElement_cached") public static WorldMapElement[] WorldMapElement_cached; @ObfuscatedName("ao") - @Export("WorldMapElement_count") - public static int WorldMapElement_count; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lle;" - ) - @Export("WorldMapElement_cachedSprites") - public static EvictingDualNodeHashTable WorldMapElement_cachedSprites; - @ObfuscatedName("gu") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Llk;" ) - static Archive field1509; - @ObfuscatedName("uc") - @Export("cameraLookAtAcceleration") - static int cameraLookAtAcceleration; - @ObfuscatedName("ac") + @Export("HitSplatDefinition_cached2") + public static EvictingDualNodeHashTable HitSplatDefinition_cached2; + @ObfuscatedName("ab") @Export("objectId") public final int objectId; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("sprite1") public int sprite1; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("sprite2") int sprite2; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("name") public String name; - @ObfuscatedName("aa") - public int field1522; - @ObfuscatedName("af") + @ObfuscatedName("al") + public int field1466; + @ObfuscatedName("az") @Export("textSize") public int textSize; - @ObfuscatedName("aq") - public boolean field1519; - @ObfuscatedName("al") - public boolean field1518; - @ObfuscatedName("an") + @ObfuscatedName("av") + public boolean field1461; + @ObfuscatedName("ax") + public boolean field1462; + @ObfuscatedName("as") @Export("menuActions") public String[] menuActions; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("menuTargetName") public String menuTargetName; - @ObfuscatedName("ab") - int[] field1516; - @ObfuscatedName("ag") - int field1511; + @ObfuscatedName("ak") + int[] field1459; + @ObfuscatedName("aj") + int field1456; @ObfuscatedName("am") - int field1513; - @ObfuscatedName("ax") - int field1514; - @ObfuscatedName("ah") - int field1512; - @ObfuscatedName("as") + int field1457; + @ObfuscatedName("aq") + int field1458; + @ObfuscatedName("ai") + int field1455; + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "Lhe;" + descriptor = "Lhq;" ) @Export("horizontalAlignment") public HorizontalAlignment horizontalAlignment; - @ObfuscatedName("ay") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "Lhy;" + descriptor = "Lhg;" ) @Export("verticalAlignment") public VerticalAlignment verticalAlignment; - @ObfuscatedName("aj") - int[] field1517; - @ObfuscatedName("av") - byte[] field1510; - @ObfuscatedName("aw") + @ObfuscatedName("an") + int[] field1460; + @ObfuscatedName("ag") + byte[] field1453; + @ObfuscatedName("ad") @Export("category") public int category; static { - WorldMapElement_cachedSprites = new EvictingDualNodeHashTable(256); + HitSplatDefinition_cached2 = new EvictingDualNodeHashTable(256); } public WorldMapElement(int var1) { this.sprite1 = -1; this.sprite2 = -1; this.textSize = 0; - this.field1519 = true; - this.field1518 = false; + this.field1461 = true; + this.field1462 = false; this.menuActions = new String[5]; - this.field1511 = Integer.MAX_VALUE; - this.field1513 = Integer.MAX_VALUE; - this.field1514 = Integer.MIN_VALUE; - this.field1512 = Integer.MIN_VALUE; + this.field1456 = Integer.MAX_VALUE; + this.field1457 = Integer.MAX_VALUE; + this.field1458 = Integer.MIN_VALUE; + this.field1455 = Integer.MIN_VALUE; this.horizontalAlignment = HorizontalAlignment.HorizontalAlignment_centered; this.verticalAlignment = VerticalAlignment.VerticalAlignment_centered; this.category = -1; this.objectId = var1; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "332990063" + descriptor = "(Luj;I)V", + garbageValue = "-987728818" ) @Export("decode") public void decode(Buffer var1) { @@ -130,21 +113,21 @@ public void decode(Buffer var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "675267888" + descriptor = "(Luj;IB)V", + garbageValue = "0" ) @Export("decodeNext") void decodeNext(Buffer var1, int var2) { if (var2 == 1) { - this.sprite1 = var1.method2563(); + this.sprite1 = var1.readNullableLargeSmart(); } else if (var2 == 2) { - this.sprite2 = var1.method2563(); + this.sprite2 = var1.readNullableLargeSmart(); } else if (var2 == 3) { this.name = var1.readStringCp1252NullTerminated(); } else if (var2 == 4) { - this.field1522 = var1.readMedium(); + this.field1466 = var1.readMedium(); } else if (var2 == 5) { var1.readMedium(); } else if (var2 == 6) { @@ -154,11 +137,11 @@ void decodeNext(Buffer var1, int var2) { if (var2 == 7) { var3 = var1.readUnsignedByte(); if ((var3 & 1) == 0) { - this.field1519 = false; + this.field1461 = false; } if ((var3 & 2) == 2) { - this.field1518 = true; + this.field1462 = true; } } else if (var2 == 8) { var1.readUnsignedByte(); @@ -166,32 +149,32 @@ void decodeNext(Buffer var1, int var2) { this.menuActions[var2 - 10] = var1.readStringCp1252NullTerminated(); } else if (var2 == 15) { var3 = var1.readUnsignedByte(); - this.field1516 = new int[var3 * 2]; + this.field1459 = new int[var3 * 2]; int var4; for (var4 = 0; var4 < var3 * 2; ++var4) { - this.field1516[var4] = var1.readShort(); + this.field1459[var4] = var1.readShort(); } var1.readInt(); var4 = var1.readUnsignedByte(); - this.field1517 = new int[var4]; + this.field1460 = new int[var4]; int var5; - for (var5 = 0; var5 < this.field1517.length; ++var5) { - this.field1517[var5] = var1.readInt(); + for (var5 = 0; var5 < this.field1460.length; ++var5) { + this.field1460[var5] = var1.readInt(); } - this.field1510 = new byte[var3]; + this.field1453 = new byte[var3]; for (var5 = 0; var5 < var3; ++var5) { - this.field1510[var5] = var1.readByte(); + this.field1453[var5] = var1.readByte(); } } else if (var2 != 16) { if (var2 == 17) { this.menuTargetName = var1.readStringCp1252NullTerminated(); } else if (var2 == 18) { - var1.method2563(); + var1.readNullableLargeSmart(); } else if (var2 == 19) { this.category = var1.readUnsignedShort(); } else if (var2 == 21) { @@ -206,71 +189,73 @@ void decodeNext(Buffer var1, int var2) { var1.readShort(); var1.readShort(); } else if (var2 == 25) { - var1.method2563(); + var1.readNullableLargeSmart(); } else if (var2 == 28) { var1.readUnsignedByte(); } else if (var2 == 29) { - this.horizontalAlignment = (HorizontalAlignment)KeyHandler.findEnumerated(class113.method658(), var1.readUnsignedByte()); + HorizontalAlignment[] var6 = new HorizontalAlignment[]{HorizontalAlignment.field1521, HorizontalAlignment.field1520, HorizontalAlignment.HorizontalAlignment_centered}; + this.horizontalAlignment = (HorizontalAlignment)class12.findEnumerated(var6, var1.readUnsignedByte()); } else if (var2 == 30) { - this.verticalAlignment = (VerticalAlignment)KeyHandler.findEnumerated(Tiles.method457(), var1.readUnsignedByte()); + VerticalAlignment[] var7 = new VerticalAlignment[]{VerticalAlignment.VerticalAlignment_centered, VerticalAlignment.field1580, VerticalAlignment.field1581}; + this.verticalAlignment = (VerticalAlignment)class12.findEnumerated(var7, var1.readUnsignedByte()); } } } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-79" + descriptor = "(I)V", + garbageValue = "-1778533168" ) - public void method949() { - if (this.field1516 != null) { - for (int var1 = 0; var1 < this.field1516.length; var1 += 2) { - if (this.field1516[var1] < this.field1511) { - this.field1511 = this.field1516[var1]; - } else if (this.field1516[var1] > this.field1514) { - this.field1514 = this.field1516[var1]; + public void method894() { + if (this.field1459 != null) { + for (int var1 = 0; var1 < this.field1459.length; var1 += 2) { + if (this.field1459[var1] < this.field1456) { + this.field1456 = this.field1459[var1]; + } else if (this.field1459[var1] > this.field1458) { + this.field1458 = this.field1459[var1]; } - if (this.field1516[var1 + 1] < this.field1513) { - this.field1513 = this.field1516[var1 + 1]; - } else if (this.field1516[var1 + 1] > this.field1512) { - this.field1512 = this.field1516[var1 + 1]; + if (this.field1459[var1 + 1] < this.field1457) { + this.field1457 = this.field1459[var1 + 1]; + } else if (this.field1459[var1 + 1] > this.field1455) { + this.field1455 = this.field1459[var1 + 1]; } } } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(ZB)Lui;", - garbageValue = "0" + descriptor = "(ZB)Luz;", + garbageValue = "9" ) @Export("getSpriteBool") public SpritePixels getSpriteBool(boolean var1) { - int var2 = this.sprite1 * 1744805107 * -479011781; + int var2 = this.sprite1 ; return this.getSprite(var2); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(IB)Lui;", - garbageValue = "-54" + descriptor = "(II)Luz;", + garbageValue = "539086783" ) @Export("getSprite") SpritePixels getSprite(int var1) { if (var1 < 0) { return null; } else { - SpritePixels var2 = (SpritePixels)WorldMapElement_cachedSprites.get((long)var1); + SpritePixels var2 = (SpritePixels)HitSplatDefinition_cached2.get((long)var1); if (var2 != null) { return var2; } else { - var2 = Tiles.SpriteBuffer_getSprite(WorldMapElement_archive, var1, 0); + var2 = IgnoreList.SpriteBuffer_getSprite(class432.WorldMapElement_archive, var1, 0); if (var2 != null) { - WorldMapElement_cachedSprites.put(var2, (long)var1); + HitSplatDefinition_cached2.put(var2, (long)var1); } return var2; @@ -278,59 +263,52 @@ SpritePixels getSprite(int var1) { } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "1172107767" + garbageValue = "314107499" ) @Export("getObjectId") public int getObjectId() { return this.objectId; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)Lhv;", - garbageValue = "-69" + descriptor = "(Laa;I)Lao;", + garbageValue = "2008844718" ) - @Export("getObjectDefinition") - public static ObjectComposition getObjectDefinition(int var0) { - ObjectComposition var1 = (ObjectComposition)ObjectComposition.ObjectDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = ObjectComposition.ObjectDefinition_archive.takeFile(6, var0); - var1 = new ObjectComposition(); - var1.id = var0; - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - var1.postDecode(); - if (var1.isSolid) { - var1.interactType = 0; - var1.boolean1 = false; - } - - ObjectComposition.ObjectDefinition_cached.put(var1, (long)var0); - return var1; + public static class3 method890(class6 var0) { + switch(var0.field10) { + case 0: + return new class0(); + default: + throw new IllegalArgumentException(); } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)I", - garbageValue = "1376332394" + descriptor = "(I)V", + garbageValue = "-1025083911" ) - @Export("hashString") - public static int hashString(CharSequence var0) { - int var1 = var0.length(); - int var2 = 0; + public static void method893() { + StructComposition.StructDefinition_cached.clear(); + } - for (int var3 = 0; var3 < var1; ++var3) { - var2 = (var2 << 5) - var2 + class348.charToByteCp1252(var0.charAt(var3)); + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(CB)Z", + garbageValue = "-10" + ) + @Export("isCharPrintable") + public static boolean isCharPrintable(char var0) { + if (var0 >= ' ' && var0 <= '~') { + return true; + } else if (var0 >= 160 && var0 <= 255) { + return true; + } else { + return var0 == 8364 || var0 == 338 || var0 == 8212 || var0 == 339 || var0 == 376; } - - return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapEvent.java b/osrs/src/main/java/WorldMapEvent.java index 4fb72d7ad..af436aba3 100644 --- a/osrs/src/main/java/WorldMapEvent.java +++ b/osrs/src/main/java/WorldMapEvent.java @@ -3,30 +3,27 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; -import java.util.Iterator; - -@ObfuscatedName("kl") +@ObfuscatedName("jt") @Implements("WorldMapEvent") public class WorldMapEvent { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("mapElement") public int mapElement; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("coord1") public Coord coord1; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lmc;" + descriptor = "Lmh;" ) @Export("coord2") public Coord coord2; @ObfuscatedSignature( - descriptor = "(ILmc;Lmc;)V" + descriptor = "(ILmh;Lmh;)V" ) public WorldMapEvent(int var1, Coord var2, Coord var3) { this.mapElement = var1; @@ -34,53 +31,33 @@ public WorldMapEvent(int var1, Coord var2, Coord var3) { this.coord2 = var3; } - @ObfuscatedName("nm") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "307364041" + descriptor = "(IIIII)I", + garbageValue = "-2019263957" ) - static final void method1588(int var0) { - var0 = Math.min(Math.max(var0, 0), 255); - if (var0 != class449.clientPreferences.getCurrentMusicVolume()) { - label36: { - if (class449.clientPreferences.getCurrentMusicVolume() == 0) { - boolean var1 = !class305.field2773.isEmpty(); - if (var1) { - Archive var2 = class385.archive6; - if (!class305.field2773.isEmpty()) { - ArrayList var3 = new ArrayList(); - Iterator var4 = class305.field2773.iterator(); - - while (var4.hasNext()) { - MusicSong var5 = (MusicSong)var4.next(); - var5.field2865 = false; - var5.field2866 = false; - var5.field2862 = false; - var5.field2863 = false; - var5.musicTrackArchive = var2; - var5.musicTrackVolume = var0; - var5.field2867 = 0.0F; - var3.add(var5); - } - - class53.method291(var3, class305.musicPlayerStatus, class305.field2766, class305.field2769, class305.field2768, false); - } - - Client.playingJingle = false; - break label36; - } - } + static final int method1381(int var0, int var1, int var2, int var3) { + return var0 * var2 + var3 * var1 >> 16; + } - if (var0 == 0) { - Script.method445(0, 0); - Client.playingJingle = false; - } else { - class300.method1620(var0); - } - } + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "2126248771" + ) + public static void method1382(int var0) { + MouseHandler.MouseHandler_idleCycles = var0; + } - class449.clientPreferences.setCurrentMusicVolume(var0); + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-890618115" + ) + static void method1383(int var0) { + ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var1 != null) { + var1.remove(); } - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapIcon_0.java b/osrs/src/main/java/WorldMapIcon_0.java index 9483f6842..3de2a5379 100644 --- a/osrs/src/main/java/WorldMapIcon_0.java +++ b/osrs/src/main/java/WorldMapIcon_0.java @@ -3,35 +3,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ki") +@ObfuscatedName("jq") @Implements("WorldMapIcon_0") public class WorldMapIcon_0 extends AbstractWorldMapIcon { - @ObfuscatedName("th") - static boolean field2397; - @ObfuscatedName("au") + @ObfuscatedName("ul") + @Export("cameraMoveSpeed") + static int cameraLookAtSpeed; + @ObfuscatedName("at") @Export("element") final int element; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lkq;" + descriptor = "Ljk;" ) @Export("label") final WorldMapLabel label; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("subWidth") final int subWidth; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("subHeight") final int subHeight; @ObfuscatedSignature( - descriptor = "(Lmc;Lmc;ILkq;)V" + descriptor = "(Lmh;Lmh;ILjk;)V" ) WorldMapIcon_0(Coord var1, Coord var2, int var3, WorldMapLabel var4) { super(var1, var2); this.element = var3; this.label = var4; - WorldMapElement var5 = class138.WorldMapElement_get(this.getElement()); + WorldMapElement var5 = class141.WorldMapElement_get(this.getElement()); SpritePixels var6 = var5.getSpriteBool(false); if (var6 != null) { this.subWidth = var6.subWidth; @@ -43,43 +44,66 @@ public class WorldMapIcon_0 extends AbstractWorldMapIcon { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "2135662389" + garbageValue = "-1307533886" ) @Export("getElement") public int getElement() { return this.element; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Lkq;", - garbageValue = "-2114244458" + descriptor = "(B)Ljk;", + garbageValue = "-49" ) @Export("getLabel") WorldMapLabel getLabel() { return this.label; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-655814171" + garbageValue = "472460923" ) @Export("getSubWidth") int getSubWidth() { return this.subWidth; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-816534170" + garbageValue = "-653051141" ) @Export("getSubHeight") int getSubHeight() { return this.subHeight; } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(IIIB)I", + garbageValue = "-4" + ) + static final int method1301(int var0, int var1, int var2) { + int var3 = var0 / var2; + int var4 = var0 & var2 - 1; + int var5 = var1 / var2; + int var6 = var1 & var2 - 1; + int var7 = FadeOutTask.method2153(var3, var5); + int var8 = FadeOutTask.method2153(var3 + 1, var5); + int var9 = FadeOutTask.method2153(var3, var5 + 1); + int var10 = FadeOutTask.method2153(var3 + 1, var5 + 1); + int var12 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var4 * 1024 / var2] >> 1; + int var11 = ((65536 - var12) * var7 >> 16) + (var8 * var12 >> 16); + int var14 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var4 * 1024 / var2] >> 1; + int var13 = ((65536 - var14) * var9 >> 16) + (var14 * var10 >> 16); + int var16 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var6 * 1024 / var2] >> 1; + int var15 = ((65536 - var16) * var11 >> 16) + (var13 * var16 >> 16); + return var15; + } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapIcon_1.java b/osrs/src/main/java/WorldMapIcon_1.java index cdb5c022d..704e1b23c 100644 --- a/osrs/src/main/java/WorldMapIcon_1.java +++ b/osrs/src/main/java/WorldMapIcon_1.java @@ -3,36 +3,42 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jz") +@ObfuscatedName("jp") @Implements("WorldMapIcon_1") public class WorldMapIcon_1 extends AbstractWorldMapIcon { - @ObfuscatedName("au") + @ObfuscatedName("wt") + @ObfuscatedSignature( + descriptor = "Ldl;" + ) + @Export("clientPreferences") + static ClientPreferences clientPreferences; + @ObfuscatedName("at") @Export("objectDefId") final int objectDefId; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ljm;" + descriptor = "Ljl;" ) @Export("region") final WorldMapRegion region; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("element") int element; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lkq;" + descriptor = "Ljk;" ) @Export("label") WorldMapLabel label; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("subWidth") int subWidth; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("subHeight") int subHeight; @ObfuscatedSignature( - descriptor = "(Lmc;Lmc;ILjm;)V" + descriptor = "(Lmh;Lmh;ILjl;)V" ) WorldMapIcon_1(Coord var1, Coord var2, int var3, WorldMapRegion var4) { super(var1, var2); @@ -41,16 +47,16 @@ public class WorldMapIcon_1 extends AbstractWorldMapIcon { this.init(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-10" + descriptor = "(I)V", + garbageValue = "-450829681" ) @Export("init") void init() { - this.element = WorldMapElement.getObjectDefinition(this.objectDefId).transform().mapIconId; - this.label = this.region.createMapLabel(class138.WorldMapElement_get(this.element)); - WorldMapElement var1 = class138.WorldMapElement_get(this.getElement()); + this.element = WorldMapSection2.getObjectDefinition(this.objectDefId).transform().mapIconId; + this.label = this.region.createMapLabel(class141.WorldMapElement_get(this.element)); + WorldMapElement var1 = class141.WorldMapElement_get(this.getElement()); SpritePixels var2 = var1.getSpriteBool(false); if (var2 != null) { this.subWidth = var2.subWidth; @@ -62,82 +68,52 @@ void init() { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "2135662389" + garbageValue = "-1307533886" ) @Export("getElement") public int getElement() { return this.element; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Lkq;", - garbageValue = "-2114244458" + descriptor = "(B)Ljk;", + garbageValue = "-49" ) @Export("getLabel") WorldMapLabel getLabel() { return this.label; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-655814171" + garbageValue = "472460923" ) @Export("getSubWidth") int getSubWidth() { return this.subWidth; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-816534170" + garbageValue = "-653051141" ) @Export("getSubHeight") int getSubHeight() { return this.subHeight; } - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "22" - ) - public static int method1401(int var0) { - --var0; - var0 |= var0 >>> 1; - var0 |= var0 >>> 2; - var0 |= var0 >>> 4; - var0 |= var0 >>> 8; - var0 |= var0 >>> 16; - return var0 + 1; - } - - @ObfuscatedName("nv") + @ObfuscatedName("ox") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-16" + descriptor = "(IB)V", + garbageValue = "-26" ) - static final void method1402() { - PacketBufferNode var0 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLOSE_MODAL, Client.packetWriter.isaacCipher); - Client.packetWriter.addNode(var0); - Interpreter.field704 = true; - - for (InterfaceParent var1 = (InterfaceParent)Client.interfaceParents.first(); var1 != null; var1 = (InterfaceParent)Client.interfaceParents.next()) { - if (var1.type == 0 || var1.type == 3) { - class92.closeInterface(var1, true); - } - } - - if (Client.meslayerContinueWidget != null) { - class218.invalidateWidget(Client.meslayerContinueWidget); - Client.meslayerContinueWidget = null; - } - - Interpreter.field704 = false; + static void method1194(int var0) { + Client.oculusOrbState = var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapLabel.java b/osrs/src/main/java/WorldMapLabel.java index 03b35f2ce..e3c143e4e 100644 --- a/osrs/src/main/java/WorldMapLabel.java +++ b/osrs/src/main/java/WorldMapLabel.java @@ -3,27 +3,27 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kq") +@ObfuscatedName("jk") @Implements("WorldMapLabel") public class WorldMapLabel { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("text") String text; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("width") int width; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("height") int height; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ljb;" + descriptor = "Lio;" ) @Export("size") WorldMapLabelSize size; @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;IILjb;)V" + descriptor = "(Ljava/lang/String;IILio;)V" ) WorldMapLabel(String var1, int var2, int var3, WorldMapLabelSize var4) { this.text = var1; @@ -31,23 +31,4 @@ public class WorldMapLabel { this.height = var3; this.size = var4; } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "39" - ) - public static boolean method1534(int var0) { - return var0 >= WorldMapDecorationType.field3138.id && var0 <= WorldMapDecorationType.field3140.id; - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(CS)Z", - garbageValue = "256" - ) - @Export("isAlphaNumeric") - public static boolean isAlphaNumeric(char var0) { - return var0 >= '0' && var0 <= '9' || var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapLabelSize.java b/osrs/src/main/java/WorldMapLabelSize.java index eb06541df..d67a27a3b 100644 --- a/osrs/src/main/java/WorldMapLabelSize.java +++ b/osrs/src/main/java/WorldMapLabelSize.java @@ -3,77 +3,228 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jb") +@ObfuscatedName("io") @Implements("WorldMapLabelSize") public class WorldMapLabelSize { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ljb;" + descriptor = "Lio;" ) @Export("WorldMapLabelSize_small") public static final WorldMapLabelSize WorldMapLabelSize_small; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ljb;" + descriptor = "Lio;" ) @Export("WorldMapLabelSize_medium") public static final WorldMapLabelSize WorldMapLabelSize_medium; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ljb;" + descriptor = "Lio;" ) @Export("WorldMapLabelSize_large") public static final WorldMapLabelSize WorldMapLabelSize_large; - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Let;" - ) - @Export("World_request") - static UrlRequest World_request; - @ObfuscatedName("cf") - @ObfuscatedSignature( - descriptor = "Lnb;" - ) - static GameBuild field2323; - @ObfuscatedName("at") - final int field2326; - @ObfuscatedName("ac") - final int field2324; - @ObfuscatedName("ai") - final int field2325; + @ObfuscatedName("ap") + public static short[] field1939; + @ObfuscatedName("as") + static int[] field1943; + @ObfuscatedName("ao") + final int field1945; + @ObfuscatedName("ab") + final int field1944; + @ObfuscatedName("au") + final int field1946; static { - WorldMapLabelSize_small = new WorldMapLabelSize(2, 0, 4); - WorldMapLabelSize_medium = new WorldMapLabelSize(0, 1, 2); + WorldMapLabelSize_small = new WorldMapLabelSize(0, 0, 4); + WorldMapLabelSize_medium = new WorldMapLabelSize(2, 1, 2); WorldMapLabelSize_large = new WorldMapLabelSize(1, 2, 0); } WorldMapLabelSize(int var1, int var2, int var3) { - this.field2326 = var1; - this.field2324 = var2; - this.field2325 = var3; + this.field1945 = var1; + this.field1944 = var2; + this.field1946 = var3; } - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(FB)Z", + garbageValue = "-28" + ) + boolean method1184(float var1) { + return var1 >= (float)this.field1946; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IB)Lio;", + garbageValue = "-1" + ) + static WorldMapLabelSize method1185(int var0) { + WorldMapLabelSize[] var1 = new WorldMapLabelSize[]{WorldMapLabelSize_large, WorldMapLabelSize_medium, WorldMapLabelSize_small}; + WorldMapLabelSize[] var2 = var1; + + for (int var3 = 0; var3 < var2.length; ++var3) { + WorldMapLabelSize var4 = var2[var3]; + if (var0 == var4.field1944) { + return var4; + } + } + + return null; + } + + @ObfuscatedName("ci") @ObfuscatedSignature( - descriptor = "(FI)Z", - garbageValue = "-122455389" + descriptor = "(II)Ljava/lang/Object;", + garbageValue = "-1950450301" ) - boolean method1394(float var1) { - return var1 >= (float)this.field2325; + static Object method1187(int var0) { + return class408.method2096((class514)class12.findEnumerated(class514.method2503(), var0)); } - @ObfuscatedName("mx") + @ObfuscatedName("iz") @ObfuscatedSignature( - descriptor = "(Lmi;I)Lmi;", - garbageValue = "1356224559" + descriptor = "(Lds;III)V", + garbageValue = "-896511288" ) - static Widget method1395(Widget var0) { - Widget var1 = BuddyRankComparator.method691(var0); - if (var1 == null) { - var1 = var0.parent; + @Export("performPlayerAnimation") + static void performPlayerAnimation(Player var0, int var1, int var2) { + if (var0.sequence == var1 && var1 != -1) { + int var3 = DynamicObject.SequenceDefinition_get(var1).replyMode; + if (var3 == 1) { + var0.sequenceFrame = 0; + var0.sequenceFrameCycle = 0; + var0.sequenceDelay = var2; + var0.currentSequenceFrameIndex = 0; + } + + if (var3 == 2) { + var0.currentSequenceFrameIndex = 0; + } + } else if (var1 == -1 || var0.sequence == -1 || DynamicObject.SequenceDefinition_get(var1).forcedPriority >= DynamicObject.SequenceDefinition_get(var0.sequence).forcedPriority) { + var0.sequence = var1; + var0.sequenceFrame = 0; + var0.sequenceFrameCycle = 0; + var0.sequenceDelay = var2; + var0.currentSequenceFrameIndex = 0; + var0.field1029 = var0.pathLength; } - return var1; + } + + @ObfuscatedName("lb") + @ObfuscatedSignature( + descriptor = "(Ldn;IIII)V", + garbageValue = "-140985889" + ) + @Export("addNpcToMenu") + static final void addNpcToMenu(NPC var0, int var1, int var2, int var3) { + NPCComposition var4 = var0.definition; + if (Client.menuOptionsCount < 400) { + if (var4.transforms != null) { + var4 = var4.transform(); + } + + if (var4 != null) { + if (var4.isInteractable) { + if (!var4.isFollower || Client.followerIndex == var1) { + String var5 = var0.method578(); + int var6; + if (var4.combatLevel != 0 && var0.combatLevelChange != 0) { + var6 = var0.combatLevelChange != -1 ? var0.combatLevelChange : var4.combatLevel ; + var5 = var5 + class28.method126(var6, class229.localPlayer.combatLevel) + " " + " (" + "level-" + var6 + ")"; + } + + if (var4.isFollower && Client.followerOpsLowPriority) { + WorldMapSectionType.insertMenuItemNoShift("Examine", class167.colorStartTag(16776960) + var5, 1003, var1, var2, var3); + } + + if (Client.isItemSelected == 1) { + WorldMapSectionType.insertMenuItemNoShift("Use", Client.field597 + " " + "->" + " " + class167.colorStartTag(16776960) + var5, 7, var1, var2, var3); + } else if (Client.isSpellSelected) { + if ((UrlRequest.selectedSpellFlags & 2) == 2) { + WorldMapSectionType.insertMenuItemNoShift(Client.field599, Client.field598 + " " + "->" + " " + class167.colorStartTag(16776960) + var5, 8, var1, var2, var3); + } + } else { + var6 = var4.isFollower && Client.followerOpsLowPriority ? 2000 : 0; + String[] var7 = var4.actions; + int var8; + int var9; + if (var7 != null) { + for (var8 = 4; var8 >= 0; --var8) { + if (var0.method577(var8) && var7[var8] != null && !var7[var8].equalsIgnoreCase("Attack")) { + var9 = 0; + if (var8 == 0) { + var9 = var6 + 9; + } + + if (var8 == 1) { + var9 = var6 + 10; + } + + if (var8 == 2) { + var9 = var6 + 11; + } + + if (var8 == 3) { + var9 = var6 + 12; + } + + if (var8 == 4) { + var9 = var6 + 13; + } + + WorldMapSectionType.insertMenuItemNoShift(var7[var8], class167.colorStartTag(16776960) + var5, var9, var1, var2, var3); + } + } + } + + if (var7 != null) { + for (var8 = 4; var8 >= 0; --var8) { + if (var0.method577(var8) && var7[var8] != null && var7[var8].equalsIgnoreCase("Attack")) { + short var10 = 0; + if (Client.npcAttackOption != AttackOption.AttackOption_hidden) { + if (AttackOption.AttackOption_alwaysRightClick == Client.npcAttackOption || AttackOption.AttackOption_dependsOnCombatLevels == Client.npcAttackOption && var4.combatLevel > class229.localPlayer.combatLevel) { + var10 = 2000; + } + + var9 = 0; + if (var8 == 0) { + var9 = var10 + 9; + } + + if (var8 == 1) { + var9 = var10 + 10; + } + + if (var8 == 2) { + var9 = var10 + 11; + } + + if (var8 == 3) { + var9 = var10 + 12; + } + + if (var8 == 4) { + var9 = var10 + 13; + } + + WorldMapSectionType.insertMenuItemNoShift(var7[var8], class167.colorStartTag(16776960) + var5, var9, var1, var2, var3); + } + } + } + } + + if (!var4.isFollower || !Client.followerOpsLowPriority) { + WorldMapSectionType.insertMenuItemNoShift("Examine", class167.colorStartTag(16776960) + var5, 1003, var1, var2, var3); + } + } + + } + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapManager.java b/osrs/src/main/java/WorldMapManager.java index 5f72f9e18..3cda6b167 100644 --- a/osrs/src/main/java/WorldMapManager.java +++ b/osrs/src/main/java/WorldMapManager.java @@ -3,86 +3,83 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.lang.management.GarbageCollectorMXBean; -import java.lang.management.ManagementFactory; import java.util.*; -@ObfuscatedName("jd") +@ObfuscatedName("jf") @Implements("WorldMapManager") public final class WorldMapManager { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("loaded") boolean loaded; - @ObfuscatedName("ae") - @Export("loadStarted") - boolean loadStarted; - @ObfuscatedName("ao") + @ObfuscatedName("ah") + boolean field1987; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lkv;" + descriptor = "Ljx;" ) @Export("mapAreaData") WorldMapAreaData mapAreaData; - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lui;" + descriptor = "Luz;" ) @Export("compositeTextureSprite") SpritePixels compositeTextureSprite; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("icons") HashMap icons; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "[[Ljm;" + descriptor = "[[Ljl;" ) @Export("regions") WorldMapRegion[][] regions; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("scaleHandlers") HashMap scaleHandlers; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "[Luk;" + descriptor = "[Lup;" ) @Export("mapSceneSprites") IndexedSprite[] mapSceneSprites; - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("geographyArchive") final AbstractArchive geographyArchive; - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lnu;" + descriptor = "Lol;" ) @Export("groundArchive") final AbstractArchive groundArchive; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("fonts") final HashMap fonts; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("tileX") int tileX; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("tileY") int tileY; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("tileWidth") int tileWidth; - @ObfuscatedName("ar") + @ObfuscatedName("ay") @Export("tileHeight") int tileHeight; - @ObfuscatedName("ab") + @ObfuscatedName("ak") @Export("pixelsPerTile") public int pixelsPerTile; @ObfuscatedSignature( - descriptor = "([Luk;Ljava/util/HashMap;Lnu;Lnu;)V" + descriptor = "([Lup;Ljava/util/HashMap;Lol;Lol;)V" ) public WorldMapManager(IndexedSprite[] var1, HashMap var2, AbstractArchive var3, AbstractArchive var4) { this.loaded = false; - this.loadStarted = false; + this.field1987 = false; this.scaleHandlers = new HashMap(); this.pixelsPerTile = 0; this.mapSceneSprites = var1; @@ -91,28 +88,27 @@ public WorldMapManager(IndexedSprite[] var1, HashMap var2, AbstractArchive var3, this.groundArchive = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;Ljava/lang/String;ZI)V", - garbageValue = "948733359" + descriptor = "(Lol;Ljava/lang/String;ZZB)V", + garbageValue = "-4" ) - @Export("load") - public void load(AbstractArchive var1, String var2, boolean var3) { - if (!this.loadStarted) { + public void method1264(AbstractArchive var1, String var2, boolean var3, boolean var4) { + if (!this.field1987) { this.loaded = false; - this.loadStarted = true; + this.field1987 = true; System.nanoTime(); - int var4 = var1.getGroupId(WorldMapCacheName.field2471.name); - int var5 = var1.getFileId(var4, var2); - Buffer var6 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field2471.name, var2)); - Buffer var7 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field2469.name, var2)); + int var5 = var1.getGroupId(WorldMapCacheName.field2095.name); + int var6 = var1.getFileId(var5, var2); + Buffer var7 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field2095.name, var2)); + Buffer var8 = new Buffer(var1.takeFileByNames(WorldMapCacheName.field2093.name, var2)); System.nanoTime(); System.nanoTime(); this.mapAreaData = new WorldMapAreaData(); try { - this.mapAreaData.init(var6, var7, var5, var3); - } catch (IllegalStateException var19) { + this.mapAreaData.method1363(var7, var8, var6, var3, var4); + } catch (IllegalStateException var20) { return; } @@ -123,68 +119,68 @@ public void load(AbstractArchive var1, String var2, boolean var3) { this.tileY = this.mapAreaData.getRegionLowY() * 64; this.tileWidth = (this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1) * 64; this.tileHeight = (this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1) * 64; - int var16 = this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1; - int var9 = this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1; + int var17 = this.mapAreaData.getRegionHighX() - this.mapAreaData.getRegionLowX() + 1; + int var10 = this.mapAreaData.getRegionHighY() - this.mapAreaData.getRegionLowY() + 1; System.nanoTime(); System.nanoTime(); WorldMapRegion.WorldMapRegion_cachedSprites.clear(); - this.regions = new WorldMapRegion[var16][var9]; - Iterator var10 = this.mapAreaData.worldMapData0Set.iterator(); - - while (var10.hasNext()) { - WorldMapData_0 var11 = (WorldMapData_0)var10.next(); - int var12 = var11.regionX; - int var13 = var11.regionY; - int var14 = var12 - this.mapAreaData.getRegionLowX(); - int var15 = var13 - this.mapAreaData.getRegionLowY(); - this.regions[var14][var15] = new WorldMapRegion(var12, var13, this.mapAreaData.getBackGroundColor(), this.fonts); - this.regions[var14][var15].initWorldMapData0(var11, this.mapAreaData.iconList); + this.regions = new WorldMapRegion[var17][var10]; + Iterator var11 = this.mapAreaData.field2100.iterator(); + + while (var11.hasNext()) { + WorldMapData_0 var12 = (WorldMapData_0)var11.next(); + int var13 = var12.regionX; + int var14 = var12.regionY; + int var15 = var13 - this.mapAreaData.getRegionLowX(); + int var16 = var14 - this.mapAreaData.getRegionLowY(); + this.regions[var15][var16] = new WorldMapRegion(var13, var14, this.mapAreaData.method1218(), this.fonts); + this.regions[var15][var16].initWorldMapData0(var12, this.mapAreaData.iconList); } - for (int var17 = 0; var17 < var16; ++var17) { - for (int var18 = 0; var18 < var9; ++var18) { - if (this.regions[var17][var18] == null) { - this.regions[var17][var18] = new WorldMapRegion(this.mapAreaData.getRegionLowX() + var17, this.mapAreaData.getRegionLowY() + var18, this.mapAreaData.getBackGroundColor(), this.fonts); - this.regions[var17][var18].initWorldMapData1(this.mapAreaData.worldMapData1Set, this.mapAreaData.iconList); + for (int var18 = 0; var18 < var17; ++var18) { + for (int var19 = 0; var19 < var10; ++var19) { + if (this.regions[var18][var19] == null) { + this.regions[var18][var19] = new WorldMapRegion(this.mapAreaData.getRegionLowX() + var18, this.mapAreaData.getRegionLowY() + var19, this.mapAreaData.method1218(), this.fonts); + this.regions[var18][var19].initWorldMapData1(this.mapAreaData.field2101, this.mapAreaData.iconList); } } } System.nanoTime(); System.nanoTime(); - if (var1.isValidFileName(WorldMapCacheName.field2470.name, var2)) { - byte[] var20 = var1.takeFileByNames(WorldMapCacheName.field2470.name, var2); - this.compositeTextureSprite = WorldMapData_1.method1484(var20); + if (var1.isValidFileName(WorldMapCacheName.field2094.name, var2)) { + byte[] var21 = var1.takeFileByNames(WorldMapCacheName.field2094.name, var2); + this.compositeTextureSprite = WorldMapArchiveLoader.method2391(var21); } System.nanoTime(); var1.clearGroups(); - var1.clearFiles(); + var1.method1943(); this.loaded = true; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "1337729553" + garbageValue = "-120523343" ) @Export("clearIcons") public final void clearIcons() { this.icons = null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIIIIIIB)V", - garbageValue = "-78" + descriptor = "(IIIIIIIII)V", + garbageValue = "-737280912" ) @Export("drawTiles") public final void drawTiles(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { int[] var9 = Rasterizer2D.Rasterizer2D_pixels; int var10 = Rasterizer2D.Rasterizer2D_width; int var11 = Rasterizer2D.Rasterizer2D_height; - float[] var12 = Rasterizer2D.field4217; + float[] var12 = Rasterizer2D.field4245; int[] var13 = new int[4]; Rasterizer2D.Rasterizer2D_getClipArray(var13); WorldMapRectangle var14 = this.createWorldMapRectangle(var1, var2, var3, var4); @@ -208,24 +204,24 @@ public final void drawTiles(int var1, int var2, int var3, int var4, int var5, in } } - Rasterizer3D.method1198(var9, var10, var11, var12); + Rasterizer3D.method1426(var9, var10, var11, var12); Rasterizer2D.Rasterizer2D_setClipArray(var13); - var19 = (int)(64.0F * var15); + var19 = (int)(var15 * 64.0F); var20 = this.tileX + var1; int var21 = var2 + this.tileY; - for (int var22 = var14.x; var22 < var14.width + var14.x; ++var22) { + for (int var22 = var14.x; var22 < var14.x + var14.width; ++var22) { for (int var23 = var14.y; var23 < var14.y + var14.height; ++var23) { - this.regions[var22][var23].method1436(var5 + (this.regions[var22][var23].regionX * 64 - var20) * var19 / 64, var8 - (this.regions[var22][var23].regionY * 64 - var21 + 64) * var19 / 64, var19); + this.regions[var22][var23].method1230(var5 + (this.regions[var22][var23].regionX * 64 - var20) * var19 / 64, var8 - (this.regions[var22][var23].regionY * 64 - var21 + 64) * var19 / 64, var19); } } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(IIIIIIIILjava/util/HashSet;Ljava/util/HashSet;IIZI)V", - garbageValue = "-1410241110" + garbageValue = "-1576808810" ) @Export("drawElements") public final void drawElements(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, HashSet var9, HashSet var10, int var11, int var12, boolean var13) { @@ -238,17 +234,17 @@ public final void drawElements(int var1, int var2, int var3, int var4, int var5, int var19; int var20; for (var19 = var14.x; var19 < var14.x + var14.width; ++var19) { - for (var20 = var14.y; var20 < var14.y + var14.height; ++var20) { + for (var20 = var14.y; var20 < var14.height + var14.y; ++var20) { if (var13) { this.regions[var19][var20].initWorldMapIcon1s(); } - this.regions[var19][var20].method1446(var5 + (this.regions[var19][var20].regionX * 64 - var17) * var16 / 64, var8 - (this.regions[var19][var20].regionY * 64 - var18 + 64) * var16 / 64, var16, var9); + this.regions[var19][var20].method1240(var5 + (this.regions[var19][var20].regionX * 64 - var17) * var16 / 64, var8 - (this.regions[var19][var20].regionY * 64 - var18 + 64) * var16 / 64, var16, var9); } } if (var10 != null && var11 > 0) { - for (var19 = var14.x; var19 < var14.width + var14.x; ++var19) { + for (var19 = var14.x; var19 < var14.x + var14.width; ++var19) { for (var20 = var14.y; var20 < var14.height + var14.y; ++var20) { this.regions[var19][var20].flashElements(var10, var11, var12); } @@ -257,10 +253,10 @@ public final void drawElements(int var1, int var2, int var3, int var4, int var5, } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IIIILjava/util/HashSet;IIB)V", - garbageValue = "28" + descriptor = "(IIIILjava/util/HashSet;III)V", + garbageValue = "-1372538042" ) @Export("drawOverview") public void drawOverview(int var1, int var2, int var3, int var4, HashSet var5, int var6, int var7) { @@ -297,25 +293,25 @@ public void drawOverview(int var1, int var2, int var3, int var4, HashSet var5, i } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(IIIIIIIIIII)Ljava/util/List;", - garbageValue = "790077229" + garbageValue = "-44973275" ) - public List method1475(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { + public List method1270(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { LinkedList var11 = new LinkedList(); if (!this.loaded) { return var11; } else { WorldMapRectangle var12 = this.createWorldMapRectangle(var1, var2, var3, var4); float var13 = this.getPixelsPerTile(var7, var3 - var1); - int var14 = (int)(var13 * 64.0F); + int var14 = (int)(64.0F * var13); int var15 = this.tileX + var1; int var16 = var2 + this.tileY; for (int var17 = var12.x; var17 < var12.x + var12.width; ++var17) { - for (int var18 = var12.y; var18 < var12.y + var12.height; ++var18) { - List var19 = this.regions[var17][var18].method1467(var5 + (this.regions[var17][var18].regionX * 64 - var15) * var14 / 64, var8 + var6 - (this.regions[var17][var18].regionY * 64 - var16 + 64) * var14 / 64, var14, var9, var10); + for (int var18 = var12.y; var18 < var12.height + var12.y; ++var18) { + List var19 = this.regions[var17][var18].method1261(var5 + (this.regions[var17][var18].regionX * 64 - var15) * var14 / 64, var8 + var6 - (this.regions[var17][var18].regionY * 64 - var16 + 64) * var14 / 64, var14, var9, var10); if (!var19.isEmpty()) { var11.addAll(var19); } @@ -326,10 +322,10 @@ public List method1475(int var1, int var2, int var3, int var4, int var5, int var } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IIIIB)Lks;", - garbageValue = "97" + descriptor = "(IIIII)Ljy;", + garbageValue = "-242177292" ) @Export("createWorldMapRectangle") WorldMapRectangle createWorldMapRectangle(int var1, int var2, int var3, int var4) { @@ -369,20 +365,29 @@ WorldMapRectangle createWorldMapRectangle(int var1, int var2, int var3, int var4 return var5; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-50" + descriptor = "(I)Z", + garbageValue = "2083018743" ) @Export("isLoaded") public boolean isLoaded() { return this.loaded; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(I)Ljava/util/HashMap;", - garbageValue = "1183884840" + descriptor = "(I)I", + garbageValue = "-1029220515" + ) + public int method1273() { + return this.mapAreaData.method1219(); + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(B)Ljava/util/HashMap;", + garbageValue = "-62" ) @Export("buildIcons") public HashMap buildIcons() { @@ -390,10 +395,10 @@ public HashMap buildIcons() { return this.icons; } - @ObfuscatedName("af") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1440528600" + descriptor = "(S)V", + garbageValue = "22535" ) @Export("buildIcons0") void buildIcons0() { @@ -427,10 +432,10 @@ void buildIcons0() { } - @ObfuscatedName("ad") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(IIB)F", - garbageValue = "0" + descriptor = "(III)F", + garbageValue = "847621694" ) @Export("getPixelsPerTile") float getPixelsPerTile(int var1, int var2) { @@ -445,77 +450,50 @@ float getPixelsPerTile(int var1, int var2) { } } - @ObfuscatedName("bb") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1998929548" + descriptor = "(III)V", + garbageValue = "-129998298" ) - @Export("getGcDuration") - protected static int getGcDuration() { - int var0 = 0; - if (GraphicsDefaults.garbageCollector == null || !GraphicsDefaults.garbageCollector.isValid()) { - try { - Iterator var1 = ManagementFactory.getGarbageCollectorMXBeans().iterator(); - - while (var1.hasNext()) { - GarbageCollectorMXBean var2 = (GarbageCollectorMXBean)var1.next(); - if (var2.isValid()) { - GraphicsDefaults.garbageCollector = var2; - GameEngine.garbageCollectorLastCheckTimeMs = -1L; - GameEngine.garbageCollectorLastCollectionTime = -1L; - } - } - } catch (Throwable var11) { - } - } - - if (GraphicsDefaults.garbageCollector != null) { - long var9 = GameEngine.clockNow(); - long var3 = GraphicsDefaults.garbageCollector.getCollectionTime(); - if (GameEngine.garbageCollectorLastCollectionTime != -1L) { - long var5 = var3 - GameEngine.garbageCollectorLastCollectionTime; - long var7 = var9 - GameEngine.garbageCollectorLastCheckTimeMs; - if (var7 != 0L) { - var0 = (int)(100L * var5 / var7); - } + public static void method1265(int var0, int var1) { + EnumComposition.method925(var0, var1, 0, 0); + class316.field2787.clear(); + class316.field2798.clear(); + if (class316.musicSongs.isEmpty() || var0 == 0 && var1 == 0) { + SecureRandomCallable.method457(); + } else { + class316.field2798.add(new DelayFadeTask((SongTask)null, class316.musicPlayerStatus)); + class316.field2798.add(new FadeOutTask((SongTask)null, 0, false, class316.field2794)); + ArrayList var3 = new ArrayList(); + Iterator var4 = class316.musicSongs.iterator(); + + while (var4.hasNext()) { + MusicSong var5 = (MusicSong)var4.next(); + var3.add(var5); } - GameEngine.garbageCollectorLastCollectionTime = var3; - GameEngine.garbageCollectorLastCheckTimeMs = var9; + class316.field2798.add(new class413((SongTask)null, var3)); } - return var0; } - @ObfuscatedName("it") + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "549476469" + descriptor = "(S)V", + garbageValue = "1154" ) - static final void method1482() { - int[] var0 = Players.Players_indices; - - int var1; - for (var1 = 0; var1 < Players.Players_count; ++var1) { - Player var2 = Client.players[var0[var1]]; - if (var2 != null && var2.overheadTextCyclesRemaining > 0) { - --var2.overheadTextCyclesRemaining; - if (var2.overheadTextCyclesRemaining == 0) { - var2.overheadText = null; - } - } + protected static final void method1277() { + ArchiveDiskAction.clock.mark(); + + int var0; + for (var0 = 0; var0 < 32; ++var0) { + GameEngine.graphicsTickTimes[var0] = 0L; } - for (var1 = 0; var1 < Client.npcCount; ++var1) { - int var4 = Client.npcIndices[var1]; - NPC var3 = Client.npcs[var4]; - if (var3 != null && var3.overheadTextCyclesRemaining > 0) { - --var3.overheadTextCyclesRemaining; - if (var3.overheadTextCyclesRemaining == 0) { - var3.overheadText = null; - } - } + for (var0 = 0; var0 < 32; ++var0) { + GameEngine.clientTickTimes[var0] = 0L; } + GameEngine.gameCyclesToDo = 0; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapRectangle.java b/osrs/src/main/java/WorldMapRectangle.java index 622f2693d..34e1e2635 100644 --- a/osrs/src/main/java/WorldMapRectangle.java +++ b/osrs/src/main/java/WorldMapRectangle.java @@ -3,198 +3,357 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ks") +@ObfuscatedName("jy") @Implements("WorldMapRectangle") public final class WorldMapRectangle { @ObfuscatedName("au") + @Export("PcmPlayer_stereo") + public static boolean PcmPlayer_stereo; + @ObfuscatedName("at") @Export("width") int width; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("height") int height; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("x") int x; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("y") int y; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Ljd;" + descriptor = "Ljf;" ) @Export("this$0") @ObfuscatedName("this$0") final WorldMapManager this$0; @ObfuscatedSignature( - descriptor = "(Ljd;)V" + descriptor = "(Ljf;)V" ) WorldMapRectangle(WorldMapManager var1) { this.this$0 = var1; } - @ObfuscatedName("ar") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-213889891" + descriptor = "(I)I", + garbageValue = "-1725155859" ) - static int method1528(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - if (var0 == 1600) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollX; - return 1; - } else if (var0 == 1601) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollY; - return 1; + static int method1326() { + return class28.KeyHandler_keyCodes.length; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-373966383" + ) + static int method1327(int var0, Script var1, boolean var2) { + boolean var3 = true; + Widget var4; + if (var0 >= 2000) { + var0 -= 1000; + var4 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + var3 = false; } else { - class329 var7; - if (var0 == 1602) { - if (var3.type == 12) { - var7 = var3.method1844(); - if (var7 != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7.method1779().method2041(); + var4 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + } + + int var11; + if (var0 == 1300) { + var11 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] - 1; + if (var11 >= 0 && var11 <= 9) { + var4.setAction(var11, Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]); + return 1; + } else { + --class127.Interpreter_stringStackSize; + return 1; + } + } else { + int var6; + if (var0 == 1301) { + DbTableType.Interpreter_intStackSize -= 2; + var11 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var4.parent = HealthBarDefinition.widgetDefinition.getWidgetChild(var11, var6); + return 1; + } else if (var0 == 1302) { + var4.isScrollBar = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 1303) { + var4.dragZoneSize = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + return 1; + } else if (var0 == 1304) { + var4.dragThreshold = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + return 1; + } else if (var0 == 1305) { + var4.dataText = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + return 1; + } else if (var0 == 1306) { + var4.spellActionName = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + return 1; + } else if (var0 == 1307) { + var4.actions = null; + return 1; + } else if (var0 == 1308) { + var4.prioritizeMenuEntry = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else if (var0 == 1309) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else { + int var7; + byte[] var9; + if (var0 != 1350) { + byte var5; + if (var0 == 1351) { + DbTableType.Interpreter_intStackSize -= 2; + var5 = 10; + var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]}; + byte[] var10 = new byte[]{(byte)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]}; + class176.Widget_setKey(var4, var5, var9, var10); + return 1; + } else if (var0 == 1352) { + DbTableType.Interpreter_intStackSize -= 3; + var11 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] - 1; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + if (var11 >= 0 && var11 <= 9) { + WorldMapAreaData.Widget_setKeyRate(var4, var11, var6, var7); + return 1; + } else { + throw new RuntimeException(); + } + } else if (var0 == 1353) { + var5 = 10; + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + WorldMapAreaData.Widget_setKeyRate(var4, var5, var6, var7); + return 1; + } else if (var0 == 1354) { + --DbTableType.Interpreter_intStackSize; + var11 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] - 1; + if (var11 >= 0 && var11 <= 9) { + class137.Widget_setKeyIgnoreHeld(var4, var11); + return 1; + } else { + throw new RuntimeException(); + } + } else if (var0 == 1355) { + var5 = 10; + class137.Widget_setKeyIgnoreHeld(var4, var5); return 1; + } else { + return 2; + } + } else { + byte[] var8 = null; + var9 = null; + if (var3) { + DbTableType.Interpreter_intStackSize -= 10; + + for (var7 = 0; var7 < 10 && Interpreter.Interpreter_intStack[var7 + DbTableType.Interpreter_intStackSize] >= 0; var7 += 2) { + } + + if (var7 > 0) { + var8 = new byte[var7 / 2]; + var9 = new byte[var7 / 2]; + + for (var7 -= 2; var7 >= 0; var7 -= 2) { + var8[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + DbTableType.Interpreter_intStackSize]; + var9[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + DbTableType.Interpreter_intStackSize + 1]; + } + } + } else { + DbTableType.Interpreter_intStackSize -= 2; + var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]}; + var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]}; + } + + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] - 1; + if (var7 >= 0 && var7 <= 9) { + class176.Widget_setKey(var4, var7, var8, var9); + return 1; + } else { + throw new RuntimeException(); } } + } + } + } + + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-1752890787" + ) + static int method1328(int var0, Script var1, boolean var2) { + if (var0 == 3800) { + if (class478.guestClanSettings != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + Timer.field3782 = class478.guestClanSettings; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else { + int var3; + if (var0 == 3801) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (Client.currentClanSettings[var3] != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + Timer.field3782 = Client.currentClanSettings[var3]; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.text; - return 1; - } else if (var0 == 1603) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollWidth; return 1; - } else if (var0 == 1604) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.scrollHeight; + } else if (var0 == 3802) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = Timer.field3782.name; return 1; - } else if (var0 == 1605) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelZoom; + } else if (var0 == 3803) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.allowGuests ? 1 : 0; return 1; - } else if (var0 == 1606) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleX; + } else if (var0 == 3804) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1380; return 1; - } else if (var0 == 1607) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleZ; + } else if (var0 == 3805) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1383; return 1; - } else if (var0 == 1608) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelAngleY; + } else if (var0 == 3806) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1381; return 1; - } else if (var0 == 1609) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.transparencyTop; + } else if (var0 == 3807) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1382; return 1; - } else if (var0 == 1610) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.transparencyBot; + } else if (var0 == 3809) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.memberCount; return 1; - } else if (var0 == 1611) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.color; + } else if (var0 == 3810) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = Timer.field3782.memberNames[var3]; return 1; - } else if (var0 == 1612) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.color2; + } else if (var0 == 3811) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.memberRanks[var3]; return 1; - } else if (var0 == 1613) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); + } else if (var0 == 3812) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.bannedMemberCount; return 1; - } else if (var0 == 1614) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; + } else if (var0 == 3813) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = Timer.field3782.bannedMemberNames[var3]; return 1; } else { - class324 var4; - if (var0 == 1617) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2892 * -1007608077 * 1891510843 : 0; - } - - if (var0 == 1618) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2890 * -113152143 * 439316881 : 0; + int var5; + int var6; + if (var0 == 3814) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.method801(var3, var6, var5); return 1; - } else if (var0 == 1619) { - var7 = var3.method1844(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1780().method2041() : ""; + } else if (var0 == 3815) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.currentOwner; return 1; - } else if (var0 == 1620) { - var4 = var3.method1845(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4 != null ? var4.field2891 * 1092445257 * -767308295 : 0; + } else if (var0 == 3816) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1388; return 1; - } else if (var0 == 1621) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1790() : 0; + } else if (var0 == 3817) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.method800(Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]); return 1; - } else if (var0 == 1622) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1791() : 0; + } else if (var0 == 3818) { + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.getSortedMembers()[Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]]; return 1; - } else if (var0 == 1623) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1792() : 0; + } else if (var0 == 3819) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + UserComparator4.method667(var6, var3); return 1; - } else if (var0 == 1624) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null && var7.method1782() ? 1 : 0; + } else if (var0 == 3820) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1390[var3]; return 1; - } else if (var0 != 1625) { - if (var0 == 1626) { - var7 = var3.method1844(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1781().method2113() : ""; - return 1; - } else if (var0 == 1627) { - var7 = var3.method1844(); - int var5 = var7 != null ? var7.method1786() : 0; - int var6 = var7 != null ? var7.method1785() : 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Math.min(var5, var6); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Math.max(var5, var6); - return 1; - } else if (var0 == 1628) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1785() : 0; - return 1; - } else if (var0 == 1629) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1794() : 0; - return 1; - } else if (var0 == 1630) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1793() : 0; - return 1; - } else if (var0 == 1631) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1795() : 0; - return 1; - } else if (var0 == 1632) { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null ? var7.method1796() : 0; + } else { + if (var0 == 3821) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + boolean var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1] == 1; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + class4.method6(var5, var3, var4); + } + + if (var0 == 3822) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Timer.field3782.field1379[var3] ? 1 : 0; return 1; - } else { - class27 var8; - if (var0 == 1633) { - var8 = var3.method1846(); - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = var8 != null ? var8.method98(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]) : 0; - return 1; - } else if (var0 == 1634) { - var8 = var3.method1846(); - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = var8 != null ? var8.method99((char)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]) : 0; - return 1; + } else if (var0 == 3850) { + if (ItemContainer.guestClanChannel != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + VarcInt.field1474 = ItemContainer.guestClanChannel; } else { - return 2; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; } + + return 1; + } else if (var0 == 3851) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (Client.currentClanChannels[var3] != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + VarcInt.field1474 = Client.currentClanChannels[var3]; + class395.field3683 = var3; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3852) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = VarcInt.field1474.name; + return 1; + } else if (var0 == 3853) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = VarcInt.field1474.field1418; + return 1; + } else if (var0 == 3854) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = VarcInt.field1474.field1417; + return 1; + } else if (var0 == 3855) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = VarcInt.field1474.method857(); + return 1; + } else if (var0 == 3856) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ((ClanChannelMember)VarcInt.field1474.members.get(var3)).username.getName(); + return 1; + } else if (var0 == 3857) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((ClanChannelMember)VarcInt.field1474.members.get(var3)).rank; + return 1; + } else if (var0 == 3858) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((ClanChannelMember)VarcInt.field1474.members.get(var3)).world; + return 1; + } else if (var0 == 3859) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class30.method134(class395.field3683, var3); + return 1; + } else if (var0 == 3860) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = VarcInt.field1474.method858(Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]); + return 1; + } else if (var0 == 3861) { + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = VarcInt.field1474.getSortedMembers()[Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]]; + return 1; + } else if (var0 == 3890) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.varclan != null ? 1 : 0; + return 1; + } else { + return 2; } - } else { - var7 = var3.method1844(); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7 != null && var7.method1783() ? 1 : 0; - return 1; } } } } - - @ObfuscatedName("ip") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "853160118" - ) - static void method1529() { - if (Canvas.worldMap != null) { - Canvas.worldMap.method2394(HealthBar.Client_plane, (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX, (VarbitComposition.localPlayer.y >> 7) + class47.baseY, false); - Canvas.worldMap.loadCache(); - } - - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapRegion.java b/osrs/src/main/java/WorldMapRegion.java index e5502a046..427f8eb7a 100644 --- a/osrs/src/main/java/WorldMapRegion.java +++ b/osrs/src/main/java/WorldMapRegion.java @@ -6,43 +6,43 @@ import java.util.*; import java.util.Map.Entry; -@ObfuscatedName("jm") +@ObfuscatedName("jl") @Implements("WorldMapRegion") public class WorldMapRegion { - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lkg;" + descriptor = "Lls;" ) @Export("WorldMapRegion_cachedSprites") - static DemotingHashTable WorldMapRegion_cachedSprites; - @ObfuscatedName("ai") + public static DemotingHashTable WorldMapRegion_cachedSprites; + @ObfuscatedName("au") @Export("regionX") int regionX; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("regionY") int regionY; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Ljx;" + descriptor = "Lii;" ) @Export("worldMapData_0") WorldMapData_0 worldMapData_0; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("worldMapData1List") LinkedList worldMapData1List; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("backgroundColor") int backgroundColor; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("pixelsPerTile") int pixelsPerTile; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("icon0List") List icon0List; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("iconMap") HashMap iconMap; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("fonts") final HashMap fonts; @@ -60,13 +60,13 @@ public class WorldMapRegion { this.fonts = var4; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(IIII)V", - garbageValue = "-1536160939" + garbageValue = "-1077363567" ) - void method1436(int var1, int var2, int var3) { - SpritePixels var4 = class135.method741(this.regionX, this.regionY, this.pixelsPerTile); + void method1230(int var1, int var2, int var3) { + SpritePixels var4 = class130.method712(this.regionX, this.regionY, this.pixelsPerTile); if (var4 != null) { if (var3 == this.pixelsPerTile * 64) { var4.drawAt(var1, var2); @@ -77,10 +77,10 @@ void method1436(int var1, int var2, int var3) { } } - @ObfuscatedName("at") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljx;Ljava/util/List;I)V", - garbageValue = "-2004305210" + descriptor = "(Lii;Ljava/util/List;I)V", + garbageValue = "1079022526" ) @Export("initWorldMapData0") void initWorldMapData0(WorldMapData_0 var1, List var2) { @@ -89,10 +89,10 @@ void initWorldMapData0(WorldMapData_0 var1, List var2) { this.addAllToIconList(var2); } - @ObfuscatedName("ac") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ljava/util/HashSet;Ljava/util/List;I)V", - garbageValue = "-1161990566" + descriptor = "(Ljava/util/HashSet;Ljava/util/List;S)V", + garbageValue = "363" ) @Export("initWorldMapData1") void initWorldMapData1(HashSet var1, List var2) { @@ -109,15 +109,15 @@ void initWorldMapData1(HashSet var1, List var2) { this.addAllToIconList(var2); } - @ObfuscatedName("ai") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IIIILke;I)V", - garbageValue = "-1191453077" + descriptor = "(IIIILjm;I)V", + garbageValue = "-1882994474" ) @Export("getIconsForTiles") void getIconsForTiles(int var1, int var2, int var3, int var4, AbstractWorldMapData var5) { for (int var6 = var1; var6 < var3 + var1; ++var6) { - label66: + label45: for (int var7 = var2; var7 < var2 + var4; ++var7) { for (int var8 = 0; var8 < var5.planes; ++var8) { WorldMapDecoration[] var9 = var5.decorations[var8][var6][var7]; @@ -125,33 +125,11 @@ void getIconsForTiles(int var1, int var2, int var3, int var4, AbstractWorldMapDa WorldMapDecoration[] var10 = var9; for (int var11 = 0; var11 < var10.length; ++var11) { - ObjectComposition var13; - boolean var14; - label57: { - WorldMapDecoration var12 = var10[var11]; - var13 = WorldMapElement.getObjectDefinition(var12.objectDefinitionId); - if (var13.transforms != null) { - int[] var15 = var13.transforms; - - for (int var16 = 0; var16 < var15.length; ++var16) { - int var17 = var15[var16]; - ObjectComposition var18 = WorldMapElement.getObjectDefinition(var17); - if (var18.mapIconId != -1) { - var14 = true; - break label57; - } - } - } else if (var13.mapIconId != -1) { - var14 = true; - break label57; - } - - var14 = false; - } - - if (var14) { + WorldMapDecoration var12 = var10[var11]; + ObjectComposition var13 = WorldMapSection2.getObjectDefinition(var12.objectDefinitionId); + if (class351.method1892(var13)) { this.getIcon(var13, var8, var6, var7, var5); - continue label66; + continue label45; } } } @@ -161,20 +139,20 @@ void getIconsForTiles(int var1, int var2, int var3, int var4, AbstractWorldMapDa } - @ObfuscatedName("az") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lhv;IIILke;I)V", - garbageValue = "882689979" + descriptor = "(Lhs;IIILjm;B)V", + garbageValue = "-49" ) @Export("getIcon") void getIcon(ObjectComposition var1, int var2, int var3, int var4, AbstractWorldMapData var5) { Coord var6 = new Coord(var2, var3 + this.regionX * 64, this.regionY * 64 + var4); Coord var7 = null; if (this.worldMapData_0 != null) { - var7 = new Coord(this.worldMapData_0.field2428 + var2, var3 + this.worldMapData_0.field2429 * 64, var4 + this.worldMapData_0.field2432 * 64); + var7 = new Coord(this.worldMapData_0.field2053 + var2, var3 + this.worldMapData_0.field2051 * 64, var4 + this.worldMapData_0.field2055 * 64); } else { WorldMapData_1 var8 = (WorldMapData_1)var5; - var7 = new Coord(var2 + var8.field2428, var3 + var8.field2429 * 64 + var8.getChunkXLow() * 8, var4 + var8.field2432 * 64 + var8.getChunkYLow() * 8); + var7 = new Coord(var2 + var8.field2053, var3 + var8.field2051 * 64 + var8.getChunkXLow() * 8, var8.field2055 * 64 + var4 + var8.getChunkYLow() * 8); } WorldMapElement var9; @@ -182,21 +160,21 @@ void getIcon(ObjectComposition var1, int var2, int var3, int var4, AbstractWorld if (var1.transforms != null) { var10 = new WorldMapIcon_1(var7, var6, var1.id, this); } else { - var9 = class138.WorldMapElement_get(var1.mapIconId); + var9 = class141.WorldMapElement_get(var1.mapIconId); var10 = new WorldMapIcon_0(var7, var6, var9.objectId, this.createMapLabel(var9)); } - var9 = class138.WorldMapElement_get(((AbstractWorldMapIcon)var10).getElement()); - if (var9.field1519) { + var9 = class141.WorldMapElement_get(((AbstractWorldMapIcon)var10).getElement()); + if (var9.field1461) { this.iconMap.put(new Coord(0, var3, var4), var10); } } - @ObfuscatedName("ap") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1774548488" + garbageValue = "1468543514" ) @Export("initWorldMapIcon1s") void initWorldMapIcon1s() { @@ -211,10 +189,10 @@ void initWorldMapIcon1s() { } - @ObfuscatedName("aa") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ljava/util/List;B)V", - garbageValue = "67" + descriptor = "(Ljava/util/List;I)V", + garbageValue = "-1918438816" ) @Export("addAllToIconList") void addAllToIconList(List var1) { @@ -222,20 +200,20 @@ void addAllToIconList(List var1) { while (var2.hasNext()) { WorldMapIcon_0 var3 = (WorldMapIcon_0)var2.next(); - if (class138.WorldMapElement_get(var3.element).field1519 && var3.coord2.x >> 6 == this.regionX && var3.coord2.y >> 6 == this.regionY) { - WorldMapIcon_0 var4 = new WorldMapIcon_0(var3.coord2, var3.coord2, var3.element, this.method1465(var3.element)); + if (class141.WorldMapElement_get(var3.element).field1461 && var3.coord2.x >> 6 == this.regionX && var3.coord2.y >> 6 == this.regionY) { + WorldMapIcon_0 var4 = new WorldMapIcon_0(var3.coord2, var3.coord2, var3.element, this.method1259(var3.element)); this.icon0List.add(var4); } } } - @ObfuscatedName("af") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2029792015" + descriptor = "(B)V", + garbageValue = "-70" ) - void method1443() { + void method1237() { if (this.worldMapData_0 != null) { this.worldMapData_0.reset(); } else { @@ -249,10 +227,10 @@ void method1443() { } - @ObfuscatedName("ad") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Lnu;B)Z", - garbageValue = "0" + descriptor = "(Lol;I)Z", + garbageValue = "-207493702" ) @Export("loadGeography") boolean loadGeography(AbstractArchive var1) { @@ -288,16 +266,16 @@ boolean loadGeography(AbstractArchive var1) { } } - @ObfuscatedName("aq") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(ILku;[Luk;Lnu;Lnu;I)V", - garbageValue = "-2013967337" + descriptor = "(ILja;[Lup;Lol;Lol;I)V", + garbageValue = "-67039997" ) @Export("drawTile") void drawTile(int var1, WorldMapScaleHandler var2, IndexedSprite[] var3, AbstractArchive var4, AbstractArchive var5) { this.pixelsPerTile = var1; if (this.worldMapData_0 != null || !this.worldMapData1List.isEmpty()) { - if (class135.method741(this.regionX, this.regionY, var1) == null) { + if (class130.method712(this.regionX, this.regionY, var1) == null) { boolean var6 = true; var6 &= this.loadGeography(var4); int var8; @@ -314,15 +292,15 @@ void drawTile(int var1, WorldMapScaleHandler var2, IndexedSprite[] var3, Abstrac if (var7 == null) { var9 = new WorldMapSprite(); } else { - var9 = new WorldMapSprite(WorldMapData_1.method1484(var7).pixels); + var9 = new WorldMapSprite(WorldMapArchiveLoader.method2391(var7).pixels); } SpritePixels var11 = new SpritePixels(this.pixelsPerTile * 64, this.pixelsPerTile * 64); var11.setRaster(); if (this.worldMapData_0 != null) { - this.method1448(var2, var3, var9); + this.method1242(var2, var3, var9); } else { - this.method1449(var2, var3, var9); + this.method1243(var2, var3, var9); } int var12 = this.regionX; @@ -331,18 +309,18 @@ void drawTile(int var1, WorldMapScaleHandler var2, IndexedSprite[] var3, Abstrac DemotingHashTable var15 = WorldMapRegion_cachedSprites; long var17 = (long)(var14 << 16 | var12 << 8 | var13); var15.put(var11, var17, var11.pixels.length * 4); - this.method1443(); + this.method1237(); } } } } - @ObfuscatedName("al") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(IIILjava/util/HashSet;I)V", - garbageValue = "-949668643" + descriptor = "(IIILjava/util/HashSet;B)V", + garbageValue = "99" ) - void method1446(int var1, int var2, int var3, HashSet var4) { + void method1240(int var1, int var2, int var3, HashSet var4) { if (var4 == null) { var4 = new HashSet(); } @@ -351,10 +329,10 @@ void method1446(int var1, int var2, int var3, HashSet var4) { this.drawMapLinks(var1, var2, var4, var3); } - @ObfuscatedName("an") + @ObfuscatedName("ax") @ObfuscatedSignature( descriptor = "(Ljava/util/HashSet;III)V", - garbageValue = "808374140" + garbageValue = "-1303977769" ) @Export("flashElements") void flashElements(HashSet var1, int var2, int var3) { @@ -365,44 +343,44 @@ void flashElements(HashSet var1, int var2, int var3) { if (var5.hasValidElement()) { int var6 = var5.getElement(); if (var1.contains(var6)) { - WorldMapElement var7 = class138.WorldMapElement_get(var6); + WorldMapElement var7 = class141.WorldMapElement_get(var6); this.drawBackgroundCircle(var7, var5.screenX, var5.screenY, var2, var3); } } } - this.method1457(var1, var2, var3); + this.method1251(var1, var2, var3); } - @ObfuscatedName("ar") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(Lku;[Luk;Lkd;B)V", - garbageValue = "-44" + descriptor = "(Lja;[Lup;Lju;B)V", + garbageValue = "41" ) - void method1448(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { + void method1242(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { int var4; int var5; for (var4 = 0; var4 < 64; ++var4) { for (var5 = 0; var5 < 64; ++var5) { this.drawTileGround(var4, var5, this.worldMapData_0, var1, var3); - this.method1452(var4, var5, this.worldMapData_0, var1); + this.method1246(var4, var5, this.worldMapData_0, var1); } } for (var4 = 0; var4 < 64; ++var4) { for (var5 = 0; var5 < 64; ++var5) { - this.method1450(var4, var5, this.worldMapData_0, var1, var2); + this.method1244(var4, var5, this.worldMapData_0, var1, var2); } } } - @ObfuscatedName("ab") + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "(Lku;[Luk;Lkd;I)V", - garbageValue = "-2115982333" + descriptor = "(Lja;[Lup;Lju;B)V", + garbageValue = "85" ) - void method1449(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { + void method1243(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite var3) { Iterator var4 = this.worldMapData1List.iterator(); WorldMapData_1 var5; @@ -414,7 +392,7 @@ void method1449(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { this.drawTileGround(var6, var7, var5, var1, var3); - this.method1452(var6, var7, var5, var1); + this.method1246(var6, var7, var5, var1); } } } @@ -426,27 +404,27 @@ void method1449(WorldMapScaleHandler var1, IndexedSprite[] var2, WorldMapSprite for (var6 = var5.getChunkX() * 8; var6 < var5.getChunkX() * 8 + 8; ++var6) { for (var7 = var5.getChunkY() * 8; var7 < var5.getChunkY() * 8 + 8; ++var7) { - this.method1450(var6, var7, var5, var1, var2); + this.method1244(var6, var7, var5, var1, var2); } } } } - @ObfuscatedName("ag") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(IILke;Lku;[Luk;B)V", - garbageValue = "32" + descriptor = "(IILjm;Lja;[Lup;I)V", + garbageValue = "125658269" ) - void method1450(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, IndexedSprite[] var5) { - this.method1455(var1, var2, var3); - this.method1454(var1, var2, var3, var5); + void method1244(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, IndexedSprite[] var5) { + this.method1249(var1, var2, var3); + this.method1248(var1, var2, var3, var5); } - @ObfuscatedName("am") + @ObfuscatedName("aj") @ObfuscatedSignature( - descriptor = "(IILke;Lku;Lkd;I)V", - garbageValue = "-1336656209" + descriptor = "(IILjm;Lja;Lju;I)V", + garbageValue = "-102705399" ) @Export("drawTileGround") void drawTileGround(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4, WorldMapSprite var5) { @@ -457,134 +435,57 @@ void drawTileGround(int var1, int var2, AbstractWorldMapData var3, WorldMapScale } int var8 = 16711935; - int var9; if (var7 != -1) { - int var10 = this.backgroundColor; - FloorOverlayDefinition var12 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var7); - FloorOverlayDefinition var11; - if (var12 != null) { - var11 = var12; - } else { - byte[] var13 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var7); - var12 = new FloorOverlayDefinition(); - if (var13 != null) { - var12.decode(new Buffer(var13), var7); - } - - var12.postDecode(); - FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var12, (long)var7); - var11 = var12; - } - - if (var11 == null) { - var9 = var10; - } else { - int var14; - int var15; - if (var11.secondaryRgb >= 0) { - var15 = HitSplatDefinition.method1026(var11.secondaryHue, var11.secondarySaturation, var11.secondaryLightness); - var14 = ApproximateRouteStrategy.method342(var15, 96); - var9 = Rasterizer3D.Rasterizer3D_colorPalette[var14] | -16777216; - } else if (var11.texture >= 0) { - var15 = ApproximateRouteStrategy.method342(Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var11.texture), 96); - var9 = Rasterizer3D.Rasterizer3D_colorPalette[var15] | -16777216; - } else if (var11.primaryRgb == 16711935) { - var9 = var10; - } else { - var15 = HitSplatDefinition.method1026(var11.hue, var11.saturation, var11.lightness); - var14 = ApproximateRouteStrategy.method342(var15, 96); - var9 = Rasterizer3D.Rasterizer3D_colorPalette[var14] | -16777216; - } - } - - var8 = var9; + var8 = TriBool.method2273(var7, this.backgroundColor); } - if (var7 > -1 && var3.field2427[0][var1][var2] == 0) { + if (var7 > -1 && var3.field2049[0][var1][var2] == 0) { Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var8); } else { - var9 = this.method1453(var1, var2, var3, var5); + int var9 = this.method1247(var1, var2, var3, var5); if (var7 == -1) { Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var9); } else { - var4.method1575(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), var9, var8, this.pixelsPerTile, this.pixelsPerTile, var3.field2427[0][var1][var2], var3.field2426[0][var1][var2]); + var4.method1368(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), var9, var8, this.pixelsPerTile, this.pixelsPerTile, var3.field2049[0][var1][var2], var3.field2048[0][var1][var2]); } } } - @ObfuscatedName("ax") + @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(IILke;Lku;I)V", - garbageValue = "-1187093526" + descriptor = "(IILjm;Lja;I)V", + garbageValue = "579360220" ) - void method1452(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4) { + void method1246(int var1, int var2, AbstractWorldMapData var3, WorldMapScaleHandler var4) { for (int var5 = 1; var5 < var3.planes; ++var5) { int var6 = var3.floorOverlayIds[var5][var1][var2] - 1; if (var6 > -1) { - int var8 = this.backgroundColor; - FloorOverlayDefinition var10 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var6); - FloorOverlayDefinition var9; - if (var10 != null) { - var9 = var10; - } else { - byte[] var11 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var6); - var10 = new FloorOverlayDefinition(); - if (var11 != null) { - var10.decode(new Buffer(var11), var6); - } - - var10.postDecode(); - FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var10, (long)var6); - var9 = var10; - } - - int var7; - if (var9 == null) { - var7 = var8; - } else { - int var12; - int var13; - if (var9.secondaryRgb >= 0) { - var13 = HitSplatDefinition.method1026(var9.secondaryHue, var9.secondarySaturation, var9.secondaryLightness); - var12 = ApproximateRouteStrategy.method342(var13, 96); - var7 = Rasterizer3D.Rasterizer3D_colorPalette[var12] | -16777216; - } else if (var9.texture >= 0) { - var13 = ApproximateRouteStrategy.method342(Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var9.texture), 96); - var7 = Rasterizer3D.Rasterizer3D_colorPalette[var13] | -16777216; - } else if (var9.primaryRgb == 16711935) { - var7 = var8; - } else { - var13 = HitSplatDefinition.method1026(var9.hue, var9.saturation, var9.lightness); - var12 = ApproximateRouteStrategy.method342(var13, 96); - var7 = Rasterizer3D.Rasterizer3D_colorPalette[var12] | -16777216; - } - } - - if (var3.field2427[var5][var1][var2] == 0) { + int var7 = TriBool.method2273(var6, this.backgroundColor); + if (var3.field2049[var5][var1][var2] == 0) { Rasterizer2D.Rasterizer2D_fillRectangle(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, this.pixelsPerTile, var7); } else { - var4.method1575(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 0, var7, this.pixelsPerTile, this.pixelsPerTile, var3.field2427[var5][var1][var2], var3.field2426[var5][var1][var2]); + var4.method1368(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 0, var7, this.pixelsPerTile, this.pixelsPerTile, var3.field2049[var5][var1][var2], var3.field2048[var5][var1][var2]); } } } } - @ObfuscatedName("ah") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(IILke;Lkd;I)I", - garbageValue = "-1267425507" + descriptor = "(IILjm;Lju;B)I", + garbageValue = "0" ) - int method1453(int var1, int var2, AbstractWorldMapData var3, WorldMapSprite var4) { + int method1247(int var1, int var2, AbstractWorldMapData var3, WorldMapSprite var4) { return var3.floorUnderlayIds[0][var1][var2] == 0 ? this.backgroundColor : var4.getTileColor(var1, var2); } - @ObfuscatedName("as") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(IILke;[Luk;I)V", - garbageValue = "-2109687749" + descriptor = "(IILjm;[Lup;S)V", + garbageValue = "168" ) - void method1454(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] var4) { + void method1248(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] var4) { for (int var5 = 0; var5 < var3.planes; ++var5) { WorldMapDecoration[] var6 = var3.decorations[var5][var1][var2]; if (var6 != null && var6.length != 0) { @@ -592,20 +493,22 @@ void method1454(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] v for (int var8 = 0; var8 < var7.length; ++var8) { WorldMapDecoration var9 = var7[var8]; - if (!WorldMapLabel.method1534(var9.decoration)) { - int var11 = var9.decoration; - boolean var10 = var11 == WorldMapDecorationType.field3120.id; - if (!var10) { + int var11 = var9.decoration; + boolean var10 = var11 >= WorldMapDecorationType.field3156.id && var11 <= WorldMapDecorationType.field3151.id; + if (!var10) { + int var13 = var9.decoration; + boolean var12 = var13 == WorldMapDecorationType.field3152.id; + if (!var12) { continue; } } - ObjectComposition var12 = WorldMapElement.getObjectDefinition(var9.objectDefinitionId); - if (var12.mapSceneId != -1) { - if (var12.mapSceneId != 46 && var12.mapSceneId != 52) { - var4[var12.mapSceneId].method2654(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2, this.pixelsPerTile * 2); + ObjectComposition var14 = WorldMapSection2.getObjectDefinition(var9.objectDefinitionId); + if (var14.mapSceneId != -1) { + if (var14.mapSceneId != 46 && var14.mapSceneId != 52) { + var4[var14.mapSceneId].method2671(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2, this.pixelsPerTile * 2); } else { - var4[var12.mapSceneId].method2654(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2 + 1, this.pixelsPerTile * 2 + 1); + var4[var14.mapSceneId].method2671(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile * 2 + 1, this.pixelsPerTile * 2 + 1); } } } @@ -614,12 +517,12 @@ void method1454(int var1, int var2, AbstractWorldMapData var3, IndexedSprite[] v } - @ObfuscatedName("ay") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(IILke;I)V", - garbageValue = "-1752874267" + descriptor = "(IILjm;I)V", + garbageValue = "-393075620" ) - void method1455(int var1, int var2, AbstractWorldMapData var3) { + void method1249(int var1, int var2, AbstractWorldMapData var3) { for (int var4 = 0; var4 < var3.planes; ++var4) { WorldMapDecoration[] var5 = var3.decorations[var4][var1][var2]; if (var5 != null && var5.length != 0) { @@ -627,46 +530,48 @@ void method1455(int var1, int var2, AbstractWorldMapData var3) { for (int var7 = 0; var7 < var6.length; ++var7) { WorldMapDecoration var8 = var6[var7]; - if (class101.method598(var8.decoration)) { - ObjectComposition var9 = WorldMapElement.getObjectDefinition(var8.objectDefinitionId); - int var10 = var9.int1 != 0 ? -3407872 : -3355444; - if (var8.decoration == WorldMapDecorationType.field3123.id) { - this.method1469(var1, var2, var8.rotation, var10); + int var10 = var8.decoration; + boolean var9 = var10 >= WorldMapDecorationType.field3155.id && var10 <= WorldMapDecorationType.field3153.id || var10 == WorldMapDecorationType.field3150.id; + if (var9) { + ObjectComposition var11 = WorldMapSection2.getObjectDefinition(var8.objectDefinitionId); + int var12 = var11.int1 != 0 ? -3407872 : -3355444; + if (var8.decoration == WorldMapDecorationType.field3155.id) { + this.method1263(var1, var2, var8.rotation, var12); } - if (var8.decoration == WorldMapDecorationType.field3121.id) { - this.method1469(var1, var2, var8.rotation, -3355444); - this.method1469(var1, var2, var8.rotation + 1, var10); + if (var8.decoration == WorldMapDecorationType.field3154.id) { + this.method1263(var1, var2, var8.rotation, -3355444); + this.method1263(var1, var2, var8.rotation + 1, var12); } - if (var8.decoration == WorldMapDecorationType.field3122.id) { + if (var8.decoration == WorldMapDecorationType.field3153.id) { if (var8.rotation == 0) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 1, var10); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), 1, var12); } if (var8.rotation == 1) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), 1, var10); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), 1, var12); } if (var8.rotation == 2) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile + this.pixelsPerTile * var1 - 1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var10); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile + this.pixelsPerTile * var1 - 1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var12); } if (var8.rotation == 3) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var10); + Rasterizer2D.Rasterizer2D_drawHorizontalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2) + this.pixelsPerTile - 1, 1, var12); } } - if (var8.decoration == WorldMapDecorationType.field3119.id) { - int var11 = var8.rotation % 2; - int var12; - if (var11 == 0) { - for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, (64 - var2) * this.pixelsPerTile - 1 - var12, 1, var10); + if (var8.decoration == WorldMapDecorationType.field3150.id) { + int var13 = var8.rotation % 2; + int var14; + if (var13 == 0) { + for (var14 = 0; var14 < this.pixelsPerTile; ++var14) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.pixelsPerTile * var1, (64 - var2) * this.pixelsPerTile - 1 - var14, 1, var12); } } else { - for (var12 = 0; var12 < this.pixelsPerTile; ++var12) { - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var12 + this.pixelsPerTile * var1, var12 + this.pixelsPerTile * (63 - var2), 1, var10); + for (var14 = 0; var14 < this.pixelsPerTile; ++var14) { + Rasterizer2D.Rasterizer2D_drawHorizontalLine(var14 + this.pixelsPerTile * var1, var14 + this.pixelsPerTile * (63 - var2), 1, var12); } } } @@ -677,10 +582,10 @@ void method1455(int var1, int var2, AbstractWorldMapData var3) { } - @ObfuscatedName("aj") + @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(IILjava/util/HashSet;IB)V", - garbageValue = "-13" + descriptor = "(IILjava/util/HashSet;IS)V", + garbageValue = "3124" ) @Export("drawNonLinkMapIcons") void drawNonLinkMapIcons(int var1, int var2, HashSet var3, int var4) { @@ -691,33 +596,33 @@ void drawNonLinkMapIcons(int var1, int var2, HashSet var3, int var4) { while (var7.hasNext()) { Entry var8 = (Entry)var7.next(); Coord var9 = (Coord)var8.getKey(); - int var10 = (int)((float)var1 + var5 * (float)var9.x - var6); + int var10 = (int)((float)var9.x * var5 + (float)var1 - var6); int var11 = (int)((float)(var2 + var4) - var5 * (float)var9.y - var6); AbstractWorldMapIcon var12 = (AbstractWorldMapIcon)var8.getValue(); if (var12 != null && var12.hasValidElement()) { var12.screenX = var10; var12.screenY = var11; - WorldMapElement var13 = class138.WorldMapElement_get(var12.getElement()); + WorldMapElement var13 = class141.WorldMapElement_get(var12.getElement()); if (!var3.contains(var13.getObjectId())) { - this.method1459(var12, var10, var11, var5); + this.method1253(var12, var10, var11, var5); } } } } - @ObfuscatedName("av") + @ObfuscatedName("an") @ObfuscatedSignature( - descriptor = "(Ljava/util/HashSet;III)V", - garbageValue = "1452687017" + descriptor = "(Ljava/util/HashSet;IIB)V", + garbageValue = "-44" ) - void method1457(HashSet var1, int var2, int var3) { + void method1251(HashSet var1, int var2, int var3) { Iterator var4 = this.icon0List.iterator(); while (var4.hasNext()) { AbstractWorldMapIcon var5 = (AbstractWorldMapIcon)var4.next(); if (var5.hasValidElement()) { - WorldMapElement var6 = class138.WorldMapElement_get(var5.getElement()); + WorldMapElement var6 = class141.WorldMapElement_get(var5.getElement()); if (var6 != null && var1.contains(var6.getObjectId())) { this.drawBackgroundCircle(var6, var5.screenX, var5.screenY, var2, var3); } @@ -726,10 +631,10 @@ void method1457(HashSet var1, int var2, int var3) { } - @ObfuscatedName("aw") + @ObfuscatedName("ag") @ObfuscatedSignature( - descriptor = "(Lhd;IIIII)V", - garbageValue = "-54232319" + descriptor = "(Lgr;IIIII)V", + garbageValue = "1904364897" ) @Export("drawBackgroundCircle") void drawBackgroundCircle(WorldMapElement var1, int var2, int var3, int var4, int var5) { @@ -744,51 +649,51 @@ void drawBackgroundCircle(WorldMapElement var1, int var2, int var3, int var4, in } } - @ObfuscatedName("ak") + @ObfuscatedName("ad") @ObfuscatedSignature( - descriptor = "(Lkp;IIFB)V", - garbageValue = "-45" + descriptor = "(Ljc;IIFI)V", + garbageValue = "1545285255" ) - void method1459(AbstractWorldMapIcon var1, int var2, int var3, float var4) { - WorldMapElement var5 = class138.WorldMapElement_get(var1.getElement()); - this.method1460(var5, var2, var3); - this.method1461(var1, var5, var2, var3, var4); + void method1253(AbstractWorldMapIcon var1, int var2, int var3, float var4) { + WorldMapElement var5 = class141.WorldMapElement_get(var1.getElement()); + this.method1254(var5, var2, var3); + this.method1255(var1, var5, var2, var3, var4); } - @ObfuscatedName("bh") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(Lhd;III)V", - garbageValue = "1788573667" + descriptor = "(Lgr;III)V", + garbageValue = "-980453833" ) - void method1460(WorldMapElement var1, int var2, int var3) { + void method1254(WorldMapElement var1, int var2, int var3) { SpritePixels var4 = var1.getSpriteBool(false); if (var4 != null) { - int var5 = this.method1463(var4, var1.horizontalAlignment); - int var6 = this.method1464(var4, var1.verticalAlignment); + int var5 = this.method1257(var4, var1.horizontalAlignment); + int var6 = this.method1258(var4, var1.verticalAlignment); var4.drawTransBgAt(var5 + var2, var3 + var6); } } - @ObfuscatedName("bj") + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(Lkp;Lhd;IIFI)V", - garbageValue = "1203085844" + descriptor = "(Ljc;Lgr;IIFI)V", + garbageValue = "1339330901" ) - void method1461(AbstractWorldMapIcon var1, WorldMapElement var2, int var3, int var4, float var5) { + void method1255(AbstractWorldMapIcon var1, WorldMapElement var2, int var3, int var4, float var5) { WorldMapLabel var6 = var1.getLabel(); if (var6 != null) { - if (var6.size.method1394(var5)) { + if (var6.size.method1184(var5)) { Font var7 = (Font)this.fonts.get(var6.size); - var7.drawLines(var6.text, var3 - var6.width / 2, var4, var6.width, var6.height, -16777216 | var2.field1522, 0, 1, 0, var7.ascent / 2); + var7.drawLines(var6.text, var3 - var6.width / 2, var4, var6.width, var6.height, -16777216 | var2.field1466, 0, 1, 0, var7.ascent / 2); } } } - @ObfuscatedName("bk") + @ObfuscatedName("bd") @ObfuscatedSignature( descriptor = "(IILjava/util/HashSet;IB)V", - garbageValue = "-21" + garbageValue = "57" ) @Export("drawMapLinks") void drawMapLinks(int var1, int var2, HashSet var3, int var4) { @@ -800,22 +705,22 @@ void drawMapLinks(int var1, int var2, HashSet var3, int var4) { if (var7.hasValidElement()) { int var8 = var7.coord2.x % 64; int var9 = var7.coord2.y % 64; - var7.screenX = (int)((float)var1 + var5 * (float)var8); - var7.screenY = (int)(var5 * (float)(63 - var9) + (float)var2); + var7.screenX = (int)((float)var8 * var5 + (float)var1); + var7.screenY = (int)((float)var2 + var5 * (float)(63 - var9)); if (!var3.contains(var7.getElement())) { - this.method1459(var7, var7.screenX, var7.screenY, var5); + this.method1253(var7, var7.screenX, var7.screenY, var5); } } } } - @ObfuscatedName("bv") + @ObfuscatedName("bl") @ObfuscatedSignature( - descriptor = "(Lui;Lhe;I)I", - garbageValue = "2074198968" + descriptor = "(Luz;Lhq;I)I", + garbageValue = "1376501823" ) - int method1463(SpritePixels var1, HorizontalAlignment var2) { + int method1257(SpritePixels var1, HorizontalAlignment var2) { switch(var2.value) { case 0: return 0; @@ -826,84 +731,64 @@ int method1463(SpritePixels var1, HorizontalAlignment var2) { } } - @ObfuscatedName("bt") + @ObfuscatedName("bi") @ObfuscatedSignature( - descriptor = "(Lui;Lhy;I)I", - garbageValue = "693958436" + descriptor = "(Luz;Lhg;I)I", + garbageValue = "1990886316" ) - int method1464(SpritePixels var1, VerticalAlignment var2) { + int method1258(SpritePixels var1, VerticalAlignment var2) { switch(var2.value) { case 0: return -var1.subHeight / 2; - case 1: + case 2: return 0; default: return -var1.subHeight; } } - @ObfuscatedName("bd") + @ObfuscatedName("bf") @ObfuscatedSignature( - descriptor = "(IB)Lkq;", - garbageValue = "-90" + descriptor = "(IB)Ljk;", + garbageValue = "1" ) - WorldMapLabel method1465(int var1) { - WorldMapElement var2 = class138.WorldMapElement_get(var1); + WorldMapLabel method1259(int var1) { + WorldMapElement var2 = class141.WorldMapElement_get(var1); return this.createMapLabel(var2); } - @ObfuscatedName("by") + @ObfuscatedName("bg") @ObfuscatedSignature( - descriptor = "(Lhd;I)Lkq;", - garbageValue = "-1839741951" + descriptor = "(Lgr;I)Ljk;", + garbageValue = "1614567762" ) @Export("createMapLabel") WorldMapLabel createMapLabel(WorldMapElement var1) { if (var1.name != null && this.fonts != null && this.fonts.get(WorldMapLabelSize.WorldMapLabelSize_small) != null) { - int var3 = var1.textSize; - WorldMapLabelSize[] var4 = new WorldMapLabelSize[]{WorldMapLabelSize.WorldMapLabelSize_small, WorldMapLabelSize.WorldMapLabelSize_medium, WorldMapLabelSize.WorldMapLabelSize_large}; - WorldMapLabelSize[] var5 = var4; - int var6 = 0; - - WorldMapLabelSize var2; - while (true) { - if (var6 >= var5.length) { - var2 = null; - break; - } - - WorldMapLabelSize var7 = var5[var6]; - if (var3 == var7.field2324) { - var2 = var7; - break; - } - - ++var6; - } - + WorldMapLabelSize var2 = WorldMapLabelSize.method1185(var1.textSize); if (var2 == null) { return null; } else { - Font var14 = (Font)this.fonts.get(var2); - if (var14 == null) { + Font var3 = (Font)this.fonts.get(var2); + if (var3 == null) { return null; } else { - var6 = var14.lineCount(var1.name, 1000000); - String[] var15 = new String[var6]; - var14.breakLines(var1.name, (int[])null, var15); - int var8 = var15.length * var14.ascent / 2; - int var9 = 0; - String[] var10 = var15; - - for (int var11 = 0; var11 < var10.length; ++var11) { - String var12 = var10[var11]; - int var13 = var14.stringWidth(var12); - if (var13 > var9) { - var9 = var13; + int var4 = var3.lineCount(var1.name, 1000000); + String[] var5 = new String[var4]; + var3.breakLines(var1.name, (int[])null, var5); + int var6 = var5.length * var3.ascent / 2; + int var7 = 0; + String[] var8 = var5; + + for (int var9 = 0; var9 < var8.length; ++var9) { + String var10 = var8[var9]; + int var11 = var3.stringWidth(var10); + if (var11 > var7) { + var7 = var11; } } - return new WorldMapLabel(var1.name, var9, var8, var2); + return new WorldMapLabel(var1.name, var7, var6, var2); } } } else { @@ -911,12 +796,12 @@ WorldMapLabel createMapLabel(WorldMapElement var1) { } } - @ObfuscatedName("bs") + @ObfuscatedName("ba") @ObfuscatedSignature( descriptor = "(IIIIIB)Ljava/util/List;", - garbageValue = "4" + garbageValue = "102" ) - List method1467(int var1, int var2, int var3, int var4, int var5) { + List method1261(int var1, int var2, int var3, int var4, int var5) { LinkedList var6 = new LinkedList(); if (var4 >= var1 && var5 >= var2) { if (var4 < var3 + var1 && var5 < var3 + var2) { @@ -950,8 +835,8 @@ List method1467(int var1, int var2, int var3, int var4, int var5) { @ObfuscatedName("bm") @ObfuscatedSignature( - descriptor = "(B)Ljava/util/List;", - garbageValue = "4" + descriptor = "(I)Ljava/util/List;", + garbageValue = "201703863" ) @Export("icons") List icons() { @@ -961,12 +846,12 @@ List icons() { return var1; } - @ObfuscatedName("bf") + @ObfuscatedName("bp") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "-29" + descriptor = "(IIIII)V", + garbageValue = "-164238097" ) - void method1469(int var1, int var2, int var3, int var4) { + void method1263(int var1, int var2, int var3, int var4) { var3 %= 4; if (var3 == 0) { Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); @@ -977,7 +862,7 @@ void method1469(int var1, int var2, int var3, int var4) { } if (var3 == 2) { - Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile * var1 + this.pixelsPerTile - 1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); + Rasterizer2D.Rasterizer2D_drawVerticalLine(this.pixelsPerTile + this.pixelsPerTile * var1 - 1, this.pixelsPerTile * (63 - var2), this.pixelsPerTile, var4); } if (var3 == 3) { diff --git a/osrs/src/main/java/WorldMapScaleHandler.java b/osrs/src/main/java/WorldMapScaleHandler.java index 8a363c151..977162154 100644 --- a/osrs/src/main/java/WorldMapScaleHandler.java +++ b/osrs/src/main/java/WorldMapScaleHandler.java @@ -3,13 +3,13 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ku") +@ObfuscatedName("ja") @Implements("WorldMapScaleHandler") public class WorldMapScaleHandler { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("pixelsPerTile") int pixelsPerTile; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("tileTemplates") byte[][][] tileTemplates; @@ -17,25 +17,25 @@ public class WorldMapScaleHandler { this.pixelsPerTile = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIIIIIS)V", - garbageValue = "-18273" + descriptor = "(IIIIIIIIB)V", + garbageValue = "-68" ) - void method1575(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + void method1368(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { if (var7 != 0 && this.pixelsPerTile != 0 && this.tileTemplates != null) { - var8 = this.method1576(var8, var7); - var7 = this.method1577(var7); + var8 = this.method1369(var8, var7); + var7 = this.method1370(var7); Rasterizer2D.Rasterizer2D_drawGradientPixels(var1, var2, var5, var6, var3, var4, this.tileTemplates[var7 - 1][var8], this.pixelsPerTile); } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "-45" + descriptor = "(III)I", + garbageValue = "-1836186644" ) - int method1576(int var1, int var2) { + int method1369(int var1, int var2) { if (var2 == 9) { var1 = var1 + 1 & 3; } @@ -51,12 +51,12 @@ int method1576(int var1, int var2) { return var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "-1563527321" + garbageValue = "1639881459" ) - int method1577(int var1) { + int method1370(int var1) { if (var1 != 9 && var1 != 10) { return var1 == 11 ? 8 : var1; } else { @@ -64,10 +64,10 @@ int method1577(int var1) { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "785325219" + descriptor = "(B)V", + garbageValue = "1" ) @Export("init") void init() { @@ -84,10 +84,10 @@ void init() { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2061815829" + garbageValue = "1390851291" ) @Export("init0") void init0() { @@ -151,10 +151,10 @@ void init0() { this.tileTemplates[0][3] = var1; } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-555393212" + garbageValue = "-164292987" ) @Export("init1") void init1() { @@ -222,10 +222,10 @@ void init1() { this.tileTemplates[1][3] = var1; } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-58" + garbageValue = "53" ) @Export("init2") void init2() { @@ -289,10 +289,10 @@ void init2() { this.tileTemplates[2][3] = var1; } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1088178192" + garbageValue = "1774787578" ) @Export("init3") void init3() { @@ -356,10 +356,10 @@ void init3() { this.tileTemplates[3][3] = var1; } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1688541699" + descriptor = "(B)V", + garbageValue = "-19" ) @Export("init4") void init4() { @@ -423,10 +423,10 @@ void init4() { this.tileTemplates[4][3] = var1; } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1023862061" + descriptor = "(B)V", + garbageValue = "65" ) @Export("init5") void init5() { @@ -492,10 +492,10 @@ void init5() { this.tileTemplates[5][3] = var1; } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "18020" + descriptor = "(B)V", + garbageValue = "-3" ) @Export("init6") void init6() { @@ -561,10 +561,10 @@ void init6() { this.tileTemplates[6][3] = var1; } - @ObfuscatedName("aq") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-68" + descriptor = "(I)V", + garbageValue = "-1465348421" ) @Export("init7") void init7() { @@ -630,13 +630,12 @@ void init7() { this.tileTemplates[7][3] = var1; } - @ObfuscatedName("ap") + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "718957128" + descriptor = "(CI)Z", + garbageValue = "-1137880095" ) - static void method1587(String var0, String var1, String var2) { - PcmPlayer.method212(7); - class318.setLoginResponseString(var0, var1, var2); + static boolean method1380(char var0) { + return "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".indexOf(var0) != -1; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapSection.java b/osrs/src/main/java/WorldMapSection.java index 57e6a893b..3ff7044a4 100644 --- a/osrs/src/main/java/WorldMapSection.java +++ b/osrs/src/main/java/WorldMapSection.java @@ -3,53 +3,53 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kw") +@ObfuscatedName("jj") @Implements("WorldMapSection") public interface WorldMapSection { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-474032336" + descriptor = "(Ljv;B)V", + garbageValue = "16" ) @Export("expandBounds") void expandBounds(WorldMapArea var1); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIII)Z", - garbageValue = "509257779" + descriptor = "(IIIB)Z", + garbageValue = "2" ) @Export("containsCoord") boolean containsCoord(int var1, int var2, int var3); - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-94" + descriptor = "(III)Z", + garbageValue = "542110974" ) @Export("containsPosition") boolean containsPosition(int var1, int var2); - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "1978048199" + descriptor = "(IIIS)[I", + garbageValue = "12300" ) @Export("getBorderTileLengths") int[] getBorderTileLengths(int var1, int var2, int var3); - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "-1281040923" + descriptor = "(III)Lmh;", + garbageValue = "-1535299153" ) @Export("coord") Coord coord(int var1, int var2); - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "47" + descriptor = "(Luj;B)V", + garbageValue = "-10" ) @Export("read") void read(Buffer var1); diff --git a/osrs/src/main/java/WorldMapSection0.java b/osrs/src/main/java/WorldMapSection0.java index efce79174..ba126b7fb 100644 --- a/osrs/src/main/java/WorldMapSection0.java +++ b/osrs/src/main/java/WorldMapSection0.java @@ -3,59 +3,65 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kj") +@ObfuscatedName("jh") @Implements("WorldMapSection0") public class WorldMapSection0 implements WorldMapSection { - @ObfuscatedName("au") + @ObfuscatedName("fs") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + @Export("archive9") + static Archive archive9; + @ObfuscatedName("at") @Export("oldZ") int oldZ; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("newZ") int newZ; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("oldX") int oldX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("oldY") int oldY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("newX") int newX; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("newY") int newY; - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("oldChunkXLow") int oldChunkXLow; - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("oldChunkYLow") int oldChunkYLow; - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("oldChunkXHigh") int oldChunkXHigh; - @ObfuscatedName("af") + @ObfuscatedName("az") @Export("oldChunkYHigh") int oldChunkYHigh; - @ObfuscatedName("ad") + @ObfuscatedName("ap") @Export("newChunkXLow") int newChunkXLow; - @ObfuscatedName("aq") + @ObfuscatedName("av") @Export("newChunkYLow") int newChunkYLow; - @ObfuscatedName("al") + @ObfuscatedName("ax") @Export("newChunkXHigh") int newChunkXHigh; - @ObfuscatedName("an") + @ObfuscatedName("as") @Export("newChunkYHigh") int newChunkYHigh; WorldMapSection0() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-474032336" + descriptor = "(Ljv;B)V", + garbageValue = "16" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { @@ -77,34 +83,34 @@ public void expandBounds(WorldMapArea var1) { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIII)Z", - garbageValue = "509257779" + descriptor = "(IIIB)Z", + garbageValue = "2" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.oldZ && var1 < this.newZ + this.oldZ) { + if (var1 >= this.oldZ && var1 < this.oldZ + this.newZ) { return var2 >= (this.oldX << 6) + (this.oldChunkXLow << 3) && var2 <= (this.oldX << 6) + (this.oldChunkXHigh << 3) + 7 && var3 >= (this.oldY << 6) + (this.oldChunkYLow << 3) && var3 <= (this.oldY << 6) + (this.oldChunkYHigh << 3) + 7; } else { return false; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-94" + descriptor = "(III)Z", + garbageValue = "542110974" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { return var1 >= (this.newX << 6) + (this.newChunkXLow << 3) && var1 <= (this.newX << 6) + (this.newChunkXHigh << 3) + 7 && var2 >= (this.newY << 6) + (this.newChunkYLow << 3) && var2 <= (this.newY << 6) + (this.newChunkYHigh << 3) + 7; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "1978048199" + descriptor = "(IIIS)[I", + garbageValue = "12300" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { @@ -116,10 +122,10 @@ public int[] getBorderTileLengths(int var1, int var2, int var3) { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "-1281040923" + descriptor = "(III)Lmh;", + garbageValue = "-1535299153" ) @Export("coord") public Coord coord(int var1, int var2) { @@ -132,10 +138,10 @@ public Coord coord(int var1, int var2) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "47" + descriptor = "(Luj;B)V", + garbageValue = "-10" ) @Export("read") public void read(Buffer var1) { @@ -156,21 +162,12 @@ public void read(Buffer var1) { this.postRead(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-1295172600" + garbageValue = "-1662553303" ) @Export("postRead") void postRead() { } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[Lls;", - garbageValue = "14" - ) - public static ZoneOperation[] method1506() { - return new ZoneOperation[]{ZoneOperation.MAPPROJ_ANIM, ZoneOperation.LOC_DEL, ZoneOperation.OBJ_COUNT, ZoneOperation.field2607, ZoneOperation.LOC_ADD_CHANGE, ZoneOperation.AREA_SOUND, ZoneOperation.LOC_ANIM, ZoneOperation.OBJ_ADD, ZoneOperation.OBJ_DEL_LEGACY, ZoneOperation.MAP_ANIM, ZoneOperation.PREFETCH_GAMEOBJECTS, ZoneOperation.OBJ_DEL}; - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapSection1.java b/osrs/src/main/java/WorldMapSection1.java index 2ab4216d2..2f2168cb1 100644 --- a/osrs/src/main/java/WorldMapSection1.java +++ b/osrs/src/main/java/WorldMapSection1.java @@ -3,37 +3,35 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; - -@ObfuscatedName("ky") +@ObfuscatedName("jw") @Implements("WorldMapSection1") public class WorldMapSection1 implements WorldMapSection { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("minPlane") int minPlane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("planes") int planes; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("regionStartX") int regionStartX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("regionStartY") int regionStartY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("regionEndX") int regionEndX; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("regionEndY") int regionEndY; WorldMapSection1() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-474032336" + descriptor = "(Ljv;B)V", + garbageValue = "16" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { @@ -55,34 +53,34 @@ public void expandBounds(WorldMapArea var1) { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIII)Z", - garbageValue = "509257779" + descriptor = "(IIIB)Z", + garbageValue = "2" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.minPlane && var1 < this.minPlane + this.planes) { + if (var1 >= this.minPlane && var1 < this.planes + this.minPlane) { return var2 >> 6 == this.regionStartX && var3 >> 6 == this.regionStartY; } else { return false; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-94" + descriptor = "(III)Z", + garbageValue = "542110974" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { return var1 >> 6 == this.regionEndX && var2 >> 6 == this.regionEndY; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "1978048199" + descriptor = "(IIIS)[I", + garbageValue = "12300" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { @@ -94,10 +92,10 @@ public int[] getBorderTileLengths(int var1, int var2, int var3) { } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "-1281040923" + descriptor = "(III)Lmh;", + garbageValue = "-1535299153" ) @Export("coord") public Coord coord(int var1, int var2) { @@ -110,10 +108,10 @@ public Coord coord(int var1, int var2) { } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "47" + descriptor = "(Luj;B)V", + garbageValue = "-10" ) @Export("read") public void read(Buffer var1) { @@ -126,383 +124,12 @@ public void read(Buffer var1) { this.postRead(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "-6" + garbageValue = "4" ) @Export("postRead") void postRead() { } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ldy;B)V", - garbageValue = "21" - ) - @Export("runScriptEvent") - public static void runScriptEvent(ScriptEvent var0) { - NPC.runScript(var0, 500000, 475000); - } - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-20" - ) - static int method1553(int var0, Script var1, boolean var2) { - if (var0 == 3200) { - SoundCache.Interpreter_intStackSize -= 3; - class27.queueSoundEffect(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]); - return 1; - } else { - int var3; - int var4; - int var5; - int var6; - int var7; - if (var0 == 3201) { - SoundCache.Interpreter_intStackSize -= 5; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 4]; - ArrayList var8 = new ArrayList(); - var8.add(var3); - class157.method836(var8, var4, var5, var6, var7); - return 1; - } else if (var0 == 3202) { - SoundCache.Interpreter_intStackSize -= 2; - Login.playJingle(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - return 1; - } else { - class90 var12; - class89 var13; - String var15; - if (var0 != 3212 && var0 != 3213 && var0 != 3209 && var0 != 3181 && var0 != 3203 && var0 != 3205 && var0 != 3207) { - boolean var16; - if (var0 != 3214 && var0 != 3215 && var0 != 3210 && var0 != 3182 && var0 != 3204 && var0 != 3206 && var0 != 3208) { - if (var0 == 3211) { - return 1; - } else if (var0 == 3216) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var4 = 0; - class90 var18 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var3); - if (var18 != null) { - var4 = var18 != class90.field893 ? 1 : 0; - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4; - return 1; - } else if (var0 == 3218) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var4 = 0; - class89 var10 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var3); - if (var10 != null) { - var4 = var10 != class89.field884 ? 1 : 0; - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4; - return 1; - } else if (var0 != 3217 && var0 != 3219) { - if (var0 == 3220) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Script.method445(var3, var4); - return 1; - } else if (var0 == 3221) { - SoundCache.Interpreter_intStackSize -= 6; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 4]; - int var11 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 5]; - ArrayList var9 = new ArrayList(); - var9.add(var3); - var9.add(var4); - class157.method836(var9, var5, var6, var7, var11); - return 1; - } else if (var0 == 3222) { - SoundCache.Interpreter_intStackSize -= 4; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - PacketWriter.someMusicMethod(var3, var4, var5, var6); - return 1; - } else { - return 2; - } - } else { - var12 = class90.field893; - var13 = class89.field884; - var16 = true; - boolean var17 = true; - if (var0 == 3217) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var7); - if (var12 == null) { - throw new RuntimeException(String.format("Unrecognized device option %d", var7)); - } - } - - if (var0 == 3219) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var7); - if (var13 == null) { - throw new RuntimeException(String.format("Unrecognized game option %d", var7)); - } - } - - String var14; - byte var19; - if (var13 == class89.field884) { - switch(var12.field895) { - case 1: - case 2: - case 3: - var19 = 0; - var6 = 1; - break; - case 4: - var19 = 0; - var6 = Integer.MAX_VALUE; - break; - case 5: - var19 = 0; - var6 = 100; - break; - default: - var14 = String.format("Unkown device option: %s.", var12.toString()); - throw new RuntimeException(var14); - } - } else { - switch(var13.field885) { - case 1: - var19 = 0; - var6 = 1; - break; - case 2: - case 3: - case 4: - var19 = 0; - var6 = 100; - break; - default: - var14 = String.format("Unkown game option: %s.", var13.toString()); - throw new RuntimeException(var14); - } - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var19; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var6; - return 1; - } - } else { - var12 = class90.field893; - var13 = class89.field884; - var16 = false; - if (var0 == 3214) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var6); - if (var12 == null) { - throw new RuntimeException(String.format("Unrecognized device option %d", var6)); - } - } - - if (var0 == 3215) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var6); - if (var13 == null) { - throw new RuntimeException(String.format("Unrecognized game option %d", var6)); - } - } - - if (var0 == 3210) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var6); - if (var12 == null) { - var13 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var6); - if (var13 == null) { - throw new RuntimeException(String.format("Unrecognized client option %d", var6)); - } - } - } else if (var0 == 3182) { - var12 = class90.field890; - } else if (var0 == 3204) { - var13 = class89.field882; - } else if (var0 == 3206) { - var13 = class89.field883; - } else if (var0 == 3208) { - var13 = class89.field880; - } - - if (var13 == class89.field884) { - switch(var12.field895) { - case 1: - var5 = class449.clientPreferences.getIsUsernameHidden() ? 1 : 0; - break; - case 2: - var5 = class449.clientPreferences.getTitleMusicDisabled() ? 1 : 0; - break; - case 3: - var5 = class449.clientPreferences.method550() ? 1 : 0; - break; - case 4: - var5 = class449.clientPreferences.method552(); - break; - case 5: - var5 = PlayerType.method1883(); - break; - default: - var15 = String.format("Unkown device option: %s.", var12.toString()); - throw new RuntimeException(var15); - } - } else { - switch(var13.field885) { - case 1: - var5 = class449.clientPreferences.getRoofsHidden() ? 1 : 0; - break; - case 2: - var6 = class449.clientPreferences.getCurrentMusicVolume(); - var5 = Math.round((float)(var6 * 100) / 255.0F); - break; - case 3: - var6 = class449.clientPreferences.getCurrentSoundEffectsVolume(); - var5 = Math.round((float)(var6 * 100) / 127.0F); - break; - case 4: - var6 = class449.clientPreferences.getAreaSoundEffectsVolume(); - var5 = Math.round((float)(var6 * 100) / 127.0F); - break; - default: - var15 = String.format("Unkown game option: %s.", var13.toString()); - throw new RuntimeException(var15); - } - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var5; - return 1; - } - } else { - var12 = class90.field893; - var13 = class89.field884; - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var0 == 3212) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var6); - if (var12 == null) { - throw new RuntimeException(String.format("Unrecognized device option %d", var6)); - } - } - - if (var0 == 3213) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var13 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var6); - if (var13 == null) { - throw new RuntimeException(String.format("Unrecognized game option %d", var6)); - } - } - - if (var0 == 3209) { - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var12 = (class90)KeyHandler.findEnumerated(AbstractWorldMapData.method1517(), var6); - if (var12 == null) { - var13 = (class89)KeyHandler.findEnumerated(Varps.method1708(), var6); - if (var13 == null) { - throw new RuntimeException(String.format("Unrecognized client option %d", var6)); - } - } - } else if (var0 == 3181) { - var12 = class90.field890; - } else if (var0 == 3203) { - var13 = class89.field882; - } else if (var0 == 3205) { - var13 = class89.field883; - } else if (var0 == 3207) { - var13 = class89.field880; - } - - if (var13 == class89.field884) { - switch(var12.field895) { - case 1: - class449.clientPreferences.setIsUsernameHidden(var5 == 1); - break; - case 2: - class449.clientPreferences.getTitleMusicDisabled(var5 == 1); - break; - case 3: - class449.clientPreferences.method548(var5 == 1); - break; - case 4: - if (var5 < 0) { - var5 = 0; - } - - class449.clientPreferences.method551(var5); - break; - case 5: - class20.method69(var5); - break; - default: - var15 = String.format("Unkown device option: %s.", var12.toString()); - throw new RuntimeException(var15); - } - } else { - switch(var13.field885) { - case 1: - class449.clientPreferences.setRoofsHidden(var5 == 1); - break; - case 2: - var5 = Math.min(Math.max(var5, 0), 100); - var6 = Math.round((float)(var5 * 255) / 100.0F); - WorldMapEvent.method1588(var6); - break; - case 3: - var5 = Math.min(Math.max(var5, 0), 100); - var6 = Math.round((float)(var5 * 127) / 100.0F); - class385.method2026(var6); - break; - case 4: - var5 = Math.min(Math.max(var5, 0), 100); - var6 = Math.round((float)(var5 * 127) / 100.0F); - class14.method44(var6); - break; - default: - var15 = String.format("Unkown game option: %s.", var13.toString()); - throw new RuntimeException(var15); - } - } - - return 1; - } - } - } - } - - @ObfuscatedName("iz") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1870954980" - ) - @Export("playSong") - static void playSong(int var0) { - if (var0 == -1 && !Client.playingJingle) { - Script.method445(0, 0); - } else if (var0 != -1 && !class172.method906(var0) && class449.clientPreferences.getCurrentMusicVolume() != 0) { - ArrayList var1 = new ArrayList(); - var1.add(new MusicSong(class385.archive6, var0, 0, class449.clientPreferences.getCurrentMusicVolume(), false)); - if (Client.playingJingle) { - class305.field2773.clear(); - class305.field2773.addAll(var1); - class270.method1537(0, 100, 100, 0); - } else { - class53.method291(var1, 0, 100, 100, 0, false); - } - } - - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapSection2.java b/osrs/src/main/java/WorldMapSection2.java index 62d477956..66023801e 100644 --- a/osrs/src/main/java/WorldMapSection2.java +++ b/osrs/src/main/java/WorldMapSection2.java @@ -3,123 +3,123 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jp") +@ObfuscatedName("jg") @Implements("WorldMapSection2") public class WorldMapSection2 implements WorldMapSection { - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("minPlane") int minPlane; - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("planes") int planes; - @ObfuscatedName("ao") + @ObfuscatedName("ar") @Export("regionStartX") int regionStartX; - @ObfuscatedName("at") + @ObfuscatedName("ao") @Export("regionStartY") int regionStartY; - @ObfuscatedName("ac") + @ObfuscatedName("ab") @Export("regionEndX") int regionEndX; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("regionEndY") int regionEndY; - @ObfuscatedName("az") - int field2342; - @ObfuscatedName("ap") - int field2339; @ObfuscatedName("aa") - int field2333; - @ObfuscatedName("af") - int field2336; + int field1954; + @ObfuscatedName("ac") + int field1956; + @ObfuscatedName("al") + int field1958; + @ObfuscatedName("az") + int field1963; WorldMapSection2() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-474032336" + descriptor = "(Ljv;B)V", + garbageValue = "16" ) @Export("expandBounds") public void expandBounds(WorldMapArea var1) { - if (var1.regionLowX > this.field2342) { - var1.regionLowX = this.field2342; + if (var1.regionLowX > this.field1954) { + var1.regionLowX = this.field1954; } - if (var1.regionHighX < this.field2333) { - var1.regionHighX = this.field2333; + if (var1.regionHighX < this.field1958) { + var1.regionHighX = this.field1958; } - if (var1.regionLowY > this.field2339) { - var1.regionLowY = this.field2339; + if (var1.regionLowY > this.field1956) { + var1.regionLowY = this.field1956; } - if (var1.regionHighY < this.field2336) { - var1.regionHighY = this.field2336; + if (var1.regionHighY < this.field1963) { + var1.regionHighY = this.field1963; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIII)Z", - garbageValue = "509257779" + descriptor = "(IIIB)Z", + garbageValue = "2" ) @Export("containsCoord") public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.minPlane && var1 < this.minPlane + this.planes) { + if (var1 >= this.minPlane && var1 < this.planes + this.minPlane) { return var2 >> 6 >= this.regionStartX && var2 >> 6 <= this.regionEndX && var3 >> 6 >= this.regionStartY && var3 >> 6 <= this.regionEndY; } else { return false; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-94" + descriptor = "(III)Z", + garbageValue = "542110974" ) @Export("containsPosition") public boolean containsPosition(int var1, int var2) { - return var1 >> 6 >= this.field2342 && var1 >> 6 <= this.field2333 && var2 >> 6 >= this.field2339 && var2 >> 6 <= this.field2336; + return var1 >> 6 >= this.field1954 && var1 >> 6 <= this.field1958 && var2 >> 6 >= this.field1956 && var2 >> 6 <= this.field1963; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "1978048199" + descriptor = "(IIIS)[I", + garbageValue = "12300" ) @Export("getBorderTileLengths") public int[] getBorderTileLengths(int var1, int var2, int var3) { if (!this.containsCoord(var1, var2, var3)) { return null; } else { - int[] var4 = new int[]{var2 + (this.field2342 * 64 - this.regionStartX * 64), var3 + (this.field2339 * 64 - this.regionStartY * 64)}; + int[] var4 = new int[]{var2 + (this.field1954 * 64 - this.regionStartX * 64), var3 + (this.field1956 * 64 - this.regionStartY * 64)}; return var4; } } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "-1281040923" + descriptor = "(III)Lmh;", + garbageValue = "-1535299153" ) @Export("coord") public Coord coord(int var1, int var2) { if (!this.containsPosition(var1, var2)) { return null; } else { - int var3 = this.regionStartX * 64 - this.field2342 * 64 + var1; - int var4 = var2 + (this.regionStartY * 64 - this.field2339 * 64); + int var3 = this.regionStartX * 64 - this.field1954 * 64 + var1; + int var4 = var2 + (this.regionStartY * 64 - this.field1956 * 64); return new Coord(this.minPlane, var3, var4); } } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "47" + descriptor = "(Luj;B)V", + garbageValue = "-10" ) @Export("read") public void read(Buffer var1) { @@ -129,41 +129,109 @@ public void read(Buffer var1) { this.regionStartY = var1.readUnsignedShort(); this.regionEndX = var1.readUnsignedShort(); this.regionEndY = var1.readUnsignedShort(); - this.field2342 = var1.readUnsignedShort(); - this.field2339 = var1.readUnsignedShort(); - this.field2333 = var1.readUnsignedShort(); - this.field2336 = var1.readUnsignedShort(); + this.field1954 = var1.readUnsignedShort(); + this.field1956 = var1.readUnsignedShort(); + this.field1958 = var1.readUnsignedShort(); + this.field1963 = var1.readUnsignedShort(); this.postRead(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "1" + descriptor = "(I)V", + garbageValue = "-471572167" ) @Export("postRead") void postRead() { } - @ObfuscatedName("ny") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "120" + descriptor = "(II)Lhs;", + garbageValue = "-726042655" ) - static final void method1410() { - Client.field511 = Client.cycleCntr; - WorldMapIcon_0.field2397 = true; + @Export("getObjectDefinition") + public static ObjectComposition getObjectDefinition(int var0) { + ObjectComposition var1 = (ObjectComposition)ObjectComposition.ObjectDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = ObjectComposition.ObjectDefinition_archive.takeFile(6, var0); + var1 = new ObjectComposition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.postDecode(); + if (var1.isSolid) { + var1.interactType = 0; + var1.boolean1 = false; + } + + ObjectComposition.ObjectDefinition_cached.put(var1, (long)var0); + return var1; + } } - @ObfuscatedName("os") + @ObfuscatedName("hl") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2063894036" + descriptor = "(II)V", + garbageValue = "1992791084" ) - static void method1411() { - if (Client.oculusOrbState == 1) { - Client.oculusOrbOnLocalPlayer = true; + @Export("updateGameState") + static void updateGameState(int var0) { + if (var0 != Client.gameState) { + if (Client.gameState == 30) { + Client.field422.method1114(); + } + + if (Client.gameState == 0) { + SpriteMask.client.method170(); + } + + if (var0 == 20 || var0 == 40 || var0 == 45 || var0 == 50) { + class19.method73(0); + Client.field444 = 0; + Client.field447 = 0; + Client.timer.method2172(var0); + if (var0 != 20) { + VerticalAlignment.method958(false); + } + } + + if (var0 != 20 && var0 != 40 && class4.field4 != null) { + class4.field4.close(); + class4.field4 = null; + } + + if (Client.gameState == 25) { + Client.field451 = 0; + Client.field452 = 0; + Client.field455 = 1; + Client.field453 = 0; + Client.field454 = 1; + } + + int var1; + if (var0 != 5 && var0 != 10) { + if (var0 == 20) { + var1 = Client.gameState == 11 ? 4 : 0; + class6.method14(WorldMapDecorationType.archive10, GrandExchangeOfferOwnWorldComparator.archive8, false, var1); + } else if (var0 == 11) { + class6.method14(WorldMapDecorationType.archive10, GrandExchangeOfferOwnWorldComparator.archive8, false, 4); + } else if (var0 == 50) { + class139.setLoginResponseString("", "Updating date of birth...", ""); + class6.method14(WorldMapDecorationType.archive10, GrandExchangeOfferOwnWorldComparator.archive8, false, 7); + } else { + class14.method58(); + } + } else { + var1 = class4.method7() ? 0 : 12; + class6.method14(WorldMapDecorationType.archive10, GrandExchangeOfferOwnWorldComparator.archive8, true, var1); + } + + Client.gameState = var0; } - } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapSectionType.java b/osrs/src/main/java/WorldMapSectionType.java index 06de7610b..b48316466 100644 --- a/osrs/src/main/java/WorldMapSectionType.java +++ b/osrs/src/main/java/WorldMapSectionType.java @@ -3,45 +3,43 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ko") +@ObfuscatedName("jn") @Implements("WorldMapSectionType") -public enum WorldMapSectionType implements class371 { - @ObfuscatedName("au") +public enum WorldMapSectionType implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Ljn;" ) @Export("WORLDMAPSECTIONTYPE0") - WORLDMAPSECTIONTYPE0(2, (byte)0), - @ObfuscatedName("ae") + WORLDMAPSECTIONTYPE0(0, (byte)0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Ljn;" ) @Export("WORLDMAPSECTIONTYPE1") - WORLDMAPSECTIONTYPE1(3, (byte)1), - @ObfuscatedName("ao") + WORLDMAPSECTIONTYPE1(1, (byte)1), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Ljn;" ) @Export("WORLDMAPSECTIONTYPE2") - WORLDMAPSECTIONTYPE2(1, (byte)2), - @ObfuscatedName("at") + WORLDMAPSECTIONTYPE2(3, (byte)2), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lko;" + descriptor = "Ljn;" ) @Export("WORLDMAPSECTIONTYPE3") - WORLDMAPSECTIONTYPE3(0, (byte)3); + WORLDMAPSECTIONTYPE3(2, (byte)3); - @ObfuscatedName("cn") + @ObfuscatedName("wp") @ObfuscatedSignature( - descriptor = "Lns;" + descriptor = "Loz;" ) - static StudioGame field2417; - @ObfuscatedName("cp") - static int field2416; - @ObfuscatedName("ac") + static JagNetThread field2038; + @ObfuscatedName("ab") @Export("type") final int type; - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("id") final byte id; @@ -50,44 +48,84 @@ public enum WorldMapSectionType implements class371 { this.id = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { return this.id; } - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Ljn;", + garbageValue = "-190919972" + ) + static WorldMapSectionType[] method1309() { + return new WorldMapSectionType[]{WORLDMAPSECTIONTYPE3, WORLDMAPSECTIONTYPE1, WORLDMAPSECTIONTYPE0, WORLDMAPSECTIONTYPE2}; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "2050835652" + ) + static void method1311() { + for (ObjectSound var0 = (ObjectSound)ObjectSound.objectSounds.last(); var0 != null; var0 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var0.stream1 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var0.stream1); + var0.stream1 = null; + } + + if (var0.stream2 != null) { + LoginScreenAnimation.pcmStreamMixer.removeSubStream(var0.stream2); + var0.stream2 = null; + } + } + + ObjectSound.objectSounds.clear(); + } + + @ObfuscatedName("lj") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIII)V", + garbageValue = "57610498" + ) + @Export("insertMenuItemNoShift") + public static final void insertMenuItemNoShift(String var0, String var1, int var2, int var3, int var4, int var5) { + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var0, var1, var2, var3, var4, var5, -1, false); + } + + @ObfuscatedName("nx") @ObfuscatedSignature( - descriptor = "(IB)J", - garbageValue = "-44" + descriptor = "(I)V", + garbageValue = "1233384886" ) - public static long method1515(int var0) { - return ViewportMouse.ViewportMouse_entityTags[var0]; + @Export("Clan_leaveChat") + static final void Clan_leaveChat() { + PacketBufferNode var0 = class113.getPacketBufferNode(ClientPacket.f22, Client.packetWriter.isaacCipher); + var0.packetBuffer.writeByte(0); + Client.packetWriter.addNode(var0); } - @ObfuscatedName("lq") + @ObfuscatedName("oz") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lmi;B)Ljava/lang/String;", - garbageValue = "-26" + descriptor = "(B)V", + garbageValue = "-113" ) - static String method1516(String var0, Widget var1) { - if (var0.indexOf("%") != -1) { - for (int var2 = 1; var2 <= 5; ++var2) { - while (true) { - int var3 = var0.indexOf("%" + var2); - if (var3 == -1) { - break; - } + static void method1314() { + if (MidiPcmStream.field2799 != null) { + Client.field369 = Client.cycle; + MidiPcmStream.field2799.method1986(); - var0 = var0.substring(0, var3) + class176.method917(UserComparator9.method686(var1, var2 - 1)) + var0.substring(var3 + 2); + for (int var0 = 0; var0 < Client.players.length; ++var0) { + if (Client.players[var0] != null) { + MidiPcmStream.field2799.method1985((Client.players[var0].x >> 7) + NewShit.baseX, (Client.players[var0].y >> 7) + class101.baseY); } } } - return var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/WorldMapSprite.java b/osrs/src/main/java/WorldMapSprite.java index 3425e3a82..b11162ab0 100644 --- a/osrs/src/main/java/WorldMapSprite.java +++ b/osrs/src/main/java/WorldMapSprite.java @@ -3,10 +3,10 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kd") +@ObfuscatedName("ju") @Implements("WorldMapSprite") public final class WorldMapSprite { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("tileColors") final int[] tileColors; @@ -18,22 +18,13 @@ public final class WorldMapSprite { this.tileColors = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "0" + descriptor = "(III)I", + garbageValue = "-2024920281" ) @Export("getTileColor") final int getTileColor(int var1, int var2) { - return this.tileColors[var2 * 64 + var1]; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Lft;", - garbageValue = "-331325439" - ) - static class131[] method1533() { - return new class131[]{class131.field1268, class131.field1264, class131.field1266, class131.field1267, class131.field1263, class131.field1265}; + return this.tileColors[var1 + var2 * 64]; } } \ No newline at end of file diff --git a/osrs/src/main/java/Wrapper.java b/osrs/src/main/java/Wrapper.java index b96480f06..04bbc6d52 100644 --- a/osrs/src/main/java/Wrapper.java +++ b/osrs/src/main/java/Wrapper.java @@ -2,10 +2,10 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("lo") +@ObfuscatedName("la") @Implements("Wrapper") public abstract class Wrapper extends DualNode { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("size") final int size; @@ -13,11 +13,11 @@ public abstract class Wrapper extends DualNode { this.size = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @Export("get") abstract Object get(); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @Export("isSoft") abstract boolean isSoft(); } \ No newline at end of file diff --git a/osrs/src/main/java/ZoneOperation.java b/osrs/src/main/java/ZoneOperation.java index 2a4c50b86..10d3e1d0e 100644 --- a/osrs/src/main/java/ZoneOperation.java +++ b/osrs/src/main/java/ZoneOperation.java @@ -3,100 +3,313 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ls") +@ObfuscatedName("ly") @Implements("ZoneOperation") public class ZoneOperation { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("MAPPROJ_ANIM") - public static final ZoneOperation MAPPROJ_ANIM; - @ObfuscatedName("ae") + @Export("LOC_ANIM") + public static final ZoneOperation LOC_ANIM; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("LOC_DEL") - public static final ZoneOperation LOC_DEL; + public static final ZoneOperation field2616; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lly;" + ) + public static final ZoneOperation field2620; @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("OBJ_COUNT") - public static final ZoneOperation OBJ_COUNT; - @ObfuscatedName("at") + public static final ZoneOperation field2618; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lly;" + ) + @Export("OBJ_DEL") + public static final ZoneOperation OBJ_DEL; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - public static final ZoneOperation field2607; + public static final ZoneOperation field2622; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lly;" + ) + @Export("LOC_DEL") + public static final ZoneOperation LOC_DEL; @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) @Export("LOC_ADD_CHANGE") public static final ZoneOperation LOC_ADD_CHANGE; - @ObfuscatedName("ai") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) @Export("AREA_SOUND") public static final ZoneOperation AREA_SOUND; @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("LOC_ANIM") - public static final ZoneOperation LOC_ANIM; + public static final ZoneOperation field2625; @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("OBJ_ADD") - public static final ZoneOperation OBJ_ADD; - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lls;" - ) - @Export("OBJ_DEL_LEGACY") - public static final ZoneOperation OBJ_DEL_LEGACY; - @ObfuscatedName("af") + @Export("OBJ_COUNT") + public static final ZoneOperation OBJ_COUNT; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) - @Export("MAP_ANIM") - public static final ZoneOperation MAP_ANIM; - @ObfuscatedName("ad") + @Export("MAPPROJ_ANIM") + public static final ZoneOperation MAPPROJ_ANIM; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Lls;" + descriptor = "Lly;" ) @Export("PREFETCH_GAMEOBJECTS") public static final ZoneOperation PREFETCH_GAMEOBJECTS; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Lls;" - ) - @Export("OBJ_DEL") - public static final ZoneOperation OBJ_DEL; static { - MAPPROJ_ANIM = new ZoneOperation(5); - LOC_DEL = new ZoneOperation(16); - OBJ_COUNT = new ZoneOperation(4); - field2607 = new ZoneOperation(4); - LOC_ADD_CHANGE = new ZoneOperation(2); - AREA_SOUND = new ZoneOperation(11); - LOC_ANIM = new ZoneOperation(6); - OBJ_ADD = new ZoneOperation(14); - OBJ_DEL_LEGACY = new ZoneOperation(14); - MAP_ANIM = new ZoneOperation(5); - PREFETCH_GAMEOBJECTS = new ZoneOperation(7); - OBJ_DEL = new ZoneOperation(19); + LOC_ANIM = new ZoneOperation(4); + field2616 = new ZoneOperation(5); + field2620 = new ZoneOperation(20); + field2618 = new ZoneOperation(4); + OBJ_DEL = new ZoneOperation(16); + field2622 = new ZoneOperation(6); + LOC_DEL = new ZoneOperation(14); + LOC_ADD_CHANGE = new ZoneOperation(14); + AREA_SOUND = new ZoneOperation(5); + field2625 = new ZoneOperation(7); + OBJ_COUNT = new ZoneOperation(19); + MAPPROJ_ANIM = new ZoneOperation(11); + PREFETCH_GAMEOBJECTS = new ZoneOperation(2); } @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "5" + garbageValue = "4" ) ZoneOperation(int var1) { } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(ILuj;I)Lgx;", + garbageValue = "-485620123" + ) + public static ObjTypeCustomisation method1631(int var0, Buffer var1) { + int var2 = var1.readUnsignedByte(); + boolean var3 = (var2 & 1) != 0; + boolean var4 = (var2 & 2) != 0; + ObjTypeCustomisation var5 = new ObjTypeCustomisation(var0); + int var6; + int[] var7; + boolean var8; + int var9; + short var10; + if (var3) { + var6 = var1.readUnsignedByte(); + var7 = new int[]{var6 & 15, var6 >> 4 & 15}; + var8 = var5.recol != null && var7.length == var5.recol.length; + + for (var9 = 0; var9 < 2; ++var9) { + if (var7[var9] != 15) { + var10 = (short)var1.readUnsignedShort(); + if (var8) { + var5.recol[var7[var9]] = var10; + } + } + } + } + + if (var4) { + var6 = var1.readUnsignedByte(); + var7 = new int[]{var6 & 15, var6 >> 4 & 15}; + var8 = var5.retex != null && var7.length == var5.retex.length; + + for (var9 = 0; var9 < 2; ++var9) { + if (var7[var9] != 15) { + var10 = (short)var1.readUnsignedShort(); + if (var8) { + var5.retex[var7[var9]] = var10; + } + } + } + } + + return var5; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "744218081" + ) + public static void method1632(int var0, int var1) { + VarbitComposition var2 = ClientPreferences.getWidget(var0); + int var3 = var2.baseVar; + int var4 = var2.startBit; + int var5 = var2.endBit; + int var6 = Varps.Varps_masks[var5 - var4]; + if (var1 < 0 || var1 > var6) { + var1 = 0; + } + + var6 <<= var4; + Varps.Varps_main[var3] = Varps.Varps_main[var3] & ~var6 | var1 << var4 & var6; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-373898981" + ) + public static int method1630(int var0) { + return var0 >>> 4 & class520.field4147; + } + + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "(Lnn;IIS)V", + garbageValue = "-21324" + ) + public static void method1633(Widget var0, int var1, int var2) { + var0.field3125.bodyColors[var1] = var2; + var0.field3125.method1756(); + } + + @ObfuscatedName("jr") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "56799465" + ) + static final int method1634() { + if (WorldMapIcon_1.clientPreferences.getRoofsHidden()) { + return ItemLayer.Client_plane; + } else { + int var0 = 3; + if (Varcs.cameraPitch < 310) { + int var1; + int var2; + if (Client.oculusOrbState == 1) { + var1 = LoginScreenAnimation.oculusOrbFocalPointX >> 7; + var2 = ScriptFrame.oculusOrbFocalPointY >> 7; + } else { + var1 = class229.localPlayer.x >> 7; + var2 = class229.localPlayer.y >> 7; + } + + int var3 = ViewportMouse.cameraX >> 7; + int var4 = class36.cameraZ >> 7; + if (var3 < 0 || var4 < 0 || var3 >= 104 || var4 >= 104) { + return ItemLayer.Client_plane; + } + + if (var1 < 0 || var2 < 0 || var1 >= 104 || var2 >= 104) { + return ItemLayer.Client_plane; + } + + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][var3][var4] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + + int var5; + if (var1 > var3) { + var5 = var1 - var3; + } else { + var5 = var3 - var1; + } + + int var6; + if (var2 > var4) { + var6 = var2 - var4; + } else { + var6 = var4 - var2; + } + + int var7; + int var8; + if (var5 > var6) { + var7 = var6 * 65536 / var5; + var8 = 32768; + + while (var1 != var3) { + if (var3 < var1) { + ++var3; + } else if (var3 > var1) { + --var3; + } + + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][var3][var4] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + + var8 += var7; + if (var8 >= 65536) { + var8 -= 65536; + if (var4 < var2) { + ++var4; + } else if (var4 > var2) { + --var4; + } + + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][var3][var4] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + } + } + } else if (var6 > 0) { + var7 = var5 * 65536 / var6; + var8 = 32768; + + while (var2 != var4) { + if (var4 < var2) { + ++var4; + } else if (var4 > var2) { + --var4; + } + + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][var3][var4] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + + var8 += var7; + if (var8 >= 65536) { + var8 -= 65536; + if (var3 < var1) { + ++var3; + } else if (var3 > var1) { + --var3; + } + + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][var3][var4] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + } + } + } + } + + if (class229.localPlayer.x >= 0 && class229.localPlayer.y >= 0 && class229.localPlayer.x < 13312 && class229.localPlayer.y < 13312) { + if ((Tiles.Tiles_renderFlags[ItemLayer.Client_plane][class229.localPlayer.x >> 7][class229.localPlayer.y >> 7] & 4) != 0) { + var0 = ItemLayer.Client_plane; + } + + return var0; + } else { + return ItemLayer.Client_plane; + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class0.java b/osrs/src/main/java/class0.java index 54b330fbd..eded4b45b 100644 --- a/osrs/src/main/java/class0.java +++ b/osrs/src/main/java/class0.java @@ -2,11 +2,14 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("au") +@ObfuscatedName("at") public class class0 implements class3 { - @ObfuscatedName("au") + class0() { + } + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;)Ltm;" + descriptor = "(Luj;)Luj;" ) @Export("vmethod12") public Buffer vmethod12(Buffer var1) { @@ -15,16 +18,16 @@ public Buffer vmethod12(Buffer var1) { return var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;Ltm;)V" + descriptor = "(Luj;Luj;)V" ) void method1(Buffer var1, Buffer var2) { class8 var3 = new class8(var1); class5 var4 = new class5(var3); long var5; - for (var5 = 0L; !var4.method6(var3.method20(), var3.method19(), var5); ++var5) { + for (var5 = 0L; !var4.method8(var3.method22(), var3.method21(), var5); ++var5) { } var2.writeLong(var5); diff --git a/osrs/src/main/java/class1.java b/osrs/src/main/java/class1.java index 2c3c23360..7a84b1ab5 100644 --- a/osrs/src/main/java/class1.java +++ b/osrs/src/main/java/class1.java @@ -4,53 +4,202 @@ import java.util.concurrent.Callable; -@ObfuscatedName("ae") +@ObfuscatedName("ah") public class class1 implements Callable { - @ObfuscatedName("fp") + @ObfuscatedName("ai") + @Export("ByteArrayPool_arrays") + static byte[][][] ByteArrayPool_arrays; + @ObfuscatedName("ud") + @Export("cameraLookAtAcceleration") + static int cameraLookAtAcceleration; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Luj;" ) - @Export("archive2") - static Archive archive2; - @ObfuscatedName("au") + final Buffer field3; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Lao;" ) - final Buffer field2; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lat;" - ) - final class3 field1; + final class3 field2; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lap;" + descriptor = "Lac;" ) @Export("this$0") @ObfuscatedName("this$0") final class7 this$0; @ObfuscatedSignature( - descriptor = "(Lap;Ltm;Lat;)V" + descriptor = "(Lac;Luj;Lao;)V" ) class1(class7 var1, Buffer var2, class3 var3) { this.this$0 = var1; - this.field2 = var2; - this.field1 = var3; + this.field3 = var2; + this.field2 = var3; } @Export("call") @ObfuscatedName("call") public Object call() { - return this.field1.vmethod12(this.field2); + return this.field2.vmethod12(this.field3); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IB)Lgo;", + garbageValue = "9" + ) + @Export("KitDefinition_get") + public static KitDefinition KitDefinition_get(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("ae") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-262419719" + descriptor = "(ILdt;ZI)I", + garbageValue = "1140575558" ) - static int method2() { - return class28.KeyHandler_keyCodes.length; + static int method3(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } else { + var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + } + + String var4 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + int[] var5 = null; + if (var4.length() > 0 && var4.charAt(var4.length() - 1) == 'Y') { + int var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var6 > 0) { + for (var5 = new int[var6]; var6-- > 0; var5[var6] = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]) { + } + } + + var4 = var4.substring(0, var4.length() - 1); + } + + Object[] var9 = new Object[var4.length() + 1]; + + int var7; + for (var7 = var9.length - 1; var7 >= 1; --var7) { + if (var4.charAt(var7 - 1) == 's') { + var9[var7] = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + } else { + var9[var7] = new Integer(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } + } + + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var7 != -1) { + var9[0] = new Integer(var7); + } else { + var9 = null; + } + + if (var0 == 1400) { + var3.onClick = var9; + } else if (var0 == 1401) { + var3.onHold = var9; + } else if (var0 == 1402) { + var3.onRelease = var9; + } else if (var0 == 1403) { + var3.onMouseOver = var9; + } else if (var0 == 1404) { + var3.onMouseLeave = var9; + } else if (var0 == 1405) { + var3.onDrag = var9; + } else if (var0 == 1406) { + var3.onTargetLeave = var9; + } else if (var0 == 1407) { + var3.onVarTransmit = var9; + var3.varTransmitTriggers = var5; + } else if (var0 == 1408) { + var3.onTimer = var9; + } else if (var0 == 1409) { + var3.onOp = var9; + } else if (var0 == 1410) { + var3.onDragComplete = var9; + } else if (var0 == 1411) { + var3.onClickRepeat = var9; + } else if (var0 == 1412) { + var3.onMouseRepeat = var9; + } else if (var0 == 1414) { + var3.onInvTransmit = var9; + var3.invTransmitTriggers = var5; + } else if (var0 == 1415) { + var3.onStatTransmit = var9; + var3.statTransmitTriggers = var5; + } else if (var0 == 1416) { + var3.onTargetEnter = var9; + } else if (var0 == 1417) { + var3.onScroll = var9; + } else if (var0 == 1418) { + var3.onChatTransmit = var9; + } else if (var0 == 1419) { + var3.onKey = var9; + } else if (var0 == 1420) { + var3.onFriendTransmit = var9; + } else if (var0 == 1421) { + var3.onClanTransmit = var9; + } else if (var0 == 1422) { + var3.onMiscTransmit = var9; + } else if (var0 == 1423) { + var3.onDialogAbort = var9; + } else if (var0 == 1424) { + var3.onSubChange = var9; + } else if (var0 == 1425) { + var3.onStockTransmit = var9; + } else if (var0 == 1426) { + var3.field3115 = var9; + } else if (var0 == 1427) { + var3.onResize = var9; + } else if (var0 == 1428) { + var3.field3099 = var9; + } else if (var0 == 1429) { + var3.field3114 = var9; + } else if (var0 == 1430) { + var3.field3107 = var9; + } else if (var0 == 1431) { + var3.field3108 = var9; + } else if (var0 == 1434) { + var3.field3116 = var9; + } else if (var0 == 1435) { + var3.field3098 = var9; + } else { + if (var0 < 1436 || var0 > 1439) { + return 2; + } + + class339 var8 = var3.method1874(); + if (var8 != null) { + if (var0 == 1436) { + var8.field2931 = var9; + } else if (var0 == 1437) { + var8.field2933 = var9; + } else if (var0 == 1438) { + var8.field2930 = var9; + } else if (var0 == 1439) { + var8.field2932 = var9; + } + } + } + + var3.hasListener = true; + return 1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class10.java b/osrs/src/main/java/class10.java index a9a093cbe..cdbc9b7cf 100644 --- a/osrs/src/main/java/class10.java +++ b/osrs/src/main/java/class10.java @@ -1,118 +1,121 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import javax.net.ssl.HttpsURLConnection; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.UnsupportedEncodingException; +import java.io.*; import java.net.ProtocolException; import java.net.URL; +import java.util.Iterator; -@ObfuscatedName("ad") +@ObfuscatedName("ap") public class class10 { - @ObfuscatedName("gd") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field28; - @ObfuscatedName("au") - final HttpsURLConnection field34; - @ObfuscatedName("ae") + @ObfuscatedName("wj") + static Iterator field30; + @ObfuscatedName("at") + final HttpsURLConnection field36; + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "Lqf;" ) - final class419 field35; - @ObfuscatedName("ao") + final class431 field37; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Laz;" ) - final class9 field33; - @ObfuscatedName("at") + final class9 field35; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lrf;" + descriptor = "Lsd;" ) - class461 field32; - @ObfuscatedName("ac") - boolean field29; - @ObfuscatedName("ai") - boolean field30; - @ObfuscatedName("az") - int field31; + class473 field34; + @ObfuscatedName("ab") + boolean field31; + @ObfuscatedName("au") + boolean field32; + @ObfuscatedName("aa") + int field33; @ObfuscatedSignature( - descriptor = "(Ljava/net/URL;Laf;Lqf;Z)V" + descriptor = "(Ljava/net/URL;Laz;Lqf;Z)V" ) - public class10(URL var1, class9 var2, class419 var3, boolean var4) throws IOException { - this.field29 = false; - this.field30 = false; - this.field31 = 300000; - if (!var2.method21()) { - throw new UnsupportedEncodingException("Unsupported request method used " + var2.method22()); + public class10(URL var1, class9 var2, class431 var3, boolean var4) throws IOException { + this.field31 = false; + this.field32 = false; + this.field33 = 300000; + if (!var2.method23()) { + throw new UnsupportedEncodingException("Unsupported request method used " + var2.method24()); } else { - this.field34 = (HttpsURLConnection)var1.openConnection(); + this.field36 = (HttpsURLConnection)var1.openConnection(); if (!var4) { - this.field34.setSSLSocketFactory(class15.method45()); + HttpsURLConnection var5 = this.field36; + if (class15.field49 == null) { + class15.field49 = new class15(); + } + + class15 var6 = class15.field49; + var5.setSSLSocketFactory(var6); } - this.field33 = var2; - this.field35 = var3 != null ? var3 : new class419(); + this.field35 = var2; + this.field37 = var3 != null ? var3 : new class431(); } } @ObfuscatedSignature( - descriptor = "(Ljava/net/URL;Laf;Z)V" + descriptor = "(Ljava/net/URL;Laz;Z)V" ) public class10(URL var1, class9 var2, boolean var3) throws IOException { - this(var1, var2, new class419(), var3); + this(var1, var2, new class431(), var3); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)Lqf;", - garbageValue = "106" + descriptor = "(I)Lqf;", + garbageValue = "77865186" ) - public class419 method27() { - return this.field35; + public class431 method34() { + return this.field37; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lrf;B)V", - garbageValue = "2" + descriptor = "(Lsd;I)V", + garbageValue = "2039275921" ) - public void method28(class461 var1) { - if (!this.field29) { + public void method35(class473 var1) { + if (!this.field31) { if (var1 == null) { - this.field35.method2167("Content-Type"); - this.field32 = null; + this.field37.method2183("Content-Type"); + this.field34 = null; } else { - this.field32 = var1; - if (this.field32.vmethod2213() != null) { - this.field35.method2171(this.field32.vmethod2213()); + this.field34 = var1; + if (this.field34.vmethod2213() != null) { + this.field37.method2187(this.field34.vmethod2213()); } else { - this.field35.method2172(); + this.field37.method2188(); } } } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2080187114" + descriptor = "(B)V", + garbageValue = "6" ) - void method29() throws ProtocolException { - if (!this.field29) { - this.field34.setRequestMethod(this.field33.method22()); - this.field35.method2164(this.field34); - if (this.field33.method23() && this.field32 != null) { - this.field34.setDoOutput(true); + void method36() throws ProtocolException { + if (!this.field31) { + this.field36.setRequestMethod(this.field35.method24()); + this.field37.method2180(this.field36); + if (this.field35.method25() && this.field34 != null) { + this.field36.setDoOutput(true); ByteArrayOutputStream var1 = new ByteArrayOutputStream(); try { - var1.write(this.field32.vmethod7797()); - var1.writeTo(this.field34.getOutputStream()); + var1.write(this.field34.vmethod7797()); + var1.writeTo(this.field36.getOutputStream()); } catch (IOException var11) { var11.printStackTrace(); } finally { @@ -125,51 +128,160 @@ void method29() throws ProtocolException { } } - this.field34.setConnectTimeout(this.field31); - this.field34.setInstanceFollowRedirects(this.field30); - this.field29 = true; + this.field36.setConnectTimeout(this.field33); + this.field36.setInstanceFollowRedirects(this.field32); + this.field31 = true; } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-170543381" + garbageValue = "1613730505" ) - boolean method30() throws IOException { - if (!this.field29) { - this.method29(); + boolean method37() throws IOException { + if (!this.field31) { + this.method36(); } - this.field34.connect(); - return this.field34.getResponseCode() == -1; + this.field36.connect(); + return this.field36.getResponseCode() == -1; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)Las;", - garbageValue = "-1418069243" + descriptor = "(I)Law;", + garbageValue = "1005545851" ) - class20 method31() { + class20 method38() { try { - if (!this.field29 || this.field34.getResponseCode() == -1) { + if (!this.field31 || this.field36.getResponseCode() == -1) { return new class20("No REST response has been received yet."); } } catch (IOException var10) { - this.field34.disconnect(); + this.field36.disconnect(); return new class20("Error decoding REST response code: " + var10.getMessage()); } class20 var3; try { - class20 var1 = new class20(this.field34); + class20 var1 = new class20(this.field36); return var1; } catch (IOException var8) { var3 = new class20("Error decoding REST response: " + var8.getMessage()); } finally { - this.field34.disconnect(); + this.field36.disconnect(); } return var3; } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)Ljava/io/File;", + garbageValue = "1180339211" + ) + @Export("getFile") + static File getFile(String var0) { + if (!FileSystem.FileSystem_hasPermissions) { + throw new RuntimeException(""); + } else { + File var1 = (File)FileSystem.FileSystem_cacheFiles.get(var0); + if (var1 != null) { + return var1; + } else { + File var2 = new File(FileSystem.FileSystem_cacheDir, var0); + RandomAccessFile var3 = null; + + try { + File var4 = new File(var2.getParent()); + if (!var4.exists()) { + throw new RuntimeException(""); + } else { + var3 = new RandomAccessFile(var2, "rw"); + int var5 = var3.read(); + var3.seek(0L); + var3.write(var5); + var3.seek(0L); + var3.close(); + FileSystem.FileSystem_cacheFiles.put(var0, var2); + return var2; + } + } catch (Exception var8) { + try { + if (var3 != null) { + var3.close(); + var3 = null; + } + } catch (Exception var7) { + } + + throw new RuntimeException(); + } + } + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-841050646" + ) + public static int method32(int var0, int var1) { + return (var0 << 8) + var1; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(Lol;Lol;Ljava/lang/String;Ljava/lang/String;B)Lpf;", + garbageValue = "84" + ) + public static Font method40(AbstractArchive var0, AbstractArchive var1, String var2, String var3) { + if (!var0.isValidFileName(var2, var3)) { + return null; + } else { + int var4 = var0.getGroupId(var2); + int var5 = var0.getFileId(var4, var3); + byte[] var8 = var0.takeFile(var4, var5); + boolean var7; + if (var8 == null) { + var7 = false; + } else { + class162.SpriteBuffer_decode(var8); + var7 = true; + } + + Font var6; + if (!var7) { + var6 = null; + } else { + var6 = WorldMapArea.method1229(var1.takeFile(var4, var5)); + } + + return var6; + } + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(CS)Z", + garbageValue = "128" + ) + @Export("isCharAlphabetic") + public static boolean isCharAlphabetic(char var0) { + return var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; + } + + @ObfuscatedName("lv") + @ObfuscatedSignature( + descriptor = "(IIB)V", + garbageValue = "10" + ) + @Export("resumePauseWidget") + static void resumePauseWidget(int var0, int var1) { + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.RESUME_PAUSEBUTTON, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeIntME(var0); + var2.packetBuffer.writeShortAddLE(var1); + Client.packetWriter.addNode(var2); + } } \ No newline at end of file diff --git a/osrs/src/main/java/class101.java b/osrs/src/main/java/class101.java index b21fbaecb..26ab7f348 100644 --- a/osrs/src/main/java/class101.java +++ b/osrs/src/main/java/class101.java @@ -1,56 +1,81 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("dq") public class class101 { - @ObfuscatedName("au") + @ObfuscatedName("ff") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1873768041" + descriptor = "Liq;" ) - public static boolean method598(int var0) { - return var0 >= WorldMapDecorationType.field3123.id && var0 <= WorldMapDecorationType.field3122.id || var0 == WorldMapDecorationType.field3119.id; - } + @Export("js5SocketTask") + static Task js5SocketTask; + @ObfuscatedName("jq") + @Export("baseY") + static int baseY; - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2030205668" + descriptor = "(II)Lhu;", + garbageValue = "103628277" ) - static void method599() { - ByteArrayPool.field3746.clear(); - ByteArrayPool.field3746.add(100); - ByteArrayPool.field3746.add(5000); - ByteArrayPool.field3746.add(10000); - ByteArrayPool.field3746.add(30000); + public static FloorUnderlayDefinition method596(int var0) { + FloorUnderlayDefinition var1 = (FloorUnderlayDefinition)FloorUnderlayDefinition.FloorUnderlayDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = FloorUnderlayDefinition.FloorUnderlayDefinition_archive.takeFile(1, var0); + var1 = new FloorUnderlayDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2), var0); + } + + var1.postDecode(); + FloorUnderlayDefinition.FloorUnderlayDefinition_cached.put(var1, (long)var0); + return var1; + } } - @ObfuscatedName("bi") + @ObfuscatedName("ni") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1662859603" + descriptor = "(Lnn;I)Z", + garbageValue = "-429343938" ) - static int method600(int var0, Script var1, boolean var2) { - if (var0 == 6754) { - int var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - NPCComposition var4 = class90.getNpcDefinition(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4 != null ? var4.name : ""; - return 1; + static final boolean method597(Widget var0) { + int var1 = var0.contentType; + if (var1 == 205) { + Client.logoutTimer = 250; + return true; } else { - NPCComposition var5; - if (var0 == 6764) { - SoundCache.Interpreter_intStackSize -= 2; - var5 = class90.getNpcDefinition(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - int var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var5.method994(var6); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var5.method996(var6); - return 1; - } else if (var0 == 6765) { - var5 = class90.getNpcDefinition(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var5 != null ? var5.combatLevel * 989486243 * 599602955 : 0; - return 1; + int var2; + int var3; + if (var1 >= 300 && var1 <= 313) { + var2 = (var1 - 300) / 2; + var3 = var1 & 1; + Client.playerAppearance.changeAppearance(var2, var3 == 1); + } + + if (var1 >= 314 && var1 <= 323) { + var2 = (var1 - 314) / 2; + var3 = var1 & 1; + Client.playerAppearance.method1749(var2, var3 == 1); + } + + if (var1 == 324) { + Client.playerAppearance.method1750(0); + } + + if (var1 == 325) { + Client.playerAppearance.method1750(1); + } + + if (var1 == 326) { + PacketBufferNode var4 = class113.getPacketBufferNode(ClientPacket.f9, Client.packetWriter.isaacCipher); + Client.playerAppearance.write(var4.packetBuffer); + Client.packetWriter.addNode(var4); + return true; } else { - return 2; + return false; } } } diff --git a/osrs/src/main/java/class102.java b/osrs/src/main/java/class102.java index 692368cb2..b9e079fea 100644 --- a/osrs/src/main/java/class102.java +++ b/osrs/src/main/java/class102.java @@ -2,257 +2,146 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("de") +import java.util.ArrayList; + +@ObfuscatedName("dj") public class class102 { - @ObfuscatedName("bc") + @ObfuscatedName("tl") @ObfuscatedSignature( - descriptor = "Lrb;" + descriptor = "Luz;" ) - static Bounds field1090; - @ObfuscatedName("au") - int field1094; - @ObfuscatedName("ae") - int field1091; - @ObfuscatedName("ao") - int field1092; + @Export("sceneMinimapSprite") + static SpritePixels sceneMinimapSprite; @ObfuscatedName("at") - int field1093; + int field1102; + @ObfuscatedName("ah") + int field1099; + @ObfuscatedName("ar") + int field1101; + @ObfuscatedName("ao") + int field1100; class102(int var1, int var2, int var3, int var4) { - this.field1094 = var1; - this.field1091 = var2; - this.field1092 = var3; - this.field1093 = var4; + this.field1102 = var1; + this.field1099 = var2; + this.field1101 = var3; + this.field1100 = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-92" + descriptor = "(I)I", + garbageValue = "664232090" ) - int method601() { - return this.field1094; + int method598() { + return this.field1102; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "93" + descriptor = "(I)I", + garbageValue = "1580269670" ) - int method602() { - return this.field1091; + int method599() { + return this.field1099; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-806640725" + descriptor = "(B)I", + garbageValue = "-21" ) - int method603() { - return this.field1092; + int method600() { + return this.field1101; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1075721841" + descriptor = "(B)I", + garbageValue = "1" ) - int method604() { - return this.field1093; + int method601() { + return this.field1100; } - @ObfuscatedName("az") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IIZI)Ljava/lang/String;", - garbageValue = "-880794678" + descriptor = "(II)Lko;", + garbageValue = "-1983844659" ) - static String method605(int var0, int var1, boolean var2) { - if (var1 >= 2 && var1 <= 36) { - if (var2 && var0 >= 0) { - int var3 = 2; - - for (int var4 = var0 / var1; var4 != 0; ++var3) { - var4 /= var1; - } - - char[] var5 = new char[var3]; - var5[0] = '+'; - - for (int var6 = var3 - 1; var6 > 0; --var6) { - int var7 = var0; - var0 /= var1; - int var8 = var7 - var0 * var1; - if (var8 >= 10) { - var5[var6] = (char)(var8 + 87); - } else { - var5[var6] = (char)(var8 + 48); - } - } - - return new String(var5); - } else { - return Integer.toString(var0, var1); - } + @Export("getFrames") + static Frames getFrames(int var0) { + Frames var1 = (Frames)SequenceDefinition.SequenceDefinition_cachedFrames.get((long)var0); + if (var1 != null) { + return var1; } else { - throw new IllegalArgumentException("" + var1); + var1 = class135.method733(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); + if (var1 != null) { + SequenceDefinition.SequenceDefinition_cachedFrames.put(var1, (long)var0); + } + + return var1; } } - @ObfuscatedName("ke") + @ObfuscatedName("hk") @ObfuscatedSignature( - descriptor = "(IIIIII)V", - garbageValue = "-2114213929" + descriptor = "(III)V", + garbageValue = "-1556654633" ) - @Export("drawObject") - static final void drawObject(int var0, int var1, int var2, int var3, int var4) { - long var5 = class130.scene.getBoundaryObjectTag(var0, var1, var2); - int var7; - int var8; - int var9; - int var10; - int var14; - int var26; - if (0L != var5) { - var7 = class130.scene.getObjectFlags(var0, var1, var2, var5); - var8 = var7 >> 6 & 3; - var9 = var7 & 31; - var10 = var3; - boolean var12 = 0L != var5; - if (var12) { - boolean var13 = (int)(var5 >>> 16 & 1L) == 1; - var12 = !var13; - } - - if (var12) { - var10 = var4; - } - - int[] var19 = AbstractUserComparator.sceneMinimapSprite.pixels; - var26 = var1 * 4 + (103 - var2) * 2048 + 24624; - var14 = InvDefinition.Entity_unpackID(var5); - ObjectComposition var15 = WorldMapElement.getObjectDefinition(var14); - if (var15.mapSceneId != -1) { - IndexedSprite var16 = class299.mapSceneSprites[var15.mapSceneId]; - if (var16 != null) { - int var17 = (var15.sizeX * 4 - var16.subWidth) / 2; - int var18 = (var15.sizeY * 4 - var16.subHeight) / 2; - var16.drawAt(var17 + var1 * 4 + 48, (104 - var2 - var15.sizeY) * 4 + var18 + 48); - } - } else { - if (var9 == 0 || var9 == 2) { - if (var8 == 0) { - var19[var26] = var10; - var19[var26 + 512] = var10; - var19[var26 + 1024] = var10; - var19[var26 + 1536] = var10; - } else if (var8 == 1) { - var19[var26] = var10; - var19[var26 + 1] = var10; - var19[var26 + 2] = var10; - var19[var26 + 3] = var10; - } else if (var8 == 2) { - var19[var26 + 3] = var10; - var19[var26 + 512 + 3] = var10; - var19[var26 + 1024 + 3] = var10; - var19[var26 + 1536 + 3] = var10; - } else if (var8 == 3) { - var19[var26 + 1536] = var10; - var19[var26 + 1536 + 1] = var10; - var19[var26 + 1536 + 2] = var10; - var19[var26 + 1536 + 3] = var10; - } - } + static void method603(int var0, int var1) { + int[] var2 = new int[9]; + + for (int var3 = 0; var3 < var2.length; ++var3) { + int var4 = var3 * 32 + 15 + 128; + int var5 = class158.method832(var4); + int var6 = Rasterizer3D.Rasterizer3D_sine[var4]; + var5 = class395.method2041(var5, var1); + var2[var3] = var5 * var6 >> 16; + } - if (var9 == 3) { - if (var8 == 0) { - var19[var26] = var10; - } else if (var8 == 1) { - var19[var26 + 3] = var10; - } else if (var8 == 2) { - var19[var26 + 1536 + 3] = var10; - } else if (var8 == 3) { - var19[var26 + 1536] = var10; - } - } + Scene.Scene_buildVisiblityMap(var2, 500, 800, var0 * 334 / var1, 334); + } - if (var9 == 2) { - if (var8 == 3) { - var19[var26] = var10; - var19[var26 + 512] = var10; - var19[var26 + 1024] = var10; - var19[var26 + 1536] = var10; - } else if (var8 == 0) { - var19[var26] = var10; - var19[var26 + 1] = var10; - var19[var26 + 2] = var10; - var19[var26 + 3] = var10; - } else if (var8 == 1) { - var19[var26 + 3] = var10; - var19[var26 + 512 + 3] = var10; - var19[var26 + 1024 + 3] = var10; - var19[var26 + 1536 + 3] = var10; - } else if (var8 == 2) { - var19[var26 + 1536] = var10; - var19[var26 + 1536 + 1] = var10; - var19[var26 + 1536 + 2] = var10; - var19[var26 + 1536 + 3] = var10; - } - } - } + @ObfuscatedName("he") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-702066776" + ) + static final void method604() { + if (MusicPatchPcmStream.pcmPlayer1 != null) { + MusicPatchPcmStream.pcmPlayer1.run(); } - var5 = class130.scene.getGameObjectTag(var0, var1, var2); - if (var5 != 0L) { - var7 = class130.scene.getObjectFlags(var0, var1, var2, var5); - var8 = var7 >> 6 & 3; - var9 = var7 & 31; - var10 = InvDefinition.Entity_unpackID(var5); - ObjectComposition var20 = WorldMapElement.getObjectDefinition(var10); - if (var20.mapSceneId != -1) { - IndexedSprite var28 = class299.mapSceneSprites[var20.mapSceneId]; - if (var28 != null) { - var26 = (var20.sizeX * 4 - var28.subWidth) / 2; - var14 = (var20.sizeY * 4 - var28.subHeight) / 2; - var28.drawAt(var26 + var1 * 4 + 48, (104 - var2 - var20.sizeY) * 4 + var14 + 48); - } - } else if (var9 == 9) { - int var25 = 15658734; - boolean var27 = 0L != var5; - if (var27) { - boolean var21 = (int)(var5 >>> 16 & 1L) == 1; - var27 = !var21; - } - - if (var27) { - var25 = 15597568; - } + } - int[] var22 = AbstractUserComparator.sceneMinimapSprite.pixels; - int var29 = var1 * 4 + (103 - var2) * 2048 + 24624; - if (var8 != 0 && var8 != 2) { - var22[var29] = var25; - var22[var29 + 1 + 512] = var25; - var22[var29 + 1024 + 2] = var25; - var22[var29 + 1536 + 3] = var25; - } else { - var22[var29 + 1536] = var25; - var22[var29 + 1 + 1024] = var25; - var22[var29 + 512 + 2] = var25; - var22[var29 + 3] = var25; - } + @ObfuscatedName("iv") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-100" + ) + @Export("playSong") + static void playSong(int var0) { + if (var0 == -1 && !Client.playingJingle) { + WorldMapManager.method1265(0, 0); + } else if (var0 != -1) { + boolean var1; + if (class316.field2787.isEmpty()) { + var1 = false; + } else { + MusicSong var2 = (MusicSong)class316.field2787.get(0); + var1 = var2 != null && var0 == var2.musicTrackGroupId; } - } - var5 = class130.scene.getFloorDecorationTag(var0, var1, var2); - if (var5 != 0L) { - var7 = InvDefinition.Entity_unpackID(var5); - ObjectComposition var23 = WorldMapElement.getObjectDefinition(var7); - if (var23.mapSceneId != -1) { - IndexedSprite var24 = class299.mapSceneSprites[var23.mapSceneId]; - if (var24 != null) { - var10 = (var23.sizeX * 4 - var24.subWidth) / 2; - int var11 = (var23.sizeY * 4 - var24.subHeight) / 2; - var24.drawAt(var1 * 4 + var10 + 48, (104 - var2 - var23.sizeY) * 4 + var11 + 48); + if (!var1 && WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() != 0) { + ArrayList var3 = new ArrayList(); + var3.add(new MusicSong(class514.archive6, var0, 0, WorldMapIcon_1.clientPreferences.getCurrentMusicVolume(), false)); + if (Client.playingJingle) { + class316.field2787.clear(); + class316.field2787.addAll(var3); + EnumComposition.method925(0, 100, 100, 0); + } else { + PendingSpawn.method505(var3, 0, 100, 100, 0, false); } } } diff --git a/osrs/src/main/java/class105.java b/osrs/src/main/java/class105.java index 5e57ea6f3..44fd8cad2 100644 --- a/osrs/src/main/java/class105.java +++ b/osrs/src/main/java/class105.java @@ -2,786 +2,42 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eh") -final class class105 implements class323 { +@ObfuscatedName("ew") +final class class105 implements class334 { + @ObfuscatedName("dm") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + @Export("worldSelectRightSprite") + static IndexedSprite worldSelectRightSprite; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("val$cc") @ObfuscatedName("val$cc") final Widget val$cc; @ObfuscatedSignature( - descriptor = "(Lmi;)V" + descriptor = "(Lnn;)V" ) class105(Widget var1) { this.val$cc = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "17" + garbageValue = "5" ) @Export("vmethod5708") public void vmethod5708() { - if (this.val$cc != null && this.val$cc.method1847().field2899 != null) { + if (this.val$cc != null && this.val$cc.method1874().field2933 != null) { ScriptEvent var1 = new ScriptEvent(); - var1.method479(this.val$cc); - var1.setArgs(this.val$cc.method1847().field2899); - class30.getScriptEvents().addFirst(var1); - } - - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(Lpi;Lpi;Lpi;B)V", - garbageValue = "-46" - ) - @Export("drawTitle") - static void drawTitle(Font var0, Font var1, Font var2) { - Login.xPadding = (class113.canvasWidth - 765) / 2; - Login.loginBoxX = Login.xPadding + 202; - class452.loginBoxCenter = Login.loginBoxX + 180; - byte var3; - int var4; - int var9; - boolean var15; - int var17; - int var25; - int var26; - int var34; - int var36; - int var43; - int var48; - if (Login.worldSelectOpen) { - if (class74.worldSelectBackSprites == null) { - class74.worldSelectBackSprites = class20.method67(PcmPlayer.archive8, "sl_back", ""); - } - - if (SoundCache.worldSelectFlagSprites == null) { - SoundCache.worldSelectFlagSprites = class219.method1149(PcmPlayer.archive8, "sl_flags", ""); - } - - if (MusicPatchPcmStream.worldSelectArrows == null) { - MusicPatchPcmStream.worldSelectArrows = class219.method1149(PcmPlayer.archive8, "sl_arrows", ""); - } - - if (SecureRandomCallable.worldSelectStars == null) { - SecureRandomCallable.worldSelectStars = class219.method1149(PcmPlayer.archive8, "sl_stars", ""); - } - - if (class85.worldSelectLeftSprite == null) { - class85.worldSelectLeftSprite = class172.SpriteBuffer_getIndexedSpriteByName(PcmPlayer.archive8, "leftarrow", ""); - } - - if (Skeleton.worldSelectRightSprite == null) { - Skeleton.worldSelectRightSprite = class172.SpriteBuffer_getIndexedSpriteByName(PcmPlayer.archive8, "rightarrow", ""); - } - - Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding, 23, 765, 480, 0); - Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding, 0, 125, 23, 12425273, 9135624); - Rasterizer2D.Rasterizer2D_fillRectangleGradient(Login.xPadding + 125, 0, 640, 23, 5197647, 2697513); - var0.drawCentered("Select a world", Login.xPadding + 62, 15, 0, -1); - if (SecureRandomCallable.worldSelectStars != null) { - SecureRandomCallable.worldSelectStars[1].drawAt(Login.xPadding + 140, 1); - var1.draw("Members only world", Login.xPadding + 152, 10, 16777215, -1); - SecureRandomCallable.worldSelectStars[0].drawAt(Login.xPadding + 140, 12); - var1.draw("Free world", Login.xPadding + 152, 21, 16777215, -1); - } - - if (MusicPatchPcmStream.worldSelectArrows != null) { - var34 = Login.xPadding + 280; - if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 0) { - MusicPatchPcmStream.worldSelectArrows[2].drawAt(var34, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[0].drawAt(var34, 4); - } - - if (World.World_sortOption1[0] == 0 && World.World_sortOption2[0] == 1) { - MusicPatchPcmStream.worldSelectArrows[3].drawAt(var34 + 15, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[1].drawAt(var34 + 15, 4); - } - - var0.draw("World", var34 + 32, 17, 16777215, -1); - var4 = Login.xPadding + 390; - if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 0) { - MusicPatchPcmStream.worldSelectArrows[2].drawAt(var4, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[0].drawAt(var4, 4); - } - - if (World.World_sortOption1[0] == 1 && World.World_sortOption2[0] == 1) { - MusicPatchPcmStream.worldSelectArrows[3].drawAt(var4 + 15, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[1].drawAt(var4 + 15, 4); - } - - var0.draw("Players", var4 + 32, 17, 16777215, -1); - var43 = Login.xPadding + 500; - if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 0) { - MusicPatchPcmStream.worldSelectArrows[2].drawAt(var43, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[0].drawAt(var43, 4); - } - - if (World.World_sortOption1[0] == 2 && World.World_sortOption2[0] == 1) { - MusicPatchPcmStream.worldSelectArrows[3].drawAt(var43 + 15, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[1].drawAt(var43 + 15, 4); - } - - var0.draw("Location", var43 + 32, 17, 16777215, -1); - var26 = Login.xPadding + 610; - if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 0) { - MusicPatchPcmStream.worldSelectArrows[2].drawAt(var26, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[0].drawAt(var26, 4); - } - - if (World.World_sortOption1[0] == 3 && World.World_sortOption2[0] == 1) { - MusicPatchPcmStream.worldSelectArrows[3].drawAt(var26 + 15, 4); - } else { - MusicPatchPcmStream.worldSelectArrows[1].drawAt(var26 + 15, 4); - } - - var0.draw("Type", var26 + 32, 17, 16777215, -1); - } - - Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding + 708, 4, 50, 16, 0); - var1.drawCentered("Cancel", Login.xPadding + 708 + 25, 16, 16777215, -1); - Login.hoveredWorldIndex = -1; - if (class74.worldSelectBackSprites != null) { - var3 = 88; - byte var39 = 19; - var43 = 765 / (var3 + 1) - 1; - var26 = 480 / (var39 + 1); - - do { - var48 = var26; - var25 = var43; - if (var26 * (var43 - 1) >= World.World_count) { - --var43; - } - - if (var43 * (var26 - 1) >= World.World_count) { - --var26; - } - - if (var43 * (var26 - 1) >= World.World_count) { - --var26; - } - } while(var48 != var26 || var25 != var43); - - var48 = (765 - var3 * var43) / (var43 + 1); - if (var48 > 5) { - var48 = 5; - } - - var25 = (480 - var39 * var26) / (var26 + 1); - if (var25 > 5) { - var25 = 5; - } - - var9 = (765 - var43 * var3 - var48 * (var43 - 1)) / 2; - int var29 = (480 - var26 * var39 - var25 * (var26 - 1)) / 2; - var36 = (var26 + World.World_count - 1) / var26; - Login.worldSelectPagesCount = var36 - var43; - if (class85.worldSelectLeftSprite != null && Login.worldSelectPage > 0) { - class85.worldSelectLeftSprite.drawAt(8, class177.canvasHeight / 2 - class85.worldSelectLeftSprite.subHeight / 2); - } - - if (Skeleton.worldSelectRightSprite != null && Login.worldSelectPage < Login.worldSelectPagesCount) { - Skeleton.worldSelectRightSprite.drawAt(class113.canvasWidth - Skeleton.worldSelectRightSprite.subWidth - 8, class177.canvasHeight / 2 - Skeleton.worldSelectRightSprite.subHeight / 2); - } - - int var38 = var29 + 23; - int var30 = var9 + Login.xPadding; - int var31 = 0; - var15 = false; - int var40 = Login.worldSelectPage; - - for (var17 = var26 * var40; var17 < World.World_count && var40 - Login.worldSelectPage < var43; ++var17) { - World var32 = class176.World_worlds[var17]; - boolean var19 = true; - String var20 = Integer.toString(var32.population); - if (var32.population == -1) { - var20 = "OFF"; - var19 = false; - } else if (var32.population > 1980) { - var20 = "FULL"; - var19 = false; - } - - class108 var21 = null; - int var22 = 0; - if (var32.isBeta()) { - var21 = var32.isMembersOnly() ? class108.field1133 : class108.field1138; - } else if (var32.isDeadman()) { - var21 = var32.isMembersOnly() ? class108.field1124 : class108.field1135; - } else if (var32.method391()) { - var22 = 16711680; - var21 = var32.isMembersOnly() ? class108.field1129 : class108.field1125; - } else if (var32.method393()) { - var21 = var32.isMembersOnly() ? class108.field1128 : class108.field1123; - } else if (var32.isPvp()) { - var21 = var32.isMembersOnly() ? class108.field1136 : class108.field1132; - } else if (var32.method394()) { - var21 = var32.isMembersOnly() ? class108.field1134 : class108.field1126; - } else if (var32.method395()) { - var21 = var32.isMembersOnly() ? class108.field1131 : class108.field1130; - } - - if (var21 == null || var21.field1139 >= class74.worldSelectBackSprites.length) { - var21 = var32.isMembersOnly() ? class108.field1127 : class108.field1137; - } - - if (MouseHandler.MouseHandler_x >= var30 && MouseHandler.MouseHandler_y >= var38 && MouseHandler.MouseHandler_x < var30 + var3 && MouseHandler.MouseHandler_y < var38 + var39 && var19) { - Login.hoveredWorldIndex = var17; - class74.worldSelectBackSprites[var21.field1139].drawTransOverlayAt(var30, var38, 128, 16777215); - var15 = true; - } else { - class74.worldSelectBackSprites[var21.field1139].drawAt(var30, var38); - } - - if (SoundCache.worldSelectFlagSprites != null) { - SoundCache.worldSelectFlagSprites[(var32.isMembersOnly() ? 8 : 0) + var32.location].drawAt(var30 + 29, var38); - } - - var0.drawCentered(Integer.toString(var32.id), var30 + 15, var39 / 2 + var38 + 5, var22, -1); - var1.drawCentered(var20, var30 + 60, var39 / 2 + var38 + 5, 268435455, -1); - var38 = var38 + var39 + var25; - ++var31; - if (var31 >= var26) { - var38 = var29 + 23; - var30 = var30 + var3 + var48; - var31 = 0; - ++var40; - } - } - - if (var15) { - var17 = var1.stringWidth(class176.World_worlds[Login.hoveredWorldIndex].activity) + 6; - int var41 = var1.ascent + 8; - int var42 = MouseHandler.MouseHandler_y + 25; - if (var41 + var42 > 480) { - var42 = MouseHandler.MouseHandler_y - 25 - var41; - } - - Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var17 / 2, var42, var17, var41, 16777120); - Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var17 / 2, var42, var17, var41, 0); - var1.drawCentered(class176.World_worlds[Login.hoveredWorldIndex].activity, MouseHandler.MouseHandler_x, var42 + var1.ascent + 4, 0, -1); - } - } - - } else { - Login.leftTitleSprite.drawAt(Login.xPadding, 0); - Bounds.rightTitleSprite.drawAt(Login.xPadding + 382, 0); - SoundSystem.logoSprite.drawAt(Login.xPadding + 382 - SoundSystem.logoSprite.subWidth / 2, 18); - if (Client.gameState == 0 || Client.gameState == 5) { - var3 = 20; - var0.drawCentered("RuneScape is loading - please wait...", Login.loginBoxX + 180, 245 - var3, 16777215, -1); - var4 = 253 - var3; - Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 152, var4, 304, 34, 9179409); - Rasterizer2D.Rasterizer2D_drawRectangle(Login.loginBoxX + 180 - 151, var4 + 1, 302, 32, 0); - Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150, var4 + 2, Login.Login_loadingPercent * 3, 30, 9179409); - Rasterizer2D.Rasterizer2D_fillRectangle(Login.loginBoxX + 180 - 150 + Login.Login_loadingPercent * 3, var4 + 2, 300 - Login.Login_loadingPercent * 3, 30, 0); - var0.drawCentered(Login.Login_loadingText, Login.loginBoxX + 180, 276 - var3, 16777215, -1); - } - - String var5; - String var6; - String var7; - String var8; - short var33; - short var35; - if (Client.gameState == 20) { - Login.titleboxSprite.drawAt(Login.loginBoxX + 180 - Login.titleboxSprite.subWidth / 2, 271 - Login.titleboxSprite.subHeight / 2); - var33 = 201; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var34 += 7; - if (Login.loginIndex != 4 && Login.loginIndex != 10) { - var0.draw("Login: ", Login.loginBoxX + 180 - 110, var34, 16777215, 0); - var35 = 200; - - for (var5 = class238.method1310(); var0.stringWidth(var5) > var35; var5 = var5.substring(0, var5.length() - 1)) { - } - - var0.draw(AbstractFont.escapeBrackets(var5), Login.loginBoxX + 180 - 70, var34, 16777215, 0); - var34 += 15; - var7 = Login.Login_password; - var6 = class270.method1538('*', var7.length()); - - for (var8 = var6; var0.stringWidth(var8) > var35; var8 = var8.substring(1)) { - } - - var0.draw("Password: " + var8, Login.loginBoxX + 180 - 108, var34, 16777215, 0); - var34 += 15; - } - } - - if (Client.gameState == 10 || Client.gameState == 11 || Client.gameState == 50) { - Login.titleboxSprite.drawAt(Login.loginBoxX, 171); - short var23; - if (Login.loginIndex == 0) { - var33 = 251; - var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 30; - var4 = Login.loginBoxX + 180 - 80; - var23 = 291; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawLines("New User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); - var4 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawLines("Existing User", var4 - 73, var23 - 20, 144, 40, 16777215, 0, 1, 1, 0); - } else if (Login.loginIndex == 1) { - var0.drawCentered(Login.Login_response0, Login.loginBoxX + 180, 201, 16776960, 0); - var33 = 236; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16777215, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var4 = Login.loginBoxX + 180 - 80; - var23 = 321; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Continue", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Cancel", var4, var23 + 5, 16777215, 0); - } else { - IndexedSprite var10; - if (Login.loginIndex == 2) { - var33 = 201; - var0.drawCentered(Login.Login_response1, class452.loginBoxCenter, var33, 16776960, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, class452.loginBoxCenter, var34, 16776960, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, class452.loginBoxCenter, var34, 16776960, 0); - var34 += 15; - var34 += 7; - var0.draw("Login: ", class452.loginBoxCenter - 110, var34, 16777215, 0); - var35 = 200; - - for (var5 = class238.method1310(); var0.stringWidth(var5) > var35; var5 = var5.substring(1)) { - } - - var0.draw(AbstractFont.escapeBrackets(var5) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? MoveSpeed.colorStartTag(16776960) + "|" : ""), class452.loginBoxCenter - 70, var34, 16777215, 0); - var34 += 15; - var7 = Login.Login_password; - var6 = class270.method1538('*', var7.length()); - - for (var8 = var6; var0.stringWidth(var8) > var35; var8 = var8.substring(1)) { - } - - var0.draw("Password: " + var8 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? MoveSpeed.colorStartTag(16776960) + "|" : ""), class452.loginBoxCenter - 108, var34, 16777215, 0); - var34 += 15; - var33 = 277; - var9 = class452.loginBoxCenter + -117; - boolean var11 = Client.Login_isUsernameRemembered; - boolean var12 = Login.field745; - var10 = var11 ? (var12 ? VerticalAlignment.field1631 : UserComparator6.options_buttons_2Sprite) : (var12 ? Skills.field3145 : Login.options_buttons_0Sprite); - var10.drawAt(var9, var33); - var9 = var9 + var10.subWidth + 5; - var1.draw("Remember username", var9, var33 + 13, 16776960, 0); - var9 = class452.loginBoxCenter + 24; - var15 = class449.clientPreferences.getIsUsernameHidden(); - boolean var16 = Login.field744; - IndexedSprite var14 = var15 ? (var16 ? VerticalAlignment.field1631 : UserComparator6.options_buttons_2Sprite) : (var16 ? Skills.field3145 : Login.options_buttons_0Sprite); - var14.drawAt(var9, var33); - var9 = var9 + var14.subWidth + 5; - var1.draw("Hide username", var9, var33 + 13, 16776960, 0); - var34 = var33 + 15; - var17 = class452.loginBoxCenter - 80; - short var18 = 321; - class219.titlebuttonSprite.drawAt(var17 - 73, var18 - 20); - var0.drawCentered("Login", var17, var18 + 5, 16777215, 0); - var17 = class452.loginBoxCenter + 80; - class219.titlebuttonSprite.drawAt(var17 - 73, var18 - 20); - var0.drawCentered("Cancel", var17, var18 + 5, 16777215, 0); - var33 = 357; - switch(Login.field751) { - case 2: - class151.field1365 = "Having trouble logging in?"; - break; - default: - class151.field1365 = "Can't login? Click here."; - } - - class102.field1090 = new Bounds(class452.loginBoxCenter, var33, var1.stringWidth(class151.field1365), 11); - class90.field887 = new Bounds(class452.loginBoxCenter, var33, var1.stringWidth("Still having trouble logging in?"), 11); - var1.drawCentered(class151.field1365, class452.loginBoxCenter, var33, 16777215, 0); - } else if (Login.loginIndex == 3) { - var33 = 201; - var0.drawCentered("Incorrect username or password.", Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 20; - var1.drawCentered("If you have upgraded to a Jagex Account, you", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 20; - var1.drawCentered("need to log in using the Jagex Launcher instead.", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180; - var23 = 276; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var2.drawCentered("Try again", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180; - var23 = 326; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var2.drawCentered("Forgotten password?", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 4) { - var0.drawCentered("Authenticator", Login.loginBoxX + 180, 201, 16776960, 0); - var33 = 236; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16777215, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var5 = "PIN: "; - var7 = class369.otp; - var6 = class270.method1538('*', var7.length()); - var0.draw(var5 + var6 + (Client.cycle % 40 < 20 ? MoveSpeed.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var34, 16777215, 0); - var34 -= 8; - var0.draw("Trust this computer", Login.loginBoxX + 180 - 9, var34, 16776960, 0); - var34 += 15; - var0.draw("for 30 days: ", Login.loginBoxX + 180 - 9, var34, 16776960, 0); - var25 = Login.loginBoxX + 180 - 9 + var0.stringWidth("for 30 days: ") + 15; - var9 = var34 - var0.ascent; - if (Login.field743) { - var10 = UserComparator6.options_buttons_2Sprite; - } else { - var10 = Login.options_buttons_0Sprite; - } - - var10.drawAt(var25, var9); - var34 += 15; - var36 = Login.loginBoxX + 180 - 80; - short var37 = 321; - class219.titlebuttonSprite.drawAt(var36 - 73, var37 - 20); - var0.drawCentered("Continue", var36, var37 + 5, 16777215, 0); - var36 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var36 - 73, var37 - 20); - var0.drawCentered("Cancel", var36, var37 + 5, 16777215, 0); - var1.drawCentered("Can't login? Click here.", Login.loginBoxX + 180, var37 + 36, 16777215, 0); - } else if (Login.loginIndex == 5) { - var0.drawCentered("Forgotten your password?", Login.loginBoxX + 180, 201, 16776960, 0); - var33 = 221; - var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var2.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var2.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var34 += 14; - var0.draw("Username/email: ", Login.loginBoxX + 180 - 145, var34, 16777215, 0); - var35 = 174; - - for (var5 = class238.method1310(); var0.stringWidth(var5) > var35; var5 = var5.substring(1)) { - } - - var0.draw(AbstractFont.escapeBrackets(var5) + (Client.cycle % 40 < 20 ? MoveSpeed.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var34, 16777215, 0); - var34 += 15; - var26 = Login.loginBoxX + 180 - 80; - short var27 = 321; - class219.titlebuttonSprite.drawAt(var26 - 73, var27 - 20); - var0.drawCentered("Recover", var26, var27 + 5, 16777215, 0); - var26 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var26 - 73, var27 - 20); - var0.drawCentered("Back", var26, var27 + 5, 16777215, 0); - var27 = 356; - var1.drawCentered("Still having trouble logging in?", class452.loginBoxCenter, var27, 268435455, 0); - } else if (Login.loginIndex == 6) { - var33 = 201; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180; - var23 = 321; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 7) { - if (ModeWhere.field3613 && !Client.onMobile) { - var33 = 201; - var0.drawCentered(Login.Login_response1, class452.loginBoxCenter, var33, 16776960, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, class452.loginBoxCenter, var34, 16776960, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, class452.loginBoxCenter, var34, 16776960, 0); - var4 = class452.loginBoxCenter - 150; - var34 += 10; - - for (var43 = 0; var43 < 8; ++var43) { - class219.titlebuttonSprite.method2654(var4, var34, 30, 40); - boolean var45 = var43 == Login.field752 & Client.cycle % 40 < 20; - var0.draw((Login.field768[var43] == null ? "" : Login.field768[var43]) + (var45 ? MoveSpeed.colorStartTag(16776960) + "|" : ""), var4 + 10, var34 + 27, 16777215, 0); - if (var43 != 1 && var43 != 3) { - var4 += 35; - } else { - var4 += 50; - var0.draw(AbstractFont.escapeBrackets("/"), var4 - 13, var34 + 27, 16777215, 0); - } - } - - var43 = class452.loginBoxCenter - 80; - short var46 = 321; - class219.titlebuttonSprite.drawAt(var43 - 73, var46 - 20); - var0.drawCentered("Submit", var43, var46 + 5, 16777215, 0); - var43 = class452.loginBoxCenter + 80; - class219.titlebuttonSprite.drawAt(var43 - 73, var46 - 20); - var0.drawCentered("Cancel", var43, var46 + 5, 16777215, 0); - } else { - var33 = 216; - var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180 - 80; - var23 = 321; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Set Date of Birth", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); - } - } else if (Login.loginIndex == 8) { - var33 = 216; - var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var2.drawCentered("For more information, please take a look at", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var2.drawCentered("our privacy policy.", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180 - 80; - var23 = 321; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Privacy Policy", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 9) { - var33 = 221; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 25; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 25; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16776960, 0); - var4 = Login.loginBoxX + 180; - var23 = 311; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Try again", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 10) { - var34 = Login.loginBoxX + 180; - var35 = 209; - var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var35, 16776960, 0); - var4 = var35 + 20; - Login.field777.drawAt(var34 - 109, var4); - if (Login.field764.isEmpty()) { - ItemContainer.field853.drawAt(var34 - 48, var4 + 18); - } else { - ItemContainer.field853.drawAt(var34 - 48, var4 + 5); - var0.drawCentered(Login.field764, var34, var4 + 68 - 15, 16776960, 0); - } - } else if (Login.loginIndex == 12) { - var34 = class452.loginBoxCenter; - var35 = 216; - var2.drawCentered("Before using this app, please read and accept our", var34, var35, 16777215, 0); - var4 = var35 + 17; - var2.drawCentered("terms of use, privacy policy, and end user licence", var34, var4, 16777215, 0); - var4 += 17; - var2.drawCentered("agreement (EULA).", var34, var4, 16777215, 0); - var4 += 17; - var2.drawCentered("By accepting, you agree to these documents.", var34, var4, 16777215, 0); - var34 = class452.loginBoxCenter - 80; - var35 = 311; - class219.titlebuttonSprite.drawAt(var34 - 73, var35 - 20); - var0.drawCentered("Accept", var34, var35 + 5, 16777215, 0); - var34 = class452.loginBoxCenter + 80; - class219.titlebuttonSprite.drawAt(var34 - 73, var35 - 20); - var0.drawCentered("Decline", var34, var35 + 5, 16777215, 0); - } else if (Login.loginIndex == 13) { - var33 = 231; - var2.drawCentered("You must accept our terms of use, privacy policy,", Login.loginBoxX + 180, var33, 16777215, 0); - var34 = var33 + 20; - var2.drawCentered("and end user licence agreement to continue.", Login.loginBoxX + 180, var34, 16777215, 0); - var4 = Login.loginBoxX + 180; - var33 = 311; - class219.titlebuttonSprite.drawAt(var4 - 73, var33 - 20); - var0.drawCentered("Back", var4, var33 + 5, 16777215, 0); - } else if (Login.loginIndex == 14) { - var33 = 201; - String var24 = ""; - var5 = ""; - var6 = ""; - switch(Login.field750) { - case 0: - var24 = "Your account has been involved"; - var5 = "in serious rule breaking."; - var6 = ""; - break; - case 1: - var24 = "Your account has been locked due to"; - var5 = "suspicious activity."; - var6 = "Please recover your account."; - break; - case 2: - var24 = "The unpaid balance on your account needs"; - var5 = "to be resolved before you can play."; - var6 = Strings.field3315; - break; - default: - WorldMapAreaData.Login_promptCredentials(false); - } - - var0.drawCentered(var24, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 20; - var0.drawCentered(var5, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 20; - var0.drawCentered(var6, Login.loginBoxX + 180, var34, 16776960, 0); - var48 = Login.loginBoxX + 180; - short var44 = 276; - class219.titlebuttonSprite.drawAt(var48 - 73, var44 - 20); - if (Login.field750 == 1) { - var0.drawCentered("Recover Account", var48, var44 + 5, 16777215, 0); - } else { - var0.drawCentered("View Appeal Options", var48, var44 + 5, 16777215, 0); - } - - var48 = Login.loginBoxX + 180; - var44 = 326; - class219.titlebuttonSprite.drawAt(var48 - 73, var44 - 20); - var0.drawCentered("Back", var48, var44 + 5, 16777215, 0); - } else if (Login.loginIndex == 24) { - var33 = 221; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16777215, 0); - var34 = var33 + 15; - var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16777215, 0); - var34 += 15; - var4 = Login.loginBoxX + 180; - var23 = 301; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Ok", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 32) { - var33 = 216; - var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 15; - var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180 - 80; - var23 = 321; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Set Date of Birth", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180 + 80; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var0.drawCentered("Back", var4, var23 + 5, 16777215, 0); - } else if (Login.loginIndex == 33) { - var33 = 201; - var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var33, 16776960, 0); - var34 = var33 + 20; - var1.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 20; - var1.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var34, 16776960, 0); - var34 += 15; - var4 = Login.loginBoxX + 180; - var23 = 276; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var2.drawCentered("Download Launcher", var4, var23 + 5, 16777215, 0); - var4 = Login.loginBoxX + 180; - var23 = 326; - class219.titlebuttonSprite.drawAt(var4 - 73, var23 - 20); - var2.drawCentered("Back", var4, var23 + 5, 16777215, 0); - } - } - } - - if (Client.gameState >= 10) { - int[] var28 = new int[4]; - Rasterizer2D.Rasterizer2D_getClipArray(var28); - Rasterizer2D.Rasterizer2D_setClip(Login.xPadding, 0, Login.xPadding + 765, class177.canvasHeight); - class139.field1323.draw(Login.xPadding - 22, Client.cycle); - class139.field1323.draw(Login.xPadding + 22 + 765 - 128, Client.cycle); - Rasterizer2D.Rasterizer2D_setClipArray(var28); - } - - class13.title_muteSprite[class449.clientPreferences.getTitleMusicDisabled() ? 1 : 0].drawAt(Login.xPadding + 765 - 40, 463); - if (Client.gameState > 5 && Language.Language_EN == ClanChannelMember.clientLanguage) { - if (VarcInt.field1534 != null) { - var34 = Login.xPadding + 5; - var35 = 463; - byte var49 = 100; - byte var47 = 35; - VarcInt.field1534.drawAt(var34, var35); - var0.drawCentered("World" + " " + Client.worldId, var49 / 2 + var34, var47 / 2 + var35 - 2, 16777215, 0); - if (WorldMapLabelSize.World_request != null) { - var1.drawCentered("Loading...", var49 / 2 + var34, var47 / 2 + var35 + 12, 16777215, 0); - } else { - var1.drawCentered("Click to switch", var49 / 2 + var34, var47 / 2 + var35 + 12, 16777215, 0); - } - } else { - VarcInt.field1534 = class172.SpriteBuffer_getIndexedSpriteByName(PcmPlayer.archive8, "sl_button", ""); - } - } - - } - } - - @ObfuscatedName("hp") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "163402086" - ) - static void method615() { - Client.packetWriter.clearBuffer(); - Client.packetWriter.packetBuffer.offset = 0; - Client.packetWriter.serverPacket = null; - Client.packetWriter.field1159 = null; - Client.packetWriter.field1157 = null; - Client.packetWriter.field1158 = null; - Client.packetWriter.serverPacketLength = 0; - Client.packetWriter.field1154 = 0; - Client.rebootTimer = 0; - Frames.method1297(); - Client.minimapState = 0; - Client.destinationX = 0; - - int var0; - for (var0 = 0; var0 < 2048; ++var0) { - Client.players[var0] = null; - } - - VarbitComposition.localPlayer = null; - - for (var0 = 0; var0 < Client.npcs.length; ++var0) { - NPC var1 = Client.npcs[var0]; - if (var1 != null) { - var1.targetIndex = -1; - var1.false0 = false; - } - } - - LoginPacket.method1614(); - MusicSong.updateGameState(30); - - for (var0 = 0; var0 < 100; ++var0) { - Client.field407[var0] = true; + var1.method467(this.val$cc); + var1.setArgs(this.val$cc.method1874().field2933); + FileSystem.getScriptEvents().addFirst(var1); } - Message.method341(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class106.java b/osrs/src/main/java/class106.java index c94e6b7d0..e7b1f0a0c 100644 --- a/osrs/src/main/java/class106.java +++ b/osrs/src/main/java/class106.java @@ -2,70 +2,473 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ey") -final class class106 implements class323 { - @ObfuscatedName("ae") - @Export("javaVersion") - public static String javaVersion; - @ObfuscatedName("fw") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field1107; +@ObfuscatedName("ex") +final class class106 implements class334 { + @ObfuscatedName("au") + static int field1113; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lmi;" + descriptor = "Lnn;" ) @Export("val$cc") @ObfuscatedName("val$cc") final Widget val$cc; @ObfuscatedSignature( - descriptor = "(Lmi;)V" + descriptor = "(Lnn;)V" ) class106(Widget var1) { this.val$cc = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(B)V", - garbageValue = "17" + garbageValue = "5" ) @Export("vmethod5708") public void vmethod5708() { - if (this.val$cc != null && this.val$cc.method1847().field2900 != null) { + if (this.val$cc != null && this.val$cc.method1874().field2932 != null) { ScriptEvent var1 = new ScriptEvent(); - var1.method479(this.val$cc); - var1.setArgs(this.val$cc.method1847().field2900); - class30.getScriptEvents().addFirst(var1); + var1.method467(this.val$cc); + var1.setArgs(this.val$cc.method1874().field2932); + FileSystem.getScriptEvents().addFirst(var1); } } - @ObfuscatedName("ah") + @ObfuscatedName("cx") @ObfuscatedSignature( - descriptor = "(IIIB)I", - garbageValue = "-47" + descriptor = "(II)V", + garbageValue = "-1624666505" ) - static final int method617(int var0, int var1, int var2) { - if (var2 > 179) { - var1 /= 2; - } + @Export("runWidgetOnLoadListener") + static void runWidgetOnLoadListener(int var0) { + if (var0 != -1) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + Widget[] var1 = HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0]; - if (var2 > 192) { - var1 /= 2; - } + for (int var2 = 0; var2 < var1.length; ++var2) { + Widget var3 = var1[var2]; + if (var3.onLoad != null) { + ScriptEvent var4 = new ScriptEvent(); + var4.widget = var3; + var4.args = var3.onLoad; + class323.runScript(var4, 5000000, 0); + } + } - if (var2 > 217) { - var1 /= 2; + } } + } - if (var2 > 243) { - var1 /= 2; - } + @ObfuscatedName("kj") + @ObfuscatedSignature( + descriptor = "(Lly;B)V", + garbageValue = "1" + ) + @Export("processZoneOperation") + static final void processZoneOperation(ZoneOperation var0) { + PacketBuffer var1 = Client.packetWriter.packetBuffer; + int var2; + int var3; + int var4; + int var5; + int var6; + int var7; + int var8; + int var9; + int var10; + if (ZoneOperation.AREA_SOUND == var0) { + var2 = var1.readUnsignedShortLE(); + var3 = var1.readUnsignedByteSub(); + var4 = (var3 >> 4 & 7) + class18.field55; + var5 = (var3 & 7) + class6.field6; + var6 = var1.readUnsignedByteSub(); + var7 = var1.readUnsignedByteSub(); + var8 = var7 >> 2; + var9 = var7 & 3; + var10 = Client.field652[var8]; + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + TileItem.updatePendingSpawn(ItemLayer.Client_plane, var4, var5, var10, var2, var8, var9, var6, 0, -1); + } + + } else { + TileItem var31; + if (ZoneOperation.LOC_DEL == var0) { + var2 = var1.readUnsignedByte(); + var3 = (var2 >> 4 & 7) + class18.field55; + var4 = (var2 & 7) + class6.field6; + var5 = var1.readUnsignedByteAdd(); + var6 = var1.readUnsignedShortAddLE(); + var1.readUnsignedShortAdd(); + var1.readUnsignedByteNeg(); + var7 = var1.readInt(); + var1.readUnsignedByteSub(); + var1.readUnsignedShortAdd(); + if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { + var31 = new TileItem(); + var31.id = var6; + var31.quantity = var7; + var31.method609(var5); + if (Client.groundItems[ItemLayer.Client_plane][var3][var4] == null) { + Client.groundItems[ItemLayer.Client_plane][var3][var4] = new NodeDeque(); + } + + Client.groundItems[ItemLayer.Client_plane][var3][var4].addFirst(var31); + ClanSettings.updateItemPile(var3, var4); + } + + } else { + if (ZoneOperation.field2616 == var0) { + var2 = var1.readUnsignedByte(); + var3 = var2 >> 4 & 15; + var4 = var2 & 7; + var5 = var1.readUnsignedByteSub(); + var6 = var1.readUnsignedShortAdd(); + var7 = var1.readUnsignedByteSub(); + var8 = (var7 >> 4 & 7) + class18.field55; + var9 = (var7 & 7) + class6.field6; + if (var8 >= 0 && var9 >= 0 && var8 < 104 && var9 < 104) { + var10 = var3 + 1; + if (class229.localPlayer.pathX[0] >= var8 - var10 && class229.localPlayer.pathX[0] <= var10 + var8 && class229.localPlayer.pathY[0] >= var9 - var10 && class229.localPlayer.pathY[0] <= var9 + var10 && WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume() != 0 && var4 > 0 && Client.soundEffectCount < 50) { + Client.soundEffectIds[Client.soundEffectCount] = var6; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var4; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = var5; + Client.soundEffects[Client.soundEffectCount] = null; + Client.soundLocations[Client.soundEffectCount] = var3 + (var9 << 8) + (var8 << 16); + ++Client.soundEffectCount; + } + } + } + + if (ZoneOperation.MAPPROJ_ANIM == var0) { + var2 = var1.readUnsignedShortLE(); + var3 = var1.readIntME(); + var4 = var1.readUnsignedByteSub(); + var5 = (var4 >> 4 & 7) + class18.field55; + var6 = (var4 & 7) + class6.field6; + var7 = var1.readInt(); + if (var5 >= 0 && var6 >= 0 && var5 < 104 && var6 < 104) { + NodeDeque var47 = Client.groundItems[ItemLayer.Client_plane][var5][var6]; + if (var47 != null) { + for (TileItem var32 = (TileItem)var47.last(); var32 != null; var32 = (TileItem)var47.previous()) { + if ((var2 & 32767) == var32.id && var3 == var32.quantity) { + var32.quantity = var7; + break; + } + } + + ClanSettings.updateItemPile(var5, var6); + } + } + + } else { + int var11; + int var12; + int var13; + int var14; + int var15; + Projectile var16; + byte var38; + if (ZoneOperation.OBJ_COUNT == var0) { + var2 = var1.readUnsignedByteNeg(); + var38 = var1.readByteAdd(); + var4 = var1.readUnsignedShortAdd(); + var5 = var1.readUnsignedByteSub(); + var6 = var1.readUnsignedByteSub() * 4; + var7 = var1.readUnsignedByte(); + var8 = (var7 >> 4 & 7) + class18.field55; + var9 = (var7 & 7) + class6.field6; + var10 = var1.readUnsignedShortLE(); + var11 = var1.notRUBA(); + var12 = var1.method2608(); + byte var44 = var1.readByteNeg(); + var14 = var1.readUnsignedByteSub() * 4; + var15 = var1.readUnsignedShortLE(); + var13 = var44 + var8; + var3 = var38 + var9; + if (var8 >= 0 && var9 >= 0 && var8 < 104 && var9 < 104 && var13 >= 0 && var3 >= 0 && var13 < 104 && var3 < 104 && var10 != 65535) { + var8 = var8 * 128 + 64; + var9 = var9 * 128 + 64; + var13 = var13 * 128 + 64; + var3 = var3 * 128 + 64; + var16 = new Projectile(var10, ItemLayer.Client_plane, var8, var9, WorldMapDecorationType.getTileHeight(var8, var9, ItemLayer.Client_plane) - var14, var15 + Client.cycle, var4 + Client.cycle, var2, var5, var11, var12, var6); + var16.setDestination(var13, var3, WorldMapDecorationType.getTileHeight(var13, var3, ItemLayer.Client_plane) - var6, var15 + Client.cycle); + Client.projectiles.addFirst(var16); + } + + } else { + NodeDeque var33; + if (ZoneOperation.LOC_ANIM == var0) { + var2 = var1.readUnsignedByteAdd(); + var3 = (var2 >> 4 & 7) + class18.field55; + var4 = (var2 & 7) + class6.field6; + var5 = var1.readUnsignedShortLE(); + var6 = var1.readUnsignedByteAdd(); + if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { + var33 = Client.groundItems[ItemLayer.Client_plane][var3][var4]; + if (var33 != null) { + for (var31 = (TileItem)var33.last(); var31 != null; var31 = (TileItem)var33.previous()) { + if ((var5 & 32767) == var31.id) { + var31.method609(var6); + break; + } + } + } + } + + } else { + if (ZoneOperation.LOC_ADD_CHANGE == var0) { + byte var37 = var1.readByteAdd(); + var38 = var1.readByteAdd(); + byte var39 = var1.readByteNeg(); + var5 = var1.readUnsignedShortAddLE(); + byte var40 = var1.readByte(); + var7 = var1.readUnsignedByteNeg(); + var8 = (var7 >> 4 & 7) + class18.field55; + var9 = (var7 & 7) + class6.field6; + var10 = var1.readUnsignedShortAdd(); + var11 = var1.readUnsignedShortAddLE(); + var12 = var1.readUnsignedByteAdd(); + var13 = var12 >> 2; + var14 = var12 & 3; + var15 = Client.field652[var13]; + int var34 = var1.readUnsignedShortAddLE(); + Player var17; + if (var34 == Client.localPlayerIndex) { + var17 = class229.localPlayer; + } else { + var17 = Client.players[var34]; + } + + if (var17 != null) { + ObjectComposition var18 = WorldMapSection2.getObjectDefinition(var10); + int var19; + int var20; + if (var14 != 1 && var14 != 3) { + var19 = var18.sizeX; + var20 = var18.sizeY; + } else { + var19 = var18.sizeY; + var20 = var18.sizeX; + } - int var3 = (var1 / 32 << 7) + (var0 / 4 << 10) + var2 / 2; - return var3; + int var21 = var8 + (var19 >> 1); + int var22 = var8 + (var19 + 1 >> 1); + int var23 = var9 + (var20 >> 1); + int var24 = var9 + (var20 + 1 >> 1); + int[][] var25 = Tiles.Tiles_heights[ItemLayer.Client_plane]; + int var26 = var25[var22][var24] + var25[var21][var24] + var25[var21][var23] + var25[var22][var23] >> 2; + int var27 = (var8 << 7) + (var19 << 6); + int var28 = (var9 << 7) + (var20 << 6); + Model var29 = var18.getModel(var13, var14, var25, var27, var26, var28); + if (var29 != null) { + TileItem.updatePendingSpawn(ItemLayer.Client_plane, var8, var9, var15, -1, 0, 0, 31, var11 + 1, var5 + 1); + var17.animationCycleStart = var11 + Client.cycle; + var17.animationCycleEnd = var5 + Client.cycle; + var17.attachedModel = var29; + var17.field919 = var19 * 64 + var8 * 128; + var17.field918 = var20 * 64 + var9 * 128; + var17.baseTileHeight = var26; + byte var30; + if (var39 > var37) { + var30 = var39; + var39 = var37; + var37 = var30; + } + + if (var40 > var38) { + var30 = var40; + var40 = var38; + var38 = var30; + } + + var17.minX = var39 + var8; + var17.maxX = var37 + var8; + var17.minY = var9 + var40; + var17.maxY = var9 + var38; + } + } + } + + if (ZoneOperation.PREFETCH_GAMEOBJECTS == var0) { + var2 = var1.readUnsignedByteAdd(); + var3 = (var2 >> 4 & 7) + class18.field55; + var4 = (var2 & 7) + class6.field6; + var5 = var1.readUnsignedByteAdd(); + var6 = var5 >> 2; + var7 = var5 & 3; + var8 = Client.field652[var6]; + if (var3 >= 0 && var4 >= 0 && var3 < 104 && var4 < 104) { + TileItem.updatePendingSpawn(ItemLayer.Client_plane, var3, var4, var8, -1, var6, var7, 31, 0, -1); + } + + } else if (ZoneOperation.field2620 == var0) { + var2 = var1.readUnsignedShortLE(); + var3 = var1.readUnsignedByte(); + var4 = (var3 >> 4 & 7) + class18.field55; + var5 = (var3 & 7) + class6.field6; + var6 = var1.readUnsignedShort(); + var7 = var1.readUnsignedByteAdd() * 4; + byte var41 = var1.readByteSub(); + var9 = var1.readUnsignedByteNeg(); + var10 = var1.readUnsignedByteNeg() * 4; + var11 = var1.readUnsignedShortAddLE(); + var12 = var1.notRUBA(); + var13 = var1.readUnsignedShortLE(); + var14 = var1.method2609(); + byte var45 = var1.readByteAdd(); + var15 = var45 + var4; + var8 = var41 + var5; + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104 && var15 >= 0 && var8 >= 0 && var15 < 104 && var8 < 104 && var11 != 65535) { + var4 = var4 * 128 + 64; + var5 = var5 * 128 + 64; + var15 = var15 * 128 + 64; + var8 = var8 * 128 + 64; + var16 = new Projectile(var11, ItemLayer.Client_plane, var4, var5, WorldMapDecorationType.getTileHeight(var4, var5, ItemLayer.Client_plane) - var7, var13 + Client.cycle, var2 + Client.cycle, var9, var6, var12, var14, var10); + var16.setDestination(var15, var8, WorldMapDecorationType.getTileHeight(var15, var8, ItemLayer.Client_plane) - var10, var13 + Client.cycle); + Client.projectiles.addFirst(var16); + } + + } else if (ZoneOperation.OBJ_DEL == var0) { + var2 = var1.notRUBA(); + var3 = var1.readUnsignedShortAddLE(); + var4 = var1.readUnsignedByte(); + var5 = var1.readUnsignedByteAdd(); + var6 = (var5 >> 4 & 7) + class18.field55; + var7 = (var5 & 7) + class6.field6; + var8 = var1.readUnsignedByte() * 4; + var9 = var1.readUnsignedShort(); + var10 = var1.readUnsignedShortLE(); + byte var42 = var1.readByteAdd(); + byte var43 = var1.readByteNeg(); + var13 = var1.readUnsignedByteSub(); + var14 = var1.readUnsignedByteAdd() * 4; + var11 = var42 + var6; + var12 = var43 + var7; + if (var6 >= 0 && var7 >= 0 && var6 < 104 && var7 < 104 && var11 >= 0 && var12 >= 0 && var11 < 104 && var12 < 104 && var10 != 65535) { + var6 = var6 * 128 + 64; + var7 = var7 * 128 + 64; + var11 = var11 * 128 + 64; + var12 = var12 * 128 + 64; + Projectile var35 = new Projectile(var10, ItemLayer.Client_plane, var6, var7, WorldMapDecorationType.getTileHeight(var6, var7, ItemLayer.Client_plane) - var8, var9 + Client.cycle, var3 + Client.cycle, var13, var4, var2, var14); + var35.setDestination(var11, var12, WorldMapDecorationType.getTileHeight(var11, var12, ItemLayer.Client_plane) - var14, var9 + Client.cycle); + Client.projectiles.addFirst(var35); + } + + } else if (ZoneOperation.field2618 == var0) { + var2 = var1.readUnsignedByte(); + var3 = var2 >> 2; + var4 = var2 & 3; + var5 = Client.field652[var3]; + var6 = var1.readUnsignedShortAdd(); + var7 = var1.readUnsignedByteSub(); + var8 = (var7 >> 4 & 7) + class18.field55; + var9 = (var7 & 7) + class6.field6; + if (var8 >= 0 && var9 >= 0 && var8 < 103 && var9 < 103) { + if (var5 == 0) { + BoundaryObject var36 = class36.scene.method1479(ItemLayer.Client_plane, var8, var9); + if (var36 != null) { + var11 = class232.Entity_unpackID(var36.tag); + if (var3 == 2) { + var36.renderable1 = new DynamicObject(var11, 2, var4 + 4, ItemLayer.Client_plane, var8, var9, var6, false, var36.renderable1); + var36.renderable2 = new DynamicObject(var11, 2, var4 + 1 & 3, ItemLayer.Client_plane, var8, var9, var6, false, var36.renderable2); + } else { + var36.renderable1 = new DynamicObject(var11, var3, var4, ItemLayer.Client_plane, var8, var9, var6, false, var36.renderable1); + } + + return; + } + } + + if (var5 == 1) { + WallDecoration var48 = class36.scene.method1480(ItemLayer.Client_plane, var8, var9); + if (var48 != null) { + var11 = class232.Entity_unpackID(var48.tag); + if (var3 != 4 && var3 != 5) { + if (var3 == 6) { + var48.renderable1 = new DynamicObject(var11, 4, var4 + 4, ItemLayer.Client_plane, var8, var9, var6, false, var48.renderable1); + } else if (var3 == 7) { + var48.renderable1 = new DynamicObject(var11, 4, (var4 + 2 & 3) + 4, ItemLayer.Client_plane, var8, var9, var6, false, var48.renderable1); + } else if (var3 == 8) { + var48.renderable1 = new DynamicObject(var11, 4, var4 + 4, ItemLayer.Client_plane, var8, var9, var6, false, var48.renderable1); + var48.renderable2 = new DynamicObject(var11, 4, (var4 + 2 & 3) + 4, ItemLayer.Client_plane, var8, var9, var6, false, var48.renderable2); + } + } else { + var48.renderable1 = new DynamicObject(var11, 4, var4, ItemLayer.Client_plane, var8, var9, var6, false, var48.renderable1); + } + + return; + } + } + + if (var5 == 2) { + GameObject var49 = class36.scene.getGameObject(ItemLayer.Client_plane, var8, var9); + if (var3 == 11) { + var3 = 10; + } + + if (var49 != null) { + var49.renderable = new DynamicObject(class232.Entity_unpackID(var49.tag), var3, var4, ItemLayer.Client_plane, var8, var9, var6, false, var49.renderable); + return; + } + } + + if (var5 == 3) { + FloorDecoration var50 = class36.scene.getFloorDecoration(ItemLayer.Client_plane, var8, var9); + if (var50 != null) { + var50.renderable = new DynamicObject(class232.Entity_unpackID(var50.tag), 22, var4, ItemLayer.Client_plane, var8, var9, var6, false, var50.renderable); + return; + } + } + + TaskHandler.method1086(ItemLayer.Client_plane, var8, var9, var5, var6); + } + + } else if (ZoneOperation.field2622 == var0) { + var2 = var1.readUnsignedShort(); + var3 = var1.readUnsignedByteSub(); + var4 = var1.readUnsignedShortAdd(); + var5 = var1.readUnsignedByteSub(); + var6 = (var5 >> 4 & 7) + class18.field55; + var7 = (var5 & 7) + class6.field6; + if (var6 >= 0 && var7 >= 0 && var6 < 104 && var7 < 104) { + var6 = var6 * 128 + 64; + var7 = var7 * 128 + 64; + GraphicsObject var46 = new GraphicsObject(var4, ItemLayer.Client_plane, var6, var7, WorldMapDecorationType.getTileHeight(var6, var7, ItemLayer.Client_plane) - var3, var2, Client.cycle); + Client.graphicsObjects.addFirst(var46); + } + + } else if (ZoneOperation.field2625 == var0) { + var2 = var1.readUnsignedIntIME(); + var3 = var1.readUnsignedByte(); + var4 = (var3 >> 4 & 7) + class18.field55; + var5 = (var3 & 7) + class6.field6; + var6 = var1.readUnsignedShortLE(); + if (var4 >= 0 && var5 >= 0 && var4 < 104 && var5 < 104) { + var33 = Client.groundItems[ItemLayer.Client_plane][var4][var5]; + if (var33 != null) { + for (var31 = (TileItem)var33.last(); var31 != null; var31 = (TileItem)var33.previous()) { + if ((var6 & 32767) == var31.id && var2 == var31.quantity) { + var31.remove(); + break; + } + } + + if (var33.last() == null) { + Client.groundItems[ItemLayer.Client_plane][var4][var5] = null; + } + + ClanSettings.updateItemPile(var4, var5); + } + } + + } + } + } + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class108.java b/osrs/src/main/java/class108.java index c2cad4172..1313b021b 100644 --- a/osrs/src/main/java/class108.java +++ b/osrs/src/main/java/class108.java @@ -1,215 +1,118 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStreamWriter; -import java.net.URL; -import java.net.URLConnection; - -@ObfuscatedName("eq") +@ObfuscatedName("ek") public class class108 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1137; - @ObfuscatedName("ae") + static final class108 field1139; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1127; + static final class108 field1132; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lek;" + ) + static final class108 field1137; @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1132; - @ObfuscatedName("at") + static final class108 field1135; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1136; - @ObfuscatedName("ac") + static final class108 field1130; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1125; - @ObfuscatedName("ai") + static final class108 field1140; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) static final class108 field1129; - @ObfuscatedName("az") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1138; - @ObfuscatedName("ap") + static final class108 field1131; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1133; - @ObfuscatedName("aa") + static final class108 field1134; + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1123; - @ObfuscatedName("af") + static final class108 field1144; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1128; - @ObfuscatedName("ad") + static final class108 field1136; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1126; - @ObfuscatedName("aq") + static final class108 field1141; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1134; - @ObfuscatedName("al") + static final class108 field1142; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1130; - @ObfuscatedName("an") + static final class108 field1138; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1131; - @ObfuscatedName("ar") + static final class108 field1143; + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "Lek;" ) - static final class108 field1135; - @ObfuscatedName("ab") + static final class108 field1133; + @ObfuscatedName("dh") @ObfuscatedSignature( - descriptor = "Leq;" + descriptor = "[Luz;" ) - static final class108 field1124; - @ObfuscatedName("ag") - int field1139; + @Export("worldSelectBackSprites") + static SpritePixels[] worldSelectBackSprites; + @ObfuscatedName("aj") + int field1145; static { - field1137 = new class108(0); - field1127 = new class108(1); - field1132 = new class108(2); - field1136 = new class108(3); - field1125 = new class108(4); - field1129 = new class108(5); - field1138 = new class108(6); - field1133 = new class108(7); - field1123 = new class108(8); - field1128 = new class108(9); - field1126 = new class108(10); - field1134 = new class108(11); - field1130 = new class108(12); - field1131 = new class108(13); - field1135 = new class108(14); - field1124 = new class108(15); + field1139 = new class108(0); + field1132 = new class108(1); + field1137 = new class108(2); + field1135 = new class108(3); + field1130 = new class108(4); + field1140 = new class108(5); + field1129 = new class108(6); + field1131 = new class108(7); + field1134 = new class108(8); + field1144 = new class108(9); + field1136 = new class108(10); + field1141 = new class108(11); + field1142 = new class108(12); + field1138 = new class108(13); + field1143 = new class108(14); + field1133 = new class108(15); } class108(int var1) { - this.field1139 = var1; - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "69" - ) - static void method620() { - Login.Login_username = Login.Login_username.trim(); - if (Login.Login_username.length() == 0) { - class318.setLoginResponseString("Please enter your username.", "If you created your account after November", "2010, this will be the creation email address."); - } else { - long var1; - try { - URL var3 = new URL(HorizontalAlignment.method978("services", false) + "m=accountappeal/login.ws"); - URLConnection var4 = var3.openConnection(); - var4.setRequestProperty("connection", "close"); - var4.setDoInput(true); - var4.setDoOutput(true); - var4.setConnectTimeout(5000); - OutputStreamWriter var5 = new OutputStreamWriter(var4.getOutputStream()); - var5.write("data1=req"); - var5.flush(); - InputStream var6 = var4.getInputStream(); - Buffer var7 = new Buffer(new byte[1000]); - - while (true) { - int var8 = var6.read(var7.array, var7.offset, 1000 - var7.offset); - if (var8 == -1) { - var7.offset = 0; - long var10 = var7.readLong(); - var1 = var10; - break; - } - - var7.offset += var8; - if (var7.offset >= 1000) { - var1 = 0L; - break; - } - } - } catch (Exception var14) { - var1 = 0L; - } - - int var0; - if (var1 == 0L) { - var0 = 5; - } else { - var0 = class318.method1703(var1, Login.Login_username); - } - - switch(var0) { - case 2: - class318.setLoginResponseString(Strings.field3423, Strings.field3422, Strings.field3414); - PcmPlayer.method212(6); - break; - case 3: - class318.setLoginResponseString("", "Error connecting to server.", ""); - break; - case 4: - class318.setLoginResponseString("The part of the website you are trying", "to connect to is offline at the moment.", "Please try again later."); - break; - case 5: - class318.setLoginResponseString("Sorry, there was an error trying to", "log you in to this part of the website.", "Please try again later."); - break; - case 6: - class318.setLoginResponseString("", "Error connecting to server.", ""); - break; - case 7: - class318.setLoginResponseString("You must enter a valid login to proceed. For accounts", "created after 24th November 2010, please use your", "email address. Otherwise please use your username."); - } - - } - } - - @ObfuscatedName("ki") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-154699452" - ) - static final void method621(boolean var0) { - class301.method1622(); - ++Client.packetWriter.pendingWrites; - if (Client.packetWriter.pendingWrites >= 50 || var0) { - Client.packetWriter.pendingWrites = 0; - if (!Client.hadNetworkError && Client.packetWriter.getSocket() != null) { - PacketBufferNode var1 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.NO_TIMEOUT, Client.packetWriter.isaacCipher); - Client.packetWriter.addNode(var1); - - try { - Client.packetWriter.flush(); - } catch (IOException var3) { - Client.hadNetworkError = true; - } - } - - } + this.field1145 = var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class11.java b/osrs/src/main/java/class11.java index 518e5e762..adeadf101 100644 --- a/osrs/src/main/java/class11.java +++ b/osrs/src/main/java/class11.java @@ -12,18 +12,29 @@ import java.security.cert.CertificateFactory; import java.util.LinkedList; -@ObfuscatedName("aq") +@ObfuscatedName("av") class class11 implements TlsAuthentication { + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + static IndexedSprite field38; + @ObfuscatedName("kv") + @ObfuscatedSignature( + descriptor = "Luz;" + ) + @Export("redHintArrowSprite") + static SpritePixels redHintArrowSprite; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lan;" + descriptor = "Las;" ) @Export("this$2") @ObfuscatedName("this$2") final class13 this$2; @ObfuscatedSignature( - descriptor = "(Lan;)V" + descriptor = "(Las;)V" ) class11(class13 var1) { this.this$2 = var1; @@ -42,7 +53,7 @@ public void notifyServerCertificate(Certificate var1) throws IOException { var3.add(var2.generateCertificate(new ByteArrayInputStream(var6.getEncoded()))); } - this.this$2.this$1.field39 = (java.security.cert.Certificate[])((java.security.cert.Certificate[])var3.toArray(new java.security.cert.Certificate[0])); + this.this$2.this$1.field43 = (java.security.cert.Certificate[])((java.security.cert.Certificate[])var3.toArray(new java.security.cert.Certificate[0])); } catch (CertificateException var7) { throw new IOException(var7); } @@ -54,89 +65,13 @@ public TlsCredentials getClientCredentials(CertificateRequest var1) throws IOExc return null; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "([BIII)Ljava/lang/String;", - garbageValue = "591994113" - ) - public static String method32(byte[] var0, int var1, int var2) { - StringBuilder var3 = new StringBuilder(); - - for (int var4 = var1; var4 < var2 + var1; var4 += 3) { - int var5 = var0[var4] & 255; - var3.append(class385.field3649[var5 >>> 2]); - if (var4 < var2 - 1) { - int var6 = var0[var4 + 1] & 255; - var3.append(class385.field3649[(var5 & 3) << 4 | var6 >>> 4]); - if (var4 < var2 - 2) { - int var7 = var0[var4 + 2] & 255; - var3.append(class385.field3649[(var6 & 15) << 2 | var7 >>> 6]).append(class385.field3649[var7 & 63]); - } else { - var3.append(class385.field3649[(var6 & 15) << 2]).append("="); - } - } else { - var3.append(class385.field3649[(var5 & 3) << 4]).append("=="); - } - } - - return var3.toString(); - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "18671" - ) - static final void method33() { - if (!ViewportMouse.ViewportMouse_false0) { - int var0 = Scene.Scene_cameraPitchSine; - int var1 = Scene.Scene_cameraPitchCosine; - int var2 = Scene.Scene_cameraYawSine; - int var3 = Scene.Scene_cameraYawCosine; - byte var4 = 50; - short var5 = 3500; - int var6 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.getClipMidX()) * var4 / Rasterizer3D.get3dZoom(); - int var7 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.getClipMidY()) * var4 / Rasterizer3D.get3dZoom(); - int var8 = (ViewportMouse.ViewportMouse_x - Rasterizer3D.getClipMidX()) * var5 / Rasterizer3D.get3dZoom(); - int var9 = (ViewportMouse.ViewportMouse_y - Rasterizer3D.getClipMidY()) * var5 / Rasterizer3D.get3dZoom(); - int var10 = class33.method129(var7, var4, var1, var0); - int var11 = var4 * var1 - var0 * var7 >> 16; - var7 = var10; - var10 = class33.method129(var9, var5, var1, var0); - int var12 = var5 * var1 - var0 * var9 >> 16; - var9 = var10; - var10 = Tiles.method456(var6, var11, var3, var2); - int var13 = ClanChannelMember.method775(var6, var11, var3, var2); - var6 = var10; - var10 = Tiles.method456(var8, var12, var3, var2); - int var14 = ClanChannelMember.method775(var8, var12, var3, var2); - ViewportMouse.field2249 = (var10 + var6) / 2; - ViewportMouse.field2252 = (var7 + var9) / 2; - ViewportMouse.field2254 = (var13 + var14) / 2; - class261.field2396 = (var10 - var6) / 2; - ViewportMouse.field2248 = (var9 - var7) / 2; - Frames.field2121 = (var14 - var13) / 2; - ViewportMouse.field2250 = Math.abs(class261.field2396); - class7.field9 = Math.abs(ViewportMouse.field2248); - class30.field82 = Math.abs(Frames.field2121); - } - } - - @ObfuscatedName("ni") + @ObfuscatedName("nv") @ObfuscatedSignature( - descriptor = "(Lmi;IIII)V", - garbageValue = "1018529135" + descriptor = "(Lnn;B)Z", + garbageValue = "18" ) - @Export("drawCompass") - static final void drawCompass(Widget var0, int var1, int var2, int var3) { - SpriteMask var4 = var0.getSpriteMask(false); - if (var4 != null) { - if (Client.minimapState < 3) { - Client.compass.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, 25, 25, Client.camAngleY, 256, var4.xStarts, var4.xWidths); - } else { - Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); - } - - } + @Export("isComponentHidden") + static boolean isComponentHidden(Widget var0) { + return var0.isHidden; } } \ No newline at end of file diff --git a/osrs/src/main/java/class113.java b/osrs/src/main/java/class113.java index 0a6bd2434..956cd7c5a 100644 --- a/osrs/src/main/java/class113.java +++ b/osrs/src/main/java/class113.java @@ -7,25 +7,22 @@ import java.net.HttpURLConnection; import java.net.URLConnection; -@ObfuscatedName("ez") +@ObfuscatedName("es") public class class113 extends UrlRequester { - @ObfuscatedName("am") - static int field1172; - @ObfuscatedName("as") - @Export("canvasWidth") - public static int canvasWidth; - @ObfuscatedName("ac") - final boolean field1173; + @ObfuscatedName("ch") + static int field1178; + @ObfuscatedName("ab") + final boolean field1179; public class113(boolean var1, int var2) { super(var2); - this.field1173 = var1; + this.field1179 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Let;B)V", - garbageValue = "-114" + descriptor = "(Lea;I)V", + garbageValue = "422697771" ) @Export("vmethod2700") void vmethod2700(UrlRequest var1) throws IOException { @@ -37,24 +34,24 @@ void vmethod2700(UrlRequest var1) throws IOException { label125: { try { var9 = true; - String var3 = var1.field1177.getProtocol(); + String var3 = var1.field1184.getProtocol(); if (var3.equals("http")) { - var2 = this.method660(var1); + var2 = this.method655(var1); } else { if (!var3.equals("https")) { - var1.field1179 = UrlRequest.field1176; + var1.field1186 = UrlRequest.field1181; var9 = false; break label124; } - var2 = this.method661(var1); + var2 = this.method656(var1); } - this.method649(var2, var1); + this.method647(var2, var1); var9 = false; break label125; } catch (IOException var10) { - var1.field1179 = UrlRequest.field1176; + var1.field1186 = UrlRequest.field1181; var9 = false; } finally { if (var9) { @@ -89,80 +86,62 @@ void vmethod2700(UrlRequest var1) throws IOException { } - @ObfuscatedName("ah") + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(Let;B)Ljava/net/URLConnection;", - garbageValue = "46" + descriptor = "(Lea;I)Ljava/net/URLConnection;", + garbageValue = "-1165040742" ) - URLConnection method660(UrlRequest var1) throws IOException { - URLConnection var2 = var1.field1177.openConnection(); - this.method648(var2); + URLConnection method655(UrlRequest var1) throws IOException { + URLConnection var2 = var1.field1184.openConnection(); + this.method646(var2); return var2; } - @ObfuscatedName("as") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(Let;B)Ljava/net/URLConnection;", - garbageValue = "-94" + descriptor = "(Lea;I)Ljava/net/URLConnection;", + garbageValue = "1061431523" ) - URLConnection method661(UrlRequest var1) throws IOException { - HttpsURLConnection var2 = (HttpsURLConnection)var1.field1177.openConnection(); - if (!this.field1173) { - var2.setSSLSocketFactory(class15.method45()); + URLConnection method656(UrlRequest var1) throws IOException { + HttpsURLConnection var2 = (HttpsURLConnection)var1.field1184.openConnection(); + if (!this.field1179) { + if (class15.field49 == null) { + class15.field49 = new class15(); + } + + class15 var4 = class15.field49; + var2.setSSLSocketFactory(var4); } - this.method648(var2); + this.method646(var2); return var2; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Lhe;", - garbageValue = "-242071193" - ) - static HorizontalAlignment[] method658() { - return new HorizontalAlignment[]{HorizontalAlignment.field1574, HorizontalAlignment.field1573, HorizontalAlignment.HorizontalAlignment_centered}; - } - - @ObfuscatedName("mn") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1761588634" + descriptor = "(Llq;Luy;I)Lld;", + garbageValue = "-133059507" ) - @Export("process") - static void process() { - for (InterfaceParent var0 = (InterfaceParent)Client.interfaceParents.first(); var0 != null; var0 = (InterfaceParent)Client.interfaceParents.next()) { - int var1 = var0.group; - if (ModeWhere.loadInterface(var1)) { - boolean var2 = true; - Widget[] var3 = PacketBufferNode.Widget_interfaceComponents[var1]; - - int var4; - for (var4 = 0; var4 < var3.length; ++var4) { - if (var3[var4] != null) { - var2 = var3[var4].isIf3; - break; - } - } - - if (!var2) { - var4 = (int)var0.key; - Widget var5 = class92.getWidget(var4); - if (var5 != null) { - class218.invalidateWidget(var5); - } - } - } + @Export("getPacketBufferNode") + public static PacketBufferNode getPacketBufferNode(ClientPacket var0, IsaacCipher var1) { + PacketBufferNode var2 = FaceNormal.method1516(); + var2.clientPacket = var0; + var2.clientPacketLength = var0.length; + if (var2.clientPacketLength == -1) { + var2.packetBuffer = new PacketBuffer(260); + } else if (var2.clientPacketLength == -2) { + var2.packetBuffer = new PacketBuffer(10000); + } else if (var2.clientPacketLength <= 18) { + var2.packetBuffer = new PacketBuffer(20); + } else if (var2.clientPacketLength <= 98) { + var2.packetBuffer = new PacketBuffer(100); + } else { + var2.packetBuffer = new PacketBuffer(260); } - } - - @ObfuscatedName("nw") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1946244652" - ) - static final void method663() { - Client.field518 = Client.cycleCntr; + var2.packetBuffer.setIsaacCipher(var1); + var2.packetBuffer.writeByteIsaac(var2.clientPacket.id); + var2.index = 0; + return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/class12.java b/osrs/src/main/java/class12.java index cedb398ff..4b39dacea 100644 --- a/osrs/src/main/java/class12.java +++ b/osrs/src/main/java/class12.java @@ -11,24 +11,27 @@ import java.io.OutputStream; import java.security.cert.Certificate; -@ObfuscatedName("al") +@ObfuscatedName("ax") class class12 extends SSLSocket { - @ObfuscatedName("ga") - static int field37; - @ObfuscatedName("no") - @Export("menuX") - static int menuX; - @ObfuscatedName("ro") + @ObfuscatedName("vq") @ObfuscatedSignature( - descriptor = "Lgk;" + descriptor = "Lcj;" ) - @Export("mouseWheel") - static class174 mouseWheel; - @ObfuscatedName("au") - Certificate[] field39; + @Export("friendSystem") + public static FriendSystem friendSystem; + @ObfuscatedName("kf") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("mapMarkerSprites") + static SpritePixels[] mapMarkerSprites; + @ObfuscatedName("ln") + static int field41; + @ObfuscatedName("at") + Certificate[] field43; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lak;" ) @Export("this$0") @ObfuscatedName("this$0") @@ -43,7 +46,7 @@ class class12 extends SSLSocket { final String val$host; @ObfuscatedSignature( - descriptor = "(Lab;Lorg/bouncycastle/crypto/tls/TlsClientProtocol;Ljava/lang/String;)V" + descriptor = "(Lak;Lorg/bouncycastle/crypto/tls/TlsClientProtocol;Ljava/lang/String;)V" ) class12(class15 var1, TlsClientProtocol var2, String var3) { this.this$0 = var1; @@ -133,142 +136,301 @@ public void startHandshake() throws IOException { this.val$tlsClientProtocol.connect(new class13(this)); } - @ObfuscatedName("aa") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([Loj;II)Loj;", + garbageValue = "-948387119" + ) + @Export("findEnumerated") + public static class383 findEnumerated(class383[] var0, int var1) { + class383[] var2 = var0; + + for (int var3 = 0; var3 < var2.length; ++var3) { + class383 var4 = var2[var3]; + if (var1 == var4.rsOrdinal()) { + return var4; + } + } + + return null; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Llu;", + garbageValue = "915557708" + ) + public static ServerPacket[] method46() { + return new ServerPacket[]{ServerPacket.field2651, ServerPacket.field2639, ServerPacket.TRADING_POST_UPDATE, ServerPacket.SEND_PING, ServerPacket.field2633, ServerPacket.IF_SETNPCHEAD, ServerPacket.IF_SETTEXT, ServerPacket.SET_PLAYER_OP, ServerPacket.OBJ_COUNT, ServerPacket.UPDATE_UID192, ServerPacket.OBJ_DEL_LEGACY, ServerPacket.RESET_ANIMS, ServerPacket.field2655, ServerPacket.IF_OPENTOP, ServerPacket.field2656, ServerPacket.field2642, ServerPacket.field2641, ServerPacket.PREFETCH_GAMEOBJECTS, ServerPacket.field2648, ServerPacket.MIDI_SONG_WITH_SECONDARY, ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL, ServerPacket.MAPPROJ_ANIM, ServerPacket.NPC_ANIM_SPECIFIC, ServerPacket.VARP_LARGE, ServerPacket.TRADING_POST_RESULTS, ServerPacket.field2637, ServerPacket.NPC_SPOTANIM_SPECIFIC, ServerPacket.REFLECTIONCHECK_FRIENDLIST, ServerPacket.UPDATE_STAT, ServerPacket.UPDATE_IGNORELIST, ServerPacket.IF_SETPLAYERMODEL_BASECOLOUR, ServerPacket.TOGGLE_OCULUS_ORB, ServerPacket.VARCLAN_ENABLE, ServerPacket.MIDI_SONG_STOP, ServerPacket.field2670, ServerPacket.field2673, ServerPacket.IF_SETSCROLLPOS, ServerPacket.LOC_ANIM_SPECIFIC, ServerPacket.MESSAGE_PRIVATE_ECHO, ServerPacket.PLAYER_INFO, ServerPacket.EMPTY_PACKET, ServerPacket.UPDATE_RUNWEIGHT, ServerPacket.field2682, ServerPacket.VARP_SMALL, ServerPacket.PLAYER_SPOTANIM_SPECIFIC, ServerPacket.IF_SETPLAYERMODEL_OBJ, ServerPacket.IF_CLOSESUB, ServerPacket.HINT_ARROW, ServerPacket.NEW_PACK_215, ServerPacket.UPDATE_ZONE_PARTIAL_ENCLOSED, ServerPacket.OPEN_URL, ServerPacket.field2674, ServerPacket.MESSAGE_PRIVATE, ServerPacket.IF_SETOBJECT, ServerPacket.CAM_MOVETO_EASED_CIRCULAR, ServerPacket.MINIMAP_TOGGLE, ServerPacket.NEW_PACKET_CAM_RESET_V2, ServerPacket.MESSAGE_CLANCHANNEL, ServerPacket.CHAT_FILTER_SETTINGS_PRIVATECHAT, ServerPacket.IF_OPENSUB, ServerPacket.IF_SETPOSITION, ServerPacket.CAM_RESET, ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL_V2, ServerPacket.CLANSETTINGS_FULL, ServerPacket.field2698, ServerPacket.SET_MAP_FLAG, ServerPacket.field2697, ServerPacket.UPDATE_REBOOT_TIMER, ServerPacket.TRIGGER_ONDIALOGABORT, ServerPacket.field2684, ServerPacket.REBUILD_REGION, ServerPacket.RUN_CLIENTSCRIPT, ServerPacket.NPC_HEADICON_SPECIFIC, ServerPacket.UPDATE_ZONE_PARTIAL_FOLLOWS, ServerPacket.RESET_CLIENT_VARCACHE, ServerPacket.field2707, ServerPacket.field2694, ServerPacket.CAM_MOVETO, ServerPacket.field2728, ServerPacket.VARCLAN, ServerPacket.field2719, ServerPacket.MESSAGE_GAME, ServerPacket.LOC_ADD_CHANGE, ServerPacket.SYNTH_SOUND, ServerPacket.MESSAGE_FRIENDCHANNEL, ServerPacket.SYNC_CLIENT_VARCACHE, ServerPacket.CAM_SHAKE, ServerPacket.UPDATE_RUNENERGY, ServerPacket.IF_SETANIM, ServerPacket.UPDATE_INV_STOP_TRANSMIT, ServerPacket.MIDI_JINGLE, ServerPacket.MESSAGE_CLANCHANNEL_SYSTEM, ServerPacket.field2709, ServerPacket.ENTER_FREECAM, ServerPacket.field2724, ServerPacket.UPDATE_SITESETTINGS, ServerPacket.UPDATE_ZONE_FULL_FOLLOWS, ServerPacket.LOGOUT_FULL, ServerPacket.PLAYER_ANIM_SPECIFIC, ServerPacket.field2713, ServerPacket.field2722, ServerPacket.NPC_INFO_SMALL, ServerPacket.field2718, ServerPacket.VARCLAN_DISABLE, ServerPacket.LOGIN_SCREEN_PACKET, ServerPacket.field2754, ServerPacket.UPDATE_FRIENDLIST, ServerPacket.field2753, ServerPacket.field2743, ServerPacket.field2745, ServerPacket.SPOTANIM_SPECIFIC, ServerPacket.IF_SETPLAYERHEAD, ServerPacket.UPDATE_INV_CLEAR, ServerPacket.UPDATE_INV_FULL, ServerPacket.IF_SETPLAYERMODEL_SELF, ServerPacket.REBUILD_REGION_NORMAL, ServerPacket.CAM_LOOKAT_EASED_ANGLE_RELATIVE, ServerPacket.NPC_INFO_LARGE, ServerPacket.MIDI_SONG, ServerPacket.OBJ_ADD, ServerPacket.field2757, ServerPacket.MIDI_SWAP, ServerPacket.field2740, ServerPacket.field2756, ServerPacket.field2736, ServerPacket.IF_SETHIDE, ServerPacket.field2748}; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "1" + ) + public static boolean method43(int var0) { + return (var0 >> 20 & 1) != 0; + } + + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1596734724" + descriptor = "(II)I", + garbageValue = "-1907529408" ) - static int method35(int var0, Script var1, boolean var2) { - boolean var3 = true; - Widget var4; - if (var0 >= 2000) { - var0 -= 1000; - var4 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - var3 = false; + @Export("Messages_getLastChatID") + static int Messages_getLastChatID(int var0) { + Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); + if (var1 == null) { + return -1; } else { - var4 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; + return var1.previousDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.previousDual).count; } + } - int var11; - if (var0 == 1300) { - var11 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] - 1; - if (var11 >= 0 && var11 <= 9) { - var4.setAction(var11, Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]); - return 1; - } else { - --class137.Interpreter_stringStackSize; - return 1; + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;IB)V", + garbageValue = "12" + ) + @Export("setFriendsRank") + static final void setFriendsRank(String var0, int var1) { + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.f2, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var0) + 1); + var2.packetBuffer.writeStringCp1252NullTerminated(var0); + var2.packetBuffer.writeByteNeg(var1); + Client.packetWriter.addNode(var2); + } + + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "1724856740" + ) + static int method48(int var0, Script var1, boolean var2) { + if (var0 == 5000) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.publicChatMode; + return 1; + } else if (var0 == 5001) { + DbTableType.Interpreter_intStackSize -= 3; + Client.publicChatMode = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + ObjTypeCustomisation.privateChatMode = WorldMapArea.method1204(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + if (ObjTypeCustomisation.privateChatMode == null) { + ObjTypeCustomisation.privateChatMode = PrivateChatMode.field4303; } + + Client.tradeChatMode = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + PacketBufferNode var11 = class113.getPacketBufferNode(ClientPacket.CHAT_SETFILTER, Client.packetWriter.isaacCipher); + var11.packetBuffer.writeByte(Client.publicChatMode); + var11.packetBuffer.writeByte(ObjTypeCustomisation.privateChatMode.id); + var11.packetBuffer.writeByte(Client.tradeChatMode); + Client.packetWriter.addNode(var11); + return 1; } else { - int var6; - if (var0 == 1301) { - SoundCache.Interpreter_intStackSize -= 2; - var11 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var4.parent = SoundCache.getWidgetChild(var11, var6); - return 1; - } else if (var0 == 1302) { - var4.isScrollBar = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 1303) { - var4.dragZoneSize = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - return 1; - } else if (var0 == 1304) { - var4.dragThreshold = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - return 1; - } else if (var0 == 1305) { - var4.dataText = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - return 1; - } else if (var0 == 1306) { - var4.spellActionName = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - return 1; - } else if (var0 == 1307) { - var4.actions = null; - return 1; - } else if (var0 == 1308) { - var4.prioritizeMenuEntry = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 1309) { - --SoundCache.Interpreter_intStackSize; + String var3; + int var4; + int var5; + PacketBufferNode var6; + if (var0 == 5002) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var6 = class113.getPacketBufferNode(ClientPacket.CHAT_SEND_ABUSE_REPORT, Client.packetWriter.isaacCipher); + var6.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var3) + 2); + var6.packetBuffer.writeStringCp1252NullTerminated(var3); + var6.packetBuffer.writeByte(var4 - 1); + var6.packetBuffer.writeByte(var5); + Client.packetWriter.addNode(var6); return 1; } else { int var7; - byte[] var9; - if (var0 != 1350) { - byte var5; - if (var0 == 1351) { - SoundCache.Interpreter_intStackSize -= 2; - var5 = 10; - var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]}; - byte[] var10 = new byte[]{(byte)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]}; - WorldMap.Widget_setKey(var4, var5, var9, var10); - return 1; - } else if (var0 == 1352) { - SoundCache.Interpreter_intStackSize -= 3; - var11 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] - 1; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - if (var11 >= 0 && var11 <= 9) { - class126.Widget_setKeyRate(var4, var11, var6, var7); - return 1; + Message var8; + if (var0 == 5003) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var8 = class14.Messages_getByChannelAndID(var7, var4); + if (var8 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.count; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.cycle; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.sender != null ? var8.sender : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.prefix != null ? var8.prefix : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.text != null ? var8.text : ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.isFromFriend() ? 1 : (var8.isFromIgnored() ? 2 : 0); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else { + Message var9; + if (var0 == 5004) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var9 = class31.Messages_getMessage(var7); + if (var9 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.type; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.cycle; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.sender != null ? var9.sender : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.prefix != null ? var9.prefix : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.text != null ? var9.text : ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.isFromFriend() ? 1 : (var9.isFromIgnored() ? 2 : 0); } else { - throw new RuntimeException(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; } - } else if (var0 == 1353) { - var5 = 10; - var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class126.Widget_setKeyRate(var4, var5, var6, var7); + return 1; - } else if (var0 == 1354) { - --SoundCache.Interpreter_intStackSize; - var11 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] - 1; - if (var11 >= 0 && var11 <= 9) { - ArchiveLoader.Widget_setKeyIgnoreHeld(var4, var11); - return 1; + } else if (var0 == 5005) { + if (ObjTypeCustomisation.privateChatMode == null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; } else { - throw new RuntimeException(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ObjTypeCustomisation.privateChatMode.id; } - } else if (var0 == 1355) { - var5 = 10; - ArchiveLoader.Widget_setKeyIgnoreHeld(var4, var5); + return 1; } else { - return 2; - } - } else { - byte[] var8 = null; - var9 = null; - if (var3) { - SoundCache.Interpreter_intStackSize -= 10; - - for (var7 = 0; var7 < 10 && Interpreter.Interpreter_intStack[var7 + SoundCache.Interpreter_intStackSize] >= 0; var7 += 2) { - } + PacketBufferNode var12; + if (var0 == 5008) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = class544.method2711(var4, var3, class85.clientLanguage, -1); + Client.packetWriter.addNode(var12); + return 1; + } else if (var0 == 5009) { + class127.Interpreter_stringStackSize -= 2; + var3 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + String var13 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize + 1]; + var12 = class113.getPacketBufferNode(ClientPacket.CHAT_SENDPRIVATE, Client.packetWriter.isaacCipher); + var12.packetBuffer.writeShort(0); + int var10 = var12.packetBuffer.offset; + var12.packetBuffer.writeStringCp1252NullTerminated(var3); + PcmPlayer.method210(var12.packetBuffer, var13); + var12.packetBuffer.writeLengthShort(var12.packetBuffer.offset - var10); + Client.packetWriter.addNode(var12); + return 1; + } else if (var0 == 5010) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var6 = class544.method2711(var4, var3, class85.clientLanguage, var5); + Client.packetWriter.addNode(var6); + return 1; + } else if (var0 != 5015) { + if (var0 == 5016) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.tradeChatMode; + return 1; + } else if (var0 == 5017) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Message.Messages_getHistorySize(var7); + return 1; + } else if (var0 == 5018) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Messages_getLastChatID(var7); + return 1; + } else if (var0 == 5019) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class92.method498(var7); + return 1; + } else if (var0 == 5020) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class9.doCheat(var3); + return 1; + } else if (var0 == 5021) { + Client.field600 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize].toLowerCase().trim(); + return 1; + } else if (var0 == 5022) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = Client.field600; + return 1; + } else if (var0 == 5023) { + var3 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + System.out.println(var3); + return 1; + } else if (var0 == 5030) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var8 = class14.Messages_getByChannelAndID(var7, var4); + if (var8 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.count; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.cycle; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.sender != null ? var8.sender : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.prefix != null ? var8.prefix : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.text != null ? var8.text : ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var8.isFromFriend() ? 1 : (var8.isFromIgnored() ? 2 : 0); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } - if (var7 > 0) { - var8 = new byte[var7 / 2]; - var9 = new byte[var7 / 2]; + return 1; + } else if (var0 == 5031) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var9 = class31.Messages_getMessage(var7); + if (var9 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.type; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.cycle; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.sender != null ? var9.sender : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.prefix != null ? var9.prefix : ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var9.text != null ? var9.text : ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var9.isFromFriend() ? 1 : (var9.isFromIgnored() ? 2 : 0); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } - for (var7 -= 2; var7 >= 0; var7 -= 2) { - var8[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + SoundCache.Interpreter_intStackSize]; - var9[var7 / 2] = (byte)Interpreter.Interpreter_intStack[var7 + SoundCache.Interpreter_intStackSize + 1]; + return 1; + } else { + return 2; + } + } else { + if (class229.localPlayer != null && class229.localPlayer.username != null) { + var3 = class229.localPlayer.username.getName(); + } else { + var3 = ""; } - } - } else { - SoundCache.Interpreter_intStackSize -= 2; - var8 = new byte[]{(byte)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]}; - var9 = new byte[]{(byte)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]}; - } - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] - 1; - if (var7 >= 0 && var7 <= 9) { - WorldMap.Widget_setKey(var4, var7, var8, var9); - return 1; - } else { - throw new RuntimeException(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3; + return 1; + } } } } } } + + @ObfuscatedName("cg") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "11" + ) + static int method49(int var0, Script var1, boolean var2) { + return 2; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class124.java b/osrs/src/main/java/class124.java index 4c5217c16..399b747fc 100644 --- a/osrs/src/main/java/class124.java +++ b/osrs/src/main/java/class124.java @@ -1,5 +1,53 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eu") -public interface class124 { +@ObfuscatedName("eb") +public enum class124 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Leb;" + ) + field1208(3, 0), + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Leb;" + ) + field1205(0, 1), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Leb;" + ) + field1207(2, 2), + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Leb;" + ) + field1206(1, 3), + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Leb;" + ) + field1204(4, 4); + + @ObfuscatedName("au") + public final int field1210; + @ObfuscatedName("aa") + @Export("id") + final int id; + + class124(int var3, int var4) { + this.field1210 = var3; + this.id = var4; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.id; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class125.java b/osrs/src/main/java/class125.java index ea2d9fb38..c4e131326 100644 --- a/osrs/src/main/java/class125.java +++ b/osrs/src/main/java/class125.java @@ -1,103 +1,5 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import java.net.URL; - -@ObfuscatedName("eg") -public class class125 { - @ObfuscatedName("iy") - static long field1195; - @ObfuscatedName("jh") - static int field1193; - @ObfuscatedName("lw") - static int field1194; - @ObfuscatedName("au") - int field1202; - @ObfuscatedName("ae") - float field1198; - @ObfuscatedName("ao") - float field1200; - @ObfuscatedName("at") - float field1201; - @ObfuscatedName("ac") - float field1197; - @ObfuscatedName("ai") - float field1199; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Leg;" - ) - class125 field1196; - - class125() { - this.field1200 = Float.MAX_VALUE; - this.field1201 = Float.MAX_VALUE; - this.field1197 = Float.MAX_VALUE; - this.field1199 = Float.MAX_VALUE; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;IS)V", - garbageValue = "249" - ) - void method696(Buffer var1, int var2) { - this.field1202 = var1.readShort(); - this.field1198 = var1.method2551(); - this.field1200 = var1.method2551(); - this.field1201 = var1.method2551(); - this.field1197 = var1.method2551(); - this.field1199 = var1.method2551(); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1201510681" - ) - @Export("loadWorlds") - static boolean loadWorlds() { - try { - if (WorldMapLabelSize.World_request == null) { - WorldMapLabelSize.World_request = FriendsChat.urlRequester.request(new URL(class200.field1669)); - } else if (WorldMapLabelSize.World_request.isDone()) { - byte[] var0 = WorldMapLabelSize.World_request.getResponse(); - Buffer var1 = new Buffer(var0); - var1.readInt(); - World.World_count = var1.readUnsignedShort(); - class176.World_worlds = new World[World.World_count]; - - World var3; - for (int var2 = 0; var2 < World.World_count; var3.index = var2++) { - var3 = class176.World_worlds[var2] = new World(); - var3.id = var1.readUnsignedShort(); - var3.properties = var1.readInt(); - var3.host = var1.readStringCp1252NullTerminated(); - var3.activity = var1.readStringCp1252NullTerminated(); - var3.location = var1.readUnsignedByte(); - var3.population = var1.readShort(); - } - - GameEngine.sortWorlds(class176.World_worlds, 0, class176.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); - WorldMapLabelSize.World_request = null; - return true; - } - } catch (Exception var4) { - var4.printStackTrace(); - WorldMapLabelSize.World_request = null; - } - - return false; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(IB)[B", - garbageValue = "-47" - ) - @Export("ByteArrayPool_getArray") - public static synchronized byte[] ByteArrayPool_getArray(int var0) { - return ByteArrayPool.ByteArrayPool_getArrayBool(var0, false); - } +@ObfuscatedName("ed") +public interface class125 { } \ No newline at end of file diff --git a/osrs/src/main/java/class126.java b/osrs/src/main/java/class126.java index ed22842d0..c5f170380 100644 --- a/osrs/src/main/java/class126.java +++ b/osrs/src/main/java/class126.java @@ -1,134 +1,44 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ex") +@ObfuscatedName("eq") public class class126 { @ObfuscatedName("at") - public static final float field1204; - @ObfuscatedName("ac") - public static final float field1203; - @ObfuscatedName("ai") - static float[] field1206; - @ObfuscatedName("az") - static float[] field1207; - @ObfuscatedName("ee") - @ObfuscatedSignature( - descriptor = "Ldt;" - ) - @Export("mouseRecorder") - static MouseRecorder mouseRecorder; - @ObfuscatedName("fe") - @ObfuscatedSignature( - descriptor = "Lgz;" - ) - @Export("js5SocketTask") - static Task js5SocketTask; - - static { - field1204 = Math.ulp(1.0F); - field1203 = field1204 * 2.0F; - field1206 = new float[4]; - field1207 = new float[5]; - } - + int field1217; + @ObfuscatedName("ah") + float field1213; + @ObfuscatedName("ar") + float field1215; + @ObfuscatedName("ao") + float field1214; + @ObfuscatedName("ab") + float field1212; @ObfuscatedName("au") + float field1216; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;ZI)[B", - garbageValue = "-1457731236" + descriptor = "Leq;" ) - public static byte[] method699(Object var0, boolean var1) { - if (var0 == null) { - return null; - } else if (var0 instanceof byte[]) { - byte[] var6 = (byte[])((byte[])var0); - if (var1) { - int var4 = var6.length; - byte[] var5 = new byte[var4]; - System.arraycopy(var6, 0, var5, 0, var4); - return var5; - } else { - return var6; - } - } else if (var0 instanceof AbstractByteArrayCopier) { - AbstractByteArrayCopier var2 = (AbstractByteArrayCopier)var0; - return var2.get(); - } else { - throw new IllegalArgumentException(); - } - } + class126 field1211; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1320879691" - ) - public static void method700() { - ParamComposition.ParamDefinition_cached.clear(); + class126() { + this.field1215 = Float.MAX_VALUE; + this.field1214 = Float.MAX_VALUE; + this.field1212 = Float.MAX_VALUE; + this.field1216 = Float.MAX_VALUE; } - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(Lmi;IIIB)V", - garbageValue = "-45" - ) - @Export("Widget_setKeyRate") - static final void Widget_setKeyRate(Widget var0, int var1, int var2, int var3) { - if (var0.field3047 == null) { - throw new RuntimeException(); - } else { - var0.field3047[var1] = var2; - var0.field3046[var1] = var3; - } - } - - @ObfuscatedName("if") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIS)V", - garbageValue = "158" + descriptor = "(Luj;IB)V", + garbageValue = "116" ) - static final void method702(int var0, int var1, int var2) { - if (NPCComposition.cameraX < var0) { - NPCComposition.cameraX = (var0 - NPCComposition.cameraX) * MouseHandler.cameraMoveToAcceleration / 1000 + NPCComposition.cameraX + class344.cameraMoveToSpeed; - if (NPCComposition.cameraX > var0) { - NPCComposition.cameraX = var0; - } - } - - if (NPCComposition.cameraX > var0) { - NPCComposition.cameraX -= (NPCComposition.cameraX - var0) * MouseHandler.cameraMoveToAcceleration / 1000 + class344.cameraMoveToSpeed; - if (NPCComposition.cameraX < var0) { - NPCComposition.cameraX = var0; - } - } - - if (class133.cameraY < var1) { - class133.cameraY = (var1 - class133.cameraY) * MouseHandler.cameraMoveToAcceleration / 1000 + class133.cameraY + class344.cameraMoveToSpeed; - if (class133.cameraY > var1) { - class133.cameraY = var1; - } - } - - if (class133.cameraY > var1) { - class133.cameraY -= (class133.cameraY - var1) * MouseHandler.cameraMoveToAcceleration / 1000 + class344.cameraMoveToSpeed; - if (class133.cameraY < var1) { - class133.cameraY = var1; - } - } - - if (class139.cameraZ < var2) { - class139.cameraZ = (var2 - class139.cameraZ) * MouseHandler.cameraMoveToAcceleration / 1000 + class139.cameraZ + class344.cameraMoveToSpeed; - if (class139.cameraZ > var2) { - class139.cameraZ = var2; - } - } - - if (class139.cameraZ > var2) { - class139.cameraZ -= (class139.cameraZ - var2) * MouseHandler.cameraMoveToAcceleration / 1000 + class344.cameraMoveToSpeed; - if (class139.cameraZ < var2) { - class139.cameraZ = var2; - } - } - + void method691(Buffer var1, int var2) { + this.field1217 = var1.readShort(); + this.field1213 = var1.method2565(); + this.field1215 = var1.method2565(); + this.field1214 = var1.method2565(); + this.field1212 = var1.method2565(); + this.field1216 = var1.method2565(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class127.java b/osrs/src/main/java/class127.java index 9a84b5133..8b9993d81 100644 --- a/osrs/src/main/java/class127.java +++ b/osrs/src/main/java/class127.java @@ -1,245 +1,43 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("eo") +@ObfuscatedName("ee") public class class127 { - @ObfuscatedName("au") - public final int field1222; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Leo;" - ) - public class127 field1221; @ObfuscatedName("ao") - float[][] field1213; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "[Lrz;" - ) - final class450[] field1220; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "[Lrz;" - ) - class450[] field1218; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "[Lrz;" - ) - class450[] field1219; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lrz;" - ) - class450 field1217; - @ObfuscatedName("ap") - boolean field1210; + public static final float field1219; + @ObfuscatedName("ab") + public static final float field1218; + @ObfuscatedName("au") + static float[] field1221; @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lrz;" - ) - class450 field1215; - @ObfuscatedName("af") - boolean field1209; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lrz;" - ) - class450 field1216; - @ObfuscatedName("aq") - float[][] field1214; - @ObfuscatedName("al") - float[][] field1211; - @ObfuscatedName("an") - float[][] field1212; - - @ObfuscatedSignature( - descriptor = "(ILtm;Z)V" - ) - public class127(int var1, Buffer var2, boolean var3) { - this.field1217 = new class450(); - this.field1210 = true; - this.field1215 = new class450(); - this.field1209 = true; - this.field1216 = new class450(); - this.field1222 = var2.readShort(); - this.field1220 = new class450[var1]; - this.field1218 = new class450[this.field1220.length]; - this.field1219 = new class450[this.field1220.length]; - this.field1213 = new float[this.field1220.length][3]; - - for (int var4 = 0; var4 < this.field1220.length; ++var4) { - this.field1220[var4] = new class450(var2, var3); - this.field1213[var4][0] = var2.method2551(); - this.field1213[var4][1] = var2.method2551(); - this.field1213[var4][2] = var2.method2551(); - } + static float[] field1220; + @ObfuscatedName("ap") + @Export("Interpreter_stringStackSize") + static int Interpreter_stringStackSize; + @ObfuscatedName("us") + @Export("cameraLookAtHeight") + static int cameraLookAtHeight; + @ObfuscatedName("vz") + static int field1224; - this.method704(); + static { + field1219 = Math.ulp(1.0F); + field1218 = 2.0F * field1219; + field1221 = new float[4]; + field1220 = new float[5]; } - @ObfuscatedName("au") + @ObfuscatedName("ig") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-431712200" - ) - void method704() { - this.field1214 = new float[this.field1220.length][3]; - this.field1211 = new float[this.field1220.length][3]; - this.field1212 = new float[this.field1220.length][3]; - class450 var1; - synchronized(class450.field3873) { - if (class462.field3904 == 0) { - var1 = new class450(); - } else { - class450.field3873[--class462.field3904].method2302(); - var1 = class450.field3873[class462.field3904]; - } - } - - class450 var2 = var1; - - for (int var5 = 0; var5 < this.field1220.length; ++var5) { - class450 var4 = this.method705(var5); - var2.method2304(var4); - var2.method2312(); - this.field1214[var5] = var2.method2301(); - this.field1211[var5][0] = var4.field3875[12]; - this.field1211[var5][1] = var4.field3875[13]; - this.field1211[var5][2] = var4.field3875[14]; - this.field1212[var5] = var4.method2313(); - } - - var2.method2298(); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IB)Lrz;", - garbageValue = "1" - ) - class450 method705(int var1) { - return this.field1220[var1]; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IS)Lrz;", - garbageValue = "18304" - ) - class450 method706(int var1) { - if (this.field1218[var1] == null) { - this.field1218[var1] = new class450(this.method705(var1)); - if (this.field1221 != null) { - this.field1218[var1].method2308(this.field1221.method706(var1)); - } else { - this.field1218[var1].method2308(class450.field3874); - } - } - - return this.field1218[var1]; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(II)Lrz;", - garbageValue = "1066264654" - ) - class450 method707(int var1) { - if (this.field1219[var1] == null) { - this.field1219[var1] = new class450(this.method706(var1)); - this.field1219[var1].method2312(); - } - - return this.field1219[var1]; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Lrz;I)V", - garbageValue = "-799671526" - ) - void method708(class450 var1) { - this.field1217.method2304(var1); - this.field1210 = true; - this.field1209 = true; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(B)Lrz;", - garbageValue = "-23" - ) - class450 method709() { - return this.field1217; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)Lrz;", - garbageValue = "1930419113" - ) - class450 method710() { - if (this.field1210) { - this.field1215.method2304(this.method709()); - if (this.field1221 != null) { - this.field1215.method2308(this.field1221.method710()); - } - - this.field1210 = false; - } - - return this.field1215; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(II)Lrz;", - garbageValue = "1508889675" + garbageValue = "-2049504300" ) - public class450 method711(int var1) { - if (this.field1209) { - this.field1216.method2304(this.method707(var1)); - this.field1216.method2308(this.method710()); - this.field1209 = false; + static void method692() { + if (NewShit.worldMap != null) { + NewShit.worldMap.method2408(ItemLayer.Client_plane, (class229.localPlayer.x >> 7) + NewShit.baseX, (class229.localPlayer.y >> 7) + class101.baseY, false); + NewShit.worldMap.loadCache(); } - return this.field1216; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(II)[F", - garbageValue = "1706055895" - ) - float[] method712(int var1) { - return this.field1214[var1]; - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(IB)[F", - garbageValue = "12" - ) - float[] method713(int var1) { - return this.field1211[var1]; - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(II)[F", - garbageValue = "1605437767" - ) - float[] method714(int var1) { - return this.field1212[var1]; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "0" - ) - public static int method703(int var0) { - return var0 != 0 && var0 != 1 ? -1 : 0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class128.java b/osrs/src/main/java/class128.java index a9112c490..4bd796c35 100644 --- a/osrs/src/main/java/class128.java +++ b/osrs/src/main/java/class128.java @@ -2,425 +2,308 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ew") -public enum class128 implements class371 { - @ObfuscatedName("au") +@ObfuscatedName("ej") +public class class128 { + @ObfuscatedName("at") + public final int field1238; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "Lej;" ) - field1229(0, 0), - @ObfuscatedName("ae") + public class128 field1237; + @ObfuscatedName("ar") + float[][] field1227; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "[Lrz;" ) - field1226(1, 1), - @ObfuscatedName("ao") + final class462[] field1236; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "[Lrz;" ) - field1227(2, 2), - @ObfuscatedName("at") + class462[] field1234; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "[Lrz;" ) - field1228(3, 3), - @ObfuscatedName("ac") + class462[] field1235; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "Lrz;" ) - field1225(4, 4); - + class462 field1231; + @ObfuscatedName("ac") + boolean field1225; @ObfuscatedName("al") - @Export("Tiles_hueMultiplier") - static int[] Tiles_hueMultiplier; - @ObfuscatedName("sy") @ObfuscatedSignature( - descriptor = "Lub;" + descriptor = "Lrz;" ) - @Export("privateChatMode") - static PrivateChatMode privateChatMode; - @ObfuscatedName("ai") - final int field1230; + class462 field1232; @ObfuscatedName("az") - final int field1231; - - class128(int var3, int var4) { - this.field1230 = var3; - this.field1231 = var4; - } + boolean field1226; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lrz;" + ) + class462 field1233; + @ObfuscatedName("av") + float[][] field1229; + @ObfuscatedName("ax") + float[][] field1230; + @ObfuscatedName("as") + float[][] field1228; - @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" + descriptor = "(ILuj;Z)V" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field1231; + public class128(int var1, Buffer var2, boolean var3) { + this.field1231 = new class462(); + this.field1225 = true; + this.field1232 = new class462(); + this.field1226 = true; + this.field1233 = new class462(); + this.field1238 = var2.readShort(); + this.field1236 = new class462[var1]; + this.field1234 = new class462[this.field1236.length]; + this.field1235 = new class462[this.field1236.length]; + this.field1227 = new float[this.field1236.length][3]; + + for (int var4 = 0; var4 < this.field1236.length; ++var4) { + this.field1236[var4] = new class462(var2, var3); + this.field1227[var4][0] = var2.method2565(); + this.field1227[var4][1] = var2.method2565(); + this.field1227[var4][2] = var2.method2565(); + } + + this.method695(); } - @ObfuscatedName("ad") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIIILiv;Lis;I)V", - garbageValue = "2027076041" + descriptor = "(B)V", + garbageValue = "-36" ) - @Export("addObjects") - static final void addObjects(int var0, int var1, int var2, int var3, int var4, int var5, Scene var6, CollisionMap var7) { - if (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var1][var2] & 2) != 0 || (Tiles.Tiles_renderFlags[var0][var1][var2] & 16) == 0) { - if (var0 < Tiles.Tiles_minPlane) { - Tiles.Tiles_minPlane = var0; - } + void method695() { + this.field1229 = new float[this.field1236.length][3]; + this.field1230 = new float[this.field1236.length][3]; + this.field1228 = new float[this.field1236.length][3]; + class462 var1 = WorldMapDecoration.method1329(); + + for (int var2 = 0; var2 < this.field1236.length; ++var2) { + class462 var3 = this.method697(var2); + var1.method2320(var3); + var1.method2328(); + this.field1229[var2] = var1.method2317(); + this.field1230[var2][0] = var3.field3908[12]; + this.field1230[var2][1] = var3.field3908[13]; + this.field1230[var2][2] = var3.field3908[14]; + this.field1228[var2] = var3.method2329(); + } - ObjectComposition var8 = WorldMapElement.getObjectDefinition(var3); - int var9; - int var10; - if (var4 != 1 && var4 != 3) { - var9 = var8.sizeX; - var10 = var8.sizeY; - } else { - var9 = var8.sizeY; - var10 = var8.sizeX; - } + var1.method2314(); + } - int var11; - int var12; - if (var9 + var1 <= 104) { - var11 = (var9 >> 1) + var1; - var12 = (var9 + 1 >> 1) + var1; - } else { - var11 = var1; - var12 = var1 + 1; - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Lrz;", + garbageValue = "1567155502" + ) + class462 method697(int var1) { + return this.field1236[var1]; + } - int var13; - int var14; - if (var10 + var2 <= 104) { - var13 = (var10 >> 1) + var2; - var14 = var2 + (var10 + 1 >> 1); + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Lrz;", + garbageValue = "211716274" + ) + class462 method698(int var1) { + if (this.field1234[var1] == null) { + this.field1234[var1] = new class462(this.method697(var1)); + if (this.field1237 != null) { + this.field1234[var1].method2324(this.field1237.method698(var1)); } else { - var13 = var2; - var14 = var2 + 1; - } - - int[][] var15 = Tiles.Tiles_heights[var0]; - int var16 = var15[var11][var14] + var15[var11][var13] + var15[var12][var13] + var15[var12][var14] >> 2; - int var17 = (var1 << 7) + (var9 << 6); - int var18 = (var2 << 7) + (var10 << 6); - long var19 = FontName.calculateTag(var1, var2, 2, var8.int1 == 0, var3); - int var21 = var5 + (var4 << 6); - if (var8.int3 == 1) { - var21 += 256; + this.field1234[var1].method2324(class462.field3905); } + } - if (var8.hasSound()) { - class152.method797(var0, var1, var2, var8, var4); - } - - Object var22; - if (var5 == 22) { - if (!Client.isLowDetail || var8.int1 != 0 || var8.interactType == 1 || var8.boolean2) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(22, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 22, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } - - var6.newFloorDecoration(var0, var1, var2, var16, (Renderable)var22, var19, var21); - if (var8.interactType == 1 && var7 != null) { - var7.setBlockedByFloorDec(var1, var2); - } - - } - } else { - int var31; - if (var5 != 10 && var5 != 11) { - int[] var10000; - if (var5 >= 12) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(var5, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } - - var6.method1243(var0, var1, var2, var16, 1, 1, (Renderable)var22, 0, var19, var21); - if (var5 >= 12 && var5 <= 17 && var5 != 13 && var0 > 0) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 2340; - } - - if (var8.interactType != 0 && var7 != null) { - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } - - } else if (var5 == 0) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(0, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 0, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field844[var4], 0, var19, var21); - if (var4 == 0) { - if (var8.clipped) { - MoveSpeed.field1924[var0][var1][var2] = 50; - MoveSpeed.field1924[var0][var1][var2 + 1] = 50; - } - - if (var8.modelClipped) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 585; - } - } else if (var4 == 1) { - if (var8.clipped) { - MoveSpeed.field1924[var0][var1][var2 + 1] = 50; - MoveSpeed.field1924[var0][var1 + 1][var2 + 1] = 50; - } - - if (var8.modelClipped) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2 + 1] |= 1170; - } - } else if (var4 == 2) { - if (var8.clipped) { - MoveSpeed.field1924[var0][var1 + 1][var2] = 50; - MoveSpeed.field1924[var0][var1 + 1][var2 + 1] = 50; - } - - if (var8.modelClipped) { - var10000 = BufferedNetSocket.field3820[var0][var1 + 1]; - var10000[var2] |= 585; - } - } else if (var4 == 3) { - if (var8.clipped) { - MoveSpeed.field1924[var0][var1][var2] = 50; - MoveSpeed.field1924[var0][var1 + 1][var2] = 50; - } - - if (var8.modelClipped) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 1170; - } - } - - if (var8.interactType != 0 && var7 != null) { - var7.method1113(var1, var2, var5, var4, var8.boolean1); - } - - if (var8.int2 != 16) { - var6.method1249(var0, var1, var2, var8.int2); - } - - } else if (var5 == 1) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(1, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 1, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field840[var4], 0, var19, var21); - if (var8.clipped) { - if (var4 == 0) { - MoveSpeed.field1924[var0][var1][var2 + 1] = 50; - } else if (var4 == 1) { - MoveSpeed.field1924[var0][var1 + 1][var2 + 1] = 50; - } else if (var4 == 2) { - MoveSpeed.field1924[var0][var1 + 1][var2] = 50; - } else if (var4 == 3) { - MoveSpeed.field1924[var0][var1][var2] = 50; - } - } - - if (var8.interactType != 0 && var7 != null) { - var7.method1113(var1, var2, var5, var4, var8.boolean1); - } - - } else { - int var28; - if (var5 == 2) { - var28 = var4 + 1 & 3; - Object var23; - Object var24; - if (var8.animationId == -1 && var8.transforms == null) { - var23 = var8.getEntity(2, var4 + 4, var15, var17, var16, var18); - var24 = var8.getEntity(2, var28, var15, var17, var16, var18); - } else { - var23 = new DynamicObject(var3, 2, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - var24 = new DynamicObject(var3, 2, var28, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } - - var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var23, (Renderable)var24, Tiles.field844[var4], Tiles.field844[var28], var19, var21); - if (var8.modelClipped) { - if (var4 == 0) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 585; - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2 + 1] |= 1170; - } else if (var4 == 1) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2 + 1] |= 1170; - var10000 = BufferedNetSocket.field3820[var0][var1 + 1]; - var10000[var2] |= 585; - } else if (var4 == 2) { - var10000 = BufferedNetSocket.field3820[var0][var1 + 1]; - var10000[var2] |= 585; - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 1170; - } else if (var4 == 3) { - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 1170; - var10000 = BufferedNetSocket.field3820[var0][var1]; - var10000[var2] |= 585; - } - } - - if (var8.interactType != 0 && var7 != null) { - var7.method1113(var1, var2, var5, var4, var8.boolean1); - } - - if (var8.int2 != 16) { - var6.method1249(var0, var1, var2, var8.int2); - } - - } else if (var5 == 3) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(3, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 3, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + return this.field1234[var1]; + } - var6.newBoundaryObject(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field840[var4], 0, var19, var21); - if (var8.clipped) { - if (var4 == 0) { - MoveSpeed.field1924[var0][var1][var2 + 1] = 50; - } else if (var4 == 1) { - MoveSpeed.field1924[var0][var1 + 1][var2 + 1] = 50; - } else if (var4 == 2) { - MoveSpeed.field1924[var0][var1 + 1][var2] = 50; - } else if (var4 == 3) { - MoveSpeed.field1924[var0][var1][var2] = 50; - } - } + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IS)Lrz;", + garbageValue = "6325" + ) + class462 method700(int var1) { + if (this.field1235[var1] == null) { + this.field1235[var1] = new class462(this.method698(var1)); + this.field1235[var1].method2328(); + } - if (var8.interactType != 0 && var7 != null) { - var7.method1113(var1, var2, var5, var4, var8.boolean1); - } + return this.field1235[var1]; + } - } else if (var5 == 9) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(var5, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, var5, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Lrz;I)V", + garbageValue = "1841353885" + ) + void method701(class462 var1) { + this.field1231.method2320(var1); + this.field1225 = true; + this.field1226 = true; + } - var6.method1243(var0, var1, var2, var16, 1, 1, (Renderable)var22, 0, var19, var21); - if (var8.interactType != 0 && var7 != null) { - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(B)Lrz;", + garbageValue = "37" + ) + class462 method702() { + return this.field1231; + } - if (var8.int2 != 16) { - var6.method1249(var0, var1, var2, var8.int2); - } + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)Lrz;", + garbageValue = "155823310" + ) + class462 method703() { + if (this.field1225) { + this.field1232.method2320(this.method702()); + if (this.field1237 != null) { + this.field1232.method2324(this.field1237.method703()); + } - } else if (var5 == 4) { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(4, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + this.field1225 = false; + } - var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, Tiles.field844[var4], 0, 0, 0, var19, var21); - } else { - Object var25; - long var29; - if (var5 == 5) { - var28 = 16; - var29 = var6.getBoundaryObjectTag(var0, var1, var2); - if (var29 != 0L) { - var28 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var29)).int2; - } + return this.field1232; + } - if (var8.animationId == -1 && var8.transforms == null) { - var25 = var8.getEntity(4, var4, var15, var17, var16, var18); - } else { - var25 = new DynamicObject(var3, 4, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(IB)Lrz;", + garbageValue = "80" + ) + public class462 method704(int var1) { + if (this.field1226) { + this.field1233.method2320(this.method700(var1)); + this.field1233.method2324(this.method703()); + this.field1226 = false; + } - var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)null, Tiles.field844[var4], 0, var28 * Tiles.field842[var4], var28 * Tiles.field845[var4], var19, var21); - } else if (var5 == 6) { - var28 = 8; - var29 = var6.getBoundaryObjectTag(var0, var1, var2); - if (var29 != 0L) { - var28 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var29)).int2 / 2; - } + return this.field1233; + } - if (var8.animationId == -1 && var8.transforms == null) { - var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); - } else { - var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(II)[F", + garbageValue = "-2041613656" + ) + float[] method705(int var1) { + return this.field1229[var1]; + } - var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)null, 256, var4, var28 * Tiles.field841[var4], var28 * Tiles.field843[var4], var19, var21); - } else if (var5 == 7) { - var31 = var4 + 2 & 3; - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(4, var31 + 4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 4, var31 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(II)[F", + garbageValue = "-1019764578" + ) + float[] method706(int var1) { + return this.field1230[var1]; + } - var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var22, (Renderable)null, 256, var31, 0, 0, var19, var21); - } else if (var5 == 8) { - var28 = 8; - var29 = var6.getBoundaryObjectTag(var0, var1, var2); - if (0L != var29) { - var28 = WorldMapElement.getObjectDefinition(InvDefinition.Entity_unpackID(var29)).int2 / 2; - } + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(IB)[F", + garbageValue = "4" + ) + float[] method707(int var1) { + return this.field1228[var1]; + } - int var27 = var4 + 2 & 3; - Object var26; - if (var8.animationId == -1 && var8.transforms == null) { - var25 = var8.getEntity(4, var4 + 4, var15, var17, var16, var18); - var26 = var8.getEntity(4, var27 + 4, var15, var17, var16, var18); - } else { - var25 = new DynamicObject(var3, 4, var4 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - var26 = new DynamicObject(var3, 4, var27 + 4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", + garbageValue = "-566534946" + ) + public static String method696(CharSequence var0) { + long var3 = 0L; + int var5 = var0.length(); + + for (int var6 = 0; var6 < var5; ++var6) { + var3 *= 37L; + char var7 = var0.charAt(var6); + if (var7 >= 'A' && var7 <= 'Z') { + var3 += (long)(var7 + 1 - 65); + } else if (var7 >= 'a' && var7 <= 'z') { + var3 += (long)(var7 + 1 - 97); + } else if (var7 >= '0' && var7 <= '9') { + var3 += (long)(var7 + 27 - 48); + } - var6.newWallDecoration(var0, var1, var2, var16, (Renderable)var25, (Renderable)var26, 256, var4, var28 * Tiles.field841[var4], var28 * Tiles.field843[var4], var19, var21); - } - } - } - } else { - if (var8.animationId == -1 && var8.transforms == null) { - var22 = var8.getEntity(10, var4, var15, var17, var16, var18); - } else { - var22 = new DynamicObject(var3, 10, var4, var0, var1, var2, var8.animationId, var8.boolean3, (Renderable)null); - } + if (var3 >= 177917621779460413L) { + break; + } + } - if (var22 != null && var6.method1243(var0, var1, var2, var16, var9, var10, (Renderable)var22, var5 == 11 ? 256 : 0, var19, var21) && var8.clipped) { - var31 = 15; - if (var22 instanceof Model) { - var31 = ((Model)var22).method1322() / 4; - if (var31 > 30) { - var31 = 30; - } - } + while (0L == var3 % 37L && 0L != var3) { + var3 /= 37L; + } - for (int var32 = 0; var32 <= var9; ++var32) { - for (int var33 = 0; var33 <= var10; ++var33) { - if (var31 > MoveSpeed.field1924[var0][var32 + var1][var33 + var2]) { - MoveSpeed.field1924[var0][var32 + var1][var33 + var2] = (byte)var31; - } - } - } - } + String var8 = HitSplatDefinition.base37DecodeLong(var3); + if (var8 == null) { + var8 = ""; + } - if (var8.interactType != 0 && var7 != null) { - var7.addGameObject(var1, var2, var9, var10, var8.boolean1); - } + return var8; + } - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;ZI)[B", + garbageValue = "-232126704" + ) + public static byte[] method694(Object var0, boolean var1) { + if (var0 == null) { + return null; + } else if (var0 instanceof byte[]) { + byte[] var6 = (byte[])((byte[])var0); + if (var1) { + int var4 = var6.length; + byte[] var5 = new byte[var4]; + System.arraycopy(var6, 0, var5, 0, var4); + return var5; + } else { + return var6; } + } else if (var0 instanceof AbstractByteArrayCopier) { + AbstractByteArrayCopier var2 = (AbstractByteArrayCopier)var0; + return var2.get(); + } else { + throw new IllegalArgumentException(); } } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Luj;I)Ljava/lang/String;", + garbageValue = "1233783388" + ) + @Export("readString") + public static String readString(Buffer var0) { + return DevicePcmPlayerProvider.method82(var0, 32767); + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "41" + ) + public static int method699(int var0) { + return class158.method828(ViewportMouse.ViewportMouse_entityTags[var0]); + } } \ No newline at end of file diff --git a/osrs/src/main/java/class129.java b/osrs/src/main/java/class129.java index 71c0f3924..09985de94 100644 --- a/osrs/src/main/java/class129.java +++ b/osrs/src/main/java/class129.java @@ -2,603 +2,123 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.Callable; - @ObfuscatedName("ep") -public class class129 implements Callable { - @ObfuscatedName("gf") - @Export("js5Port") - static int js5Port; - @ObfuscatedName("kz") - @Export("cameraPitch") - static int cameraPitch; - @ObfuscatedName("mt") +public enum class129 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ljk;" + descriptor = "Lep;" ) - @Export("textureProvider") - static TextureProvider textureProvider; - @ObfuscatedName("au") + field1244(0, 0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lfh;" + descriptor = "Lep;" ) - final class130 field1235; - @ObfuscatedName("ae") + field1241(1, 1), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "Lep;" ) - final class131 field1237; + field1243(2, 2), @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lep;" ) - final class132 field1236; - @ObfuscatedName("at") - final int field1238; - // $FF: synthetic field + field1242(3, 3), + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lfv;" + descriptor = "Lep;" ) - @Export("this$0") - @ObfuscatedName("this$0") - final class137 this$0; + field1240(4, 4); + @ObfuscatedName("ac") + @Export("ItemDefinition_inMembersWorld") + public static boolean ItemDefinition_inMembersWorld; + @ObfuscatedName("au") + final int field1246; + @ObfuscatedName("aa") + final int field1245; + + class129(int var3, int var4) { + this.field1246 = var3; + this.field1245 = var4; + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfv;Lfh;Lft;Lfs;I)V" + descriptor = "(B)I", + garbageValue = "-11" ) - class129(class137 var1, class130 var2, class131 var3, class132 var4, int var5) { - this.this$0 = var1; - this.field1235 = var2; - this.field1237 = var3; - this.field1236 = var4; - this.field1238 = var5; + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field1245; } - @Export("call") - @ObfuscatedName("call") - public Object call() { - this.field1235.method719(); - class130[][] var1; - if (this.field1237 == class131.field1264) { - var1 = this.this$0.field1299; - } else { - var1 = this.this$0.field1304; - } - - var1[this.field1238][this.field1236.method733()] = this.field1235; - return null; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)[Lru;", + garbageValue = "94" + ) + static class465[] method708() { + return new class465[]{class465.field3926, class465.field3923, class465.field3925, class465.field3924}; } - @ObfuscatedName("aq") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Liv;[Lis;I)V", - garbageValue = "2010483961" + descriptor = "(IIIZIZI)V", + garbageValue = "-1979044926" ) - static final void method717(Scene var0, CollisionMap[] var1) { - int var2; - int var3; - int var4; - int var5; - for (var2 = 0; var2 < 4; ++var2) { - for (var3 = 0; var3 < 104; ++var3) { - for (var4 = 0; var4 < 104; ++var4) { - if ((Tiles.Tiles_renderFlags[var2][var3][var4] & 1) == 1) { - var5 = var2; - if ((Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { - var5 = var2 - 1; - } - - if (var5 >= 0) { - var1[var5].setBlockedByFloor(var3, var4); - } + @Export("doWorldSorting") + static void doWorldSorting(int var0, int var1, int var2, boolean var3, int var4, boolean var5) { + if (var0 < var1) { + int var6 = (var0 + var1) / 2; + int var7 = var0; + World var8 = class361.World_worlds[var6]; + class361.World_worlds[var6] = class361.World_worlds[var1]; + class361.World_worlds[var1] = var8; + + for (int var9 = var0; var9 < var1; ++var9) { + World var11 = class361.World_worlds[var9]; + int var12 = class89.compareWorlds(var11, var8, var2, var3); + int var10; + if (var12 != 0) { + if (var3) { + var10 = -var12; + } else { + var10 = var12; } - } - } - } - - Tiles.rndHue += (int)(Math.random() * 5.0D) - 2; - if (Tiles.rndHue < -8) { - Tiles.rndHue = -8; - } - - if (Tiles.rndHue > 8) { - Tiles.rndHue = 8; - } - - Tiles.rndLightness += (int)(Math.random() * 5.0D) - 2; - if (Tiles.rndLightness < -16) { - Tiles.rndLightness = -16; - } - - if (Tiles.rndLightness > 16) { - Tiles.rndLightness = 16; - } - - int var9; - int var10; - int var11; - int var12; - int var13; - int var14; - int var15; - int var16; - int[] var10000; - int var17; - int var18; - for (var2 = 0; var2 < 4; ++var2) { - byte[][] var47 = MoveSpeed.field1924[var2]; - boolean var61 = true; - boolean var62 = true; - boolean var6 = true; - boolean var7 = true; - boolean var8 = true; - var9 = (int)Math.sqrt(5100.0D); - var10 = var9 * 768 >> 8; - - int var19; - int var20; - for (var11 = 1; var11 < 103; ++var11) { - for (var12 = 1; var12 < 103; ++var12) { - var13 = Tiles.Tiles_heights[var2][var12 + 1][var11] - Tiles.Tiles_heights[var2][var12 - 1][var11]; - var14 = Tiles.Tiles_heights[var2][var12][var11 + 1] - Tiles.Tiles_heights[var2][var12][var11 - 1]; - var15 = (int)Math.sqrt((double)(var14 * var14 + var13 * var13 + 65536)); - var16 = (var13 << 8) / var15; - var17 = 65536 / var15; - var18 = (var14 << 8) / var15; - var19 = (var18 * -50 + var16 * -50 + var17 * -10) / var10 + 96; - var20 = (var47[var12 - 1][var11] >> 2) + (var47[var12][var11 - 1] >> 2) + (var47[var12 + 1][var11] >> 3) + (var47[var12][var11 + 1] >> 3) + (var47[var12][var11] >> 1); - class162.field1419[var12][var11] = var19 - var20; - } - } - - for (var11 = 0; var11 < 104; ++var11) { - Fonts.Tiles_hue[var11] = 0; - class466.Tiles_saturation[var11] = 0; - Tiles.Tiles_lightness[var11] = 0; - class128.Tiles_hueMultiplier[var11] = 0; - Interpreter.field710[var11] = 0; - } - - for (var11 = -5; var11 < 109; ++var11) { - for (var12 = 0; var12 < 104; ++var12) { - var13 = var11 + 5; - int var10002; - if (var13 >= 0 && var13 < 104) { - long var48 = (long)Math.pow(2.0D, 15.0D) - 1L; - var16 = (int)var48; - var17 = Tiles.Tiles_underlays[var2][var13][var12] & var16; - if (var17 > 0) { - var19 = var17 - 1; - FloorUnderlayDefinition var50 = (FloorUnderlayDefinition)FloorUnderlayDefinition.FloorUnderlayDefinition_cached.get((long)var19); - FloorUnderlayDefinition var51; - if (var50 != null) { - var51 = var50; - } else { - byte[] var21 = FloorUnderlayDefinition.FloorUnderlayDefinition_archive.takeFile(1, var19); - var50 = new FloorUnderlayDefinition(); - if (var21 != null) { - var50.decode(new Buffer(var21), var19); - } - - var50.postDecode(); - FloorUnderlayDefinition.FloorUnderlayDefinition_cached.put(var50, (long)var19); - var51 = var50; - } - - var10000 = Fonts.Tiles_hue; - var10000[var12] += var51.hue; - var10000 = class466.Tiles_saturation; - var10000[var12] += var51.saturation; - var10000 = Tiles.Tiles_lightness; - var10000[var12] += var51.lightness; - var10000 = class128.Tiles_hueMultiplier; - var10000[var12] += var51.hueMultiplier; - var10002 = Interpreter.field710[var12]++; - } - } - - var14 = var11 - 5; - if (var14 >= 0 && var14 < 104) { - long var52 = (long)Math.pow(2.0D, 15.0D) - 1L; - var17 = (int)var52; - var18 = Tiles.Tiles_underlays[var2][var14][var12] & var17; - if (var18 > 0) { - var20 = var18 - 1; - FloorUnderlayDefinition var67 = (FloorUnderlayDefinition)FloorUnderlayDefinition.FloorUnderlayDefinition_cached.get((long)var20); - FloorUnderlayDefinition var54; - if (var67 != null) { - var54 = var67; - } else { - byte[] var22 = FloorUnderlayDefinition.FloorUnderlayDefinition_archive.takeFile(1, var20); - var67 = new FloorUnderlayDefinition(); - if (var22 != null) { - var67.decode(new Buffer(var22), var20); - } - - var67.postDecode(); - FloorUnderlayDefinition.FloorUnderlayDefinition_cached.put(var67, (long)var20); - var54 = var67; - } - - var10000 = Fonts.Tiles_hue; - var10000[var12] -= var54.hue; - var10000 = class466.Tiles_saturation; - var10000[var12] -= var54.saturation; - var10000 = Tiles.Tiles_lightness; - var10000[var12] -= var54.lightness; - var10000 = class128.Tiles_hueMultiplier; - var10000[var12] -= var54.hueMultiplier; - var10002 = Interpreter.field710[var12]--; - } - } - } - - if (var11 >= 1 && var11 < 103) { - var12 = 0; - var13 = 0; - var14 = 0; - var15 = 0; - var16 = 0; - - for (var17 = -5; var17 < 109; ++var17) { - var18 = var17 + 5; - if (var18 >= 0 && var18 < 104) { - var12 += Fonts.Tiles_hue[var18]; - var13 += class466.Tiles_saturation[var18]; - var14 += Tiles.Tiles_lightness[var18]; - var15 += class128.Tiles_hueMultiplier[var18]; - var16 += Interpreter.field710[var18]; - } - - var19 = var17 - 5; - if (var19 >= 0 && var19 < 104) { - var12 -= Fonts.Tiles_hue[var19]; - var13 -= class466.Tiles_saturation[var19]; - var14 -= Tiles.Tiles_lightness[var19]; - var15 -= class128.Tiles_hueMultiplier[var19]; - var16 -= Interpreter.field710[var19]; - } - - if (var17 >= 1 && var17 < 103 && (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var11][var17] & 2) != 0 || (Tiles.Tiles_renderFlags[var2][var11][var17] & 16) == 0)) { - if (var2 < Tiles.Tiles_minPlane) { - Tiles.Tiles_minPlane = var2; - } - - long var55 = (long)Math.pow(2.0D, 15.0D) - 1L; - int var57 = (int)var55; - int var23 = Tiles.Tiles_underlays[var2][var11][var17] & var57; - int var24 = class227.Tiles_overlays[var2][var11][var17] & var57; - if (var23 > 0 || var24 > 0) { - int var25 = Tiles.Tiles_heights[var2][var11][var17]; - int var26 = Tiles.Tiles_heights[var2][var11 + 1][var17]; - int var27 = Tiles.Tiles_heights[var2][var11 + 1][var17 + 1]; - int var28 = Tiles.Tiles_heights[var2][var11][var17 + 1]; - int var29 = class162.field1419[var11][var17]; - int var30 = class162.field1419[var11 + 1][var17]; - int var31 = class162.field1419[var11 + 1][var17 + 1]; - int var32 = class162.field1419[var11][var17 + 1]; - int var33 = -1; - int var34 = -1; - int var35; - int var36; - int var37; - if (var23 > 0) { - var35 = var12 * 256 / var15; - var36 = var13 / var16; - var37 = var14 / var16; - var33 = class106.method617(var35, var36, var37); - var35 = var35 + Tiles.rndHue & 255; - var37 += Tiles.rndLightness; - if (var37 < 0) { - var37 = 0; - } else if (var37 > 255) { - var37 = 255; - } - - var34 = class106.method617(var35, var36, var37); - } - - FloorOverlayDefinition var38; - if (var2 > 0) { - boolean var68 = true; - if (var23 == 0 && class172.Tiles_shapes[var2][var11][var17] != 0) { - var68 = false; - } - - if (var24 > 0) { - var37 = var24 - 1; - var38 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var37); - FloorOverlayDefinition var58; - if (var38 != null) { - var58 = var38; - } else { - byte[] var39 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var37); - var38 = new FloorOverlayDefinition(); - if (var39 != null) { - var38.decode(new Buffer(var39), var37); - } - - var38.postDecode(); - FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var38, (long)var37); - var58 = var38; - } - - if (!var58.hideUnderlay) { - var68 = false; - } - } - - if (var68 && var26 == var25 && var27 == var25 && var25 == var28) { - var10000 = BufferedNetSocket.field3820[var2][var11]; - var10000[var17] |= 2340; - } - } - - var35 = 0; - if (var34 != -1) { - var35 = Rasterizer3D.Rasterizer3D_colorPalette[UserComparator7.method677(var34, 96)]; - } - - if (var24 == 0) { - var0.addTile(var2, var11, var17, 0, 0, -1, var25, var26, var27, var28, UserComparator7.method677(var33, var29), UserComparator7.method677(var33, var30), UserComparator7.method677(var33, var31), UserComparator7.method677(var33, var32), 0, 0, 0, 0, var35, 0); - } else { - var36 = class172.Tiles_shapes[var2][var11][var17] + 1; - byte var69 = ModelData0.field2282[var2][var11][var17]; - int var59 = var24 - 1; - FloorOverlayDefinition var40 = (FloorOverlayDefinition)FloorOverlayDefinition.FloorOverlayDefinition_cached.get((long)var59); - if (var40 != null) { - var38 = var40; - } else { - byte[] var41 = FloorOverlayDefinition.FloorOverlayDefinition_archive.takeFile(4, var59); - var40 = new FloorOverlayDefinition(); - if (var41 != null) { - var40.decode(new Buffer(var41), var59); - } - - var40.postDecode(); - FloorOverlayDefinition.FloorOverlayDefinition_cached.put(var40, (long)var59); - var38 = var40; - } - - int var60 = var38.texture; - int var42; - int var43; - int var44; - int var45; - if (var60 >= 0) { - var43 = Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var60); - var42 = -1; - } else if (var38.primaryRgb == 16711935) { - var42 = -2; - var60 = -1; - var43 = -2; - } else { - var42 = class106.method617(var38.hue, var38.saturation, var38.lightness); - var44 = var38.hue + Tiles.rndHue & 255; - var45 = var38.lightness + Tiles.rndLightness; - if (var45 < 0) { - var45 = 0; - } else if (var45 > 255) { - var45 = 255; - } - - var43 = class106.method617(var44, var38.saturation, var45); - } - - var44 = 0; - if (var43 != -2) { - var44 = Rasterizer3D.Rasterizer3D_colorPalette[Client.method357(var43, 96)]; - } - - if (var38.secondaryRgb != -1) { - var45 = var38.secondaryHue + Tiles.rndHue & 255; - int var46 = var38.secondaryLightness + Tiles.rndLightness; - if (var46 < 0) { - var46 = 0; - } else if (var46 > 255) { - var46 = 255; - } - - var43 = class106.method617(var45, var38.secondarySaturation, var46); - var44 = Rasterizer3D.Rasterizer3D_colorPalette[Client.method357(var43, 96)]; - } - - var0.addTile(var2, var11, var17, var36, var69, var60, var25, var26, var27, var28, UserComparator7.method677(var33, var29), UserComparator7.method677(var33, var30), UserComparator7.method677(var33, var31), UserComparator7.method677(var33, var32), Client.method357(var42, var29), Client.method357(var42, var30), Client.method357(var42, var31), Client.method357(var42, var32), var35, var44); - } - } - } + } else if (var4 == -1) { + var10 = 0; + } else { + int var13 = class89.compareWorlds(var11, var8, var4, var5); + if (var5) { + var10 = -var13; + } else { + var10 = var13; } } - } - for (var11 = 1; var11 < 103; ++var11) { - for (var12 = 1; var12 < 103; ++var12) { - var0.setTileMinPlane(var2, var12, var11, ViewportMouse.method1349(var2, var12, var11)); + if (var10 <= 0) { + World var14 = class361.World_worlds[var9]; + class361.World_worlds[var9] = class361.World_worlds[var7]; + class361.World_worlds[var7++] = var14; } } - Tiles.Tiles_underlays[var2] = null; - class227.Tiles_overlays[var2] = null; - class172.Tiles_shapes[var2] = null; - ModelData0.field2282[var2] = null; - MoveSpeed.field1924[var2] = null; - } - - var0.method1264(-50, -10, -50); - - for (var2 = 0; var2 < 104; ++var2) { - for (var3 = 0; var3 < 104; ++var3) { - if ((Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { - var0.setLinkBelow(var2, var3); - } - } + class361.World_worlds[var1] = class361.World_worlds[var7]; + class361.World_worlds[var7] = var8; + doWorldSorting(var0, var7 - 1, var2, var3, var4, var5); + doWorldSorting(var7 + 1, var1, var2, var3, var4, var5); } - var2 = 1; - var3 = 2; - var4 = 4; - - for (var5 = 0; var5 < 4; ++var5) { - if (var5 > 0) { - var2 <<= 3; - var3 <<= 3; - var4 <<= 3; - } - - for (int var63 = 0; var63 <= var5; ++var63) { - for (int var64 = 0; var64 <= 104; ++var64) { - for (int var65 = 0; var65 <= 104; ++var65) { - short var66; - if ((BufferedNetSocket.field3820[var63][var65][var64] & var2) != 0) { - var9 = var64; - var10 = var64; - var11 = var63; - - for (var12 = var63; var9 > 0 && (BufferedNetSocket.field3820[var63][var65][var9 - 1] & var2) != 0; --var9) { - } - - while (var10 < 104 && (BufferedNetSocket.field3820[var63][var65][var10 + 1] & var2) != 0) { - ++var10; - } - - label372: - while (var11 > 0) { - for (var13 = var9; var13 <= var10; ++var13) { - if ((BufferedNetSocket.field3820[var11 - 1][var65][var13] & var2) == 0) { - break label372; - } - } - - --var11; - } - - label361: - while (var12 < var5) { - for (var13 = var9; var13 <= var10; ++var13) { - if ((BufferedNetSocket.field3820[var12 + 1][var65][var13] & var2) == 0) { - break label361; - } - } - - ++var12; - } - - var13 = (var10 - var9 + 1) * (var12 + 1 - var11); - if (var13 >= 8) { - var66 = 240; - var15 = Tiles.Tiles_heights[var12][var65][var9] - var66; - var16 = Tiles.Tiles_heights[var11][var65][var9]; - Scene.Scene_addOccluder(var5, 1, var65 * 128, var65 * 128, var9 * 128, var10 * 128 + 128, var15, var16); - - for (var17 = var11; var17 <= var12; ++var17) { - for (var18 = var9; var18 <= var10; ++var18) { - var10000 = BufferedNetSocket.field3820[var17][var65]; - var10000[var18] &= ~var2; - } - } - } - } - - if ((BufferedNetSocket.field3820[var63][var65][var64] & var3) != 0) { - var9 = var65; - var10 = var65; - var11 = var63; - - for (var12 = var63; var9 > 0 && (BufferedNetSocket.field3820[var63][var9 - 1][var64] & var3) != 0; --var9) { - } - - while (var10 < 104 && (BufferedNetSocket.field3820[var63][var10 + 1][var64] & var3) != 0) { - ++var10; - } - - label425: - while (var11 > 0) { - for (var13 = var9; var13 <= var10; ++var13) { - if ((BufferedNetSocket.field3820[var11 - 1][var13][var64] & var3) == 0) { - break label425; - } - } - - --var11; - } - - label414: - while (var12 < var5) { - for (var13 = var9; var13 <= var10; ++var13) { - if ((BufferedNetSocket.field3820[var12 + 1][var13][var64] & var3) == 0) { - break label414; - } - } - - ++var12; - } - - var13 = (var10 - var9 + 1) * (var12 + 1 - var11); - if (var13 >= 8) { - var66 = 240; - var15 = Tiles.Tiles_heights[var12][var9][var64] - var66; - var16 = Tiles.Tiles_heights[var11][var9][var64]; - Scene.Scene_addOccluder(var5, 2, var9 * 128, var10 * 128 + 128, var64 * 128, var64 * 128, var15, var16); - - for (var17 = var11; var17 <= var12; ++var17) { - for (var18 = var9; var18 <= var10; ++var18) { - var10000 = BufferedNetSocket.field3820[var17][var18]; - var10000[var64] &= ~var3; - } - } - } - } - - if ((BufferedNetSocket.field3820[var63][var65][var64] & var4) != 0) { - var9 = var65; - var10 = var65; - var11 = var64; - - for (var12 = var64; var11 > 0 && (BufferedNetSocket.field3820[var63][var65][var11 - 1] & var4) != 0; --var11) { - } - - while (var12 < 104 && (BufferedNetSocket.field3820[var63][var65][var12 + 1] & var4) != 0) { - ++var12; - } - - label478: - while (var9 > 0) { - for (var13 = var11; var13 <= var12; ++var13) { - if ((BufferedNetSocket.field3820[var63][var9 - 1][var13] & var4) == 0) { - break label478; - } - } - - --var9; - } - - label467: - while (var10 < 104) { - for (var13 = var11; var13 <= var12; ++var13) { - if ((BufferedNetSocket.field3820[var63][var10 + 1][var13] & var4) == 0) { - break label467; - } - } - - ++var10; - } - - if ((var12 - var11 + 1) * (var10 - var9 + 1) >= 4) { - var13 = Tiles.Tiles_heights[var63][var9][var11]; - Scene.Scene_addOccluder(var5, 4, var9 * 128, var10 * 128 + 128, var11 * 128, var12 * 128 + 128, var13, var13); - - for (var14 = var9; var14 <= var10; ++var14) { - for (var15 = var11; var15 <= var12; ++var15) { - var10000 = BufferedNetSocket.field3820[var63][var14]; - var10000[var15] &= ~var4; - } - } - } - } - } - } - } - } + } + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "394738351" + ) + static void method711(int var0) { + UserComparator7.method674(14); + Login.field751 = var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class13.java b/osrs/src/main/java/class13.java index 8ad06597c..5e15fce26 100644 --- a/osrs/src/main/java/class13.java +++ b/osrs/src/main/java/class13.java @@ -9,28 +9,16 @@ import java.io.IOException; import java.util.Hashtable; -@ObfuscatedName("an") +@ObfuscatedName("as") class class13 extends DefaultTlsClient { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("InvDefinition_archive") - static AbstractArchive InvDefinition_archive; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - @Export("title_muteSprite") - static IndexedSprite[] title_muteSprite; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lal;" + descriptor = "Lax;" ) final class12 this$1; @ObfuscatedSignature( - descriptor = "(Lal;)V" + descriptor = "(Lax;)V" ) class13(class12 var1) { this.this$1 = var1; @@ -62,19 +50,35 @@ public TlsAuthentication getAuthentication() throws IOException { return new class11(this); } - @ObfuscatedName("ai") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1477731180" + descriptor = "(I)[Lnv;", + garbageValue = "173861677" ) - public static void method36(Buffer var0, int var1) { - if (JagexCache.JagexCache_randomDat != null) { - try { - JagexCache.JagexCache_randomDat.seek(0L); - JagexCache.JagexCache_randomDat.write(var0.array, var1, 24); - } catch (Exception var3) { - } + public static GameBuild[] method50() { + return new GameBuild[]{GameBuild.BUILDLIVE, GameBuild.LIVE, GameBuild.RC, GameBuild.WIP}; + } + + @ObfuscatedName("hy") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "20" + ) + static final void method51() { + Client.packetWriter.close(); + ObjectSound.method424(); + class36.scene.clear(); + + for (int var0 = 0; var0 < 4; ++var0) { + Client.collisionMaps[var0].clear(); } + Client.field422.method1114(); + System.gc(); + WorldMapManager.method1265(0, 0); + class472.method2350(); + Client.playingJingle = false; + WorldMapSectionType.method1311(); + WorldMapSection2.updateGameState(10); } } \ No newline at end of file diff --git a/osrs/src/main/java/class130.java b/osrs/src/main/java/class130.java index e87542aef..7a449caaa 100644 --- a/osrs/src/main/java/class130.java +++ b/osrs/src/main/java/class130.java @@ -2,237 +2,95 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fh") -public class class130 { - @ObfuscatedName("jb") - @ObfuscatedSignature( - descriptor = "Liv;" - ) - @Export("scene") - static Scene scene; - @ObfuscatedName("au") - boolean field1243; - @ObfuscatedName("ae") - boolean field1240; - @ObfuscatedName("ao") +import java.util.concurrent.Callable; + +@ObfuscatedName("fd") +public class class130 implements Callable { + @ObfuscatedName("du") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "[Lup;" ) - class128 field1245; + @Export("worldSelectFlagSprites") + static IndexedSprite[] worldSelectFlagSprites; @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lew;" + descriptor = "Lfm;" ) - class128 field1246; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "[Leg;" - ) - class125[] field1244; - @ObfuscatedName("ai") - boolean field1242; - @ObfuscatedName("az") - float field1258; - @ObfuscatedName("ap") - float field1254; - @ObfuscatedName("aa") - float field1247; - @ObfuscatedName("af") - float field1250; - @ObfuscatedName("ad") - float field1249; - @ObfuscatedName("aq") - float field1255; - @ObfuscatedName("al") - float field1252; - @ObfuscatedName("an") - float field1253; - @ObfuscatedName("ar") - float field1256; - @ObfuscatedName("ab") - float field1248; - @ObfuscatedName("ag") - boolean field1241; - @ObfuscatedName("am") - int field1261; - @ObfuscatedName("ax") - float[] field1259; + final class131 field1249; @ObfuscatedName("ah") - int field1260; - @ObfuscatedName("as") - int field1262; - @ObfuscatedName("ay") - float field1257; - @ObfuscatedName("aj") - float field1251; - - class130() { - this.field1241 = true; - this.field1261 = 0; - } - - @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;IB)I", - garbageValue = "-47" + descriptor = "Lfa;" ) - int method718(Buffer var1, int var2) { - int var3 = var1.readUnsignedShort(); - int var4 = var1.readUnsignedByte(); - class138[] var5 = new class138[]{class138.field1314, class138.field1309, class138.field1311, class138.field1313, class138.field1308, class138.field1310, class138.field1315, class138.field1312, class138.field1307}; - class138 var6 = (class138)KeyHandler.findEnumerated(var5, var4); - if (var6 == null) { - var6 = class138.field1307; - } - - this.field1245 = ArchiveLoader.method466(var1.readUnsignedByte()); - this.field1246 = ArchiveLoader.method466(var1.readUnsignedByte()); - this.field1243 = var1.readUnsignedByte() != 0; - this.field1244 = new class125[var3]; - class125 var9 = null; - - for (int var8 = 0; var8 < var3; ++var8) { - class125 var7 = new class125(); - var7.method696(var1, var2); - this.field1244[var8] = var7; - if (var9 != null) { - var9.field1196 = var7; - } - - var9 = var7; - } - - return var3; - } - - @ObfuscatedName("ae") + final class132 field1248; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-1069" + descriptor = "Lfq;" ) - void method719() { - this.field1260 = this.field1244[0].field1202; - this.field1262 = this.field1244[this.method726() - 1].field1202; - this.field1259 = new float[this.method723() + 1]; - - for (int var1 = this.method721(); var1 <= this.method722(); ++var1) { - this.field1259[var1 - this.method721()] = Skeleton.method1229(this, (float)var1); - } - - this.field1244 = null; - this.field1257 = Skeleton.method1229(this, (float)(this.method721() - 1)); - this.field1251 = Skeleton.method1229(this, (float)(this.method722() + 1)); - } - + final class133 field1250; @ObfuscatedName("ao") + final int field1251; + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "(IB)F", - garbageValue = "-13" + descriptor = "Lfo;" ) - public float method720(int var1) { - if (var1 < this.method721()) { - return this.field1257; - } else { - return var1 > this.method722() ? this.field1251 : this.field1259[var1 - this.method721()]; - } - } + @Export("this$0") + @ObfuscatedName("this$0") + final class139 this$0; - @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1409378084" + descriptor = "(Lfo;Lfm;Lfa;Lfq;I)V" ) - int method721() { - return this.field1260; + class130(class139 var1, class131 var2, class132 var3, class133 var4, int var5) { + this.this$0 = var1; + this.field1249 = var2; + this.field1248 = var3; + this.field1250 = var4; + this.field1251 = var5; } - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1371661145" - ) - int method722() { - return this.field1262; + @Export("call") + @ObfuscatedName("call") + public Object call() { + this.field1249.method715(); + class131[][] var1; + if (this.field1248 == class132.field1276) { + var1 = this.this$0.field1311; + } else { + var1 = this.this$0.field1316; + } + + var1[this.field1251][this.field1250.method729()] = this.field1249; + return null; } - @ObfuscatedName("ai") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1808269392" + descriptor = "(IIII)Luz;", + garbageValue = "587580140" ) - int method723() { - return this.method722() - this.method721(); + static SpritePixels method712(int var0, int var1, int var2) { + DemotingHashTable var3 = WorldMapRegion.WorldMapRegion_cachedSprites; + long var4 = (long)(var2 << 16 | var0 << 8 | var1); + return (SpritePixels)var3.get(var4); } - @ObfuscatedName("az") + @ObfuscatedName("mt") @ObfuscatedSignature( - descriptor = "(FB)I", - garbageValue = "116" + descriptor = "(II)V", + garbageValue = "888688994" ) - int method724(float var1) { - if (this.field1261 < 0 || (float)this.field1244[this.field1261].field1202 > var1 || this.field1244[this.field1261].field1196 != null && (float)this.field1244[this.field1261].field1196.field1202 <= var1) { - if (var1 >= (float)this.method721() && var1 <= (float)this.method722()) { - int var2 = this.method726(); - int var3 = this.field1261; - if (var2 > 0) { - int var4 = 0; - int var5 = var2 - 1; - - do { - int var6 = var5 + var4 >> 1; - if (var1 < (float)this.field1244[var6].field1202) { - if (var1 > (float)this.field1244[var6 - 1].field1202) { - var3 = var6 - 1; - break; - } - - var5 = var6 - 1; - } else { - if (var1 <= (float)this.field1244[var6].field1202) { - var3 = var6; - break; - } - - if (var1 < (float)this.field1244[var6 + 1].field1202) { - var3 = var6; - break; - } - - var4 = var6 + 1; - } - } while(var4 <= var5); + static final void method713(int var0) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + Widget[] var1 = HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0]; + + for (int var2 = 0; var2 < var1.length; ++var2) { + Widget var3 = var1[var2]; + if (var3 != null) { + var3.modelFrame = 0; + var3.modelFrameCycle = 0; } - - if (var3 != this.field1261) { - this.field1261 = var3; - this.field1241 = true; - } - - return this.field1261; - } else { - return -1; } - } else { - return this.field1261; - } - } - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(FI)Leg;", - garbageValue = "1942643085" - ) - class125 method725(float var1) { - int var2 = this.method724(var1); - return var2 >= 0 && var2 < this.field1244.length ? this.field1244[var2] : null; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1392526079" - ) - int method726() { - return this.field1244 == null ? 0 : this.field1244.length; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class131.java b/osrs/src/main/java/class131.java index b7f836d5b..5b72992fc 100644 --- a/osrs/src/main/java/class131.java +++ b/osrs/src/main/java/class131.java @@ -2,182 +2,269 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ft") -public class class131 implements class371 { - @ObfuscatedName("au") +import java.io.File; +import java.io.IOException; + +@ObfuscatedName("fm") +public class class131 { + @ObfuscatedName("at") + boolean field1254; + @ObfuscatedName("ah") + boolean field1252; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "Lep;" ) - static final class131 field1268; - @ObfuscatedName("ae") + class129 field1257; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "Lep;" ) - static final class131 field1264; - @ObfuscatedName("ao") + class129 field1256; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "[Leq;" ) - static final class131 field1266; + class126[] field1258; + @ObfuscatedName("au") + boolean field1255; + @ObfuscatedName("aa") + float field1259; + @ObfuscatedName("ac") + float field1260; + @ObfuscatedName("al") + float field1263; + @ObfuscatedName("az") + float field1270; + @ObfuscatedName("ap") + float field1265; + @ObfuscatedName("av") + float field1267; + @ObfuscatedName("ax") + float field1268; + @ObfuscatedName("as") + float field1266; + @ObfuscatedName("ay") + float field1269; + @ObfuscatedName("ak") + float field1262; + @ObfuscatedName("aj") + boolean field1253; + @ObfuscatedName("am") + int field1273; + @ObfuscatedName("aq") + float[] field1271; + @ObfuscatedName("ai") + int field1272; + @ObfuscatedName("aw") + int field1274; + @ObfuscatedName("ae") + float field1261; + @ObfuscatedName("an") + float field1264; + + class131() { + this.field1253 = true; + this.field1273 = 0; + } + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "(Luj;II)I", + garbageValue = "-979400309" ) - static final class131 field1267; - @ObfuscatedName("ac") + int method714(Buffer var1, int var2) { + int var3 = var1.readUnsignedShort(); + class311.method1646(var1.readUnsignedByte()); + this.field1257 = class72.method432(var1.readUnsignedByte()); + this.field1256 = class72.method432(var1.readUnsignedByte()); + this.field1254 = var1.readUnsignedByte() != 0; + this.field1258 = new class126[var3]; + class126 var4 = null; + + for (int var5 = 0; var5 < var3; ++var5) { + class126 var6 = new class126(); + var6.method691(var1, var2); + this.field1258[var5] = var6; + if (var4 != null) { + var4.field1211 = var6; + } + + var4 = var6; + } + + return var3; + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "(I)V", + garbageValue = "2128707334" ) - static final class131 field1263; - @ObfuscatedName("ai") + void method715() { + this.field1272 = this.field1258[0].field1217; + this.field1274 = this.field1258[this.method722() - 1].field1217; + this.field1271 = new float[this.method719() + 1]; + + for (int var1 = this.method717(); var1 <= this.method718(); ++var1) { + this.field1271[var1 - this.method717()] = class404.method2045(this, (float)var1); + } + + this.field1258 = null; + this.field1261 = class404.method2045(this, (float)(this.method717() - 1)); + this.field1264 = class404.method2045(this, (float)(this.method718() + 1)); + } + + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lft;" + descriptor = "(II)F", + garbageValue = "-1688546039" ) - static final class131 field1265; - @ObfuscatedName("az") - final int field1271; - @ObfuscatedName("ap") - final int field1270; - @ObfuscatedName("aa") - final int field1269; - - static { - field1268 = new class131(0, 0, (String)null, 0); - field1264 = new class131(1, 1, (String)null, 9); - field1266 = new class131(2, 2, (String)null, 3); - field1267 = new class131(3, 3, (String)null, 6); - field1263 = new class131(4, 4, (String)null, 1); - field1265 = new class131(5, 5, (String)null, 3); + public float method716(int var1) { + if (var1 < this.method717()) { + return this.field1261; + } else { + return var1 > this.method718() ? this.field1264 : this.field1271[var1 - this.method717()]; + } } - class131(int var1, int var2, String var3, int var4) { - this.field1271 = var1; - this.field1270 = var2; - this.field1269 = var4; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "124775939" + ) + int method717() { + return this.field1272; } - @ObfuscatedName("ae") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "17" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field1270; + int method718() { + return this.field1274; } - @ObfuscatedName("ao") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "149385670" + descriptor = "(B)I", + garbageValue = "71" ) - int method727() { - return this.field1269; + int method719() { + return this.method718() - this.method717(); } - @ObfuscatedName("at") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "50" + descriptor = "(FI)I", + garbageValue = "2092037965" ) - static void method729(int var0, int var1, int var2, int var3) { - for (ObjectSound var4 = (ObjectSound)ObjectSound.objectSounds.last(); var4 != null; var4 = (ObjectSound)ObjectSound.objectSounds.previous()) { - if (var4.soundEffectId != -1 || var4.soundEffectIds != null) { - int var5 = 0; - if (var1 > var4.maxX) { - var5 += var1 - var4.maxX; - } else if (var1 < var4.x) { - var5 += var4.x - var1; - } + int method720(float var1) { + if (this.field1273 < 0 || (float)this.field1258[this.field1273].field1217 > var1 || this.field1258[this.field1273].field1211 != null && (float)this.field1258[this.field1273].field1211.field1217 <= var1) { + if (var1 >= (float)this.method717() && var1 <= (float)this.method718()) { + int var2 = this.method722(); + int var3 = this.field1273; + if (var2 > 0) { + int var4 = 0; + int var5 = var2 - 1; - if (var2 > var4.maxY) { - var5 += var2 - var4.maxY; - } else if (var2 < var4.y) { - var5 += var4.y - var2; - } + do { + int var6 = var5 + var4 >> 1; + if (var1 < (float)this.field1258[var6].field1217) { + if (var1 > (float)this.field1258[var6 - 1].field1217) { + var3 = var6 - 1; + break; + } - if (var5 - 64 <= var4.field702 && class449.clientPreferences.getAreaSoundEffectsVolume() != 0 && var0 == var4.plane) { - var5 -= 64; - if (var5 < 0) { - var5 = 0; - } - - int var6 = (var4.field702 - var5) * class449.clientPreferences.getAreaSoundEffectsVolume() / var4.field702; - if (var4.stream1 == null) { - if (var4.soundEffectId >= 0) { - SoundEffect var7 = SoundEffect.readSoundEffect(class28.field81, var4.soundEffectId, 0); - if (var7 != null) { - RawSound var8 = var7.toRawSound().resample(class330.decimator); - RawPcmStream var9 = RawPcmStream.createRawPcmStream(var8, 100, var6); - var9.setNumLoops(-1); - class162.pcmStreamMixer.addSubStream(var9); - var4.stream1 = var9; + var5 = var6 - 1; + } else { + if (var1 <= (float)this.field1258[var6].field1217) { + var3 = var6; + break; } - } - } else { - var4.stream1.method238(var6); - } - - if (var4.stream2 == null) { - if (var4.soundEffectIds != null && (var4.field698 -= var3) <= 0) { - int var11 = (int)(Math.random() * (double)var4.soundEffectIds.length); - SoundEffect var12 = SoundEffect.readSoundEffect(class28.field81, var4.soundEffectIds[var11], 0); - if (var12 != null) { - RawSound var13 = var12.toRawSound().resample(class330.decimator); - RawPcmStream var10 = RawPcmStream.createRawPcmStream(var13, 100, var6); - var10.setNumLoops(0); - class162.pcmStreamMixer.addSubStream(var10); - var4.stream2 = var10; - var4.field698 = var4.field696 + (int)(Math.random() * (double)(var4.field694 - var4.field696)); + + if (var1 < (float)this.field1258[var6 + 1].field1217) { + var3 = var6; + break; } + + var4 = var6 + 1; } - } else { - var4.stream2.method238(var6); - if (!var4.stream2.hasNext()) { - var4.stream2 = null; - } - } - } else { - if (var4.stream1 != null) { - class162.pcmStreamMixer.removeSubStream(var4.stream1); - var4.stream1 = null; - } - - if (var4.stream2 != null) { - class162.pcmStreamMixer.removeSubStream(var4.stream2); - var4.stream2 = null; - } + } while(var4 <= var5); + } + + if (var3 != this.field1273) { + this.field1273 = var3; + this.field1253 = true; } + + return this.field1273; + } else { + return -1; } + } else { + return this.field1273; } - } - @ObfuscatedName("at") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(IZIZI)V", - garbageValue = "-761761706" + descriptor = "(FI)Leq;", + garbageValue = "-1779778637" ) - @Export("sortWorldList") - static void sortWorldList(int var0, boolean var1, int var2, boolean var3) { - if (class176.World_worlds != null) { - Occluder.doWorldSorting(0, class176.World_worlds.length - 1, var0, var1, var2, var3); - } + class126 method721(float var1) { + int var2 = this.method720(var1); + return var2 >= 0 && var2 < this.field1258.length ? this.field1258[var2] : null; + } + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1866632408" + ) + int method722() { + return this.field1258 == null ? 0 : this.field1258.length; } - @ObfuscatedName("nk") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-87" + descriptor = "(Ljava/lang/String;Ljava/lang/String;ZI)Lto;", + garbageValue = "-575413864" ) - @Export("clanKickUser") - static final void clanKickUser(String var0) { - if (ReflectionCheck.friendsChat != null) { - PacketBufferNode var1 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLAN_KICKUSER, Client.packetWriter.isaacCipher); - var1.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var0)); - var1.packetBuffer.writeStringCp1252NullTerminated(var0); - Client.packetWriter.addNode(var1); + @Export("getPreferencesFile") + public static AccessFile getPreferencesFile(String var0, String var1, boolean var2) { + File var3 = new File(JagexCache.cacheDir, "preferences" + var0 + ".dat"); + if (var3.exists()) { + try { + AccessFile var10 = new AccessFile(var3, "rw", 10000L); + return var10; + } catch (IOException var9) { + } + } + + String var4 = ""; + if (class521.cacheGamebuild == 33) { + var4 = "_rc"; + } else if (class521.cacheGamebuild == 34) { + var4 = "_wip"; + } + + File var5 = new File(Login.userHomeDirectory, "jagex_" + var1 + "_preferences" + var0 + var4 + ".dat"); + AccessFile var6; + if (!var2 && var5.exists()) { + try { + var6 = new AccessFile(var5, "rw", 10000L); + return var6; + } catch (IOException var8) { + } + } + + try { + var6 = new AccessFile(var3, "rw", 10000L); + return var6; + } catch (IOException var7) { + throw new RuntimeException(); } } } \ No newline at end of file diff --git a/osrs/src/main/java/class132.java b/osrs/src/main/java/class132.java index c455e3013..8b494caf1 100644 --- a/osrs/src/main/java/class132.java +++ b/osrs/src/main/java/class132.java @@ -2,737 +2,137 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fs") -public class class132 implements class371 { - @ObfuscatedName("wu") - static long field1272; - @ObfuscatedName("au") +@ObfuscatedName("fa") +public class class132 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) - static final class132 field1288; - @ObfuscatedName("ae") + static final class132 field1279; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) - static final class132 field1277; - @ObfuscatedName("ao") + static final class132 field1276; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) - static final class132 field1283; - @ObfuscatedName("at") + static final class132 field1278; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) - static final class132 field1287; - @ObfuscatedName("ac") + static final class132 field1277; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) static final class132 field1275; - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lfs;" + descriptor = "Lfa;" ) static final class132 field1280; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1289; - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1284; @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1273; - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1278; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1276; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1285; + final int field1281; + @ObfuscatedName("ac") + final int field1282; @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1281; - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1282; - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1286; - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1274; - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "Lfs;" - ) - static final class132 field1279; - @ObfuscatedName("am") - final int field1291; - @ObfuscatedName("ax") - final int field1292; - @ObfuscatedName("ah") - final int field1290; + final int field1283; static { - field1288 = new class132(0, 0, (String)null, -1, -1); - field1277 = new class132(1, 1, (String)null, 0, 2); - field1283 = new class132(2, 2, (String)null, 1, 2); - field1287 = new class132(3, 3, (String)null, 2, 2); - field1275 = new class132(4, 4, (String)null, 3, 1); - field1280 = new class132(5, 5, (String)null, 4, 1); - field1289 = new class132(6, 6, (String)null, 5, 1); - field1284 = new class132(7, 7, (String)null, 6, 3); - field1273 = new class132(8, 8, (String)null, 7, 3); - field1278 = new class132(9, 9, (String)null, 8, 3); - field1276 = new class132(10, 10, (String)null, 0, 7); - field1285 = new class132(11, 11, (String)null, 1, 7); - field1281 = new class132(12, 12, (String)null, 2, 7); - field1282 = new class132(13, 13, (String)null, 3, 7); - field1286 = new class132(14, 14, (String)null, 4, 7); - field1274 = new class132(15, 15, (String)null, 5, 7); - field1279 = new class132(16, 16, (String)null, 0, 5); - } - - @ObfuscatedSignature( - descriptor = "(IILjava/lang/String;II)V", - garbageValue = "-1" - ) - class132(int var1, int var2, String var3, int var4, int var5) { - this.field1291 = var1; - this.field1292 = var2; - this.field1290 = var4; + field1279 = new class132(0, 0, (String)null, 0); + field1276 = new class132(1, 1, (String)null, 9); + field1278 = new class132(2, 2, (String)null, 3); + field1277 = new class132(3, 3, (String)null, 6); + field1275 = new class132(4, 4, (String)null, 1); + field1280 = new class132(5, 5, (String)null, 3); } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1552695494" - ) - int method733() { - return this.field1290; + class132(int var1, int var2, String var3, int var4) { + this.field1281 = var1; + this.field1282 = var2; + this.field1283 = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field1292; + return this.field1282; } - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "([BIIIIIIIII[Lis;I)V", - garbageValue = "388906105" - ) - static final void method734(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, CollisionMap[] var10) { - int var12; - for (int var11 = 0; var11 < 8; ++var11) { - for (var12 = 0; var12 < 8; ++var12) { - if (var11 + var2 > 0 && var11 + var2 < 103 && var3 + var12 > 0 && var3 + var12 < 103) { - int[] var10000 = var10[var1].flags[var11 + var2]; - var10000[var12 + var3] &= -16777217; - } - } - } - - Buffer var19 = new Buffer(var0); - - for (var12 = 0; var12 < 4; ++var12) { - for (int var13 = 0; var13 < 64; ++var13) { - for (int var14 = 0; var14 < 64; ++var14) { - if (var12 == var4 && var13 >= var5 && var13 < var5 + 8 && var14 >= var6 && var14 < var6 + 8) { - int var15 = var2 + class85.method470(var13 & 7, var14 & 7, var7); - int var16 = var3 + class144.method772(var13 & 7, var14 & 7, var7); - int var17 = (var13 & 7) + var8 + var2; - int var18 = var3 + (var14 & 7) + var9; - SecureRandomFuture.loadTerrain(var19, var1, var15, var16, var17, var18, var7); - } else { - SecureRandomFuture.loadTerrain(var19, 0, -1, -1, 0, 0, 0); - } - } - } - } - - } - - @ObfuscatedName("an") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1398962204" + descriptor = "(I)I", + garbageValue = "361473055" ) - static int method735(int var0, Script var1, boolean var2) { - Widget var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - if (var0 == 1500) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.x; - return 1; - } else if (var0 == 1501) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.y; - return 1; - } else if (var0 == 1502) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.width; - return 1; - } else if (var0 == 1503) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.height; - return 1; - } else if (var0 == 1504) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; - return 1; - } else if (var0 == 1505) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.parentId; - return 1; - } else { - return 2; - } + int method725() { + return this.field1283; } - @ObfuscatedName("jr") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "-124816622" - ) - @Export("drawEntities") - static final void drawEntities(int var0, int var1, int var2, int var3) { - ++Client.viewportDrawCount; - if (VarbitComposition.localPlayer.x >> 7 == Client.destinationX && VarbitComposition.localPlayer.y >> 7 == Client.destinationY) { - Client.destinationX = 0; - } - - RouteStrategy.method1125(); - InterfaceParent.method475(); - WorldMapData_0.addNpcsToScene(true); - class147.method785(); - WorldMapData_0.addNpcsToScene(false); - - int var6; - for (Projectile var4 = (Projectile)Client.projectiles.last(); var4 != null; var4 = (Projectile)Client.projectiles.previous()) { - if (var4.plane == HealthBar.Client_plane && Client.cycle <= var4.cycleEnd) { - if (Client.cycle >= var4.cycleStart) { - NPC var5; - Player var40; - if (!var4.isMoving && var4.field797 != 0) { - if (var4.field797 > 0) { - var5 = Client.npcs[var4.field797 - 1]; - if (var5 != null && var5.x >= 0 && var5.x < 13312 && var5.y >= 0 && var5.y < 13312) { - var4.sourceX = var5.x; - var4.sourceY = var5.y; - var4.setDestination(var4.field805, var4.field799, var4.field789, Client.cycle); - } - } else { - var6 = -var4.field797 - 1; - if (var6 == Client.localPlayerIndex) { - var40 = VarbitComposition.localPlayer; - } else { - var40 = Client.players[var6]; - } - - if (var40 != null && var40.x >= 0 && var40.x < 13312 && var40.y >= 0 && var40.y < 13312) { - var4.sourceX = var40.x; - var4.sourceY = var40.y; - var4.setDestination(var4.field805, var4.field799, var4.field789, Client.cycle); - } - } - } - - if (var4.targetIndex > 0) { - var5 = Client.npcs[var4.targetIndex - 1]; - if (var5 != null && var5.x >= 0 && var5.x < 13312 && var5.y >= 0 && var5.y < 13312) { - var4.setDestination(var5.x, var5.y, class18.getTileHeight(var5.x, var5.y, var4.plane) - var4.endHeight, Client.cycle); - } - } - - if (var4.targetIndex < 0) { - var6 = -var4.targetIndex - 1; - if (var6 == Client.localPlayerIndex) { - var40 = VarbitComposition.localPlayer; - } else { - var40 = Client.players[var6]; - } - - if (var40 != null && var40.x >= 0 && var40.x < 13312 && var40.y >= 0 && var40.y < 13312) { - var4.setDestination(var40.x, var40.y, class18.getTileHeight(var40.x, var40.y, var4.plane) - var4.endHeight, Client.cycle); - } - } - - var4.advance(Client.field457); - class130.scene.drawEntity(HealthBar.Client_plane, (int)var4.x, (int)var4.y, (int)var4.z, 60, var4, var4.yaw, -1L, false); + descriptor = "([Ljava/lang/String;[SIII)V", + garbageValue = "676709272" + ) + @Export("sortItemsByName") + static void sortItemsByName(String[] var0, short[] var1, int var2, int var3) { + if (var2 < var3) { + int var4 = (var3 + var2) / 2; + int var5 = var2; + String var6 = var0[var4]; + var0[var4] = var0[var3]; + var0[var3] = var6; + short var7 = var1[var4]; + var1[var4] = var1[var3]; + var1[var3] = var7; + + for (int var8 = var2; var8 < var3; ++var8) { + if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { + String var9 = var0[var8]; + var0[var8] = var0[var5]; + var0[var5] = var9; + short var10 = var1[var8]; + var1[var8] = var1[var5]; + var1[var5++] = var10; } - } else { - var4.remove(); } - } - class167.method874(); - GrandExchangeOfferOwnWorldComparator.setViewportShape(var0, var1, var2, var3, true); - var0 = Client.viewportOffsetX; - var1 = Client.viewportOffsetY; - var2 = Client.viewportWidth; - var3 = Client.viewportHeight; - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); - Rasterizer3D.method1199(); - Rasterizer2D.method2643(); - int var36 = Client.camAngleX; - if (Client.field467 / 256 > var36) { - var36 = Client.field467 / 256; + var0[var3] = var0[var5]; + var0[var5] = var6; + var1[var3] = var1[var5]; + var1[var5] = var7; + sortItemsByName(var0, var1, var2, var5 - 1); + sortItemsByName(var0, var1, var5 + 1, var3); } - if (Client.cameraShaking[4] && Client.cameraMoveIntensity[4] + 128 > var36) { - var36 = Client.cameraMoveIntensity[4] + 128; - } - - int var37 = Client.camAngleY & 2047; - var6 = FriendLoginUpdate.oculusOrbFocalPointX; - int var7 = class125.field1194; - int var8 = HealthBar.oculusOrbFocalPointY; - int var9 = class172.method907(var36); - int var11 = var3 - 334; - if (var11 < 0) { - var11 = 0; - } else if (var11 > 100) { - var11 = 100; - } - - int var12 = (Client.zoomWidth - Client.zoomHeight) * var11 / 100 + Client.zoomHeight; - int var10 = var12 * var9 / 256; - var11 = 2048 - var36 & 2047; - var12 = 2048 - var37 & 2047; - int var13 = 0; - int var14 = 0; - int var15 = var10; - int var16; - int var17; - int var18; - if (var11 != 0) { - var16 = Rasterizer3D.Rasterizer3D_sine[var11]; - var17 = Rasterizer3D.Rasterizer3D_cosine[var11]; - var18 = var17 * var14 - var16 * var10 >> 16; - var15 = var17 * var10 + var16 * var14 >> 16; - var14 = var18; - } - - if (var12 != 0) { - var16 = Rasterizer3D.Rasterizer3D_sine[var12]; - var17 = Rasterizer3D.Rasterizer3D_cosine[var12]; - var18 = var16 * var15 + var13 * var17 >> 16; - var15 = var17 * var15 - var13 * var16 >> 16; - var13 = var18; - } - - if (Client.isCameraLocked) { - FontName.field4045 = var6 - var13; - KeyHandler.field70 = var7 - var14; - class31.field84 = var8 - var15; - UserComparator4.field1180 = var36; - VertexNormal.field2255 = var37; - } else { - NPCComposition.cameraX = var6 - var13; - class133.cameraY = var7 - var14; - class139.cameraZ = var8 - var15; - class129.cameraPitch = var36; - UserComparator10.cameraYaw = var37; - } - - if (Client.oculusOrbState == 1 && Client.staffModLevel >= 2 && Client.cycle % 50 == 0 && (FriendLoginUpdate.oculusOrbFocalPointX >> 7 != VarbitComposition.localPlayer.x >> 7 || HealthBar.oculusOrbFocalPointY >> 7 != VarbitComposition.localPlayer.y >> 7)) { - var16 = VarbitComposition.localPlayer.plane; - var17 = (FriendLoginUpdate.oculusOrbFocalPointX >> 7) + UrlRequester.baseX; - var18 = (HealthBar.oculusOrbFocalPointY >> 7) + class47.baseY; - NPC.method597(var17, var18, var16, true); - } - - int var20; - if (!Client.isCameraLocked) { - if (class449.clientPreferences.getRoofsHidden()) { - var11 = HealthBar.Client_plane; - } else { - label577: { - var12 = 3; - if (class129.cameraPitch < 310) { - if (Client.oculusOrbState == 1) { - var13 = FriendLoginUpdate.oculusOrbFocalPointX >> 7; - var14 = HealthBar.oculusOrbFocalPointY >> 7; - } else { - var13 = VarbitComposition.localPlayer.x >> 7; - var14 = VarbitComposition.localPlayer.y >> 7; - } - - var15 = NPCComposition.cameraX >> 7; - var16 = class139.cameraZ >> 7; - if (var15 < 0 || var16 < 0 || var15 >= 104 || var16 >= 104) { - var11 = HealthBar.Client_plane; - break label577; - } - - if (var13 < 0 || var14 < 0 || var13 >= 104 || var14 >= 104) { - var11 = HealthBar.Client_plane; - break label577; - } - - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][var15][var16] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - - if (var13 > var15) { - var17 = var13 - var15; - } else { - var17 = var15 - var13; - } - - if (var14 > var16) { - var18 = var14 - var16; - } else { - var18 = var16 - var14; - } - - int var19; - if (var17 > var18) { - var19 = var18 * 65536 / var17; - var20 = 32768; - - while (var15 != var13) { - if (var15 < var13) { - ++var15; - } else if (var15 > var13) { - --var15; - } - - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][var15][var16] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - - var20 += var19; - if (var20 >= 65536) { - var20 -= 65536; - if (var16 < var14) { - ++var16; - } else if (var16 > var14) { - --var16; - } - - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][var15][var16] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - } - } - } else if (var18 > 0) { - var19 = var17 * 65536 / var18; - var20 = 32768; - - while (var14 != var16) { - if (var16 < var14) { - ++var16; - } else if (var16 > var14) { - --var16; - } - - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][var15][var16] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - - var20 += var19; - if (var20 >= 65536) { - var20 -= 65536; - if (var15 < var13) { - ++var15; - } else if (var15 > var13) { - --var15; - } - - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][var15][var16] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - } - } - } - } - - if (VarbitComposition.localPlayer.x >= 0 && VarbitComposition.localPlayer.y >= 0 && VarbitComposition.localPlayer.x < 13312 && VarbitComposition.localPlayer.y < 13312) { - if ((Tiles.Tiles_renderFlags[HealthBar.Client_plane][VarbitComposition.localPlayer.x >> 7][VarbitComposition.localPlayer.y >> 7] & 4) != 0) { - var12 = HealthBar.Client_plane; - } - - var11 = var12; - } else { - var11 = HealthBar.Client_plane; - } - } - } - - var10 = var11; - } else { - var10 = StructComposition.method1024(); - } - - var11 = NPCComposition.cameraX; - var12 = class133.cameraY; - var13 = class139.cameraZ; - var14 = class129.cameraPitch; - var15 = UserComparator10.cameraYaw; - - for (var16 = 0; var16 < 5; ++var16) { - if (Client.cameraShaking[var16]) { - var17 = (int)(Math.random() * (double)(Client.cameraShakeIntensity[var16] * 2 + 1) - (double)Client.cameraShakeIntensity[var16] + Math.sin((double)Client.cameraShakeSpeed[var16] / 100.0D * (double)Client.cameraShakeCycle[var16]) * (double)Client.cameraMoveIntensity[var16]); - if (var16 == 0) { - NPCComposition.cameraX += var17; - } - - if (var16 == 1) { - class133.cameraY += var17; - } - - if (var16 == 2) { - class139.cameraZ += var17; - } - - if (var16 == 3) { - UserComparator10.cameraYaw = var17 + UserComparator10.cameraYaw & 2047; - } - - if (var16 == 4) { - class129.cameraPitch += var17; - if (class129.cameraPitch < 128) { - class129.cameraPitch = 128; - } - - if (class129.cameraPitch > 383) { - class129.cameraPitch = 383; - } - } - } - } - - var16 = MouseHandler.MouseHandler_x; - var17 = MouseHandler.MouseHandler_y; - if (MouseHandler.MouseHandler_lastButton != 0) { - var16 = MouseHandler.MouseHandler_lastPressedX; - var17 = MouseHandler.MouseHandler_lastPressedY; - } - - if (var16 >= var0 && var16 < var0 + var2 && var17 >= var1 && var17 < var3 + var1) { - MenuAction.method425(var16 - var0, var17 - var1); - } else { - Players.method619(); - } - - class301.method1622(); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); - class301.method1622(); - var18 = Rasterizer3D.get3dZoom(); - Rasterizer3D.method1185(class219.client.field123); - Rasterizer3D.clips.field2280 = Client.viewportZoom; - class130.scene.draw(NPCComposition.cameraX, class133.cameraY, class139.cameraZ, class129.cameraPitch, UserComparator10.cameraYaw, var10); - Rasterizer3D.method1185(false); - if (Client.renderSelf) { - Rasterizer2D.method2644(); - } - - Rasterizer3D.clips.field2280 = var18; - class301.method1622(); - class130.scene.clearTempGameObjects(); - Client.overheadTextLimit = 0; - boolean var41 = false; - var20 = -1; - int var21 = -1; - int var22 = Players.Players_count; - int[] var23 = Players.Players_indices; - - int var24; - for (var24 = 0; var24 < var22 + Client.npcCount; ++var24) { - Object var25; - if (var24 < var22) { - var25 = Client.players[var23[var24]]; - if (var23[var24] == Client.combatTargetPlayerIndex) { - var41 = true; - var20 = var24; - continue; - } - - if (var25 == VarbitComposition.localPlayer) { - var21 = var24; - continue; - } - } else { - var25 = Client.npcs[Client.npcIndices[var24 - var22]]; - } - - PcmPlayer.drawActor2d((Actor)var25, var24, var0, var1, var2, var3); - } - - if (Client.field386 && var21 != -1) { - PcmPlayer.drawActor2d(VarbitComposition.localPlayer, var21, var0, var1, var2, var3); - } - - if (var41) { - PcmPlayer.drawActor2d(Client.players[Client.combatTargetPlayerIndex], var20, var0, var1, var2, var3); - } - - for (var24 = 0; var24 < Client.overheadTextLimit; ++var24) { - int var38 = Client.overheadTextXs[var24]; - int var26 = Client.overheadTextYs[var24]; - int var27 = Client.overheadTextXOffsets[var24]; - int var28 = Client.overheadTextAscents[var24]; - boolean var29 = true; - - while (var29) { - var29 = false; - - for (int var30 = 0; var30 < var24; ++var30) { - if (var26 + 2 > Client.overheadTextYs[var30] - Client.overheadTextAscents[var30] && var26 - var28 < Client.overheadTextYs[var30] + 2 && var38 - var27 < Client.overheadTextXOffsets[var30] + Client.overheadTextXs[var30] && var38 + var27 > Client.overheadTextXs[var30] - Client.overheadTextXOffsets[var30] && Client.overheadTextYs[var30] - Client.overheadTextAscents[var30] < var26) { - var26 = Client.overheadTextYs[var30] - Client.overheadTextAscents[var30]; - var29 = true; - } - } - } - - Client.viewportTempX = Client.overheadTextXs[var24]; - Client.viewportTempY = Client.overheadTextYs[var24] = var26; - String var39 = Client.field603[var24]; - if (Client.chatEffects == 0) { - int var31 = 16776960; - if (Client.overheadTextColors[var24] < 6) { - var31 = Client.field579[Client.overheadTextColors[var24]]; - } - - if (Client.overheadTextColors[var24] == 6) { - var31 = Client.viewportDrawCount % 20 < 10 ? 16711680 : 16776960; - } - - if (Client.overheadTextColors[var24] == 7) { - var31 = Client.viewportDrawCount % 20 < 10 ? 255 : '\uffff'; - } - - if (Client.overheadTextColors[var24] == 8) { - var31 = Client.viewportDrawCount % 20 < 10 ? '\ub000' : 8454016; - } - - int var32; - if (Client.overheadTextColors[var24] == 9) { - var32 = 150 - Client.overheadTextCyclesRemaining[var24]; - if (var32 < 50) { - var31 = var32 * 1280 + 16711680; - } else if (var32 < 100) { - var31 = 16776960 - (var32 - 50) * 327680; - } else if (var32 < 150) { - var31 = (var32 - 100) * 5 + 65280; - } - } - - if (Client.overheadTextColors[var24] == 10) { - var32 = 150 - Client.overheadTextCyclesRemaining[var24]; - if (var32 < 50) { - var31 = var32 * 5 + 16711680; - } else if (var32 < 100) { - var31 = 16711935 - (var32 - 50) * 327680; - } else if (var32 < 150) { - var31 = (var32 - 100) * 327680 + 255 - (var32 - 100) * 5; - } - } - - if (Client.overheadTextColors[var24] == 11) { - var32 = 150 - Client.overheadTextCyclesRemaining[var24]; - if (var32 < 50) { - var31 = 16777215 - var32 * 327685; - } else if (var32 < 100) { - var31 = (var32 - 50) * 327685 + 65280; - } else if (var32 < 150) { - var31 = 16777215 - (var32 - 100) * 327680; - } - } - - int var33; - if (Client.overheadTextColors[var24] == 12 && Client.field594[var24] == null) { - var32 = var39.length(); - Client.field594[var24] = new int[var32]; - - for (var33 = 0; var33 < var32; ++var33) { - int var34 = (int)(64.0F * ((float)var33 / (float)var32)); - int var35 = var34 << 10 | 896 | 64; - Client.field594[var24][var33] = class466.field3911[var35]; - } - } - - if (Client.overheadTextEffects[var24] == 0) { - class59.fontBold12.method2098(var39, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.field594[var24]); - } - - if (Client.overheadTextEffects[var24] == 1) { - class59.fontBold12.method2095(var39, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, Client.field594[var24]); - } - - if (Client.overheadTextEffects[var24] == 2) { - class59.fontBold12.method2096(var39, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, Client.field594[var24]); - } - - if (Client.overheadTextEffects[var24] == 3) { - class59.fontBold12.method2097(var39, var0 + Client.viewportTempX, Client.viewportTempY + var1, var31, 0, Client.viewportDrawCount, 150 - Client.overheadTextCyclesRemaining[var24], Client.field594[var24]); - } - - if (Client.overheadTextEffects[var24] == 4) { - var32 = (150 - Client.overheadTextCyclesRemaining[var24]) * (class59.fontBold12.stringWidth(var39) + 100) / 150; - Rasterizer2D.Rasterizer2D_expandClip(var0 + Client.viewportTempX - 50, var1, var0 + Client.viewportTempX + 50, var3 + var1); - class59.fontBold12.method2099(var39, var0 + Client.viewportTempX + 50 - var32, Client.viewportTempY + var1, var31, 0, Client.field594[var24]); - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); - } - - if (Client.overheadTextEffects[var24] == 5) { - var32 = 150 - Client.overheadTextCyclesRemaining[var24]; - var33 = 0; - if (var32 < 25) { - var33 = var32 - 25; - } else if (var32 > 125) { - var33 = var32 - 125; - } + } - Rasterizer2D.Rasterizer2D_expandClip(var0, Client.viewportTempY + var1 - class59.fontBold12.ascent - 1, var0 + var2, Client.viewportTempY + var1 + 5); - class59.fontBold12.method2098(var39, var0 + Client.viewportTempX, var33 + Client.viewportTempY + var1, var31, 0, Client.field594[var24]); - Rasterizer2D.Rasterizer2D_setClip(var0, var1, var0 + var2, var3 + var1); - } - } else { - class59.fontBold12.drawCentered(var39, var0 + Client.viewportTempX, Client.viewportTempY + var1, 16776960, 0); - } + @ObfuscatedName("li") + @ObfuscatedSignature( + descriptor = "([Lnn;Lnn;ZI)V", + garbageValue = "-2026134195" + ) + @Export("revalidateWidgetScroll") + static void revalidateWidgetScroll(Widget[] var0, Widget var1, boolean var2) { + int var3 = var1.scrollWidth != 0 ? var1.scrollWidth : var1.width; + int var4 = var1.scrollHeight != 0 ? var1.scrollHeight : var1.height; + UrlRequest.resizeInterface(var0, var1.id, var3, var4, var2); + if (var1.children != null) { + UrlRequest.resizeInterface(var1.children, var1.id, var3, var4, var2); } - ItemContainer.method469(var0, var1); - ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).animate(Client.field457); - class153.method805(var0, var1, var2, var3); - NPCComposition.cameraX = var11; - class133.cameraY = var12; - class139.cameraZ = var13; - class129.cameraPitch = var14; - UserComparator10.cameraYaw = var15; - if (Client.isLoading && class308.field2819.method1939(true, false) == 0) { - Client.isLoading = false; + InterfaceParent var5 = (InterfaceParent)Client.interfaceParents.get((long)var1.id); + if (var5 != null) { + NPCComposition.method952(var5.group, var3, var4, var2); } - if (Client.isLoading) { - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var3, 0); - FadeInTask.drawLoadingMessage("Loading - please wait.", false); + if (var1.contentType == 1337) { } } diff --git a/osrs/src/main/java/class133.java b/osrs/src/main/java/class133.java index 186345d5f..df8740e39 100644 --- a/osrs/src/main/java/class133.java +++ b/osrs/src/main/java/class133.java @@ -2,46 +2,152 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fl") -public class class133 implements class124 { - @ObfuscatedName("kc") - @Export("cameraY") - static int cameraY; - +@ObfuscatedName("fq") +public class class133 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1296; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1288; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1294; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1292; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1286; @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(IB)Ldh;", - garbageValue = "47" - ) - @Export("getScript") - static Script getScript(int var0) { - Script var1 = (Script)Script.Script_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = GrandExchangeOffer.archive12.takeFile(var0, 0); - if (var2 == null) { - return null; - } else { - var1 = HitSplatDefinition.newScript(var2); - Script.Script_cached.put(var1, (long)var0); - return var1; - } - } + descriptor = "Lfq;" + ) + static final class133 field1297; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1285; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1287; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1291; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1301; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1293; + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1298; + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1299; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1295; + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1300; + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1290; + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "Lfq;" + ) + static final class133 field1289; + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "Ljt;" + ) + @Export("worldMapEvent") + static WorldMapEvent worldMapEvent; + @ObfuscatedName("am") + final int field1303; + @ObfuscatedName("aq") + final int field1304; + @ObfuscatedName("ai") + final int field1302; + + static { + field1296 = new class133(0, 0, (String)null, -1, -1); + field1288 = new class133(1, 1, (String)null, 0, 2); + field1294 = new class133(2, 2, (String)null, 1, 2); + field1292 = new class133(3, 3, (String)null, 2, 2); + field1286 = new class133(4, 4, (String)null, 3, 1); + field1297 = new class133(5, 5, (String)null, 4, 1); + field1285 = new class133(6, 6, (String)null, 5, 1); + field1287 = new class133(7, 7, (String)null, 6, 3); + field1291 = new class133(8, 8, (String)null, 7, 3); + field1301 = new class133(9, 9, (String)null, 8, 3); + field1293 = new class133(10, 10, (String)null, 0, 7); + field1298 = new class133(11, 11, (String)null, 1, 7); + field1299 = new class133(12, 12, (String)null, 2, 7); + field1295 = new class133(13, 13, (String)null, 3, 7); + field1300 = new class133(14, 14, (String)null, 4, 7); + field1290 = new class133(15, 15, (String)null, 5, 7); + field1289 = new class133(16, 16, (String)null, 0, 5); } - @ObfuscatedName("hw") @ObfuscatedSignature( - descriptor = "(IZZZZI)Lnk;", - garbageValue = "1423183196" + descriptor = "(IILjava/lang/String;II)V", + garbageValue = "-1" ) - @Export("newArchive") - static Archive newArchive(int var0, boolean var1, boolean var2, boolean var3, boolean var4) { - ArchiveDisk var5 = null; - if (JagexCache.JagexCache_dat2File != null) { - var5 = new ArchiveDisk(var0, JagexCache.JagexCache_dat2File, WallDecoration.JagexCache_idxFiles[var0], 1000000); - } + class133(int var1, int var2, String var3, int var4, int var5) { + this.field1303 = var1; + this.field1304 = var2; + this.field1302 = var4; + } - return new Archive(var5, class6.masterDisk, class308.field2819, var0, var1, var2, var3, var4); + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-2145781629" + ) + int method729() { + return this.field1302; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field1304; } } \ No newline at end of file diff --git a/osrs/src/main/java/class134.java b/osrs/src/main/java/class134.java index 6c419c90b..5d5b4a9f6 100644 --- a/osrs/src/main/java/class134.java +++ b/osrs/src/main/java/class134.java @@ -6,291 +6,173 @@ @ObfuscatedName("fe") class class134 implements Callable { - @ObfuscatedName("qj") - static int field1294; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + @Export("runesSprite") + static IndexedSprite[] runesSprite; + @ObfuscatedName("ko") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + static IndexedSprite[] field1307; + @ObfuscatedName("uc") + @Export("cameraLookAtAcceleration") + static int cameraMoveToAcceleration; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfv;" + descriptor = "Lfo;" ) @Export("this$0") @ObfuscatedName("this$0") - final class137 this$0; + final class139 this$0; + // $FF: synthetic field + @Export("val$workStart") + @ObfuscatedName("val$workStart") + final int val$workStart; + // $FF: synthetic field + @Export("val$workEnd") + @ObfuscatedName("val$workEnd") + final int val$workEnd; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "[Lfd;" ) - @Export("val$p") - @ObfuscatedName("val$p") - final Buffer val$p; - // $FF: synthetic field - @Export("val$version") - @ObfuscatedName("val$version") - final int val$version; + @Export("val$curveLoadJobs") + @ObfuscatedName("val$curveLoadJobs") + final class130[] val$curveLoadJobs; @ObfuscatedSignature( - descriptor = "(Lfv;Ltm;I)V" + descriptor = "(Lfo;II[Lfd;)V" ) - class134(class137 var1, Buffer var2, int var3) { + class134(class139 var1, int var2, int var3, class130[] var4) { this.this$0 = var1; - this.val$p = var2; - this.val$version = var3; + this.val$workStart = var2; + this.val$workEnd = var3; + this.val$curveLoadJobs = var4; } @Export("call") @ObfuscatedName("call") public Object call() { - this.this$0.method745(this.val$p, this.val$version); + for (int var1 = this.val$workStart; var1 < this.val$workEnd; ++var1) { + this.val$curveLoadJobs[var1].call(); + } + return null; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;B)J", - garbageValue = "-41" + descriptor = "(IIII)Z", + garbageValue = "392757608" ) - static long method739(CharSequence var0) { - long var1 = 0L; - int var3 = var0.length(); - - for (int var4 = 0; var4 < var3; ++var4) { - var1 *= 37L; - char var5 = var0.charAt(var4); - if (var5 >= 'A' && var5 <= 'Z') { - var1 += (long)(var5 + 1 - 65); - } else if (var5 >= 'a' && var5 <= 'z') { - var1 += (long)(var5 + 1 - 97); - } else if (var5 >= '0' && var5 <= '9') { - var1 += (long)(var5 + 27 - 48); - } - - if (var1 >= 177917621779460413L) { - break; - } - } - - while (var1 % 37L == 0L && var1 != 0L) { - var1 /= 37L; - } - - return var1; + static boolean method730(int var0, int var1, int var2) { + return var0 >= 0 && var0 < 4 && var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104; } - @ObfuscatedName("lc") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IIIIB)V", - garbageValue = "3" + descriptor = "(II)I", + garbageValue = "-1168679162" ) - @Export("addSceneMenuOptions") - static final void addSceneMenuOptions(int var0, int var1, int var2, int var3) { - if (Client.isItemSelected == 0 && !Client.isSpellSelected) { - class385.insertMenuItemNoShift("Walk here", "", 23, 0, var0 - var2, var1 - var3); - } - - long var4 = -1L; - long var6 = -1L; - int var8 = 0; - - while (true) { - int var10 = ViewportMouse.ViewportMouse_entityCount; - if (var8 >= var10) { - if (var4 != -1L) { - var8 = (int)(var4 >>> 0 & 127L); - var10 = (int)(var4 >>> 7 & 127L); - Player var12 = Client.players[Client.combatTargetPlayerIndex]; - ItemLayer.addPlayerToMenu(var12, Client.combatTargetPlayerIndex, var8, var10); - } + public static int method731(int var0) { + return (var0 & class520.field4148) - 1; + } - return; + @ObfuscatedName("by") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "1497825445" + ) + static int method732(int var0, Script var1, boolean var2) { + if (var0 == 6200) { + DbTableType.Interpreter_intStackSize -= 2; + Client.field640 = (short)class354.method1896(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + if (Client.field640 <= 0) { + Client.field640 = 256; } - long var25 = WorldMapSectionType.method1515(var8); - if (var6 != var25) { - label309: { - var6 = var25; - int var13 = Interpreter.method417(var8); - int var14 = PcmPlayer.method197(var8); - int var15 = class177.method918(ViewportMouse.ViewportMouse_entityTags[var8]); - int var17 = InvDefinition.Entity_unpackID(ViewportMouse.ViewportMouse_entityTags[var8]); - int var18 = var17; - int var22; - if (var15 == 2 && class130.scene.getObjectFlags(HealthBar.Client_plane, var13, var14, var25) >= 0) { - ObjectComposition var19 = WorldMapElement.getObjectDefinition(var17); - if (var19.transforms != null) { - var19 = var19.transform(); - } - - if (var19 == null) { - break label309; - } - - PendingSpawn var20 = null; - - for (PendingSpawn var21 = (PendingSpawn)Client.pendingSpawns.last(); var21 != null; var21 = (PendingSpawn)Client.pendingSpawns.previous()) { - if (var21.plane == HealthBar.Client_plane && var13 == var21.x && var14 == var21.y && var18 == var21.id) { - var20 = var21; - break; - } - } - - if (Client.isItemSelected == 1) { - class385.insertMenuItemNoShift("Use", Client.field599 + " " + "->" + " " + MoveSpeed.colorStartTag(65535) + var19.name, 1, var18, var13, var14); - } else if (Client.isSpellSelected) { - if ((Canvas.selectedSpellFlags & 4) == 4) { - class385.insertMenuItemNoShift(Client.field600, Client.field601 + " " + "->" + " " + MoveSpeed.colorStartTag(65535) + var19.name, 2, var18, var13, var14); - } - } else { - String[] var34 = var19.actions; - if (var34 != null) { - for (var22 = 4; var22 >= 0; --var22) { - if ((var20 == null || var20.method507(var22)) && var34[var22] != null) { - short var23 = 0; - if (var22 == 0) { - var23 = 3; - } - - if (var22 == 1) { - var23 = 4; - } - - if (var22 == 2) { - var23 = 5; - } - - if (var22 == 3) { - var23 = 6; - } - - if (var22 == 4) { - var23 = 1001; - } - - class385.insertMenuItemNoShift(var34[var22], MoveSpeed.colorStartTag(65535) + var19.name, var23, var18, var13, var14); - } - } - } - - class385.insertMenuItemNoShift("Examine", MoveSpeed.colorStartTag(65535) + var19.name, 1002, var19.id, var13, var14); - } - } - - int var27; - Player var28; - NPC var35; - int[] var36; - if (var15 == 1) { - NPC var30 = Client.npcs[var18]; - if (var30 == null) { - break label309; - } - - if (var30.definition.size == 1 && (var30.x & 127) == 64 && (var30.y & 127) == 64) { - for (var27 = 0; var27 < Client.npcCount; ++var27) { - var35 = Client.npcs[Client.npcIndices[var27]]; - if (var35 != null && var30 != var35 && var35.definition.size == 1 && var30.x == var35.x && var35.y == var30.y) { - class260.addNpcToMenu(var35, Client.npcIndices[var27], var13, var14); - } - } - - var27 = Players.Players_count; - var36 = Players.Players_indices; - - for (var22 = 0; var22 < var27; ++var22) { - var28 = Client.players[var36[var22]]; - if (var28 != null && var30.x == var28.x && var28.y == var30.y) { - ItemLayer.addPlayerToMenu(var28, var36[var22], var13, var14); - } - } - } - - class260.addNpcToMenu(var30, var18, var13, var14); - } - - if (var15 == 0) { - Player var31 = Client.players[var18]; - if (var31 == null) { - break label309; - } - - if ((var31.x & 127) == 64 && (var31.y & 127) == 64) { - for (var27 = 0; var27 < Client.npcCount; ++var27) { - var35 = Client.npcs[Client.npcIndices[var27]]; - if (var35 != null && var35.definition.size == 1 && var35.x == var31.x && var35.y == var31.y) { - class260.addNpcToMenu(var35, Client.npcIndices[var27], var13, var14); - } - } - - var27 = Players.Players_count; - var36 = Players.Players_indices; - - for (var22 = 0; var22 < var27; ++var22) { - var28 = Client.players[var36[var22]]; - if (var28 != null && var31 != var28 && var31.x == var28.x && var28.y == var31.y) { - ItemLayer.addPlayerToMenu(var28, var36[var22], var13, var14); - } - } - } - - if (var18 != Client.combatTargetPlayerIndex) { - ItemLayer.addPlayerToMenu(var31, var18, var13, var14); - } else { - var4 = var25; - } - } - - if (var15 == 3) { - NodeDeque var32 = Client.groundItems[HealthBar.Client_plane][var13][var14]; - if (var32 != null) { - for (TileItem var33 = (TileItem)var32.first(); var33 != null; var33 = (TileItem)var32.next()) { - ItemComposition var37 = InvDefinition.ItemDefinition_get(var33.id); - if (Client.isItemSelected == 1) { - class385.insertMenuItemNoShift("Use", Client.field599 + " " + "->" + " " + MoveSpeed.colorStartTag(16748608) + var37.name, 16, var33.id, var13, var14); - } else if (Client.isSpellSelected) { - if ((Canvas.selectedSpellFlags & 1) == 1) { - class385.insertMenuItemNoShift(Client.field600, Client.field601 + " " + "->" + " " + MoveSpeed.colorStartTag(16748608) + var37.name, 17, var33.id, var13, var14); - } - } else { - String[] var29 = var37.groundActions; + Client.field636 = (short)class354.method1896(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + if (Client.field636 <= 0) { + Client.field636 = 256; + } - for (int var38 = 4; var38 >= 0; --var38) { - if (var33.method610(var38)) { - if (var29 != null && var29[var38] != null) { - byte var24 = 0; - if (var38 == 0) { - var24 = 18; - } + return 1; + } else if (var0 == 6201) { + DbTableType.Interpreter_intStackSize -= 2; + Client.zoomHeight = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + if (Client.zoomHeight <= 0) { + Client.zoomHeight = 256; + } - if (var38 == 1) { - var24 = 19; - } + Client.zoomWidth = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (Client.zoomWidth <= 0) { + Client.zoomWidth = 320; + } - if (var38 == 2) { - var24 = 20; - } + return 1; + } else if (var0 == 6202) { + DbTableType.Interpreter_intStackSize -= 4; + Client.field639 = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + if (Client.field639 <= 0) { + Client.field639 = 1; + } - if (var38 == 3) { - var24 = 21; - } + Client.field637 = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (Client.field637 <= 0) { + Client.field637 = 32767; + } else if (Client.field637 < Client.field639) { + Client.field637 = Client.field639; + } - if (var38 == 4) { - var24 = 22; - } + Client.field638 = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + if (Client.field638 <= 0) { + Client.field638 = 1; + } - class385.insertMenuItemNoShift(var29[var38], MoveSpeed.colorStartTag(16748608) + var37.name, var24, var33.id, var13, var14); - } else if (var38 == 2) { - class385.insertMenuItemNoShift("Take", MoveSpeed.colorStartTag(16748608) + var37.name, 20, var33.id, var13, var14); - } - } - } + Client.field634 = (short)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + if (Client.field634 <= 0) { + Client.field634 = 32767; + } else if (Client.field634 < Client.field638) { + Client.field634 = Client.field638; + } - class385.insertMenuItemNoShift("Examine", MoveSpeed.colorStartTag(16748608) + var37.name, 1004, var33.id, var13, var14); - } - } - } - } - } + return 1; + } else if (var0 == 6203) { + if (Client.viewportWidget != null) { + class348.setViewportShape(0, 0, Client.viewportWidget.width, Client.viewportWidget.height, false); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.viewportWidth; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.viewportHeight; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; } - ++var8; + return 1; + } else if (var0 == 6204) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.zoomHeight; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.zoomWidth; + return 1; + } else if (var0 == 6205) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class142.method758(Client.field640); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class142.method758(Client.field636); + return 1; + } else if (var0 == 6220) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 6221) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else if (var0 == 6222) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Language.canvasWidth; + return 1; + } else if (var0 == 6223) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class47.canvasHeight; + return 1; + } else { + return 2; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class135.java b/osrs/src/main/java/class135.java index 08c184ed1..f726be2f6 100644 --- a/osrs/src/main/java/class135.java +++ b/osrs/src/main/java/class135.java @@ -1,649 +1,85 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fd") -public class class135 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIIB)Lui;", - garbageValue = "108" - ) - static SpritePixels method741(int var0, int var1, int var2) { - DemotingHashTable var3 = WorldMapRegion.WorldMapRegion_cachedSprites; - long var4 = (long)(var2 << 16 | var0 << 8 | var1); - return (SpritePixels)var3.get(var4); - } +import java.util.ArrayList; - @ObfuscatedName("bb") +@ObfuscatedName("ff") +public class class135 implements class125 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lmi;III)V", - garbageValue = "-1092198621" + descriptor = "(Lol;Lol;IZB)Lko;", + garbageValue = "1" ) - public static void method742(Widget var0, int var1, int var2) { - PlayerComposition var3 = var0.field3101; - boolean var4 = var2 != var3.field2916; - var3.field2916 = var2; - if (var4) { - int var5; - int var6; - if (var3.field2916 == var1) { - for (var5 = 0; var5 < PlayerComposition.equipmentIndices.length; ++var5) { - var6 = PlayerComposition.equipmentIndices[var5]; - if (var3.equipment[var6] > 0 && var3.equipment[var6] < 512) { - var3.equipment[var6] = var3.field2913[var6]; - } - } + public static Frames method733(AbstractArchive var0, AbstractArchive var1, int var2, boolean var3) { + boolean var4 = true; + int[] var5 = var0.getGroupFileIds(var2); + + for (int var6 = 0; var6 < var5.length; ++var6) { + byte[] var7 = var0.getFile(var2, var5[var6]); + if (var7 == null) { + var4 = false; } else { - if (var3.equipment[0] < 512 || Actor.method522(var3)) { - var3.equipment[class209.field1862.field1871] = 1; + int var8 = (var7[0] & 255) << 8 | var7[1] & 255; + byte[] var9; + if (var3) { + var9 = var1.getFile(0, var8); + } else { + var9 = var1.getFile(var8, 0); } - for (var5 = 0; var5 < 7; ++var5) { - var6 = PlayerComposition.equipmentIndices[var5]; - if (var3.equipment[var6] > 0 && var3.equipment[var6] < 512) { - int[] var7 = var3.equipment; - - for (int var8 = 0; var8 < KitDefinition.KitDefinition_fileCount; ++var8) { - KitDefinition var9 = ClanChannel.KitDefinition_get(var8); - if (var9 != null && !var9.nonSelectable && var5 + (var2 == 1 ? 7 : 0) == var9.bodypartID) { - var7[PlayerComposition.equipmentIndices[var5]] = var8 + 256; - break; - } - } - } + if (var9 == null) { + var4 = false; } } } - var3.method1729(); - } - - @ObfuscatedName("kw") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1108375870" - ) - @Export("updateItemPile") - static final void updateItemPile(int var0, int var1) { - NodeDeque var2 = Client.groundItems[HealthBar.Client_plane][var0][var1]; - if (var2 == null) { - class130.scene.removeGroundItemPile(HealthBar.Client_plane, var0, var1); + if (!var4) { + return null; } else { - long var3 = -99999999L; - TileItem var5 = null; - - TileItem var6; - for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { - ItemComposition var7 = InvDefinition.ItemDefinition_get(var6.id); - long var8 = (long)var7.price; - if (var7.isStackable == 1) { - var8 *= var6.quantity < Integer.MAX_VALUE ? (long)(var6.quantity + 1) : (long)var6.quantity; - } - - if (var8 > var3) { - var3 = var8; - var5 = var6; - } - } - - if (var5 == null) { - class130.scene.removeGroundItemPile(HealthBar.Client_plane, var0, var1); - } else { - var2.addLast(var5); - TileItem var12 = null; - TileItem var11 = null; - - for (var6 = (TileItem)var2.last(); var6 != null; var6 = (TileItem)var2.previous()) { - if (var6.id != var5.id) { - if (var12 == null) { - var12 = var6; - } - - if (var6.id != var12.id && var11 == null) { - var11 = var6; - } - } - } - - long var9 = FontName.calculateTag(var0, var1, 3, false, 0); - class130.scene.newGroundItemPile(HealthBar.Client_plane, var0, var1, class18.getTileHeight(var0 * 128 + 64, var1 * 128 + 64, HealthBar.Client_plane), var5, var9, var12, var11); + try { + return new Frames(var0, var1, var2, var3); + } catch (Exception var11) { + return null; } } } - @ObfuscatedName("lz") + @ObfuscatedName("if") @ObfuscatedSignature( - descriptor = "([Lmi;IIIIIIIII)V", - garbageValue = "-1671360760" + descriptor = "(Ljava/util/ArrayList;IIIIB)V", + garbageValue = "112" ) - @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.method1199(); - - for (int var9 = 0; var9 < var0.length; ++var9) { - Widget var10 = var0[var9]; - if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) { - int var11; - if (var8 == -1) { - Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; - Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y; - Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width; - Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height; - var11 = ++Client.rootWidgetCount - 1; + static void method734(ArrayList var0, int var1, int var2, int var3, int var4) { + if (!var0.isEmpty()) { + int var5 = (Integer)var0.get(0); + if (var5 == -1 && !Client.playingJingle) { + WorldMapManager.method1265(0, 0); + } else if (var5 != -1) { + boolean var6; + if (class316.field2787.isEmpty()) { + var6 = false; } else { - var11 = var8; + MusicSong var7 = (MusicSong)class316.field2787.get(0); + var6 = var7 != null && var5 == var7.musicTrackGroupId; } - var10.rootIndex = var11; - var10.cycle = Client.cycle; - if (!var10.isIf3 || !class143.isComponentHidden(var10)) { - if (var10.contentType > 0) { - StructComposition.method1025(var10); - } - - int var12 = var10.x + var6; - int var13 = var7 + var10.y; - int var14 = var10.transparencyTop; - int var15; - int var16; - if (var10 == Client.clickedWidget) { - if (var1 != -1412584499 && !var10.isScrollBar) { - class162.field1420 = var0; - class134.field1294 = var6; - class326.field2893 = var7; - continue; - } - - if (Client.isDraggingWidget && Client.field395) { - var15 = MouseHandler.MouseHandler_x; - var16 = MouseHandler.MouseHandler_y; - var15 -= Client.widgetClickX; - var16 -= Client.widgetClickY; - if (var15 < Client.field514) { - var15 = Client.field514; - } - - if (var15 + var10.width > Client.field514 + Client.clickedWidgetParent.width) { - var15 = Client.field514 + Client.clickedWidgetParent.width - var10.width; - } - - if (var16 < Client.field513) { - var16 = Client.field513; - } - - if (var16 + var10.height > Client.field513 + Client.clickedWidgetParent.height) { - var16 = Client.field513 + Client.clickedWidgetParent.height - var10.height; - } + if (!var6 && WorldMapIcon_1.clientPreferences.getCurrentMusicVolume() != 0) { + ArrayList var9 = new ArrayList(); - var12 = var15; - var13 = var16; - } - - if (!var10.isScrollBar) { - var14 = 128; - } + for (int var8 = 0; var8 < var0.size(); ++var8) { + var9.add(new MusicSong(class514.archive6, (Integer)var0.get(var8), 0, WorldMapIcon_1.clientPreferences.getCurrentMusicVolume(), false)); } - int var17; - int var18; - int var19; - int var20; - int var21; - int var22; - if (var10.type == 9) { - var19 = var12; - var20 = var13; - var21 = var12 + var10.width; - var22 = var13 + var10.height; - if (var21 < var12) { - var19 = var21; - var21 = var12; - } - - if (var22 < var13) { - var20 = var22; - var22 = var13; - } - - ++var21; - ++var22; - var15 = var19 > var2 ? var19 : var2; - var16 = var20 > var3 ? var20 : var3; - var17 = var21 < var4 ? var21 : var4; - var18 = var22 < var5 ? var22 : var5; + if (Client.playingJingle) { + class316.field2787.clear(); + class316.field2787.addAll(var9); + EnumComposition.method925(var1, var2, var3, var4); } else { - var19 = var12 + var10.width; - var20 = var13 + var10.height; - var15 = var12 > var2 ? var12 : var2; - var16 = var13 > var3 ? var13 : var3; - var17 = var19 < var4 ? var19 : var4; - var18 = var20 < var5 ? var20 : var5; - } - - if (!var10.isIf3 || var15 < var17 && var16 < var18) { - if (var10.contentType != 0) { - if (var10.contentType == 1336) { - if (class449.clientPreferences.method550()) { - var13 += 15; - SecureRandomCallable.fontPlain12.drawRightAligned("Fps:" + GameEngine.fps, var12 + var10.width, var13, 16776960, -1); - var13 += 15; - Runtime var41 = Runtime.getRuntime(); - var20 = (int)((var41.totalMemory() - var41.freeMemory()) / 1024L); - var21 = 16776960; - if (var20 > 327680 && !Client.isLowDetail) { - var21 = 16711680; - } - - SecureRandomCallable.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1); - var13 += 15; - } - continue; - } - - if (var10.contentType == 1337) { - Client.viewportX = var12; - Client.viewportY = var13; - class132.drawEntities(var12, var13, var10.width, var10.height); - Client.field407[var10.rootIndex] = true; - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - continue; - } - - if (var10.contentType == 1338) { - class6.drawMinimap(var10, var12, var13, var11); - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - continue; - } - - if (var10.contentType == 1339) { - class11.drawCompass(var10, var12, var13, var11); - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - continue; - } - - if (var10.contentType == 1400) { - Canvas.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle); - } - - if (var10.contentType == 1401) { - Canvas.worldMap.drawOverview(var12, var13, var10.width, var10.height); - } - - if (var10.contentType == 1402) { - class139.field1323.draw(var12, Client.cycle); - } - } - - if (var10.type == 0) { - if (!var10.isIf3 && class143.isComponentHidden(var10) && var10 != class146.mousedOverWidgetIf1) { - continue; - } - - if (!var10.isIf3) { - if (var10.scrollY > var10.scrollHeight - var10.height) { - var10.scrollY = var10.scrollHeight - var10.height; - } - - if (var10.scrollY < 0) { - var10.scrollY = 0; - } - } - - drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); - if (var10.children != null) { - drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); - } - - InterfaceParent var28 = (InterfaceParent)Client.interfaceParents.get((long)var10.id); - if (var28 != null) { - class36.drawWidgets(var28.group, var15, var16, var17, var18, var12, var13, var11); - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - Rasterizer3D.method1199(); - } else if (var10.type == 11) { - if (class143.isComponentHidden(var10) && var10 != class146.mousedOverWidgetIf1) { - continue; - } - - if (var10.children != null) { - drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - Rasterizer3D.method1199(); - } - - if (Client.isResizable || Client.field409[var11] || Client.gameDrawingMode > 1) { - if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) { - class164.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight); - } - - if (var10.type != 1) { - if (var10.type == 3) { - if (class27.runCs1(var10)) { - var19 = var10.color2; - if (var10 == class146.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { - var19 = var10.mouseOverColor2; - } - } else { - var19 = var10.color; - if (var10 == class146.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { - var19 = var10.mouseOverColor; - } - } - - if (var10.fill) { - switch(var10.fillMode.field4233) { - case 1: - Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); - break; - case 2: - Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255)); - break; - default: - if (var14 == 0) { - Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19); - } else { - Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); - } - } - } else if (var14 == 0) { - Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19); - } else { - Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); - } - } else if (var10.type == 4) { - Font var40 = var10.getFont(); - if (var40 == null) { - if (Widget.field2945) { - class218.invalidateWidget(var10); - } - } else { - String var42 = var10.text; - if (class27.runCs1(var10)) { - var20 = var10.color2; - if (var10 == class146.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { - var20 = var10.mouseOverColor2; - } - - if (var10.text2.length() > 0) { - var42 = var10.text2; - } - } else { - var20 = var10.color; - if (var10 == class146.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { - var20 = var10.mouseOverColor; - } - } - - if (var10.isIf3 && var10.itemId != -1) { - ItemComposition var43 = InvDefinition.ItemDefinition_get(var10.itemId); - var42 = var43.name; - if (var42 == null) { - var42 = "null"; - } - - if ((var43.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) { - var42 = MoveSpeed.colorStartTag(16748608) + var42 + "" + " " + 'x' + WorldMapData_0.formatItemStacks(var10.itemQuantity); - } - } - - if (var10 == Client.meslayerContinueWidget) { - var42 = "Please wait..."; - var20 = var10.color; - } - - if (!var10.isIf3) { - var42 = WorldMapSectionType.method1516(var42, var10); - } - - var40.method2093(var42, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, class466.method2347(var10.transparencyTop), var10.textXAlignment, var10.textYAlignment, var10.textLineHeight); - } - } else { - int var23; - int var24; - int var25; - if (var10.type == 5) { - SpritePixels var38; - if (!var10.isIf3) { - var38 = var10.getSprite(class27.runCs1(var10), FriendsChat.urlRequester); - if (var38 != null) { - var38.drawTransBgAt(var12, var13); - } else if (Widget.field2945) { - class218.invalidateWidget(var10); - } - } else { - if (var10.itemId != -1) { - var38 = class4.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false); - } else { - var38 = var10.getSprite(false, FriendsChat.urlRequester); - } - - if (var38 == null) { - if (Widget.field2945) { - class218.invalidateWidget(var10); - } - } else { - var20 = var38.width; - var21 = var38.height; - if (!var10.spriteTiling) { - var22 = var10.width * 4096 / var20; - if (var10.spriteAngle != 0) { - var38.method2687(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22); - } else if (var14 != 0) { - var38.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255)); - } else if (var20 == var10.width && var21 == var10.height) { - var38.drawTransBgAt(var12, var13); - } else { - var38.drawScaledAt(var12, var13, var10.width, var10.height); - } - } else { - Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height); - var22 = (var20 - 1 + var10.width) / var20; - var23 = (var21 - 1 + var10.height) / var21; - - for (var24 = 0; var24 < var22; ++var24) { - for (var25 = 0; var25 < var23; ++var25) { - if (var10.spriteAngle != 0) { - var38.method2687(var20 / 2 + var12 + var20 * var24, var21 / 2 + var13 + var21 * var25, var10.spriteAngle, 4096); - } else if (var14 != 0) { - var38.drawTransAt(var12 + var20 * var24, var13 + var21 * var25, 256 - (var14 & 255)); - } else { - var38.drawTransBgAt(var12 + var20 * var24, var13 + var21 * var25); - } - } - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - } - } - } - } else { - int var34; - if (var10.type == 6) { - boolean var36 = class27.runCs1(var10); - if (var36) { - var20 = var10.sequenceId2; - } else { - var20 = var10.sequenceId; - } - - Model var39 = null; - var22 = 0; - if (var10.itemId != -1) { - ItemComposition var44 = InvDefinition.ItemDefinition_get(var10.itemId); - if (var44 != null) { - var44 = var44.getCountObj(var10.itemQuantity); - var39 = var44.getModel(1); - if (var39 != null) { - var39.calculateBoundsCylinder(); - var22 = var39.height / 2; - } else { - class218.invalidateWidget(var10); - } - } - } else if (var10.modelType == 5) { - if (var10.modelId == 0) { - var39 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1); - } else { - var39 = VarbitComposition.localPlayer.getModel(); - } - } else if (var10.modelType == 7) { - var39 = var10.field3101.getModel((SequenceDefinition)null, -1, EnumComposition.SequenceDefinition_get(VarbitComposition.localPlayer.idleSequence), VarbitComposition.localPlayer.movementFrame); - } else { - NPCComposition var45 = null; - NewShit var32 = null; - if (var10.modelType == 6) { - var25 = var10.modelId; - if (var25 >= 0 && var25 < Client.npcs.length) { - NPC var26 = Client.npcs[var25]; - if (var26 != null) { - var45 = var26.definition; - var32 = var26.method593(); - } - } - } - - SequenceDefinition var33 = null; - var34 = -1; - if (var20 != -1) { - var33 = EnumComposition.SequenceDefinition_get(var20); - var34 = var10.modelFrame; - } - - var39 = var10.getModel(var33, var34, var36, VarbitComposition.localPlayer.appearance, var45, var32); - if (var39 == null && Widget.field2945) { - class218.invalidateWidget(var10); - } - } - - Rasterizer3D.method1202(var10.width / 2 + var12, var10.height / 2 + var13); - var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16; - var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16; - if (var39 != null) { - if (!var10.isIf3) { - var39.method1338(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24); - } else { - var39.calculateBoundsCylinder(); - if (var10.modelOrthog) { - var39.method1339(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var23 + var22 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom); - } else { - var39.method1338(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var23 + var22 + var10.modelOffsetY, var24 + var10.modelOffsetY); - } - } - } - - Rasterizer3D.method1201(); - } else { - Font var29; - if (var10.type == 8 && var10 == class343.field3147 && Client.field498 == Client.field496) { - var19 = 0; - var20 = 0; - var29 = SecureRandomCallable.fontPlain12; - String var30 = var10.text; - - String var31; - for (var30 = WorldMapSectionType.method1516(var30, var10); var30.length() > 0; var20 = var20 + var29.ascent + 1) { - var24 = var30.indexOf("
"); - if (var24 != -1) { - var31 = var30.substring(0, var24); - var30 = var30.substring(var24 + 4); - } else { - var31 = var30; - var30 = ""; - } - - var25 = var29.stringWidth(var31); - if (var25 > var19) { - var19 = var25; - } - } - - var19 += 6; - var20 += 7; - var24 = var12 + var10.width - 5 - var19; - var25 = var13 + var10.height + 5; - if (var24 < var12 + 5) { - var24 = var12 + 5; - } - - if (var19 + var24 > var4) { - var24 = var4 - var19; - } - - if (var20 + var25 > var5) { - var25 = var5 - var20; - } - - Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120); - Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0); - var30 = var10.text; - var34 = var25 + var29.ascent + 2; - - for (var30 = WorldMapSectionType.method1516(var30, var10); var30.length() > 0; var34 = var34 + var29.ascent + 1) { - int var27 = var30.indexOf("
"); - if (var27 != -1) { - var31 = var30.substring(0, var27); - var30 = var30.substring(var27 + 4); - } else { - var31 = var30; - var30 = ""; - } - - var29.draw(var31, var24 + 3, var34, 0, -1); - } - } - - if (var10.type == 9) { - if (var10.field2962) { - var19 = var12; - var20 = var13 + var10.height; - var21 = var12 + var10.width; - var22 = var13; - } else { - var19 = var12; - var20 = var13; - var21 = var12 + var10.width; - var22 = var13 + var10.height; - } - - if (var10.lineWid == 1) { - Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color); - } else { - Language.method1977(var19, var20, var21, var22, var10.color, var10.lineWid); - } - } else if (var10.type == 12) { - class329 var37 = var10.method1844(); - class324 var35 = var10.method1845(); - if (var37 != null && var35 != null && var37.method1787()) { - var29 = var10.getFont(); - if (var29 != null) { - Client.field651.method2694(var12, var13, var10.width, var10.height, var37.method1788(), var37.method1789(), var37.method1785(), var37.method1786(), var37.method1784()); - var22 = var10.textShadowed ? var10.spriteShadow * -2076930741 * -1858431901 : -1; - if (!var37.method1782() && var37.method1779().method2038()) { - Client.field651.method2695(var35.field2891, var22, var35.field2892, var35.field2890); - Client.field651.method2696(var37.method1780(), var29); - } else { - Client.field651.method2695(var10.color, var22, var35.field2892, var35.field2890); - Client.field651.method2696(var37.method1779(), var29); - } - - Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); - } - } - } - } - } - } - } - } + PendingSpawn.method505(var9, var1, var2, var3, var4, false); } } } - } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class136.java b/osrs/src/main/java/class136.java index e02d03735..fe0101635 100644 --- a/osrs/src/main/java/class136.java +++ b/osrs/src/main/java/class136.java @@ -1,53 +1,13 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.Callable; +import java.util.concurrent.ThreadFactory; -@ObfuscatedName("fj") -class class136 implements Callable { - @ObfuscatedName("cg") - static int field1295; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lfv;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class137 this$0; - // $FF: synthetic field - @Export("val$workStart") - @ObfuscatedName("val$workStart") - final int val$workStart; - // $FF: synthetic field - @Export("val$workEnd") - @ObfuscatedName("val$workEnd") - final int val$workEnd; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "[Lep;" - ) - @Export("val$curveLoadJobs") - @ObfuscatedName("val$curveLoadJobs") - final class129[] val$curveLoadJobs; - - @ObfuscatedSignature( - descriptor = "(Lfv;II[Lep;)V" - ) - class136(class137 var1, int var2, int var3, class129[] var4) { - this.this$0 = var1; - this.val$workStart = var2; - this.val$workEnd = var3; - this.val$curveLoadJobs = var4; - } - - @Export("call") - @ObfuscatedName("call") - public Object call() { - for (int var1 = this.val$workStart; var1 < this.val$workEnd; ++var1) { - this.val$curveLoadJobs[var1].call(); - } - - return null; +@ObfuscatedName("fb") +final class class136 implements ThreadFactory { + @Export("newThread") + @ObfuscatedName("newThread") + public Thread newThread(Runnable var1) { + return new Thread(var1, "OSRS Maya Anim Load"); } } \ No newline at end of file diff --git a/osrs/src/main/java/class137.java b/osrs/src/main/java/class137.java index 117f34f74..ebcdb2384 100644 --- a/osrs/src/main/java/class137.java +++ b/osrs/src/main/java/class137.java @@ -2,413 +2,100 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.Future; -import java.util.concurrent.ThreadPoolExecutor; +@ObfuscatedName("fr") +public class class137 { + @ObfuscatedName("ar") + @Export("WorldMapElement_count") + public static int WorldMapElement_count; -@ObfuscatedName("fv") -public class class137 extends DualNode { - @ObfuscatedName("ap") - public static ThreadPoolExecutor field1296; - @ObfuscatedName("ad") - @Export("Interpreter_stringStackSize") - static int Interpreter_stringStackSize; - @ObfuscatedName("au") - int field1301; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "[[Lfh;" - ) - public class130[][] field1304; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "[[Lfh;" - ) - class130[][] field1299; @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Liu;" - ) - public Skeleton field1305; - @ObfuscatedName("ac") - int field1300; - @ObfuscatedName("ai") - boolean field1298; - @ObfuscatedName("aa") - Future field1303; - @ObfuscatedName("af") - List field1302; - - @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;IZ)V", - garbageValue = "0" + descriptor = "(CB)B", + garbageValue = "71" ) - public class137(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) { - this.field1304 = null; - this.field1299 = null; - this.field1300 = 0; - this.field1301 = var3; - byte[] var5 = var1.takeFile(this.field1301 >> 16 & 65535, this.field1301 & 65535); - Buffer var6 = new Buffer(var5); - int var7 = var6.readUnsignedByte(); - int var8 = var6.readUnsignedShort(); - byte[] var9 = var2.getFile(var8, 0); - this.field1305 = new Skeleton(var8, var9); - this.field1302 = new ArrayList(); - this.field1303 = field1296.submit(new class134(this, var6, var7)); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;IB)V", - garbageValue = "100" - ) - void method745(Buffer var1, int var2) { - var1.readUnsignedShort(); - var1.readUnsignedShort(); - this.field1300 = var1.readUnsignedByte(); - int var3 = var1.readUnsignedShort(); - this.field1299 = new class130[this.field1305.method1231().method1212()][]; - this.field1304 = new class130[this.field1305.method1230()][]; - class129[] var4 = new class129[var3]; - - int var5; - int var7; - int var9; - for (var5 = 0; var5 < var3; ++var5) { - var7 = var1.readUnsignedByte(); - class131 var8 = (class131)KeyHandler.findEnumerated(WorldMapSprite.method1533(), var7); - if (var8 == null) { - var8 = class131.field1268; - } - - var9 = var1.readShortSmart(); - int var11 = var1.readUnsignedByte(); - class132[] var12 = new class132[]{class132.field1288, class132.field1277, class132.field1283, class132.field1287, class132.field1275, class132.field1280, class132.field1289, class132.field1284, class132.field1273, class132.field1278, class132.field1276, class132.field1285, class132.field1281, class132.field1282, class132.field1286, class132.field1274, class132.field1279}; - class132 var13 = (class132)KeyHandler.findEnumerated(var12, var11); - if (var13 == null) { - var13 = class132.field1288; - } - - class130 var20 = new class130(); - var20.method718(var1, var2); - var4[var5] = new class129(this, var20, var8, var13, var9); - int var14 = var8.method727(); - class130[][] var15; - if (var8 == class131.field1264) { - var15 = this.field1299; + @Export("charToByteCp1252") + public static byte charToByteCp1252(char var0) { + byte var1; + if ((var0 <= 0 || var0 >= 128) && (var0 < 160 || var0 > 255)) { + if (var0 == 8364) { + var1 = -128; + } else if (var0 == 8218) { + var1 = -126; + } else if (var0 == 402) { + var1 = -125; + } else if (var0 == 8222) { + var1 = -124; + } else if (var0 == 8230) { + var1 = -123; + } else if (var0 == 8224) { + var1 = -122; + } else if (var0 == 8225) { + var1 = -121; + } else if (var0 == 710) { + var1 = -120; + } else if (var0 == 8240) { + var1 = -119; + } else if (var0 == 352) { + var1 = -118; + } else if (var0 == 8249) { + var1 = -117; + } else if (var0 == 338) { + var1 = -116; + } else if (var0 == 381) { + var1 = -114; + } else if (var0 == 8216) { + var1 = -111; + } else if (var0 == 8217) { + var1 = -110; + } else if (var0 == 8220) { + var1 = -109; + } else if (var0 == 8221) { + var1 = -108; + } else if (var0 == 8226) { + var1 = -107; + } else if (var0 == 8211) { + var1 = -106; + } else if (var0 == 8212) { + var1 = -105; + } else if (var0 == 732) { + var1 = -104; + } else if (var0 == 8482) { + var1 = -103; + } else if (var0 == 353) { + var1 = -102; + } else if (var0 == 8250) { + var1 = -101; + } else if (var0 == 339) { + var1 = -100; + } else if (var0 == 382) { + var1 = -98; + } else if (var0 == 376) { + var1 = -97; } else { - var15 = this.field1304; - } - - if (var15[var9] == null) { - var15[var9] = new class130[var14]; - } - - if (var8 == class131.field1263) { - this.field1298 = true; - } - } - - var5 = var3 / class291.field2496; - int var16 = var3 % class291.field2496; - int var17 = 0; - - for (var9 = 0; var9 < class291.field2496; ++var9) { - var7 = var17; - var17 += var5; - if (var16 > 0) { - ++var17; - --var16; + var1 = 63; } - - if (var17 == var7) { - break; - } - - this.field1302.add(field1296.submit(new class136(this, var7, var17, var4))); - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1948814782" - ) - public boolean method746() { - if (this.field1303 == null && this.field1302 == null) { - return true; } else { - if (this.field1303 != null) { - if (!this.field1303.isDone()) { - return false; - } - - this.field1303 = null; - } - - boolean var1 = true; - - for (int var2 = 0; var2 < this.field1302.size(); ++var2) { - if (!((Future)this.field1302.get(var2)).isDone()) { - var1 = false; - } else { - this.field1302.remove(var2); - --var2; - } - } - - if (!var1) { - return false; - } else { - this.field1302 = null; - return true; - } - } - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1976853081" - ) - public int method747() { - return this.field1300; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1397730419" - ) - public boolean method748() { - return this.field1298; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(ILeo;IIB)V", - garbageValue = "-98" - ) - public void method749(int var1, class127 var2, int var3, int var4) { - class450 var5; - synchronized(class450.field3873) { - if (class462.field3904 == 0) { - var5 = new class450(); - } else { - class450.field3873[--class462.field3904].method2302(); - var5 = class450.field3873[class462.field3904]; - } + var1 = (byte)var0; } - this.method750(var5, var3, var2, var1); - this.method753(var5, var3, var2, var1); - this.method752(var5, var3, var2, var1); - var2.method708(var5); - var5.method2298(); + return var1; } - @ObfuscatedName("ai") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(Lrz;ILeo;II)V", - garbageValue = "1937438486" + descriptor = "(Lnn;II)V", + garbageValue = "-2139904797" ) - void method750(class450 var1, int var2, class127 var3, int var4) { - float[] var5 = var3.method712(this.field1300); - float var6 = var5[0]; - float var7 = var5[1]; - float var8 = var5[2]; - if (this.field1299[var2] != null) { - class130 var9 = this.field1299[var2][0]; - class130 var10 = this.field1299[var2][1]; - class130 var11 = this.field1299[var2][2]; - if (var9 != null) { - var6 = var9.method720(var4); - } - - if (var10 != null) { - var7 = var10.method720(var4); - } - - if (var11 != null) { - var8 = var11.method720(var4); - } - } - - class449 var17 = Login.method427(); - var17.method2295(1.0F, 0.0F, 0.0F, var6); - class449 var18 = Login.method427(); - var18.method2295(0.0F, 1.0F, 0.0F, var7); - class449 var19 = Login.method427(); - var19.method2295(0.0F, 0.0F, 1.0F, var8); - class449 var12 = Login.method427(); - var12.method2297(var19); - var12.method2297(var17); - var12.method2297(var18); - class450 var13; - synchronized(class450.field3873) { - if (class462.field3904 == 0) { - var13 = new class450(); - } else { - class450.field3873[--class462.field3904].method2302(); - var13 = class450.field3873[class462.field3904]; - } - } - - var13.method2309(var12); - var1.method2308(var13); - var17.method2293(); - var18.method2293(); - var19.method2293(); - var12.method2293(); - var13.method2298(); - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Lrz;ILeo;II)V", - garbageValue = "1689339528" - ) - void method752(class450 var1, int var2, class127 var3, int var4) { - float[] var5 = var3.method713(this.field1300); - float var6 = var5[0]; - float var7 = var5[1]; - float var8 = var5[2]; - if (this.field1299[var2] != null) { - class130 var9 = this.field1299[var2][3]; - class130 var10 = this.field1299[var2][4]; - class130 var11 = this.field1299[var2][5]; - if (var9 != null) { - var6 = var9.method720(var4); - } - - if (var10 != null) { - var7 = var10.method720(var4); - } - - if (var11 != null) { - var8 = var11.method720(var4); - } - } - - var1.field3875[12] = var6; - var1.field3875[13] = var7; - var1.field3875[14] = var8; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(Lrz;ILeo;II)V", - garbageValue = "-2003285459" - ) - void method753(class450 var1, int var2, class127 var3, int var4) { - float[] var5 = var3.method714(this.field1300); - float var6 = var5[0]; - float var7 = var5[1]; - float var8 = var5[2]; - if (this.field1299[var2] != null) { - class130 var9 = this.field1299[var2][6]; - class130 var10 = this.field1299[var2][7]; - class130 var11 = this.field1299[var2][8]; - if (var9 != null) { - var6 = var9.method720(var4); - } - - if (var10 != null) { - var7 = var10.method720(var4); - } - - if (var11 != null) { - var8 = var11.method720(var4); - } - } - - class450 var14; - synchronized(class450.field3873) { - if (class462.field3904 == 0) { - var14 = new class450(); - } else { - class450.field3873[--class462.field3904].method2302(); - var14 = class450.field3873[class462.field3904]; - } - } - - var14.method2306(var6, var7, var8); - var1.method2308(var14); - var14.method2298(); - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "([BI)V", - garbageValue = "-7280279" - ) - @Export("SpriteBuffer_decode") - static void SpriteBuffer_decode(byte[] var0) { - Buffer var1 = new Buffer(var0); - var1.offset = var0.length - 2; - class529.SpriteBuffer_spriteCount = var1.readUnsignedShort(); - class529.SpriteBuffer_xOffsets = new int[class529.SpriteBuffer_spriteCount]; - class152.SpriteBuffer_yOffsets = new int[class529.SpriteBuffer_spriteCount]; - HealthBarUpdate.SpriteBuffer_spriteWidths = new int[class529.SpriteBuffer_spriteCount]; - SpriteMask.SpriteBuffer_spriteHeights = new int[class529.SpriteBuffer_spriteCount]; - Coord.SpriteBuffer_pixels = new byte[class529.SpriteBuffer_spriteCount][]; - var1.offset = var0.length - 7 - class529.SpriteBuffer_spriteCount * 8; - class529.SpriteBuffer_spriteWidth = var1.readUnsignedShort(); - class420.SpriteBuffer_spriteHeight = var1.readUnsignedShort(); - int var2 = (var1.readUnsignedByte() & 255) + 1; - - int var3; - for (var3 = 0; var3 < class529.SpriteBuffer_spriteCount; ++var3) { - class529.SpriteBuffer_xOffsets[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class529.SpriteBuffer_spriteCount; ++var3) { - class152.SpriteBuffer_yOffsets[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class529.SpriteBuffer_spriteCount; ++var3) { - HealthBarUpdate.SpriteBuffer_spriteWidths[var3] = var1.readUnsignedShort(); - } - - for (var3 = 0; var3 < class529.SpriteBuffer_spriteCount; ++var3) { - SpriteMask.SpriteBuffer_spriteHeights[var3] = var1.readUnsignedShort(); - } - - var1.offset = var0.length - 7 - class529.SpriteBuffer_spriteCount * 8 - (var2 - 1) * 3; - DbTableType.SpriteBuffer_spritePalette = new int[var2]; - - for (var3 = 1; var3 < var2; ++var3) { - DbTableType.SpriteBuffer_spritePalette[var3] = var1.readMedium(); - if (DbTableType.SpriteBuffer_spritePalette[var3] == 0) { - DbTableType.SpriteBuffer_spritePalette[var3] = 1; + @Export("Widget_setKeyIgnoreHeld") + static final void Widget_setKeyIgnoreHeld(Widget var0, int var1) { + if (var0.field3003 == null) { + throw new RuntimeException(); + } else { + if (var0.field3080 == null) { + var0.field3080 = new int[var0.field3003.length]; } - } - var1.offset = 0; - - for (var3 = 0; var3 < class529.SpriteBuffer_spriteCount; ++var3) { - int var4 = HealthBarUpdate.SpriteBuffer_spriteWidths[var3]; - int var5 = SpriteMask.SpriteBuffer_spriteHeights[var3]; - int var6 = var4 * var5; - byte[] var7 = new byte[var6]; - Coord.SpriteBuffer_pixels[var3] = var7; - int var8 = var1.readUnsignedByte(); - int var9; - if (var8 == 0) { - for (var9 = 0; var9 < var6; ++var9) { - var7[var9] = var1.readByte(); - } - } else if (var8 == 1) { - for (var9 = 0; var9 < var4; ++var9) { - for (int var10 = 0; var10 < var5; ++var10) { - var7[var9 + var4 * var10] = var1.readByte(); - } - } - } + var0.field3080[var1] = Integer.MAX_VALUE; } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class138.java b/osrs/src/main/java/class138.java index 94fe53267..9d94b0ca1 100644 --- a/osrs/src/main/java/class138.java +++ b/osrs/src/main/java/class138.java @@ -2,83 +2,269 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fb") -public enum class138 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lfb;" - ) - field1314(0, 0), - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lfb;" - ) - field1309(1, 1), - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lfb;" - ) - field1311(2, 2), - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lfb;" - ) - field1313(3, 3), - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lfb;" - ) - field1308(4, 4), - @ObfuscatedName("ai") +import java.util.concurrent.Callable; + +@ObfuscatedName("fi") +class class138 implements Callable { + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfb;" + descriptor = "Lfo;" ) - field1310(5, 5), - @ObfuscatedName("az") + @Export("this$0") + @ObfuscatedName("this$0") + final class139 this$0; + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfb;" + descriptor = "Luj;" ) - field1315(6, 6), - @ObfuscatedName("ap") + @Export("val$p") + @ObfuscatedName("val$p") + final Buffer val$p; + // $FF: synthetic field + @Export("val$version") + @ObfuscatedName("val$version") + final int val$version; + @ObfuscatedSignature( - descriptor = "Lfb;" + descriptor = "(Lfo;Luj;I)V" ) - field1312(7, 7), - @ObfuscatedName("aa") + class138(class139 var1, Buffer var2, int var3) { + this.this$0 = var1; + this.val$p = var2; + this.val$version = var3; + } + + @Export("call") + @ObfuscatedName("call") + public Object call() { + this.this$0.method740(this.val$p, this.val$version); + return null; + } + + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Lfb;" + descriptor = "(B)V", + garbageValue = "0" ) - field1307(8, 8); - - @ObfuscatedName("ix") - static int field1306; - @ObfuscatedName("af") - final int field1317; - @ObfuscatedName("ad") - final int field1316; - - class138(int var3, int var4) { - this.field1317 = var3; - this.field1316 = var4; + public static void method737() { + FloorOverlayDefinition.FloorOverlayDefinition_cached.clear(); } - @ObfuscatedName("ae") + @ObfuscatedName("bh") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" + descriptor = "(ILdt;ZI)I", + garbageValue = "721798432" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field1316; + static int method738(int var0, Script var1, boolean var2) { + if (var0 == 6500) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class241.loadWorlds() ? 1 : 0; + return 1; + } else { + World var3; + if (var0 == 6501) { + var3 = Language.worldListStart(); + if (var3 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.id; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.properties; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.activity; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.location; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.population; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.host; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 6502) { + var3 = WorldMapData_0.getNextWorldListWorld(); + if (var3 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.id; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.properties; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.activity; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.location; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.population; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.host; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else { + World var4; + int var5; + int var7; + if (var0 == 6506) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = null; + + for (var5 = 0; var5 < World.World_count; ++var5) { + if (var7 == class361.World_worlds[var5].id) { + var4 = class361.World_worlds[var5]; + break; + } + } + + if (var4 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.id; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.properties; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.activity; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.location; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.population; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.host; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 6507) { + DbTableType.Interpreter_intStackSize -= 4; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + boolean var10 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1] == 1; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + boolean var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3] == 1; + PacketWriter.sortWorldList(var7, var10, var5, var6); + return 1; + } else if (var0 != 6511) { + if (var0 == 6512) { + Client.followerOpsLowPriority = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + return 1; + } else { + int var8; + ParamComposition var9; + if (var0 == 6513) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var9 = Frames.getParamDefinition(var8); + if (var9.isString()) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = VerticalAlignment.getNpcDefinition(var7).getStringParam(var8, var9.defaultStr); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = VerticalAlignment.getNpcDefinition(var7).getIntParam(var8, var9.defaultInt); + } + + return 1; + } else if (var0 == 6514) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var9 = Frames.getParamDefinition(var8); + if (var9.isString()) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = WorldMapSection2.getObjectDefinition(var7).getStringParam(var8, var9.defaultStr); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapSection2.getObjectDefinition(var7).getIntParam(var8, var9.defaultInt); + } + + return 1; + } else if (var0 == 6515) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var9 = Frames.getParamDefinition(var8); + if (var9.isString()) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class214.ItemDefinition_get(var7).getStringParam(var8, var9.defaultStr); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class214.ItemDefinition_get(var7).getIntParam(var8, var9.defaultInt); + } + + return 1; + } else if (var0 == 6516) { + DbTableType.Interpreter_intStackSize -= 2; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var8 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var9 = Frames.getParamDefinition(var8); + if (var9.isString()) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = UserList.StructDefinition_getStructDefinition(var7).getStringParam(var8, var9.defaultStr); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = UserList.StructDefinition_getStructDefinition(var7).getIntParam(var8, var9.defaultInt); + } + + return 1; + } else if (var0 == 6518) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.onMobile ? 1 : 0; + return 1; + } else if (var0 == 6519) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.clientType; + return 1; + } else if (var0 == 6520) { + return 1; + } else if (var0 == 6521) { + return 1; + } else if (var0 == 6522) { + --class127.Interpreter_stringStackSize; + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 6523) { + --class127.Interpreter_stringStackSize; + --DbTableType.Interpreter_intStackSize; + return 1; + } else if (var0 == 6524) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + return 1; + } else if (var0 == 6525) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + return 1; + } else if (var0 == 6526) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + return 1; + } else if (var0 == 6527) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.field424; + return 1; + } else { + return 2; + } + } + } else { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var7 >= 0 && var7 < World.World_count) { + var4 = class361.World_worlds[var7]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.id; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.properties; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.activity; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.location; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4.population; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.host; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } + } + } } - @ObfuscatedName("au") + @ObfuscatedName("nu") @ObfuscatedSignature( - descriptor = "(II)Lhd;", - garbageValue = "-2092352148" + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "-1926894842" ) - @Export("WorldMapElement_get") - public static WorldMapElement WorldMapElement_get(int var0) { - return var0 >= 0 && var0 < WorldMapElement.WorldMapElement_cached.length && WorldMapElement.WorldMapElement_cached[var0] != null ? WorldMapElement.WorldMapElement_cached[var0] : new WorldMapElement(var0); + @Export("Clan_joinChat") + static final void Clan_joinChat(String var0) { + if (!var0.equals("")) { + PacketBufferNode var1 = class113.getPacketBufferNode(ClientPacket.f22, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(ClanChannel.stringCp1252NullTerminatedByteSize(var0)); + var1.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var1); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class139.java b/osrs/src/main/java/class139.java index a86ef256e..c863e51e6 100644 --- a/osrs/src/main/java/class139.java +++ b/osrs/src/main/java/class139.java @@ -2,326 +2,357 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fr") -public enum class139 implements class371 { - @ObfuscatedName("au") +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.Future; +import java.util.concurrent.ThreadPoolExecutor; + +@ObfuscatedName("fo") +public class class139 extends DualNode { + @ObfuscatedName("ac") + static ThreadPoolExecutor field1309; + @ObfuscatedName("at") + int field1313; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lfr;" + descriptor = "[[Lfm;" ) - field1322(0, 0), - @ObfuscatedName("ae") + public class131[][] field1316; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lfr;" + descriptor = "[[Lfm;" ) - field1319(2, 1), + class131[][] field1311; @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lfr;" - ) - field1320(3, 2), - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lfr;" + descriptor = "Lkd;" ) - field1321(4, 3), - @ObfuscatedName("ac") + public Skeleton field1317; + @ObfuscatedName("ab") + int field1312; + @ObfuscatedName("au") + boolean field1310; + @ObfuscatedName("al") + Future field1315; + @ObfuscatedName("az") + List field1314; + @ObfuscatedSignature( - descriptor = "Lfr;" + descriptor = "(Lol;Lol;IZ)V" ) - field1318(1, 4); + class139(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) { + this.field1316 = null; + this.field1311 = null; + this.field1312 = 0; + this.field1313 = var3; + byte[] var5 = var1.takeFile(this.field1313 >> 16 & 65535, this.field1313 & 65535); + Buffer var6 = new Buffer(var5); + int var7 = var6.readUnsignedByte(); + int var8 = var6.readUnsignedShort(); + byte[] var9; + if (var4) { + var9 = var2.getFile(0, var8); + } else { + var9 = var2.getFile(var8, 0); + } - @ObfuscatedName("ag") + this.field1317 = new Skeleton(var8, var9); + this.field1314 = new ArrayList(); + this.field1315 = field1309.submit(new class138(this, var6, var7)); + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ldb;" + descriptor = "(Luj;II)V", + garbageValue = "-170957792" ) - static LoginScreenAnimation field1323; - @ObfuscatedName("km") - @Export("cameraZ") - static int cameraZ; - @ObfuscatedName("rj") + void method740(Buffer var1, int var2) { + var1.readUnsignedShort(); + var1.readUnsignedShort(); + this.field1312 = var1.readUnsignedByte(); + int var3 = var1.readUnsignedShort(); + this.field1311 = new class131[this.field1317.method1455().method1439()][]; + this.field1316 = new class131[this.field1317.method1454()][]; + class130[] var4 = new class130[var3]; + + int var5; + int var7; + int var9; + for (var5 = 0; var5 < var3; ++var5) { + var7 = var1.readUnsignedByte(); + class132 var8 = (class132)class12.findEnumerated(Language.method1991(), var7); + if (var8 == null) { + var8 = class132.field1279; + } + + var9 = var1.readShortSmart(); + int var11 = var1.readUnsignedByte(); + class133[] var12 = new class133[]{class133.field1296, class133.field1288, class133.field1294, class133.field1292, class133.field1286, class133.field1297, class133.field1285, class133.field1287, class133.field1291, class133.field1301, class133.field1293, class133.field1298, class133.field1299, class133.field1295, class133.field1300, class133.field1290, class133.field1289}; + class133 var13 = (class133)class12.findEnumerated(var12, var11); + if (var13 == null) { + var13 = class133.field1296; + } + + class131 var20 = new class131(); + var20.method714(var1, var2); + var4[var5] = new class130(this, var20, var8, var13, var9); + int var14 = var8.method725(); + class131[][] var15; + if (var8 == class132.field1276) { + var15 = this.field1311; + } else { + var15 = this.field1316; + } + + if (var15[var9] == null) { + var15[var9] = new class131[var14]; + } + + if (var8 == class132.field1275) { + this.field1310 = true; + } + } + + var5 = var3 / FloorDecoration.field2162; + int var16 = var3 % FloorDecoration.field2162; + int var17 = 0; + + for (var9 = 0; var9 < FloorDecoration.field2162; ++var9) { + var7 = var17; + var17 += var5; + if (var16 > 0) { + ++var17; + --var16; + } + + if (var17 == var7) { + break; + } + + this.field1314.add(field1309.submit(new class134(this, var7, var17, var4))); + } + + } + + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lrs;" + descriptor = "(S)Z", + garbageValue = "136" ) - @Export("varclan") - static class454 varclan; - @ObfuscatedName("ai") - public final int field1327; - @ObfuscatedName("az") - @Export("id") - final int id; + public boolean method741() { + if (this.field1315 == null && this.field1314 == null) { + return true; + } else { + if (this.field1315 != null) { + if (!this.field1315.isDone()) { + return false; + } + + this.field1315 = null; + } + + boolean var1 = true; - class139(int var3, int var4) { - this.field1327 = var3; - this.id = var4; + for (int var2 = 0; var2 < this.field1314.size(); ++var2) { + if (!((Future)this.field1314.get(var2)).isDone()) { + var1 = false; + } else { + this.field1314.remove(var2); + --var2; + } + } + + if (!var1) { + return false; + } else { + this.field1314 = null; + return true; + } + } } - @ObfuscatedName("ae") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "53" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.id; + public int method742() { + return this.field1312; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "-99" + ) + public boolean method743() { + return this.field1310; } @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-1677394683" + descriptor = "(ILej;III)V", + garbageValue = "-685417553" ) - public static void method756(AbstractArchive var0) { - ParamComposition.ParamDefinition_archive = var0; + public void method744(int var1, class128 var2, int var3, int var4) { + class462 var5 = WorldMapDecoration.method1329(); + this.method745(var5, var3, var2, var1); + this.method747(var5, var3, var2, var1); + this.method746(var5, var3, var2, var1); + var2.method701(var5); + var5.method2314(); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lch;Lch;IZI)I", - garbageValue = "548586770" + descriptor = "(Lrz;ILej;II)V", + garbageValue = "2098789523" ) - @Export("compareWorlds") - static int compareWorlds(World var0, World var1, int var2, boolean var3) { - if (var2 == 1) { - int var4 = var0.population; - int var5 = var1.population; - if (!var3) { - if (var4 == -1) { - var4 = 2001; - } + void method745(class462 var1, int var2, class128 var3, int var4) { + float[] var5 = var3.method705(this.field1312); + float var6 = var5[0]; + float var7 = var5[1]; + float var8 = var5[2]; + if (this.field1311[var2] != null) { + class131 var9 = this.field1311[var2][0]; + class131 var10 = this.field1311[var2][1]; + class131 var11 = this.field1311[var2][2]; + if (var9 != null) { + var6 = var9.method716(var4); + } - if (var5 == -1) { - var5 = 2001; - } + if (var10 != null) { + var7 = var10.method716(var4); } - return var4 - var5; - } else if (var2 == 2) { - return var0.location - var1.location; - } else if (var2 == 3) { - if (var0.activity.equals("-")) { - if (var1.activity.equals("-")) { - return 0; - } else { - return var3 ? -1 : 1; - } - } else if (var1.activity.equals("-")) { - return var3 ? 1 : -1; - } else { - return var0.activity.compareTo(var1.activity); + if (var11 != null) { + var8 = var11.method716(var4); } - } else if (var2 == 4) { - return var0.method390() ? (var1.method390() ? 0 : 1) : (var1.method390() ? -1 : 0); - } else if (var2 == 5) { - return var0.method388() ? (var1.method388() ? 0 : 1) : (var1.method388() ? -1 : 0); - } else if (var2 == 6) { - return var0.isPvp() ? (var1.isPvp() ? 0 : 1) : (var1.isPvp() ? -1 : 0); - } else if (var2 == 7) { - return var0.isMembersOnly() ? (var1.isMembersOnly() ? 0 : 1) : (var1.isMembersOnly() ? -1 : 0); - } else { - return var0.id - var1.id; } + + class461 var16 = class214.method1093(); + var16.method2311(1.0F, 0.0F, 0.0F, var6); + class461 var14 = class214.method1093(); + var14.method2311(0.0F, 1.0F, 0.0F, var7); + class461 var15 = class214.method1093(); + var15.method2311(0.0F, 0.0F, 1.0F, var8); + class461 var12 = class214.method1093(); + var12.method2313(var15); + var12.method2313(var16); + var12.method2313(var14); + class462 var13 = WorldMapDecoration.method1329(); + var13.method2325(var12); + var1.method2324(var13); + var16.method2309(); + var14.method2309(); + var15.method2309(); + var12.method2309(); + var13.method2314(); } - @ObfuscatedName("br") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-808541663" + descriptor = "(Lrz;ILej;II)V", + garbageValue = "1029943917" ) - static int method759(int var0, Script var1, boolean var2) { - if (var0 == 6500) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class125.loadWorlds() ? 1 : 0; - return 1; - } else { - World var3; - if (var0 == 6501) { - var3 = class18.worldListStart(); - if (var3 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.id; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.properties; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.activity; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.location; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.population; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.host; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } + void method746(class462 var1, int var2, class128 var3, int var4) { + float[] var5 = var3.method706(this.field1312); + float var6 = var5[0]; + float var7 = var5[1]; + float var8 = var5[2]; + if (this.field1311[var2] != null) { + class131 var9 = this.field1311[var2][3]; + class131 var10 = this.field1311[var2][4]; + class131 var11 = this.field1311[var2][5]; + if (var9 != null) { + var6 = var9.method716(var4); + } - return 1; - } else if (var0 == 6502) { - var3 = VarcInt.getNextWorldListWorld(); - if (var3 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.id; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.properties; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.activity; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.location; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.population; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var3.host; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } + if (var10 != null) { + var7 = var10.method716(var4); + } - return 1; - } else { - World var4; - int var5; - int var7; - if (var0 == 6506) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var4 = null; - - for (var5 = 0; var5 < World.World_count; ++var5) { - if (var7 == class176.World_worlds[var5].id) { - var4 = class176.World_worlds[var5]; - break; - } - } - - if (var4 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.id; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.properties; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.activity; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.location; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.population; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.host; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 6507) { - SoundCache.Interpreter_intStackSize -= 4; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - boolean var10 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1] == 1; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - boolean var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3] == 1; - class131.sortWorldList(var7, var10, var5, var6); - return 1; - } else if (var0 != 6511) { - if (var0 == 6512) { - Client.followerOpsLowPriority = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else { - int var8; - ParamComposition var9; - if (var0 == 6513) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var9 = ObjTypeCustomisation.getParamDefinition(var8); - if (var9.isString()) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = class90.getNpcDefinition(var7).getStringParam(var8, var9.defaultStr); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class90.getNpcDefinition(var7).getIntParam(var8, var9.defaultInt); - } - - return 1; - } else if (var0 == 6514) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var9 = ObjTypeCustomisation.getParamDefinition(var8); - if (var9.isString()) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = WorldMapElement.getObjectDefinition(var7).getStringParam(var8, var9.defaultStr); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = WorldMapElement.getObjectDefinition(var7).getIntParam(var8, var9.defaultInt); - } - - return 1; - } else if (var0 == 6515) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var9 = ObjTypeCustomisation.getParamDefinition(var8); - if (var9.isString()) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = InvDefinition.ItemDefinition_get(var7).getStringParam(var8, var9.defaultStr); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.ItemDefinition_get(var7).getIntParam(var8, var9.defaultInt); - } - - return 1; - } else if (var0 == 6516) { - SoundCache.Interpreter_intStackSize -= 2; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var9 = ObjTypeCustomisation.getParamDefinition(var8); - if (var9.isString()) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = Players.StructDefinition_getStructDefinition(var7).getStringParam(var8, var9.defaultStr); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Players.StructDefinition_getStructDefinition(var7).getIntParam(var8, var9.defaultInt); - } - - return 1; - } else if (var0 == 6518) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.onMobile ? 1 : 0; - return 1; - } else if (var0 == 6519) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.clientType; - return 1; - } else if (var0 == 6520) { - return 1; - } else if (var0 == 6521) { - return 1; - } else if (var0 == 6522) { - --class137.Interpreter_stringStackSize; - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 6523) { - --class137.Interpreter_stringStackSize; - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 6524) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - return 1; - } else if (var0 == 6525) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - return 1; - } else if (var0 == 6526) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - return 1; - } else if (var0 == 6527) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.field424; - return 1; - } else { - return 2; - } - } - } else { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var7 >= 0 && var7 < World.World_count) { - var4 = class176.World_worlds[var7]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.id; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.properties; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.activity; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.location; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4.population; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.host; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } + if (var11 != null) { + var8 = var11.method716(var4); } } + + var1.field3908[12] = var6; + var1.field3908[13] = var7; + var1.field3908[14] = var8; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(Lrz;ILej;IB)V", + garbageValue = "-43" + ) + void method747(class462 var1, int var2, class128 var3, int var4) { + float[] var5 = var3.method707(this.field1312); + float var6 = var5[0]; + float var7 = var5[1]; + float var8 = var5[2]; + if (this.field1311[var2] != null) { + class131 var9 = this.field1311[var2][6]; + class131 var10 = this.field1311[var2][7]; + class131 var11 = this.field1311[var2][8]; + if (var9 != null) { + var6 = var9.method716(var4); + } + + if (var10 != null) { + var7 = var10.method716(var4); + } + + if (var11 != null) { + var8 = var11.method716(var4); + } + } + + class462 var12 = WorldMapDecoration.method1329(); + var12.method2322(var6, var7, var8); + var1.method2324(var12); + var12.method2314(); + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(I)[B", + garbageValue = "-1858381549" + ) + public static byte[] method748() { + byte[] var0 = new byte[24]; + + try { + JagexCache.JagexCache_randomDat.seek(0L); + JagexCache.JagexCache_randomDat.readFully(var0); + + int var1; + for (var1 = 0; var1 < 24 && var0[var1] == 0; ++var1) { + } + + if (var1 >= 24) { + throw new IOException(); + } + } catch (Exception var4) { + for (int var2 = 0; var2 < 24; ++var2) { + var0[var2] = -1; + } + } + + return var0; + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "-2047450168" + ) + @Export("setLoginResponseString") + static void setLoginResponseString(String var0, String var1, String var2) { + Login.Login_response1 = var0; + Login.Login_response2 = var1; + Login.Login_response3 = var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/class14.java b/osrs/src/main/java/class14.java index 5cf0edac4..3552f02db 100644 --- a/osrs/src/main/java/class14.java +++ b/osrs/src/main/java/class14.java @@ -7,167 +7,262 @@ import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; -@ObfuscatedName("ar") +@ObfuscatedName("ay") public class class14 { - @ObfuscatedName("au") - final int field42; - @ObfuscatedName("ae") - final String field43; - @ObfuscatedName("ao") - final ThreadFactory field44; + @ObfuscatedName("bj") + protected static String field44; @ObfuscatedName("at") - final ThreadPoolExecutor field45; + final int field45; + @ObfuscatedName("ah") + final String field46; + @ObfuscatedName("ar") + final ThreadFactory field47; + @ObfuscatedName("ao") + final ThreadPoolExecutor field48; public class14(String var1, int var2, int var3) { - this.field43 = var1; - this.field42 = var2; - this.field44 = new class16(this); - this.field45 = this.method37(var3); + this.field46 = var1; + this.field45 = var2; + this.field47 = new class16(this); + this.field48 = this.method53(var3); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)Ljava/util/concurrent/ThreadPoolExecutor;", - garbageValue = "-56" + descriptor = "(II)Ljava/util/concurrent/ThreadPoolExecutor;", + garbageValue = "1434703627" ) - final ThreadPoolExecutor method37(int var1) { - return new ThreadPoolExecutor(var1, var1, 0L, TimeUnit.MILLISECONDS, new ArrayBlockingQueue(this.field42), this.field44); + final ThreadPoolExecutor method53(int var1) { + return new ThreadPoolExecutor(var1, var1, 0L, TimeUnit.MILLISECONDS, new ArrayBlockingQueue(this.field45), this.field47); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lad;B)Lax;", - garbageValue = "19" + descriptor = "(Lap;I)Laq;", + garbageValue = "1326084774" ) - public class18 method38(class10 var1) { - if (this.field45.getQueue().remainingCapacity() <= 0) { - System.err.println("REST thread pool queue is empty\r\nThread pool size " + this.field45.getCorePoolSize() + " Queue capacity " + this.field42); + public class18 method54(class10 var1) { + if (this.field48.getQueue().remainingCapacity() <= 0) { + System.err.println("REST thread pool queue is empty\r\nThread pool size " + this.field48.getCorePoolSize() + " Queue capacity " + this.field45); return new class18("Queue full"); } else { - class18 var2 = new class18(this.field45.submit(new class19(this, var1))); + class18 var2 = new class18(this.field48.submit(new class19(this, var1))); return var2; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "2032063402" + garbageValue = "-2107542128" ) - public final void method40() { + public final void method56() { try { - this.field45.shutdown(); + this.field48.shutdown(); } catch (Exception var2) { System.err.println("Error shutting down RestRequestService\r\n" + var2); } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lsf;III)I", - garbageValue = "-1229342893" + descriptor = "(Ljava/lang/CharSequence;Ltt;I)Ljava/lang/String;", + garbageValue = "-576035634" ) - static int method39(IterableNodeHashTable var0, int var1, int var2) { + public static String method52(CharSequence var0, LoginType var1) { if (var0 == null) { - return var2; + return null; } else { - IntegerNode var3 = (IntegerNode)var0.get((long)var1); - return var3 == null ? var2 : var3.integer; - } - } + int var2 = 0; - @ObfuscatedName("lp") - @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;I)V", - garbageValue = "-525651527" - ) - static void method41(int var0, String var1) { - int var2 = Players.Players_count; - int[] var3 = Players.Players_indices; - boolean var4 = false; - Username var5 = new Username(var1, Language.loginType); - - for (int var6 = 0; var6 < var2; ++var6) { - Player var7 = Client.players[var3[var6]]; - if (var7 != null && var7 != VarbitComposition.localPlayer && var7.username != null && var7.username.equals(var5)) { - PacketBufferNode var8; - if (var0 == 1) { - var8 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER1, Client.packetWriter.isaacCipher); - var8.packetBuffer.writeShortAddLE(var3[var6]); - var8.packetBuffer.writeByteSub(0); - Client.packetWriter.addNode(var8); - } else if (var0 == 4) { - var8 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER4, Client.packetWriter.isaacCipher); - var8.packetBuffer.writeShortAdd(var3[var6]); - var8.packetBuffer.writeByteNeg(0); - Client.packetWriter.addNode(var8); - } else if (var0 == 6) { - var8 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER6, Client.packetWriter.isaacCipher); - var8.packetBuffer.writeShortAdd(var3[var6]); - var8.packetBuffer.writeByteSub(0); - Client.packetWriter.addNode(var8); - } else if (var0 == 7) { - var8 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.OPPLAYER7, Client.packetWriter.isaacCipher); - var8.packetBuffer.writeIntME(var3[var6]); - var8.packetBuffer.writeByte(0); - Client.packetWriter.addNode(var8); + int var3; + for (var3 = var0.length(); var2 < var3 && class489.method2381(var0.charAt(var2)); ++var2) { + } + + while (var3 > var2 && class489.method2381(var0.charAt(var3 - 1))) { + --var3; + } + + int var4 = var3 - var2; + if (var4 >= 1) { + byte var6; + if (var1 == null) { + var6 = 12; + } else { + switch(var1.field4102) { + case 1: + var6 = 20; + break; + default: + var6 = 12; + } } - var4 = true; - break; + if (var4 <= var6) { + StringBuilder var12 = new StringBuilder(var4); + + for (int var14 = var2; var14 < var3; ++var14) { + char var7 = var0.charAt(var14); + boolean var8; + if (Character.isISOControl(var7)) { + var8 = false; + } else if (KeyHandler.isAlphaNumeric(var7)) { + var8 = true; + } else { + char[] var9 = class505.field4104; + int var10 = 0; + + label68: + while (true) { + char var11; + if (var10 >= var9.length) { + var9 = class505.field4103; + + for (var10 = 0; var10 < var9.length; ++var10) { + var11 = var9[var10]; + if (var11 == var7) { + var8 = true; + break label68; + } + } + + var8 = false; + break; + } + + var11 = var9[var10]; + if (var11 == var7) { + var8 = true; + break; + } + + ++var10; + } + } + + if (var8) { + char var13 = FriendsChat.method2219(var7); + if (var13 != 0) { + var12.append(var13); + } + } + } + + if (var12.length() == 0) { + return null; + } + + return var12.toString(); + } } - } - if (!var4) { - MouseHandler.addGameMessage(4, "", "Unable to find " + var1); + return null; } - } - @ObfuscatedName("lt") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(III)Ljava/lang/String;", - garbageValue = "-539103842" + descriptor = "(IIB)Lco;", + garbageValue = "69" ) - static final String method42(int var0, int var1) { - int var2 = var1 - var0; - if (var2 < -9) { - return MoveSpeed.colorStartTag(16711680); - } else if (var2 < -6) { - return MoveSpeed.colorStartTag(16723968); - } else if (var2 < -3) { - return MoveSpeed.colorStartTag(16740352); - } else if (var2 < 0) { - return MoveSpeed.colorStartTag(16756736); - } else if (var2 > 9) { - return MoveSpeed.colorStartTag(65280); - } else if (var2 > 6) { - return MoveSpeed.colorStartTag(4259584); - } else if (var2 > 3) { - return MoveSpeed.colorStartTag(8453888); - } else { - return var2 > 0 ? MoveSpeed.colorStartTag(12648192) : MoveSpeed.colorStartTag(16776960); - } + @Export("Messages_getByChannelAndID") + static Message Messages_getByChannelAndID(int var0, int var1) { + ChatChannel var2 = (ChatChannel)Messages.Messages_channels.get(var0); + return var2.getMessage(var1); } - @ObfuscatedName("mz") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "-26" + descriptor = "(B)V", + garbageValue = "-69" ) - @Export("setTapToDrop") - static void setTapToDrop(boolean var0) { - Client.tapToDrop = var0; + static void method58() { + if (class384.clearLoginScreen) { + Login.titleboxSprite = null; + Login.titlebuttonSprite = null; + class134.runesSprite = null; + class250.leftTitleSprite = null; + Login.rightTitleSprite = null; + Login.logoSprite = null; + Login.title_muteSprite = null; + class310.options_buttons_0Sprite = null; + FriendsList.options_buttons_2Sprite = null; + class108.worldSelectBackSprites = null; + class130.worldSelectFlagSprites = null; + class148.worldSelectArrows = null; + MoveSpeed.worldSelectStars = null; + FadeOutTask.field3749 = null; + EnumComposition.field1505.method524(); + WorldMapManager.method1265(0, 100); + class157.method827().method1954(true); + class384.clearLoginScreen = false; + } } - @ObfuscatedName("nd") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-361779527" + descriptor = "(Luj;IIIIIII)V", + garbageValue = "834175330" ) - static final void method44(int var0) { - var0 = Math.min(Math.max(var0, 0), 127); - class449.clientPreferences.setAreaSoundEffectsVolume(var0); + @Export("loadTerrain") + static final void loadTerrain(Buffer var0, int var1, int var2, int var3, int var4, int var5, int var6) { + int var7; + if (class134.method730(var1, var2, var3)) { + Tiles.Tiles_renderFlags[var1][var2][var3] = 0; + + while (true) { + var7 = var0.readUnsignedShort(); + if (var7 == 0) { + if (var1 == 0) { + Tiles.Tiles_heights[0][var2][var3] = -DevicePcmPlayerProvider.method83(var4 + 932731, var5 + 556238) * 8; + } else { + Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - 240; + } + break; + } + + if (var7 == 1) { + int var8 = var0.readUnsignedByte(); + if (var8 == 1) { + var8 = 0; + } + + if (var1 == 0) { + Tiles.Tiles_heights[0][var2][var3] = -var8 * 8; + } else { + Tiles.Tiles_heights[var1][var2][var3] = Tiles.Tiles_heights[var1 - 1][var2][var3] - var8 * 8; + } + break; + } + + if (var7 <= 49) { + Interpreter.Tiles_overlays[var1][var2][var3] = (short)var0.readShort(); + ViewportMouse.Tiles_shapes[var1][var2][var3] = (byte)((var7 - 2) / 4); + class369.field3559[var1][var2][var3] = (byte)(var7 - 2 + var6 & 3); + } else if (var7 <= 81) { + Tiles.Tiles_renderFlags[var1][var2][var3] = (byte)(var7 - 49); + } else { + class74.Tiles_underlays[var1][var2][var3] = (short)(var7 - 81); + } + } + } else { + while (true) { + var7 = var0.readUnsignedShort(); + if (var7 == 0) { + break; + } + + if (var7 == 1) { + var0.readUnsignedByte(); + break; + } + + if (var7 <= 49) { + var0.readShort(); + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class140.java b/osrs/src/main/java/class140.java index 71129adc9..a2aec11ff 100644 --- a/osrs/src/main/java/class140.java +++ b/osrs/src/main/java/class140.java @@ -2,104 +2,97 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fq") -public class class140 extends class143 { - @ObfuscatedName("aq") - public static short[][] field1328; - @ObfuscatedName("au") - int field1332; - @ObfuscatedName("ae") - int field1329; - @ObfuscatedName("ao") - int field1330; +@ObfuscatedName("fw") +public enum class140 implements class383 { @ObfuscatedName("at") - int field1331; - // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfw;" ) - final class146 this$0; - + field1326(0, 0), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "Lfw;" ) - class140(class146 var1) { - this.this$0 = var1; - this.field1332 = -1; - } - + field1322(1, 1), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1325(2, 2), + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1324(3, 3), + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1320(4, 4), @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "Lfw;" ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1332 = var1.readUnsignedShort(); - this.field1329 = var1.readInt(); - this.field1330 = var1.readUnsignedByte(); - this.field1331 = var1.readUnsignedByte(); - } + field1327(5, 5), + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1319(6, 6), + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1321(7, 7), + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Lfw;" + ) + field1323(8, 8); - @ObfuscatedName("ae") + @ObfuscatedName("jp") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "Ltk;" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method820(this.field1332, this.field1329, this.field1330, this.field1331); + static Fonts field1318; + @ObfuscatedName("az") + final int field1329; + @ObfuscatedName("ap") + final int field1328; + + class140(int var3, int var4) { + this.field1329 = var3; + this.field1328 = var4; } - @ObfuscatedName("ii") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-64" + descriptor = "(B)I", + garbageValue = "-11" ) - static final void method762() { - int var0; - int var1; - int var2; - if (!Client.field402) { - var0 = Players.cameraMoveToX * 128 + 64; - var1 = class33.cameraMoveToY * 128 + 64; - var2 = class18.getTileHeight(var0, var1, HealthBar.Client_plane) - VarpDefinition.cameraMoveToHeight; - class126.method702(var0, var2, var1); - } else if (Client.field642 != null) { - NPCComposition.cameraX = Client.field642.vmethod2349(); - class139.cameraZ = Client.field642.vmethod2347(); - if (Client.field401) { - class133.cameraY = Client.field642.vmethod2320(); - } else { - class133.cameraY = class18.getTileHeight(NPCComposition.cameraX, class139.cameraZ, HealthBar.Client_plane) - Client.field642.vmethod2320(); - } - - Client.field642.method2376(); - } + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field1328; + } - if (!Client.field404) { - var0 = PendingSpawn.cameraLookAtX * 128 + 64; - var1 = VarbitComposition.cameraLookAtY * 128 + 64; - var2 = class18.getTileHeight(var0, var1, HealthBar.Client_plane) - MusicPatchNode2.cameraLookAtHeight; - int var3 = var0 - NPCComposition.cameraX; - int var4 = var2 - class133.cameraY; - int var5 = var1 - class139.cameraZ; - int var6 = (int)Math.sqrt((double)(var5 * var5 + var3 * var3)); - int var7 = (int)(Math.atan2((double)var4, (double)var6) * 325.9490051269531D) & 2047; - int var8 = (int)(Math.atan2((double)var3, (double)var5) * -325.9490051269531D) & 2047; - class416.method2161(var7, var8); + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Lgk;", + garbageValue = "1249641264" + ) + public static VarcInt method750(int var0) { + VarcInt var1 = (VarcInt)VarcInt.VarcInt_cached.get((long)var0); + if (var1 != null) { + return var1; } else { - if (Client.field647 != null) { - class129.cameraPitch = Client.field647.method2371(); - class129.cameraPitch = Math.min(Math.max(class129.cameraPitch, 128), 383); - Client.field647.method2376(); + byte[] var2 = class30.VarcInt_archive.takeFile(19, var0); + var1 = new VarcInt(); + if (var2 != null) { + var1.method901(new Buffer(var2)); } - if (Client.field646 != null) { - UserComparator10.cameraYaw = Client.field646.method2371() & 2047; - Client.field646.method2376(); - } + VarcInt.VarcInt_cached.put(var1, (long)var0); + return var1; } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class141.java b/osrs/src/main/java/class141.java index d3183c22f..8d498f3df 100644 --- a/osrs/src/main/java/class141.java +++ b/osrs/src/main/java/class141.java @@ -2,74 +2,78 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fp") -public class class141 extends class143 { - @ObfuscatedName("fc") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive10") - static Archive archive10; - @ObfuscatedName("au") - long field1335; - @ObfuscatedName("ae") - String field1334; +@ObfuscatedName("fj") +public class class141 extends class144 { + @ObfuscatedName("at") + int field1333; + @ObfuscatedName("ah") + int field1330; + @ObfuscatedName("ar") + int field1332; + @ObfuscatedName("ao") + int field1331; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class141(class146 var1) { + class141(class147 var1) { this.this$0 = var1; - this.field1335 = -1L; - this.field1334 = null; + this.field1333 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - if (var1.readUnsignedByte() != 255) { - --var1.offset; - this.field1335 = var1.readLong(); - } - - this.field1334 = var1.readStringCp1252NullTerminatedOrNull(); + this.field1333 = var1.readUnsignedShort(); + this.field1330 = var1.readInt(); + this.field1332 = var1.readUnsignedByte(); + this.field1331 = var1.readUnsignedByte(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method812(this.field1335, this.field1334, 0); + var1.method813(this.field1333, this.field1330, this.field1332, this.field1331); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Lgr;", + garbageValue = "931002418" + ) + @Export("WorldMapElement_get") + public static WorldMapElement WorldMapElement_get(int var0) { + return var0 >= 0 && var0 < WorldMapElement.WorldMapElement_cached.length && WorldMapElement.WorldMapElement_cached[var0] != null ? WorldMapElement.WorldMapElement_cached[var0] : new WorldMapElement(var0); } - @ObfuscatedName("an") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(IIIB)I", - garbageValue = "49" + descriptor = "(IIB)Z", + garbageValue = "-6" ) - static final int method765(int var0, int var1, int var2) { - int var3 = var0 / var2; - int var4 = var0 & var2 - 1; - int var5 = var1 / var2; - int var6 = var1 & var2 - 1; - int var7 = class312.method1685(var3, var5); - int var8 = class312.method1685(var3 + 1, var5); - int var9 = class312.method1685(var3, var5 + 1); - int var10 = class312.method1685(var3 + 1, var5 + 1); - int var11 = class19.method61(var7, var8, var4, var2); - int var12 = class19.method61(var9, var10, var4, var2); - return class19.method61(var11, var12, var6, var2); + static final boolean method755(int var0, int var1) { + ObjectComposition var2 = WorldMapSection2.getObjectDefinition(var0); + if (var1 == 11) { + var1 = 10; + } + + if (var1 >= 5 && var1 <= 8) { + var1 = 4; + } + + return var2.method1003(var1); } } \ No newline at end of file diff --git a/osrs/src/main/java/class142.java b/osrs/src/main/java/class142.java index 1907df076..d24fb490a 100644 --- a/osrs/src/main/java/class142.java +++ b/osrs/src/main/java/class142.java @@ -2,99 +2,58 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fg") -public class class142 extends class143 { - @ObfuscatedName("au") - int field1336; +@ObfuscatedName("fh") +public class class142 extends class144 { + @ObfuscatedName("at") + long field1335; + @ObfuscatedName("ah") + String field1334; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class142(class146 var1) { + class142(class147 var1) { this.this$0 = var1; - this.field1336 = -1; + this.field1335 = -1L; + this.field1334 = null; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - this.field1336 = var1.readUnsignedShort(); + if (var1.readUnsignedByte() != 255) { + --var1.offset; + this.field1335 = var1.readLong(); + } + + this.field1334 = var1.readStringCp1252NullTerminatedOrNull(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method813(this.field1336); + var1.method804(this.field1335, this.field1334, 0); } - @ObfuscatedName("ap") + @ObfuscatedName("bu") @ObfuscatedSignature( - descriptor = "([BIII)Z", - garbageValue = "1391970820" + descriptor = "(IB)I", + garbageValue = "0" ) - static final boolean method768(byte[] var0, int var1, int var2) { - boolean var3 = true; - Buffer var4 = new Buffer(var0); - int var5 = -1; - - label57: - while (true) { - int var6 = var4.method2561(); - if (var6 == 0) { - return var3; - } - - var5 += var6; - int var7 = 0; - boolean var8 = false; - - while (true) { - int var9; - while (!var8) { - var9 = var4.readUShortSmart(); - if (var9 == 0) { - continue label57; - } - - var7 += var9 - 1; - int var10 = var7 & 63; - int var11 = var7 >> 6 & 63; - int var12 = var4.readUnsignedByte() >> 2; - int var13 = var11 + var1; - int var14 = var10 + var2; - if (var13 > 0 && var14 > 0 && var13 < 103 && var14 < 103) { - ObjectComposition var15 = WorldMapElement.getObjectDefinition(var5); - if (var12 != 22 || !Client.isLowDetail || var15.int1 != 0 || var15.interactType == 1 || var15.boolean2) { - if (!var15.needsModelFiles()) { - ++Client.field455; - var3 = false; - } - - var8 = true; - } - } - } - - var9 = var4.readUShortSmart(); - if (var9 == 0) { - break; - } - - var4.readUnsignedByte(); - } - } + static int method758(int var0) { + return (int)((Math.log((double)var0) / Interpreter.field717 - 7.0D) * 256.0D); } } \ No newline at end of file diff --git a/osrs/src/main/java/class143.java b/osrs/src/main/java/class143.java index c8649da0c..479a5f5dd 100644 --- a/osrs/src/main/java/class143.java +++ b/osrs/src/main/java/class143.java @@ -2,34 +2,41 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fo") -public abstract class class143 extends Node { - class143() { - } +@ObfuscatedName("fg") +public class class143 extends class144 { + @ObfuscatedName("at") + int field1336; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; - @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Lfv;)V" ) - @Export("vmethod3254") - abstract void vmethod3254(Buffer var1); + class143(class147 var1) { + this.this$0 = var1; + this.field1336 = -1; + } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) - @Export("vmethod3248") - abstract void vmethod3248(ClanSettings var1); + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1336 = var1.readUnsignedShort(); + } - @ObfuscatedName("om") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lmi;B)Z", - garbageValue = "-83" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) - @Export("isComponentHidden") - static boolean isComponentHidden(Widget var0) { - return var0.isHidden; + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method806(this.field1336); } } \ No newline at end of file diff --git a/osrs/src/main/java/class144.java b/osrs/src/main/java/class144.java index e0f4af6f2..e90bc3d1a 100644 --- a/osrs/src/main/java/class144.java +++ b/osrs/src/main/java/class144.java @@ -2,60 +2,54 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fz") -public class class144 extends class143 { - @ObfuscatedName("au") - int field1338; - @ObfuscatedName("ae") - boolean field1337; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lfn;" - ) - final class146 this$0; - - @ObfuscatedSignature( - descriptor = "(Lfn;)V" - ) - class144(class146 var1) { - this.this$0 = var1; - this.field1338 = -1; +@ObfuscatedName("fl") +public abstract class class144 extends Node { + class144() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1338 = var1.readUnsignedShort(); - this.field1337 = var1.readUnsignedByte() == 1; - } + abstract void vmethod3254(Buffer var1); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method819(this.field1338, this.field1337); - } + abstract void vmethod3248(ClanSettings var1); - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-2136715015" + descriptor = "(Luj;Ltz;I)Ltz;", + garbageValue = "-1693455974" ) - public static int method772(int var0, int var1, int var2) { - var2 &= 3; - if (var2 == 0) { - return var1; - } else if (var2 == 1) { - return 7 - var0; - } else { - return var2 == 2 ? 7 - var1 : var0; + @Export("readStringIntParameters") + static final IterableNodeHashTable readStringIntParameters(Buffer var0, IterableNodeHashTable var1) { + int var2 = var0.readUnsignedByte(); + int var3; + if (var1 == null) { + var3 = class184.method927(var2); + var1 = new IterableNodeHashTable(var3); } + + for (var3 = 0; var3 < var2; ++var3) { + boolean var4 = var0.readUnsignedByte() == 1; + int var5 = var0.readMedium(); + Object var6; + if (var4) { + var6 = new ObjectNode(var0.readStringCp1252NullTerminated()); + } else { + var6 = new IntegerNode(var0.readInt()); + } + + var1.put((Node)var6, (long)var5); + } + + return var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class145.java b/osrs/src/main/java/class145.java new file mode 100644 index 000000000..0d61cb0ce --- /dev/null +++ b/osrs/src/main/java/class145.java @@ -0,0 +1,78 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("fs") +public class class145 extends class144 { + @ObfuscatedName("ar") + @Export("RunException_revision") + public static int RunException_revision; + @ObfuscatedName("fj") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field1338; + @ObfuscatedName("at") + int field1340; + @ObfuscatedName("ah") + boolean field1339; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; + + @ObfuscatedSignature( + descriptor = "(Lfv;)V" + ) + class145(class147 var1) { + this.this$0 = var1; + this.field1340 = -1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-734756620" + ) + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1340 = var1.readUnsignedShort(); + this.field1339 = var1.readUnsignedByte() == 1; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" + ) + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method812(this.field1340, this.field1339); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-7051987" + ) + public static void method764() { + class172.e3.clear(); + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(FFFFLfm;B)V", + garbageValue = "6" + ) + static void method767(float var0, float var1, float var2, float var3, class131 var4) { + float var5 = var1 - var0; + float var6 = var2 - var1; + float var7 = var3 - var2; + float var8 = var6 - var5; + var4.field1267 = var7 - var6 - var8; + var4.field1265 = var8 + var8 + var8; + var4.field1270 = var5 + var5 + var5; + var4.field1263 = var0; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class146.java b/osrs/src/main/java/class146.java deleted file mode 100644 index cbdd16214..000000000 --- a/osrs/src/main/java/class146.java +++ /dev/null @@ -1,110 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("fn") -public class class146 { - @ObfuscatedName("ol") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - @Export("mousedOverWidgetIf1") - static Widget mousedOverWidgetIf1; - @ObfuscatedName("au") - long field1345; - @ObfuscatedName("ae") - public int field1347; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Loc;" - ) - IterableNodeDeque field1346; - - @ObfuscatedSignature( - descriptor = "(Ltm;)V" - ) - public class146(Buffer var1) { - this.field1347 = -1; - this.field1346 = new IterableNodeDeque(); - this.method780(var1); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-82" - ) - void method780(Buffer var1) { - this.field1345 = var1.readLong(); - this.field1347 = var1.readInt(); - - for (int var2 = var1.readUnsignedByte(); var2 != 0; var2 = var1.readUnsignedByte()) { - Object var3; - if (var2 == 3) { - var3 = new class165(this); - } else if (var2 == 1) { - var3 = new class141(this); - } else if (var2 == 13) { - var3 = new class158(this); - } else if (var2 == 4) { - var3 = new class150(this); - } else if (var2 == 6) { - var3 = new class157(this); - } else if (var2 == 5) { - var3 = new class142(this); - } else if (var2 == 2) { - var3 = new class147(this); - } else if (var2 == 7) { - var3 = new class140(this); - } else if (var2 == 14) { - var3 = new class144(this); - } else if (var2 == 8) { - var3 = new class161(this); - } else if (var2 == 9) { - var3 = new class167(this); - } else if (var2 == 10) { - var3 = new class153(this); - } else if (var2 == 11) { - var3 = new class148(this); - } else if (var2 == 12) { - var3 = new class152(this); - } else { - if (var2 != 15) { - throw new RuntimeException(""); - } - - var3 = new class162(this); - } - - ((class143)var3).vmethod3254(var1); - this.field1346.addFirst((Node)var3); - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lfi;I)V", - garbageValue = "192399010" - ) - public void method781(ClanSettings var1) { - if (var1.field1377 == this.field1345 && this.field1347 == var1.field1388) { - for (class143 var2 = (class143)this.field1346.last(); var2 != null; var2 = (class143)this.field1346.previous()) { - var2.vmethod3248(var1); - } - - ++var1.field1388; - } else { - throw new RuntimeException(""); - } - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)Lly;", - garbageValue = "-1" - ) - public static PacketBufferNode method779() { - return PacketBufferNode.PacketBufferNode_packetBufferNodeCount == 0 ? new PacketBufferNode() : PacketBufferNode.PacketBufferNode_packetBufferNodes[--PacketBufferNode.PacketBufferNode_packetBufferNodeCount]; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class147.java b/osrs/src/main/java/class147.java index 550f9eeca..88a5b817f 100644 --- a/osrs/src/main/java/class147.java +++ b/osrs/src/main/java/class147.java @@ -2,458 +2,134 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fx") -public class class147 extends class143 { - @ObfuscatedName("ff") +@ObfuscatedName("fv") +public class class147 { + @ObfuscatedName("at") + long field1344; + @ObfuscatedName("ah") + public int field1346; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Lpm;" ) - static Archive field1348; - @ObfuscatedName("au") - int field1350; - @ObfuscatedName("ae") - byte field1349; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lfn;" - ) - final class146 this$0; - - @ObfuscatedSignature( - descriptor = "(Lfn;)V" - ) - class147(class146 var1) { - this.this$0 = var1; - this.field1350 = -1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" - ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1350 = var1.readUnsignedShort(); - this.field1349 = var1.readByte(); - } + IterableNodeDeque field1345; - @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Luj;)V" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method817(this.field1350, this.field1349); + public class147(Buffer var1) { + this.field1346 = -1; + this.field1345 = new IterableNodeDeque(); + this.method769(var1); } - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ldy;Ldh;III)V", - garbageValue = "1066790817" + descriptor = "(Luj;I)V", + garbageValue = "867669029" ) - @Export("runScriptLogic") - static void runScriptLogic(ScriptEvent var0, Script var1, int var2, int var3) { - Object[] var4 = var0.args; - SoundCache.Interpreter_intStackSize = 0; - class137.Interpreter_stringStackSize = 0; - int var5 = -1; - int[] var6 = var1.opcodes; - int[] var7 = var1.intOperands; - byte var8 = -1; - Interpreter.Interpreter_frameDepth = 0; - Interpreter.field705 = false; - boolean var9 = false; - int var10 = 0; - boolean var29 = false; - - label860: { - label861: { - try { - int var13; - try { - var29 = true; - Varps.Interpreter_intLocals = new int[var1.localIntCount]; - int var11 = 0; - Interpreter.Interpreter_stringLocals = new String[var1.localStringCount]; - int var12 = 0; - - int var14; - String var20; - for (var13 = 1; var13 < var4.length; ++var13) { - if (var4[var13] instanceof Integer) { - var14 = (Integer)var4[var13]; - if (var14 == -2147483647) { - var14 = var0.mouseX; - } - - if (var14 == -2147483646) { - var14 = var0.mouseY; - } - - if (var14 == -2147483645) { - var14 = var0.widget != null ? var0.widget.id * -198009563 * -802277715 : -1; - } - - if (var14 == -2147483644) { - var14 = var0.opIndex; - } - - if (var14 == -2147483643) { - var14 = var0.widget != null ? var0.widget.childIndex * 1628260767 * -1714711969 : -1; - } - - if (var14 == -2147483642) { - var14 = var0.dragTarget != null ? var0.dragTarget.id * -198009563 * -802277715 : -1; - } - - if (var14 == -2147483641) { - var14 = var0.dragTarget != null ? var0.dragTarget.childIndex * 1628260767 * -1714711969 : -1; - } - - if (var14 == -2147483640) { - var14 = var0.keyTyped; - } - - if (var14 == -2147483639) { - var14 = var0.keyPressed; - } - - Varps.Interpreter_intLocals[var11++] = var14; - } else if (var4[var13] instanceof String) { - var20 = (String)var4[var13]; - if (var20.equals("event_opbase")) { - var20 = var0.targetName; - } - - Interpreter.Interpreter_stringLocals[var12++] = var20; - } - } - - Interpreter.field708 = var0.field864; - - label841: - while (true) { - ++var10; - if (var10 > var2) { - throw new RuntimeException(); - } - - ++var5; - int var32 = var6[var5]; - if (var32 >= 100) { - boolean var34; - if (var1.intOperands[var5] == 1) { - var34 = true; - } else { - var34 = false; - } - - var14 = PacketWriter.method644(var32, var1, var34); - switch(var14) { - case 0: - var29 = false; - break label841; - case 1: - default: - break; - case 2: - //throw new IllegalStateException(); - } - } else if (var32 == 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var7[var5]; - } else if (var32 == 1) { - var13 = var7[var5]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Varps.Varps_main[var13]; - } else if (var32 == 2) { - var13 = var7[var5]; - Varps.Varps_main[var13] = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - WorldMapDecoration.changeGameOptions(var13); - } else if (var32 == 3) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var1.stringOperands[var5]; - } else if (var32 == 6) { - var5 += var7[var5]; - } else if (var32 == 7) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] != Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 8) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] == Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 9) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] < Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 10) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] > Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 21) { - if (Interpreter.Interpreter_frameDepth == 0) { - var29 = false; - break label861; - } - - ScriptFrame var39 = Interpreter.Interpreter_frames[--Interpreter.Interpreter_frameDepth]; - var1 = var39.script; - var6 = var1.opcodes; - var7 = var1.intOperands; - var5 = var39.pc; - Varps.Interpreter_intLocals = var39.intLocals; - Interpreter.Interpreter_stringLocals = var39.stringLocals; - } else if (var32 == 25) { - var13 = var7[var5]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ClientPreferences.getVarbit(var13); - } else if (var32 == 27) { - var13 = var7[var5]; - Frames.method1293(var13, Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } else if (var32 == 31) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] <= Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 32) { - SoundCache.Interpreter_intStackSize -= 2; - if (Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] >= Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]) { - var5 += var7[var5]; - } - } else if (var32 == 33) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Varps.Interpreter_intLocals[var7[var5]]; - } else if (var32 == 34) { - Varps.Interpreter_intLocals[var7[var5]] = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - } else if (var32 == 35) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = Interpreter.Interpreter_stringLocals[var7[var5]]; - } else if (var32 == 36) { - Interpreter.Interpreter_stringLocals[var7[var5]] = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - } else if (var32 == 37) { - var13 = var7[var5]; - class137.Interpreter_stringStackSize -= var13; - var20 = class271.method1540(Interpreter.Interpreter_stringStack, class137.Interpreter_stringStackSize, var13); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var20; - } else if (var32 == 38) { - --SoundCache.Interpreter_intStackSize; - } else if (var32 == 39) { - --class137.Interpreter_stringStackSize; - } else { - int var17; - if (var32 != 40) { - if (var32 == 42) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = KeyHandler.varcs.getInt(var7[var5]); - } else if (var32 == 43) { - KeyHandler.varcs.setInt(var7[var5], Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } else if (var32 == 44) { - var13 = var7[var5] >> 16; - var14 = var7[var5] & 65535; - int var23 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var23 < 0 || var23 > 5000) { - throw new RuntimeException(); - } - - Interpreter.Interpreter_arrayLengths[var13] = var23; - byte var24 = -1; - if (var14 == 105) { - var24 = 0; - } - - for (var17 = 0; var17 < var23; ++var17) { - Interpreter.Interpreter_arrays[var13][var17] = var24; - } - } else if (var32 == 45) { - var13 = var7[var5]; - var14 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var14 < 0 || var14 >= Interpreter.Interpreter_arrayLengths[var13]) { - throw new RuntimeException(); - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Interpreter.Interpreter_arrays[var13][var14]; - } else if (var32 == 46) { - var13 = var7[var5]; - SoundCache.Interpreter_intStackSize -= 2; - var14 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - if (var14 < 0 || var14 >= Interpreter.Interpreter_arrayLengths[var13]) { - throw new RuntimeException(); - } - - Interpreter.Interpreter_arrays[var13][var14] = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - } else { - String var21; - if (var32 == 47) { - var21 = KeyHandler.varcs.getStringOld(var7[var5]); - if (var21 == null) { - var21 = "null"; - } - - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var21; - } else if (var32 == 48) { - KeyHandler.varcs.setStringOld(var7[var5], Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]); - } else if (var32 == 49) { - var21 = KeyHandler.varcs.getString(var7[var5]); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var21; - } else if (var32 == 50) { - KeyHandler.varcs.setString(var7[var5], Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]); - } else if (var32 == 60) { - IterableNodeHashTable var37 = var1.switches[var7[var5]]; - IntegerNode var36 = (IntegerNode)var37.get((long)Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var36 != null) { - var5 += var36.integer; - } - } else { - Integer var38; - if (var32 == 74) { - var38 = class466.field3912.getTitleGroupValue(var7[var5]); - if (var38 == null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var38; - } - } else { - if (var32 != 76) { - throw new IllegalStateException(); - } - - var38 = class139.varclan.method2320(var7[var5]); - if (var38 == null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var38; - } - } - } - } - } else { - var13 = var7[var5]; - Script var35 = class133.getScript(var13); - int[] var15 = new int[var35.localIntCount]; - String[] var16 = new String[var35.localStringCount]; - - for (var17 = 0; var17 < var35.intArgumentCount; ++var17) { - var15[var17] = Interpreter.Interpreter_intStack[var17 + (SoundCache.Interpreter_intStackSize - var35.intArgumentCount)]; - } - - for (var17 = 0; var17 < var35.stringArgumentCount; ++var17) { - var16[var17] = Interpreter.Interpreter_stringStack[var17 + (class137.Interpreter_stringStackSize - var35.stringArgumentCount)]; - } - - SoundCache.Interpreter_intStackSize -= var35.intArgumentCount; - class137.Interpreter_stringStackSize -= var35.stringArgumentCount; - ScriptFrame var22 = new ScriptFrame(); - var22.script = var1; - var22.pc = var5; - var22.intLocals = Varps.Interpreter_intLocals; - var22.stringLocals = Interpreter.Interpreter_stringLocals; - Interpreter.Interpreter_frames[++Interpreter.Interpreter_frameDepth - 1] = var22; - var1 = var35; - var6 = var35.opcodes; - var7 = var35.intOperands; - var5 = -1; - Varps.Interpreter_intLocals = var15; - Interpreter.Interpreter_stringLocals = var16; - } - } - } - } catch (Exception var30) { - var9 = true; - StringBuilder var26 = new StringBuilder(30); - var26.append("").append(var1.key).append(" "); - - for (var13 = Interpreter.Interpreter_frameDepth - 1; var13 >= 0; --var13) { - var26.append("").append(Interpreter.Interpreter_frames[var13].script.key).append(" "); - } - - var26.append("").append(var8); - Messages.RunException_sendStackTrace(var26.toString(), var30); - var29 = false; - break label860; - } - } finally { - if (var29) { - while (Interpreter.field715.size() > 0) { - class102 var19 = (class102)Interpreter.field715.remove(0); - class47.widgetDefaultMenuAction(var19.method601(), var19.method602(), var19.method603(), var19.method604(), ""); - } - - if (Interpreter.field705) { - Interpreter.field705 = false; - WorldMapIcon_1.method1402(); - } - - if (!var9 && var3 > 0 && var10 >= var3) { - Messages.RunException_sendStackTrace("Warning: Script " + var1.field817 + " finished at op count " + var10 + " of max " + var2, (Throwable)null); - } - - } - } - - while (Interpreter.field715.size() > 0) { - class102 var33 = (class102)Interpreter.field715.remove(0); - class47.widgetDefaultMenuAction(var33.method601(), var33.method602(), var33.method603(), var33.method604(), ""); - } - - if (Interpreter.field705) { - Interpreter.field705 = false; - WorldMapIcon_1.method1402(); - } - - if (!var9 && var3 > 0 && var10 >= var3) { - Messages.RunException_sendStackTrace("Warning: Script " + var1.field817 + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + void method769(Buffer var1) { + this.field1344 = var1.readLong(); + this.field1346 = var1.readInt(); + + for (int var2 = var1.readUnsignedByte(); var2 != 0; var2 = var1.readUnsignedByte()) { + Object var3; + if (var2 == 3) { + var3 = new class166(this); + } else if (var2 == 1) { + var3 = new class142(this); + } else if (var2 == 13) { + var3 = new class159(this); + } else if (var2 == 4) { + var3 = new class151(this); + } else if (var2 == 6) { + var3 = new class158(this); + } else if (var2 == 5) { + var3 = new class143(this); + } else if (var2 == 2) { + var3 = new class148(this); + } else if (var2 == 7) { + var3 = new class141(this); + } else if (var2 == 14) { + var3 = new class145(this); + } else if (var2 == 8) { + var3 = new class162(this); + } else if (var2 == 9) { + var3 = new class168(this); + } else if (var2 == 10) { + var3 = new class154(this); + } else if (var2 == 11) { + var3 = new class149(this); + } else if (var2 == 12) { + var3 = new class153(this); + } else { + if (var2 != 15) { + throw new RuntimeException(""); } - return; + var3 = new class163(this); } - while (Interpreter.field715.size() > 0) { - class102 var40 = (class102)Interpreter.field715.remove(0); - class47.widgetDefaultMenuAction(var40.method601(), var40.method602(), var40.method603(), var40.method604(), ""); - } + ((class144)var3).vmethod3254(var1); + this.field1345.addFirst((Node)var3); + } - if (Interpreter.field705) { - Interpreter.field705 = false; - WorldMapIcon_1.method1402(); - } + } - if (!var9 && var3 > 0 && var10 >= var3) { - Messages.RunException_sendStackTrace("Warning: Script " + var1.field817 + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;B)V", + garbageValue = "-115" + ) + public void method770(ClanSettings var1) { + if (var1.field1374 == this.field1344 && this.field1346 == var1.field1385) { + for (class144 var2 = (class144)this.field1345.last(); var2 != null; var2 = (class144)this.field1345.previous()) { + var2.vmethod3248(var1); } - return; - } - - while (Interpreter.field715.size() > 0) { - class102 var25 = (class102)Interpreter.field715.remove(0); - class47.widgetDefaultMenuAction(var25.method601(), var25.method602(), var25.method603(), var25.method604(), ""); - } - - if (Interpreter.field705) { - Interpreter.field705 = false; - WorldMapIcon_1.method1402(); + ++var1.field1385; + } else { + throw new RuntimeException(""); } + } - if (!var9 && var3 > 0 && var10 >= var3) { - Messages.RunException_sendStackTrace("Warning: Script " + var1.field817 + " finished at op count " + var10 + " of max " + var2, (Throwable)null); + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "193145278" + ) + static int method771(int var0, Script var1, boolean var2) { + if (var0 == 7463) { + boolean var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class165.method863(var3); + return 1; + } else { + return 2; } - } - @ObfuscatedName("ji") + @ObfuscatedName("np") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-531661874" + descriptor = "(IIIILuz;Lme;I)V", + garbageValue = "2144355739" ) - static void method785() { - int var0 = Players.Players_count; - int[] var1 = Players.Players_indices; + @Export("drawSpriteOnMinimap") + static final void drawSpriteOnMinimap(int var0, int var1, int var2, int var3, SpritePixels var4, SpriteMask var5) { + if (var4 != null) { + int var6 = Client.camAngleY & 2047; + int var7 = var3 * var3 + var2 * var2; + if (var7 <= 6400) { + int var8 = Rasterizer3D.Rasterizer3D_sine[var6]; + int var9 = Rasterizer3D.Rasterizer3D_cosine[var6]; + int var10 = var3 * var8 + var9 * var2 >> 16; + int var11 = var3 * var9 - var8 * var2 >> 16; + if (var7 > 2500) { + var4.method2701(var10 + var5.width / 2 - var4.width / 2, var5.height / 2 - var11 - var4.height / 2, var0, var1, var5.width, var5.height, var5.xStarts, var5.xWidths); + } else { + var4.drawTransBgAt(var0 + var10 + var5.width / 2 - var4.width / 2, var5.height / 2 + var1 - var11 - var4.height / 2); + } - for (int var2 = 0; var2 < var0; ++var2) { - if (var1[var2] != Client.combatTargetPlayerIndex && var1[var2] != Client.localPlayerIndex) { - class92.addPlayerToScene(Client.players[var1[var2]], true); } } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class148.java b/osrs/src/main/java/class148.java index 63985acf9..9ce6545ff 100644 --- a/osrs/src/main/java/class148.java +++ b/osrs/src/main/java/class148.java @@ -2,67 +2,62 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ff") -public class class148 extends class143 { - @ObfuscatedName("aw") - @Export("BZip2Decompressor_block") - static int[] BZip2Decompressor_block; - @ObfuscatedName("au") - int field1355; - @ObfuscatedName("ae") - int field1352; - @ObfuscatedName("ao") - int field1353; +@ObfuscatedName("fp") +public class class148 extends class144 { + @ObfuscatedName("dg") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + @Export("worldSelectArrows") + static IndexedSprite[] worldSelectArrows; + @ObfuscatedName("qj") + @Export("widgetDragDuration") + static int widgetDragDuration; @ObfuscatedName("at") - int field1354; + int field1350; + @ObfuscatedName("ah") + byte field1349; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class148(class146 var1) { + class148(class147 var1) { this.this$0 = var1; + this.field1350 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - this.field1355 = var1.readInt(); - this.field1354 = var1.readInt(); - this.field1352 = var1.readUnsignedByte(); - this.field1353 = var1.readUnsignedByte(); + this.field1350 = var1.readUnsignedShort(); + this.field1349 = var1.readByte(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method822(this.field1355, this.field1354, this.field1352, this.field1353); + var1.method810(this.field1350, this.field1349); } - @ObfuscatedName("af") + @ObfuscatedName("bb") @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "236426958" + descriptor = "(ILdt;ZI)I", + garbageValue = "415376551" ) - static boolean method788(char var0) { - for (int var1 = 0; var1 < "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".length(); ++var1) { - if (var0 == "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".charAt(var1)) { - return true; - } - } - - return false; + static int method775(int var0, Script var1, boolean var2) { + return 2; } } \ No newline at end of file diff --git a/osrs/src/main/java/class149.java b/osrs/src/main/java/class149.java index 7d19cd919..0961dd8f6 100644 --- a/osrs/src/main/java/class149.java +++ b/osrs/src/main/java/class149.java @@ -2,54 +2,324 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fc") -public class class149 extends class159 { - @ObfuscatedName("au") - int field1358; - @ObfuscatedName("ae") - byte field1356; - @ObfuscatedName("ao") - int field1357; +@ObfuscatedName("fk") +public class class149 extends class144 { @ObfuscatedName("at") - String field1359; + int field1354; + @ObfuscatedName("ah") + int field1351; + @ObfuscatedName("ar") + int field1353; + @ObfuscatedName("ao") + int field1352; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lfv;" ) - final class160 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lgg;)V" + descriptor = "(Lfv;)V" ) - class149(class160 var1) { + class149(class147 var1) { this.this$0 = var1; - this.field1358 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-734756620" + ) + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1354 = var1.readInt(); + this.field1352 = var1.readInt(); + this.field1351 = var1.readUnsignedByte(); + this.field1353 = var1.readUnsignedByte(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" + ) + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method815(this.field1354, this.field1352, this.field1351, this.field1353); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Lhz;", + garbageValue = "1206229207" + ) + public static HitSplatDefinition method776(int var0) { + HitSplatDefinition var1 = (HitSplatDefinition)HitSplatDefinition.HitSplatDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = HitSplatDefinition.HitSplatDefinition_archive.takeFile(32, var0); + var1 = new HitSplatDefinition(); + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + HitSplatDefinition.HitSplatDefinition_cached.put(var1, (long)var0); + return var1; + } + } + + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" + descriptor = "(ILdt;ZI)I", + garbageValue = "1559513020" ) - @Export("vmethod3238") - void vmethod3238(Buffer var1) { - this.field1358 = var1.readUnsignedShort(); - this.field1356 = var1.readByte(); - this.field1357 = var1.readUnsignedShort(); - var1.readLong(); - this.field1359 = var1.readStringCp1252NullTerminated(); + static int opCodeCheck(int opCode, Script var1, boolean var2) { + if (opCode < 1000) { + return class47.method244(opCode, var1, var2); + } else if (opCode < 1100) { + return WidgetDefinition.method1738(opCode, var1, var2); + } else if (opCode < 1200) { + return class357.method1899(opCode, var1, var2); + } else if (opCode < 1300) { + return class426.method2177(opCode, var1, var2); + } else if (opCode < 1400) { + return WorldMapRectangle.method1327(opCode, var1, var2); + } else if (opCode < 1500) { + return class1.method3(opCode, var1, var2); + } else if (opCode < 1600) { + return ClanChannelMember.method768(opCode, var1, var2); + } else if (opCode < 1700) { + return ReflectionCheck.method186(opCode, var1, var2); + } else if (opCode < 1800) { + return class30.method133(opCode, var1, var2); + } else if (opCode < 1900) { + return ItemComposition.method1031(opCode, var1, var2); + } else if (opCode < 2000) { + return UserComparator6.method689(opCode, var1, var2); + } else if (opCode < 2100) { + return WidgetDefinition.method1738(opCode, var1, var2); + } else if (opCode < 2200) { + return class357.method1899(opCode, var1, var2); + } else if (opCode < 2300) { + return class426.method2177(opCode, var1, var2); + } else if (opCode < 2400) { + return WorldMapRectangle.method1327(opCode, var1, var2); + } else if (opCode < 2500) { + return class1.method3(opCode, var1, var2); + } else if (opCode < 2600) { + return class168.method874(opCode, var1, var2); + } else if (opCode < 2700) { + return class60.method338(opCode, var1, var2); + } else if (opCode < 2800) { + return FloorOverlayDefinition.method1038(opCode, var1, var2); + } else if (opCode < 2900) { + return UrlRequester.method651(opCode, var1, var2); + } else if (opCode < 3000) { + return UserComparator6.method689(opCode, var1, var2); + } else if (opCode < 3200) { + return World.method407(opCode, var1, var2); + } else if (opCode < 3300) { + return class159.method837(opCode, var1, var2); + } else if (opCode < 3400) { + return class463.method2335(opCode, var1, var2); + } else if (opCode < 3500) { + return ApproximateRouteStrategy.method356(opCode, var1, var2); + } else if (opCode < 3600) { + return RouteStrategy.method1151(opCode, var1, var2); + } else if (opCode < 3700) { + return class350.method1890(opCode, var1, var2); + } else if (opCode < 3800) { + return SequenceDefinition.method1055(opCode, var1, var2); + } else if (opCode < 3900) { + return WorldMapRectangle.method1328(opCode, var1, var2); + } else if (opCode < 4000) { + return Actor.method517(opCode, var1, var2); + } else if (opCode < 4100) { + return class422.method2168(opCode, var1, var2); + } else if (opCode < 4200) { + return ArchiveDiskAction.method1909(opCode, var1, var2); + } else if (opCode < 4300) { + return ObjectSound.method425(opCode, var1, var2); + } else if (opCode < 5100) { + return class12.method48(opCode, var1, var2); + } else if (opCode < 5400) { + return class72.method434(opCode, var1, var2); + } else if (opCode < 5600) { + return SoundSystem.method232(opCode, var1, var2); + } else if (opCode < 5700) { + return UserComparator9.method682(opCode, var1, var2); + } else if (opCode < 6300) { + return class134.method732(opCode, var1, var2); + } else if (opCode < 6600) { + return class138.method738(opCode, var1, var2); + } else if (opCode < 6700) { + return SecureRandomCallable.method458(opCode, var1, var2); + } else if (opCode < 6800) { + return class344.method1878(opCode, var1, var2); + } else if (opCode < 6900) { + return class17.method62(opCode, var1, var2); + } else if (opCode < 7000) { + return VerticalAlignment.method959(opCode, var1, var2); + } else if (opCode < 7100) { + return class148.method775(opCode, var1, var2); + } else if (opCode < 7200) { + return class158.method833(opCode, var1, var2); + } else if (opCode < 7300) { + return ScriptEvent.method468(opCode, var1, var2); + } else if (opCode < 7500) { + return class147.method771(opCode, var1, var2); + } else if (opCode < 7600) { + return class59.method333(opCode, var1, var2); + } else if (opCode < 7700) { + return class12.method49(opCode, var1, var2); + } else { + return opCode < 8100 ? ModelData0.method1599(opCode, var1, var2) : 2; + } } - @ObfuscatedName("ae") + @ObfuscatedName("hr") @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" + descriptor = "(II)V", + garbageValue = "-869974291" ) - @Export("vmethod3239") - void vmethod3239(ClanChannel var1) { - ClanChannelMember var2 = (ClanChannelMember)var1.members.get(this.field1358); - var2.rank = this.field1356; - var2.world = this.field1357; - var2.username = new Username(this.field1359); + @Export("getLoginError") + static void getLoginError(int var0) { + int var1 = Login.loginIndex; + if (var0 == -3) { + class139.setLoginResponseString("Connection timed out.", "Please try using a different world.", ""); + } else if (var0 == -2) { + class139.setLoginResponseString("Error connecting to server.", "Please try using a different world.", ""); + } else if (var0 == -1) { + class139.setLoginResponseString("No response from server.", "Please try using a different world.", ""); + } else if (var0 == 3) { + UserComparator7.method674(3); + Login.field750 = 1; + } else if (var0 == 4) { + class129.method711(0); + } else if (var0 == 5) { + Login.field750 = 2; + class139.setLoginResponseString("Either your account is still logged in, or the last", "world you were using has become unavailable.", "Please try again later."); + } else if (var0 == 68) { + if (!Client.reloadJS5) { + Client.reloadJS5 = true; + ByteArrayPool.reloadJS5(); + return; + } + + class139.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); + } else if (!Client.onMobile && var0 == 6) { + class139.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); + } else if (var0 == 7) { + class139.setLoginResponseString("This world is full.", "Please use a different world.", ""); + } else if (var0 == 8) { + class139.setLoginResponseString("Unable to connect.", "Login server offline.", ""); + } else if (var0 == 9) { + class139.setLoginResponseString("Login limit exceeded.", "Too many connections from your address.", ""); + } else if (var0 == 10) { + class139.setLoginResponseString("Unable to connect.", "Bad session id.", ""); + } else if (var0 == 11) { + class139.setLoginResponseString("We suspect someone knows your password.", "Press 'change your password' on front page.", ""); + } else if (var0 == 12) { + class139.setLoginResponseString("You need a members account to login to this world.", "Please subscribe, or use a different world.", ""); + } else if (var0 == 13) { + class139.setLoginResponseString("Could not complete login.", "Please try using a different world.", ""); + } else if (var0 == 14) { + class139.setLoginResponseString("The server is being updated.", "Please wait 1 minute and try again.", ""); + } else if (var0 == 16) { + class139.setLoginResponseString("Too many login attempts.", "You can use the Jagex Launcher to continue playing.", "Press the button below to download it now."); + UserComparator7.method674(33); + } else if (var0 == 17) { + class139.setLoginResponseString("To access this free world, log into a", "members world and move your character", "to a non-members area."); + } else if (var0 == 18) { + class129.method711(1); + } else if (var0 == 19) { + class139.setLoginResponseString("This world is running a closed Beta.", "Sorry invited players only.", "Please use a different world."); + } else if (var0 == 20) { + class139.setLoginResponseString("Invalid loginserver requested.", "Please try using a different world.", ""); + } else if (var0 == 22) { + class139.setLoginResponseString("Malformed login packet.", "Please try again.", ""); + } else if (var0 == 23) { + class139.setLoginResponseString("No reply from loginserver.", "Please wait 1 minute and try again.", ""); + } else if (var0 == 24) { + class139.setLoginResponseString("Error loading your profile.", "Please contact customer support.", ""); + } else if (var0 == 25) { + class139.setLoginResponseString("Unexpected loginserver response.", "Please try using a different world.", ""); + } else if (var0 == 26) { + class139.setLoginResponseString("This computers address has been blocked", "as it was used to break our rules.", ""); + } else if (var0 == 27) { + class139.setLoginResponseString("", "Service unavailable.", ""); + } else if (var0 == 31) { + class139.setLoginResponseString("Your account must have a displayname set", "in order to play the game. Please set it", "via the website, or the main game."); + } else if (var0 == 32) { + class129.method711(2); + } else if (var0 == 37) { + class139.setLoginResponseString("Your account is currently inaccessible.", "Please try again in a few minutes.", ""); + } else if (var0 == 38) { + class139.setLoginResponseString("You need to vote to play!", "Visit runescape.com and vote,", "and then come back here!"); + } else if (var0 == 55) { + UserComparator7.method674(8); + } else { + if (var0 == 56) { + class139.setLoginResponseString("Enter the 6-digit code generated by your", "authenticator app.", ""); + WorldMapSection2.updateGameState(11); + return; + } + + if (var0 == 57) { + class139.setLoginResponseString("The code you entered was incorrect.", "Please try again.", ""); + WorldMapSection2.updateGameState(11); + return; + } + + if (var0 == 61) { + class139.setLoginResponseString("", "Please enter your date of birth (DD/MM/YYYY)", ""); + UserComparator7.method674(7); + } else { + if (var0 == 62) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(9); + class139.setLoginResponseString("Login attempt timed out.", "Please try again.", ""); + return; + } + + if (var0 == 63) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(9); + class139.setLoginResponseString("You were signed out.", "Please sign in again.", ""); + return; + } + + if (var0 == 65 || var0 == 67) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(9); + class139.setLoginResponseString("Failed to login.", "Please try again.", ""); + return; + } + + if (var0 == 71) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(7); + class139.setLoginResponseString("There was a problem updating your DOB.", "Please try again later. If the problem ", "persists, please contact Jagex Support."); + } else if (var0 == 73) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(6); + class139.setLoginResponseString("Your date of birth information is waiting", "to be reviewed by our staff.", "It will be processed shortly."); + } else if (var0 == 72) { + WorldMapSection2.updateGameState(10); + UserComparator7.method674(32); + } else { + class139.setLoginResponseString("Unexpected server response", "Please try using a different world.", ""); + } + } + } + + WorldMapSection2.updateGameState(10); + int var4 = Login.loginIndex; + boolean var5 = var1 != var4; + if (!var5 && Client.field648.method2633()) { + UserComparator7.method674(9); + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class15.java b/osrs/src/main/java/class15.java index b32c7dd74..235fd042f 100644 --- a/osrs/src/main/java/class15.java +++ b/osrs/src/main/java/class15.java @@ -14,15 +14,15 @@ import java.security.SecureRandom; import java.security.Security; -@ObfuscatedName("ab") +@ObfuscatedName("ak") public class class15 extends SSLSocketFactory { - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lab;" + descriptor = "Lak;" ) - static class15 field46; - @ObfuscatedName("au") - SecureRandom field47; + public static class15 field49; + @ObfuscatedName("at") + SecureRandom field50; static { if (Security.getProvider("BC") == null) { @@ -31,16 +31,16 @@ public class class15 extends SSLSocketFactory { } - class15() { - this.field47 = new SecureRandom(); + public class15() { + this.field50 = new SecureRandom(); } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;Lorg/bouncycastle/crypto/tls/TlsClientProtocol;B)Ljavax/net/ssl/SSLSocket;", - garbageValue = "59" + garbageValue = "-15" ) - SSLSocket method46(String var1, TlsClientProtocol var2) { + SSLSocket method59(String var1, TlsClientProtocol var2) { return new class12(this, var2, var1); } @@ -55,8 +55,8 @@ public Socket createSocket(Socket var1, String var2, int var3, boolean var4) thr var1.connect(new InetSocketAddress(var2, var3)); } - TlsClientProtocol var5 = new TlsClientProtocol(var1.getInputStream(), var1.getOutputStream(), this.field47); - return this.method46(var2, var5); + TlsClientProtocol var5 = new TlsClientProtocol(var1.getInputStream(), var1.getOutputStream(), this.field50); + return this.method59(var2, var5); } public String[] getDefaultCipherSuites() { @@ -82,17 +82,4 @@ public Socket createSocket(String var1, int var2, InetAddress var3, int var4) th public Socket createSocket(InetAddress var1, int var2, InetAddress var3, int var4) throws IOException { return null; } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Lab;", - garbageValue = "1970056082" - ) - public static class15 method45() { - if (field46 == null) { - field46 = new class15(); - } - - return field46; - } } \ No newline at end of file diff --git a/osrs/src/main/java/class150.java b/osrs/src/main/java/class150.java index c975ca307..6fa88fb90 100644 --- a/osrs/src/main/java/class150.java +++ b/osrs/src/main/java/class150.java @@ -2,56 +2,143 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fk") -public class class150 extends class143 { - @ObfuscatedName("au") - boolean field1360; - @ObfuscatedName("ae") - byte field1362; - @ObfuscatedName("ao") - byte field1363; +@ObfuscatedName("fz") +public class class150 extends class160 { @ObfuscatedName("at") - byte field1364; - @ObfuscatedName("ac") - byte field1361; + int field1357; + @ObfuscatedName("ah") + byte field1355; + @ObfuscatedName("ar") + int field1356; + @ObfuscatedName("ao") + String field1358; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lgi;" ) - final class146 this$0; + final class161 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lgi;)V" ) - class150(class146 var1) { + class150(class161 var1) { this.this$0 = var1; + this.field1357 = -1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "1810249387" + ) + @Export("vmethod3238") + void vmethod3238(Buffer var1) { + this.field1357 = var1.readUnsignedShort(); + this.field1355 = var1.readByte(); + this.field1356 = var1.readUnsignedShort(); + var1.readLong(); + this.field1358 = var1.readStringCp1252NullTerminated(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lgn;B)V", + garbageValue = "-75" + ) + @Export("vmethod3239") + void vmethod3239(ClanChannel var1) { + ClanChannelMember var2 = (ClanChannelMember)var1.members.get(this.field1357); + var2.rank = this.field1355; + var2.world = this.field1356; + var2.username = new Username(this.field1358); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1818675777" + ) + static void method785() { + if (Client.Login_isUsernameRemembered && Login.Login_username != null && Login.Login_username.length() > 0) { + Login.currentLoginField = 1; + } else { + Login.currentLoginField = 0; + } + } - @ObfuscatedName("au") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Ljava/lang/CharSequence;I)I", + garbageValue = "2073691331" ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1360 = var1.readUnsignedByte() == 1; - this.field1362 = var1.readByte(); - this.field1363 = var1.readByte(); - this.field1364 = var1.readByte(); - this.field1361 = var1.readByte(); + @Export("hashString") + public static int hashString(CharSequence var0) { + int var1 = var0.length(); + int var2 = 0; + + for (int var3 = 0; var3 < var1; ++var3) { + var2 = (var2 << 5) - var2 + class137.charToByteCp1252(var0.charAt(var3)); + } + + return var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "([BIII)Z", + garbageValue = "-851651370" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.allowGuests = this.field1360; - var1.field1383 = this.field1362; - var1.field1385 = this.field1363; - var1.field1384 = this.field1364; - var1.field1386 = this.field1361; + static final boolean method784(byte[] var0, int var1, int var2) { + boolean var3 = true; + Buffer var4 = new Buffer(var0); + int var5 = -1; + + label57: + while (true) { + int var6 = var4.readIncrSmallSmart(); + if (var6 == 0) { + return var3; + } + + var5 += var6; + int var7 = 0; + boolean var8 = false; + + while (true) { + int var9; + while (!var8) { + var9 = var4.readUShortSmart(); + if (var9 == 0) { + continue label57; + } + + var7 += var9 - 1; + int var10 = var7 & 63; + int var11 = var7 >> 6 & 63; + int var12 = var4.readUnsignedByte() >> 2; + int var13 = var11 + var1; + int var14 = var10 + var2; + if (var13 > 0 && var14 > 0 && var13 < 103 && var14 < 103) { + ObjectComposition var15 = WorldMapSection2.getObjectDefinition(var5); + if (var12 != 22 || !Client.isLowDetail || var15.int1 != 0 || var15.interactType == 1 || var15.boolean2) { + if (!var15.needsModelFiles()) { + ++Client.field453; + var3 = false; + } + + var8 = true; + } + } + } + + var9 = var4.readUShortSmart(); + if (var9 == 0) { + break; + } + + var4.readUnsignedByte(); + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class151.java b/osrs/src/main/java/class151.java index 071084b9d..bce2765e6 100644 --- a/osrs/src/main/java/class151.java +++ b/osrs/src/main/java/class151.java @@ -2,391 +2,86 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fm") -public class class151 extends class159 { - @ObfuscatedName("bw") - static String field1365; - @ObfuscatedName("au") - int field1366; +import java.awt.*; + +@ObfuscatedName("fx") +public class class151 extends class144 { + @ObfuscatedName("bg") + static Image field1359; + @ObfuscatedName("at") + boolean field1360; + @ObfuscatedName("ah") + byte field1362; + @ObfuscatedName("ar") + byte field1364; + @ObfuscatedName("ao") + byte field1363; + @ObfuscatedName("ab") + byte field1361; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lfv;" ) - final class160 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lgg;)V" + descriptor = "(Lfv;)V" ) - class151(class160 var1) { + class151(class147 var1) { this.this$0 = var1; - this.field1366 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) - @Export("vmethod3238") - void vmethod3238(Buffer var1) { - this.field1366 = var1.readUnsignedShort(); - var1.readUnsignedByte(); - if (var1.readUnsignedByte() != 255) { - --var1.offset; - var1.readLong(); - } - + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1360 = var1.readUnsignedByte() == 1; + this.field1362 = var1.readByte(); + this.field1364 = var1.readByte(); + this.field1363 = var1.readByte(); + this.field1361 = var1.readByte(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) - @Export("vmethod3239") - void vmethod3239(ClanChannel var1) { - var1.removeMember(this.field1366); + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.allowGuests = this.field1360; + var1.field1380 = this.field1362; + var1.field1383 = this.field1364; + var1.field1381 = this.field1363; + var1.field1382 = this.field1361; } - @ObfuscatedName("kl") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(Lto;I)V", - garbageValue = "-619616137" + descriptor = "(II)Lfo;", + garbageValue = "1476785465" ) - static final void method795(PacketBuffer var0) { - for (int var1 = 0; var1 < Client.field451; ++var1) { - int var2 = Client.field552[var1]; - NPC var3 = Client.npcs[var2]; - int var4 = var0.readUnsignedByte(); - int var5; - if ((var4 & 8) != 0) { - var5 = var0.readUnsignedByte(); - var4 += var5 << 8; - } - - if ((var4 & 2048) != 0) { - var5 = var0.readUnsignedByte(); - var4 += var5 << 16; - } - - int var6; - int var7; - int var8; - int var9; - int var10; - if ((var4 & 128) != 0) { - var5 = var0.readUnsignedByteNeg(); - int var11; - if (var5 > 0) { - for (var6 = 0; var6 < var5; ++var6) { - var8 = -1; - var9 = -1; - var10 = -1; - var7 = var0.readUShortSmart(); - if (var7 == 32767) { - var7 = var0.readUShortSmart(); - var9 = var0.readUShortSmart(); - var8 = var0.readUShortSmart(); - var10 = var0.readUShortSmart(); - } else if (var7 != 32766) { - var9 = var0.readUShortSmart(); - } else { - var7 = -1; - } - - var11 = var0.readUShortSmart(); - var3.addHitSplat(var7, var9, var8, var10, Client.cycle, var11); - } - } - - var6 = var0.readUnsignedByteSub(); - if (var6 > 0) { - for (var7 = 0; var7 < var6; ++var7) { - var8 = var0.readUShortSmart(); - var9 = var0.readUShortSmart(); - if (var9 != 32767) { - var10 = var0.readUShortSmart(); - var11 = var0.readUnsignedByteNeg(); - int var12 = var9 > 0 ? var0.readUnsignedByteNeg() : var11; - var3.addHealthBar(var8, Client.cycle, var9, var10, var11, var12); - } else { - var3.removeHealthBar(var8); - } - } - } - } - - int[] var13; - short[] var14; - short[] var15; - long var16; - boolean var19; - if ((var4 & 512) != 0) { - var5 = var0.readUnsignedByte(); - if ((var5 & 1) == 1) { - var3.method595(); - } else { - var13 = null; - if ((var5 & 2) == 2) { - var7 = var0.readUnsignedByteAdd(); - var13 = new int[var7]; - - for (var8 = 0; var8 < var7; ++var8) { - var9 = var0.method2587(); - var9 = var9 == 65535 ? -1 : var9; - var13[var8] = var9; - } - } - - var14 = null; - if ((var5 & 4) == 4) { - var8 = 0; - if (var3.definition.recolorTo != null) { - var8 = var3.definition.recolorTo.length; - } - - var14 = new short[var8]; - - for (var9 = 0; var9 < var8; ++var9) { - var14[var9] = (short)var0.readUnsignedShortLE(); - } - } - - var15 = null; - if ((var5 & 8) == 8) { - var9 = 0; - if (var3.definition.retextureTo != null) { - var9 = var3.definition.retextureTo.length; - } - - var15 = new short[var9]; - - for (var10 = 0; var10 < var9; ++var10) { - var15[var10] = (short)var0.readUnsignedShortLE(); - } - } - - var19 = false; - if ((var5 & 16) != 0) { - var19 = var0.readUnsignedByteSub() == 1; - } - - var16 = (long)(++NPC.field1074 - 1); - var3.method592(new NewShit(var16, var13, var14, var15, var19)); - } - } - - if ((var4 & 32) != 0) { - var5 = var0.readUnsignedShortLE(); - var6 = var0.readUnsignedShort(); - var3.field959 = var0.readUnsignedByteNeg() == 1; - if (Client.param25 >= 212) { - var3.field988 = var5; - var3.field989 = var6; - } else { - var7 = var3.x - (var5 - UrlRequester.baseX - UrlRequester.baseX) * 64; - var8 = var3.y - (var6 - class47.baseY - class47.baseY) * 64; - if (var7 != 0 || var8 != 0) { - var10 = (int)(Math.atan2((double)var7, (double)var8) * 325.94932345220167D) & 2047; - var3.movingOrientation = var10; - } - } - } - - if ((var4 & 64) != 0) { - var5 = var0.readUnsignedShort(); - if (var5 == 65535) { - var5 = -1; + static class139 method788(int var0) { + if (MouseRecorder.method469(var0) != 0) { + return null; + } else { + class139 var2 = (class139)SequenceDefinition.SequenceDefinition_cachedModel.get((long)var0); + class139 var1; + if (var2 != null) { + var1 = var2; + } else { + var2 = Login.method437(SequenceDefinition.SequenceDefinition_animationsArchive, SequenceDefinition.SequenceDefinition_skeletonsArchive, var0, false); + if (var2 != null) { + SequenceDefinition.SequenceDefinition_cachedModel.put(var2, (long)var0); } - var6 = var0.readUnsignedByteSub(); - if (var5 == var3.sequence && var5 != -1) { - var7 = EnumComposition.SequenceDefinition_get(var5).replyMode; - if (var7 == 1) { - var3.sequenceFrame = 0; - var3.sequenceFrameCycle = 0; - var3.sequenceDelay = var6; - var3.currentSequenceFrameIndex = 0; - } - - if (var7 == 2) { - var3.currentSequenceFrameIndex = 0; - } - } else if (var5 == -1 || var3.sequence == -1 || EnumComposition.SequenceDefinition_get(var5).forcedPriority >= EnumComposition.SequenceDefinition_get(var3.sequence).forcedPriority) { - var3.sequence = var5; - var3.sequenceFrame = 0; - var3.sequenceFrameCycle = 0; - var3.sequenceDelay = var6; - var3.currentSequenceFrameIndex = 0; - var3.field1022 = var3.pathLength; - } + var1 = var2; } - if ((var4 & 131072) != 0) { - var5 = var0.readUnsignedByteNeg(); - - for (var6 = 0; var6 < var5; ++var6) { - var7 = var0.readUnsignedByteSub(); - var8 = var0.method2587(); - var9 = var0.method2598(); - var3.updateSpotAnimation(var7, var8, var9 >> 16, var9 & 65535); - } - } - - if ((var4 & 4) != 0) { - var3.definition = class90.getNpcDefinition(var0.readUnsignedShort()); - ItemLayer.method1152(var3); - var3.method591(); - } - - if ((var4 & 16) != 0) { - var3.targetIndex = var0.readIntME(); - var3.targetIndex += var0.readUnsignedByteSub() << 16; - var5 = 16777215; - if (var5 == var3.targetIndex) { - var3.targetIndex = -1; - } - } - - if ((var4 & 4096) != 0) { - var3.field1004 = var0.readSignedByteSub(); - var3.field1001 = var0.readSignedByteSub(); - var3.field1002 = var0.readByteNeg(); - var3.field1014 = var0.readByteAdd(); - var3.spotAnimation = var0.readIntME() + Client.cycle; - var3.exactMoveArrive1Cycle = var0.readUnsignedShort() + Client.cycle; - var3.exactMoveDirection = var0.method2587(); - var3.pathLength = 1; - var3.field1022 = 0; - var3.field1004 += var3.pathX[0]; - var3.field1001 += var3.pathY[0]; - var3.field1002 += var3.pathX[0]; - var3.field1014 += var3.pathY[0]; - } - - if ((var4 & 65536) != 0) { - var5 = var0.readIntIME(); - var3.turnLeftSequence = (var5 & 1) != 0 ? var0.method2587() : var3.definition.turnLeftSequence * -1670226789 * 1686120851; - var3.turnRightSequence = (var5 & 2) != 0 ? var0.readUnsignedShortLE() : var3.definition.turnRightSequence * -1405323159 * 821598169; - var3.walkSequence = (var5 & 4) != 0 ? var0.readIntME() : var3.definition.walkSequence * 636917019 * 934984979; - var3.walkBackSequence = (var5 & 8) != 0 ? var0.method2587() : var3.definition.walkBackSequence * 129510829 * 1271381541; - var3.walkLeftSequence = (var5 & 16) != 0 ? var0.readUnsignedShortLE() : var3.definition.walkLeftSequence * 799501513 * -1909691015; - var3.walkRightSequence = (var5 & 32) != 0 ? var0.readUnsignedShortLE() : var3.definition.walkRightSequence * 1831978023 * 749693847; - var3.runSequence = (var5 & 64) != 0 ? var0.method2587() : var3.definition.runSequence * -1380991387 * -725499027; - var3.runBackSequence = (var5 & 128) != 0 ? var0.method2587() : var3.definition.runBackSequence * -797891459 * 1726248149; - var3.runLeftSequence = (var5 & 256) != 0 ? var0.readIntME() : var3.definition.runLeftSequence * -1089844195 * 1675023925; - var3.runRightSequence = (var5 & 512) != 0 ? var0.method2587() : var3.definition.runRightSequence * -581873653 * -1635337309; - var3.crawlSequence = (var5 & 1024) != 0 ? var0.readIntME() : var3.definition.crawlSequence * 1002809145 * -448850167; - var3.crawlBackSequence = (var5 & 2048) != 0 ? var0.method2587() : var3.definition.crawlBackSequence * -1708442501 * -2089336141; - var3.crawlLeftSequence = (var5 & 4096) != 0 ? var0.readIntME() : var3.definition.crawlLeftSequence * 2098030227 * -1815894117; - var3.crawlRightSequence = (var5 & 8192) != 0 ? var0.readUnsignedShortLE() : var3.definition.crawlRightSequence * 1404008677 * -1427405587; - var3.idleSequence = (var5 & 16384) != 0 ? var0.readIntME() : var3.definition.idleSequence * 403001363 * 260766235; - } - - if ((var4 & 262144) != 0) { - var5 = var0.readUnsignedByte(); - var13 = new int[8]; - var14 = new short[8]; - - for (var8 = 0; var8 < 8; ++var8) { - if ((var5 & 1 << var8) != 0) { - var13[var8] = var0.method2563(); - var14[var8] = (short)var0.method2560(); - } else { - var13[var8] = -1; - var14[var8] = -1; - } - } - - var3.method590(var13, var14); - } - - if ((var4 & 32768) != 0) { - var3.method577(var0.readStringCp1252NullTerminated()); - } - - if ((var4 & 2) != 0) { - var0.readUnsignedShort(); - var0.readInt(); - } - - if ((var4 & 1) != 0) { - var3.overheadText = var0.readStringCp1252NullTerminated(); - var3.overheadTextCyclesRemaining = 100; - } - - if ((var4 & 8192) != 0) { - var3.recolourStartCycle = Client.cycle + var0.readUnsignedShort(); - var3.recolourEndCycle = Client.cycle + var0.readUnsignedShort(); - var3.recolourHue = var0.readByteNeg(); - var3.recolourSaturation = var0.readByteNeg(); - var3.recolourLuminance = var0.readByteNeg(); - var3.recolourAmount = (byte)var0.readUnsignedByte(); - } - - if ((var4 & 256) != 0) { - var5 = var0.readUnsignedByteAdd(); - if ((var5 & 1) == 1) { - var3.method596(); - } else { - var13 = null; - if ((var5 & 2) == 2) { - var7 = var0.readUnsignedByteAdd(); - var13 = new int[var7]; - - for (var8 = 0; var8 < var7; ++var8) { - var9 = var0.readUnsignedShortLE(); - var9 = var9 == 65535 ? -1 : var9; - var13[var8] = var9; - } - } - - var14 = null; - if ((var5 & 4) == 4) { - var8 = 0; - if (var3.definition.recolorTo != null) { - var8 = var3.definition.recolorTo.length; - } - - var14 = new short[var8]; - - for (var9 = 0; var9 < var8; ++var9) { - var14[var9] = (short)var0.readUnsignedShortLE(); - } - } - - var15 = null; - if ((var5 & 8) == 8) { - var9 = 0; - if (var3.definition.retextureTo != null) { - var9 = var3.definition.retextureTo.length; - } - - var15 = new short[var9]; - - for (var10 = 0; var10 < var9; ++var10) { - var15[var10] = (short)var0.readIntME(); - } - } - - var19 = false; - if ((var5 & 16) != 0) { - var19 = var0.readUnsignedByteSub() == 1; - } - - var16 = (long)(++NPC.field1075 - 1); - var3.method594(new NewShit(var16, var13, var14, var15, var19)); - } - } - - if ((var4 & 16384) != 0) { - var3.method579(var0.readUnsignedByteAdd()); - } - - if ((var4 & 1024) != 0) { - var3.combatLevelChange = var0.readInt(); - } + return var1; } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class152.java b/osrs/src/main/java/class152.java index 6c93fe413..6400d0dad 100644 --- a/osrs/src/main/java/class152.java +++ b/osrs/src/main/java/class152.java @@ -2,178 +2,47 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("fy") -public class class152 extends class143 { - @ObfuscatedName("ac") - @Export("SpriteBuffer_yOffsets") - static int[] SpriteBuffer_yOffsets; - @ObfuscatedName("kd") - @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("crossSprites") - static SpritePixels[] crossSprites; - @ObfuscatedName("au") - String field1369; +@ObfuscatedName("fu") +public class class152 extends class160 { + @ObfuscatedName("at") + int field1365; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lgi;" ) - final class146 this$0; + final class161 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lgi;)V" ) - class152(class146 var1) { + class152(class161 var1) { this.this$0 = var1; + this.field1365 = -1; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" - ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1369 = var1.readStringCp1252NullTerminated(); - var1.readInt(); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" - ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.name = this.field1369; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;I)V", - garbageValue = "185699180" - ) - public static void method796(AbstractArchive var0, AbstractArchive var1) { - HealthBarDefinition.HealthBarDefinition_archive = var0; - class422.field3769 = var1; - } - - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIILhv;II)V", - garbageValue = "1173683624" + descriptor = "(Luj;I)V", + garbageValue = "1810249387" ) - static void method797(int var0, int var1, int var2, ObjectComposition var3, int var4) { - ObjectSound var5 = new ObjectSound(); - var5.plane = var0; - var5.x = var1 * 128; - var5.y = var2 * 128; - int var6 = var3.sizeX; - int var7 = var3.sizeY; - if (var4 == 1 || var4 == 3) { - var6 = var3.sizeY; - var7 = var3.sizeX; - } - - var5.maxX = (var6 + var1) * 128; - var5.maxY = (var7 + var2) * 128; - var5.soundEffectId = var3.ambientSoundId; - var5.field702 = var3.int7 * 128; - var5.field696 = var3.int5; - var5.field694 = var3.int6; - var5.soundEffectIds = var3.soundEffectIds; - if (var3.transforms != null) { - var5.obj = var3; - var5.set(); - } - - ObjectSound.objectSounds.addFirst(var5); - if (var5.soundEffectIds != null) { - var5.field698 = var5.field696 + (int)(Math.random() * (double)(var5.field694 - var5.field696)); + @Export("vmethod3238") + void vmethod3238(Buffer var1) { + this.field1365 = var1.readUnsignedShort(); + var1.readUnsignedByte(); + if (var1.readUnsignedByte() != 255) { + --var1.offset; + var1.readLong(); } } - @ObfuscatedName("mo") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "([Lmi;II)V", - garbageValue = "-73715708" + descriptor = "(Lgn;B)V", + garbageValue = "-75" ) - @Export("drawModelComponents") - static final void drawModelComponents(Widget[] var0, int var1) { - for (int var2 = 0; var2 < var0.length; ++var2) { - Widget var3 = var0[var2]; - if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !class143.isComponentHidden(var3))) { - int var5; - if (var3.type == 0) { - if (!var3.isIf3 && class143.isComponentHidden(var3) && var3 != class146.mousedOverWidgetIf1) { - continue; - } - - drawModelComponents(var0, var3.id); - if (var3.children != null) { - drawModelComponents(var3.children, var3.id); - } - - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); - if (var4 != null) { - var5 = var4.group; - if (ModeWhere.loadInterface(var5)) { - drawModelComponents(PacketBufferNode.Widget_interfaceComponents[var5], -1); - } - } - } - - if (var3.type == 6) { - if (var3.sequenceId != -1 || var3.sequenceId2 != -1) { - boolean var8 = class27.runCs1(var3); - if (var8) { - var5 = var3.sequenceId2; - } else { - var5 = var3.sequenceId; - } - - if (var5 != -1) { - SequenceDefinition var6 = EnumComposition.SequenceDefinition_get(var5); - if (!var6.isCachedModelIdSet()) { - for (var3.modelFrameCycle += Client.field457; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; class218.invalidateWidget(var3)) { - var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame]; - ++var3.modelFrame; - if (var3.modelFrame >= var6.frameIds.length) { - var3.modelFrame -= var6.frameCount; - if (var3.modelFrame < 0 || var3.modelFrame >= var6.frameIds.length) { - var3.modelFrame = 0; - } - } - } - } else { - var3.modelFrame += Client.field457; - int var7 = var6.method1085(); - if (var3.modelFrame >= var7) { - var3.modelFrame -= var6.frameCount; - if (var3.modelFrame < 0 || var3.modelFrame >= var7) { - var3.modelFrame = 0; - } - } - - class218.invalidateWidget(var3); - } - } - } - - if (var3.rotationKey != 0 && !var3.isIf3) { - int var9 = var3.rotationKey >> 16; - var5 = var3.rotationKey << 16 >> 16; - var9 *= Client.field457; - var5 *= Client.field457; - var3.modelAngleX = var9 + var3.modelAngleX & 2047; - var3.modelAngleY = var5 + var3.modelAngleY & 2047; - class218.invalidateWidget(var3); - } - } - } - } - + @Export("vmethod3239") + void vmethod3239(ClanChannel var1) { + var1.removeMember(this.field1365); } } \ No newline at end of file diff --git a/osrs/src/main/java/class153.java b/osrs/src/main/java/class153.java index b720ba5c9..5b08bd39f 100644 --- a/osrs/src/main/java/class153.java +++ b/osrs/src/main/java/class153.java @@ -1,101 +1,199 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; -@ObfuscatedName("fw") -public class class153 extends class143 { - @ObfuscatedName("au") - int field1370; - @ObfuscatedName("ae") - String field1371; +import java.lang.reflect.Field; +import java.lang.reflect.Method; + +@ObfuscatedName("fy") +public class class153 extends class144 { + @ObfuscatedName("at") + String field1366; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class153(class146 var1) { + class153(class147 var1) { this.this$0 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - this.field1370 = var1.readInt(); - this.field1371 = var1.readStringCp1252NullTerminated(); + this.field1366 = var1.readStringCp1252NullTerminated(); + var1.readInt(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method824(this.field1370, this.field1371); + var1.name = this.field1366; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1017445786" + descriptor = "(Luj;II)V", + garbageValue = "-522641810" ) - @Export("changeWorldSelectSorting") - static void changeWorldSelectSorting(int var0, int var1) { - int[] var2 = new int[4]; - int[] var3 = new int[4]; - var2[0] = var0; - var3[0] = var1; - int var4 = 1; - - for (int var5 = 0; var5 < 4; ++var5) { - if (World.World_sortOption1[var5] != var0) { - var2[var4] = World.World_sortOption1[var5]; - var3[var4] = World.World_sortOption2[var5]; - ++var4; + @Export("readReflectionCheck") + public static void readReflectionCheck(Buffer var0, int var1) { + ReflectionCheck var2 = new ReflectionCheck(); + var2.size = var0.readUnsignedByte(); + var2.id = var0.readInt(); + var2.operations = new int[var2.size]; + var2.creationErrors = new int[var2.size]; + var2.fields = new Field[var2.size]; + var2.intReplaceValues = new int[var2.size]; + var2.methods = new Method[var2.size]; + var2.arguments = new byte[var2.size][][]; + + for (int var3 = 0; var3 < var2.size; ++var3) { + try { + int var4 = var0.readUnsignedByte(); + String var5; + String var6; + int var7; + if (var4 != 0 && var4 != 1 && var4 != 2) { + if (var4 == 3 || var4 == 4) { + var5 = var0.readStringCp1252NullTerminated(); + var6 = var0.readStringCp1252NullTerminated(); + var7 = var0.readUnsignedByte(); + String[] var8 = new String[var7]; + + for (int var9 = 0; var9 < var7; ++var9) { + var8[var9] = var0.readStringCp1252NullTerminated(); + } + + String var20 = var0.readStringCp1252NullTerminated(); + byte[][] var10 = new byte[var7][]; + int var12; + if (var4 == 3) { + for (int var11 = 0; var11 < var7; ++var11) { + var12 = var0.readInt(); + var10[var11] = new byte[var12]; + var0.readBytes(var10[var11], 0, var12); + } + } + + var2.operations[var3] = var4; + Class[] var21 = new Class[var7]; + + for (var12 = 0; var12 < var7; ++var12) { + var21[var12] = FloorOverlayDefinition.loadClassFromDescriptor(var8[var12]); + } + + Class var22 = FloorOverlayDefinition.loadClassFromDescriptor(var20); + if (FloorOverlayDefinition.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } + + Method[] var13 = FloorOverlayDefinition.loadClassFromDescriptor(var5).getDeclaredMethods(); + Method[] var14 = var13; + + for (int var15 = 0; var15 < var14.length; ++var15) { + Method var16 = var14[var15]; + if (Reflection.getMethodName(var16).equals(var6)) { + Class[] var17 = Reflection.getParameterTypes(var16); + if (var17.length == var21.length) { + boolean var18 = true; + + for (int var19 = 0; var19 < var21.length; ++var19) { + if (var17[var19] != var21[var19]) { + var18 = false; + break; + } + } + + if (var18 && var22 == var16.getReturnType()) { + var2.methods[var3] = var16; + } + } + } + } + + var2.arguments[var3] = var10; + } + } else { + var5 = var0.readStringCp1252NullTerminated(); + var6 = var0.readStringCp1252NullTerminated(); + var7 = 0; + if (var4 == 1) { + var7 = var0.readInt(); + } + + var2.operations[var3] = var4; + var2.intReplaceValues[var3] = var7; + if (FloorOverlayDefinition.loadClassFromDescriptor(var5).getClassLoader() == null) { + throw new SecurityException(); + } + + var2.fields[var3] = Reflection.findField(FloorOverlayDefinition.loadClassFromDescriptor(var5), var6); + } + } catch (ClassNotFoundException var24) { + var2.creationErrors[var3] = -1; + } catch (SecurityException var25) { + var2.creationErrors[var3] = -2; + } catch (NullPointerException var26) { + var2.creationErrors[var3] = -3; + } catch (Exception var27) { + var2.creationErrors[var3] = -4; + } catch (Throwable var28) { + var2.creationErrors[var3] = -5; } } - World.World_sortOption1 = var2; - World.World_sortOption2 = var3; - GameEngine.sortWorlds(class176.World_worlds, 0, class176.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); + class36.reflectionChecks.addFirst(var2); } - @ObfuscatedName("ap") + @ObfuscatedName("ib") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "17" + descriptor = "(I)V", + garbageValue = "2091716300" ) - public static void method802() { - KitDefinition.KitDefinition_cached.clear(); + static final void method794() { + if (InterfaceParent.field861) { + UserComparator9.method683(); + InterfaceParent.field861 = false; + } + } - @ObfuscatedName("jf") + @ObfuscatedName("ng") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "-1977866275" + descriptor = "(IIIILuz;Lme;B)V", + garbageValue = "4" ) - static final void method805(int var0, int var1, int var2, int var3) { - Client.field486 = 0; - int var4 = (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX; - int var5 = (VarbitComposition.localPlayer.y >> 7) + class47.baseY; - if (var4 >= 3053 && var4 <= 3156 && var5 >= 3056 && var5 <= 3136) { - Client.field486 = 1; - } - - if (var4 >= 3072 && var4 <= 3118 && var5 >= 9492 && var5 <= 9535) { - Client.field486 = 1; - } - - if (Client.field486 == 1 && var4 >= 3139 && var4 <= 3199 && var5 >= 3008 && var5 <= 3062) { - Client.field486 = 0; + @Export("worldToMinimap") + static final void worldToMinimap(int var0, int var1, int var2, int var3, SpritePixels var4, SpriteMask var5) { + int var6 = var3 * var3 + var2 * var2; + if (var6 > 4225 && var6 < 90000) { + int var7 = Client.camAngleY & 2047; + int var8 = Rasterizer3D.Rasterizer3D_sine[var7]; + int var9 = Rasterizer3D.Rasterizer3D_cosine[var7]; + int var10 = var9 * var2 + var3 * var8 >> 16; + int var11 = var3 * var9 - var8 * var2 >> 16; + double var12 = Math.atan2((double)var10, (double)var11); + int var14 = var5.width / 2 - 25; + int var15 = (int)(Math.sin(var12) * (double)var14); + int var16 = (int)(Math.cos(var12) * (double)var14); + byte var17 = 20; + class11.redHintArrowSprite.method2703(var15 + (var0 + var5.width / 2 - var17 / 2), var5.height / 2 + var1 - var17 / 2 - var16 - 10, var17, var17, 15, 15, var12, 256); + } else { + class147.drawSpriteOnMinimap(var0, var1, var2, var3, var4, var5); } } diff --git a/osrs/src/main/java/class154.java b/osrs/src/main/java/class154.java new file mode 100644 index 000000000..83b791ac4 --- /dev/null +++ b/osrs/src/main/java/class154.java @@ -0,0 +1,44 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("fn") +public class class154 extends class144 { + @ObfuscatedName("at") + int field1367; + @ObfuscatedName("ah") + String field1368; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; + + @ObfuscatedSignature( + descriptor = "(Lfv;)V" + ) + class154(class147 var1) { + this.this$0 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-734756620" + ) + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1367 = var1.readInt(); + this.field1368 = var1.readStringCp1252NullTerminated(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" + ) + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method817(this.field1367, this.field1368); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class155.java b/osrs/src/main/java/class155.java deleted file mode 100644 index 48d6c49f7..000000000 --- a/osrs/src/main/java/class155.java +++ /dev/null @@ -1,94 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("fa") -public class class155 extends class159 { - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("Widget_fontsArchive") - public static AbstractArchive Widget_fontsArchive; - @ObfuscatedName("au") - String field1400; - @ObfuscatedName("ae") - int field1399; - @ObfuscatedName("ao") - byte field1398; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgg;" - ) - final class160 this$0; - - @ObfuscatedSignature( - descriptor = "(Lgg;)V" - ) - class155(class160 var1) { - this.this$0 = var1; - this.field1400 = null; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" - ) - @Export("vmethod3238") - void vmethod3238(Buffer var1) { - if (var1.readUnsignedByte() != 255) { - --var1.offset; - var1.readLong(); - } - - this.field1400 = var1.readStringCp1252NullTerminatedOrNull(); - this.field1399 = var1.readUnsignedShort(); - this.field1398 = var1.readByte(); - var1.readLong(); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" - ) - @Export("vmethod3239") - void vmethod3239(ClanChannel var1) { - ClanChannelMember var2 = new ClanChannelMember(); - var2.username = new Username(this.field1400); - var2.world = this.field1399; - var2.rank = this.field1398; - var1.addMember(var2); - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ltm;IB)Ljava/lang/String;", - garbageValue = "-80" - ) - static String method826(Buffer var0, int var1) { - try { - int var2 = var0.readUShortSmart(); - if (var2 > var1) { - var2 = var1; - } - - byte[] var3 = new byte[var2]; - var0.offset += class334.huffman.decompress(var0.array, var0.offset, var3, 0, var2); - String var4 = class325.decodeStringCp1252(var3, 0, var2); - return var4; - } catch (Exception var6) { - return "Cabbage"; - } - } - - @ObfuscatedName("bu") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-692209680" - ) - static int method829(int var0) { - return (int)Math.pow(2.0D, (double)(7.0F + (float)var0 / 256.0F)); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class156.java b/osrs/src/main/java/class156.java index 67462428b..876eb2e07 100644 --- a/osrs/src/main/java/class156.java +++ b/osrs/src/main/java/class156.java @@ -2,59 +2,521 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gu") -public class class156 extends class159 { - @ObfuscatedName("wl") - @Export("foundItemIds") - static short[] foundItemIds; - @ObfuscatedName("au") - int field1404; - @ObfuscatedName("ae") - byte field1402; - @ObfuscatedName("ao") - int field1403; +@ObfuscatedName("gm") +public class class156 extends class160 { @ObfuscatedName("at") - String field1405; + String field1396; + @ObfuscatedName("ah") + int field1395; + @ObfuscatedName("ar") + byte field1394; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lgi;" ) - final class160 this$0; + final class161 this$0; @ObfuscatedSignature( - descriptor = "(Lgg;)V" + descriptor = "(Lgi;)V" ) - class156(class160 var1) { + class156(class161 var1) { this.this$0 = var1; - this.field1404 = -1; + this.field1396 = null; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" + descriptor = "(Luj;I)V", + garbageValue = "1810249387" ) @Export("vmethod3238") void vmethod3238(Buffer var1) { - var1.readUnsignedByte(); - this.field1404 = var1.readUnsignedShort(); - this.field1402 = var1.readByte(); - this.field1403 = var1.readUnsignedShort(); + if (var1.readUnsignedByte() != 255) { + --var1.offset; + var1.readLong(); + } + + this.field1396 = var1.readStringCp1252NullTerminatedOrNull(); + this.field1395 = var1.readUnsignedShort(); + this.field1394 = var1.readByte(); var1.readLong(); - this.field1405 = var1.readStringCp1252NullTerminated(); - var1.readUnsignedByte(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" + descriptor = "(Lgn;B)V", + garbageValue = "-75" ) @Export("vmethod3239") void vmethod3239(ClanChannel var1) { - ClanChannelMember var2 = (ClanChannelMember)var1.members.get(this.field1404); - var2.rank = this.field1402; - var2.world = this.field1403; - var2.username = new Username(this.field1405); + ClanChannelMember var2 = new ClanChannelMember(); + var2.username = new Username(this.field1396); + var2.world = this.field1395; + var2.rank = this.field1394; + var1.addMember(var2); + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Lkf;[Liw;I)V", + garbageValue = "277248330" + ) + static final void method823(Scene var0, CollisionMap[] var1) { + int var2; + int var3; + int var4; + int var5; + for (var2 = 0; var2 < 4; ++var2) { + for (var3 = 0; var3 < 104; ++var3) { + for (var4 = 0; var4 < 104; ++var4) { + if ((Tiles.Tiles_renderFlags[var2][var3][var4] & 1) == 1) { + var5 = var2; + if ((Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { + var5 = var2 - 1; + } + + if (var5 >= 0) { + var1[var5].setBlockedByFloor(var3, var4); + } + } + } + } + } + + Tiles.rndHue += (int)(Math.random() * 5.0D) - 2; + if (Tiles.rndHue < -8) { + Tiles.rndHue = -8; + } + + if (Tiles.rndHue > 8) { + Tiles.rndHue = 8; + } + + Tiles.rndLightness += (int)(Math.random() * 5.0D) - 2; + if (Tiles.rndLightness < -16) { + Tiles.rndLightness = -16; + } + + if (Tiles.rndLightness > 16) { + Tiles.rndLightness = 16; + } + + int var9; + int var10; + int var11; + int var12; + int var13; + int var14; + int var15; + int var16; + int[] var10000; + int var17; + int var18; + for (var2 = 0; var2 < 4; ++var2) { + byte[][] var45 = class93.field948[var2]; + boolean var54 = true; + boolean var55 = true; + boolean var6 = true; + boolean var7 = true; + boolean var8 = true; + var9 = (int)Math.sqrt(5100.0D); + var10 = var9 * 768 >> 8; + + int var19; + for (var11 = 1; var11 < 103; ++var11) { + for (var12 = 1; var12 < 103; ++var12) { + var13 = Tiles.Tiles_heights[var2][var12 + 1][var11] - Tiles.Tiles_heights[var2][var12 - 1][var11]; + var14 = Tiles.Tiles_heights[var2][var12][var11 + 1] - Tiles.Tiles_heights[var2][var12][var11 - 1]; + var15 = (int)Math.sqrt((double)(var13 * var13 + var14 * var14 + 65536)); + var16 = (var13 << 8) / var15; + var17 = 65536 / var15; + var18 = (var14 << 8) / var15; + var19 = (var16 * -50 + var18 * -50 + var17 * -10) / var10 + 96; + int var20 = (var45[var12][var11 + 1] >> 3) + (var45[var12 - 1][var11] >> 2) + (var45[var12][var11 - 1] >> 2) + (var45[var12 + 1][var11] >> 3) + (var45[var12][var11] >> 1); + Tiles.field843[var12][var11] = var19 - var20; + } + } + + for (var11 = 0; var11 < 104; ++var11) { + class337.Tiles_hue[var11] = 0; + Tiles.Tiles_saturation[var11] = 0; + class185.Tiles_lightness[var11] = 0; + MenuAction.Tiles_hueMultiplier[var11] = 0; + WorldMapLabelSize.field1943[var11] = 0; + } + + for (var11 = -5; var11 < 109; ++var11) { + for (var12 = 0; var12 < 104; ++var12) { + var13 = var11 + 5; + int var10002; + if (var13 >= 0 && var13 < 104) { + long var46 = (long)Math.pow(2.0D, 15.0D) - 1L; + var16 = (int)var46; + var17 = class74.Tiles_underlays[var2][var13][var12] & var16; + if (var17 > 0) { + FloorUnderlayDefinition var48 = class101.method596(var17 - 1); + var10000 = class337.Tiles_hue; + var10000[var12] += var48.hue; + var10000 = Tiles.Tiles_saturation; + var10000[var12] += var48.saturation; + var10000 = class185.Tiles_lightness; + var10000[var12] += var48.lightness; + var10000 = MenuAction.Tiles_hueMultiplier; + var10000[var12] += var48.hueMultiplier; + var10002 = WorldMapLabelSize.field1943[var12]++; + } + } + + var14 = var11 - 5; + if (var14 >= 0 && var14 < 104) { + long var49 = (long)Math.pow(2.0D, 15.0D) - 1L; + var17 = (int)var49; + var18 = class74.Tiles_underlays[var2][var14][var12] & var17; + if (var18 > 0) { + FloorUnderlayDefinition var51 = class101.method596(var18 - 1); + var10000 = class337.Tiles_hue; + var10000[var12] -= var51.hue; + var10000 = Tiles.Tiles_saturation; + var10000[var12] -= var51.saturation; + var10000 = class185.Tiles_lightness; + var10000[var12] -= var51.lightness; + var10000 = MenuAction.Tiles_hueMultiplier; + var10000[var12] -= var51.hueMultiplier; + var10002 = WorldMapLabelSize.field1943[var12]--; + } + } + } + + if (var11 >= 1 && var11 < 103) { + var12 = 0; + var13 = 0; + var14 = 0; + var15 = 0; + var16 = 0; + + for (var17 = -5; var17 < 109; ++var17) { + var18 = var17 + 5; + if (var18 >= 0 && var18 < 104) { + var12 += class337.Tiles_hue[var18]; + var13 += Tiles.Tiles_saturation[var18]; + var14 += class185.Tiles_lightness[var18]; + var15 += MenuAction.Tiles_hueMultiplier[var18]; + var16 += WorldMapLabelSize.field1943[var18]; + } + + var19 = var17 - 5; + if (var19 >= 0 && var19 < 104) { + var12 -= class337.Tiles_hue[var19]; + var13 -= Tiles.Tiles_saturation[var19]; + var14 -= class185.Tiles_lightness[var19]; + var15 -= MenuAction.Tiles_hueMultiplier[var19]; + var16 -= WorldMapLabelSize.field1943[var19]; + } + + if (var17 >= 1 && var17 < 103 && (!Client.isLowDetail || (Tiles.Tiles_renderFlags[0][var11][var17] & 2) != 0 || (Tiles.Tiles_renderFlags[var2][var11][var17] & 16) == 0)) { + if (var2 < Tiles.Tiles_minPlane) { + Tiles.Tiles_minPlane = var2; + } + + long var52 = (long)Math.pow(2.0D, 15.0D) - 1L; + int var22 = (int)var52; + int var23 = class74.Tiles_underlays[var2][var11][var17] & var22; + int var24 = Interpreter.Tiles_overlays[var2][var11][var17] & var22; + if (var23 > 0 || var24 > 0) { + int var25 = Tiles.Tiles_heights[var2][var11][var17]; + int var26 = Tiles.Tiles_heights[var2][var11 + 1][var17]; + int var27 = Tiles.Tiles_heights[var2][var11 + 1][var17 + 1]; + int var28 = Tiles.Tiles_heights[var2][var11][var17 + 1]; + int var29 = Tiles.field843[var11][var17]; + int var30 = Tiles.field843[var11 + 1][var17]; + int var31 = Tiles.field843[var11 + 1][var17 + 1]; + int var32 = Tiles.field843[var11][var17 + 1]; + int var33 = -1; + int var34 = -1; + int var35; + int var36; + if (var23 > 0) { + var35 = var12 * 256 / var15; + var36 = var13 / var16; + int var37 = var14 / var16; + var33 = Messages.method634(var35, var36, var37); + var35 = var35 + Tiles.rndHue & 255; + var37 += Tiles.rndLightness; + if (var37 < 0) { + var37 = 0; + } else if (var37 > 255) { + var37 = 255; + } + + var34 = Messages.method634(var35, var36, var37); + } + + if (var2 > 0) { + boolean var60 = true; + if (var23 == 0 && ViewportMouse.Tiles_shapes[var2][var11][var17] != 0) { + var60 = false; + } + + if (var24 > 0 && !Canvas.method85(var24 - 1).hideUnderlay) { + var60 = false; + } + + if (var60 && var26 == var25 && var25 == var27 && var25 == var28) { + var10000 = class344.field3130[var2][var11]; + var10000[var17] |= 2340; + } + } + + var35 = 0; + if (var34 != -1) { + var35 = Rasterizer3D.Rasterizer3D_colorPalette[ClanChannel.method861(var34, 96)]; + } + + if (var24 == 0) { + var0.addTile(var2, var11, var17, 0, 0, -1, var25, var26, var27, var28, ClanChannel.method861(var33, var29), ClanChannel.method861(var33, var30), ClanChannel.method861(var33, var31), ClanChannel.method861(var33, var32), 0, 0, 0, 0, var35, 0); + } else { + var36 = ViewportMouse.Tiles_shapes[var2][var11][var17] + 1; + byte var61 = class369.field3559[var2][var11][var17]; + FloorOverlayDefinition var38 = Canvas.method85(var24 - 1); + int var39 = var38.texture; + int var40; + int var41; + int var42; + int var43; + if (var39 >= 0) { + var41 = Rasterizer3D.clips.Rasterizer3D_textureLoader.getAverageTextureRGB(var39); + var40 = -1; + } else if (var38.primaryRgb == 16711935) { + var40 = -2; + var39 = -1; + var41 = -2; + } else { + var40 = Messages.method634(var38.hue, var38.saturation, var38.lightness); + var42 = var38.hue + Tiles.rndHue & 255; + var43 = var38.lightness + Tiles.rndLightness; + if (var43 < 0) { + var43 = 0; + } else if (var43 > 255) { + var43 = 255; + } + + var41 = Messages.method634(var42, var38.saturation, var43); + } + + var42 = 0; + if (var41 != -2) { + var42 = Rasterizer3D.Rasterizer3D_colorPalette[class403.method2044(var41, 96)]; + } + + if (var38.secondaryRgb != -1) { + var43 = var38.secondaryHue + Tiles.rndHue & 255; + int var44 = var38.secondaryLightness + Tiles.rndLightness; + if (var44 < 0) { + var44 = 0; + } else if (var44 > 255) { + var44 = 255; + } + + var41 = Messages.method634(var43, var38.secondarySaturation, var44); + var42 = Rasterizer3D.Rasterizer3D_colorPalette[class403.method2044(var41, 96)]; + } + + var0.addTile(var2, var11, var17, var36, var61, var39, var25, var26, var27, var28, ClanChannel.method861(var33, var29), ClanChannel.method861(var33, var30), ClanChannel.method861(var33, var31), ClanChannel.method861(var33, var32), class403.method2044(var40, var29), class403.method2044(var40, var30), class403.method2044(var40, var31), class403.method2044(var40, var32), var35, var42); + } + } + } + } + } + } + + for (var11 = 1; var11 < 103; ++var11) { + for (var12 = 1; var12 < 103; ++var12) { + var0.setTileMinPlane(var2, var12, var11, class185.method929(var2, var12, var11)); + } + } + + class74.Tiles_underlays[var2] = null; + Interpreter.Tiles_overlays[var2] = null; + ViewportMouse.Tiles_shapes[var2] = null; + class369.field3559[var2] = null; + class93.field948[var2] = null; + } + + var0.method1488(-50, -10, -50); + + for (var2 = 0; var2 < 104; ++var2) { + for (var3 = 0; var3 < 104; ++var3) { + if ((Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) { + var0.setLinkBelow(var2, var3); + } + } + } + + var2 = 1; + var3 = 2; + var4 = 4; + + for (var5 = 0; var5 < 4; ++var5) { + if (var5 > 0) { + var2 <<= 3; + var3 <<= 3; + var4 <<= 3; + } + + for (int var56 = 0; var56 <= var5; ++var56) { + for (int var57 = 0; var57 <= 104; ++var57) { + for (int var58 = 0; var58 <= 104; ++var58) { + short var59; + if ((class344.field3130[var56][var58][var57] & var2) != 0) { + var9 = var57; + var10 = var57; + var11 = var56; + + for (var12 = var56; var9 > 0 && (class344.field3130[var56][var58][var9 - 1] & var2) != 0; --var9) { + } + + while (var10 < 104 && (class344.field3130[var56][var58][var10 + 1] & var2) != 0) { + ++var10; + } + + label336: + while (var11 > 0) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((class344.field3130[var11 - 1][var58][var13] & var2) == 0) { + break label336; + } + } + + --var11; + } + + label325: + while (var12 < var5) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((class344.field3130[var12 + 1][var58][var13] & var2) == 0) { + break label325; + } + } + + ++var12; + } + + var13 = (var12 + 1 - var11) * (var10 - var9 + 1); + if (var13 >= 8) { + var59 = 240; + var15 = Tiles.Tiles_heights[var12][var58][var9] - var59; + var16 = Tiles.Tiles_heights[var11][var58][var9]; + Scene.Scene_addOccluder(var5, 1, var58 * 128, var58 * 128, var9 * 128, var10 * 128 + 128, var15, var16); + + for (var17 = var11; var17 <= var12; ++var17) { + for (var18 = var9; var18 <= var10; ++var18) { + var10000 = class344.field3130[var17][var58]; + var10000[var18] &= ~var2; + } + } + } + } + + if ((class344.field3130[var56][var58][var57] & var3) != 0) { + var9 = var58; + var10 = var58; + var11 = var56; + + for (var12 = var56; var9 > 0 && (class344.field3130[var56][var9 - 1][var57] & var3) != 0; --var9) { + } + + while (var10 < 104 && (class344.field3130[var56][var10 + 1][var57] & var3) != 0) { + ++var10; + } + + label389: + while (var11 > 0) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((class344.field3130[var11 - 1][var13][var57] & var3) == 0) { + break label389; + } + } + + --var11; + } + + label378: + while (var12 < var5) { + for (var13 = var9; var13 <= var10; ++var13) { + if ((class344.field3130[var12 + 1][var13][var57] & var3) == 0) { + break label378; + } + } + + ++var12; + } + + var13 = (var10 - var9 + 1) * (var12 + 1 - var11); + if (var13 >= 8) { + var59 = 240; + var15 = Tiles.Tiles_heights[var12][var9][var57] - var59; + var16 = Tiles.Tiles_heights[var11][var9][var57]; + Scene.Scene_addOccluder(var5, 2, var9 * 128, var10 * 128 + 128, var57 * 128, var57 * 128, var15, var16); + + for (var17 = var11; var17 <= var12; ++var17) { + for (var18 = var9; var18 <= var10; ++var18) { + var10000 = class344.field3130[var17][var18]; + var10000[var57] &= ~var3; + } + } + } + } + + if ((class344.field3130[var56][var58][var57] & var4) != 0) { + var9 = var58; + var10 = var58; + var11 = var57; + + for (var12 = var57; var11 > 0 && (class344.field3130[var56][var58][var11 - 1] & var4) != 0; --var11) { + } + + while (var12 < 104 && (class344.field3130[var56][var58][var12 + 1] & var4) != 0) { + ++var12; + } + + label442: + while (var9 > 0) { + for (var13 = var11; var13 <= var12; ++var13) { + if ((class344.field3130[var56][var9 - 1][var13] & var4) == 0) { + break label442; + } + } + + --var9; + } + + label431: + while (var10 < 104) { + for (var13 = var11; var13 <= var12; ++var13) { + if ((class344.field3130[var56][var10 + 1][var13] & var4) == 0) { + break label431; + } + } + + ++var10; + } + + if ((var10 - var9 + 1) * (var12 - var11 + 1) >= 4) { + var13 = Tiles.Tiles_heights[var56][var9][var11]; + Scene.Scene_addOccluder(var5, 4, var9 * 128, var10 * 128 + 128, var11 * 128, var12 * 128 + 128, var13, var13); + + for (var14 = var9; var14 <= var10; ++var14) { + for (var15 = var11; var15 <= var12; ++var15) { + var10000 = class344.field3130[var56][var14]; + var10000[var15] &= ~var4; + } + } + } + } + } + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class157.java b/osrs/src/main/java/class157.java index 353b1eaf3..d9c192153 100644 --- a/osrs/src/main/java/class157.java +++ b/osrs/src/main/java/class157.java @@ -2,122 +2,79 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; - -@ObfuscatedName("gc") -public class class157 extends class143 { - @ObfuscatedName("gt") - static String field1407; - @ObfuscatedName("iz") - static int field1406; - @ObfuscatedName("au") - int field1408; +@ObfuscatedName("gw") +public class class157 extends class160 { + @ObfuscatedName("an") + @Export("loginBoxCenter") + static int loginBoxCenter; + @ObfuscatedName("at") + int field1400; + @ObfuscatedName("ah") + byte field1398; + @ObfuscatedName("ar") + int field1399; + @ObfuscatedName("ao") + String field1401; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lgi;" ) - final class146 this$0; + final class161 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lgi;)V" ) - class157(class146 var1) { + class157(class161 var1) { this.this$0 = var1; - this.field1408 = -1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" - ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1408 = var1.readUnsignedShort(); + this.field1400 = -1; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Luj;I)V", + garbageValue = "1810249387" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method816(this.field1408); + @Export("vmethod3238") + void vmethod3238(Buffer var1) { + var1.readUnsignedByte(); + this.field1400 = var1.readUnsignedShort(); + this.field1398 = var1.readByte(); + this.field1399 = var1.readUnsignedShort(); + var1.readLong(); + this.field1401 = var1.readStringCp1252NullTerminated(); + var1.readUnsignedByte(); } - @ObfuscatedName("ad") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(CS)Z", - garbageValue = "255" + descriptor = "(Lgn;B)V", + garbageValue = "-75" ) - static boolean method835(char var0) { - return "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00ef\u00bf\u00bd$%^&*()-_=+[{]};:'@#~,<.>/?\\| ".indexOf(var0) != -1; + @Export("vmethod3239") + void vmethod3239(ClanChannel var1) { + ClanChannelMember var2 = (ClanChannelMember)var1.members.get(this.field1400); + var2.rank = this.field1398; + var2.world = this.field1399; + var2.username = new Username(this.field1401); } - @ObfuscatedName("al") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "-858591877" + descriptor = "(Ldo;B)V", + garbageValue = "-120" ) - public static String method832(String var0) { - StringBuilder var1 = new StringBuilder(var0.length()); - int var2 = 0; - int var3 = -1; - - for (int var4 = 0; var4 < var0.length(); ++var4) { - char var5 = var0.charAt(var4); - if (var5 == '<') { - var1.append(var0.substring(var2, var4)); - var3 = var4; - } else if (var5 == '>' && var3 != -1) { - String var6 = var0.substring(var3 + 1, var4); - var3 = -1; - if (var6.equals("lt")) { - var1.append("<"); - } else if (var6.equals("gt")) { - var1.append(">"); - } else if (var6.equals("br")) { - var1.append("\n"); - } + @Export("runScriptEvent") + public static void runScriptEvent(ScriptEvent var0) { - var2 = var4 + 1; - } - } - - if (var2 < var0.length()) { - var1.append(var0.substring(var2, var0.length())); - } - - return var1.toString(); + class323.runScript(var0, 500000, 475000); } - @ObfuscatedName("is") + @ObfuscatedName("ow") @ObfuscatedSignature( - descriptor = "(Ljava/util/ArrayList;IIIIB)V", - garbageValue = "6" + descriptor = "(B)Loz;", + garbageValue = "0" ) - static void method836(ArrayList var0, int var1, int var2, int var3, int var4) { - if (!var0.isEmpty()) { - int var5 = (Integer)var0.get(0); - if (var5 == -1 && !Client.playingJingle) { - Script.method445(0, 0); - } else if (var5 != -1 && !class172.method906(var5) && class449.clientPreferences.getCurrentMusicVolume() != 0) { - ArrayList var6 = new ArrayList(); - - for (int var7 = 0; var7 < var0.size(); ++var7) { - var6.add(new MusicSong(class385.archive6, (Integer)var0.get(var7), 0, class449.clientPreferences.getCurrentMusicVolume(), false)); - } - - if (Client.playingJingle) { - class305.field2773.clear(); - class305.field2773.addAll(var6); - class270.method1537(var1, var2, var3, var4); - } else { - class53.method291(var6, var1, var2, var3, var4, false); - } - } - - } + static JagNetThread method827() { + return WorldMapSectionType.field2038; } } \ No newline at end of file diff --git a/osrs/src/main/java/class158.java b/osrs/src/main/java/class158.java index a20608553..56f42d85b 100644 --- a/osrs/src/main/java/class158.java +++ b/osrs/src/main/java/class158.java @@ -2,53 +2,78 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gd") -public class class158 extends class143 { - @ObfuscatedName("au") - long field1411; - @ObfuscatedName("ae") - String field1410; - @ObfuscatedName("ao") - int field1409; +@ObfuscatedName("gl") +public class class158 extends class144 { + @ObfuscatedName("at") + int field1402; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class158(class146 var1) { + class158(class147 var1) { this.this$0 = var1; - this.field1411 = -1L; - this.field1410 = null; - this.field1409 = 0; + this.field1402 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - if (var1.readUnsignedByte() != 255) { - --var1.offset; - this.field1411 = var1.readLong(); - } - - this.field1410 = var1.readStringCp1252NullTerminatedOrNull(); - this.field1409 = var1.readUnsignedShort(); + this.field1402 = var1.readUnsignedShort(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method812(this.field1411, this.field1410, this.field1409); + var1.method809(this.field1402); + } + + @ObfuscatedName("ab") + static int method828(long var0) { + return (int)(var0 >>> 14 & 3L); + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "11323368" + ) + static final void method829() { + WorldMapArea.method1213("You can't add yourself to your own ignore list"); + } + + @ObfuscatedName("bk") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-1589352545" + ) + static int method833(int var0, Script var1, boolean var2) { + if (var0 == 7108) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class60.method339() ? 1 : 0; + return 1; + } else { + return 2; + } + } + + @ObfuscatedName("hg") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "2036594717" + ) + static int method832(int var0) { + return var0 * 3 + 600; } } \ No newline at end of file diff --git a/osrs/src/main/java/class159.java b/osrs/src/main/java/class159.java index 25c7b94bf..1d6127e4a 100644 --- a/osrs/src/main/java/class159.java +++ b/osrs/src/main/java/class159.java @@ -2,73 +2,420 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gm") -public abstract class class159 extends Node { - @ObfuscatedName("qw") - @Export("widgetDragDuration") - static int widgetDragDuration; +import java.util.ArrayList; - class159() { +@ObfuscatedName("ge") +public class class159 extends class144 { + @ObfuscatedName("at") + long field1405; + @ObfuscatedName("ah") + String field1404; + @ObfuscatedName("ar") + int field1403; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; + + @ObfuscatedSignature( + descriptor = "(Lfv;)V" + ) + class159(class147 var1) { + this.this$0 = var1; + this.field1405 = -1L; + this.field1404 = null; + this.field1403 = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) - @Export("vmethod3238") - abstract void vmethod3238(Buffer var1); + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + if (var1.readUnsignedByte() != 255) { + --var1.offset; + this.field1405 = var1.readLong(); + } + + this.field1404 = var1.readStringCp1252NullTerminatedOrNull(); + this.field1403 = var1.readUnsignedShort(); + } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) - abstract void vmethod3239(ClanChannel var1); + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method804(this.field1405, this.field1404, this.field1403); + } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)Ltc;", - garbageValue = "-2141629898" + descriptor = "(B)V", + garbageValue = "118" ) - @Export("getDbRowType") - public static DbRowType getDbRowType(int var0) { - DbRowType var1 = (DbRowType)DbRowType.DBRowType_cache.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = DbRowType.field4116.takeFile(38, var0); - var1 = new DbRowType(); - if (var2 != null) { - var1.method2508(new Buffer(var2)); + static void method834() { + for (ObjectSound var0 = (ObjectSound)ObjectSound.objectSounds.last(); var0 != null; var0 = (ObjectSound)ObjectSound.objectSounds.previous()) { + if (var0.obj != null) { + var0.set(); } - - var1.method2511(); - DbRowType.DBRowType_cache.put(var1, (long)var0); - return var1; } + } - @ObfuscatedName("ae") + @ObfuscatedName("af") @ObfuscatedSignature( - descriptor = "(IB)Ltk;", - garbageValue = "44" + descriptor = "(ILdt;ZI)I", + garbageValue = "404161563" ) - @Export("getDbTableType") - public static DbTableType getDbTableType(int var0) { - DbTableType var1 = (DbTableType)DbTableType.DBTableType_cache.get((long)var0); - if (var1 != null) { - return var1; + static int method837(int var0, Script var1, boolean var2) { + if (var0 == 3200) { + DbTableType.Interpreter_intStackSize -= 3; + class460.queueSoundEffect(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]); + return 1; } else { - byte[] var2 = DbTableType.field4110.takeFile(39, var0); - var1 = new DbTableType(); - if (var2 != null) { - var1.method2503(new Buffer(var2)); + int var3; + int var4; + int var5; + int var6; + int var7; + if (var0 == 3201) { + DbTableType.Interpreter_intStackSize -= 5; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 4]; + ArrayList var8 = new ArrayList(); + var8.add(var3); + class135.method734(var8, var4, var5, var6, var7); + return 1; + } else if (var0 == 3202) { + DbTableType.Interpreter_intStackSize -= 2; + FileSystem.playJingle(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + return 1; + } else { + class90 var12; + class89 var13; + String var15; + if (var0 != 3212 && var0 != 3213 && var0 != 3209 && var0 != 3181 && var0 != 3203 && var0 != 3205 && var0 != 3207) { + boolean var16; + if (var0 != 3214 && var0 != 3215 && var0 != 3210 && var0 != 3182 && var0 != 3204 && var0 != 3206 && var0 != 3208) { + if (var0 == 3211) { + return 1; + } else if (var0 == 3216) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = 0; + class90 var18 = (class90)class12.findEnumerated(UserComparator3.method679(), var3); + if (var18 != null) { + var4 = var18 != class90.field898 ? 1 : 0; + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4; + return 1; + } else if (var0 == 3218) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = 0; + class89 var10 = (class89)class12.findEnumerated(HealthBar.method569(), var3); + if (var10 != null) { + var4 = var10 != class89.field889 ? 1 : 0; + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4; + return 1; + } else if (var0 != 3217 && var0 != 3219) { + if (var0 == 3220) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + WorldMapManager.method1265(var3, var4); + return 1; + } else if (var0 == 3221) { + DbTableType.Interpreter_intStackSize -= 6; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 4]; + int var11 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 5]; + ArrayList var9 = new ArrayList(); + var9.add(var3); + var9.add(var4); + class135.method734(var9, var5, var6, var7, var11); + return 1; + } else if (var0 == 3222) { + DbTableType.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + class191.someMusicMethod(var3, var4, var5, var6); + return 1; + } else { + return 2; + } + } else { + var12 = class90.field898; + var13 = class89.field889; + var16 = true; + boolean var17 = true; + if (var0 == 3217) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = (class90)class12.findEnumerated(UserComparator3.method679(), var7); + if (var12 == null) { + throw new RuntimeException(String.format("Unrecognized device option %d", var7)); + } + } + + if (var0 == 3219) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = (class89)class12.findEnumerated(HealthBar.method569(), var7); + if (var13 == null) { + throw new RuntimeException(String.format("Unrecognized game option %d", var7)); + } + } + + String var14; + byte var19; + if (var13 == class89.field889) { + switch(var12.field900) { + case 1: + case 2: + case 3: + var19 = 0; + var6 = 1; + break; + case 4: + var19 = 0; + var6 = Integer.MAX_VALUE; + break; + case 5: + var19 = 0; + var6 = 100; + break; + default: + var14 = String.format("Unkown device option: %s.", var12.toString()); + throw new RuntimeException(var14); + } + } else { + switch(var13.field891) { + case 1: + var19 = 0; + var6 = 1; + break; + case 2: + case 3: + case 4: + var19 = 0; + var6 = 100; + break; + default: + var14 = String.format("Unkown game option: %s.", var13.toString()); + throw new RuntimeException(var14); + } + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var19; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var6; + return 1; + } + } else { + var12 = class90.field898; + var13 = class89.field889; + var16 = false; + if (var0 == 3214) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = (class90)class12.findEnumerated(UserComparator3.method679(), var6); + if (var12 == null) { + throw new RuntimeException(String.format("Unrecognized device option %d", var6)); + } + } + + if (var0 == 3215) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = (class89)class12.findEnumerated(HealthBar.method569(), var6); + if (var13 == null) { + throw new RuntimeException(String.format("Unrecognized game option %d", var6)); + } + } + + if (var0 == 3210) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = (class90)class12.findEnumerated(UserComparator3.method679(), var6); + if (var12 == null) { + var13 = (class89)class12.findEnumerated(HealthBar.method569(), var6); + if (var13 == null) { + throw new RuntimeException(String.format("Unrecognized client option %d", var6)); + } + } + } else if (var0 == 3182) { + var12 = class90.field899; + } else if (var0 == 3204) { + var13 = class89.field888; + } else if (var0 == 3206) { + var13 = class89.field887; + } else if (var0 == 3208) { + var13 = class89.field885; + } + + if (var13 == class89.field889) { + switch(var12.field900) { + case 1: + var5 = WorldMapIcon_1.clientPreferences.getIsUsernameHidden() ? 1 : 0; + break; + case 2: + var5 = WorldMapIcon_1.clientPreferences.getTitleMusicDisabled() ? 1 : 0; + break; + case 3: + var5 = WorldMapIcon_1.clientPreferences.method547() ? 1 : 0; + break; + case 4: + var5 = WorldMapIcon_1.clientPreferences.method549(); + break; + case 5: + var5 = class216.method1099(); + break; + default: + var15 = String.format("Unkown device option: %s.", var12.toString()); + throw new RuntimeException(var15); + } + } else { + switch(var13.field891) { + case 1: + var5 = WorldMapIcon_1.clientPreferences.getRoofsHidden() ? 1 : 0; + break; + case 2: + var6 = WorldMapIcon_1.clientPreferences.getCurrentMusicVolume(); + var5 = Math.round((float)(var6 * 100) / 255.0F); + break; + case 3: + var6 = WorldMapIcon_1.clientPreferences.getCurrentSoundEffectsVolume(); + var5 = Math.round((float)(var6 * 100) / 127.0F); + break; + case 4: + var6 = WorldMapIcon_1.clientPreferences.getAreaSoundEffectsVolume(); + var5 = Math.round((float)(var6 * 100) / 127.0F); + break; + default: + var15 = String.format("Unkown game option: %s.", var13.toString()); + throw new RuntimeException(var15); + } + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5; + return 1; + } + } else { + var12 = class90.field898; + var13 = class89.field889; + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var0 == 3212) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = (class90)class12.findEnumerated(UserComparator3.method679(), var6); + if (var12 == null) { + throw new RuntimeException(String.format("Unrecognized device option %d", var6)); + } + } + + if (var0 == 3213) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var13 = (class89)class12.findEnumerated(HealthBar.method569(), var6); + if (var13 == null) { + throw new RuntimeException(String.format("Unrecognized game option %d", var6)); + } + } + + if (var0 == 3209) { + var6 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var12 = (class90)class12.findEnumerated(UserComparator3.method679(), var6); + if (var12 == null) { + var13 = (class89)class12.findEnumerated(HealthBar.method569(), var6); + if (var13 == null) { + throw new RuntimeException(String.format("Unrecognized client option %d", var6)); + } + } + } else if (var0 == 3181) { + var12 = class90.field899; + } else if (var0 == 3203) { + var13 = class89.field888; + } else if (var0 == 3205) { + var13 = class89.field887; + } else if (var0 == 3207) { + var13 = class89.field885; + } + + if (var13 == class89.field889) { + switch(var12.field900) { + case 1: + WorldMapIcon_1.clientPreferences.setIsUsernameHidden(var5 == 1); + break; + case 2: + WorldMapIcon_1.clientPreferences.getTitleMusicDisabled(var5 == 1); + break; + case 3: + WorldMapIcon_1.clientPreferences.method545(var5 == 1); + break; + case 4: + if (var5 < 0) { + var5 = 0; + } + + WorldMapIcon_1.clientPreferences.method548(var5); + break; + case 5: + class311.method1647(var5); + break; + default: + var15 = String.format("Unkown device option: %s.", var12.toString()); + throw new RuntimeException(var15); + } + } else { + switch(var13.field891) { + case 1: + WorldMapIcon_1.clientPreferences.setRoofsHidden(var5 == 1); + break; + case 2: + var5 = Math.min(Math.max(var5, 0), 100); + var6 = Math.round((float)(var5 * 255) / 100.0F); + Decimator.method323(var6); + break; + case 3: + var5 = Math.min(Math.max(var5, 0), 100); + var6 = Math.round((float)(var5 * 127) / 100.0F); + SoundSystem.method235(var6); + break; + case 4: + var5 = Math.min(Math.max(var5, 0), 100); + var6 = Math.round((float)(var5 * 127) / 100.0F); + Login.method438(var6); + break; + default: + var15 = String.format("Unkown game option: %s.", var13.toString()); + throw new RuntimeException(var15); + } + } + + return 1; + } } + } + } - var1.method2505(); - DbTableType.DBTableType_cache.put(var1, (long)var0); - return var1; + @ObfuscatedName("ms") + @ObfuscatedSignature( + descriptor = "(Lnn;I)V", + garbageValue = "227996304" + ) + @Export("invalidateWidget") + public static void invalidateWidget(Widget var0) { + if (var0 != null && var0.cycle == Client.field523) { + Client.field407[var0.rootIndex] = true; } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class16.java b/osrs/src/main/java/class16.java index 68e72cdf9..832a9a2fa 100644 --- a/osrs/src/main/java/class16.java +++ b/osrs/src/main/java/class16.java @@ -5,434 +5,36 @@ import java.util.concurrent.ThreadFactory; import java.util.concurrent.atomic.AtomicInteger; -@ObfuscatedName("ag") +@ObfuscatedName("aj") public class class16 implements ThreadFactory { - @ObfuscatedName("au") - final ThreadGroup field48; - @ObfuscatedName("ae") - final AtomicInteger field49; + @ObfuscatedName("at") + final ThreadGroup field51; + @ObfuscatedName("ah") + final AtomicInteger field52; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lar;" + descriptor = "Lay;" ) @Export("this$0") @ObfuscatedName("this$0") final class14 this$0; @ObfuscatedSignature( - descriptor = "(Lar;)V" + descriptor = "(Lay;)V" ) class16(class14 var1) { this.this$0 = var1; - this.field49 = new AtomicInteger(1); + this.field52 = new AtomicInteger(1); SecurityManager var2 = System.getSecurityManager(); - this.field48 = var2 != null ? var2.getThreadGroup() : Thread.currentThread().getThreadGroup(); + this.field51 = var2 != null ? var2.getThreadGroup() : Thread.currentThread().getThreadGroup(); } @Export("newThread") @ObfuscatedName("newThread") public Thread newThread(Runnable var1) { - Thread var2 = new Thread(this.field48, var1, this.this$0.field43 + "-rest-request-" + this.field49.getAndIncrement(), 0L); + Thread var2 = new Thread(this.field51, var1, this.this$0.field46 + "-rest-request-" + this.field52.getAndIncrement(), 0L); var2.setDaemon(true); var2.setPriority(5); return var2; } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "-192145795" - ) - @Export("iLog") - public static int iLog(int var0) { - int var1 = 0; - if (var0 < 0 || var0 >= 65536) { - var0 >>>= 16; - var1 += 16; - } - - if (var0 >= 256) { - var0 >>>= 8; - var1 += 8; - } - - if (var0 >= 16) { - var0 >>>= 4; - var1 += 4; - } - - if (var0 >= 4) { - var0 >>>= 2; - var1 += 2; - } - - if (var0 >= 1) { - var0 >>>= 1; - ++var1; - } - - return var0 + var1; - } - - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "2" - ) - static int method48(int var0, Script var1, boolean var2) { - if (var0 == 3600) { - if (class299.friendSystem.friendListStatus == 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -2; - } else if (class299.friendSystem.friendListStatus == 1) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class299.friendSystem.friendsList.getSize(); - } - - return 1; - } else { - int var3; - if (var0 == 3601) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (class299.friendSystem.method398() && var3 >= 0 && var3 < class299.friendSystem.friendsList.getSize()) { - Friend var8 = (Friend)class299.friendSystem.friendsList.get(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.getName(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var8.getPreviousName(); - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 3602) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (class299.friendSystem.method398() && var3 >= 0 && var3 < class299.friendSystem.friendsList.getSize()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((Buddy)class299.friendSystem.friendsList.get(var3)).world; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3603) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (class299.friendSystem.method398() && var3 >= 0 && var3 < class299.friendSystem.friendsList.getSize()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((Buddy)class299.friendSystem.friendsList.get(var3)).rank; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else { - String var5; - if (var0 == 3604) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - int var9 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class161.setFriendsRank(var5, var9); - return 1; - } else if (var0 == 3605) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class299.friendSystem.addFriend(var5); - return 1; - } else if (var0 == 3606) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class299.friendSystem.removeFriend(var5); - return 1; - } else if (var0 == 3607) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class299.friendSystem.addIgnore(var5); - return 1; - } else if (var0 == 3608) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - boolean var6 = true; - class299.friendSystem.removeIgnore(var5, var6); - return 1; - } else if (var0 == 3609) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var5 = ObjTypeCustomisation.method936(var5); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class299.friendSystem.isFriended(new Username(var5, Language.loginType), false) ? 1 : 0; - return 1; - } else if (var0 == 3611) { - if (ReflectionCheck.friendsChat != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ReflectionCheck.friendsChat.name; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 3612) { - if (ReflectionCheck.friendsChat != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ReflectionCheck.friendsChat.getSize(); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3613) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize()) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ReflectionCheck.friendsChat.get(var3).getUsername().getName(); - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 3614) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((Buddy)ReflectionCheck.friendsChat.get(var3)).getWorld(); - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3615) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ((Buddy)ReflectionCheck.friendsChat.get(var3)).rank; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3616) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ReflectionCheck.friendsChat != null ? ReflectionCheck.friendsChat.minKick : 0; - return 1; - } else if (var0 == 3617) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class131.clanKickUser(var5); - return 1; - } else if (var0 == 3618) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = ReflectionCheck.friendsChat != null ? ReflectionCheck.friendsChat.rank * 1868713607 * 106239799 : 0; - return 1; - } else if (var0 == 3619) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - UrlRequester.Clan_joinChat(var5); - return 1; - } else if (var0 == 3620) { - Player.Clan_leaveChat(); - return 1; - } else if (var0 == 3621) { - if (!class299.friendSystem.method398()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class299.friendSystem.ignoreList.getSize(); - } - - return 1; - } else if (var0 == 3622) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (class299.friendSystem.method398() && var3 >= 0 && var3 < class299.friendSystem.ignoreList.getSize()) { - Ignored var4 = (Ignored)class299.friendSystem.ignoreList.get(var3); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.getName(); - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var4.getPreviousName(); - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 3623) { - var5 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var5 = ObjTypeCustomisation.method936(var5); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class299.friendSystem.isIgnored(new Username(var5, Language.loginType)) ? 1 : 0; - return 1; - } else if (var0 == 3624) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize() && ReflectionCheck.friendsChat.get(var3).getUsername().equals(VarbitComposition.localPlayer.username)) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3625) { - if (ReflectionCheck.friendsChat != null && ReflectionCheck.friendsChat.owner != null) { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ReflectionCheck.friendsChat.owner; - } else { - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - } - - return 1; - } else if (var0 == 3626) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize() && ((ClanMate)ReflectionCheck.friendsChat.get(var3)).isFriend()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 != 3627) { - if (var0 == 3628) { - class299.friendSystem.friendsList.removeComparator(); - return 1; - } else { - boolean var7; - if (var0 == 3629) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator1(var7)); - return 1; - } else if (var0 == 3630) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator2(var7)); - return 1; - } else if (var0 == 3631) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator3(var7)); - return 1; - } else if (var0 == 3632) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator4(var7)); - return 1; - } else if (var0 == 3633) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator5(var7)); - return 1; - } else if (var0 == 3634) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator6(var7)); - return 1; - } else if (var0 == 3635) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator7(var7)); - return 1; - } else if (var0 == 3636) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator8(var7)); - return 1; - } else if (var0 == 3637) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator9(var7)); - return 1; - } else if (var0 == 3638) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new UserComparator10(var7)); - return 1; - } else if (var0 == 3639) { - class299.friendSystem.friendsList.sort(); - return 1; - } else if (var0 == 3640) { - class299.friendSystem.ignoreList.removeComparator(); - return 1; - } else if (var0 == 3641) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.ignoreList.addComparator(new UserComparator1(var7)); - return 1; - } else if (var0 == 3642) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.ignoreList.addComparator(new UserComparator2(var7)); - return 1; - } else if (var0 == 3643) { - class299.friendSystem.ignoreList.sort(); - return 1; - } else if (var0 == 3644) { - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.removeComparator(); - } - - return 1; - } else if (var0 == 3645) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator1(var7)); - } - - return 1; - } else if (var0 == 3646) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator2(var7)); - } - - return 1; - } else if (var0 == 3647) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator3(var7)); - } - - return 1; - } else if (var0 == 3648) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator4(var7)); - } - - return 1; - } else if (var0 == 3649) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator5(var7)); - } - - return 1; - } else if (var0 == 3650) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator6(var7)); - } - - return 1; - } else if (var0 == 3651) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator7(var7)); - } - - return 1; - } else if (var0 == 3652) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator8(var7)); - } - - return 1; - } else if (var0 == 3653) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator9(var7)); - } - - return 1; - } else if (var0 == 3654) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new UserComparator10(var7)); - } - - return 1; - } else if (var0 == 3655) { - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.sort(); - } - - return 1; - } else if (var0 == 3656) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class299.friendSystem.friendsList.addComparator(new BuddyRankComparator(var7)); - return 1; - } else if (var0 == 3657) { - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (ReflectionCheck.friendsChat != null) { - ReflectionCheck.friendsChat.addComparator(new BuddyRankComparator(var7)); - } - - return 1; - } else { - return 2; - } - } - } else { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (ReflectionCheck.friendsChat != null && var3 < ReflectionCheck.friendsChat.getSize() && ((ClanMate)ReflectionCheck.friendsChat.get(var3)).isIgnored()) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } - } - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class160.java b/osrs/src/main/java/class160.java index 36772dad9..2385110e6 100644 --- a/osrs/src/main/java/class160.java +++ b/osrs/src/main/java/class160.java @@ -1,132 +1,59 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Arrays; +@ObfuscatedName("gs") +public abstract class class160 extends Node { + @ObfuscatedName("ct") + static int field1406; -@ObfuscatedName("gg") -public class class160 { - @ObfuscatedName("au") - long field1413; - @ObfuscatedName("ae") - public long field1415; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Loc;" - ) - IterableNodeDeque field1414; - - @ObfuscatedSignature( - descriptor = "(Ltm;)V" - ) - public class160(Buffer var1) { - this.field1415 = -1L; - this.field1414 = new IterableNodeDeque(); - this.method843(var1); + class160() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "-2067216516" + descriptor = "(Luj;I)V", + garbageValue = "1810249387" ) - void method843(Buffer var1) { - this.field1413 = var1.readLong(); - this.field1415 = var1.readLong(); - - for (int var2 = var1.readUnsignedByte(); var2 != 0; var2 = var1.readUnsignedByte()) { - Object var3; - if (var2 == 1) { - var3 = new class155(this); - } else if (var2 == 4) { - var3 = new class166(this); - } else if (var2 == 3) { - var3 = new class151(this); - } else if (var2 == 2) { - var3 = new class149(this); - } else { - if (var2 != 5) { - throw new RuntimeException(""); - } - - var3 = new class156(this); - } - - ((class159)var3).vmethod3238(var1); - this.field1414.addFirst((Node)var3); - } + @Export("vmethod3238") + abstract void vmethod3238(Buffer var1); - } - - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgo;B)V", - garbageValue = "-40" + descriptor = "(Lgn;B)V", + garbageValue = "-75" ) - public void method844(ClanChannel var1) { - if (var1.key == this.field1413 && var1.field1429 == this.field1415) { - for (class159 var2 = (class159)this.field1414.last(); var2 != null; var2 = (class159)this.field1414.previous()) { - var2.vmethod3239(var1); - } + abstract void vmethod3239(ClanChannel var1); - ++var1.field1429; - } else { - throw new RuntimeException(""); - } - } - - @ObfuscatedName("at") + @ObfuscatedName("bv") @ObfuscatedSignature( - descriptor = "([FI)V", - garbageValue = "-753212760" + descriptor = "(ILnn;IIIII[FI)Lnn;", + garbageValue = "171386992" ) - static void method845(float[] var0) { - var0[1] = 1.0F - var0[1]; - if (var0[0] < 0.0F) { - var0[0] = 0.0F; - } - - if (var0[1] < 0.0F) { - var0[1] = 0.0F; - } - - if (var0[0] > 1.0F || var0[1] > 1.0F) { - float var1 = (float)(1.0D + (double)(var0[0] * (var0[0] - 2.0F + var0[1])) + ((double)var0[1] - 2.0D) * (double)var0[1]); - if (var1 + class126.field1204 > 0.0F) { - if (class126.field1204 + var0[0] < 1.3333334F) { - float var2 = var0[0] - 2.0F; - float var3 = var0[0] - 1.0F; - float var4 = (float)Math.sqrt((double)(var2 * var2 - 4.0F * var3 * var3)); - float var5 = 0.5F * (var4 + -var2); - if (var0[1] + class126.field1204 > var5) { - var0[1] = var5 - class126.field1204; - } else { - var5 = (-var2 - var4) * 0.5F; - if (var0[1] < var5 + class126.field1204) { - var0[1] = class126.field1204 + var5; - } - } - } else { - var0[0] = 1.3333334F - class126.field1204; - var0[1] = 0.33333334F - class126.field1204; - } - } - } - - var0[1] = 1.0F - var0[1]; + static Widget method839(int var0, Widget var1, int var2, int var3, int var4, int var5, int var6, float[] var7) { + Widget var8 = new Widget(); + var8.type = var0; + var8.parentId = var1.id; + var8.childIndex = var2; + var8.isIf3 = true; + var8.xAlignment = var3; + var8.yAlignment = var4; + var8.widthAlignment = var5; + var8.heightAlignment = var6; + var8.rawX = (int)((float)var1.width * var7[0]); + var8.rawY = (int)((float)var1.height * var7[1]); + var8.rawWidth = (int)((float)var1.width * var7[2]); + var8.rawHeight = (int)((float)var1.height * var7[3]); + return var8; } - @ObfuscatedName("bz") + @ObfuscatedName("ku") @ObfuscatedSignature( - descriptor = "(Lmi;Lmt;ZB)V", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "1322800179" ) - public static void method846(Widget var0, PlayerComposition var1, boolean var2) { - var0.modelType = 7; - var0.field3101 = new PlayerComposition(var1); - if (!var2) { - var0.field3101.equipment = Arrays.copyOf(var0.field3101.field2913, var0.field3101.field2913.length); - var0.field3101.method1729(); - } - + static void method840() { + Client.menuOptionsCount = 0; + Client.isMenuOpen = false; } } \ No newline at end of file diff --git a/osrs/src/main/java/class161.java b/osrs/src/main/java/class161.java index 77485f667..eb2805669 100644 --- a/osrs/src/main/java/class161.java +++ b/osrs/src/main/java/class161.java @@ -1,144 +1,74 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gw") -public class class161 extends class143 { - @ObfuscatedName("au") - int field1417; - @ObfuscatedName("ae") - int field1416; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lfn;" - ) - final class146 this$0; - - @ObfuscatedSignature( - descriptor = "(Lfn;)V" - ) - class161(class146 var1) { - this.this$0 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" - ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1417 = var1.readInt(); - this.field1416 = var1.readInt(); - } - - @ObfuscatedName("ae") +@ObfuscatedName("gi") +public class class161 { + @ObfuscatedName("at") + long field1407; + @ObfuscatedName("ah") + public long field1409; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "Lpm;" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method821(this.field1417, this.field1416); - } + IterableNodeDeque field1408; - @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)V", - garbageValue = "-577871422" + descriptor = "(Luj;)V" ) - @Export("setFriendsRank") - static final void setFriendsRank(String var0, int var1) { - PacketBufferNode var2 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.FRIEND_SETRANK, Client.packetWriter.isaacCipher); - var2.packetBuffer.writeByte(AbstractSocket.stringCp1252NullTerminatedByteSize(var0) + 1); - var2.packetBuffer.writeByte(var1); - var2.packetBuffer.writeStringCp1252NullTerminated(var0); - Client.packetWriter.addNode(var2); + public class161(Buffer var1) { + this.field1409 = -1L; + this.field1408 = new IterableNodeDeque(); + this.method843(var1); } - @ObfuscatedName("ba") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1877408335" + descriptor = "(Luj;B)V", + garbageValue = "-62" ) - static int method850(int var0, Script var1, boolean var2) { - if (var0 == 5306) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class218.getWindowedMode(); - return 1; - } else { - int var3; - if (var0 == 5307) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3 == 1 || var3 == 2) { - class270.setWindowedMode(var3); - } - - return 1; - } else if (var0 == 5308) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class449.clientPreferences.method566(); - return 1; - } else if (var0 != 5309) { - if (var0 == 5310) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else { - return 2; - } + void method843(Buffer var1) { + this.field1407 = var1.readLong(); + this.field1409 = var1.readLong(); + + for (int var2 = var1.readUnsignedByte(); var2 != 0; var2 = var1.readUnsignedByte()) { + Object var3; + if (var2 == 1) { + var3 = new class156(this); + } else if (var2 == 4) { + var3 = new class167(this); + } else if (var2 == 3) { + var3 = new class152(this); + } else if (var2 == 2) { + var3 = new class150(this); } else { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3 == 1 || var3 == 2) { - class449.clientPreferences.method565(var3); + if (var2 != 5) { + throw new RuntimeException(""); } - return 1; + var3 = new class157(this); } + + ((class160)var3).vmethod3238(var1); + this.field1408.addFirst((Node)var3); } + } - @ObfuscatedName("od") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZI)V", - garbageValue = "229621192" + descriptor = "(Lgn;I)V", + garbageValue = "1259262891" ) - @Export("findItemDefinitions") - static void findItemDefinitions(String var0, boolean var1) { - var0 = var0.toLowerCase(); - short[] var2 = new short[16]; - int var3 = 0; - - for (int var4 = 0; var4 < HealthBar.ItemDefinition_fileCount; ++var4) { - ItemComposition var5 = InvDefinition.ItemDefinition_get(var4); - if ((!var1 || var5.isTradable) && var5.noteTemplate == -1 && var5.name.toLowerCase().indexOf(var0) != -1) { - if (var3 >= 250) { - class28.foundItemIdCount = -1; - class156.foundItemIds = null; - return; - } - - if (var3 >= var2.length) { - short[] var6 = new short[var2.length * 2]; - - for (int var7 = 0; var7 < var3; ++var7) { - var6[var7] = var2[var7]; - } - - var2 = var6; - } - - var2[var3++] = (short)var4; + public void method844(ClanChannel var1) { + if (var1.key == this.field1407 && this.field1409 == var1.field1421) { + for (class160 var2 = (class160)this.field1408.last(); var2 != null; var2 = (class160)this.field1408.previous()) { + var2.vmethod3239(var1); } - } - - class156.foundItemIds = var2; - class372.foundItemIndex = 0; - class28.foundItemIdCount = var3; - String[] var8 = new String[class28.foundItemIdCount]; - for (int var9 = 0; var9 < class28.foundItemIdCount; ++var9) { - var8[var9] = InvDefinition.ItemDefinition_get(var2[var9]).name; + ++var1.field1421; + } else { + throw new RuntimeException(""); } - - short[] var10 = class156.foundItemIds; - FriendSystem.sortItemsByName(var8, var10, 0, var8.length - 1); } } \ No newline at end of file diff --git a/osrs/src/main/java/class162.java b/osrs/src/main/java/class162.java index d09e838b7..542e61ea4 100644 --- a/osrs/src/main/java/class162.java +++ b/osrs/src/main/java/class162.java @@ -2,68 +2,144 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gi") -public class class162 extends class143 { - @ObfuscatedName("aa") - static int[][] field1419; - @ObfuscatedName("qv") - @ObfuscatedSignature( - descriptor = "[Lmi;" - ) - static Widget[] field1420; - @ObfuscatedName("tm") - @ObfuscatedSignature( - descriptor = "Lbl;" - ) - @Export("pcmStreamMixer") - static PcmStreamMixer pcmStreamMixer; - @ObfuscatedName("au") - int field1421; +@ObfuscatedName("gp") +public class class162 extends class144 { + @ObfuscatedName("at") + int field1411; + @ObfuscatedName("ah") + int field1410; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lfv;" ) - final class146 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lfv;)V" ) - class162(class146 var1) { + class162(class147 var1) { this.this$0 = var1; - this.field1421 = -1; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) @Export("vmethod3254") void vmethod3254(Buffer var1) { - this.field1421 = var1.readUnsignedShort(); + this.field1411 = var1.readInt(); + this.field1410 = var1.readInt(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) @Export("vmethod3248") void vmethod3248(ClanSettings var1) { - var1.method818(this.field1421); + var1.method814(this.field1411, this.field1410); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "6" + ) + static void method845() { + ChatChannel.field835 = new int[2000]; + int var0 = 0; + int var1 = 240; + + int var3; + for (byte var2 = 12; var0 < 16; var1 -= var2) { + var3 = ArchiveLoader.method459((double)((float)var1 / 360.0F), 0.9998999834060669D, (double)(0.425F * (float)var0 / 16.0F + 0.075F)); + ChatChannel.field835[var0] = var3; + ++var0; + } + + var1 = 48; + + for (int var5 = var1 / 6; var0 < ChatChannel.field835.length; var1 -= var5) { + var3 = var0 * 2; + + for (int var4 = ArchiveLoader.method459((double)((float)var1 / 360.0F), 0.9998999834060669D, 0.5D); var0 < var3 && var0 < ChatChannel.field835.length; ++var0) { + ChatChannel.field835[var0] = var4; + } + } + } - @ObfuscatedName("cs") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(ILmc;ZI)V", - garbageValue = "-1867605195" + descriptor = "([BB)V", + garbageValue = "33" ) - static void method854(int var0, Coord var1, boolean var2) { - WorldMapArea var3 = class227.getWorldMap().getMapArea(var0); - int var4 = VarbitComposition.localPlayer.plane; - int var5 = (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX; - int var6 = (VarbitComposition.localPlayer.y >> 7) + class47.baseY; - Coord var7 = new Coord(var4, var5, var6); - class227.getWorldMap().method2400(var3, var7, var1, var2); + @Export("SpriteBuffer_decode") + public static void SpriteBuffer_decode(byte[] var0) { + Buffer var1 = new Buffer(var0); + var1.offset = var0.length - 2; + class541.SpriteBuffer_spriteCount = var1.readUnsignedShort(); + class541.SpriteBuffer_xOffsets = new int[class541.SpriteBuffer_spriteCount]; + class541.SpriteBuffer_yOffsets = new int[class541.SpriteBuffer_spriteCount]; + class541.SpriteBuffer_spriteWidths = new int[class541.SpriteBuffer_spriteCount]; + class520.SpriteBuffer_spriteHeights = new int[class541.SpriteBuffer_spriteCount]; + class396.SpriteBuffer_pixels = new byte[class541.SpriteBuffer_spriteCount][]; + var1.offset = var0.length - 7 - class541.SpriteBuffer_spriteCount * 8; + class541.SpriteBuffer_spriteWidth = var1.readUnsignedShort(); + GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight = var1.readUnsignedShort(); + int var2 = (var1.readUnsignedByte() & 255) + 1; + + int var3; + for (var3 = 0; var3 < class541.SpriteBuffer_spriteCount; ++var3) { + class541.SpriteBuffer_xOffsets[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class541.SpriteBuffer_spriteCount; ++var3) { + class541.SpriteBuffer_yOffsets[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class541.SpriteBuffer_spriteCount; ++var3) { + class541.SpriteBuffer_spriteWidths[var3] = var1.readUnsignedShort(); + } + + for (var3 = 0; var3 < class541.SpriteBuffer_spriteCount; ++var3) { + class520.SpriteBuffer_spriteHeights[var3] = var1.readUnsignedShort(); + } + + var1.offset = var0.length - 7 - class541.SpriteBuffer_spriteCount * 8 - (var2 - 1) * 3; + class541.SpriteBuffer_spritePalette = new int[var2]; + + for (var3 = 1; var3 < var2; ++var3) { + class541.SpriteBuffer_spritePalette[var3] = var1.readMedium(); + if (class541.SpriteBuffer_spritePalette[var3] == 0) { + class541.SpriteBuffer_spritePalette[var3] = 1; + } + } + + var1.offset = 0; + + for (var3 = 0; var3 < class541.SpriteBuffer_spriteCount; ++var3) { + int var4 = class541.SpriteBuffer_spriteWidths[var3]; + int var5 = class520.SpriteBuffer_spriteHeights[var3]; + int var6 = var5 * var4; + byte[] var7 = new byte[var6]; + class396.SpriteBuffer_pixels[var3] = var7; + int var8 = var1.readUnsignedByte(); + int var9; + if (var8 == 0) { + for (var9 = 0; var9 < var6; ++var9) { + var7[var9] = var1.readByte(); + } + } else if (var8 == 1) { + for (var9 = 0; var9 < var4; ++var9) { + for (int var10 = 0; var10 < var5; ++var10) { + var7[var9 + var4 * var10] = var1.readByte(); + } + } + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class163.java b/osrs/src/main/java/class163.java new file mode 100644 index 000000000..29654288f --- /dev/null +++ b/osrs/src/main/java/class163.java @@ -0,0 +1,66 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("gq") +public class class163 extends class144 { + @ObfuscatedName("at") + int field1412; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; + + @ObfuscatedSignature( + descriptor = "(Lfv;)V" + ) + class163(class147 var1) { + this.this$0 = var1; + this.field1412 = -1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-734756620" + ) + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1412 = var1.readUnsignedShort(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" + ) + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method811(this.field1412); + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-114" + ) + static final void method849() { + WorldMapArea.method1213("You can't add yourself to your own friend list"); + } + + @ObfuscatedName("mx") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "2130928035" + ) + static boolean method852(int var0) { + for (int var1 = 0; var1 < Client.field530; ++var1) { + if (Client.field577[var1] == var0) { + return true; + } + } + + return false; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class164.java b/osrs/src/main/java/class164.java deleted file mode 100644 index e06e2dcf8..000000000 --- a/osrs/src/main/java/class164.java +++ /dev/null @@ -1,69 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("gl") -public class class164 { - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "([BI)[I", - garbageValue = "2043897954" - ) - public static int[] method863(byte[] var0) { - if (var0 != null && var0.length != 0 && var0.length <= 8) { - int[] var1 = new int[var0.length]; - - for (int var2 = 0; var2 < var0.length; ++var2) { - if (var0[var2] < 0 || var0[var2] > class538.field4284.length) { - return null; - } - - var1[var2] = class538.field4284[var0[var2]]; - } - - return var1; - } else { - return null; - } - } - - @ObfuscatedName("in") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1654219145" - ) - static final void method864() { - if (Client.field538 != HealthBar.Client_plane) { - Client.field538 = HealthBar.Client_plane; - class17.method50(HealthBar.Client_plane); - } - - } - - @ObfuscatedName("mq") - @ObfuscatedSignature( - descriptor = "(IIIIII)V", - garbageValue = "1697845802" - ) - @Export("drawScrollBar") - static final void drawScrollBar(int var0, int var1, int var2, int var3, int var4) { - GrandExchangeOfferOwnWorldComparator.scrollBarSprites[0].drawAt(var0, var1); - GrandExchangeOfferOwnWorldComparator.scrollBarSprites[1].drawAt(var0, var3 + var1 - 16); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1 + 16, 16, var3 - 32, Client.field462); - int var5 = var3 * (var3 - 32) / var4; - if (var5 < 8) { - var5 = 8; - } - - int var6 = (var3 - 32 - var5) * var2 / (var4 - var3); - Rasterizer2D.Rasterizer2D_fillRectangle(var0, var6 + var1 + 16, 16, var5, Client.field463); - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0, var6 + var1 + 16, var5, Client.field460); - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 1, var6 + var1 + 16, var5, Client.field460); - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 16, 16, Client.field460); - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var6 + var1 + 17, 16, Client.field460); - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 15, var6 + var1 + 16, var5, Client.field459); - Rasterizer2D.Rasterizer2D_drawVerticalLine(var0 + 14, var6 + var1 + 17, var5 - 1, Client.field459); - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0, var5 + var6 + var1 + 15, 16, Client.field459); - Rasterizer2D.Rasterizer2D_drawHorizontalLine(var0 + 1, var6 + var5 + var1 + 14, 15, Client.field459); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class165.java b/osrs/src/main/java/class165.java index 37a5b3b7e..f2a970534 100644 --- a/osrs/src/main/java/class165.java +++ b/osrs/src/main/java/class165.java @@ -1,94 +1,14 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.File; -import java.io.IOException; - @ObfuscatedName("gb") -public class class165 extends class143 { - @ObfuscatedName("au") - long field1431; - @ObfuscatedName("ae") - String field1430; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lfn;" - ) - final class146 this$0; - - @ObfuscatedSignature( - descriptor = "(Lfn;)V" - ) - class165(class146 var1) { - this.this$0 = var1; - this.field1431 = -1L; - this.field1430 = null; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" - ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - if (var1.readUnsignedByte() != 255) { - --var1.offset; - this.field1431 = var1.readLong(); - } - - this.field1430 = var1.readStringCp1252NullTerminatedOrNull(); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" - ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method815(this.field1431, this.field1430); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/io/File;Ljava/io/File;I)V", - garbageValue = "1715361402" - ) - static void method868(File var0, File var1) { - try { - AccessFile var2 = new AccessFile(JagexCache.field1463, "rw", 10000L); - Buffer var3 = new Buffer(500); - var3.writeByte(3); - var3.writeByte(var1 != null ? 1 : 0); - var3.writeCESU8(var0.getPath()); - if (var1 != null) { - var3.writeCESU8(""); - } - - var2.write(var3.array, 0, var3.offset); - var2.close(); - } catch (IOException var4) { - var4.printStackTrace(); - } - - } - - @ObfuscatedName("kx") +public class class165 { + @ObfuscatedName("oa") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "97" + descriptor = "(ZI)V", + garbageValue = "483365457" ) - static final void method869() { - for (PendingSpawn var0 = (PendingSpawn)Client.pendingSpawns.last(); var0 != null; var0 = (PendingSpawn)Client.pendingSpawns.previous()) { - if (var0.endCycle == -1) { - var0.startCycle = 0; - PacketWriter.method646(var0); - } else { - var0.remove(); - } - } - + static void method863(boolean var0) { + Client.leftClickOpensMenu = var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class166.java b/osrs/src/main/java/class166.java index b83ea866b..a5bdd5797 100644 --- a/osrs/src/main/java/class166.java +++ b/osrs/src/main/java/class166.java @@ -2,55 +2,58 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gj") -public class class166 extends class159 { - @ObfuscatedName("au") - String field1434; - @ObfuscatedName("ae") - byte field1432; - @ObfuscatedName("ao") - byte field1433; +@ObfuscatedName("gu") +public class class166 extends class144 { + @ObfuscatedName("at") + long field1423; + @ObfuscatedName("ah") + String field1422; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lgg;" + descriptor = "Lfv;" ) - final class160 this$0; + final class147 this$0; @ObfuscatedSignature( - descriptor = "(Lgg;)V" + descriptor = "(Lfv;)V" ) - class166(class160 var1) { + class166(class147 var1) { this.this$0 = var1; + this.field1423 = -1L; + this.field1422 = null; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "1" + descriptor = "(Luj;I)V", + garbageValue = "-734756620" ) - @Export("vmethod3238") - void vmethod3238(Buffer var1) { - this.field1434 = var1.readStringCp1252NullTerminatedOrNull(); - if (this.field1434 != null) { - var1.readUnsignedByte(); - this.field1432 = var1.readByte(); - this.field1433 = var1.readByte(); + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + if (var1.readUnsignedByte() != 255) { + --var1.offset; + this.field1423 = var1.readLong(); } + this.field1422 = var1.readStringCp1252NullTerminatedOrNull(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgo;I)V", - garbageValue = "831405774" + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" ) - @Export("vmethod3239") - void vmethod3239(ClanChannel var1) { - var1.name = this.field1434; - if (this.field1434 != null) { - var1.field1426 = this.field1432; - var1.field1425 = this.field1433; - } + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method808(this.field1423, this.field1422); + } + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "41" + ) + public static void method866() { + ItemComposition.ItemDefinition_cachedSprites.clear(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class167.java b/osrs/src/main/java/class167.java index ec2fd67ef..039b5be16 100644 --- a/osrs/src/main/java/class167.java +++ b/osrs/src/main/java/class167.java @@ -2,75 +2,126 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ge") -public class class167 extends class143 { - @ObfuscatedName("ai") - @Export("ArchiveDiskActionHandler_thread") - static Thread ArchiveDiskActionHandler_thread; - @ObfuscatedName("ki") +import java.lang.management.GarbageCollectorMXBean; +import java.lang.management.ManagementFactory; +import java.util.Iterator; + +@ObfuscatedName("ga") +public class class167 extends class160 { + @ObfuscatedName("fb") @ObfuscatedSignature( - descriptor = "Lui;" + descriptor = "Lro;" ) - @Export("redHintArrowSprite") - static SpritePixels redHintArrowSprite; - @ObfuscatedName("au") - int field1437; - @ObfuscatedName("ae") - long field1438; + @Export("js5Socket") + static AbstractSocket js5Socket; + @ObfuscatedName("at") + String field1427; + @ObfuscatedName("ah") + byte field1425; + @ObfuscatedName("ar") + byte field1426; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lfn;" + descriptor = "Lgi;" ) - final class146 this$0; + final class161 this$0; @ObfuscatedSignature( - descriptor = "(Lfn;)V" + descriptor = "(Lgi;)V" ) - class167(class146 var1) { + class167(class161 var1) { this.this$0 = var1; } - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "1810249387" + ) + @Export("vmethod3238") + void vmethod3238(Buffer var1) { + this.field1427 = var1.readStringCp1252NullTerminatedOrNull(); + if (this.field1427 != null) { + var1.readUnsignedByte(); + this.field1425 = var1.readByte(); + this.field1426 = var1.readByte(); + } + + } + + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "209179459" + descriptor = "(Lgn;B)V", + garbageValue = "-75" ) - @Export("vmethod3254") - void vmethod3254(Buffer var1) { - this.field1437 = var1.readInt(); - this.field1438 = var1.readLong(); + @Export("vmethod3239") + void vmethod3239(ClanChannel var1) { + var1.name = this.field1427; + if (this.field1427 != null) { + var1.field1417 = this.field1425; + var1.field1418 = this.field1426; + } + } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lfi;B)V", - garbageValue = "73" + descriptor = "(II)Ljava/lang/String;", + garbageValue = "-1882833719" ) - @Export("vmethod3248") - void vmethod3248(ClanSettings var1) { - var1.method823(this.field1437, this.field1438); + @Export("colorStartTag") + static String colorStartTag(int var0) { + return ""; } - @ObfuscatedName("jq") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "769198964" + descriptor = "(IIIIB)I", + garbageValue = "21" ) - static final void method874() { - for (GraphicsObject var0 = (GraphicsObject)Client.graphicsObjects.last(); var0 != null; var0 = (GraphicsObject)Client.graphicsObjects.previous()) { - if (var0.plane == HealthBar.Client_plane && !var0.isFinished) { - if (Client.cycle >= var0.cycleStart) { - var0.advance(Client.field457); - if (var0.isFinished) { - var0.remove(); - } else { - class130.scene.drawEntity(var0.plane, var0.x, var0.y, var0.z, 60, var0, 0, -1L, false); + static final int method867(int var0, int var1, int var2, int var3) { + return var3 * var0 + var2 * var1 >> 16; + } + + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-139333947" + ) + @Export("getGcDuration") + protected static int getGcDuration() { + int var0 = 0; + if (UserComparator10.garbageCollector == null || !UserComparator10.garbageCollector.isValid()) { + try { + Iterator var1 = ManagementFactory.getGarbageCollectorMXBeans().iterator(); + + while (var1.hasNext()) { + GarbageCollectorMXBean var2 = (GarbageCollectorMXBean)var1.next(); + if (var2.isValid()) { + UserComparator10.garbageCollector = var2; + GameEngine.garbageCollectorLastCheckTimeMs = -1L; + GameEngine.garbageCollectorLastCollectionTime = -1L; } } - } else { - var0.remove(); + } catch (Throwable var11) { } } + if (UserComparator10.garbageCollector != null) { + long var9 = SpotAnimationDefinition.method962(); + long var3 = UserComparator10.garbageCollector.getCollectionTime(); + if (-1L != GameEngine.garbageCollectorLastCollectionTime) { + long var5 = var3 - GameEngine.garbageCollectorLastCollectionTime; + long var7 = var9 - GameEngine.garbageCollectorLastCheckTimeMs; + if (var7 != 0L) { + var0 = (int)(var5 * 100L / var7); + } + } + + GameEngine.garbageCollectorLastCollectionTime = var3; + GameEngine.garbageCollectorLastCheckTimeMs = var9; + } + + return var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class168.java b/osrs/src/main/java/class168.java new file mode 100644 index 000000000..cd522956e --- /dev/null +++ b/osrs/src/main/java/class168.java @@ -0,0 +1,95 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("gf") +public class class168 extends class144 { + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + public static AbstractArchive field1428; + @ObfuscatedName("at") + int field1429; + @ObfuscatedName("ah") + long field1430; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lfv;" + ) + final class147 this$0; + + @ObfuscatedSignature( + descriptor = "(Lfv;)V" + ) + class168(class147 var1) { + this.this$0 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-734756620" + ) + @Export("vmethod3254") + void vmethod3254(Buffer var1) { + this.field1429 = var1.readInt(); + this.field1430 = var1.readLong(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lfc;I)V", + garbageValue = "-2111347169" + ) + @Export("vmethod3248") + void vmethod3248(ClanSettings var1) { + var1.method816(this.field1429, this.field1430); + } + + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "-89" + ) + static int method874(int var0, Script var1, boolean var2) { + Widget var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var0 == 2500) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.x; + return 1; + } else if (var0 == 2501) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.y; + return 1; + } else if (var0 == 2502) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.width; + return 1; + } else if (var0 == 2503) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.height; + return 1; + } else if (var0 == 2504) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.isHidden ? 1 : 0; + return 1; + } else if (var0 == 2505) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.parentId; + return 1; + } else { + return 2; + } + } + + @ObfuscatedName("ou") + @ObfuscatedSignature( + descriptor = "(II)Lte;", + garbageValue = "-847126653" + ) + @Export("getDbTable") + static DbTable getDbTable(int var0) { + DbTable var1 = (DbTable)Client.Widget_cachedModels.get((long)var0); + if (var1 == null) { + var1 = new DbTable(class267.field2224, SequenceDefinition.method1041(var0), ZoneOperation.method1630(var0)); + Client.Widget_cachedModels.put(var1, (long)var0); + } + + return var1; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class169.java b/osrs/src/main/java/class169.java deleted file mode 100644 index f4db7a763..000000000 --- a/osrs/src/main/java/class169.java +++ /dev/null @@ -1,192 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("gv") -public class class169 extends class181 { - @ObfuscatedName("au") - String field1440; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgf;" - ) - final class170 this$0; - - @ObfuscatedSignature( - descriptor = "(Lgf;Ljava/lang/String;Ljava/lang/String;)V" - ) - class169(class170 var1, String var2, String var3) { - super(var1, var2); - this.this$0 = var1; - this.field1440 = var3; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "38" - ) - @Export("vmethod3379") - public int vmethod3379() { - return 1; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1557827941" - ) - @Export("vmethod3380") - public String vmethod3380() { - return this.field1440; - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-866561565" - ) - static int method879(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 >= 2000) { - var0 -= 1000; - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } else { - var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - } - - String var4 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - int[] var5 = null; - if (var4.length() > 0 && var4.charAt(var4.length() - 1) == 'Y') { - int var6 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var6 > 0) { - for (var5 = new int[var6]; var6-- > 0; var5[var6] = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]) { - } - } - - var4 = var4.substring(0, var4.length() - 1); - } - - Object[] var9 = new Object[var4.length() + 1]; - - int var7; - for (var7 = var9.length - 1; var7 >= 1; --var7) { - if (var4.charAt(var7 - 1) == 's') { - var9[var7] = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - } else { - var9[var7] = new Integer(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } - } - - var7 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var7 != -1) { - var9[0] = new Integer(var7); - } else { - var9 = null; - } - - if (var0 == 1400) { - var3.onClick = var9; - } else if (var0 == 1401) { - var3.onHold = var9; - } else if (var0 == 1402) { - var3.onRelease = var9; - } else if (var0 == 1403) { - var3.onMouseOver = var9; - } else if (var0 == 1404) { - var3.onMouseLeave = var9; - } else if (var0 == 1405) { - var3.onDrag = var9; - } else if (var0 == 1406) { - var3.onTargetLeave = var9; - } else if (var0 == 1407) { - var3.onVarTransmit = var9; - var3.varTransmitTriggers = var5; - } else if (var0 == 1408) { - var3.onTimer = var9; - } else if (var0 == 1409) { - var3.onOp = var9; - } else if (var0 == 1410) { - var3.onDragComplete = var9; - } else if (var0 == 1411) { - var3.onClickRepeat = var9; - } else if (var0 == 1412) { - var3.onMouseRepeat = var9; - } else if (var0 == 1414) { - var3.onInvTransmit = var9; - var3.invTransmitTriggers = var5; - } else if (var0 == 1415) { - var3.onStatTransmit = var9; - var3.statTransmitTriggers = var5; - } else if (var0 == 1416) { - var3.onTargetEnter = var9; - } else if (var0 == 1417) { - var3.onScroll = var9; - } else if (var0 == 1418) { - var3.onChatTransmit = var9; - } else if (var0 == 1419) { - var3.onKey = var9; - } else if (var0 == 1420) { - var3.onFriendTransmit = var9; - } else if (var0 == 1421) { - var3.onClanTransmit = var9; - } else if (var0 == 1422) { - var3.onMiscTransmit = var9; - } else if (var0 == 1423) { - var3.onDialogAbort = var9; - } else if (var0 == 1424) { - var3.onSubChange = var9; - } else if (var0 == 1425) { - var3.onStockTransmit = var9; - } else if (var0 == 1426) { - var3.field3081 = var9; - } else if (var0 == 1427) { - var3.onResize = var9; - } else if (var0 == 1428) { - var3.field3082 = var9; - } else if (var0 == 1429) { - var3.field3090 = var9; - } else if (var0 == 1430) { - var3.field3089 = var9; - } else if (var0 == 1431) { - var3.field3079 = var9; - } else if (var0 == 1434) { - var3.field3088 = var9; - } else if (var0 == 1435) { - var3.field3076 = var9; - } else { - if (var0 < 1436 || var0 > 1439) { - return 2; - } - - class327 var8 = var3.method1847(); - if (var8 != null) { - if (var0 == 1436) { - var8.field2898 = var9; - } else if (var0 == 1437) { - var8.field2899 = var9; - } else if (var0 == 1438) { - var8.field2901 = var9; - } else if (var0 == 1439) { - var8.field2900 = var9; - } - } - } - - var3.hasListener = true; - return 1; - } - - @ObfuscatedName("il") - @ObfuscatedSignature( - descriptor = "(Lib;IIII)V", - garbageValue = "1647034458" - ) - static void method880(SequenceDefinition var0, int var1, int var2, int var3) { - if (Client.soundEffectCount < 50 && class449.clientPreferences.getAreaSoundEffectsVolume() != 0) { - if (var0.animMayaFrameSounds != null && var0.animMayaFrameSounds.containsKey(var1)) { - MouseHandler.method172((Integer)var0.animMayaFrameSounds.get(var1), var2, var3); - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class17.java b/osrs/src/main/java/class17.java index ff1ba2089..511d98c78 100644 --- a/osrs/src/main/java/class17.java +++ b/osrs/src/main/java/class17.java @@ -11,16 +11,18 @@ @ObfuscatedName("am") class class17 implements SSLSession { + @ObfuscatedName("ah") + public static String field53; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lal;" + descriptor = "Lax;" ) @Export("this$1") @ObfuscatedName("this$1") final class12 this$1; @ObfuscatedSignature( - descriptor = "(Lal;)V" + descriptor = "(Lax;)V" ) class17(class12 var1) { this.this$1 = var1; @@ -65,7 +67,7 @@ public X509Certificate[] getPeerCertificateChain() throws SSLPeerUnverifiedExcep } public Certificate[] getPeerCertificates() throws SSLPeerUnverifiedException { - return this.this$1.field39; + return this.this$1.field43; } public String getPeerHost() { @@ -126,102 +128,136 @@ public void removeValue(String var1) { @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "-1689168407" + descriptor = "(BI)C", + garbageValue = "-1889470685" ) - static final void method49(int var0, int var1, int var2, int var3) { - for (int var4 = var1; var4 <= var3 + var1; ++var4) { - for (int var5 = var0; var5 <= var0 + var2; ++var5) { - if (var5 >= 0 && var5 < 104 && var4 >= 0 && var4 < 104) { - MoveSpeed.field1924[0][var5][var4] = 127; - if (var0 == var5 && var5 > 0) { - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 - 1][var4]; - } - - if (var0 + var2 == var5 && var5 < 103) { - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5 + 1][var4]; - } - - if (var4 == var1 && var4 > 0) { - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 - 1]; - } - - if (var3 + var1 == var4 && var4 < 103) { - Tiles.Tiles_heights[0][var5][var4] = Tiles.Tiles_heights[0][var5][var4 + 1]; - } + public static char method60(byte var0) { + int var1 = var0 & 255; + if (var1 == 0) { + throw new IllegalArgumentException("" + Integer.toString(var1, 16)); + } else { + if (var1 >= 128 && var1 < 160) { + char var2 = class396.cp1252AsciiExtension[var1 - 128]; + if (var2 == 0) { + var2 = '?'; } + + var1 = var2; } - } + return (char)var1; + } } - @ObfuscatedName("ko") + @ObfuscatedName("bs") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1087980755" + descriptor = "(ILdt;ZB)I", + garbageValue = "-81" ) - static final void method50(int var0) { - int[] var1 = AbstractUserComparator.sceneMinimapSprite.pixels; - int var2 = var1.length; + static int method62(int var0, Script var1, boolean var2) { + if (var0 == 6809) { + int var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + ObjectComposition var4 = WorldMapSection2.getObjectDefinition(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4 != null ? var4.name : ""; + return 1; + } else { + return 2; + } + } - int var3; - for (var3 = 0; var3 < var2; ++var3) { - var1[var3] = 0; + @ObfuscatedName("ho") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1059264411" + ) + static void method61() { + Client.packetWriter.clearBuffer(); + Client.packetWriter.packetBuffer.offset = 0; + Client.packetWriter.serverPacket = null; + Client.packetWriter.field1167 = null; + Client.packetWriter.field1168 = null; + Client.packetWriter.field1166 = null; + Client.packetWriter.serverPacketLength = 0; + Client.packetWriter.field1164 = 0; + Client.rebootTimer = 0; + class160.method840(); + Client.minimapState = 0; + Client.destinationX = 0; + + int var0; + for (var0 = 0; var0 < 2048; ++var0) { + Client.players[var0] = null; } - int var4; - int var5; - for (var3 = 1; var3 < 103; ++var3) { - var4 = (103 - var3) * 2048 + 24628; + class229.localPlayer = null; - for (var5 = 1; var5 < 103; ++var5) { - if ((Tiles.Tiles_renderFlags[var0][var5][var3] & 24) == 0) { - class130.scene.drawTileMinimap(var1, var4, 512, var0, var5, var3); - } + for (var0 = 0; var0 < Client.npcs.length; ++var0) { + NPC var1 = Client.npcs[var0]; + if (var1 != null) { + var1.targetIndex = -1; + var1.false0 = false; + } + } - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var5][var3] & 8) != 0) { - class130.scene.drawTileMinimap(var1, var4, 512, var0 + 1, var5, var3); - } + class59.method332(); + WorldMapSection2.updateGameState(30); - var4 += 4; - } + for (var0 = 0; var0 < 100; ++var0) { + Client.field407[var0] = true; } - var3 = (238 + (int)(Math.random() * 20.0D) - 10 << 16) + (238 + (int)(Math.random() * 20.0D) - 10 << 8) + (238 + (int)(Math.random() * 20.0D) - 10); - var4 = 238 + (int)(Math.random() * 20.0D) - 10 << 16; - AbstractUserComparator.sceneMinimapSprite.setRaster(); + if (Client.packetWriter != null && Client.packetWriter.isaacCipher != null) { + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.EVENT_MOUSE_IDLE, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeByte(ApproximateRouteStrategy.getWindowedMode()); + var2.packetBuffer.writeShort(Language.canvasWidth); + var2.packetBuffer.writeShort(class47.canvasHeight); + Client.packetWriter.addNode(var2); + } - int var6; - for (var5 = 1; var5 < 103; ++var5) { - for (var6 = 1; var6 < 103; ++var6) { - if ((Tiles.Tiles_renderFlags[var0][var6][var5] & 24) == 0) { - class102.drawObject(var0, var6, var5, var3, var4); - } + } + + @ObfuscatedName("lo") + @ObfuscatedSignature( + descriptor = "(Lnn;IIIIIII)V", + garbageValue = "-1558777613" + ) + static final void method63(Widget var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (Client.field382) { + Client.alternativeScrollbarWidth = 32; + } else { + Client.alternativeScrollbarWidth = 0; + } - if (var0 < 3 && (Tiles.Tiles_renderFlags[var0 + 1][var6][var5] & 8) != 0) { - class102.drawObject(var0 + 1, var6, var5, var3, var4); + Client.field382 = false; + int var7; + if (MouseHandler.MouseHandler_currentButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_currentButton == 4) { + if (var5 >= var1 && var5 < var1 + 16 && var6 >= var2 && var6 < var2 + 16) { + var0.scrollY -= 4; + class159.invalidateWidget(var0); + } else if (var5 >= var1 && var5 < var1 + 16 && var6 >= var3 + var2 - 16 && var6 < var3 + var2) { + var0.scrollY += 4; + class159.invalidateWidget(var0); + } else if (var5 >= var1 - Client.alternativeScrollbarWidth && var5 < Client.alternativeScrollbarWidth + var1 + 16 && var6 >= var2 + 16 && var6 < var3 + var2 - 16) { + var7 = var3 * (var3 - 32) / var4; + if (var7 < 8) { + var7 = 8; } + + int var8 = var6 - var2 - 16 - var7 / 2; + int var9 = var3 - 32 - var7; + var0.scrollY = var8 * (var4 - var3) / var9; + class159.invalidateWidget(var0); + Client.field382 = true; } } - Client.mapIconCount = 0; - - for (var5 = 0; var5 < 104; ++var5) { - for (var6 = 0; var6 < 104; ++var6) { - long var7 = class130.scene.getFloorDecorationTag(HealthBar.Client_plane, var5, var6); - if (0L != var7) { - int var9 = InvDefinition.Entity_unpackID(var7); - int var10 = WorldMapElement.getObjectDefinition(var9).mapIconId; - if (var10 >= 0 && class138.WorldMapElement_get(var10).field1518) { - Client.mapIcons[Client.mapIconCount] = class138.WorldMapElement_get(var10).getSpriteBool(false); - Client.mapIconXs[Client.mapIconCount] = var5; - Client.mapIconYs[Client.mapIconCount] = var6; - ++Client.mapIconCount; - } - } + if (Client.mouseWheelRotation != 0) { + var7 = var0.width; + if (var5 >= var1 - var7 && var6 >= var2 && var5 < var1 + 16 && var6 <= var3 + var2) { + var0.scrollY += Client.mouseWheelRotation * 45; + class159.invalidateWidget(var0); } } - AttackOption.rasterProvider.apply(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class170.java b/osrs/src/main/java/class170.java deleted file mode 100644 index bf0e57913..000000000 --- a/osrs/src/main/java/class170.java +++ /dev/null @@ -1,448 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; - -import java.io.UnsupportedEncodingException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -@ObfuscatedName("gf") -public class class170 { - @ObfuscatedName("aa") - int field1443; - @ObfuscatedName("af") - String field1444; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Let;" - ) - UrlRequest field1441; - @ObfuscatedName("aq") - String field1445; - @ObfuscatedName("al") - float[] field1442; - @ObfuscatedName("an") - ArrayList field1447; - @ObfuscatedName("ar") - ArrayList field1448; - @ObfuscatedName("ab") - ArrayList field1446; - @ObfuscatedName("ag") - Map field1449; - @ObfuscatedName("am") - Map field1450; - - public class170() { - this.field1443 = -1; - this.field1445 = null; - this.field1442 = new float[4]; - this.field1447 = new ArrayList(); - this.field1448 = new ArrayList(); - this.field1446 = new ArrayList(); - this.field1449 = new HashMap(); - this.field1450 = new HashMap(); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lev;I)Z", - garbageValue = "-117070837" - ) - public boolean method881(String var1, UrlRequester var2) { - if (var1 != null && !var1.isEmpty()) { - if (var2 == null) { - return false; - } else { - this.method891(); - - try { - this.field1444 = var1; - this.field1441 = var2.request(new URL(this.field1444)); - this.field1443 = 0; - return true; - } catch (MalformedURLException var4) { - this.method891(); - this.field1443 = 100; - return false; - } - } - } else { - return false; - } - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lev;I)V", - garbageValue = "-1262385396" - ) - public void method882(UrlRequester var1) { - switch(this.field1443) { - case 0: - this.method892(var1); - break; - case 1: - this.method893(); - break; - default: - return; - } - - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1206059947" - ) - public int method883() { - return this.field1443; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)I", - garbageValue = "-63404292" - ) - public int method884(String var1) { - return this.field1449.containsKey(var1) ? (Integer)this.field1449.get(var1) : -1; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", - garbageValue = "-1647715363" - ) - public String method885(String var1) { - return (String)((String)(this.field1450.containsKey(var1) ? this.field1450.get(var1) : null)); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(B)Ljava/util/ArrayList;", - garbageValue = "-87" - ) - public ArrayList method886() { - return this.field1448; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(B)Ljava/util/ArrayList;", - garbageValue = "88" - ) - public ArrayList method887() { - return this.field1446; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1756409477" - ) - public String method888() { - return this.field1445; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(I)[F", - garbageValue = "-2115403959" - ) - public float[] method889() { - return this.field1442; - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(B)Ljava/util/ArrayList;", - garbageValue = "-78" - ) - public ArrayList method890() { - return this.field1447; - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "22" - ) - void method891() { - this.field1441 = null; - this.field1445 = null; - this.field1442[0] = 0.0F; - this.field1442[1] = 0.0F; - this.field1442[2] = 1.0F; - this.field1442[3] = 1.0F; - this.field1447.clear(); - this.field1448.clear(); - this.field1446.clear(); - this.field1449.clear(); - this.field1450.clear(); - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(Lev;B)V", - garbageValue = "-76" - ) - void method892(UrlRequester var1) { - if (this.field1441 != null && this.field1441.isDone()) { - byte[] var2 = this.field1441.getResponse(); - if (var2 == null) { - this.method891(); - this.field1443 = 100; - } else { - try { - this.method898(new class462(var2), var1); - } catch (UnsupportedEncodingException var4) { - this.method891(); - this.field1443 = 102; - return; - } - - this.field1443 = this.field1448.size() > 0 ? 1 : 2; - this.field1441 = null; - } - } - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2026180069" - ) - void method893() { - Iterator var1 = this.field1448.iterator(); - - class176 var2; - do { - if (!var1.hasNext()) { - var1 = this.field1448.iterator(); - - while (var1.hasNext()) { - var2 = (class176)var1.next(); - if (var2.field1469 != null) { - byte[] var3 = var2.field1469.getResponse(); - if (var3 != null && var3.length > 0) { - this.field1443 = 2; - return; - } - } - } - - this.method891(); - this.field1443 = 101; - return; - } - - var2 = (class176)var1.next(); - } while(var2.field1469 == null || var2.field1469.isDone()); - - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(Lorg/json/JSONArray;Lev;B)V", - garbageValue = "-22" - ) - void method894(JSONArray var1, UrlRequester var2) throws JSONException { - if (var1 != null) { - for (int var3 = 0; var3 < var1.length(); ++var3) { - try { - JSONObject var4 = var1.getJSONObject(var3); - class176 var5 = new class176(this); - var5.field1469 = var2.request(new URL(var4.getString("src"))); - var5.field1470 = UserComparator5.method679(var4, "placement"); - this.field1448.add(var5); - } catch (MalformedURLException var6) { - } - } - - } - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(Lorg/json/JSONArray;I)V", - garbageValue = "205832282" - ) - void method895(JSONArray var1) throws JSONException { - if (var1 != null) { - for (int var2 = 0; var2 < var1.length(); ++var2) { - JSONObject var3 = var1.getJSONObject(var2); - class177 var4 = new class177(this); - var4.field1476 = var3.getString("text"); - String var7 = var3.getString("align_x"); - byte var6; - if (var7.equals("centre")) { - var6 = 1; - } else if (!var7.equals("bottom") && !var7.equals("right")) { - var6 = 0; - } else { - var6 = 2; - } - - var4.field1473 = var6; - String var10 = var3.getString("align_y"); - byte var9; - if (var10.equals("centre")) { - var9 = 1; - } else if (!var10.equals("bottom") && !var10.equals("right")) { - var9 = 0; - } else { - var9 = 2; - } - - var4.field1475 = var9; - var4.field1474 = var3.getInt("font"); - var4.field1472 = UserComparator5.method679(var3, "placement"); - this.field1446.add(var4); - } - - } - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(Lorg/json/JSONObject;I)V", - garbageValue = "3730991" - ) - void method896(JSONObject var1) throws JSONException { - if (var1 != null) { - this.field1442 = UserComparator5.method679(var1, "clickbounds"); - this.field1445 = var1.getString("endpoint"); - String[] var2 = JSONObject.getNames(var1); - - for (int var3 = 0; var3 < var1.length(); ++var3) { - if (!var2[var3].equals("clickbounds") && !var2[var3].equals("endpoint")) { - try { - int var4 = var1.getInt(var2[var3]); - this.field1447.add(new class178(this, var2[var3], var4)); - } catch (Exception var8) { - try { - String var5 = var1.getString(var2[var3]); - if (var5.equals("true")) { - this.field1447.add(new class178(this, var2[var3], 1)); - } else if (var5.equals("false")) { - this.field1447.add(new class178(this, var2[var3], 0)); - } else { - this.field1447.add(new class169(this, var2[var3], var5)); - } - } catch (Exception var7) { - } - } - } - } - - } - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(Lorg/json/JSONObject;B)V", - garbageValue = "-60" - ) - void method897(JSONObject var1) throws JSONException { - String[] var2 = JSONObject.getNames(var1); - - for (int var3 = 0; var3 < var1.length(); ++var3) { - try { - int var4 = var1.getInt(var2[var3]); - this.field1449.put(var2[var3], var4); - } catch (Exception var8) { - try { - String var5 = var1.getString(var2[var3]); - if (var5.equals("true")) { - this.field1449.put(var2[var3], 1); - } else if (var5.equals("false")) { - this.field1449.put(var2[var3], 0); - } else { - this.field1450.put(var2[var3], var5); - } - } catch (Exception var7) { - } - } - } - - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(Lrl;Lev;B)V", - garbageValue = "80" - ) - void method898(class462 var1, UrlRequester var2) { - JSONObject var3; - try { - var3 = var1.method2338(); - var3 = var3.getJSONObject("message"); - } catch (Exception var9) { - this.method891(); - this.field1443 = 102; - return; - } - - try { - this.method894(var3.getJSONArray("images"), var2); - } catch (Exception var8) { - this.field1448.clear(); - } - - try { - this.method895(var3.getJSONArray("labels")); - } catch (Exception var7) { - this.field1446.clear(); - } - - try { - this.method896(var3.getJSONObject("behaviour")); - } catch (Exception var6) { - this.field1445 = null; - this.field1442[0] = 0.0F; - this.field1442[1] = 0.0F; - this.field1442[2] = 1.0F; - this.field1442[3] = 1.0F; - this.field1447.clear(); - } - - try { - this.method897(var3.getJSONObject("meta")); - } catch (Exception var5) { - this.field1449.clear(); - this.field1450.clear(); - } - - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lev;I)Z", - garbageValue = "1404178579" - ) - public boolean method899(String var1, UrlRequester var2) { - try { - this.method898(new class462(var1.getBytes()), var2); - this.field1443 = this.field1448.size() > 0 ? 1 : 2; - } catch (UnsupportedEncodingException var4) { - this.field1443 = 102; - } - - return this.field1443 < 100; - } - - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1176704124" - ) - static int method900(int var0, Script var1, boolean var2) { - return 2; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class171.java b/osrs/src/main/java/class171.java new file mode 100644 index 000000000..d947f62bf --- /dev/null +++ b/osrs/src/main/java/class171.java @@ -0,0 +1,648 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("gt") +public class class171 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e2") + public static EvictingDualNodeHashTable e2; + + static { + e2 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("jy") + @ObfuscatedSignature( + descriptor = "(Ldf;IIIIIS)V", + garbageValue = "-15074" + ) + @Export("drawActor2d") + static final void drawActor2d(Actor var0, int var1, int var2, int var3, int var4, int var5) { + if (var0 != null && var0.isVisible()) { + if (var0 instanceof NPC) { + NPCComposition var6 = ((NPC)var0).definition; + if (var6.transforms != null) { + var6 = var6.transform(); + } + + if (var6 == null) { + return; + } + } + + int var75 = Players.Players_count; + int[] var7 = Players.Players_indices; + boolean var8 = var1 < var75; + int var9 = -2; + if (var0.overheadText != null && (!var8 || !var0.showPublicPlayerChat && (Client.publicChatMode == 4 || !var0.isAutoChatting && (Client.publicChatMode == 0 || Client.publicChatMode == 3 || Client.publicChatMode == 1 && ((Player)var0).isFriend())))) { + Canvas.method91(var0, var0.defaultHeight); + if (Client.viewportTempX > -1 && Client.overheadTextLimit < Client.overheadTextCount) { + Client.overheadTextXOffsets[Client.overheadTextLimit] = GrandExchangeOfferTotalQuantityComparator.fontBold12.stringWidth(var0.overheadText) / 2; + Client.overheadTextAscents[Client.overheadTextLimit] = GrandExchangeOfferTotalQuantityComparator.fontBold12.ascent; + Client.overheadTextXs[Client.overheadTextLimit] = Client.viewportTempX; + Client.overheadTextYs[Client.overheadTextLimit] = Client.viewportTempY - var9; + Client.overheadTextColors[Client.overheadTextLimit] = var0.field1005; + Client.overheadTextEffects[Client.overheadTextLimit] = var0.field1003; + Client.overheadTextCyclesRemaining[Client.overheadTextLimit] = var0.overheadTextCyclesRemaining; + Client.field594[Client.overheadTextLimit] = var0.field1030; + Client.field601[Client.overheadTextLimit] = var0.overheadText; + ++Client.overheadTextLimit; + var9 += 12; + } + } + + int var15; + int var22; + int var23; + if (!var0.healthBars.method2027()) { + Canvas.method91(var0, var0.defaultHeight + 15); + + for (HealthBar var10 = (HealthBar)var0.healthBars.last(); var10 != null; var10 = (HealthBar)var0.healthBars.previous()) { + HealthBarUpdate var11 = var10.get(Client.cycle); + if (var11 == null) { + if (var10.isEmpty()) { + var10.remove(); + } + } else { + HealthBarDefinition var12 = var10.definition; + SpritePixels var13 = var12.getBackSprite(); + SpritePixels var14 = var12.getFrontSprite(); + int var16 = 0; + if (var13 != null && var14 != null) { + if (var12.widthPadding * 2 < var14.subWidth) { + var16 = var12.widthPadding; + } + + var15 = var14.subWidth - var16 * 2; + } else { + var15 = var12.width; + } + + int var17 = 255; + boolean var18 = true; + int var19 = Client.cycle - var11.cycle; + int var20 = var15 * var11.health2 / var12.width; + int var21; + int var99; + if (var11.cycleOffset > var19) { + var21 = var12.field1498 == 0 ? 0 : var12.field1498 * (var19 / var12.field1498); + var22 = var15 * var11.health / var12.width; + var99 = var21 * (var20 - var22) / var11.cycleOffset + var22; + } else { + var99 = var20; + var21 = var12.int5 + var11.cycleOffset - var19; + if (var12.int3 >= 0) { + var17 = (var21 << 8) / (var12.int5 - var12.int3); + } + } + + if (var11.health2 > 0 && var99 < 1) { + var99 = 1; + } + + if (var13 != null && var14 != null) { + if (var99 == var15) { + var99 += var16 * 2; + } else { + var99 += var16; + } + + var21 = var13.subHeight; + var9 += var21; + var22 = var2 + Client.viewportTempX - (var15 >> 1); + var23 = var3 + Client.viewportTempY - var9; + var22 -= var16; + if (var17 >= 0 && var17 < 255) { + var13.drawTransAt(var22, var23, var17); + Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var99 + var22, var23 + var21); + var14.drawTransAt(var22, var23, var17); + } else { + var13.drawTransBgAt(var22, var23); + Rasterizer2D.Rasterizer2D_expandClip(var22, var23, var99 + var22, var23 + var21); + var14.drawTransBgAt(var22, var23); + } + + Rasterizer2D.Rasterizer2D_setClip(var2, var3, var2 + var4, var3 + var5); + var9 += 2; + } else { + var9 += 5; + if (Client.viewportTempX > -1) { + var21 = var2 + Client.viewportTempX - (var15 >> 1); + var22 = var3 + Client.viewportTempY - var9; + Rasterizer2D.Rasterizer2D_fillRectangle(var21, var22, var99, 5, 65280); + Rasterizer2D.Rasterizer2D_fillRectangle(var99 + var21, var22, var15 - var99, 5, 16711680); + } + + var9 += 2; + } + } + } + } + + if (var9 == -2) { + var9 += 7; + } + + if (var8 && var0.playerCycle == Client.cycle) { + Player var92 = (Player)var0; + boolean var76; + if (Client.drawPlayerNames == 0) { + var76 = false; + } else if (var92 != class229.localPlayer) { + boolean var77 = (Client.drawPlayerNames & 4) != 0; + boolean var78 = var77 || AbstractByteArrayCopier.method1879() && var92.isFriend(); + if (!var78) { + boolean var79 = (Client.drawPlayerNames & 2) != 0; + var78 = var79 && var92.isFriendsChatMember(); + } + + var76 = var78; + } else { + var76 = Projectile.method442(); + } + + if (var76) { + Player var94 = (Player)var0; + if (var8) { + Canvas.method91(var0, var0.defaultHeight + 15); + AbstractFont var96 = (AbstractFont)Client.fontsMap.get(FontName.FontName_plain12); + var9 += 4; + var96.drawCentered(var94.username.getName(), var2 + Client.viewportTempX, var3 + Client.viewportTempY - var9, 16777215, 0); + var9 += 18; + } + } + } + + if (var8) { + Player var90 = (Player)var0; + if (var90.isHidden) { + return; + } + + if (var90.headIconPk != -1 || var90.headIconPrayer != -1) { + Canvas.method91(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + if (var90.headIconPk != -1) { + var9 += 25; + UrlRequest.headIconPkSprites[var90.headIconPk].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); + } + + if (var90.headIconPrayer != -1) { + var9 += 25; + AbstractByteArrayCopier.headIconPrayerSprites[var90.headIconPrayer].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); + } + } + } + + if (var1 >= 0 && Client.hintArrowType == 10 && var7[var1] == Client.hintArrowPlayerIndex) { + Canvas.method91(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + var9 += class60.headIconHintSprites[1].subHeight; + class60.headIconHintSprites[1].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var9); + } + } + } else { + NPC var91 = (NPC)var0; + int[] var93 = var91.method584(); + short[] var95 = var91.method585(); + if (var95 != null && var93 != null) { + for (int var103 = 0; var103 < var95.length; ++var103) { + if (var95[var103] >= 0 && var93[var103] >= 0) { + long var80 = (long)var93[var103] << 8 | (long)var95[var103]; + SpritePixels var82 = (SpritePixels)Client.field631.method2196(var80); + if (var82 == null) { + SpritePixels[] var83 = VertexNormal.method1568(GrandExchangeOfferOwnWorldComparator.archive8, var93[var103], 0); + if (var83 != null && var95[var103] < var83.length) { + var82 = var83[var95[var103]]; + Client.field631.method2197(var80, var82); + } + } + + if (var82 != null) { + Canvas.method91(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + var82.drawTransBgAt(var2 + Client.viewportTempX - (var82.subWidth >> 1), Client.viewportTempY + (var3 - var82.subHeight) - 4); + } + } + } + } + } + + if (Client.hintArrowType == 1 && Client.npcIndices[var1 - var75] == Client.hintArrowNpcIndex && Client.cycle % 20 < 10) { + Canvas.method91(var0, var0.defaultHeight + 15); + if (Client.viewportTempX > -1) { + class60.headIconHintSprites[0].drawTransBgAt(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 28); + } + } + } + + for (int var101 = 0; var101 < 4; ++var101) { + int var84 = var0.hitSplatCycles[var101]; + int var102 = var0.hitSplatTypes[var101]; + HitSplatDefinition var97 = null; + int var104 = 0; + if (var102 >= 0) { + if (var84 <= Client.cycle) { + continue; + } + + var97 = class149.method776(var0.hitSplatTypes[var101]); + var104 = var97.field1658; + if (var97 != null && var97.transforms != null) { + var97 = var97.transform(); + if (var97 == null) { + var0.hitSplatCycles[var101] = -1; + continue; + } + } + } else if (var84 < 0) { + continue; + } + + var15 = var0.hitSplatTypes2[var101]; + HitSplatDefinition var105 = null; + if (var15 >= 0) { + var105 = class149.method776(var15); + if (var105 != null && var105.transforms != null) { + var105 = var105.transform(); + } + } + + if (var84 - var104 <= Client.cycle) { + if (var97 == null) { + var0.hitSplatCycles[var101] = -1; + } else { + Canvas.method91(var0, var0.defaultHeight / 2); + if (Client.viewportTempX > -1) { + boolean var98 = true; + if (var101 == 1) { + Client.viewportTempY -= 20; + } + + if (var101 == 2) { + Client.viewportTempX -= 15; + Client.viewportTempY -= 10; + } + + if (var101 == 3) { + Client.viewportTempX += 15; + Client.viewportTempY -= 10; + } + + SpritePixels var85 = null; + SpritePixels var86 = null; + SpritePixels var87 = null; + SpritePixels var88 = null; + var22 = 0; + var23 = 0; + int var24 = 0; + int var25 = 0; + int var26 = 0; + int var27 = 0; + int var28 = 0; + int var29 = 0; + SpritePixels var30 = null; + SpritePixels var31 = null; + SpritePixels var32 = null; + SpritePixels var33 = null; + int var34 = 0; + int var35 = 0; + int var36 = 0; + int var37 = 0; + int var38 = 0; + int var39 = 0; + int var40 = 0; + int var41 = 0; + int var42 = 0; + var85 = var97.method992(); + int var43; + if (var85 != null) { + var22 = var85.subWidth; + var43 = var85.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var26 = var85.xOffset; + } + + var86 = var97.method993(); + if (var86 != null) { + var23 = var86.subWidth; + var43 = var86.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var27 = var86.xOffset; + } + + var87 = var97.method995(); + if (var87 != null) { + var24 = var87.subWidth; + var43 = var87.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var28 = var87.xOffset; + } + + var88 = var97.method996(); + if (var88 != null) { + var25 = var88.subWidth; + var43 = var88.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var29 = var88.xOffset; + } + + if (var105 != null) { + var30 = var105.method992(); + if (var30 != null) { + var34 = var30.subWidth; + var43 = var30.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var38 = var30.xOffset; + } + + var31 = var105.method993(); + if (var31 != null) { + var35 = var31.subWidth; + var43 = var31.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var39 = var31.xOffset; + } + + var32 = var105.method995(); + if (var32 != null) { + var36 = var32.subWidth; + var43 = var32.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var40 = var32.xOffset; + } + + var33 = var105.method996(); + if (var33 != null) { + var37 = var33.subWidth; + var43 = var33.subHeight; + if (var43 > var42) { + var42 = var43; + } + + var41 = var33.xOffset; + } + } + + Font var89 = var97.getFont(); + if (var89 == null) { + var89 = class369.fontPlain11; + } + + Font var44; + if (var105 != null) { + var44 = var105.getFont(); + if (var44 == null) { + var44 = class369.fontPlain11; + } + } else { + var44 = class369.fontPlain11; + } + + String var45 = null; + String var46 = null; + boolean var47 = false; + int var48 = 0; + var45 = var97.getString(var0.hitSplatValues[var101]); + int var100 = var89.stringWidth(var45); + if (var105 != null) { + var46 = var105.getString(var0.hitSplatValues2[var101]); + var48 = var44.stringWidth(var46); + } + + int var49 = 0; + int var50 = 0; + if (var23 > 0) { + if (var87 == null && var88 == null) { + var49 = 1; + } else { + var49 = var100 / var23 + 1; + } + } + + if (var105 != null && var35 > 0) { + if (var32 == null && var33 == null) { + var50 = 1; + } else { + var50 = var48 / var35 + 1; + } + } + + int var51 = 0; + int var52 = var51; + if (var22 > 0) { + var51 += var22; + } + + var51 += 2; + int var53 = var51; + if (var24 > 0) { + var51 += var24; + } + + int var54 = var51; + int var55 = var51; + int var56; + if (var23 > 0) { + var56 = var23 * var49; + var51 += var56; + var55 += (var56 - var100) / 2; + } else { + var51 += var100; + } + + var56 = var51; + if (var25 > 0) { + var51 += var25; + } + + int var57 = 0; + int var58 = 0; + int var59 = 0; + int var60 = 0; + int var61 = 0; + int var62; + if (var105 != null) { + var51 += 2; + var57 = var51; + if (var34 > 0) { + var51 += var34; + } + + var51 += 2; + var58 = var51; + if (var36 > 0) { + var51 += var36; + } + + var59 = var51; + var61 = var51; + if (var35 > 0) { + var62 = var35 * var50; + var51 += var62; + var61 += (var62 - var48) / 2; + } else { + var51 += var48; + } + + var60 = var51; + if (var37 > 0) { + var51 += var37; + } + } + + var62 = var0.hitSplatCycles[var101] - Client.cycle; + int var63 = var97.field1657 - var62 * var97.field1657 / var97.field1658; + int var64 = var62 * var97.field1655 / var97.field1658 + -var97.field1655; + int var65 = var63 + (var2 + Client.viewportTempX - (var51 >> 1)); + int var66 = var64 + (var3 + Client.viewportTempY - 12); + int var67 = var66; + int var68 = var66 + var42; + int var69 = var66 + var97.field1654 + 15; + int var70 = var69 - var89.maxAscent; + int var71 = var69 + var89.maxDescent; + if (var70 < var66) { + var67 = var70; + } + + if (var71 > var68) { + var68 = var71; + } + + int var72 = 0; + int var73; + int var74; + if (var105 != null) { + var72 = var66 + var105.field1654 + 15; + var73 = var72 - var44.maxAscent; + var74 = var72 + var44.maxDescent; + if (var73 < var67) { + ; + } + + if (var74 > var68) { + ; + } + } + + var73 = 255; + if (var97.field1659 >= 0) { + var73 = (var62 << 8) / (var97.field1658 - var97.field1659); + } + + if (var73 >= 0 && var73 < 255) { + if (var85 != null) { + var85.drawTransAt(var65 + var52 - var26, var66, var73); + } + + if (var87 != null) { + var87.drawTransAt(var53 + var65 - var28, var66, var73); + } + + if (var86 != null) { + for (var74 = 0; var74 < var49; ++var74) { + var86.drawTransAt(var74 * var23 + (var54 + var65 - var27), var66, var73); + } + } + + if (var88 != null) { + var88.drawTransAt(var65 + var56 - var29, var66, var73); + } + + var89.drawAlpha(var45, var55 + var65, var69, var97.textColor, 0, var73); + if (var105 != null) { + if (var30 != null) { + var30.drawTransAt(var57 + var65 - var38, var66, var73); + } + + if (var32 != null) { + var32.drawTransAt(var65 + var58 - var40, var66, var73); + } + + if (var31 != null) { + for (var74 = 0; var74 < var50; ++var74) { + var31.drawTransAt(var74 * var35 + (var59 + var65 - var39), var66, var73); + } + } + + if (var33 != null) { + var33.drawTransAt(var60 + var65 - var41, var66, var73); + } + + var44.drawAlpha(var46, var61 + var65, var72, var105.textColor, 0, var73); + } + } else { + if (var85 != null) { + var85.drawTransBgAt(var52 + var65 - var26, var66); + } + + if (var87 != null) { + var87.drawTransBgAt(var65 + var53 - var28, var66); + } + + if (var86 != null) { + for (var74 = 0; var74 < var49; ++var74) { + var86.drawTransBgAt(var74 * var23 + (var54 + var65 - var27), var66); + } + } + + if (var88 != null) { + var88.drawTransBgAt(var65 + var56 - var29, var66); + } + + var89.draw(var45, var65 + var55, var69, var97.textColor | -16777216, 0); + if (var105 != null) { + if (var30 != null) { + var30.drawTransBgAt(var65 + var57 - var38, var66); + } + + if (var32 != null) { + var32.drawTransBgAt(var58 + var65 - var40, var66); + } + + if (var31 != null) { + for (var74 = 0; var74 < var50; ++var74) { + var31.drawTransBgAt(var74 * var35 + (var59 + var65 - var39), var66); + } + } + + if (var33 != null) { + var33.drawTransBgAt(var60 + var65 - var41, var66); + } + + var44.draw(var46, var65 + var61, var72, var105.textColor | -16777216, 0); + } + } + } + } + } + } + + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class172.java b/osrs/src/main/java/class172.java index 92070dd0c..14090b8ee 100644 --- a/osrs/src/main/java/class172.java +++ b/osrs/src/main/java/class172.java @@ -2,71 +2,25 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gy") -public class class172 { - @ObfuscatedName("ai") - @Export("Tiles_shapes") - static byte[][][] Tiles_shapes; - - @ObfuscatedName("ai") +@ObfuscatedName("gg") +public class class172 extends DualNode { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lnu;Ljava/lang/String;Ljava/lang/String;I)Luk;", - garbageValue = "2141415166" + descriptor = "Llk;" ) - @Export("SpriteBuffer_getIndexedSpriteByName") - public static IndexedSprite SpriteBuffer_getIndexedSpriteByName(AbstractArchive var0, String var1, String var2) { - if (!var0.isValidFileName(var1, var2)) { - return null; - } else { - int var3 = var0.getGroupId(var1); - int var4 = var0.getFileId(var3, var2); - IndexedSprite var5; - if (!ApproximateRouteStrategy.method345(var0, var3, var4)) { - var5 = null; - } else { - var5 = class493.method2466(); - } - - return var5; - } - } + @Export("e3") + static EvictingDualNodeHashTable e3; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1301151779" - ) - public static boolean method906(int var0) { - if (class305.field2773.isEmpty()) { - return false; - } else { - MusicSong var1 = (MusicSong)class305.field2773.get(0); - return var1 != null && var0 == var1.musicTrackGroupId; - } - } - - @ObfuscatedName("cx") - @ObfuscatedSignature( - descriptor = "(Ltb;I)Ljava/lang/Object;", - garbageValue = "263841727" - ) - static Object method908(class502 var0) { - switch(var0.field4104) { - case 1: - return Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - case 2: - return Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - default: - throw new IllegalStateException("popValueOfType() failure - unsupported type"); - } + static { + e3 = new EvictingDualNodeHashTable(64); } - @ObfuscatedName("he") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "0" + descriptor = "(I)V", + garbageValue = "-1030508482" ) - static int method907(int var0) { - return var0 * 3 + 600; + public static void method883() { + FloorUnderlayDefinition.FloorUnderlayDefinition_cached.clear(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class173.java b/osrs/src/main/java/class173.java new file mode 100644 index 000000000..cc64d228d --- /dev/null +++ b/osrs/src/main/java/class173.java @@ -0,0 +1,17 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("gj") +public class class173 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e4") + static EvictingDualNodeHashTable e4; + + static { + e4 = new EvictingDualNodeHashTable(64); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class174.java b/osrs/src/main/java/class174.java index 431d5a63f..7d0630b8a 100644 --- a/osrs/src/main/java/class174.java +++ b/osrs/src/main/java/class174.java @@ -2,13 +2,47 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gk") -public interface class174 { - @ObfuscatedName("ao") +@ObfuscatedName("gy") +public class class174 extends DualNode { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-2061400252" + descriptor = "Llk;" ) - @Export("useRotation") - int useRotation(); + @Export("archive7") + static EvictingDualNodeHashTable archive7; + @ObfuscatedName("op") + @ObfuscatedSignature( + descriptor = "Lcb;" + ) + @Export("tempMenuAction") + static MenuAction tempMenuAction; + + static { + archive7 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-1688673442" + ) + public static int method884(int var0) { + return class476.field3936[var0 & 16383]; + } + + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "([BIII)I", + garbageValue = "-2127919093" + ) + public static int method885(byte[] var0, int var1, int var2) { + int var3 = -1; + + for (int var4 = var1; var4 < var2; ++var4) { + var3 = var3 >>> 8 ^ Buffer.crc32Table[(var3 ^ var0[var4]) & 255]; + } + + var3 = ~var3; + return var3; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class176.java b/osrs/src/main/java/class176.java index bd2d58d23..080e90c7b 100644 --- a/osrs/src/main/java/class176.java +++ b/osrs/src/main/java/class176.java @@ -2,52 +2,57 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gx") -public class class176 { - @ObfuscatedName("ac") +@ObfuscatedName("gc") +public class class176 extends DualNode { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lch;" + descriptor = "Llk;" ) - @Export("World_worlds") - static World[] World_worlds; - @ObfuscatedName("au") + @Export("archive5") + static EvictingDualNodeHashTable archive5; + @ObfuscatedName("rw") @ObfuscatedSignature( - descriptor = "Let;" + descriptor = "Lem;" ) - public UrlRequest field1469; - @ObfuscatedName("ae") - public float[] field1470; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgf;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class170 this$0; + @Export("varcs") + static Varcs varcs; - @ObfuscatedSignature( - descriptor = "(Lgf;)V" - ) - class176(class170 var1) { - this.this$0 = var1; - this.field1470 = new float[4]; + static { + archive5 = new EvictingDualNodeHashTable(64); } - @ObfuscatedName("au") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(I)[Llg;", - garbageValue = "-1051328819" + descriptor = "(Lnn;I[B[BI)V", + garbageValue = "1486108437" ) - public static ServerPacket[] method916() { - return new ServerPacket[]{ServerPacket.NPC_ANIM_SPECIFIC, ServerPacket.AREA_SOUND, ServerPacket.TRADING_POST_UPDATE, ServerPacket.SEND_PING, ServerPacket.UPDATE_REBOOT_TIMER, ServerPacket.IF_SETEVENTS, ServerPacket.NEW_PACKET_CAM_RESET_V2, ServerPacket.SET_PLAYER_OP, ServerPacket.VARP_LARGE, ServerPacket.IF_SETOBJECT, ServerPacket.OPEN_URL, ServerPacket.IF_MOVESUB, ServerPacket.CAM_LOOKAT_EASED_ANGLE_ABSOLUTE, ServerPacket.CAM_MOVETO_EASED_CIRCULAR, ServerPacket.IF_SETTEXT, ServerPacket.REFLECTIONCHECK_FRIENDLIST, ServerPacket.MAPPROJ_ANIM, ServerPacket.GAMEFRAME_FULL, ServerPacket.UPDATE_INV_STOP_TRANSMIT, ServerPacket.MESSAGE_PRIVATE_ECHO, ServerPacket.RUN_CLIENTSCRIPT, ServerPacket.VARCLAN_ENABLE, ServerPacket.MAPPROJ_ANIM_SPECIFIC, ServerPacket.UPDATE_RUNENERGY, ServerPacket.CAM_SHAKE, ServerPacket.MESSAGE_CLANCHANNEL, ServerPacket.IF_SETNPCHEAD, ServerPacket.IF_CLOSESUB, ServerPacket.UPDATE_STAT, ServerPacket.UPDATE_IGNORELIST, ServerPacket.IF_SETCOLOUR, ServerPacket.MAP_ANIM, ServerPacket.NPC_SPOTANIM_SPECIFIC, ServerPacket.HEAT_MAP, ServerPacket.LOC_ADD_CHANGE, ServerPacket.PLAYER_ANIM_SPECIFIC, ServerPacket.OBJ_ADD, ServerPacket.TRADING_POST_RESULTS, ServerPacket.SPOTANIM_SPECIFIC, ServerPacket.VARP_SMALL, ServerPacket.CHAT_FILTER_SETTINGS, ServerPacket.UPDATE_RUNWEIGHT, ServerPacket.UPDATE_ZONE_PARTIAL_FOLLOWS, ServerPacket.RESET_ANIMS, ServerPacket.SYNTH_SOUND, ServerPacket.MIDI_JINGLE, ServerPacket.IF1_MODELROTATE, ServerPacket.HINT_ARROW, ServerPacket.NEW_PACK_215, ServerPacket.IF_SETPLAYERMODEL_BASECOLOUR, ServerPacket.IF_SETANGLE, ServerPacket.NPC_HEADICON_SPECIFIC, ServerPacket.MESSAGE_PRIVATE, ServerPacket.IF_SETSCROLLPOS, ServerPacket.REBUILD_REGION, ServerPacket.LOC_ANIM_SPECIFIC, ServerPacket.MESSAGE_GAME, ServerPacket.UPDATE_INV_FULL, ServerPacket.IF_SETANIM, ServerPacket.IF_OPENSUB, ServerPacket.IF_SETMODEL, ServerPacket.UPDATE_UID192, ServerPacket.SYNC_CLIENT_VARCACHE, ServerPacket.CLANSETTINGS_FULL, ServerPacket.CAM_LOOKAT, ServerPacket.SET_MAP_FLAG, ServerPacket.MINIMAP_TOGGLE, ServerPacket.UPDATE_FRIENDLIST, ServerPacket.TRIGGER_ONDIALOGABORT, ServerPacket.IF_SETPLAYERMODEL_OBJ, ServerPacket.PLAYER_SPOTANIM_SPECIFIC, ServerPacket.OBJ_COUNT, ServerPacket.IF_SETPOSITION, ServerPacket.UPDATE_INV_PARTIAL, ServerPacket.RESET_CLIENT_VARCACHE, ServerPacket.FRIENDLIST_LOADED, ServerPacket.NPC_INFO_SMALL, ServerPacket.MESSAGE_FRIENDCHANNEL, ServerPacket.CHAT_FILTER_SETTINGS_PRIVATECHAT, ServerPacket.PLAYER_INFO, ServerPacket.IF_SETPLAYERMODEL_BODYTYPE, ServerPacket.TOGGLE_OCULUS_ORB, ServerPacket.CAM_MOVETO_EASED, ServerPacket.VARCLAN, ServerPacket.LOC_DEL, ServerPacket.REFLECTION_CHECK, ServerPacket.VARCLAN_DISABLE, ServerPacket.ENTER_FREECAM, ServerPacket.CLANCHANNEL_FULL, ServerPacket.MIDI_SONG_LEGACY, ServerPacket.IF_SETHIDE, ServerPacket.MESSAGE_CLANCHANNEL_SYSTEM, ServerPacket.OBJ_DEL_LEGACY, ServerPacket.CLANSETTINGS_DELTA, ServerPacket.UPDATE_ZONE_FULL_FOLLOWS, ServerPacket.UPDATE_INV_CLEAR, ServerPacket.CLANCHANNEL_DELTA, ServerPacket.CAM_RESET, ServerPacket.EMPTY_PACKET, ServerPacket.REBUILD_REGION_NORMAL, ServerPacket.LOGOUT, ServerPacket.LOGOUT_FULL, ServerPacket.UPDATE_ZONE_PARTIAL_ENCLOSED, ServerPacket.CAM_LOOKAT_EASED_COORD, ServerPacket.CAM_LOOKAT_EASED_ANGLE_RELATIVE, ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL_V2, ServerPacket.IF_OPENTOP, ServerPacket.field2725, ServerPacket.CAM_MOVETO, ServerPacket.UPDATE_SITESETTINGS, ServerPacket.PREFETCH_GAMEOBJECTS, ServerPacket.IF_SETPLAYERHEAD, ServerPacket.LOC_ANIM, ServerPacket.OBJ_DEL, ServerPacket.LOGIN_SCREEN_PACKET, ServerPacket.NPC_INFO_LARGE, ServerPacket.IF_SETPLAYERMODEL_SELF, ServerPacket.UPDATE_FRIENDCHAT_CHANNEL_FULL, ServerPacket.MIDI_SONG, ServerPacket.MIDI_SONG_STOP, ServerPacket.MIDI_SONG_WITH_SECONDARY, ServerPacket.MIDI_SWAP, ServerPacket.field2730}; - } + @Export("Widget_setKey") + static final void Widget_setKey(Widget var0, int var1, byte[] var2, byte[] var3) { + if (var0.field3003 == null) { + if (var2 == null) { + return; + } - @ObfuscatedName("mu") - @ObfuscatedSignature( - descriptor = "(II)Ljava/lang/String;", - garbageValue = "-1840256196" - ) - static final String method917(int var0) { - return var0 < 999999999 ? Integer.toString(var0) : "*"; + var0.field3003 = new byte[11][]; + var0.field3004 = new byte[11][]; + var0.field3073 = new int[11]; + var0.field3072 = new int[11]; + } + + var0.field3003[var1] = var2; + if (var2 != null) { + var0.field2995 = true; + } else { + var0.field2995 = false; + + for (int var4 = 0; var4 < var0.field3003.length; ++var4) { + if (var0.field3003[var4] != null) { + var0.field2995 = true; + break; + } + } + } + + var0.field3004[var1] = var3; } } \ No newline at end of file diff --git a/osrs/src/main/java/class177.java b/osrs/src/main/java/class177.java deleted file mode 100644 index a65f528a2..000000000 --- a/osrs/src/main/java/class177.java +++ /dev/null @@ -1,77 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.io.IOException; - -@ObfuscatedName("gq") -public class class177 { - @ObfuscatedName("ay") - @Export("canvasHeight") - public static int canvasHeight; - @ObfuscatedName("at") - public String field1476; - @ObfuscatedName("ac") - public float[] field1472; - @ObfuscatedName("ai") - public int field1473; - @ObfuscatedName("az") - public int field1475; - @ObfuscatedName("ap") - public int field1474; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgf;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class170 this$0; - - @ObfuscatedSignature( - descriptor = "(Lgf;)V" - ) - class177(class170 var1) { - this.this$0 = var1; - this.field1472 = new float[4]; - this.field1473 = 1; - this.field1475 = 1; - this.field1474 = 0; - } - - @ObfuscatedName("at") - public static int method918(long var0) { - return (int)(var0 >>> 14 & 3L); - } - - @ObfuscatedName("ob") - @ObfuscatedSignature( - descriptor = "(Ltm;S)V", - garbageValue = "-22136" - ) - static void method919(Buffer var0) { - if (Client.randomDatData != null) { - var0.writeBytes(Client.randomDatData, 0, Client.randomDatData.length); - } else { - byte[] var2 = new byte[24]; - - try { - JagexCache.JagexCache_randomDat.seek(0L); - JagexCache.JagexCache_randomDat.readFully(var2); - - int var3; - for (var3 = 0; var3 < 24 && var2[var3] == 0; ++var3) { - } - - if (var3 >= 24) { - throw new IOException(); - } - } catch (Exception var6) { - for (int var4 = 0; var4 < 24; ++var4) { - var2[var4] = -1; - } - } - - var0.writeBytes(var2, 0, var2.length); - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class178.java b/osrs/src/main/java/class178.java deleted file mode 100644 index b1c988aee..000000000 --- a/osrs/src/main/java/class178.java +++ /dev/null @@ -1,57 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("gt") -public class class178 extends class181 { - @ObfuscatedName("ko") - @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("headIconPkSprites") - static SpritePixels[] headIconPkSprites; - @ObfuscatedName("au") - int field1478; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgf;" - ) - final class170 this$0; - - @ObfuscatedSignature( - descriptor = "(Lgf;Ljava/lang/String;I)V" - ) - class178(class170 var1, String var2, int var3) { - super(var1, var2); - this.this$0 = var1; - this.field1478 = var3; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "38" - ) - public int vmethod3379() { - return 0; - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1630105394" - ) - @Export("vmethod3378") - public int vmethod3378() { - return this.field1478; - } - - @ObfuscatedName("cf") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "65280" - ) - static int method922(int var0, Script var1, boolean var2) { - return 2; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class18.java b/osrs/src/main/java/class18.java index 35615dd08..85df40b64 100644 --- a/osrs/src/main/java/class18.java +++ b/osrs/src/main/java/class18.java @@ -2,152 +2,196 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import java.util.Arrays; import java.util.concurrent.Future; -@ObfuscatedName("ax") +@ObfuscatedName("aq") public class class18 { - @ObfuscatedName("vg") - @ObfuscatedSignature( - descriptor = "Lsm;" - ) - static PlatformInfo field51; - @ObfuscatedName("ba") - protected static String field50; - @ObfuscatedName("au") - Future field53; - @ObfuscatedName("ae") - String field52; + @ObfuscatedName("ak") + static int field54; + @ObfuscatedName("kq") + static int field55; + @ObfuscatedName("at") + Future field57; + @ObfuscatedName("ah") + String field56; class18(Future var1) { - this.field53 = var1; + this.field57 = var1; } class18(String var1) { - this.method51(var1); + this.method64(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1898504795" + garbageValue = "-556763021" ) - void method51(String var1) { + void method64(String var1) { if (var1 == null) { var1 = ""; } - this.field52 = var1; - if (this.field53 != null) { - this.field53.cancel(true); - this.field53 = null; + this.field56 = var1; + if (this.field57 != null) { + this.field57.cancel(true); + this.field57 = null; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-197315393" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "94" ) - public final String method52() { - return this.field52; + public final String method66() { + return this.field56; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "2089695473" + garbageValue = "-509501909" ) - public boolean method53() { - return this.field52 != null || this.field53 == null; + public boolean method67() { + return this.field56 != null || this.field57 == null; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(B)Z", - garbageValue = "1" + garbageValue = "49" ) - public final boolean method54() { - return this.method53() ? true : this.field53.isDone(); + public final boolean method68() { + return this.method67() ? true : this.field57.isDone(); } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)Las;", - garbageValue = "626026127" + descriptor = "(B)Law;", + garbageValue = "-100" ) - public final class20 method55() { - if (this.method53()) { - return new class20(this.field52); - } else if (!this.method54()) { + public final class20 method69() { + if (this.method67()) { + return new class20(this.field56); + } else if (!this.method68()) { return null; } else { try { - return (class20)this.field53.get(); + return (class20)this.field57.get(); } catch (Exception var3) { String var2 = "Error retrieving REST request reply"; System.err.println(var2 + "\r\n" + var3); - this.method51(var2); + this.method64(var2); return new class20(var2); } } } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1969917926" + descriptor = "(Lol;I)V", + garbageValue = "1722301374" ) - public static void method56() { - WorldMapRegion.WorldMapRegion_cachedSprites.demote(5); + public static void method65(AbstractArchive var0) { + StructComposition.StructDefinition_archive = var0; } - @ObfuscatedName("ap") + @ObfuscatedName("by") @ObfuscatedSignature( - descriptor = "(S)Lch;", - garbageValue = "9992" + descriptor = "(Lnn;Lnb;ZI)V", + garbageValue = "-940953937" ) - @Export("worldListStart") - static World worldListStart() { - World.World_listCount = 0; - return VarcInt.getNextWorldListWorld(); + public static void method70(Widget var0, PlayerComposition var1, boolean var2) { + var0.modelType = 7; + var0.field3125 = new PlayerComposition(var1); + if (!var2) { + var0.field3125.equipment = Arrays.copyOf(var0.field3125.field2944, var0.field3125.field2944.length); + var0.field3125.method1756(); + } + } - @ObfuscatedName("ga") + @ObfuscatedName("id") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "94" + descriptor = "(Lnn;III)V", + garbageValue = "-1252967897" ) - static void method58() { - class27.field76 = System.getenv("JX_ACCESS_TOKEN"); - class9.field20 = System.getenv("JX_REFRESH_TOKEN"); - class157.field1407 = System.getenv("JX_SESSION_ID"); - Varcs.field1140 = System.getenv("JX_CHARACTER_ID"); - class478.method2372(System.getenv("JX_DISPLAY_NAME")); + @Export("checkIfMinimapClicked") + static final void checkIfMinimapClicked(Widget var0, int var1, int var2) { + if (Client.minimapState == 0 || Client.minimapState == 3) { + if (!Client.isMenuOpen && (MouseHandler.MouseHandler_lastButton == 1 || !class19.mouseCam && MouseHandler.MouseHandler_lastButton == 4)) { + SpriteMask var3 = var0.method1851(HealthBarDefinition.widgetDefinition, true); + if (var3 == null) { + return; + } + + int var4 = MouseHandler.MouseHandler_lastPressedX - var1; + int var5 = MouseHandler.MouseHandler_lastPressedY - var2; + if (var3.contains(var4, var5)) { + var4 -= var3.width / 2; + var5 -= var3.height / 2; + int var6 = Client.camAngleY & 2047; + int var7 = Rasterizer3D.Rasterizer3D_sine[var6]; + int var8 = Rasterizer3D.Rasterizer3D_cosine[var6]; + int var9 = var4 * var8 + var5 * var7 >> 11; + int var10 = var5 * var8 - var7 * var4 >> 11; + int var11 = var9 + class229.localPlayer.x >> 7; + int var12 = class229.localPlayer.y - var10 >> 7; + PacketBufferNode var13 = class113.getPacketBufferNode(ClientPacket.f51, Client.packetWriter.isaacCipher); + var13.packetBuffer.writeByte(18); + var13.packetBuffer.writeShort(var11 + NewShit.baseX); + var13.packetBuffer.writeShortAdd(var12 + class101.baseY); + var13.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? (Client.keyHandlerInstance.getKeyPressed(81) ? 2 : 1) : 0); + var13.packetBuffer.writeByte(var4); + var13.packetBuffer.writeByte(var5); + var13.packetBuffer.writeShort(Client.camAngleY); + var13.packetBuffer.writeByte(57); + var13.packetBuffer.writeByte(0); + var13.packetBuffer.writeByte(0); + var13.packetBuffer.writeByte(89); + var13.packetBuffer.writeShort(class229.localPlayer.x); + var13.packetBuffer.writeShort(class229.localPlayer.y); + var13.packetBuffer.writeByte(63); + Client.packetWriter.addNode(var13); + Client.destinationX = var11; + Client.destinationY = var12; + } + } + + } } - @ObfuscatedName("jh") + @ObfuscatedName("jo") @ObfuscatedSignature( - descriptor = "(IIII)I", - garbageValue = "-1303959829" + descriptor = "(ZI)V", + garbageValue = "-805283190" ) - @Export("getTileHeight") - static final int getTileHeight(int var0, int var1, int var2) { - int var3 = var0 >> 7; - int var4 = var1 >> 7; - if (var3 >= 0 && var4 >= 0 && var3 <= 103 && var4 <= 103) { - int var5 = var2; - if (var2 < 3 && (Tiles.Tiles_renderFlags[1][var3][var4] & 2) == 2) { - var5 = var2 + 1; + @Export("addNpcsToScene") + static final void addNpcsToScene(boolean var0) { + for (int var1 = 0; var1 < Client.npcCount; ++var1) { + NPC var2 = Client.npcs[Client.npcIndices[var1]]; + if (var2 != null && var2.isVisible() && var2.definition.isVisible == var0 && var2.definition.transformIsVisible()) { + int var3 = var2.x >> 7; + int var4 = var2.y >> 7; + if (var3 >= 0 && var3 < 104 && var4 >= 0 && var4 < 104) { + if (var2.field983 == 1 && (var2.x & 127) == 64 && (var2.y & 127) == 64) { + if (Client.tileLastDrawnActor[var3][var4] == Client.viewportDrawCount) { + continue; + } + + Client.tileLastDrawnActor[var3][var4] = Client.viewportDrawCount; + } + + long var5 = Player.calculateTag(0, 0, 1, !var2.definition.isInteractable, Client.npcIndices[var1]); + var2.playerCycle = Client.cycle; + class36.scene.drawEntity(ItemLayer.Client_plane, var2.x, var2.y, WorldMapDecorationType.getTileHeight(var2.field983 * 64 - 64 + var2.x, var2.field983 * 64 - 64 + var2.y, ItemLayer.Client_plane), var2.field983 * 64 - 64 + 60, var2, var2.rotation, var5, var2.isWalking); + } } - - int var6 = var0 & 127; - int var7 = var1 & 127; - int var8 = (128 - var6) * Tiles.Tiles_heights[var5][var3][var4] + var6 * Tiles.Tiles_heights[var5][var3 + 1][var4] >> 7; - int var9 = var6 * Tiles.Tiles_heights[var5][var3 + 1][var4 + 1] + Tiles.Tiles_heights[var5][var3][var4 + 1] * (128 - var6) >> 7; - return var9 * var7 + var8 * (128 - var7) >> 7; - } else { - return 0; } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class181.java b/osrs/src/main/java/class181.java index 1f1524084..f0f0d2466 100644 --- a/osrs/src/main/java/class181.java +++ b/osrs/src/main/java/class181.java @@ -2,73 +2,299 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("gn") -public abstract class class181 { - @ObfuscatedName("at") - String field1491; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lgf;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class170 this$0; +import java.io.File; +import java.io.IOException; +import java.io.RandomAccessFile; +@ObfuscatedName("gd") +public class class181 { + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lgf;Ljava/lang/String;)V" + descriptor = "(Ljava/lang/String;Ljava/lang/String;II)Ljava/io/File;", + garbageValue = "-820569311" ) - class181(class170 var1, String var2) { - this.this$0 = var1; - this.field1491 = var2; - } + static File method918(String var0, String var1, int var2) { + String var3 = var2 == 0 ? "" : "" + var2; + JagexCache.field1848 = new File(Login.userHomeDirectory, "jagex_cl_" + var0 + "_" + var1 + var3 + ".dat"); + String var4 = null; + String var5 = null; + boolean var6 = false; + Buffer var8; + int var11; + File var27; + if (JagexCache.field1848.exists()) { + try { + AccessFile var7 = new AccessFile(JagexCache.field1848, "rw", 10000L); - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "38" - ) - @Export("vmethod3379") - public abstract int vmethod3379(); + int var9; + for (var8 = new Buffer((int)var7.length()); var8.offset < var8.array.length; var8.offset += var9) { + var9 = var7.read(var8.array, var8.offset, var8.array.length - var8.offset); + if (var9 == -1) { + throw new IOException(); + } + } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1557827941" - ) - @Export("vmethod3380") - public String vmethod3380() { - return null; - } + var8.offset = 0; + var9 = var8.readUnsignedByte(); + if (var9 < 1 || var9 > 3) { + throw new IOException("" + var9); + } - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1630105394" - ) - @Export("vmethod3378") - public int vmethod3378() { - return -1; + int var10 = 0; + if (var9 > 1) { + var10 = var8.readUnsignedByte(); + } + + if (var9 <= 2) { + var4 = var8.readStringCp1252NullCircumfixed(); + if (var10 == 1) { + var5 = var8.readStringCp1252NullCircumfixed(); + } + } else { + var4 = var8.readCESUB(); + if (var10 == 1) { + var5 = var8.readCESUB(); + } + } + + var7.close(); + } catch (IOException var25) { + var25.printStackTrace(); + } + + if (var4 != null) { + var27 = new File(var4); + if (!var27.exists()) { + var4 = null; + } + } + + if (var4 != null) { + var27 = new File(var4, "test.dat"); + + boolean var28; + try { + RandomAccessFile var15 = new RandomAccessFile(var27, "rw"); + var11 = var15.read(); + var15.seek(0L); + var15.write(var11); + var15.seek(0L); + var15.close(); + var27.delete(); + var28 = true; + } catch (Exception var23) { + var28 = false; + } + + if (!var28) { + var4 = null; + } + } + } + + if (var4 == null && var2 == 0) { + label134: + for (int var16 = 0; var16 < class85.field859.length; ++var16) { + for (int var17 = 0; var17 < GameObject.field2480.length; ++var17) { + File var18 = new File(GameObject.field2480[var17] + class85.field859[var16] + File.separatorChar + var0 + File.separatorChar); + if (var18.exists()) { + File var19 = new File(var18, "test.dat"); + + boolean var29; + try { + RandomAccessFile var12 = new RandomAccessFile(var19, "rw"); + int var13 = var12.read(); + var12.seek(0L); + var12.write(var13); + var12.seek(0L); + var12.close(); + var19.delete(); + var29 = true; + } catch (Exception var22) { + var29 = false; + } + + if (var29) { + var4 = var18.toString(); + var6 = true; + break label134; + } + } + } + } + } + + if (var4 == null) { + var4 = Login.userHomeDirectory + File.separatorChar + "jagexcache" + var3 + File.separatorChar + var0 + File.separatorChar + var1 + File.separatorChar; + var6 = true; + } + + File var26; + if (var5 != null) { + var26 = new File(var5); + var27 = new File(var4); + + try { + File[] var33 = var26.listFiles(); + File[] var31 = var33; + + for (var11 = 0; var11 < var31.length; ++var11) { + File var30 = var31[var11]; + File var20 = new File(var27, var30.getName()); + boolean var14 = var30.renameTo(var20); + if (!var14) { + throw new IOException(); + } + } + } catch (Exception var24) { + var24.printStackTrace(); + } + + var6 = true; + } + + if (var6) { + var26 = new File(var4); + var8 = null; + + try { + AccessFile var34 = new AccessFile(JagexCache.field1848, "rw", 10000L); + Buffer var32 = new Buffer(500); + var32.writeByte(3); + var32.writeByte(var8 != null ? 1 : 0); + var32.writeCESU8(var26.getPath()); + if (var8 != null) { + var32.writeCESU8(""); + } + + var34.write(var32.array, 0, var32.offset); + var34.close(); + } catch (IOException var21) { + var21.printStackTrace(); + } + } + + return new File(var4); } - @ObfuscatedName("al") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1802215739" + descriptor = "([Lcr;II[I[II)V", + garbageValue = "450863022" ) - public String method925() { - return this.field1491; + @Export("sortWorlds") + static void sortWorlds(World[] var0, int var1, int var2, int[] var3, int[] var4) { + if (var1 < var2) { + int var5 = var1 - 1; + int var6 = var2 + 1; + int var7 = (var2 + var1) / 2; + World var8 = var0[var7]; + var0[var7] = var0[var1]; + var0[var1] = var8; + + while (var5 < var6) { + boolean var9 = true; + + int var10; + int var11; + int var12; + do { + --var6; + + for (var10 = 0; var10 < 4; ++var10) { + if (var3[var10] == 2) { + var11 = var0[var6].index; + var12 = var8.index; + } else if (var3[var10] == 1) { + var11 = var0[var6].population; + var12 = var8.population; + if (var11 == -1 && var4[var10] == 1) { + var11 = 2001; + } + + if (var12 == -1 && var4[var10] == 1) { + var12 = 2001; + } + } else if (var3[var10] == 3) { + var11 = var0[var6].isMembersOnly() ? 1 : 0; + var12 = var8.isMembersOnly() ? 1 : 0; + } else { + var11 = var0[var6].id; + var12 = var8.id; + } + + if (var12 != var11) { + if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) { + var9 = false; + } + break; + } + + if (var10 == 3) { + var9 = false; + } + } + } while(var9); + + var9 = true; + + do { + ++var5; + + for (var10 = 0; var10 < 4; ++var10) { + if (var3[var10] == 2) { + var11 = var0[var5].index; + var12 = var8.index; + } else if (var3[var10] == 1) { + var11 = var0[var5].population; + var12 = var8.population; + if (var11 == -1 && var4[var10] == 1) { + var11 = 2001; + } + + if (var12 == -1 && var4[var10] == 1) { + var12 = 2001; + } + } else if (var3[var10] == 3) { + var11 = var0[var5].isMembersOnly() ? 1 : 0; + var12 = var8.isMembersOnly() ? 1 : 0; + } else { + var11 = var0[var5].id; + var12 = var8.id; + } + + if (var11 != var12) { + if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) { + var9 = false; + } + break; + } + + if (var10 == 3) { + var9 = false; + } + } + } while(var9); + + if (var5 < var6) { + World var13 = var0[var5]; + var0[var5] = var0[var6]; + var0[var6] = var13; + } + } + + sortWorlds(var0, var1, var6, var3, var4); + sortWorlds(var0, var6 + 1, var2, var3, var4); + } + } - @ObfuscatedName("ln") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/String;", - garbageValue = "0" + descriptor = "(B)I", + garbageValue = "111" ) - static String method928(int var0) { - if (var0 < 0) { - return ""; - } else { - return Client.menuTargets[var0].length() > 0 ? Client.menuActions[var0] + " " + Client.menuTargets[var0] : Client.menuActions[var0]; - } + protected static final int method919() { + return GameEngine.keyHandler.getIdleCycles(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class182.java b/osrs/src/main/java/class182.java new file mode 100644 index 000000000..65bce2750 --- /dev/null +++ b/osrs/src/main/java/class182.java @@ -0,0 +1,51 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hb") +public class class182 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e1") + static EvictingDualNodeHashTable e1; + + static { + e1 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-419579110" + ) + @Export("ItemContainer_getCount") + static int ItemContainer_getCount(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return 0; + } else { + return var1 >= 0 && var1 < var2.quantities.length ? var2.quantities[var1] : 0; + } + } + + @ObfuscatedName("hp") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-66" + ) + static void method921() { + ItemLayer.compass = null; + class11.redHintArrowSprite = null; + VarpDefinition.mapSceneSprites = null; + UrlRequest.headIconPkSprites = null; + AbstractByteArrayCopier.headIconPrayerSprites = null; + class60.headIconHintSprites = null; + class12.mapMarkerSprites = null; + VarpDefinition.crossSprites = null; + HorizontalAlignment.mapDotSprites = null; + class31.scrollBarSprites = null; + class134.field1307 = null; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class184.java b/osrs/src/main/java/class184.java index 82dc2b1fc..4412fa168 100644 --- a/osrs/src/main/java/class184.java +++ b/osrs/src/main/java/class184.java @@ -1,13 +1,32 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.ThreadFactory; +@ObfuscatedName("hl") +public class class184 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e5") + public static EvictingDualNodeHashTable e5; -@ObfuscatedName("hj") -final class class184 implements ThreadFactory { - @Export("newThread") - @ObfuscatedName("newThread") - public Thread newThread(Runnable var1) { - return new Thread(var1, "OSRS Maya Anim Load"); + static { + e5 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "811454475" + ) + public static int method927(int var0) { + --var0; + var0 |= var0 >>> 1; + var0 |= var0 >>> 2; + var0 |= var0 >>> 4; + var0 |= var0 >>> 8; + var0 |= var0 >>> 16; + return var0 + 1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class185.java b/osrs/src/main/java/class185.java new file mode 100644 index 000000000..05ddf3b6b --- /dev/null +++ b/osrs/src/main/java/class185.java @@ -0,0 +1,69 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hi") +public class class185 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e6") + public static EvictingDualNodeHashTable e6; + @ObfuscatedName("av") + @Export("Tiles_lightness") + static int[] Tiles_lightness; + + static { + e6 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IIIIB)V", + garbageValue = "1" + ) + @Export("itemContainerSetItem") + static void itemContainerSetItem(int var0, int var1, int var2, int var3) { + ItemContainer var4 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var4 == null) { + var4 = new ItemContainer(); + ItemContainer.itemContainers.put(var4, (long)var0); + } + + if (var4.ids.length <= var1) { + int[] var5 = new int[var1 + 1]; + int[] var6 = new int[var1 + 1]; + + int var7; + for (var7 = 0; var7 < var4.ids.length; ++var7) { + var5[var7] = var4.ids[var7]; + var6[var7] = var4.quantities[var7]; + } + + for (var7 = var4.ids.length; var7 < var1; ++var7) { + var5[var7] = -1; + var6[var7] = 0; + } + + var4.ids = var5; + var4.quantities = var6; + } + + var4.ids[var1] = var2; + var4.quantities[var1] = var3; + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "-1003071638" + ) + static int method929(int var0, int var1, int var2) { + if ((Tiles.Tiles_renderFlags[var0][var1][var2] & 8) != 0) { + return 0; + } else { + return var0 > 0 && (Tiles.Tiles_renderFlags[1][var1][var2] & 2) != 0 ? var0 - 1 : var0; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class189.java b/osrs/src/main/java/class189.java new file mode 100644 index 000000000..5c5aa7ad2 --- /dev/null +++ b/osrs/src/main/java/class189.java @@ -0,0 +1,158 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hj") +public class class189 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("Widget_cachedSpriteMasks") + public static EvictingDualNodeHashTable Widget_cachedSpriteMasks; + + static { + Widget_cachedSpriteMasks = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Lof;B)I", + garbageValue = "-26" + ) + @Export("compareStrings") + public static int compareStrings(CharSequence var0, CharSequence var1, Language var2) { + int var3 = var0.length(); + int var4 = var1.length(); + int var5 = 0; + int var6 = 0; + byte var7 = 0; + byte var8 = 0; + + while (var5 - var7 < var3 || var6 - var8 < var4) { + if (var5 - var7 >= var3) { + return -1; + } + + if (var6 - var8 >= var4) { + return 1; + } + + char var9; + if (var7 != 0) { + var9 = (char)var7; + boolean var14 = false; + } else { + var9 = var0.charAt(var5++); + } + + char var10; + if (var8 != 0) { + var10 = (char)var8; + boolean var15 = false; + } else { + var10 = var1.charAt(var6++); + } + + byte var11; + if (var9 == 198) { + var11 = 69; + } else if (var9 == 230) { + var11 = 101; + } else if (var9 == 223) { + var11 = 115; + } else if (var9 == 338) { + var11 = 69; + } else if (var9 == 339) { + var11 = 101; + } else { + var11 = 0; + } + + var7 = var11; + byte var12; + if (var10 == 198) { + var12 = 69; + } else if (var10 == 230) { + var12 = 101; + } else if (var10 == 223) { + var12 = 115; + } else if (var10 == 338) { + var12 = 69; + } else if (var10 == 339) { + var12 = 101; + } else { + var12 = 0; + } + + var8 = var12; + var9 = TileItem.standardizeChar(var9, var2); + var10 = TileItem.standardizeChar(var10, var2); + if (var10 != var9 && Character.toUpperCase(var9) != Character.toUpperCase(var10)) { + var9 = Character.toLowerCase(var9); + var10 = Character.toLowerCase(var10); + if (var10 != var9) { + return class90.lowercaseChar(var9, var2) - class90.lowercaseChar(var10, var2); + } + } + } + + int var16 = Math.min(var3, var4); + + int var17; + char var20; + for (var17 = 0; var17 < var16; ++var17) { + if (var2 == Language.Language_FR) { + var5 = var3 - 1 - var17; + var6 = var4 - 1 - var17; + } else { + var6 = var17; + var5 = var17; + } + + char var18 = var0.charAt(var5); + var20 = var1.charAt(var6); + if (var20 != var18 && Character.toUpperCase(var18) != Character.toUpperCase(var20)) { + var18 = Character.toLowerCase(var18); + var20 = Character.toLowerCase(var20); + if (var20 != var18) { + return class90.lowercaseChar(var18, var2) - class90.lowercaseChar(var20, var2); + } + } + } + + var17 = var3 - var4; + if (var17 != 0) { + return var17; + } else { + for (int var19 = 0; var19 < var16; ++var19) { + var20 = var0.charAt(var19); + char var13 = var1.charAt(var19); + if (var20 != var13) { + return class90.lowercaseChar(var20, var2) - class90.lowercaseChar(var13, var2); + } + } + + return 0; + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lol;I)I", + garbageValue = "-1440080925" + ) + static int method954(AbstractArchive var0) { + int var1 = Login.field772.length + Login.field771.length; + String[] var2 = Login.field770; + + for (int var3 = 0; var3 < var2.length; ++var3) { + String var4 = var2[var3]; + if (var0.getGroupId(var4) != -1) { + ++var1; + } + } + + return var1; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class19.java b/osrs/src/main/java/class19.java index c9379c1fc..6027c1ebd 100644 --- a/osrs/src/main/java/class19.java +++ b/osrs/src/main/java/class19.java @@ -5,80 +5,59 @@ import java.io.IOException; import java.util.concurrent.Callable; -@ObfuscatedName("ah") +@ObfuscatedName("ai") public class class19 implements Callable { - @ObfuscatedName("au") + @ObfuscatedName("eu") + @Export("mouseCam") + static boolean mouseCam; + @ObfuscatedName("fv") @ObfuscatedSignature( - descriptor = "Lad;" + descriptor = "Loh;" ) - final class10 field54; + static Archive field59; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lap;" + ) + final class10 field60; // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lar;" + descriptor = "Lay;" ) @Export("this$0") @ObfuscatedName("this$0") final class14 this$0; @ObfuscatedSignature( - descriptor = "(Lar;Lad;)V" + descriptor = "(Lay;Lap;)V" ) class19(class14 var1, class10 var2) { this.this$0 = var1; - this.field54 = var2; + this.field60 = var2; } @Export("call") @ObfuscatedName("call") public Object call() throws Exception { try { - while (this.field54.method30()) { - PendingSpawn.method505(10L); + while (this.field60.method37()) { + class219.method1104(10L); } } catch (IOException var2) { return new class20("Error servicing REST query: " + var2.getMessage()); } - return this.field54.method31(); + return this.field60.method38(); } - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1773391988" - ) - public static void method60() { - DbRowType.DBRowType_cache.clear(); - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(IIIII)I", - garbageValue = "1020330780" - ) - static final int method61(int var0, int var1, int var2, int var3) { - int var4 = 65536 - Rasterizer3D.Rasterizer3D_cosine[var2 * 1024 / var3] >> 1; - return ((65536 - var4) * var0 >> 16) + (var4 * var1 >> 16); - } - - @ObfuscatedName("my") + @ObfuscatedName("oq") @ObfuscatedSignature( descriptor = "(II)V", - garbageValue = "-274496968" + garbageValue = "-2072070052" ) - @Export("Widget_resetModelFrames") - static final void Widget_resetModelFrames(int var0) { - if (ModeWhere.loadInterface(var0)) { - Widget[] var1 = PacketBufferNode.Widget_interfaceComponents[var0]; - - for (int var2 = 0; var2 < var1.length; ++var2) { - Widget var3 = var1[var2]; - if (var3 != null) { - var3.modelFrame = 0; - var3.modelFrameCycle = 0; - } - } - + static void method73(int var0) { + if (var0 != Client.loginState) { + Client.loginState = var0; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class191.java b/osrs/src/main/java/class191.java index dbefac8ab..0a04726bc 100644 --- a/osrs/src/main/java/class191.java +++ b/osrs/src/main/java/class191.java @@ -1,9 +1,52 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hg") -public class class191 { - @ObfuscatedName("jo") - @Export("regions") - static int[] regions; +import java.util.ArrayList; + +@ObfuscatedName("hk") +public class class191 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e7") + public static EvictingDualNodeHashTable e7; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + static AbstractArchive field1586; + @ObfuscatedName("cg") + @ObfuscatedSignature( + descriptor = "Lnv;" + ) + static GameBuild field1585; + + static { + e7 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(IIIII)V", + garbageValue = "-993585503" + ) + @Export("someMusicMethod") + public static void someMusicMethod(int var0, int var1, int var2, int var3) { + if (class316.musicSongs.size() > 1 && class316.musicSongs.get(0) != null && ((MusicSong)class316.musicSongs.get(0)).midiPcmStream.isReady() && class316.musicSongs.get(1) != null && ((MusicSong)class316.musicSongs.get(1)).midiPcmStream.isReady()) { + EnumComposition.method925(var0, var1, var2, var3); + class316.field2798.add(new SwapSongTask((SongTask)null)); + ArrayList var4 = new ArrayList(); + var4.add(new DelayFadeTask(new FadeInTask((SongTask)null, 1, false, class316.field2796), class316.field2795)); + var4.add(new DelayFadeTask(new FadeOutTask((SongTask)null, 0, false, class316.field2794), class316.musicPlayerStatus)); + class316.field2798.add(new ConcurrentMidiTask((SongTask)null, var4)); + if (class316.field2787.get(0) != null && class316.field2787.get(1) != null) { + MusicSong var5 = (MusicSong)class316.field2787.get(0); + class316.field2787.set(0, class316.musicSongs.get(1)); + class316.field2787.set(1, var5); + } + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/class192.java b/osrs/src/main/java/class192.java new file mode 100644 index 000000000..7bba2c731 --- /dev/null +++ b/osrs/src/main/java/class192.java @@ -0,0 +1,61 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hc") +public class class192 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1593; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1590; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1592; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1591; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1589; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1594; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lhc;" + ) + static final class192 field1588; + @ObfuscatedName("lv") + @Export("cameraYaw") + static int cameraYaw; + + static { + field1593 = new class192(0, class205.field1813); + field1590 = new class192(1, class205.field1815); + field1592 = new class192(2, class205.field1811); + field1591 = new class192(3, class205.field1810); + field1589 = new class192(4, class205.field1816); + field1594 = new class192(5, class205.field1812); + field1588 = new class192(6, class205.field1814); + } + + @ObfuscatedSignature( + descriptor = "(ILhm;)V" + ) + class192(int var1, class205 var2) { + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class195.java b/osrs/src/main/java/class195.java new file mode 100644 index 000000000..b1aa61d4f --- /dev/null +++ b/osrs/src/main/java/class195.java @@ -0,0 +1,28 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hh") +public class class195 extends DualNode { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Llk;" + ) + @Export("e8") + public static EvictingDualNodeHashTable e8; + @ObfuscatedName("ix") + static int field1620; + + static { + e8 = new EvictingDualNodeHashTable(64); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "13" + ) + public static int method973(int var0) { + return class476.field3937[var0 & 16383]; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class197.java b/osrs/src/main/java/class197.java index 5fa6ca451..d49d48026 100644 --- a/osrs/src/main/java/class197.java +++ b/osrs/src/main/java/class197.java @@ -2,60 +2,28 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("hp") -public class class197 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1643; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1639; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1641; +@ObfuscatedName("ho") +public class class197 extends DualNode { @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lhp;" + descriptor = "Llk;" ) - static final class197 field1642; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1638; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1640; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lhp;" - ) - static final class197 field1644; - @ObfuscatedName("ju") - @Export("regionMapArchives") - static byte[][] regionMapArchives; + @Export("archive4") + public static EvictingDualNodeHashTable archive4; static { - field1643 = new class197(0, class209.field1857); - field1639 = new class197(1, class209.field1862); - field1641 = new class197(2, class209.field1858); - field1642 = new class197(3, class209.field1863); - field1638 = new class197(4, class209.field1860); - field1640 = new class197(5, class209.field1861); - field1644 = new class197(6, class209.field1859); + archive4 = new EvictingDualNodeHashTable(64); } + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ILil;)V" + descriptor = "(IIIB)I", + garbageValue = "73" ) - class197(int var1, class209 var2) { + public static int method976(int var0, int var1, int var2) { + int var3 = class214.method1092(var2 - var1 + 1); + var3 <<= var1; + var0 |= var3; + return var0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class2.java b/osrs/src/main/java/class2.java index 39892ea2e..6b6ba8354 100644 --- a/osrs/src/main/java/class2.java +++ b/osrs/src/main/java/class2.java @@ -1,5 +1,5 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("ao") +@ObfuscatedName("ar") public interface class2 { } \ No newline at end of file diff --git a/osrs/src/main/java/class20.java b/osrs/src/main/java/class20.java index 00e98ae4a..2cd3b8a3d 100644 --- a/osrs/src/main/java/class20.java +++ b/osrs/src/main/java/class20.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @@ -8,27 +9,33 @@ import java.net.HttpURLConnection; import java.util.Map; -@ObfuscatedName("as") +@ObfuscatedName("aw") public class class20 { - @ObfuscatedName("au") - final int field55; - @ObfuscatedName("ae") - final Map field57; - @ObfuscatedName("ao") - final String field56; + @ObfuscatedName("tk") + @ObfuscatedSignature( + descriptor = "Lqi;" + ) + @Export("friendsChat") + static FriendsChat friendsChat; + @ObfuscatedName("at") + final int field62; + @ObfuscatedName("ah") + final Map field64; + @ObfuscatedName("ar") + final String field63; class20(String var1) { - this.field55 = 400; - this.field57 = null; - this.field56 = ""; + this.field62 = 400; + this.field64 = null; + this.field63 = ""; } class20(HttpURLConnection var1) throws IOException { - this.field55 = var1.getResponseCode(); + this.field62 = var1.getResponseCode(); var1.getResponseMessage(); - this.field57 = var1.getHeaderFields(); + this.field64 = var1.getHeaderFields(); StringBuilder var2 = new StringBuilder(); - InputStream var3 = this.field55 >= 300 ? var1.getErrorStream() : var1.getInputStream(); + InputStream var3 = this.field62 >= 300 ? var1.getErrorStream() : var1.getInputStream(); if (var3 != null) { InputStreamReader var4 = new InputStreamReader(var3); BufferedReader var5 = new BufferedReader(var4); @@ -41,90 +48,78 @@ public class class20 { var3.close(); } - this.field56 = var2.toString(); + this.field63 = var2.toString(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "20873" + descriptor = "(B)I", + garbageValue = "3" ) - public int method63() { - return this.field55; + public int method74() { + return this.field62; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Ljava/util/Map;", - garbageValue = "105" + descriptor = "(I)Ljava/util/Map;", + garbageValue = "1360391754" ) - public Map method65() { - return this.field57; + public Map method75() { + return this.field64; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)Ljava/lang/String;", - garbageValue = "1529858789" + garbageValue = "-541639855" ) - public String method66() { - return this.field56; + public String method76() { + return this.field63; } - @ObfuscatedName("ae") + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "1" + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "564353501" ) - public static void method64(int var0) { - MouseHandler.MouseHandler_idleCycles = var0; - } + public static String method77(String var0) { + int var1 = var0.length(); + char[] var2 = new char[var1]; + byte var3 = 2; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Lto;B)I", - garbageValue = "103" - ) - static int method68(PacketBuffer var0) { - int var1 = var0.readBits(2); - int var2; - if (var1 == 0) { - var2 = 0; - } else if (var1 == 1) { - var2 = var0.readBits(5); - } else if (var1 == 2) { - var2 = var0.readBits(8); - } else { - var2 = var0.readBits(11); - } + for (int var4 = 0; var4 < var1; ++var4) { + char var5 = var0.charAt(var4); + if (var3 == 0) { + var5 = Character.toLowerCase(var5); + } else if (var3 == 2 || Character.isUpperCase(var5)) { + char var6; + if (var5 != 181 && var5 != 402) { + var6 = Character.toTitleCase(var5); + } else { + var6 = var5; + } - return var2; - } + var5 = var6; + } - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Lnu;Ljava/lang/String;Ljava/lang/String;I)[Lui;", - garbageValue = "-1440236039" - ) - public static SpritePixels[] method67(AbstractArchive var0, String var1, String var2) { - if (!var0.isValidFileName(var1, var2)) { - return null; - } else { - int var3 = var0.getGroupId(var1); - int var4 = var0.getFileId(var3, var2); - return WorldMapArchiveLoader.method2379(var0, var3, var4); + if (Character.isLetter(var5)) { + var3 = 0; + } else if (var5 != '.' && var5 != '?' && var5 != '!') { + if (Character.isSpaceChar(var5)) { + if (var3 != 2) { + var3 = 1; + } + } else { + var3 = 1; + } + } else { + var3 = 2; + } + + var2[var4] = var5; } - } - @ObfuscatedName("ms") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-911724199" - ) - static final void method69(int var0) { - var0 = Math.max(Math.min(var0, 100), 0); - var0 = 100 - var0; - float var1 = 0.5F + (float)var0 / 200.0F; - HealthBarUpdate.method526((double)var1); + return new String(var2); } } \ No newline at end of file diff --git a/osrs/src/main/java/class200.java b/osrs/src/main/java/class200.java deleted file mode 100644 index 670d059fd..000000000 --- a/osrs/src/main/java/class200.java +++ /dev/null @@ -1,55 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("hf") -public class class200 extends DualNode { - @ObfuscatedName("ce") - static String field1669; - - static { - new EvictingDualNodeHashTable(64); - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "942209246" - ) - @Export("isCharAlphabetic") - public static boolean isCharAlphabetic(char var0) { - return var0 >= 'A' && var0 <= 'Z' || var0 >= 'a' && var0 <= 'z'; - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "56" - ) - static void method1009(boolean var0) { - if (var0) { - ByteArrayPool.method2148(); - } else { - for (int var1 = 0; var1 < class305.musicSongs.size(); ++var1) { - MusicSong var2 = (MusicSong)class305.musicSongs.get(var1); - if (var2 == null) { - class305.musicSongs.remove(var1); - --var1; - } else if (var2.field2863) { - if (var2.midiPcmStream.field2809 > 0) { - --var2.midiPcmStream.field2809; - } - - var2.midiPcmStream.clear(); - var2.midiPcmStream.method1633(); - var2.midiPcmStream.setPcmStreamVolume(0); - class305.musicSongs.remove(var1); - --var1; - } else { - var2.field2863 = true; - } - } - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class205.java b/osrs/src/main/java/class205.java new file mode 100644 index 000000000..300a56ed9 --- /dev/null +++ b/osrs/src/main/java/class205.java @@ -0,0 +1,143 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hm") +public class class205 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1821; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1817; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1819; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1818; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1811; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1822; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1810; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1812; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1813; + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1816; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1814; + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + public static final class205 field1815; + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1823; + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lhm;" + ) + static final class205 field1820; + @ObfuscatedName("ay") + public final int field1824; + + static { + field1821 = new class205(0); + field1817 = new class205(1); + field1819 = new class205(2); + field1818 = new class205(3); + field1811 = new class205(4, class192.field1592); + field1822 = new class205(5); + field1810 = new class205(6, class192.field1591); + field1812 = new class205(7, class192.field1594); + field1813 = new class205(8, class192.field1593); + field1816 = new class205(9, class192.field1589); + field1814 = new class205(10, class192.field1588); + field1815 = new class205(11, class192.field1590); + field1823 = new class205(12); + field1820 = new class205(13); + } + + class205(int var1) { + this(var1, (class192)null); + } + + @ObfuscatedSignature( + descriptor = "(ILhc;)V" + ) + class205(int var1, class192 var2) { + this.field1824 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lol;IIB)Lup;", + garbageValue = "0" + ) + static IndexedSprite method1056(AbstractArchive var0, int var1, int var2) { + byte[] var4 = var0.takeFile(var1, var2); + boolean var3; + if (var4 == null) { + var3 = false; + } else { + class162.SpriteBuffer_decode(var4); + var3 = true; + } + + if (!var3) { + return null; + } else { + IndexedSprite var5 = new IndexedSprite(); + var5.width = class541.SpriteBuffer_spriteWidth; + var5.height = GrandExchangeOfferWorldComparator.SpriteBuffer_spriteHeight; + var5.xOffset = class541.SpriteBuffer_xOffsets[0]; + var5.yOffset = class541.SpriteBuffer_yOffsets[0]; + var5.subWidth = class541.SpriteBuffer_spriteWidths[0]; + var5.subHeight = class520.SpriteBuffer_spriteHeights[0]; + var5.palette = class541.SpriteBuffer_spritePalette; + var5.pixels = class396.SpriteBuffer_pixels[0]; + class541.SpriteBuffer_xOffsets = null; + class541.SpriteBuffer_yOffsets = null; + class541.SpriteBuffer_spriteWidths = null; + class520.SpriteBuffer_spriteHeights = null; + class541.SpriteBuffer_spritePalette = null; + class396.SpriteBuffer_pixels = null; + return var5; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class207.java b/osrs/src/main/java/class207.java new file mode 100644 index 000000000..a4746b51f --- /dev/null +++ b/osrs/src/main/java/class207.java @@ -0,0 +1,54 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("hn") +public class class207 extends class219 { + @ObfuscatedName("at") + String field1826; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lic;" + ) + final class208 this$0; + + @ObfuscatedSignature( + descriptor = "(Lic;Ljava/lang/String;Ljava/lang/String;)V" + ) + class207(class208 var1, String var2, String var3) { + super(var1, var2); + this.this$0 = var1; + this.field1826 = var3; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "561834394" + ) + @Export("vmethod3379") + public int vmethod3379() { + return 1; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)Ljava/lang/String;", + garbageValue = "18" + ) + @Export("vmethod3380") + public String vmethod3380() { + return this.field1826; + } + + @ObfuscatedName("ah") + public static boolean method1059(long var0) { + boolean var2 = var0 != 0L; + if (var2) { + boolean var3 = (int)(var0 >>> 16 & 1L) == 1; + var2 = !var3; + } + + return var2; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class208.java b/osrs/src/main/java/class208.java new file mode 100644 index 000000000..410301664 --- /dev/null +++ b/osrs/src/main/java/class208.java @@ -0,0 +1,428 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.UnsupportedEncodingException; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + +@ObfuscatedName("ic") +public class class208 { + @ObfuscatedName("al") + int field1829; + @ObfuscatedName("az") + String field1831; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lea;" + ) + UrlRequest field1827; + @ObfuscatedName("av") + String field1830; + @ObfuscatedName("ax") + float[] field1828; + @ObfuscatedName("as") + ArrayList field1833; + @ObfuscatedName("ay") + ArrayList field1834; + @ObfuscatedName("ak") + ArrayList field1832; + @ObfuscatedName("aj") + Map field1835; + @ObfuscatedName("am") + Map field1836; + + public class208() { + this.field1829 = -1; + this.field1830 = null; + this.field1828 = new float[4]; + this.field1833 = new ArrayList(); + this.field1834 = new ArrayList(); + this.field1832 = new ArrayList(); + this.field1835 = new HashMap(); + this.field1836 = new HashMap(); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Lel;B)Z", + garbageValue = "-18" + ) + public boolean method1063(String var1, UrlRequester var2) { + if (var1 != null && !var1.isEmpty()) { + if (var2 == null) { + return false; + } else { + this.method1073(); + + try { + this.field1831 = var1; + this.field1827 = var2.request(new URL(this.field1831)); + this.field1829 = 0; + return true; + } catch (MalformedURLException var4) { + this.method1073(); + this.field1829 = 100; + return false; + } + } + } else { + return false; + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Lel;I)V", + garbageValue = "1589272882" + ) + public void method1064(UrlRequester var1) { + switch(this.field1829) { + case 0: + this.method1074(var1); + break; + case 1: + this.method1075(); + break; + default: + return; + } + + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-1" + ) + public int method1065() { + return this.field1829; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)I", + garbageValue = "256889728" + ) + public int method1066(String var1) { + return this.field1835.containsKey(var1) ? (Integer)this.field1835.get(var1) : -1; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)Ljava/lang/String;", + garbageValue = "1206229207" + ) + public String method1067(String var1) { + return (String)((String)(this.field1836.containsKey(var1) ? this.field1836.get(var1) : null)); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(I)Ljava/util/ArrayList;", + garbageValue = "2021801100" + ) + public ArrayList method1068() { + return this.field1834; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)Ljava/util/ArrayList;", + garbageValue = "-2096187297" + ) + public ArrayList method1069() { + return this.field1832; + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-944579598" + ) + public String method1070() { + return this.field1830; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(B)[F", + garbageValue = "94" + ) + public float[] method1071() { + return this.field1828; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(I)Ljava/util/ArrayList;", + garbageValue = "523040657" + ) + public ArrayList method1072() { + return this.field1833; + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "64156006" + ) + void method1073() { + this.field1827 = null; + this.field1830 = null; + this.field1828[0] = 0.0F; + this.field1828[1] = 0.0F; + this.field1828[2] = 1.0F; + this.field1828[3] = 1.0F; + this.field1833.clear(); + this.field1834.clear(); + this.field1832.clear(); + this.field1835.clear(); + this.field1836.clear(); + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Lel;I)V", + garbageValue = "357044570" + ) + void method1074(UrlRequester var1) { + if (this.field1827 != null && this.field1827.isDone()) { + byte[] var2 = this.field1827.getResponse(); + if (var2 == null) { + this.method1073(); + this.field1829 = 100; + } else { + try { + this.method1080(new class474(var2), var1); + } catch (UnsupportedEncodingException var4) { + this.method1073(); + this.field1829 = 102; + return; + } + + this.field1829 = this.field1834.size() > 0 ? 1 : 2; + this.field1827 = null; + } + } + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-841261467" + ) + void method1075() { + Iterator var1 = this.field1834.iterator(); + + class214 var2; + do { + if (!var1.hasNext()) { + var1 = this.field1834.iterator(); + + while (var1.hasNext()) { + var2 = (class214)var1.next(); + if (var2.field1852 != null) { + byte[] var3 = var2.field1852.getResponse(); + if (var3 != null && var3.length > 0) { + this.field1829 = 2; + return; + } + } + } + + this.method1073(); + this.field1829 = 101; + return; + } + + var2 = (class214)var1.next(); + } while(var2.field1852 == null || var2.field1852.isDone()); + + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(Lorg/json/JSONArray;Lel;I)V", + garbageValue = "-1649177141" + ) + void method1076(JSONArray var1, UrlRequester var2) throws JSONException { + if (var1 != null) { + for (int var3 = 0; var3 < var1.length(); ++var3) { + try { + JSONObject var4 = var1.getJSONObject(var3); + class214 var5 = new class214(this); + var5.field1852 = var2.request(new URL(var4.getString("src"))); + var5.field1853 = class9.method27(var4, "placement"); + this.field1834.add(var5); + } catch (MalformedURLException var6) { + } + } + + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(Lorg/json/JSONArray;B)V", + garbageValue = "1" + ) + void method1077(JSONArray var1) throws JSONException { + if (var1 != null) { + for (int var2 = 0; var2 < var1.length(); ++var2) { + JSONObject var3 = var1.getJSONObject(var2); + class215 var4 = new class215(this); + var4.field1859 = var3.getString("text"); + var4.field1858 = class33.method143(var3.getString("align_x")); + var4.field1856 = class33.method143(var3.getString("align_y")); + var4.field1857 = var3.getInt("font"); + var4.field1855 = class9.method27(var3, "placement"); + this.field1832.add(var4); + } + + } + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(Lorg/json/JSONObject;I)V", + garbageValue = "1286553511" + ) + void method1078(JSONObject var1) throws JSONException { + if (var1 != null) { + this.field1828 = class9.method27(var1, "clickbounds"); + this.field1830 = var1.getString("endpoint"); + String[] var2 = JSONObject.getNames(var1); + + for (int var3 = 0; var3 < var1.length(); ++var3) { + if (!var2[var3].equals("clickbounds") && !var2[var3].equals("endpoint")) { + try { + int var4 = var1.getInt(var2[var3]); + this.field1833.add(new class216(this, var2[var3], var4)); + } catch (Exception var8) { + try { + String var5 = var1.getString(var2[var3]); + if (var5.equals("true")) { + this.field1833.add(new class216(this, var2[var3], 1)); + } else if (var5.equals("false")) { + this.field1833.add(new class216(this, var2[var3], 0)); + } else { + this.field1833.add(new class207(this, var2[var3], var5)); + } + } catch (Exception var7) { + } + } + } + } + + } + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Lorg/json/JSONObject;B)V", + garbageValue = "-85" + ) + void method1079(JSONObject var1) throws JSONException { + String[] var2 = JSONObject.getNames(var1); + + for (int var3 = 0; var3 < var1.length(); ++var3) { + try { + int var4 = var1.getInt(var2[var3]); + this.field1835.put(var2[var3], var4); + } catch (Exception var8) { + try { + String var5 = var1.getString(var2[var3]); + if (var5.equals("true")) { + this.field1835.put(var2[var3], 1); + } else if (var5.equals("false")) { + this.field1835.put(var2[var3], 0); + } else { + this.field1836.put(var2[var3], var5); + } + } catch (Exception var7) { + } + } + } + + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(Lsv;Lel;I)V", + garbageValue = "1323384211" + ) + void method1080(class474 var1, UrlRequester var2) { + JSONObject var3; + try { + var3 = var1.method2357(); + var3 = var3.getJSONObject("message"); + } catch (Exception var9) { + this.method1073(); + this.field1829 = 102; + return; + } + + try { + this.method1076(var3.getJSONArray("images"), var2); + } catch (Exception var8) { + this.field1834.clear(); + } + + try { + this.method1077(var3.getJSONArray("labels")); + } catch (Exception var7) { + this.field1832.clear(); + } + + try { + this.method1078(var3.getJSONObject("behaviour")); + } catch (Exception var6) { + this.field1830 = null; + this.field1828[0] = 0.0F; + this.field1828[1] = 0.0F; + this.field1828[2] = 1.0F; + this.field1828[3] = 1.0F; + this.field1833.clear(); + } + + try { + this.method1079(var3.getJSONObject("meta")); + } catch (Exception var5) { + this.field1835.clear(); + this.field1836.clear(); + } + + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Lel;I)Z", + garbageValue = "348701890" + ) + public boolean method1081(String var1, UrlRequester var2) { + try { + this.method1080(new class474(var1.getBytes()), var2); + this.field1829 = this.field1834.size() > 0 ? 1 : 2; + } catch (UnsupportedEncodingException var4) { + this.field1829 = 102; + } + + return this.field1829 < 100; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1432052010" + ) + public static void method1062() { + class174.archive7.clear(); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class209.java b/osrs/src/main/java/class209.java deleted file mode 100644 index b01483fd7..000000000 --- a/osrs/src/main/java/class209.java +++ /dev/null @@ -1,120 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("il") -public class class209 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1870; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1864; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1868; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1869; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1858; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1865; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1863; - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1861; - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1857; - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1860; - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1859; - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - public static final class209 field1862; - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1866; - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lil;" - ) - static final class209 field1867; - @ObfuscatedName("ar") - public final int field1871; - - static { - field1870 = new class209(0); - field1864 = new class209(1); - field1868 = new class209(2); - field1869 = new class209(3); - field1858 = new class209(4, class197.field1641); - field1865 = new class209(5); - field1863 = new class209(6, class197.field1642); - field1861 = new class209(7, class197.field1640); - field1857 = new class209(8, class197.field1643); - field1860 = new class209(9, class197.field1638); - field1859 = new class209(10, class197.field1644); - field1862 = new class209(11, class197.field1639); - field1866 = new class209(12); - field1867 = new class209(13); - } - - class209(int var1) { - this(var1, (class197)null); - } - - @ObfuscatedSignature( - descriptor = "(ILhp;)V" - ) - class209(int var1, class197 var2) { - this.field1871 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIB)I", - garbageValue = "61" - ) - static int method1087(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var2 == null) { - return -1; - } else { - return var1 >= 0 && var1 < var2.ids.length ? var2.ids[var1] : -1; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class210.java b/osrs/src/main/java/class210.java deleted file mode 100644 index 64a498a1b..000000000 --- a/osrs/src/main/java/class210.java +++ /dev/null @@ -1,360 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ig") -public class class210 implements class29 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - Widget field1874; - @ObfuscatedName("ae") - boolean field1872; - @ObfuscatedName("ao") - boolean field1873; - - public class210() { - this.field1874 = null; - this.field1872 = false; - this.field1873 = false; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1089015731" - ) - @Export("vmethod3949") - public boolean vmethod3949(int var1) { - if (this.field1874 == null) { - return false; - } else { - class27 var2 = this.field1874.method1846(); - if (var2 == null) { - return false; - } else { - if (var2.method102(var1)) { - switch(var1) { - case 81: - this.field1873 = true; - break; - case 82: - this.field1872 = true; - break; - default: - if (this.method1095(var1)) { - class218.invalidateWidget(this.field1874); - } - } - } - - return var2.method100(var1); - } - } - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1292750960" - ) - public boolean vmethod3989(int var1) { - switch(var1) { - case 81: - this.field1873 = false; - return false; - case 82: - this.field1872 = false; - return false; - default: - return false; - } - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-352714805" - ) - @Export("vmethod3951") - public boolean vmethod3951(char var1) { - if (this.field1874 == null) { - return false; - } else { - boolean var2; - if (var1 >= ' ' && var1 < 127 || var1 > 127 && var1 < 160 || var1 > 160 && var1 <= 255) { - var2 = true; - } else { - label81: { - if (var1 != 0) { - char[] var3 = class384.cp1252AsciiExtension; - - for (int var4 = 0; var4 < var3.length; ++var4) { - char var5 = var3[var4]; - if (var5 == var1) { - var2 = true; - break label81; - } - } - } - - var2 = false; - } - } - - if (!var2) { - return false; - } else { - class329 var7 = this.field1874.method1844(); - if (var7 != null && var7.method1787()) { - class27 var6 = this.field1874.method1846(); - if (var6 == null) { - return false; - } else { - if (var6.method103(var1) && var7.method1748(var1)) { - class218.invalidateWidget(this.field1874); - } - - return var6.method101(var1); - } - } else { - return false; - } - } - } - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(ZI)Z", - garbageValue = "-1559971994" - ) - @Export("vmethod3953") - public boolean vmethod3953(boolean var1) { - return false; - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(Lmi;I)V", - garbageValue = "753644002" - ) - public void method1088(Widget var1) { - this.method1090(); - if (var1 != null) { - this.field1874 = var1; - class327 var2 = var1.method1847(); - if (var2 != null) { - var2.field2902.method1731(true); - if (var2.field2898 != null) { - ScriptEvent var3 = new ScriptEvent(); - var3.method479(var1); - var3.setArgs(var2.field2898); - class30.getScriptEvents().addFirst(var3); - } - } - } - - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(I)Lmi;", - garbageValue = "-869248693" - ) - public Widget method1089() { - return this.field1874; - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "3" - ) - public void method1090() { - if (this.field1874 != null) { - class327 var1 = this.field1874.method1847(); - Widget var2 = this.field1874; - this.field1874 = null; - if (var1 != null) { - var1.field2902.method1731(false); - if (var1.field2898 != null) { - ScriptEvent var3 = new ScriptEvent(); - var3.method479(var2); - var3.setArgs(var1.field2898); - class30.getScriptEvents().addFirst(var3); - } - - } - } - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-53" - ) - boolean method1095(int var1) { - if (this.field1874 == null) { - return false; - } else { - class329 var2 = this.field1874.method1844(); - if (var2 != null && var2.method1787()) { - switch(var1) { - case 13: - this.method1090(); - return true; - case 48: - if (this.field1872) { - var2.method1754(); - } - - return true; - case 65: - if (this.field1872) { - var2.method1773(GrandExchangeOfferTotalQuantityComparator.method1945()); - } - - return true; - case 66: - if (this.field1872) { - var2.method1772(GrandExchangeOfferTotalQuantityComparator.method1945()); - } - - return true; - case 67: - if (this.field1872) { - var2.method1774(GrandExchangeOfferTotalQuantityComparator.method1945()); - } - - return true; - case 84: - if (var2.method1793() == 0) { - var2.method1748(10); - } else if (this.field1873 && var2.method1797()) { - var2.method1748(10); - } else { - class327 var3 = this.field1874.method1847(); - ScriptEvent var4 = new ScriptEvent(); - var4.method479(this.field1874); - var4.setArgs(var3.field2901); - class30.getScriptEvents().addFirst(var4); - this.method1090(); - } - - return true; - case 85: - if (this.field1872) { - var2.method1751(); - } else { - var2.method1749(); - } - - return true; - case 96: - if (this.field1872) { - var2.method1762(this.field1873); - } else { - var2.method1760(this.field1873); - } - - return true; - case 97: - if (this.field1872) { - var2.method1763(this.field1873); - } else { - var2.method1761(this.field1873); - } - - return true; - case 98: - if (this.field1872) { - var2.method1775(); - } else { - var2.method1764(this.field1873); - } - - return true; - case 99: - if (this.field1872) { - var2.method1776(); - } else { - var2.method1765(this.field1873); - } - - return true; - case 101: - if (this.field1872) { - var2.method1752(); - } else { - var2.method1750(); - } - - return true; - case 102: - if (this.field1872) { - var2.method1758(this.field1873); - } else { - var2.method1756(this.field1873); - } - - return true; - case 103: - if (this.field1872) { - var2.method1759(this.field1873); - } else { - var2.method1757(this.field1873); - } - - return true; - case 104: - if (this.field1872) { - var2.method1768(this.field1873); - } else { - var2.method1766(this.field1873); - } - - return true; - case 105: - if (this.field1872) { - var2.method1769(this.field1873); - } else { - var2.method1767(this.field1873); - } - - return true; - default: - return false; - } - } else { - return false; - } - } - } - - @ObfuscatedName("np") - @ObfuscatedSignature( - descriptor = "(IIIILui;Lme;I)V", - garbageValue = "-1589482115" - ) - @Export("drawSpriteOnMinimap") - static final void drawSpriteOnMinimap(int var0, int var1, int var2, int var3, SpritePixels var4, SpriteMask var5) { - if (var4 != null) { - int var6 = Client.camAngleY & 2047; - int var7 = var3 * var3 + var2 * var2; - if (var7 <= 6400) { - int var8 = Rasterizer3D.Rasterizer3D_sine[var6]; - int var9 = Rasterizer3D.Rasterizer3D_cosine[var6]; - int var10 = var3 * var8 + var9 * var2 >> 16; - int var11 = var3 * var9 - var8 * var2 >> 16; - if (var7 > 2500) { - var4.method2684(var10 + var5.width / 2 - var4.width / 2, var5.height / 2 - var11 - var4.height / 2, var0, var1, var5.width, var5.height, var5.xStarts, var5.xWidths); - } else { - var4.drawTransBgAt(var0 + var10 + var5.width / 2 - var4.width / 2, var5.height / 2 + var1 - var11 - var4.height / 2); - } - - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class211.java b/osrs/src/main/java/class211.java deleted file mode 100644 index 2242ed338..000000000 --- a/osrs/src/main/java/class211.java +++ /dev/null @@ -1,63 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ie") -public class class211 extends Node { - @ObfuscatedName("ao") - public int field1876; - @ObfuscatedName("at") - public int field1877; - @ObfuscatedName("ac") - public int field1875; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - public Widget field1878; - - @ObfuscatedSignature( - descriptor = "(IIILmi;)V" - ) - public class211(int var1, int var2, int var3, Widget var4) { - this.field1875 = var1; - this.field1876 = var2; - this.field1877 = var3; - this.field1878 = var4; - } - - @ObfuscatedName("ae") - @Export("base37DecodeLong") - public static String base37DecodeLong(long var0) { - if (var0 > 0L && var0 < 6582952005840035281L) { - if (0L == var0 % 37L) { - return null; - } else { - int var2 = 0; - - for (long var3 = var0; var3 != 0L; var3 /= 37L) { - ++var2; - } - - StringBuilder var5; - char var8; - for (var5 = new StringBuilder(var2); var0 != 0L; var5.append(var8)) { - long var6 = var0; - var0 /= 37L; - var8 = class388.base37Table[(int)(var6 - 37L * var0)]; - if (var8 == '_') { - int var9 = var5.length() - 1; - var5.setCharAt(var9, Character.toUpperCase(var5.charAt(var9))); - var8 = 160; - } - } - - var5.reverse(); - var5.setCharAt(0, Character.toUpperCase(var5.charAt(0))); - return var5.toString(); - } - } else { - return null; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class212.java b/osrs/src/main/java/class212.java index 11d7c730f..b0c2984c2 100644 --- a/osrs/src/main/java/class212.java +++ b/osrs/src/main/java/class212.java @@ -2,282 +2,13 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Arrays; - -@ObfuscatedName("iz") -public class class212 implements class29 { - @ObfuscatedName("au") - char[] field1882; - @ObfuscatedName("ae") - int[] field1888; - @ObfuscatedName("ao") - public int[] field1892; - @ObfuscatedName("at") - @Export("pressedKeysCount") - public int pressedKeysCount; - @ObfuscatedName("ac") - int[] field1887; - @ObfuscatedName("ai") - int field1884; - @ObfuscatedName("az") - int field1886; - @ObfuscatedName("ap") - int field1885; - @ObfuscatedName("aa") - int field1883; - @ObfuscatedName("af") - boolean[] field1880; - @ObfuscatedName("ad") - boolean[] field1879; - @ObfuscatedName("aq") - boolean[] field1881; - @ObfuscatedName("al") - public char field1889; - @ObfuscatedName("an") - public int field1890; - - public class212() { - this.field1882 = new char[128]; - this.field1888 = new int[128]; - this.field1892 = new int[128]; - this.pressedKeysCount = 0; - this.field1887 = new int[128]; - this.field1884 = 0; - this.field1886 = 0; - this.field1885 = 0; - this.field1883 = 0; - this.field1880 = new boolean[112]; - this.field1879 = new boolean[112]; - this.field1881 = new boolean[112]; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1089015731" - ) - @Export("vmethod3949") - public boolean vmethod3949(int var1) { - this.method1102(var1); - this.field1880[var1] = true; - this.field1879[var1] = true; - this.field1881[var1] = false; - this.field1892[++this.pressedKeysCount - 1] = var1; - return true; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1292750960" - ) - @Export("vmethod3989") - public boolean vmethod3989(int var1) { - this.field1880[var1] = false; - this.field1879[var1] = false; - this.field1881[var1] = true; - this.field1887[++this.field1884 - 1] = var1; - return true; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "-352714805" - ) - @Export("vmethod3951") - public boolean vmethod3951(char var1) { - int var2 = this.field1885 + 1 & 127; - if (var2 != this.field1886) { - this.field1888[this.field1885] = -1; - this.field1882[this.field1885] = var1; - this.field1885 = var2; - } - - return false; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(ZI)Z", - garbageValue = "-1559971994" - ) - @Export("vmethod3953") - public boolean vmethod3953(boolean var1) { - return false; - } - +@ObfuscatedName("is") +public interface class212 { @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "25" - ) - void method1102(int var1) { - int var2 = this.field1885 + 1 & 127; - if (var2 != this.field1886) { - this.field1888[this.field1885] = var1; - this.field1882[this.field1885] = 0; - this.field1885 = var2; - } - - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "831915412" - ) - public void method1104() { - this.field1886 = this.field1883; - this.field1883 = this.field1885; - this.pressedKeysCount = 0; - this.field1884 = 0; - Arrays.fill(this.field1879, false); - Arrays.fill(this.field1881, false); - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-1344001483" + descriptor = "(I)I", + garbageValue = "-855152300" ) - public final boolean method1105() { - if (this.field1886 == this.field1883) { - return false; - } else { - this.field1890 = this.field1888[this.field1886]; - this.field1889 = this.field1882[this.field1886]; - this.field1886 = this.field1886 + 1 & 127; - return true; - } - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-1783943803" - ) - public boolean method1106(int var1) { - return var1 >= 0 && var1 < 112 ? this.field1879[var1] : false; - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-182514708" - ) - @Export("getKeyPressed") - public boolean getKeyPressed(int var1) { - return var1 >= 0 && var1 < 112 ? this.field1880[var1] : false; - } - - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "13" - ) - public boolean method1108(int var1) { - return var1 >= 0 && var1 < 112 ? this.field1881[var1] : false; - } - - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "(I)[I", - garbageValue = "-390851826" - ) - public int[] method1109() { - int[] var1 = new int[this.pressedKeysCount]; - - for (int var2 = 0; var2 < this.pressedKeysCount; ++var2) { - var1[var2] = this.field1892[var2]; - } - - return var1; - } - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(B)[I", - garbageValue = "60" - ) - public int[] method1110() { - int[] var1 = new int[this.field1884]; - - for (int var2 = 0; var2 < this.field1884; ++var2) { - var1[var2] = this.field1887[var2]; - } - - return var1; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IIS)I", - garbageValue = "24356" - ) - static int method1099(int var0, int var1) { - ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); - if (var2 == null) { - return 0; - } else if (var1 == -1) { - return 0; - } else { - int var3 = 0; - - for (int var4 = 0; var4 < var2.quantities.length; ++var4) { - if (var2.ids[var4] == var1) { - var3 += var2.quantities[var4]; - } - } - - return var3; - } - } - - @ObfuscatedName("mp") - @ObfuscatedSignature( - descriptor = "([Lmi;IB)V", - garbageValue = "-27" - ) - @Export("runComponentCloseListeners") - static final void runComponentCloseListeners(Widget[] var0, int var1) { - for (int var2 = 0; var2 < var0.length; ++var2) { - Widget var3 = var0[var2]; - if (var3 != null) { - if (var3.type == 0) { - if (var3.children != null) { - runComponentCloseListeners(var3.children, var1); - } - - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id); - if (var4 != null) { - class385.runIntfCloseListeners(var4.group, var1); - } - } - - ScriptEvent var5; - if (var1 == 0 && var3.onDialogAbort != null) { - var5 = new ScriptEvent(); - var5.widget = var3; - var5.args = var3.onDialogAbort; - WorldMapSection1.runScriptEvent(var5); - } - - if (var1 == 1 && var3.onSubChange != null) { - if (var3.childIndex >= 0) { - Widget var6 = class92.getWidget(var3.id); - if (var6 == null || var6.children == null || var3.childIndex >= var6.children.length || var3 != var6.children[var3.childIndex]) { - continue; - } - } - - var5 = new ScriptEvent(); - var5.widget = var3; - var5.args = var3.onSubChange; - WorldMapSection1.runScriptEvent(var5); - } - } - } - - } + @Export("useRotation") + int useRotation(); } \ No newline at end of file diff --git a/osrs/src/main/java/class214.java b/osrs/src/main/java/class214.java index 88cc4f3dd..9e9d220f8 100644 --- a/osrs/src/main/java/class214.java +++ b/osrs/src/main/java/class214.java @@ -1,101 +1,128 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Arrays; - -@ObfuscatedName("io") +@ObfuscatedName("ib") public class class214 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lio;" - ) - static final class214 field1903; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lio;" - ) - static final class214 field1900; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lio;" - ) - public static final class214 field1898; @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lio;" + descriptor = "Lea;" ) - static final class214 field1902; - @ObfuscatedName("ac") + public UrlRequest field1852; + @ObfuscatedName("ah") + public float[] field1853; + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Lio;" + descriptor = "Lic;" ) - static final class214 field1899; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lio;" - ) - static final class214 field1901; - @ObfuscatedName("az") + @Export("this$0") + @ObfuscatedName("this$0") + final class208 this$0; + @ObfuscatedSignature( - descriptor = "Lio;" + descriptor = "(Lic;)V" ) - static final class214 field1904; - @ObfuscatedName("ad") + class214(class208 var1) { + this.this$0 = var1; + this.field1853 = new float[4]; + } + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "[Lio;" + descriptor = "(II)Lhv;", + garbageValue = "-1391716385" ) - static final class214[] field1905; - @ObfuscatedName("ap") - final int field1906; - @ObfuscatedName("aa") - public final int field1907; - @ObfuscatedName("af") - public final int field1908; - - static { - field1903 = new class214(6, 8, 8); - field1900 = new class214(3, 16, 16); - field1898 = new class214(0, 32, 32); - field1902 = new class214(2, 48, 48); - field1899 = new class214(4, 64, 64); - field1901 = new class214(5, 96, 96); - field1904 = new class214(1, 128, 128); - field1905 = class271.method1541(); - Arrays.sort(field1905, new class219()); - } + @Export("ItemDefinition_get") + public static ItemComposition ItemDefinition_get(int var0) { + ItemComposition var1 = (ItemComposition)ItemComposition.ItemDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = DbRowType.ItemDefinition_archive.takeFile(10, var0); + var1 = new ItemComposition(); + var1.id = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); + } + + var1.post(); + if (var1.noteTemplate != -1) { + var1.genCert(ItemDefinition_get(var1.noteTemplate), ItemDefinition_get(var1.note)); + } + + if (var1.notedId != -1) { + var1.genBought(ItemDefinition_get(var1.notedId), ItemDefinition_get(var1.unnotedId)); + } - class214(int var1, int var2, int var3) { - this.field1906 = var1; - this.field1907 = var2; - this.field1908 = var3; + if (var1.placeholderTemplate != -1) { + var1.genPlaceholder(ItemDefinition_get(var1.placeholderTemplate), ItemDefinition_get(var1.placeholder)); + } + + if (!class129.ItemDefinition_inMembersWorld && var1.isMembersOnly) { + if (var1.noteTemplate == -1 && var1.notedId == -1 && var1.placeholderTemplate == -1) { + var1.name = var1.name + " (Members)"; + } + + var1.isTradable = false; + + int var3; + for (var3 = 0; var3 < var1.groundActions.length; ++var3) { + var1.groundActions[var3] = null; + } + + for (var3 = 0; var3 < var1.inventoryActions.length; ++var3) { + if (var3 != 4) { + var1.inventoryActions[var3] = null; + } + } + + var1.shiftClickIndex = -2; + var1.team = 0; + if (var1.params != null) { + boolean var6 = false; + + for (Node var4 = var1.params.first(); var4 != null; var4 = var1.params.next()) { + ParamComposition var5 = Frames.getParamDefinition((int)var4.key); + if (var5.autoDisable) { + var4.remove(); + } else { + var6 = true; + } + } + + if (!var6) { + var1.params = null; + } + } + } + + ItemComposition.ItemDefinition_cached.put(var1, (long)var0); + return var1; + } } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "-4502" + descriptor = "(II)I", + garbageValue = "-2138855763" ) - int method1123() { - return this.field1908 * this.field1907; + public static int method1092(int var0) { + return class314.field2775[var0]; } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1568434479" + descriptor = "(I)Lrq;", + garbageValue = "1839119171" ) - public static void method1124() { - synchronized(ArchiveDiskActionHandler.field3513) { - if (ArchiveDiskActionHandler.field3512 != 0) { - ArchiveDiskActionHandler.field3512 = 1; - ArchiveDiskActionHandler.field3511 = true; - - try { - ArchiveDiskActionHandler.field3513.wait(); - } catch (InterruptedException var3) { - } + public static class461 method1093() { + synchronized(class461.field3900) { + if (IgnoreList.field3815 == 0) { + return new class461(); + } else { + class461.field3900[--IgnoreList.field3815].method2312(); + return class461.field3900[IgnoreList.field3815]; } - } } } \ No newline at end of file diff --git a/osrs/src/main/java/class215.java b/osrs/src/main/java/class215.java new file mode 100644 index 000000000..d1fe62daf --- /dev/null +++ b/osrs/src/main/java/class215.java @@ -0,0 +1,46 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("in") +public class class215 { + @ObfuscatedName("iv") + static int[] field1854; + @ObfuscatedName("ao") + public String field1859; + @ObfuscatedName("ab") + public float[] field1855; + @ObfuscatedName("au") + public int field1858; + @ObfuscatedName("aa") + public int field1856; + @ObfuscatedName("ac") + public int field1857; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lic;" + ) + @Export("this$0") + @ObfuscatedName("this$0") + final class208 this$0; + + @ObfuscatedSignature( + descriptor = "(Lic;)V" + ) + class215(class208 var1) { + this.this$0 = var1; + this.field1855 = new float[4]; + this.field1858 = 1; + this.field1856 = 1; + this.field1857 = 0; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([Ljava/lang/String;[SB)V", + garbageValue = "0" + ) + public static void method1095(String[] var0, short[] var1) { + class132.sortItemsByName(var0, var1, 0, var0.length - 1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class216.java b/osrs/src/main/java/class216.java index f425f4ded..1af497d9c 100644 --- a/osrs/src/main/java/class216.java +++ b/osrs/src/main/java/class216.java @@ -1,149 +1,65 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ij") -public class class216 { - @ObfuscatedName("au") - final int[][] field1919; - @ObfuscatedName("ae") - final int[][] field1918; - @ObfuscatedName("ao") - int field1913; +@ObfuscatedName("id") +public class class216 extends class219 { + @ObfuscatedName("ua") + @Export("cameraLookAtY") + static int cameraLookAtY; @ObfuscatedName("at") - int field1914; - @ObfuscatedName("ac") - final int[] field1916; - @ObfuscatedName("ai") - final int[] field1917; - @ObfuscatedName("az") - final int field1915; - - public class216(int var1, int var2) { - this.field1919 = new int[var1][var2]; - this.field1918 = new int[var1][var2]; - int var3 = var2 * var1; - int var4 = WorldMapIcon_1.method1401(var3 / 4); - this.field1916 = new int[var4]; - this.field1917 = new int[var4]; - this.field1915 = var4 - 1; - } - - @ObfuscatedName("au") + int field1861; + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "87" + descriptor = "Lic;" ) - void method1128() { - for (int var1 = 0; var1 < this.field1919.length; ++var1) { - for (int var2 = 0; var2 < this.field1919[var1].length; ++var2) { - this.field1919[var1][var2] = 0; - this.field1918[var1][var2] = 99999999; - } - } - - } + final class208 this$0; - @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "335221263" + descriptor = "(Lic;Ljava/lang/String;I)V" ) - void method1129(int var1, int var2) { - this.field1913 = var1; - this.field1914 = var2; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "14" - ) - int method1130() { - return this.field1913; + class216(class208 var1, String var2, int var3) { + super(var1, var2); + this.this$0 = var1; + this.field1861 = var3; } @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "0" - ) - int method1131() { - return this.field1914; - } - - @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1220057291" + garbageValue = "561834394" ) - int method1132() { - return this.field1919.length; + public int vmethod3379() { + return 0; } - @ObfuscatedName("ai") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "63" + garbageValue = "15" ) - int method1133() { - return this.field1919[0].length; + @Export("vmethod3378") + public int vmethod3378() { + return this.field1861; } - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)[[I", - garbageValue = "1666372984" - ) - int[][] method1134() { - return this.field1919; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(I)[[I", - garbageValue = "-1771437641" - ) - int[][] method1135() { - return this.field1918; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(I)[I", - garbageValue = "-1724623959" - ) - int[] method1136() { - return this.field1916; - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(I)[I", - garbageValue = "-968317767" - ) - int[] method1137() { - return this.field1917; - } - - @ObfuscatedName("ad") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "1" + descriptor = "(B)Z", + garbageValue = "-106" ) - int method1138() { - return this.field1915; + public static boolean method1096() { + ReflectionCheck var0 = (ReflectionCheck)class36.reflectionChecks.last(); + return var0 != null; } - @ObfuscatedName("ae") + @ObfuscatedName("mg") @ObfuscatedSignature( - descriptor = "(Ltm;Ljava/lang/String;I)I", - garbageValue = "-1998833421" + descriptor = "(I)I", + garbageValue = "1337719835" ) - public static int method1127(Buffer var0, String var1) { - int var2 = var0.offset; - byte[] var3 = TextureProvider.method1301(var1); - var0.writeSmartByteShort(var3.length); - var0.offset += class334.huffman.compress(var3, 0, var3.length, var0.array, var0.offset); - return var0.offset - var2; + static final int method1099() { + float var0 = 200.0F * ((float)WorldMapIcon_1.clientPreferences.getBrightness() - 0.5F); + return 100 - Math.round(var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/class218.java b/osrs/src/main/java/class218.java deleted file mode 100644 index efe9af10f..000000000 --- a/osrs/src/main/java/class218.java +++ /dev/null @@ -1,76 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ih") -public class class218 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "[Lij;" - ) - public static class216[] field1926; - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Z", - garbageValue = "-1881729951" - ) - @Export("isNumber") - public static boolean isNumber(CharSequence var0) { - return WorldMapData_1.method1486(var0, 10, true); - } - - @ObfuscatedName("cm") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-7050902" - ) - static int method1146(int var0, Script var1, boolean var2) { - int var3; - int var4; - if (var0 == 8000) { - --SoundCache.Interpreter_intStackSize; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_arrayLengths[var3]; - class477.method2370(Interpreter.Interpreter_arrays[var3], new int[var4], 0, var4 - 1); - return 1; - } else if (var0 == 8001) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - int var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - int var6 = Interpreter.Interpreter_arrayLengths[var3]; - if (var6 <= 1) { - return 1; - } else { - class409.method2146(Interpreter.Interpreter_arrays[var3], var6, var4, var5); - return 1; - } - } else { - return 2; - } - } - - @ObfuscatedName("iq") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-864232113" - ) - @Export("getWindowedMode") - static int getWindowedMode() { - return Client.isResizable ? 2 : 1; - } - - @ObfuscatedName("mi") - @ObfuscatedSignature( - descriptor = "(Lmi;I)V", - garbageValue = "634496397" - ) - @Export("invalidateWidget") - public static void invalidateWidget(Widget var0) { - if (var0 != null && var0.cycle == Client.field527) { - Client.field407[var0.rootIndex] = true; - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class219.java b/osrs/src/main/java/class219.java index b1e7e5a01..489cd2c5d 100644 --- a/osrs/src/main/java/class219.java +++ b/osrs/src/main/java/class219.java @@ -2,68 +2,85 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Comparator; - -@ObfuscatedName("it") -public class class219 implements Comparator { - @ObfuscatedName("ai") +@ObfuscatedName("ia") +public abstract class class219 { + @ObfuscatedName("ao") + String field1874; + // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Luk;" + descriptor = "Lic;" ) - @Export("titlebuttonSprite") - static IndexedSprite titlebuttonSprite; - @ObfuscatedName("bw") - @Export("client") + @Export("this$0") + @ObfuscatedName("this$0") + final class208 this$0; + @ObfuscatedSignature( - descriptor = "Lclient;" + descriptor = "(Lic;Ljava/lang/String;)V" ) - static Client client; - - class219() { + class219(class208 var1, String var2) { + this.this$0 = var1; + this.field1874 = var2; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lio;Lio;I)I", - garbageValue = "-975759787" + descriptor = "(I)I", + garbageValue = "561834394" ) - int method1148(class214 var1, class214 var2) { - return var1.method1123() - var2.method1123(); - } + @Export("vmethod3379") + public abstract int vmethod3379(); - @Export("compare") - @ObfuscatedName("compare") - public int compare(Object var1, Object var2) { - return this.method1148((class214)var1, (class214)var2); - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - return super.equals(var1); + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)Ljava/lang/String;", + garbageValue = "18" + ) + @Export("vmethod3380") + public String vmethod3380() { + return null; } @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Lnu;Ljava/lang/String;Ljava/lang/String;B)[Luk;", - garbageValue = "-64" + descriptor = "(B)I", + garbageValue = "15" ) - public static IndexedSprite[] method1149(AbstractArchive var0, String var1, String var2) { - if (!var0.isValidFileName(var1, var2)) { - return null; - } else { - int var3 = var0.getGroupId(var1); - int var4 = var0.getFileId(var3, var2); - return class28.method110(var0, var3, var4); - } + @Export("vmethod3378") + public int vmethod3378() { + return -1; } - @ObfuscatedName("ai") + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-38" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-273477420" ) - public static void method1150() { - DbTableType.DBTableType_cache.clear(); + public String method1105() { + return this.field1874; + } + + @ObfuscatedName("at") + public static final void method1104(long var0) { + if (var0 > 0L) { + if (0L == var0 % 10L) { + long var2 = var0 - 1L; + + try { + Thread.sleep(var2); + } catch (InterruptedException var8) { + } + + try { + Thread.sleep(1L); + } catch (InterruptedException var7) { + } + } else { + try { + Thread.sleep(var0); + } catch (InterruptedException var6) { + } + } + + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class221.java b/osrs/src/main/java/class221.java new file mode 100644 index 000000000..5a7fd966c --- /dev/null +++ b/osrs/src/main/java/class221.java @@ -0,0 +1,472 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.awt.datatransfer.Clipboard; + +@ObfuscatedName("ij") +public class class221 implements class29 { + @ObfuscatedName("pk") + static int field1877; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lnn;" + ) + Widget field1880; + @ObfuscatedName("ah") + boolean field1878; + @ObfuscatedName("ar") + boolean field1879; + + public class221() { + this.field1880 = null; + this.field1878 = false; + this.field1879 = false; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IS)Z", + garbageValue = "512" + ) + @Export("vmethod3949") + public boolean vmethod3949(int var1) { + if (this.field1880 == null) { + return false; + } else { + class27 var2 = this.field1880.method1873(); + if (var2 == null) { + return false; + } else { + if (var2.method119(var1)) { + switch(var1) { + case 81: + this.field1879 = true; + break; + case 82: + this.field1878 = true; + break; + default: + if (this.method1119(var1)) { + class159.invalidateWidget(this.field1880); + } + } + } + + return var2.method117(var1); + } + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-1146773117" + ) + public boolean vmethod3989(int var1) { + switch(var1) { + case 81: + this.field1879 = false; + return false; + case 82: + this.field1878 = false; + return false; + default: + return false; + } + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "984376689" + ) + @Export("vmethod3951") + public boolean vmethod3951(char var1) { + if (this.field1880 == null) { + return false; + } else if (!DirectByteArrayCopier.method1884(var1)) { + return false; + } else { + class341 var2 = this.field1880.method1871(); + if (var2 != null && var2.method1815()) { + class27 var3 = this.field1880.method1873(); + if (var3 == null) { + return false; + } else { + if (var3.method120(var1) && var2.method1776(var1)) { + class159.invalidateWidget(this.field1880); + } + + return var3.method118(var1); + } + } else { + return false; + } + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(ZB)Z", + garbageValue = "-49" + ) + @Export("vmethod3953") + public boolean vmethod3953(boolean var1) { + return false; + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Lnn;I)V", + garbageValue = "950407656" + ) + public void method1112(Widget var1) { + if (var1 != null) { + if (var1 != this.field1880) { + this.method1114(); + this.field1880 = var1; + } + + class339 var2 = var1.method1874(); + if (var2 != null) { + if (!var2.field2934.method1810() && var2.field2931 != null) { + ScriptEvent var3 = new ScriptEvent(); + var3.method467(var1); + var3.setArgs(var2.field2931); + FileSystem.getScriptEvents().addFirst(var3); + } + + var2.field2934.method1759(true); + } + } else { + this.method1114(); + } + + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(S)Lnn;", + garbageValue = "-15065" + ) + public Widget method1113() { + return this.field1880; + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-881991302" + ) + public void method1114() { + if (this.field1880 != null) { + class339 var1 = this.field1880.method1874(); + Widget var2 = this.field1880; + this.field1880 = null; + if (var1 != null) { + if (var1.field2934.method1810() && var1.field2931 != null) { + ScriptEvent var3 = new ScriptEvent(); + var3.method467(var2); + var3.setArgs(var1.field2931); + FileSystem.getScriptEvents().addFirst(var3); + } + + var1.field2934.method1759(false); + } + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "2" + ) + boolean method1119(int var1) { + if (this.field1880 == null) { + return false; + } else { + class341 var2 = this.field1880.method1871(); + if (var2 != null && var2.method1815()) { + Clipboard var5; + switch(var1) { + case 13: + this.method1114(); + return true; + case 48: + if (this.field1878) { + var2.method1782(); + } + + return true; + case 65: + if (this.field1878) { + var5 = SpriteMask.client.getClipboard(); + var2.method1801(var5); + } + + return true; + case 66: + if (this.field1878) { + var5 = SpriteMask.client.getClipboard(); + var2.method1800(var5); + } + + return true; + case 67: + if (this.field1878) { + var5 = SpriteMask.client.getClipboard(); + var2.method1802(var5); + } + + return true; + case 84: + if (var2.method1821() == 0) { + var2.method1776(10); + } else if (this.field1879 && var2.method1825()) { + var2.method1776(10); + } else { + class339 var3 = this.field1880.method1874(); + ScriptEvent var4 = new ScriptEvent(); + var4.method467(this.field1880); + var4.setArgs(var3.field2930); + FileSystem.getScriptEvents().addFirst(var4); + this.method1114(); + } + + return true; + case 85: + if (this.field1878) { + var2.method1779(); + } else { + var2.method1777(); + } + + return true; + case 96: + if (this.field1878) { + var2.method1790(this.field1879); + } else { + var2.method1788(this.field1879); + } + + return true; + case 97: + if (this.field1878) { + var2.method1791(this.field1879); + } else { + var2.method1789(this.field1879); + } + + return true; + case 98: + if (this.field1878) { + var2.method1803(); + } else { + var2.method1792(this.field1879); + } + + return true; + case 99: + if (this.field1878) { + var2.method1804(); + } else { + var2.method1793(this.field1879); + } + + return true; + case 101: + if (this.field1878) { + var2.method1780(); + } else { + var2.method1778(); + } + + return true; + case 102: + if (this.field1878) { + var2.method1786(this.field1879); + } else { + var2.method1784(this.field1879); + } + + return true; + case 103: + if (this.field1878) { + var2.method1787(this.field1879); + } else { + var2.method1785(this.field1879); + } + + return true; + case 104: + if (this.field1878) { + var2.method1796(this.field1879); + } else { + var2.method1794(this.field1879); + } + + return true; + case 105: + if (this.field1878) { + var2.method1797(this.field1879); + } else { + var2.method1795(this.field1879); + } + + return true; + default: + return false; + } + } else { + return false; + } + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)[Laa;", + garbageValue = "-14" + ) + public static class6[] method1111() { + return new class6[]{class6.field9}; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Luo;I)V", + garbageValue = "-620397215" + ) + static final void method1120(PacketBuffer var0) { + int var1 = 0; + var0.importIndex(); + + byte[] var10000; + int var2; + int var3; + int var4; + for (var2 = 0; var2 < Players.Players_count; ++var2) { + var3 = Players.Players_indices[var2]; + if ((Players.activityFlags[var3] & 1) == 0) { + if (var1 > 0) { + --var1; + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Client.method361(var0); + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + class9.readPlayerUpdate(var0, var3); + } + } + } + } + + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); + + for (var2 = 0; var2 < Players.Players_count; ++var2) { + var3 = Players.Players_indices[var2]; + if ((Players.activityFlags[var3] & 1) != 0) { + if (var1 > 0) { + --var1; + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Client.method361(var0); + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + class9.readPlayerUpdate(var0, var3); + } + } + } + } + + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); + + for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { + var3 = Players.Players_emptyIndices[var2]; + if ((Players.activityFlags[var3] & 1) != 0) { + if (var1 > 0) { + --var1; + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Client.method361(var0); + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else if (Buddy.updateExternalPlayer(var0, var3)) { + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } + } + } + } + + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + var0.importIndex(); + + for (var2 = 0; var2 < Players.Players_emptyIdxCount; ++var2) { + var3 = Players.Players_emptyIndices[var2]; + if ((Players.activityFlags[var3] & 1) == 0) { + if (var1 > 0) { + --var1; + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else { + var4 = var0.readBits(1); + if (var4 == 0) { + var1 = Client.method361(var0); + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } else if (Buddy.updateExternalPlayer(var0, var3)) { + var10000 = Players.activityFlags; + var10000[var3] = (byte)(var10000[var3] | 2); + } + } + } + } + + var0.exportIndex(); + if (var1 != 0) { + throw new RuntimeException(); + } else { + Players.Players_count = 0; + Players.Players_emptyIdxCount = 0; + + for (var2 = 1; var2 < 2048; ++var2) { + var10000 = Players.activityFlags; + var10000[var2] = (byte)(var10000[var2] >> 1); + Player var5 = Client.players[var2]; + if (var5 != null) { + Players.Players_indices[++Players.Players_count - 1] = var2; + } else { + Players.Players_emptyIndices[++Players.Players_emptyIdxCount - 1] = var2; + } + } + + } + } + } + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class222.java b/osrs/src/main/java/class222.java new file mode 100644 index 000000000..913f4969b --- /dev/null +++ b/osrs/src/main/java/class222.java @@ -0,0 +1,36 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ix") +public class class222 extends Node { + @ObfuscatedName("ar") + public int field1883; + @ObfuscatedName("ao") + public int field1882; + @ObfuscatedName("ab") + public int field1881; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lnn;" + ) + public Widget field1884; + + @ObfuscatedSignature( + descriptor = "(IIILnn;)V" + ) + public class222(int var1, int var2, int var3, Widget var4) { + this.field1881 = var1; + this.field1883 = var2; + this.field1882 = var3; + this.field1884 = var4; + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "0" + ) + static final void method1121(String var0) { + WorldMapArea.method1213(var0 + " is already on your friend list"); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class223.java b/osrs/src/main/java/class223.java new file mode 100644 index 000000000..38ec5c8f7 --- /dev/null +++ b/osrs/src/main/java/class223.java @@ -0,0 +1,216 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Arrays; + +@ObfuscatedName("il") +public class class223 implements class29 { + @ObfuscatedName("gv") + static int field1885; + @ObfuscatedName("jn") + static int field1886; + @ObfuscatedName("at") + char[] field1890; + @ObfuscatedName("ah") + int[] field1896; + @ObfuscatedName("ar") + public int[] field1900; + @ObfuscatedName("ao") + @Export("pressedKeysCount") + public int pressedKeysCount; + @ObfuscatedName("ab") + int[] field1895; + @ObfuscatedName("au") + int field1894; + @ObfuscatedName("aa") + int field1891; + @ObfuscatedName("ac") + int field1892; + @ObfuscatedName("al") + int field1893; + @ObfuscatedName("az") + boolean[] field1889; + @ObfuscatedName("ap") + boolean[] field1887; + @ObfuscatedName("av") + boolean[] field1888; + @ObfuscatedName("ax") + public char field1897; + @ObfuscatedName("as") + public int field1899; + + public class223() { + this.field1890 = new char[128]; + this.field1896 = new int[128]; + this.field1900 = new int[128]; + this.pressedKeysCount = 0; + this.field1895 = new int[128]; + this.field1894 = 0; + this.field1891 = 0; + this.field1892 = 0; + this.field1893 = 0; + this.field1889 = new boolean[112]; + this.field1887 = new boolean[112]; + this.field1888 = new boolean[112]; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IS)Z", + garbageValue = "512" + ) + @Export("vmethod3949") + public boolean vmethod3949(int var1) { + this.method1125(var1); + this.field1889[var1] = true; + this.field1887[var1] = true; + this.field1888[var1] = false; + this.field1900[++this.pressedKeysCount - 1] = var1; + return true; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-1146773117" + ) + @Export("vmethod3989") + public boolean vmethod3989(int var1) { + this.field1889[var1] = false; + this.field1887[var1] = false; + this.field1888[var1] = true; + this.field1895[++this.field1894 - 1] = var1; + return true; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(CI)Z", + garbageValue = "984376689" + ) + @Export("vmethod3951") + public boolean vmethod3951(char var1) { + int var2 = this.field1892 + 1 & 127; + if (var2 != this.field1891) { + this.field1896[this.field1892] = -1; + this.field1890[this.field1892] = var1; + this.field1892 = var2; + } + + return false; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(ZB)Z", + garbageValue = "-49" + ) + @Export("vmethod3953") + public boolean vmethod3953(boolean var1) { + return false; + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(IS)V", + garbageValue = "19704" + ) + void method1125(int var1) { + int var2 = this.field1892 + 1 & 127; + if (var2 != this.field1891) { + this.field1896[this.field1892] = var1; + this.field1890[this.field1892] = 0; + this.field1892 = var2; + } + + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1513942573" + ) + public void method1127() { + this.field1891 = this.field1893; + this.field1893 = this.field1892; + this.pressedKeysCount = 0; + this.field1894 = 0; + Arrays.fill(this.field1887, false); + Arrays.fill(this.field1888, false); + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1159556377" + ) + public final boolean method1128() { + if (this.field1893 == this.field1891) { + return false; + } else { + this.field1899 = this.field1896[this.field1891]; + this.field1897 = this.field1890[this.field1891]; + this.field1891 = this.field1891 + 1 & 127; + return true; + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "21" + ) + public boolean method1129(int var1) { + return var1 >= 0 && var1 < 112 ? this.field1887[var1] : false; + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1604984140" + ) + @Export("getKeyPressed") + public boolean getKeyPressed(int var1) { + return var1 >= 0 && var1 < 112 ? this.field1889[var1] : false; + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1100003987" + ) + public boolean method1131(int var1) { + return var1 >= 0 && var1 < 112 ? this.field1888[var1] : false; + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(I)[I", + garbageValue = "-1519174440" + ) + public int[] method1132() { + int[] var1 = new int[this.pressedKeysCount]; + + for (int var2 = 0; var2 < this.pressedKeysCount; ++var2) { + var1[var2] = this.field1900[var2]; + } + + return var1; + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(I)[I", + garbageValue = "353218827" + ) + public int[] method1133() { + int[] var1 = new int[this.field1894]; + + for (int var2 = 0; var2 < this.field1894; ++var2) { + var1[var2] = this.field1895[var2]; + } + + return var1; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class225.java b/osrs/src/main/java/class225.java new file mode 100644 index 000000000..97a92c555 --- /dev/null +++ b/osrs/src/main/java/class225.java @@ -0,0 +1,106 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Arrays; + +@ObfuscatedName("ir") +public class class225 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1912; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1909; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1911; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1910; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1908; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1913; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lir;" + ) + static final class225 field1907; + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "[Lir;" + ) + static final class225[] field1914; + @ObfuscatedName("ac") + final int field1915; + @ObfuscatedName("al") + final int field1916; + @ObfuscatedName("az") + final int field1917; + + static { + field1912 = new class225(0, 8, 8); + field1909 = new class225(1, 16, 16); + field1911 = new class225(3, 32, 32); + field1910 = new class225(5, 48, 48); + field1908 = new class225(6, 64, 64); + field1913 = new class225(4, 96, 96); + field1907 = new class225(2, 128, 128); + field1914 = RouteStrategy.method1149(); + Arrays.sort(field1914, new class230()); + } + + class225(int var1, int var2, int var3) { + this.field1915 = var1; + this.field1916 = var2; + this.field1917 = var3; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-524801234" + ) + int method1147() { + return this.field1917 * this.field1916; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(IIIIIIII)Z", + garbageValue = "-1539205894" + ) + static final boolean method1148(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { + int var7 = ViewportMouse.ViewportMouse_y + var6; + if (var7 < var0 && var7 < var1 && var7 < var2) { + return false; + } else { + var7 = ViewportMouse.ViewportMouse_y - var6; + if (var7 > var0 && var7 > var1 && var7 > var2) { + return false; + } else { + var7 = ViewportMouse.ViewportMouse_x + var6; + if (var7 < var3 && var7 < var4 && var7 < var5) { + return false; + } else { + var7 = ViewportMouse.ViewportMouse_x - var6; + return var7 <= var3 || var7 <= var4 || var7 <= var5; + } + } + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class227.java b/osrs/src/main/java/class227.java index 5e9076037..223611a05 100644 --- a/osrs/src/main/java/class227.java +++ b/osrs/src/main/java/class227.java @@ -1,184 +1,179 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("im") +@ObfuscatedName("ig") public class class227 { - @ObfuscatedName("ac") - @Export("Tiles_overlays") - static short[][][] Tiles_overlays; - @ObfuscatedName("gc") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field2040; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "[Leo;" - ) - class127[] field2042; + @ObfuscatedName("at") + final int[][] field1928; + @ObfuscatedName("ah") + final int[][] field1927; + @ObfuscatedName("ar") + int field1923; @ObfuscatedName("ao") - int field2043; + int field1922; + @ObfuscatedName("ab") + final int[] field1925; + @ObfuscatedName("au") + final int[] field1926; + @ObfuscatedName("aa") + final int field1924; + + class227(int var1, int var2) { + this.field1928 = new int[var1][var2]; + this.field1927 = new int[var1][var2]; + int var3 = var2 * var1; + int var4 = class184.method927(var3 / 4); + this.field1925 = new int[var4]; + this.field1926 = new int[var4]; + this.field1924 = var4 - 1; + } + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;I)V" + descriptor = "(I)V", + garbageValue = "1222193481" ) - class227(Buffer var1, int var2) { - this.field2042 = new class127[var2]; - this.field2043 = var1.readUnsignedByte(); - - for (int var3 = 0; var3 < this.field2042.length; ++var3) { - class127 var4 = new class127(this.field2043, var1, false); - this.field2042[var3] = var4; + void method1153() { + for (int var1 = 0; var1 < this.field1928.length; ++var1) { + for (int var2 = 0; var2 < this.field1928[var1].length; ++var2) { + this.field1928[var1][var2] = 0; + this.field1927[var1][var2] = 99999999; + } } - this.method1211(); } - @ObfuscatedName("au") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1763972541" + descriptor = "(IIB)V", + garbageValue = "19" ) - void method1211() { - class127[] var1 = this.field2042; - - for (int var2 = 0; var2 < var1.length; ++var2) { - class127 var3 = var1[var2]; - if (var3.field1222 >= 0) { - var3.field1221 = this.field2042[var3.field1222]; - } - } - + void method1154(int var1, int var2) { + this.field1923 = var1; + this.field1922 = var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(I)I", - garbageValue = "-1286602518" + garbageValue = "40323441" ) - public int method1212() { - return this.field2042.length; + int method1155() { + return this.field1923; } @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(II)Leo;", - garbageValue = "-1526328024" + descriptor = "(I)I", + garbageValue = "1750478119" ) - class127 method1213(int var1) { - return var1 >= this.method1212() ? null : this.field2042[var1]; + int method1156() { + return this.field1922; } - @ObfuscatedName("at") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(I)[Leo;", - garbageValue = "110730333" + descriptor = "(I)I", + garbageValue = "-1487241351" ) - class127[] method1214() { - return this.field2042; + int method1157() { + return this.field1928.length; } - @ObfuscatedName("ac") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(Lfv;II)V", - garbageValue = "1299283005" + descriptor = "(B)I", + garbageValue = "-63" ) - void method1216(class137 var1, int var2) { - this.method1217(var1, var2, (boolean[])null, false); + int method1158() { + return this.field1928[0].length; } - @ObfuscatedName("ai") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(Lfv;I[ZZB)V", - garbageValue = "63" + descriptor = "(I)[[I", + garbageValue = "-32547244" ) - void method1217(class137 var1, int var2, boolean[] var3, boolean var4) { - int var5 = var1.method747(); - int var6 = 0; - class127[] var7 = this.method1214(); - - for (int var8 = 0; var8 < var7.length; ++var8) { - class127 var9 = var7[var8]; - if (var3 == null || var4 == var3[var6]) { - var1.method749(var2, var9, var6, var5); - } - - ++var6; - } - + int[][] method1159() { + return this.field1928; } - @ObfuscatedName("au") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(II)Lhk;", - garbageValue = "-1038928775" + descriptor = "(I)[[I", + garbageValue = "2082106732" ) - public static VarcInt method1210(int var0) { - VarcInt var1 = (VarcInt)VarcInt.VarcInt_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = VarcInt.VarcInt_archive.takeFile(19, var0); - var1 = new VarcInt(); - if (var2 != null) { - var1.method954(new Buffer(var2)); - } + int[][] method1160() { + return this.field1927; + } - VarcInt.VarcInt_cached.put(var1, (long)var0); - return var1; - } + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(B)[I", + garbageValue = "-33" + ) + int[] method1161() { + return this.field1925; } - @ObfuscatedName("au") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(Lnu;Lnu;Lnu;I)V", - garbageValue = "1390466926" + descriptor = "(I)[I", + garbageValue = "1805149245" ) - public static void method1215(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2) { - UserComparator2.SequenceDefinition_archive = var0; - VarpDefinition.SequenceDefinition_animationsArchive = var1; - class485.SequenceDefinition_skeletonsArchive = var2; + int[] method1162() { + return this.field1926; } - @ObfuscatedName("gp") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(B)Lsi;", - garbageValue = "0" + descriptor = "(S)I", + garbageValue = "3128" ) - @Export("getWorldMap") - static WorldMap getWorldMap() { - return Canvas.worldMap; + int method1163() { + return this.field1924; } - @ObfuscatedName("mt") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Lmi;III)V", - garbageValue = "-767534293" + descriptor = "(I)V", + garbageValue = "516019890" ) - @Export("clickWidget") - static final void clickWidget(Widget var0, int var1, int var2) { - if (Client.clickedWidget == null && !Client.isMenuOpen) { - if (var0 != null && WorldMapLabelSize.method1395(var0) != null) { - Client.clickedWidget = var0; - Client.clickedWidgetParent = WorldMapLabelSize.method1395(var0); - Client.widgetClickX = var1; - Client.widgetClickY = var2; - class159.widgetDragDuration = 0; - Client.isDraggingWidget = false; - int var3 = Client.menuOptionsCount - 1; - if (var3 != -1) { - class9.tempMenuAction = new MenuAction(); - class9.tempMenuAction.param0 = Client.menuArguments1[var3]; - class9.tempMenuAction.param1 = Client.menuArguments2[var3]; - class9.tempMenuAction.opcode = Client.menuOpcodes[var3]; - class9.tempMenuAction.identifier = Client.menuIdentifiers[var3]; - class9.tempMenuAction.itemId = Client.menuItemIds[var3]; - class9.tempMenuAction.action = Client.menuActions[var3]; - class9.tempMenuAction.target = Client.menuTargets[var3]; + public static void method1164() { + synchronized(ArchiveDiskActionHandler.field3543) { + if (ArchiveDiskActionHandler.field3542 != 0) { + ArchiveDiskActionHandler.field3542 = 1; + ArchiveDiskActionHandler.field3541 = true; + + try { + ArchiveDiskActionHandler.field3543.wait(); + } catch (InterruptedException var3) { } + } + + } + } + @ObfuscatedName("nm") + @ObfuscatedSignature( + descriptor = "(Lnn;I)Lnn;", + garbageValue = "16221133" + ) + static Widget method1165(Widget var0) { + int var2 = class361.getWidgetFlags(var0); + int var1 = var2 >> 17 & 7; + int var3 = var1; + if (var1 == 0) { + return null; + } else { + for (int var4 = 0; var4 < var3; ++var4) { + var0 = HealthBarDefinition.widgetDefinition.method1733(var0.parentId); + if (var0 == null) { + return null; + } } + + return var0; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class229.java b/osrs/src/main/java/class229.java new file mode 100644 index 000000000..09592ecf3 --- /dev/null +++ b/osrs/src/main/java/class229.java @@ -0,0 +1,601 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("iy") +public class class229 { + @ObfuscatedName("nq") + @ObfuscatedSignature( + descriptor = "Lds;" + ) + @Export("localPlayer") + static Player localPlayer; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "[Lig;" + ) + class227[] field1937; + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-2" + ) + public void method1169() { + this.field1937 = new class227[1]; + class225 var1 = class225.field1911; + this.field1937[0] = new class227(var1.field1916, var1.field1917); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIILit;Liw;Z[I[IB)I", + garbageValue = "-7" + ) + public int method1170(int var1, int var2, int var3, RouteStrategy var4, CollisionMap var5, boolean var6, int[] var7, int[] var8) { + return this.method1171(var1, var2, var3, var4, var5, var6, var7, var8, this.field1937[0]); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IIILit;Liw;Z[I[ILig;I)I", + garbageValue = "1698445107" + ) + int method1171(int var1, int var2, int var3, RouteStrategy var4, CollisionMap var5, boolean var6, int[] var7, int[] var8, class227 var9) { + var9.method1153(); + int var10 = var9.method1157(); + int var11 = var9.method1158(); + int[][] var12 = var9.method1160(); + int[][] var13 = var9.method1159(); + int[] var14 = var9.method1161(); + int[] var15 = var9.method1162(); + boolean var16; + if (var3 == 1) { + var16 = this.method1172(var1, var2, var4, var5, var9); + } else if (var3 == 2) { + var16 = this.method1173(var1, var2, var4, var5, var9); + } else { + var16 = this.method1174(var1, var2, var3, var4, var5, var9); + } + + int var17 = var1 - (var10 >> 1); + int var18 = var2 - (var11 >> 1); + int var19 = var9.method1155(); + int var20 = var9.method1156(); + int var21; + int var22; + int var24; + if (!var16) { + if (!var6) { + return -1; + } + + var21 = Integer.MAX_VALUE; + var22 = Integer.MAX_VALUE; + byte var23 = 10; + var24 = var4.approxDestinationX; + int var25 = var4.approxDestinationY; + int var26 = var4.approxDestinationSizeX; + int var27 = var4.approxDestinationSizeY; + + for (int var28 = var24 - var23; var28 <= var23 + var24; ++var28) { + for (int var29 = var25 - var23; var29 <= var25 + var23; ++var29) { + int var30 = var28 - var17; + int var31 = var29 - var18; + if (var30 >= 0 && var31 >= 0 && var30 < var10 && var31 < var11 && var12[var30][var31] < 100) { + int var32 = 0; + if (var28 < var24) { + var32 = var24 - var28; + } else if (var28 > var24 + var26 - 1) { + var32 = var28 - (var26 + var24 - 1); + } + + int var33 = 0; + if (var29 < var25) { + var33 = var25 - var29; + } else if (var29 > var27 + var25 - 1) { + var33 = var29 - (var25 + var27 - 1); + } + + int var34 = var32 * var32 + var33 * var33; + if (var34 < var21 || var34 == var21 && var12[var30][var31] < var22) { + var21 = var34; + var22 = var12[var30][var31]; + var19 = var28; + var20 = var29; + } + } + } + } + + if (var21 == Integer.MAX_VALUE) { + return -1; + } + } + + if (var19 == var1 && var20 == var2) { + var7[0] = var19; + var8[0] = var20; + return 0; + } else { + byte var36 = 0; + var14[var36] = var19; + var21 = var36 + 1; + var15[var36] = var20; + + int var37; + for (var22 = var37 = var13[var19 - var17][var20 - var18]; var19 != var1 || var20 != var2; var22 = var13[var19 - var17][var20 - var18]) { + if (var22 != var37) { + var37 = var22; + var14[var21] = var19; + var15[var21++] = var20; + } + + if ((var22 & 2) != 0) { + ++var19; + } else if ((var22 & 8) != 0) { + --var19; + } + + if ((var22 & 1) != 0) { + ++var20; + } else if ((var22 & 4) != 0) { + --var20; + } + } + + var24 = 0; + + while (var21-- > 0) { + var7[var24] = var14[var21]; + var8[var24++] = var15[var21]; + if (var24 >= var7.length) { + break; + } + } + + return var24; + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IILit;Liw;Lig;I)Z", + garbageValue = "856053681" + ) + final boolean method1172(int var1, int var2, RouteStrategy var3, CollisionMap var4, class227 var5) { + int var6 = var5.method1157(); + int var7 = var5.method1158(); + int[][] var8 = var5.method1160(); + int[][] var9 = var5.method1159(); + int[] var10 = var5.method1161(); + int[] var11 = var5.method1162(); + int var12 = var5.method1163(); + int var13 = var1; + int var14 = var2; + int var15 = var6 >> 1; + int var16 = var7 >> 1; + int var17 = var1 - var15; + int var18 = var2 - var16; + var9[var15][var16] = 99; + var8[var15][var16] = 0; + byte var19 = 0; + int var20 = 0; + var10[var19] = var1; + byte var10001 = var19; + int var25 = var19 + 1; + var11[var10001] = var2; + int[][] var21 = var4.flags; + + while (var25 != var20) { + var13 = var10[var20]; + var14 = var11[var20]; + var20 = var20 + 1 & var12; + var15 = var13 - var17; + var16 = var14 - var18; + int var22 = var13 - var4.xInset; + int var23 = var14 - var4.yInset; + if (var3.hasArrived(1, var13, var14, var4)) { + var5.method1154(var13, var14); + return true; + } + + int var24 = var8[var15][var16] + 1; + if (var15 > 0 && var9[var15 - 1][var16] == 0 && (var21[var22 - 1][var23] & 19136776) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16] = 2; + var8[var15 - 1][var16] = var24; + } + + if (var15 < var6 - 1 && var9[var15 + 1][var16] == 0 && (var21[var22 + 1][var23] & 19136896) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16] = 8; + var8[var15 + 1][var16] = var24; + } + + if (var16 > 0 && var9[var15][var16 - 1] == 0 && (var21[var22][var23 - 1] & 19136770) == 0) { + var10[var25] = var13; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15][var16 - 1] = 1; + var8[var15][var16 - 1] = var24; + } + + if (var16 < var7 - 1 && var9[var15][var16 + 1] == 0 && (var21[var22][var23 + 1] & 19136800) == 0) { + var10[var25] = var13; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15][var16 + 1] = 4; + var8[var15][var16 + 1] = var24; + } + + if (var15 > 0 && var16 > 0 && var9[var15 - 1][var16 - 1] == 0 && (var21[var22 - 1][var23 - 1] & 19136782) == 0 && (var21[var22 - 1][var23] & 19136776) == 0 && (var21[var22][var23 - 1] & 19136770) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16 - 1] = 3; + var8[var15 - 1][var16 - 1] = var24; + } + + if (var15 < var6 - 1 && var16 > 0 && var9[var15 + 1][var16 - 1] == 0 && (var21[var22 + 1][var23 - 1] & 19136899) == 0 && (var21[var22 + 1][var23] & 19136896) == 0 && (var21[var22][var23 - 1] & 19136770) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16 - 1] = 9; + var8[var15 + 1][var16 - 1] = var24; + } + + if (var15 > 0 && var16 < var7 - 1 && var9[var15 - 1][var16 + 1] == 0 && (var21[var22 - 1][var23 + 1] & 19136824) == 0 && (var21[var22 - 1][var23] & 19136776) == 0 && (var21[var22][var23 + 1] & 19136800) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16 + 1] = 6; + var8[var15 - 1][var16 + 1] = var24; + } + + if (var15 < var6 - 1 && var16 < var7 - 1 && var9[var15 + 1][var16 + 1] == 0 && (var21[var22 + 1][var23 + 1] & 19136992) == 0 && (var21[var22 + 1][var23] & 19136896) == 0 && (var21[var22][var23 + 1] & 19136800) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16 + 1] = 12; + var8[var15 + 1][var16 + 1] = var24; + } + } + + var5.method1154(var13, var14); + return false; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(IILit;Liw;Lig;I)Z", + garbageValue = "-247545109" + ) + final boolean method1173(int var1, int var2, RouteStrategy var3, CollisionMap var4, class227 var5) { + int var6 = var5.method1157(); + int var7 = var5.method1158(); + int[][] var8 = var5.method1160(); + int[][] var9 = var5.method1159(); + int[] var10 = var5.method1161(); + int[] var11 = var5.method1162(); + int var12 = var5.method1163(); + int var13 = var1; + int var14 = var2; + int var15 = var6 >> 1; + int var16 = var7 >> 1; + int var17 = var1 - var15; + int var18 = var2 - var16; + var9[var15][var16] = 99; + var8[var15][var16] = 0; + byte var19 = 0; + int var20 = 0; + var10[var19] = var1; + byte var10001 = var19; + int var25 = var19 + 1; + var11[var10001] = var2; + int[][] var21 = var4.flags; + + while (var20 != var25) { + var13 = var10[var20]; + var14 = var11[var20]; + var20 = var20 + 1 & var12; + var15 = var13 - var17; + var16 = var14 - var18; + int var22 = var13 - var4.xInset; + int var23 = var14 - var4.yInset; + if (var3.hasArrived(2, var13, var14, var4)) { + var5.method1154(var13, var14); + return true; + } + + int var24 = var8[var15][var16] + 1; + if (var15 > 0 && var9[var15 - 1][var16] == 0 && (var21[var22 - 1][var23] & 19136782) == 0 && (var21[var22 - 1][var23 + 1] & 19136824) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16] = 2; + var8[var15 - 1][var16] = var24; + } + + if (var15 < var6 - 2 && var9[var15 + 1][var16] == 0 && (var21[var22 + 2][var23] & 19136899) == 0 && (var21[var22 + 2][var23 + 1] & 19136992) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16] = 8; + var8[var15 + 1][var16] = var24; + } + + if (var16 > 0 && var9[var15][var16 - 1] == 0 && (var21[var22][var23 - 1] & 19136782) == 0 && (var21[var22 + 1][var23 - 1] & 19136899) == 0) { + var10[var25] = var13; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15][var16 - 1] = 1; + var8[var15][var16 - 1] = var24; + } + + if (var16 < var7 - 2 && var9[var15][var16 + 1] == 0 && (var21[var22][var23 + 2] & 19136824) == 0 && (var21[var22 + 1][var23 + 2] & 19136992) == 0) { + var10[var25] = var13; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15][var16 + 1] = 4; + var8[var15][var16 + 1] = var24; + } + + if (var15 > 0 && var16 > 0 && var9[var15 - 1][var16 - 1] == 0 && (var21[var22 - 1][var23] & 19136830) == 0 && (var21[var22 - 1][var23 - 1] & 19136782) == 0 && (var21[var22][var23 - 1] & 19136911) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16 - 1] = 3; + var8[var15 - 1][var16 - 1] = var24; + } + + if (var15 < var6 - 2 && var16 > 0 && var9[var15 + 1][var16 - 1] == 0 && (var21[var22 + 1][var23 - 1] & 19136911) == 0 && (var21[var22 + 2][var23 - 1] & 19136899) == 0 && (var21[var22 + 2][var23] & 19136995) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14 - 1; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16 - 1] = 9; + var8[var15 + 1][var16 - 1] = var24; + } + + if (var15 > 0 && var16 < var7 - 2 && var9[var15 - 1][var16 + 1] == 0 && (var21[var22 - 1][var23 + 1] & 19136830) == 0 && (var21[var22 - 1][var23 + 2] & 19136824) == 0 && (var21[var22][var23 + 2] & 19137016) == 0) { + var10[var25] = var13 - 1; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15 - 1][var16 + 1] = 6; + var8[var15 - 1][var16 + 1] = var24; + } + + if (var15 < var6 - 2 && var16 < var7 - 2 && var9[var15 + 1][var16 + 1] == 0 && (var21[var22 + 1][var23 + 2] & 19137016) == 0 && (var21[var22 + 2][var23 + 2] & 19136992) == 0 && (var21[var22 + 2][var23 + 1] & 19136995) == 0) { + var10[var25] = var13 + 1; + var11[var25] = var14 + 1; + var25 = var25 + 1 & var12; + var9[var15 + 1][var16 + 1] = 12; + var8[var15 + 1][var16 + 1] = var24; + } + } + + var5.method1154(var13, var14); + return false; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(IIILit;Liw;Lig;I)Z", + garbageValue = "-1907782379" + ) + final boolean method1174(int var1, int var2, int var3, RouteStrategy var4, CollisionMap var5, class227 var6) { + int var7 = var6.method1157(); + int var8 = var6.method1158(); + int[][] var9 = var6.method1160(); + int[][] var10 = var6.method1159(); + int[] var11 = var6.method1161(); + int[] var12 = var6.method1162(); + int var13 = var6.method1163(); + int var14 = var1; + int var15 = var2; + int var16 = var7 >> 1; + int var17 = var8 >> 1; + int var18 = var1 - var16; + int var19 = var2 - var17; + var10[var16][var17] = 99; + var9[var16][var17] = 0; + byte var20 = 0; + int var21 = 0; + var11[var20] = var1; + int var27 = var20 + 1; + var12[var20] = var2; + int[][] var22 = var5.flags; + + while (true) { + label265: + while (true) { + int var23; + int var24; + int var25; + int var26; + do { + do { + do { + label242: + do { + if (var27 == var21) { + var6.method1154(var14, var15); + return false; + } + + var14 = var11[var21]; + var15 = var12[var21]; + var21 = var21 + 1 & var13; + var16 = var14 - var18; + var17 = var15 - var19; + var23 = var14 - var5.xInset; + var24 = var15 - var5.yInset; + if (var4.hasArrived(var3, var14, var15, var5)) { + var6.method1154(var14, var15); + return true; + } + + var25 = var9[var16][var17] + 1; + if (var16 > 0 && var10[var16 - 1][var17] == 0 && (var22[var23 - 1][var24] & 19136782) == 0 && (var22[var23 - 1][var3 + var24 - 1] & 19136824) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3 - 1) { + var11[var27] = var14 - 1; + var12[var27] = var15; + var27 = var27 + 1 & var13; + var10[var16 - 1][var17] = 2; + var9[var16 - 1][var17] = var25; + break; + } + + if ((var22[var23 - 1][var24 + var26] & 19136830) != 0) { + break; + } + + ++var26; + } + } + + if (var16 < var7 - var3 && var10[var16 + 1][var17] == 0 && (var22[var3 + var23][var24] & 19136899) == 0 && (var22[var3 + var23][var3 + var24 - 1] & 19136992) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3 - 1) { + var11[var27] = var14 + 1; + var12[var27] = var15; + var27 = var27 + 1 & var13; + var10[var16 + 1][var17] = 8; + var9[var16 + 1][var17] = var25; + break; + } + + if ((var22[var3 + var23][var24 + var26] & 19136995) != 0) { + break; + } + + ++var26; + } + } + + if (var17 > 0 && var10[var16][var17 - 1] == 0 && (var22[var23][var24 - 1] & 19136782) == 0 && (var22[var3 + var23 - 1][var24 - 1] & 19136899) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3 - 1) { + var11[var27] = var14; + var12[var27] = var15 - 1; + var27 = var27 + 1 & var13; + var10[var16][var17 - 1] = 1; + var9[var16][var17 - 1] = var25; + break; + } + + if ((var22[var23 + var26][var24 - 1] & 19136911) != 0) { + break; + } + + ++var26; + } + } + + if (var17 < var8 - var3 && var10[var16][var17 + 1] == 0 && (var22[var23][var3 + var24] & 19136824) == 0 && (var22[var3 + var23 - 1][var3 + var24] & 19136992) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3 - 1) { + var11[var27] = var14; + var12[var27] = var15 + 1; + var27 = var27 + 1 & var13; + var10[var16][var17 + 1] = 4; + var9[var16][var17 + 1] = var25; + break; + } + + if ((var22[var23 + var26][var3 + var24] & 19137016) != 0) { + break; + } + + ++var26; + } + } + + if (var16 > 0 && var17 > 0 && var10[var16 - 1][var17 - 1] == 0 && (var22[var23 - 1][var24 - 1] & 19136782) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3) { + var11[var27] = var14 - 1; + var12[var27] = var15 - 1; + var27 = var27 + 1 & var13; + var10[var16 - 1][var17 - 1] = 3; + var9[var16 - 1][var17 - 1] = var25; + break; + } + + if ((var22[var23 - 1][var26 + (var24 - 1)] & 19136830) != 0 || (var22[var26 + (var23 - 1)][var24 - 1] & 19136911) != 0) { + break; + } + + ++var26; + } + } + + if (var16 < var7 - var3 && var17 > 0 && var10[var16 + 1][var17 - 1] == 0 && (var22[var3 + var23][var24 - 1] & 19136899) == 0) { + var26 = 1; + + while (true) { + if (var26 >= var3) { + var11[var27] = var14 + 1; + var12[var27] = var15 - 1; + var27 = var27 + 1 & var13; + var10[var16 + 1][var17 - 1] = 9; + var9[var16 + 1][var17 - 1] = var25; + break; + } + + if ((var22[var3 + var23][var26 + (var24 - 1)] & 19136995) != 0 || (var22[var23 + var26][var24 - 1] & 19136911) != 0) { + break; + } + + ++var26; + } + } + + if (var16 > 0 && var17 < var8 - var3 && var10[var16 - 1][var17 + 1] == 0 && (var22[var23 - 1][var3 + var24] & 19136824) == 0) { + for (var26 = 1; var26 < var3; ++var26) { + if ((var22[var23 - 1][var26 + var24] & 19136830) != 0 || (var22[var26 + (var23 - 1)][var3 + var24] & 19137016) != 0) { + continue label242; + } + } + + var11[var27] = var14 - 1; + var12[var27] = var15 + 1; + var27 = var27 + 1 & var13; + var10[var16 - 1][var17 + 1] = 6; + var9[var16 - 1][var17 + 1] = var25; + } + } while(var16 >= var7 - var3); + } while(var17 >= var8 - var3); + } while(var10[var16 + 1][var17 + 1] != 0); + } while((var22[var3 + var23][var3 + var24] & 19136992) != 0); + + for (var26 = 1; var26 < var3; ++var26) { + if ((var22[var23 + var26][var3 + var24] & 19137016) != 0 || (var22[var3 + var23][var26 + var24] & 19136995) != 0) { + continue label265; + } + } + + var11[var27] = var14 + 1; + var12[var27] = var15 + 1; + var27 = var27 + 1 & var13; + var10[var16 + 1][var17 + 1] = 12; + var9[var16 + 1][var17 + 1] = var25; + } + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class230.java b/osrs/src/main/java/class230.java new file mode 100644 index 000000000..563f7d03f --- /dev/null +++ b/osrs/src/main/java/class230.java @@ -0,0 +1,67 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Comparator; + +@ObfuscatedName("ip") +public class class230 implements Comparator { + class230() { + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lir;Lir;I)I", + garbageValue = "-1832801643" + ) + int method1175(class225 var1, class225 var2) { + return var1.method1147() - var2.method1147(); + } + + @Export("compare") + @ObfuscatedName("compare") + public int compare(Object var1, Object var2) { + return this.method1175((class225)var1, (class225)var2); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + return super.equals(var1); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(IIIB)V", + garbageValue = "1" + ) + static final void method1176(int var0, int var1, int var2) { + int var3; + for (var3 = 0; var3 < 8; ++var3) { + for (int var4 = 0; var4 < 8; ++var4) { + Tiles.Tiles_heights[var0][var3 + var1][var4 + var2] = 0; + } + } + + if (var1 > 0) { + for (var3 = 1; var3 < 8; ++var3) { + Tiles.Tiles_heights[var0][var1][var3 + var2] = Tiles.Tiles_heights[var0][var1 - 1][var3 + var2]; + } + } + + if (var2 > 0) { + for (var3 = 1; var3 < 8; ++var3) { + Tiles.Tiles_heights[var0][var3 + var1][var2] = Tiles.Tiles_heights[var0][var3 + var1][var2 - 1]; + } + } + + if (var1 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2]; + } else if (var2 > 0 && Tiles.Tiles_heights[var0][var1][var2 - 1] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1][var2 - 1]; + } else if (var1 > 0 && var2 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2 - 1] != 0) { + Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2 - 1]; + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class232.java b/osrs/src/main/java/class232.java new file mode 100644 index 000000000..29452e9a8 --- /dev/null +++ b/osrs/src/main/java/class232.java @@ -0,0 +1,11 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("ik") +public class class232 { + @ObfuscatedName("au") + @Export("Entity_unpackID") + public static int Entity_unpackID(long var0) { + return (int)(var0 >>> 17 & 4294967295L); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class238.java b/osrs/src/main/java/class238.java deleted file mode 100644 index d44028df8..000000000 --- a/osrs/src/main/java/class238.java +++ /dev/null @@ -1,56 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("je") -public class class238 { - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "-27" - ) - static String method1310() { - String var0; - if (class449.clientPreferences.getIsUsernameHidden()) { - String var2 = Login.Login_username; - String var1 = class270.method1538('*', var2.length()); - var0 = var1; - } else { - var0 = Login.Login_username; - } - - return var0; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1067657553" - ) - public static boolean method1309(int var0) { - return (var0 >> 20 & 1) != 0; - } - - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-50" - ) - static int method1311(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 3500) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.getKeyPressed(var3) ? 1 : 0; - return 1; - } else if (var0 == 3501) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.method1106(var3) ? 1 : 0; - return 1; - } else if (var0 == 3502) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.keyHandlerInstance.method1108(var3) ? 1 : 0; - return 1; - } else { - return 2; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class240.java b/osrs/src/main/java/class240.java new file mode 100644 index 000000000..34244f683 --- /dev/null +++ b/osrs/src/main/java/class240.java @@ -0,0 +1,162 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("jb") +public class class240 implements WorldMapSection { + @ObfuscatedName("at") + int field2015; + @ObfuscatedName("ah") + int field2011; + @ObfuscatedName("ar") + int field2014; + @ObfuscatedName("ao") + int field2013; + @ObfuscatedName("ab") + int field2009; + @ObfuscatedName("au") + int field2016; + @ObfuscatedName("aa") + int field2008; + @ObfuscatedName("ac") + int field2010; + @ObfuscatedName("al") + int field2012; + @ObfuscatedName("az") + int field2017; + + class240() { + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljv;B)V", + garbageValue = "16" + ) + @Export("expandBounds") + public void expandBounds(WorldMapArea var1) { + if (var1.regionLowX > this.field2009) { + var1.regionLowX = this.field2009; + } + + if (var1.regionHighX < this.field2009) { + var1.regionHighX = this.field2009; + } + + if (var1.regionLowY > this.field2016) { + var1.regionLowY = this.field2016; + } + + if (var1.regionHighY < this.field2016) { + var1.regionHighY = this.field2016; + } + + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIIB)Z", + garbageValue = "2" + ) + @Export("containsCoord") + public boolean containsCoord(int var1, int var2, int var3) { + if (var1 >= this.field2015 && var1 < this.field2011 + this.field2015) { + return var2 >= (this.field2014 << 6) + (this.field2008 << 3) && var2 <= (this.field2014 << 6) + (this.field2008 << 3) + 7 && var3 >= (this.field2013 << 6) + (this.field2010 << 3) && var3 <= (this.field2013 << 6) + (this.field2010 << 3) + 7; + } else { + return false; + } + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "542110974" + ) + @Export("containsPosition") + public boolean containsPosition(int var1, int var2) { + return var1 >= (this.field2009 << 6) + (this.field2012 << 3) && var1 <= (this.field2009 << 6) + (this.field2012 << 3) + 7 && var2 >= (this.field2016 << 6) + (this.field2017 << 3) && var2 <= (this.field2016 << 6) + (this.field2017 << 3) + 7; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IIIS)[I", + garbageValue = "12300" + ) + @Export("getBorderTileLengths") + public int[] getBorderTileLengths(int var1, int var2, int var3) { + if (!this.containsCoord(var1, var2, var3)) { + return null; + } else { + int[] var4 = new int[]{var2 + (this.field2009 * 64 - this.field2014 * 64) + (this.field2012 * 8 - this.field2008 * 8), var3 + (this.field2016 * 64 - this.field2013 * 64) + (this.field2017 * 8 - this.field2010 * 8)}; + return var4; + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(III)Lmh;", + garbageValue = "-1535299153" + ) + @Export("coord") + public Coord coord(int var1, int var2) { + if (!this.containsPosition(var1, var2)) { + return null; + } else { + int var3 = this.field2014 * 64 - this.field2009 * 64 + (this.field2008 * 8 - this.field2012 * 8) + var1; + int var4 = var2 + (this.field2013 * 64 - this.field2016 * 64) + (this.field2010 * 8 - this.field2017 * 8); + return new Coord(this.field2015, var3, var4); + } + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Luj;B)V", + garbageValue = "-10" + ) + @Export("read") + public void read(Buffer var1) { + this.field2015 = var1.readUnsignedByte(); + this.field2011 = var1.readUnsignedByte(); + this.field2014 = var1.readUnsignedShort(); + this.field2008 = var1.readUnsignedByte(); + this.field2013 = var1.readUnsignedShort(); + this.field2010 = var1.readUnsignedByte(); + this.field2009 = var1.readUnsignedShort(); + this.field2012 = var1.readUnsignedByte(); + this.field2016 = var1.readUnsignedShort(); + this.field2017 = var1.readUnsignedByte(); + this.method1292(); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "7" + ) + void method1292() { + } + + @ObfuscatedName("iq") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-976406979" + ) + static final int method1293(int var0) { + return Math.min(Math.max(var0, 128), 383); + } + + @ObfuscatedName("og") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-28" + ) + static void method1294(int var0) { + SequenceDefinition var1 = DynamicObject.SequenceDefinition_get(var0); + if (var1.isCachedModelIdSet()) { + if (MouseRecorder.method469(var1.SequenceDefinition_cachedModelId) == 2) { + Client.field607.add(var1.SequenceDefinition_cachedModelId); + } + + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class241.java b/osrs/src/main/java/class241.java new file mode 100644 index 000000000..d7fa3bc5b --- /dev/null +++ b/osrs/src/main/java/class241.java @@ -0,0 +1,63 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.net.URL; +import java.util.Date; + +@ObfuscatedName("jr") +public class class241 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-2144241360" + ) + @Export("loadWorlds") + static boolean loadWorlds() { + try { + if (class542.World_request == null) { + class542.World_request = class60.urlRequester.request(new URL(MoveSpeed.field1933)); + } else if (class542.World_request.isDone()) { + byte[] var0 = class542.World_request.getResponse(); + Buffer var1 = new Buffer(var0); + var1.readInt(); + World.World_count = var1.readUnsignedShort(); + class361.World_worlds = new World[World.World_count]; + + World var3; + for (int var2 = 0; var2 < World.World_count; var3.index = var2++) { + var3 = class361.World_worlds[var2] = new World(); + var3.id = var1.readUnsignedShort(); + var3.properties = var1.readInt(); + var3.host = var1.readStringCp1252NullTerminated(); + var3.activity = var1.readStringCp1252NullTerminated(); + var3.location = var1.readUnsignedByte(); + var3.population = var1.readShort(); + } + + class181.sortWorlds(class361.World_worlds, 0, class361.World_worlds.length - 1, World.World_sortOption1, World.World_sortOption2); + class542.World_request = null; + return true; + } + } catch (Exception var4) { + var4.printStackTrace(); + class542.World_request = null; + } + + return false; + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(Ljava/util/Date;I)Z", + garbageValue = "-209283109" + ) + static boolean method1296(Date var0) { + java.util.Calendar var2 = java.util.Calendar.getInstance(); + var2.set(2, 0); + var2.set(5, 1); + var2.set(1, 1900); + Date var1 = var2.getTime(); + return var0.after(var1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class243.java b/osrs/src/main/java/class243.java deleted file mode 100644 index 7b2534b8d..000000000 --- a/osrs/src/main/java/class243.java +++ /dev/null @@ -1,3168 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ji") -public class class243 extends class228 { - @ObfuscatedSignature( - descriptor = "(Ljl;)V" - ) - class243(Clips var1) { - super(var1); - } - - @ObfuscatedName("ai") - @Export("vmethod1374") - void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12) { - int var13 = var5 - var4; - int var14 = var2 - var1; - int var15 = var6 - var4; - int var16 = var3 - var1; - int var17 = var11 - var10; - int var18 = var12 - var10; - int var19; - if (var3 != var2) { - var19 = (var6 - var5 << 14) / (var3 - var2); - } else { - var19 = 0; - } - - int var20; - if (var2 != var1) { - var20 = (var13 << 14) / var14; - } else { - var20 = 0; - } - - int var21; - if (var3 != var1) { - var21 = (var15 << 14) / var16; - } else { - var21 = 0; - } - - int var22 = var13 * var16 - var15 * var14; - if (var22 != 0) { - int var23 = (var17 * var16 - var18 * var14 << 8) / var22; - int var24 = (var18 * var13 - var17 * var15 << 8) / var22; - int[] var25 = super.field2047.Rasterizer3D_rowOffsets; - int var26 = super.field2047.field2269; - if (var1 <= var2 && var1 <= var3) { - if (var1 < var26) { - if (var2 > var26) { - var2 = var26; - } - - if (var3 > var26) { - var3 = var26; - } - - var10 = var23 + ((var10 << 8) - var23 * var4); - if (var2 < var3) { - var6 = var4 <<= 14; - if (var1 < 0) { - var6 -= var21 * var1; - var4 -= var20 * var1; - var10 -= var24 * var1; - var1 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var19 * var2; - var2 = 0; - } - - if (var2 != var1 && var21 < var20 || var2 == var1 && var21 > var19) { - var3 -= var2; - var2 -= var1; - var1 = var25[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var5 >> 14, var10, var23); - var6 += var21; - var5 += var19; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var23); - var6 += var21; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var3 -= var2; - var2 -= var1; - var1 = var25[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var6 >> 14, var10, var23); - var6 += var21; - var5 += var19; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var23); - var6 += var21; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var5 = var4 <<= 14; - if (var1 < 0) { - var5 -= var21 * var1; - var4 -= var20 * var1; - var10 -= var24 * var1; - var1 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var19; - var3 = 0; - } - - if (var3 != var1 && var21 < var20 || var3 == var1 && var19 > var20) { - var2 -= var3; - var3 -= var1; - var1 = var25[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var23); - var6 += var19; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var10, var23); - var5 += var21; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var2 -= var3; - var3 -= var1; - var1 = var25[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var23); - var6 += var19; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var10, var23); - var5 += var21; - var4 += var20; - var10 += var24; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } else if (var2 <= var3) { - if (var2 < var26) { - if (var3 > var26) { - var3 = var26; - } - - if (var1 > var26) { - var1 = var26; - } - - var11 = (var11 << 8) - var5 * var23 + var23; - if (var3 < var1) { - var4 = var5 <<= 14; - if (var2 < 0) { - var4 -= var20 * var2; - var5 -= var19 * var2; - var11 -= var24 * var2; - var2 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var21; - var3 = 0; - } - - if (var3 != var2 && var20 < var19 || var3 == var2 && var20 > var21) { - var1 -= var3; - var3 -= var2; - var2 = var25[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var6 >> 14, var11, var23); - var4 += var20; - var6 += var21; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var23); - var4 += var20; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var1 -= var3; - var3 -= var2; - var2 = var25[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var4 >> 14, var11, var23); - var4 += var20; - var6 += var21; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var23); - var4 += var20; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var6 = var5 <<= 14; - if (var2 < 0) { - var6 -= var20 * var2; - var5 -= var19 * var2; - var11 -= var24 * var2; - var2 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var21 * var1; - var1 = 0; - } - - if (var20 < var19) { - var3 -= var1; - var1 -= var2; - var2 = var25[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var23); - var4 += var21; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var5 >> 14, var11, var23); - var6 += var20; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var3 -= var1; - var1 -= var2; - var2 = var25[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var23); - var4 += var21; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var6 >> 14, var11, var23); - var6 += var20; - var5 += var19; - var11 += var24; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } else if (var3 < var26) { - if (var1 > var26) { - var1 = var26; - } - - if (var2 > var26) { - var2 = var26; - } - - var12 = var23 + ((var12 << 8) - var23 * var6); - if (var1 < var2) { - var5 = var6 <<= 14; - if (var3 < 0) { - var5 -= var3 * var19; - var6 -= var3 * var21; - var12 -= var3 * var24; - var3 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var20 * var1; - var1 = 0; - } - - if (var19 < var21) { - var2 -= var1; - var1 -= var3; - var3 = var25[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var4 >> 14, var12, var23); - var5 += var19; - var4 += var20; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var23); - var5 += var19; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var2 -= var1; - var1 -= var3; - var3 = var25[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var5 >> 14, var12, var23); - var5 += var19; - var4 += var20; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var23); - var5 += var19; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var4 = var6 <<= 14; - if (var3 < 0) { - var4 -= var3 * var19; - var6 -= var3 * var21; - var12 -= var3 * var24; - var3 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var20 * var2; - var2 = 0; - } - - if (var19 < var21) { - var1 -= var2; - var2 -= var3; - var3 = var25[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var23); - var5 += var20; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var6 >> 14, var12, var23); - var4 += var19; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var1 -= var2; - var2 -= var3; - var3 = var25[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var23); - var5 += var20; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1354(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var4 >> 14, var12, var23); - var4 += var19; - var6 += var21; - var12 += var24; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } - } - - @ObfuscatedName("az") - @Export("vmethod1366") - void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10) { - int var11 = 0; - if (var2 != var1) { - var11 = (var5 - var4 << 14) / (var2 - var1); - } - - int var12 = 0; - if (var3 != var2) { - var12 = (var6 - var5 << 14) / (var3 - var2); - } - - int var13 = 0; - if (var3 != var1) { - var13 = (var4 - var6 << 14) / (var1 - var3); - } - - int[] var14 = super.field2047.Rasterizer3D_rowOffsets; - int var15 = super.field2047.field2269; - if (var1 <= var2 && var1 <= var3) { - if (var1 < var15) { - if (var2 > var15) { - var2 = var15; - } - - if (var3 > var15) { - var3 = var15; - } - - if (var2 < var3) { - var6 = var4 <<= 14; - if (var1 < 0) { - var6 -= var13 * var1; - var4 -= var11 * var1; - var1 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var12 * var2; - var2 = 0; - } - - if (var2 != var1 && var13 < var11 || var2 == var1 && var13 > var12) { - var3 -= var2; - var2 -= var1; - var1 = var14[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var5 >> 14); - var6 += var13; - var5 += var12; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14); - var6 += var13; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var3 -= var2; - var2 -= var1; - var1 = var14[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var6 >> 14); - var6 += var13; - var5 += var12; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14); - var6 += var13; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var5 = var4 <<= 14; - if (var1 < 0) { - var5 -= var13 * var1; - var4 -= var11 * var1; - var1 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var12; - var3 = 0; - } - - if ((var3 == var1 || var13 >= var11) && (var3 != var1 || var12 <= var11)) { - var2 -= var3; - var3 -= var1; - var1 = var14[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14); - var6 += var12; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var5 >> 14); - var5 += var13; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var2 -= var3; - var3 -= var1; - var1 = var14[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14); - var6 += var12; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var4 >> 14); - var5 += var13; - var4 += var11; - var1 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } else if (var2 <= var3) { - if (var2 < var15) { - if (var3 > var15) { - var3 = var15; - } - - if (var1 > var15) { - var1 = var15; - } - - if (var3 < var1) { - var4 = var5 <<= 14; - if (var2 < 0) { - var4 -= var11 * var2; - var5 -= var12 * var2; - var2 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var13; - var3 = 0; - } - - if (var3 != var2 && var11 < var12 || var3 == var2 && var11 > var13) { - var1 -= var3; - var3 -= var2; - var2 = var14[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var6 >> 14); - var4 += var11; - var6 += var13; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14); - var4 += var11; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var1 -= var3; - var3 -= var2; - var2 = var14[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var4 >> 14); - var4 += var11; - var6 += var13; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14); - var4 += var11; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var6 = var5 <<= 14; - if (var2 < 0) { - var6 -= var11 * var2; - var5 -= var12 * var2; - var2 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var13 * var1; - var1 = 0; - } - - if (var11 < var12) { - var3 -= var1; - var1 -= var2; - var2 = var14[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14); - var4 += var13; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var5 >> 14); - var6 += var11; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var3 -= var1; - var1 -= var2; - var2 = var14[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14); - var4 += var13; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var6 >> 14); - var6 += var11; - var5 += var12; - var2 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } else if (var3 < var15) { - if (var1 > var15) { - var1 = var15; - } - - if (var2 > var15) { - var2 = var15; - } - - if (var1 < var2) { - var5 = var6 <<= 14; - if (var3 < 0) { - var5 -= var3 * var12; - var6 -= var3 * var13; - var3 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var11 * var1; - var1 = 0; - } - - if (var12 < var13) { - var2 -= var1; - var1 -= var3; - var3 = var14[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var4 >> 14); - var5 += var12; - var4 += var11; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14); - var5 += var12; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var2 -= var1; - var1 -= var3; - var3 = var14[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var5 >> 14); - var5 += var12; - var4 += var11; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14); - var5 += var12; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - } else { - var4 = var6 <<= 14; - if (var3 < 0) { - var4 -= var3 * var12; - var6 -= var3 * var13; - var3 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var11 * var2; - var2 = 0; - } - - if (var12 < var13) { - var1 -= var2; - var2 -= var3; - var3 = var14[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14); - var5 += var11; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var6 >> 14); - var4 += var12; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } else { - var1 -= var2; - var2 -= var3; - var3 = var14[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14); - var5 += var11; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - - this.method1356(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var4 >> 14); - var4 += var12; - var6 += var13; - var3 += Rasterizer2D.Rasterizer2D_width; - } - } - } - } - } - - @ObfuscatedName("ap") - void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { - int[] var23 = super.field2047.Rasterizer3D_textureLoader.getTexturePixels(var22); - int var24; - if (var23 == null) { - var24 = super.field2047.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); - this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class228.method1222(var24, var10), class228.method1222(var24, var11), class228.method1222(var24, var12)); - } else { - super.field2044 = super.field2047.Rasterizer3D_textureLoader.isLowDetail(var22); - super.field2045 = super.field2047.Rasterizer3D_textureLoader.vmethod3989(var22); - var24 = var5 - var4; - int var25 = var2 - var1; - int var26 = var6 - var4; - int var27 = var3 - var1; - int var28 = var11 - var10; - int var29 = var12 - var10; - int var30 = 0; - if (var2 != var1) { - var30 = (var5 - var4 << 14) / (var2 - var1); - } - - int var31 = 0; - if (var3 != var2) { - var31 = (var6 - var5 << 14) / (var3 - var2); - } - - int var32 = 0; - if (var3 != var1) { - var32 = (var4 - var6 << 14) / (var1 - var3); - } - - int var33 = var24 * var27 - var26 * var25; - if (var33 != 0) { - int var34 = (var28 * var27 - var29 * var25 << 9) / var33; - int var35 = (var29 * var24 - var28 * var26 << 9) / var33; - int var36 = super.field2047.field2280; - var14 = var13 - var14; - var17 = var16 - var17; - var20 = var19 - var20; - var15 -= var13; - var18 -= var16; - var21 -= var19; - int var37 = var15 * var16 - var18 * var13 << 14; - int var38 = (int)(((long)(var18 * var19 - var16 * var21) << 3 << 14) / (long)var36); - int var39 = (int)(((long)(var13 * var21 - var19 * var15) << 14) / (long)var36); - int var40 = var16 * var14 - var13 * var17 << 14; - int var41 = (int)(((long)(var19 * var17 - var16 * var20) << 3 << 14) / (long)var36); - int var42 = (int)(((long)(var13 * var20 - var19 * var14) << 14) / (long)var36); - int var43 = var17 * var15 - var18 * var14 << 14; - int var44 = (int)(((long)(var18 * var20 - var17 * var21) << 3 << 14) / (long)var36); - int var45 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var36); - int[] var46 = super.field2047.Rasterizer3D_rowOffsets; - int var47 = super.field2047.field2269; - int var48; - if (var1 <= var2 && var1 <= var3) { - if (var1 < var47) { - if (var2 > var47) { - var2 = var47; - } - - if (var3 > var47) { - var3 = var47; - } - - var10 = var34 + ((var10 << 9) - var34 * var4); - if (var2 < var3) { - var6 = var4 <<= 14; - if (var1 < 0) { - var6 -= var32 * var1; - var4 -= var30 * var1; - var10 -= var35 * var1; - var1 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var31 * var2; - var2 = 0; - } - - var48 = var1 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if ((var2 == var1 || var32 >= var30) && (var2 != var1 || var32 <= var31)) { - var3 -= var2; - var2 -= var1; - var1 = var46[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var5 += var31; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var3 -= var2; - var2 -= var1; - var1 = var46[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var5 += var31; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var5 = var4 <<= 14; - if (var1 < 0) { - var5 -= var32 * var1; - var4 -= var30 * var1; - var10 -= var35 * var1; - var1 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var31; - var3 = 0; - } - - var48 = var1 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if (var3 != var1 && var32 < var30 || var3 == var1 && var31 > var30) { - var2 -= var3; - var3 -= var1; - var1 = var46[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var31; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var5 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var2 -= var3; - var3 -= var1; - var1 = var46[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var31; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var5 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } else if (var2 <= var3) { - if (var2 < var47) { - if (var3 > var47) { - var3 = var47; - } - - if (var1 > var47) { - var1 = var47; - } - - var11 = var34 + ((var11 << 9) - var5 * var34); - if (var3 < var1) { - var4 = var5 <<= 14; - if (var2 < 0) { - var4 -= var30 * var2; - var5 -= var31 * var2; - var11 -= var35 * var2; - var2 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var32; - var3 = 0; - } - - var48 = var2 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if ((var3 == var2 || var30 >= var31) && (var3 != var2 || var30 <= var32)) { - var1 -= var3; - var3 -= var2; - var2 = var46[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var6 += var32; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var1 -= var3; - var3 -= var2; - var2 = var46[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var6 += var32; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var6 = var5 <<= 14; - if (var2 < 0) { - var6 -= var30 * var2; - var5 -= var31 * var2; - var11 -= var35 * var2; - var2 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var32 * var1; - var1 = 0; - } - - var48 = var2 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if (var30 < var31) { - var3 -= var1; - var1 -= var2; - var2 = var46[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var32; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var6 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var3 -= var1; - var1 -= var2; - var2 = var46[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var32; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var6 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } else if (var3 < var47) { - if (var1 > var47) { - var1 = var47; - } - - if (var2 > var47) { - var2 = var47; - } - - var12 = (var12 << 9) - var34 * var6 + var34; - if (var1 < var2) { - var5 = var6 <<= 14; - if (var3 < 0) { - var5 -= var3 * var31; - var6 -= var3 * var32; - var12 -= var3 * var35; - var3 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var30 * var1; - var1 = 0; - } - - var48 = var3 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if (var31 < var32) { - var2 -= var1; - var1 -= var3; - var3 = var46[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var4 += var30; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var2 -= var1; - var1 -= var3; - var3 = var46[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var4 += var30; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var4 = var6 <<= 14; - if (var3 < 0) { - var4 -= var3 * var31; - var6 -= var3 * var32; - var12 -= var3 * var35; - var3 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var30 * var2; - var2 = 0; - } - - var48 = var3 - super.field2047.field2274; - var37 += var39 * var48; - var40 += var42 * var48; - var43 += var45 * var48; - if (var31 < var32) { - var1 -= var2; - var2 -= var3; - var3 = var46[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var30; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var4 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var1 -= var2; - var2 -= var3; - var3 = var46[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var30; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1358(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var4 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } - } - } - - @ObfuscatedName("aa") - void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { - int[] var23 = super.field2047.Rasterizer3D_textureLoader.getTexturePixels(var22); - int var24; - if (var23 == null) { - var24 = super.field2047.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); - this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class228.method1222(var24, var10), class228.method1222(var24, var11), class228.method1222(var24, var12)); - } else { - super.field2044 = super.field2047.Rasterizer3D_textureLoader.isLowDetail(var22); - super.field2045 = super.field2047.Rasterizer3D_textureLoader.vmethod3989(var22); - var24 = var5 - var4; - int var25 = var2 - var1; - int var26 = var6 - var4; - int var27 = var3 - var1; - int var28 = var11 - var10; - int var29 = var12 - var10; - int var30 = 0; - if (var2 != var1) { - var30 = (var5 - var4 << 14) / (var2 - var1); - } - - int var31 = 0; - if (var3 != var2) { - var31 = (var6 - var5 << 14) / (var3 - var2); - } - - int var32 = 0; - if (var3 != var1) { - var32 = (var4 - var6 << 14) / (var1 - var3); - } - - int var33 = var24 * var27 - var26 * var25; - if (var33 != 0) { - int var34 = (var28 * var27 - var29 * var25 << 9) / var33; - int var35 = (var29 * var24 - var28 * var26 << 9) / var33; - int var36 = super.field2047.field2280; - var14 = var13 - var14; - var17 = var16 - var17; - var20 = var19 - var20; - var15 -= var13; - var18 -= var16; - var21 -= var19; - int var37 = var15 * var16 - var18 * var13 << 14; - int var38 = (int)(((long)(var18 * var19 - var16 * var21) << 14) / (long)var36); - int var39 = (int)(((long)(var13 * var21 - var19 * var15) << 14) / (long)var36); - int var40 = var16 * var14 - var13 * var17 << 14; - int var41 = (int)(((long)(var19 * var17 - var16 * var20) << 14) / (long)var36); - int var42 = (int)(((long)(var13 * var20 - var19 * var14) << 14) / (long)var36); - int var43 = var17 * var15 - var18 * var14 << 14; - int var44 = (int)(((long)(var18 * var20 - var17 * var21) << 14) / (long)var36); - int var45 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var36); - int[] var46 = super.field2047.Rasterizer3D_rowOffsets; - int var47 = super.field2047.field2269; - int var48 = super.field2047.field2274; - int var49; - if (var1 <= var2 && var1 <= var3) { - if (var1 < var47) { - if (var2 > var47) { - var2 = var47; - } - - if (var3 > var47) { - var3 = var47; - } - - var10 = var34 + ((var10 << 9) - var34 * var4); - if (var2 < var3) { - var6 = var4 <<= 14; - if (var1 < 0) { - var6 -= var32 * var1; - var4 -= var30 * var1; - var10 -= var35 * var1; - var1 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var31 * var2; - var2 = 0; - } - - var49 = var1 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if ((var2 == var1 || var32 >= var30) && (var2 != var1 || var32 <= var31)) { - var3 -= var2; - var2 -= var1; - var1 = var46[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var5 += var31; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var3 -= var2; - var2 -= var1; - var1 = var46[var1]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var5 += var31; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var5 = var4 <<= 14; - if (var1 < 0) { - var5 -= var32 * var1; - var4 -= var30 * var1; - var10 -= var35 * var1; - var1 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var31; - var3 = 0; - } - - var49 = var1 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if (var3 != var1 && var32 < var30 || var3 == var1 && var31 > var30) { - var2 -= var3; - var3 -= var1; - var1 = var46[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var31; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var5 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var2 -= var3; - var3 -= var1; - var1 = var46[var1]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var6 += var31; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); - var5 += var32; - var4 += var30; - var10 += var35; - var1 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } else if (var2 <= var3) { - if (var2 < var47) { - if (var3 > var47) { - var3 = var47; - } - - if (var1 > var47) { - var1 = var47; - } - - var11 = var34 + ((var11 << 9) - var5 * var34); - if (var3 < var1) { - var4 = var5 <<= 14; - if (var2 < 0) { - var4 -= var30 * var2; - var5 -= var31 * var2; - var11 -= var35 * var2; - var2 = 0; - } - - var6 <<= 14; - if (var3 < 0) { - var6 -= var3 * var32; - var3 = 0; - } - - var49 = var2 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if ((var3 == var2 || var30 >= var31) && (var3 != var2 || var30 <= var32)) { - var1 -= var3; - var3 -= var2; - var2 = var46[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var6 += var32; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var1 -= var3; - var3 -= var2; - var2 = var46[var2]; - - while (true) { - --var3; - if (var3 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var6 += var32; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var6 = var5 <<= 14; - if (var2 < 0) { - var6 -= var30 * var2; - var5 -= var31 * var2; - var11 -= var35 * var2; - var2 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var32 * var1; - var1 = 0; - } - - var49 = var2 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if (var30 < var31) { - var3 -= var1; - var1 -= var2; - var2 = var46[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var32; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var6 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var3 -= var1; - var1 -= var2; - var2 = var46[var2]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var3; - if (var3 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var4 += var32; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); - var6 += var30; - var5 += var31; - var11 += var35; - var2 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } else if (var3 < var47) { - if (var1 > var47) { - var1 = var47; - } - - if (var2 > var47) { - var2 = var47; - } - - var12 = (var12 << 9) - var34 * var6 + var34; - if (var1 < var2) { - var5 = var6 <<= 14; - if (var3 < 0) { - var5 -= var3 * var31; - var6 -= var3 * var32; - var12 -= var3 * var35; - var3 = 0; - } - - var4 <<= 14; - if (var1 < 0) { - var4 -= var30 * var1; - var1 = 0; - } - - var49 = var3 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if (var31 < var32) { - var2 -= var1; - var1 -= var3; - var3 = var46[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var4 += var30; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var2 -= var1; - var1 -= var3; - var3 = var46[var3]; - - while (true) { - --var1; - if (var1 < 0) { - while (true) { - --var2; - if (var2 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var4 += var30; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } else { - var4 = var6 <<= 14; - if (var3 < 0) { - var4 -= var3 * var31; - var6 -= var3 * var32; - var12 -= var3 * var35; - var3 = 0; - } - - var5 <<= 14; - if (var2 < 0) { - var5 -= var30 * var2; - var2 = 0; - } - - var49 = var3 - var48; - var37 += var39 * var49; - var40 += var42 * var49; - var43 += var45 * var49; - if (var31 < var32) { - var1 -= var2; - var2 -= var3; - var3 = var46[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var30; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var4 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } else { - var1 -= var2; - var2 -= var3; - var3 = var46[var3]; - - while (true) { - --var2; - if (var2 < 0) { - while (true) { - --var1; - if (var1 < 0) { - return; - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var5 += var30; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - - this.method1360(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); - var4 += var31; - var6 += var32; - var12 += var35; - var3 += Rasterizer2D.Rasterizer2D_width; - var37 += var39; - var40 += var42; - var43 += var45; - } - } - } - } - } - } - } - - @ObfuscatedName("bf") - final void method1354(int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - if (super.field2047.field2268) { - if (var6 > super.field2047.field2276) { - var6 = super.field2047.field2276; - } - - if (var5 < 0) { - var5 = 0; - } - } - - if (var5 < var6) { - var2 += var5; - var7 += var5 * var8; - int var9; - int var10; - int var11; - int var12; - if (super.field2047.field2279) { - var4 = var6 - var5 >> 2; - var8 <<= 2; - if (super.field2047.field2275 == 0) { - if (var4 > 0) { - do { - var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var9]; - var7 += var8; - var1[var2++] = var3; - var1[var2++] = var3; - var1[var2++] = var3; - var1[var2++] = var3; - --var4; - } while(var4 > 0); - } - - var4 = var6 - var5 & 3; - if (var4 > 0) { - var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var9]; - - do { - var1[var2++] = var3; - --var4; - } while(var4 > 0); - } - } else { - var9 = super.field2047.field2275; - var10 = 256 - super.field2047.field2275; - if (var4 > 0) { - do { - var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var11]; - var7 += var8; - var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - --var4; - } while(var4 > 0); - } - - var4 = var6 - var5 & 3; - if (var4 > 0) { - var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var11]; - var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); - - do { - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - --var4; - } while(var4 > 0); - } - } - - } else { - var4 = var6 - var5; - if (super.field2047.field2275 == 0) { - do { - var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var1[var2++] = super.field2046[var9]; - var7 += var8; - --var4; - } while(var4 > 0); - } else { - var9 = super.field2047.field2275; - var10 = 256 - super.field2047.field2275; - - do { - var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var11]; - var7 += var8; - var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); - var12 = var1[var2]; - var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); - --var4; - } while(var4 > 0); - } - - } - } - } - - @ObfuscatedName("bq") - void method1356(int[] var1, int var2, int var3, int var4, int var5, int var6) { - if (super.field2047.field2268) { - if (var6 > super.field2047.field2276) { - var6 = super.field2047.field2276; - } - - if (var5 < 0) { - var5 = 0; - } - } - - if (var5 < var6) { - var2 += var5; - var4 = var6 - var5 >> 2; - if (super.field2047.field2275 != 0) { - if (super.field2047.field2275 == 254) { - while (true) { - --var4; - if (var4 < 0) { - var4 = var6 - var5 & 3; - - while (true) { - --var4; - if (var4 < 0) { - return; - } - - var1[var2++] = var1[var2]; - } - } - - var1[var2++] = var1[var2]; - var1[var2++] = var1[var2]; - var1[var2++] = var1[var2]; - var1[var2++] = var1[var2]; - } - } else { - int var7 = super.field2047.field2275; - int var8 = 256 - super.field2047.field2275; - var3 = ((var3 & 16711935) * var8 >> 8 & 16711935) + (var8 * (var3 & 65280) >> 8 & 65280); - - while (true) { - --var4; - int var9; - if (var4 < 0) { - var4 = var6 - var5 & 3; - - while (true) { - --var4; - if (var4 < 0) { - return; - } - - var9 = var1[var2]; - var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); - } - } - - var9 = var1[var2]; - var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); - var9 = var1[var2]; - var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); - var9 = var1[var2]; - var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); - var9 = var1[var2]; - var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); - } - } - } else { - while (true) { - --var4; - if (var4 < 0) { - var4 = var6 - var5 & 3; - - while (true) { - --var4; - if (var4 < 0) { - return; - } - - var1[var2++] = var3; - } - } - - var1[var2++] = var3; - var1[var2++] = var3; - var1[var2++] = var3; - var1[var2++] = var3; - } - } - } - } - - @ObfuscatedName("ba") - void method1358(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { - if (super.field2047.field2268) { - if (var7 > super.field2047.field2276) { - var7 = super.field2047.field2276; - } - - if (var6 < 0) { - var6 = 0; - } - } - - if (var6 < var7) { - var5 += var6; - var8 += var9 * var6; - int var18 = var7 - var6; - int var16; - int var10000; - int var17; - int var19; - int var20; - int var21; - int var22; - int var23; - int var24; - if (super.field2044) { - var24 = var6 - super.field2047.field2272; - var10 += (var13 >> 3) * var24; - var11 += var24 * (var14 >> 3); - var12 += (var15 >> 3) * var24; - var23 = var12 >> 12; - if (var23 != 0) { - var19 = var10 / var23; - var20 = var11 / var23; - if (var19 < 0) { - var19 = 0; - } else if (var19 > 4032) { - var19 = 4032; - } - } else { - var19 = 0; - var20 = 0; - } - - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 12; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 4032) { - var21 = 4032; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 20) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); - var18 >>= 3; - var9 <<= 3; - var16 = var8 >> 8; - if (super.field2045) { - if (var18 > 0) { - do { - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var10000 = var3 + var17; - var19 = var21; - var20 = var22; - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 12; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 4032) { - var21 = 4032; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 20) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - --var18; - } while(var18 > 0); - } - } else { - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var10000 = var3 + var17; - var19 = var21; - var20 = var22; - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 12; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 4032) { - var21 = 4032; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 20) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - --var18; - } while(var18 > 0); - } - } - } else { - var24 = var6 - super.field2047.field2272; - var10 += (var13 >> 3) * var24; - var11 += var24 * (var14 >> 3); - var12 += (var15 >> 3) * var24; - var23 = var12 >> 14; - if (var23 != 0) { - var19 = var10 / var23; - var20 = var11 / var23; - if (var19 < 0) { - var19 = 0; - } else if (var19 > 16256) { - var19 = 16256; - } - } else { - var19 = 0; - var20 = 0; - } - - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 14; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 16256) { - var21 = 16256; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 18) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); - var18 >>= 3; - var9 <<= 3; - var16 = var8 >> 8; - if (super.field2045) { - if (var18 > 0) { - do { - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var10000 = var3 + var17; - var19 = var21; - var20 = var22; - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 14; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 16256) { - var21 = 16256; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 18) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - --var18; - } while(var18 > 0); - } - } else { - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var10000 = var3 + var17; - var19 = var21; - var20 = var22; - var10 += var13; - var11 += var14; - var12 += var15; - var23 = var12 >> 14; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - if (var21 < 0) { - var21 = 0; - } else if (var21 > 16256) { - var21 = 16256; - } - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 18) + var20; - var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - --var18; - } while(var18 > 0); - } - } - } - - } - } - - @ObfuscatedName("bl") - void method1360(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { - if (super.field2047.field2268) { - if (var7 > super.field2047.field2276) { - var7 = super.field2047.field2276; - } - - if (var6 < 0) { - var6 = 0; - } - } - - if (var6 < var7) { - var5 += var6; - var8 += var9 * var6; - int var18 = var7 - var6; - int var16; - int var17; - int var19; - int var20; - int var21; - int var22; - int var23; - int var24; - if (super.field2044) { - var24 = var6 - super.field2047.field2272; - var10 += var13 * var24; - var11 += var24 * var14; - var12 += var24 * var15; - var23 = var12 >> 12; - if (var23 != 0) { - var19 = var10 / var23; - var20 = var11 / var23; - } else { - var19 = 0; - var20 = 0; - } - - var10 += var13 * var18; - var11 += var18 * var14; - var12 += var18 * var15; - var23 = var12 >> 12; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 20) + var20; - var17 = (var22 - var20) / var18 + ((var21 - var19) / var18 << 20); - var18 >>= 3; - var9 <<= 3; - var16 = var8 >> 8; - if (super.field2045) { - if (var18 > 0) { - do { - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - var4 = var2[(var3 & 4032) + (var3 >>> 26)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - --var18; - } while(var18 > 0); - } - } else { - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - --var18; - } while(var18 > 0); - } - } - } else { - var24 = var6 - super.field2047.field2272; - var10 += var13 * var24; - var11 += var24 * var14; - var12 += var24 * var15; - var23 = var12 >> 14; - if (var23 != 0) { - var19 = var10 / var23; - var20 = var11 / var23; - } else { - var19 = 0; - var20 = 0; - } - - var10 += var13 * var18; - var11 += var18 * var14; - var12 += var18 * var15; - var23 = var12 >> 14; - if (var23 != 0) { - var21 = var10 / var23; - var22 = var11 / var23; - } else { - var21 = 0; - var22 = 0; - } - - var3 = (var19 << 18) + var20; - var17 = (var22 - var20) / var18 + ((var21 - var19) / var18 << 18); - var18 >>= 3; - var9 <<= 3; - var16 = var8 >> 8; - if (super.field2045) { - if (var18 > 0) { - do { - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - var4 = var2[(var3 & 16256) + (var3 >>> 25)]; - var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - var3 += var17; - --var18; - } while(var18 > 0); - } - } else { - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - var8 += var9; - var16 = var8 >> 8; - --var18; - } while(var18 > 0); - } - - var18 = var7 - var6 & 7; - if (var18 > 0) { - do { - if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { - var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; - } - - ++var5; - var3 += var17; - --var18; - } while(var18 > 0); - } - } - } - - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class250.java b/osrs/src/main/java/class250.java new file mode 100644 index 000000000..d53936c43 --- /dev/null +++ b/osrs/src/main/java/class250.java @@ -0,0 +1,105 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Iterator; + +@ObfuscatedName("je") +public class class250 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lje;" + ) + static final class250 field2076; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lje;" + ) + static final class250 field2075; + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Luz;" + ) + @Export("leftTitleSprite") + static SpritePixels leftTitleSprite; + @ObfuscatedName("ar") + final int field2077; + + static { + field2076 = new class250(0); + field2075 = new class250(1); + } + + class250(int var1) { + this.field2077 = var1; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "([BIILkf;[Liw;B)V", + garbageValue = "-28" + ) + static final void method1333(byte[] var0, int var1, int var2, Scene var3, CollisionMap[] var4) { + Buffer var5 = new Buffer(var0); + int var6 = -1; + + while (true) { + int var7 = var5.readIncrSmallSmart(); + if (var7 == 0) { + return; + } + + var6 += var7; + int var8 = 0; + + while (true) { + int var9 = var5.readUShortSmart(); + if (var9 == 0) { + break; + } + + var8 += var9 - 1; + int var10 = var8 & 63; + int var11 = var8 >> 6 & 63; + int var12 = var8 >> 12; + int var13 = var5.readUnsignedByte(); + int var14 = var13 >> 2; + int var15 = var13 & 3; + int var16 = var11 + var1; + int var17 = var10 + var2; + if (var16 > 0 && var17 > 0 && var16 < 103 && var17 < 103) { + int var18 = var12; + if ((Tiles.Tiles_renderFlags[1][var16][var17] & 2) == 2) { + var18 = var12 - 1; + } + + CollisionMap var19 = null; + if (var18 >= 0) { + var19 = var4[var18]; + } + + Interpreter.addObjects(var12, var16, var17, var6, var15, var14, var3, var19); + } + } + } + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "205742925" + ) + static String method1332() { + StringBuilder var0 = new StringBuilder(); + + Message var2; + for (Iterator var1 = Messages.Messages_hashTable.iterator(); var1.hasNext(); var0.append(var2.text).append('\n')) { + var2 = (Message)var1.next(); + if (var2.sender != null && !var2.sender.isEmpty()) { + var0.append(var2.sender).append(':'); + } + } + + return var0.toString(); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class251.java b/osrs/src/main/java/class251.java new file mode 100644 index 000000000..e1613607d --- /dev/null +++ b/osrs/src/main/java/class251.java @@ -0,0 +1,97 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Iterator; + +@ObfuscatedName("jd") +public class class251 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Ljd;" + ) + static final class251 field2079; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Ljd;" + ) + static final class251 field2078; + @ObfuscatedName("ar") + final int field2080; + + static { + field2079 = new class251(0); + field2078 = new class251(1); + } + + class251(int var1) { + this.field2080 = var1; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "([FIFI)F", + garbageValue = "-1267695907" + ) + static float method1335(float[] var0, int var1, float var2) { + float var3 = var0[var1]; + + for (int var4 = var1 - 1; var4 >= 0; --var4) { + var3 = var0[var4] + var2 * var3; + } + + return var3; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1945515950" + ) + public static void method1334(int var0) { + if (!class316.musicSongs.isEmpty()) { + Iterator var1 = class316.musicSongs.iterator(); + + while (var1.hasNext()) { + MusicSong var2 = (MusicSong)var1.next(); + if (var2 != null) { + var2.musicTrackVolume = var0; + } + } + + MusicSong var3 = (MusicSong)class316.musicSongs.get(0); + if (var3 != null && var3.midiPcmStream != null && var3.midiPcmStream.isReady() && !var3.field2884) { + var3.midiPcmStream.setPcmStreamVolume(var0); + var3.field2886 = (float)var0; + } + } + + } + + @ObfuscatedName("ne") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;ZB)Ljava/lang/String;", + garbageValue = "24" + ) + static String method1336(String var0, boolean var1) { + String var2 = var1 ? "https://" : "http://"; + if (Client.gameBuild == 1) { + var0 = var0 + "-wtrc"; + } else if (Client.gameBuild == 2) { + var0 = var0 + "-wtqa"; + } else if (Client.gameBuild == 3) { + var0 = var0 + "-wtwip"; + } else if (Client.gameBuild == 5) { + var0 = var0 + "-wti"; + } else if (Client.gameBuild == 4) { + var0 = "local"; + } + + String var3 = ""; + if (MenuAction.param9 != null) { + var3 = "/p=" + MenuAction.param9; + } + + String var4 = "runescape.com"; + return var2 + var0 + "." + var4 + "/l=" + class85.clientLanguage + "/a=" + DevicePcmPlayerProvider.field66 + var3 + "/"; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class252.java b/osrs/src/main/java/class252.java new file mode 100644 index 000000000..fbc086d4f --- /dev/null +++ b/osrs/src/main/java/class252.java @@ -0,0 +1,19 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ji") +public class class252 { + @ObfuscatedName("gj") + @Export("currentPort") + static int currentPort; + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "8601" + ) + public static void method1337() { + VarbitComposition.VarbitDefinition_cached.clear(); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class26.java b/osrs/src/main/java/class26.java index ad4ef9b49..bc6b20efc 100644 --- a/osrs/src/main/java/class26.java +++ b/osrs/src/main/java/class26.java @@ -1,17 +1,37 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import netscape.js.JSObject; import java.applet.Applet; -@ObfuscatedName("bh") +@ObfuscatedName("be") public class class26 { - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/applet/Applet;Ljava/lang/String;I)V", + garbageValue = "-707108412" + ) + public static void method107(Applet var0, String var1) throws Throwable { + JSObject.getWindow(var0).eval(var1); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/applet/Applet;Ljava/lang/String;B)Ljava/lang/Object;", + garbageValue = "107" + ) + public static Object method108(Applet var0, String var1) throws Throwable { + return JSObject.getWindow(var0).call(var1, (Object[])null); + } + + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(Ljava/applet/Applet;Ljava/lang/String;[Ljava/lang/Object;I)Ljava/lang/Object;", - garbageValue = "-1868178316" + garbageValue = "-224433790" ) - public static Object method95(Applet var0, String var1, Object[] var2) throws Throwable { + @Export("invoke") + public static Object invoke(Applet var0, String var1, Object[] var2) throws Throwable { return JSObject.getWindow(var0).call(var1, var2); } } \ No newline at end of file diff --git a/osrs/src/main/java/class260.java b/osrs/src/main/java/class260.java deleted file mode 100644 index 1bc2f33b4..000000000 --- a/osrs/src/main/java/class260.java +++ /dev/null @@ -1,252 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("kb") -public class class260 implements WorldMapSection { - @ObfuscatedName("au") - int field2394; - @ObfuscatedName("ae") - int field2388; - @ObfuscatedName("ao") - int field2391; - @ObfuscatedName("at") - int field2393; - @ObfuscatedName("ac") - int field2387; - @ObfuscatedName("ai") - int field2390; - @ObfuscatedName("az") - int field2395; - @ObfuscatedName("ap") - int field2392; - @ObfuscatedName("aa") - int field2386; - @ObfuscatedName("af") - int field2389; - - class260() { - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljf;I)V", - garbageValue = "-474032336" - ) - @Export("expandBounds") - public void expandBounds(WorldMapArea var1) { - if (var1.regionLowX > this.field2387) { - var1.regionLowX = this.field2387; - } - - if (var1.regionHighX < this.field2387) { - var1.regionHighX = this.field2387; - } - - if (var1.regionLowY > this.field2390) { - var1.regionLowY = this.field2390; - } - - if (var1.regionHighY < this.field2390) { - var1.regionHighY = this.field2390; - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIII)Z", - garbageValue = "509257779" - ) - @Export("containsCoord") - public boolean containsCoord(int var1, int var2, int var3) { - if (var1 >= this.field2394 && var1 < this.field2394 + this.field2388) { - return var2 >= (this.field2391 << 6) + (this.field2395 << 3) && var2 <= (this.field2391 << 6) + (this.field2395 << 3) + 7 && var3 >= (this.field2393 << 6) + (this.field2392 << 3) && var3 <= (this.field2393 << 6) + (this.field2392 << 3) + 7; - } else { - return false; - } - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-94" - ) - @Export("containsPosition") - public boolean containsPosition(int var1, int var2) { - return var1 >= (this.field2387 << 6) + (this.field2386 << 3) && var1 <= (this.field2387 << 6) + (this.field2386 << 3) + 7 && var2 >= (this.field2390 << 6) + (this.field2389 << 3) && var2 <= (this.field2390 << 6) + (this.field2389 << 3) + 7; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(IIII)[I", - garbageValue = "1978048199" - ) - @Export("getBorderTileLengths") - public int[] getBorderTileLengths(int var1, int var2, int var3) { - if (!this.containsCoord(var1, var2, var3)) { - return null; - } else { - int[] var4 = new int[]{var2 + (this.field2387 * 64 - this.field2391 * 64) + (this.field2386 * 8 - this.field2395 * 8), var3 + (this.field2390 * 64 - this.field2393 * 64) + (this.field2389 * 8 - this.field2392 * 8)}; - return var4; - } - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(III)Lmc;", - garbageValue = "-1281040923" - ) - @Export("coord") - public Coord coord(int var1, int var2) { - if (!this.containsPosition(var1, var2)) { - return null; - } else { - int var3 = this.field2391 * 64 - this.field2387 * 64 + (this.field2395 * 8 - this.field2386 * 8) + var1; - int var4 = var2 + (this.field2393 * 64 - this.field2390 * 64) + (this.field2392 * 8 - this.field2389 * 8); - return new Coord(this.field2394, var3, var4); - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "47" - ) - @Export("read") - public void read(Buffer var1) { - this.field2394 = var1.readUnsignedByte(); - this.field2388 = var1.readUnsignedByte(); - this.field2391 = var1.readUnsignedShort(); - this.field2395 = var1.readUnsignedByte(); - this.field2393 = var1.readUnsignedShort(); - this.field2392 = var1.readUnsignedByte(); - this.field2387 = var1.readUnsignedShort(); - this.field2386 = var1.readUnsignedByte(); - this.field2390 = var1.readUnsignedShort(); - this.field2389 = var1.readUnsignedByte(); - this.method1498(); - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1425291786" - ) - void method1498() { - } - - @ObfuscatedName("lv") - @ObfuscatedSignature( - descriptor = "(Ldx;IIIB)V", - garbageValue = "-28" - ) - @Export("addNpcToMenu") - static final void addNpcToMenu(NPC var0, int var1, int var2, int var3) { - NPCComposition var4 = var0.definition; - if (Client.menuOptionsCount < 400) { - if (var4.transforms != null) { - var4 = var4.transform(); - } - - if (var4 != null) { - if (var4.isInteractable) { - if (!var4.isFollower || Client.followerIndex == var1) { - String var5 = var0.method581(); - int var6; - if (var4.combatLevel != 0 && var0.combatLevelChange != 0) { - var6 = var0.combatLevelChange != -1 ? var0.combatLevelChange * -611368101 * -1824049965 : var4.combatLevel * 989486243 * 599602955; - var5 = var5 + class14.method42(var6, VarbitComposition.localPlayer.combatLevel) + " " + " (" + "level-" + var6 + ")"; - } - - if (var4.isFollower && Client.followerOpsLowPriority) { - class385.insertMenuItemNoShift("Examine", MoveSpeed.colorStartTag(16776960) + var5, 1003, var1, var2, var3); - } - - if (Client.isItemSelected == 1) { - class385.insertMenuItemNoShift("Use", Client.field599 + " " + "->" + " " + MoveSpeed.colorStartTag(16776960) + var5, 7, var1, var2, var3); - } else if (Client.isSpellSelected) { - if ((Canvas.selectedSpellFlags & 2) == 2) { - class385.insertMenuItemNoShift(Client.field600, Client.field601 + " " + "->" + " " + MoveSpeed.colorStartTag(16776960) + var5, 8, var1, var2, var3); - } - } else { - var6 = var4.isFollower && Client.followerOpsLowPriority ? 2000 : 0; - String[] var7 = var4.actions; - int var8; - int var9; - if (var7 != null) { - for (var8 = 4; var8 >= 0; --var8) { - if (var0.method580(var8) && var7[var8] != null && !var7[var8].equalsIgnoreCase("Attack")) { - var9 = 0; - if (var8 == 0) { - var9 = var6 + 9; - } - - if (var8 == 1) { - var9 = var6 + 10; - } - - if (var8 == 2) { - var9 = var6 + 11; - } - - if (var8 == 3) { - var9 = var6 + 12; - } - - if (var8 == 4) { - var9 = var6 + 13; - } - - class385.insertMenuItemNoShift(var7[var8], MoveSpeed.colorStartTag(16776960) + var5, var9, var1, var2, var3); - } - } - } - - if (var7 != null) { - for (var8 = 4; var8 >= 0; --var8) { - if (var0.method580(var8) && var7[var8] != null && var7[var8].equalsIgnoreCase("Attack")) { - short var10 = 0; - if (AttackOption.AttackOption_hidden != Client.npcAttackOption) { - if (AttackOption.AttackOption_alwaysRightClick == Client.npcAttackOption || Client.npcAttackOption == AttackOption.AttackOption_dependsOnCombatLevels && var4.combatLevel > VarbitComposition.localPlayer.combatLevel) { - var10 = 2000; - } - - var9 = 0; - if (var8 == 0) { - var9 = var10 + 9; - } - - if (var8 == 1) { - var9 = var10 + 10; - } - - if (var8 == 2) { - var9 = var10 + 11; - } - - if (var8 == 3) { - var9 = var10 + 12; - } - - if (var8 == 4) { - var9 = var10 + 13; - } - - class385.insertMenuItemNoShift(var7[var8], MoveSpeed.colorStartTag(16776960) + var5, var9, var1, var2, var3); - } - } - } - } - - if (!var4.isFollower || !Client.followerOpsLowPriority) { - class385.insertMenuItemNoShift("Examine", MoveSpeed.colorStartTag(16776960) + var5, 1003, var1, var2, var3); - } - } - - } - } - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class267.java b/osrs/src/main/java/class267.java new file mode 100644 index 000000000..0e55cd452 --- /dev/null +++ b/osrs/src/main/java/class267.java @@ -0,0 +1,123 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("kz") +public class class267 { + @ObfuscatedName("aq") + @Export("ByteArrayPool_altSizeArrayCounts") + static int[] ByteArrayPool_altSizeArrayCounts; + @ObfuscatedName("gs") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + static Archive field2224; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "[Lej;" + ) + class128[] field2225; + @ObfuscatedName("ar") + int field2226; + + @ObfuscatedSignature( + descriptor = "(Luj;I)V" + ) + class267(Buffer var1, int var2) { + this.field2225 = new class128[var2]; + this.field2226 = var1.readUnsignedByte(); + + for (int var3 = 0; var3 < this.field2225.length; ++var3) { + class128 var4 = new class128(this.field2226, var1, false); + this.field2225[var3] = var4; + } + + this.method1438(); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1372666290" + ) + void method1438() { + class128[] var1 = this.field2225; + + for (int var2 = 0; var2 < var1.length; ++var2) { + class128 var3 = var1[var2]; + if (var3.field1238 >= 0) { + var3.field1237 = this.field2225[var3.field1238]; + } + } + + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(S)I", + garbageValue = "4095" + ) + public int method1439() { + return this.field2225.length; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Lej;", + garbageValue = "-2147483647" + ) + class128 method1440(int var1) { + return var1 >= this.method1439() ? null : this.field2225[var1]; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(I)[Lej;", + garbageValue = "-943395454" + ) + class128[] method1441() { + return this.field2225; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Lfo;IB)V", + garbageValue = "-54" + ) + void method1442(class139 var1, int var2) { + this.method1443(var1, var2, (boolean[])null, false); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Lfo;I[ZZI)V", + garbageValue = "-869028175" + ) + void method1443(class139 var1, int var2, boolean[] var3, boolean var4) { + int var5 = var1.method742(); + int var6 = 0; + class128[] var7 = this.method1441(); + + for (int var8 = 0; var8 < var7.length; ++var8) { + class128 var9 = var7[var8]; + if (var3 == null || var4 == var3[var6]) { + var1.method744(var2, var9, var6, var5); + } + + ++var6; + } + + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "618264850" + ) + public static void method1444() { + ObjectComposition.ObjectDefinition_cached.clear(); + ObjectComposition.ObjectDefinition_cachedModelData.clear(); + ObjectComposition.ObjectDefinition_cachedEntities.clear(); + ObjectComposition.ObjectDefinition_cachedModels.clear(); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class228.java b/osrs/src/main/java/class268.java similarity index 65% rename from osrs/src/main/java/class228.java rename to osrs/src/main/java/class268.java index c143f5b2e..487fdfb0c 100644 --- a/osrs/src/main/java/class228.java +++ b/osrs/src/main/java/class268.java @@ -2,68 +2,68 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("id") -public abstract class class228 extends Rasterizer2D { - @ObfuscatedName("au") - boolean field2045; - @ObfuscatedName("ae") - boolean field2044; - @ObfuscatedName("az") - int[] field2046; - @ObfuscatedName("ap") +@ObfuscatedName("kn") +public abstract class class268 extends Rasterizer2D { + @ObfuscatedName("at") + boolean field2228; + @ObfuscatedName("ah") + boolean field2227; + @ObfuscatedName("aa") + int[] field2229; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Ljl;" + descriptor = "Lkh;" ) - Clips field2047; + Clips field2230; @ObfuscatedSignature( - descriptor = "(Ljl;)V" + descriptor = "(Lkh;)V" ) - class228(Clips var1) { - this.field2045 = false; - this.field2044 = false; - this.field2046 = Rasterizer3D.Rasterizer3D_colorPalette; - this.field2047 = var1; + class268(Clips var1) { + this.field2228 = false; + this.field2227 = false; + this.field2229 = Rasterizer3D.Rasterizer3D_colorPalette; + this.field2230 = var1; } - @ObfuscatedName("au") - void method1220(int[] var1, int var2, int var3, float[] var4) { - Rasterizer2D.method2620(var1, var2, var3, var4); + @ObfuscatedName("at") + void method1445(int[] var1, int var2, int var3, float[] var4) { + Rasterizer2D.method2637(var1, var2, var3, var4); } - @ObfuscatedName("at") - void method1223(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, byte var13, byte var14, byte var15, byte var16) { - var10 = method1221(var10, var13, var14, var15, var16); - var11 = method1221(var11, var13, var14, var15, var16); - var12 = method1221(var12, var13, var14, var15, var16); + @ObfuscatedName("ao") + void method1448(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, byte var13, byte var14, byte var15, byte var16) { + var10 = method1446(var10, var13, var14, var15, var16); + var11 = method1446(var11, var13, var14, var15, var16); + var12 = method1446(var12, var13, var14, var15, var16); this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12); } - @ObfuscatedName("ac") - void method1224(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, byte var11, byte var12, byte var13, byte var14) { - int var15 = method1221(var10, var11, var12, var13, var14); - var10 = this.field2046[var15]; + @ObfuscatedName("ab") + void method1449(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, byte var11, byte var12, byte var13, byte var14) { + int var15 = method1446(var10, var11, var12, var13, var14); + var10 = this.field2229[var15]; this.vmethod1366(var1, var2, var3, var4, var5, var6, var7, var8, var9, var10); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("vmethod1374") abstract void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12); - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("vmethod1366") abstract void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10); - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod1378") abstract void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22); - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("vmethod1362") abstract void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22); - @ObfuscatedName("ae") - static int method1221(int var0, byte var1, byte var2, byte var3, byte var4) { + @ObfuscatedName("ah") + static int method1446(int var0, byte var1, byte var2, byte var3, byte var4) { int var5 = var0 >> 10 & 63; int var6 = var0 >> 7 & 7; int var7 = var0 & 127; @@ -83,8 +83,8 @@ static int method1221(int var0, byte var1, byte var2, byte var3, byte var4) { return (var5 << 10 | var6 << 7 | var7) & 65535; } - @ObfuscatedName("ao") - static final int method1222(int var0, int var1) { + @ObfuscatedName("ar") + static final int method1447(int var0, int var1) { var1 = (var0 & 127) * var1 >> 7; if (var1 < 2) { var1 = 2; diff --git a/osrs/src/main/java/class27.java b/osrs/src/main/java/class27.java index 13131bf9d..6b7661b93 100644 --- a/osrs/src/main/java/class27.java +++ b/osrs/src/main/java/class27.java @@ -1,109 +1,107 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import java.applet.Applet; import java.util.Arrays; -@ObfuscatedName("bj") +@ObfuscatedName("bd") public class class27 { - @ObfuscatedName("gx") - static String field76; - @ObfuscatedName("az") - int[] field78; - @ObfuscatedName("ap") - int[] field77; + @ObfuscatedName("aa") + int[] field80; + @ObfuscatedName("ac") + int[] field81; public class27() { - this.field78 = new int[112]; - this.field77 = new int[192]; - Arrays.fill(this.field78, 3); - Arrays.fill(this.field77, 3); + this.field80 = new int[112]; + this.field81 = new int[192]; + Arrays.fill(this.field80, 3); + Arrays.fill(this.field81, 3); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "4993" + descriptor = "(III)V", + garbageValue = "-1639161786" ) - public void method96(int var1, int var2) { - if (this.method104(var1) && this.method106(var2)) { - this.field78[var1] = var2; + public void method111(int var1, int var2) { + if (this.method121(var1) && this.method123(var2)) { + this.field80[var1] = var2; } } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(CIB)V", - garbageValue = "4" + descriptor = "(CII)V", + garbageValue = "-87016088" ) - public void method97(char var1, int var2) { - if (this.method105(var1) && this.method106(var2)) { - this.field77[var1] = var2; + public void method113(char var1, int var2) { + if (this.method122(var1) && this.method123(var2)) { + this.field81[var1] = var2; } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "1011466688" + garbageValue = "1141320535" ) - public int method98(int var1) { - return this.method104(var1) ? this.field78[var1] : 0; + public int method115(int var1) { + return this.method121(var1) ? this.field80[var1] : 0; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(CB)I", - garbageValue = "41" + descriptor = "(CI)I", + garbageValue = "832183208" ) - public int method99(char var1) { - return this.method105(var1) ? this.field77[var1] : 0; + public int method116(char var1) { + return this.method122(var1) ? this.field81[var1] : 0; } - @ObfuscatedName("ac") + @ObfuscatedName("ab") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "2032631567" + garbageValue = "-1834915572" ) - public boolean method100(int var1) { - return this.method104(var1) && (this.field78[var1] == 1 || this.field78[var1] == 3); + public boolean method117(int var1) { + return this.method121(var1) && (this.field80[var1] == 1 || this.field80[var1] == 3); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "1" + descriptor = "(CI)Z", + garbageValue = "1013987055" ) - public boolean method101(char var1) { - return this.method105(var1) && (this.field77[var1] == 1 || this.field77[var1] == 3); + public boolean method118(char var1) { + return this.method122(var1) && (this.field81[var1] == 1 || this.field81[var1] == 3); } - @ObfuscatedName("az") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "55" + descriptor = "(II)Z", + garbageValue = "1584083272" ) - public boolean method102(int var1) { - return this.method104(var1) && (this.field78[var1] == 2 || this.field78[var1] == 3); + public boolean method119(int var1) { + return this.method121(var1) && (this.field80[var1] == 2 || this.field80[var1] == 3); } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @ObfuscatedSignature( descriptor = "(CI)Z", - garbageValue = "-479848257" + garbageValue = "-769837729" ) - public boolean method103(char var1) { - return this.method105(var1) && (this.field77[var1] == 2 || this.field77[var1] == 3); + public boolean method120(char var1) { + return this.method122(var1) && (this.field81[var1] == 2 || this.field81[var1] == 3); } - @ObfuscatedName("aa") + @ObfuscatedName("al") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "516675311" + garbageValue = "2115531423" ) - boolean method104(int var1) { + boolean method121(int var1) { if (var1 >= 0 && var1 < 112) { return true; } else { @@ -112,12 +110,12 @@ boolean method104(int var1) { } } - @ObfuscatedName("af") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(CB)Z", - garbageValue = "67" + descriptor = "(CI)Z", + garbageValue = "494262388" ) - boolean method105(char var1) { + boolean method122(char var1) { if (var1 >= 0 && var1 < 192) { return true; } else { @@ -126,12 +124,12 @@ boolean method105(char var1) { } } - @ObfuscatedName("ad") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-13" + descriptor = "(IS)Z", + garbageValue = "9461" ) - boolean method106(int var1) { + boolean method123(int var1) { if (var1 >= 0 && var1 < 4) { return true; } else { @@ -140,70 +138,49 @@ boolean method106(int var1) { } } - @ObfuscatedName("ie") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "-1897607215" + descriptor = "(Ljava/applet/Applet;Ljava/lang/String;I)V", + garbageValue = "-1746840644" ) - @Export("queueSoundEffect") - static void queueSoundEffect(int var0, int var1, int var2) { - if (class449.clientPreferences.getCurrentSoundEffectsVolume() != 0 && var1 != 0 && Client.soundEffectCount < 50) { - Client.soundEffectIds[Client.soundEffectCount] = var0; - Client.queuedSoundEffectLoops[Client.soundEffectCount] = var1; - Client.queuedSoundEffectDelays[Client.soundEffectCount] = var2; - Client.soundEffects[Client.soundEffectCount] = null; - Client.soundLocations[Client.soundEffectCount] = 0; - ++Client.soundEffectCount; + public static void method112(Applet var0, String var1) { + class31.field85 = var0; + if (var1 != null) { + class31.field86 = var1; } } - @ObfuscatedName("mk") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lmi;B)Z", - garbageValue = "14" + descriptor = "(Lnh;I)V", + garbageValue = "-1843378433" ) - @Export("runCs1") - static final boolean runCs1(Widget var0) { - if (var0.cs1Comparisons == null) { - return false; - } else { - for (int var1 = 0; var1 < var0.cs1Comparisons.length; ++var1) { - int var2 = UserComparator9.method686(var0, var1); - int var3 = var0.cs1ComparisonValues[var1]; - if (var0.cs1Comparisons[var1] == 2) { - if (var2 >= var3) { - return false; - } - } else if (var0.cs1Comparisons[var1] == 3) { - if (var2 <= var3) { - return false; - } - } else if (var0.cs1Comparisons[var1] == 4) { - if (var3 == var2) { - return false; - } - } else if (var2 != var3) { - return false; - } - } - - return true; - } + public static void method110(Huffman var0) { + class350.huffman = var0; } - @ObfuscatedName("og") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "1204243161" + descriptor = "(IIB)I", + garbageValue = "70" ) - static void method109(Buffer var0, int var1) { - byte[] var2 = var0.array; - if (Client.randomDatData == null) { - Client.randomDatData = new byte[24]; - } + static int method114(int var0, int var1) { + ItemContainer var2 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var2 == null) { + return 0; + } else if (var1 == -1) { + return 0; + } else { + int var3 = 0; - class409.writeRandomDat(var2, var1, Client.randomDatData, 0, 24); - class13.method36(var0, var1); + for (int var4 = 0; var4 < var2.quantities.length; ++var4) { + if (var2.ids[var4] == var1) { + var3 += var2.quantities[var4]; + } + } + + return var3; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class270.java b/osrs/src/main/java/class270.java deleted file mode 100644 index 70da95746..000000000 --- a/osrs/src/main/java/class270.java +++ /dev/null @@ -1,111 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ArrayList; -import java.util.Iterator; - -@ObfuscatedName("ka") -public class class270 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lka;" - ) - static final class270 field2453; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lka;" - ) - static final class270 field2452; - @ObfuscatedName("fb") - static long field2451; - @ObfuscatedName("ao") - final int field2454; - - static { - field2453 = new class270(0); - field2452 = new class270(1); - } - - class270(int var1) { - this.field2454 = var1; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(Ljava/util/ArrayList;ZI)V", - garbageValue = "544527881" - ) - static void method1536(ArrayList var0, boolean var1) { - if (!var1) { - class305.field2773.clear(); - } - - Iterator var2 = var0.iterator(); - - while (var2.hasNext()) { - MusicSong var3 = (MusicSong)var2.next(); - if (var3.musicTrackGroupId != -1 && var3.musicTrackFileId != -1) { - if (!var1) { - class305.field2773.add(var3); - } - - class305.field2774.add(var3); - } - } - - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "2021273787" - ) - public static void method1537(int var0, int var1, int var2, int var3) { - class305.musicPlayerStatus = var0; - class305.field2766 = var1; - class305.field2769 = var2; - class305.field2768 = var3; - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(CII)Ljava/lang/String;", - garbageValue = "1203600347" - ) - public static String method1538(char var0, int var1) { - char[] var2 = new char[var1]; - - for (int var3 = 0; var3 < var1; ++var3) { - var2[var3] = var0; - } - - return new String(var2); - } - - @ObfuscatedName("jt") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "340629836" - ) - @Export("setWindowedMode") - static void setWindowedMode(int var0) { - Client.field615 = 0L; - if (var0 >= 2) { - Client.isResizable = true; - } else { - Client.isResizable = false; - } - - if (class218.getWindowedMode() == 1) { - class219.client.setMaxCanvasSize(765, 503); - } else { - class219.client.setMaxCanvasSize(7680, 2160); - } - - if (Client.gameState >= 25) { - Message.method341(); - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class271.java b/osrs/src/main/java/class271.java deleted file mode 100644 index b1416307d..000000000 --- a/osrs/src/main/java/class271.java +++ /dev/null @@ -1,214 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("kf") -public class class271 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lkf;" - ) - static final class271 field2456; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lkf;" - ) - static final class271 field2455; - @ObfuscatedName("ao") - final int field2457; - - static { - field2456 = new class271(0); - field2455 = new class271(1); - } - - class271(int var1) { - this.field2457 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Lio;", - garbageValue = "-681739410" - ) - static class214[] method1541() { - return new class214[]{class214.field1898, class214.field1904, class214.field1902, class214.field1900, class214.field1899, class214.field1901, class214.field1903}; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "([Ljava/lang/CharSequence;III)Ljava/lang/String;", - garbageValue = "2076822771" - ) - public static String method1540(CharSequence[] var0, int var1, int var2) { - if (var2 == 0) { - return ""; - } else if (var2 == 1) { - CharSequence var3 = var0[var1]; - return var3 == null ? "null" : var3.toString(); - } else { - int var8 = var2 + var1; - int var4 = 0; - - for (int var5 = var1; var5 < var8; ++var5) { - CharSequence var6 = var0[var5]; - if (var6 == null) { - var4 += 4; - } else { - var4 += var6.length(); - } - } - - StringBuilder var9 = new StringBuilder(var4); - - for (int var10 = var1; var10 < var8; ++var10) { - CharSequence var7 = var0[var10]; - if (var7 == null) { - var9.append("null"); - } else { - var9.append(var7); - } - } - - return var9.toString(); - } - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)Lhu;", - garbageValue = "1432274466" - ) - @Export("getEnum") - public static EnumComposition getEnum(int var0) { - EnumComposition var1 = (EnumComposition)EnumComposition.EnumDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = EnumComposition.EnumDefinition_archive.takeFile(8, var0); - var1 = new EnumComposition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); - } - - EnumComposition.EnumDefinition_cached.put(var1, (long)var0); - return var1; - } - } - - @ObfuscatedName("kb") - @ObfuscatedSignature( - descriptor = "(ZLto;I)V", - garbageValue = "1816945767" - ) - @Export("loadRegions") - static final void loadRegions(boolean var0, PacketBuffer var1) { - Client.isInInstance = var0; - int var3; - int var4; - int var5; - int var6; - int var7; - if (!Client.isInInstance) { - int var2 = var1.readUnsignedShort(); - var3 = var1.method2587(); - var4 = var1.readUnsignedShort(); - RunException.xteaKeys = new int[var4][4]; - - for (var5 = 0; var5 < var4; ++var5) { - for (var6 = 0; var6 < 4; ++var6) { - RunException.xteaKeys[var5][var6] = var1.readInt(); - } - } - - class191.regions = new int[var4]; - class59.regionMapArchiveIds = new int[var4]; - ObjTypeCustomisation.regionLandArchiveIds = new int[var4]; - UserComparator5.regionLandArchives = new byte[var4][]; - class197.regionMapArchives = new byte[var4][]; - var4 = 0; - - for (var5 = (var2 - 6) / 8; var5 <= (var2 + 6) / 8; ++var5) { - for (var6 = (var3 - 6) / 8; var6 <= (var3 + 6) / 8; ++var6) { - var7 = var6 + (var5 << 8); - class191.regions[var4] = var7; - class59.regionMapArchiveIds[var4] = class499.archive9.getGroupId("m" + var5 + "_" + var6); - ObjTypeCustomisation.regionLandArchiveIds[var4] = class499.archive9.getGroupId("l" + var5 + "_" + var6); - ++var4; - } - } - - class316.method1698(var2, var3, true); - } else { - boolean var15 = var1.readUnsignedByte() == 1; - var3 = var1.readUnsignedShort(); - var4 = var1.readUnsignedShort(); - var5 = var1.readUnsignedShort(); - var1.importIndex(); - - int var8; - int var9; - for (var6 = 0; var6 < 4; ++var6) { - for (var7 = 0; var7 < 13; ++var7) { - for (var8 = 0; var8 < 13; ++var8) { - var9 = var1.readBits(1); - if (var9 == 1) { - Client.instanceChunkTemplates[var6][var7][var8] = var1.readBits(26); - } else { - Client.instanceChunkTemplates[var6][var7][var8] = -1; - } - } - } - } - - var1.exportIndex(); - RunException.xteaKeys = new int[var5][4]; - - for (var6 = 0; var6 < var5; ++var6) { - for (var7 = 0; var7 < 4; ++var7) { - RunException.xteaKeys[var6][var7] = var1.readInt(); - } - } - - class191.regions = new int[var5]; - class59.regionMapArchiveIds = new int[var5]; - ObjTypeCustomisation.regionLandArchiveIds = new int[var5]; - UserComparator5.regionLandArchives = new byte[var5][]; - class197.regionMapArchives = new byte[var5][]; - var5 = 0; - - for (var6 = 0; var6 < 4; ++var6) { - for (var7 = 0; var7 < 13; ++var7) { - for (var8 = 0; var8 < 13; ++var8) { - var9 = Client.instanceChunkTemplates[var6][var7][var8]; - if (var9 != -1) { - int var10 = var9 >> 14 & 1023; - int var11 = var9 >> 3 & 2047; - int var12 = (var10 / 8 << 8) + var11 / 8; - - int var13; - for (var13 = 0; var13 < var5; ++var13) { - if (class191.regions[var13] == var12) { - var12 = -1; - break; - } - } - - if (var12 != -1) { - class191.regions[var5] = var12; - var13 = var12 >> 8 & 255; - int var14 = var12 & 255; - class59.regionMapArchiveIds[var5] = class499.archive9.getGroupId("m" + var13 + "_" + var14); - ObjTypeCustomisation.regionLandArchiveIds[var5] = class499.archive9.getGroupId("l" + var13 + "_" + var14); - ++var5; - } - } - } - } - } - - class316.method1698(var4, var3, !var15); - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class272.java b/osrs/src/main/java/class272.java deleted file mode 100644 index eeed69357..000000000 --- a/osrs/src/main/java/class272.java +++ /dev/null @@ -1,16 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("kx") -public class class272 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "119" - ) - static void method1544(int var0) { - GrandExchangeOfferOwnWorldComparator.field361 = var0; - class450.field3873 = new class450[var0]; - class462.field3904 = 0; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class28.java b/osrs/src/main/java/class28.java index 1ca6530c9..86ce9c82f 100644 --- a/osrs/src/main/java/class28.java +++ b/osrs/src/main/java/class28.java @@ -2,55 +2,100 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bk") +@ObfuscatedName("bl") public class class28 { - @ObfuscatedName("wn") - @Export("foundItemIdCount") - static int foundItemIdCount; - @ObfuscatedName("ds") + @ObfuscatedName("bd") + @Export("fontHelvetica13") + static java.awt.Font fontHelvetica13; + @ObfuscatedName("dc") @Export("KeyHandler_keyCodes") static int[] KeyHandler_keyCodes; - @ObfuscatedName("fo") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field81; static { KeyHandler_keyCodes = new int[]{-1, -1, -1, -1, -1, -1, -1, -1, 85, 80, 84, -1, 91, -1, -1, -1, 81, 82, 86, -1, -1, -1, -1, -1, -1, -1, -1, 13, -1, -1, -1, -1, 83, 104, 105, 103, 102, 96, 98, 97, 99, -1, -1, -1, -1, -1, -1, -1, 25, 16, 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, 48, 68, 66, 50, 34, 51, 52, 53, 39, 54, 55, 56, 70, 69, 40, 41, 32, 35, 49, 36, 38, 67, 33, 65, 37, 64, -1, -1, -1, -1, -1, 228, 231, 227, 233, 224, 219, 225, 230, 226, 232, 89, 87, -1, 88, 229, 90, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; } - @ObfuscatedName("au") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Lnu;III)[Luk;", - garbageValue = "-1285890044" + descriptor = "(IB)V", + garbageValue = "0" ) - public static IndexedSprite[] method110(AbstractArchive var0, int var1, int var2) { - return !ApproximateRouteStrategy.method345(var0, var1, var2) ? null : class30.method118(); + @Export("clearItemContainer") + static void clearItemContainer(int var0) { + ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0); + if (var1 != null) { + for (int var2 = 0; var2 < var1.ids.length; ++var2) { + var1.ids[var2] = -1; + var1.quantities[var2] = 0; + } + + } } - @ObfuscatedName("ow") + @ObfuscatedName("ai") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "972746091" + descriptor = "(Lcr;I)V", + garbageValue = "-802183786" ) - static void method111() { - if (Client.oculusOrbOnLocalPlayer && VarbitComposition.localPlayer != null) { - int var0 = VarbitComposition.localPlayer.pathX[0]; - int var1 = VarbitComposition.localPlayer.pathY[0]; - if (var0 < 0 || var1 < 0 || var0 >= 104 || var1 >= 104) { - return; + @Export("changeWorld") + static void changeWorld(World var0) { + if (var0.isMembersOnly() != Client.isMembersWorld) { + Client.isMembersWorld = var0.isMembersOnly(); + boolean var1 = var0.isMembersOnly(); + if (var1 != class129.ItemDefinition_inMembersWorld) { + ItemComposition.ItemDefinition_cached.clear(); + ItemComposition.HealthBarDefinition_cachedSprites.clear(); + ItemComposition.ItemDefinition_cachedSprites.clear(); + class129.ItemDefinition_inMembersWorld = var1; } + } - FriendLoginUpdate.oculusOrbFocalPointX = VarbitComposition.localPlayer.x; - int var2 = class18.getTileHeight(VarbitComposition.localPlayer.x, VarbitComposition.localPlayer.y, HealthBar.Client_plane) - Client.camFollowHeight; - if (var2 < class125.field1194) { - class125.field1194 = var2; + if (var0.properties != Client.worldProperties) { + Archive var3 = GrandExchangeOfferOwnWorldComparator.archive8; + int var2 = var0.properties; + if ((var2 & class522.field4160.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var3, "logo_deadman_mode", ""); + } else if ((var2 & class522.field4161.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var3, "logo_seasonal_mode", ""); + } else if ((var2 & class522.field4154.rsOrdinal()) != 0) { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var3, "logo_speedrunning", ""); + } else { + Login.logoSprite = class313.SpriteBuffer_getIndexedSpriteByName(var3, "logo", ""); } - - HealthBar.oculusOrbFocalPointY = VarbitComposition.localPlayer.y; - Client.oculusOrbOnLocalPlayer = false; } + Friend.worldHost = var0.host; + Client.worldId = var0.id; + Client.worldProperties = var0.properties; + ItemLayer.field2109 = var0.field679; + WorldMapCacheName.worldPort = Client.gameBuild == 0 ? 43594 : var0.id + 40000; + AbstractSocket.js5Port = Client.gameBuild == 0 ? 443 : var0.id + 50000; + class252.currentPort = WorldMapCacheName.worldPort; + } + + @ObfuscatedName("ls") + @ObfuscatedSignature( + descriptor = "(III)Ljava/lang/String;", + garbageValue = "-1398097704" + ) + static final String method126(int var0, int var1) { + int var2 = var1 - var0; + if (var2 < -9) { + return class167.colorStartTag(16711680); + } else if (var2 < -6) { + return class167.colorStartTag(16723968); + } else if (var2 < -3) { + return class167.colorStartTag(16740352); + } else if (var2 < 0) { + return class167.colorStartTag(16756736); + } else if (var2 > 9) { + return class167.colorStartTag(65280); + } else if (var2 > 6) { + return class167.colorStartTag(4259584); + } else if (var2 > 3) { + return class167.colorStartTag(8453888); + } else { + return var2 > 0 ? class167.colorStartTag(12648192) : class167.colorStartTag(16776960); + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class280.java b/osrs/src/main/java/class280.java deleted file mode 100644 index 4e5707c01..000000000 --- a/osrs/src/main/java/class280.java +++ /dev/null @@ -1,5 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("kk") -public interface class280 extends class282 { -} \ No newline at end of file diff --git a/osrs/src/main/java/class281.java b/osrs/src/main/java/class281.java deleted file mode 100644 index 15c7b75fc..000000000 --- a/osrs/src/main/java/class281.java +++ /dev/null @@ -1,15 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("kc") -public abstract class class281 implements class283 { - @ObfuscatedName("au") - protected int field2482; - - @ObfuscatedSignature( - descriptor = "(Lns;Lon;I)V" - ) - protected class281(StudioGame var1, Language var2, int var3) { - this.field2482 = var3; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class282.java b/osrs/src/main/java/class282.java deleted file mode 100644 index b30cba68a..000000000 --- a/osrs/src/main/java/class282.java +++ /dev/null @@ -1,5 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("km") -public interface class282 { -} \ No newline at end of file diff --git a/osrs/src/main/java/class283.java b/osrs/src/main/java/class283.java index 36cdd51e2..8d4fae3f5 100644 --- a/osrs/src/main/java/class283.java +++ b/osrs/src/main/java/class283.java @@ -1,5 +1,3168 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kz") -public interface class283 extends Iterable { +@ObfuscatedName("kx") +public class class283 extends class268 { + @ObfuscatedSignature( + descriptor = "(Lkh;)V" + ) + class283(Clips var1) { + super(var1); + } + + @ObfuscatedName("au") + @Export("vmethod1374") + void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12) { + int var13 = var5 - var4; + int var14 = var2 - var1; + int var15 = var6 - var4; + int var16 = var3 - var1; + int var17 = var11 - var10; + int var18 = var12 - var10; + int var19; + if (var3 != var2) { + var19 = (var6 - var5 << 14) / (var3 - var2); + } else { + var19 = 0; + } + + int var20; + if (var2 != var1) { + var20 = (var13 << 14) / var14; + } else { + var20 = 0; + } + + int var21; + if (var3 != var1) { + var21 = (var15 << 14) / var16; + } else { + var21 = 0; + } + + int var22 = var13 * var16 - var15 * var14; + if (var22 != 0) { + int var23 = (var17 * var16 - var18 * var14 << 8) / var22; + int var24 = (var18 * var13 - var17 * var15 << 8) / var22; + int[] var25 = super.field2230.Rasterizer3D_rowOffsets; + int var26 = super.field2230.field2449; + if (var1 <= var2 && var1 <= var3) { + if (var1 < var26) { + if (var2 > var26) { + var2 = var26; + } + + if (var3 > var26) { + var3 = var26; + } + + var10 = var23 + ((var10 << 8) - var23 * var4); + if (var2 < var3) { + var6 = var4 <<= 14; + if (var1 < 0) { + var6 -= var21 * var1; + var4 -= var20 * var1; + var10 -= var24 * var1; + var1 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var19 * var2; + var2 = 0; + } + + if (var2 != var1 && var21 < var20 || var2 == var1 && var21 > var19) { + var3 -= var2; + var2 -= var1; + var1 = var25[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var5 >> 14, var10, var23); + var6 += var21; + var5 += var19; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var23); + var6 += var21; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var3 -= var2; + var2 -= var1; + var1 = var25[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var6 >> 14, var10, var23); + var6 += var21; + var5 += var19; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var23); + var6 += var21; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var21 * var1; + var4 -= var20 * var1; + var10 -= var24 * var1; + var1 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var19; + var3 = 0; + } + + if (var3 != var1 && var21 < var20 || var3 == var1 && var19 > var20) { + var2 -= var3; + var3 -= var1; + var1 = var25[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var23); + var6 += var19; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var10, var23); + var5 += var21; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var2 -= var3; + var3 -= var1; + var1 = var25[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var23); + var6 += var19; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var10, var23); + var5 += var21; + var4 += var20; + var10 += var24; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } else if (var2 <= var3) { + if (var2 < var26) { + if (var3 > var26) { + var3 = var26; + } + + if (var1 > var26) { + var1 = var26; + } + + var11 = (var11 << 8) - var5 * var23 + var23; + if (var3 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var20 * var2; + var5 -= var19 * var2; + var11 -= var24 * var2; + var2 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var21; + var3 = 0; + } + + if (var3 != var2 && var20 < var19 || var3 == var2 && var20 > var21) { + var1 -= var3; + var3 -= var2; + var2 = var25[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var6 >> 14, var11, var23); + var4 += var20; + var6 += var21; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var23); + var4 += var20; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var1 -= var3; + var3 -= var2; + var2 = var25[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var4 >> 14, var11, var23); + var4 += var20; + var6 += var21; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var23); + var4 += var20; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var6 = var5 <<= 14; + if (var2 < 0) { + var6 -= var20 * var2; + var5 -= var19 * var2; + var11 -= var24 * var2; + var2 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var21 * var1; + var1 = 0; + } + + if (var20 < var19) { + var3 -= var1; + var1 -= var2; + var2 = var25[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var23); + var4 += var21; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var5 >> 14, var11, var23); + var6 += var20; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var3 -= var1; + var1 -= var2; + var2 = var25[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var23); + var4 += var21; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var6 >> 14, var11, var23); + var6 += var20; + var5 += var19; + var11 += var24; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } else if (var3 < var26) { + if (var1 > var26) { + var1 = var26; + } + + if (var2 > var26) { + var2 = var26; + } + + var12 = var23 + ((var12 << 8) - var23 * var6); + if (var1 < var2) { + var5 = var6 <<= 14; + if (var3 < 0) { + var5 -= var3 * var19; + var6 -= var3 * var21; + var12 -= var3 * var24; + var3 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var20 * var1; + var1 = 0; + } + + if (var19 < var21) { + var2 -= var1; + var1 -= var3; + var3 = var25[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var4 >> 14, var12, var23); + var5 += var19; + var4 += var20; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var23); + var5 += var19; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var2 -= var1; + var1 -= var3; + var3 = var25[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var5 >> 14, var12, var23); + var5 += var19; + var4 += var20; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var23); + var5 += var19; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var4 = var6 <<= 14; + if (var3 < 0) { + var4 -= var3 * var19; + var6 -= var3 * var21; + var12 -= var3 * var24; + var3 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var20 * var2; + var2 = 0; + } + + if (var19 < var21) { + var1 -= var2; + var2 -= var3; + var3 = var25[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var23); + var5 += var20; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var6 >> 14, var12, var23); + var4 += var19; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var1 -= var2; + var2 -= var3; + var3 = var25[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var23); + var5 += var20; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1571(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var4 >> 14, var12, var23); + var4 += var19; + var6 += var21; + var12 += var24; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } + } + + @ObfuscatedName("aa") + @Export("vmethod1366") + void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10) { + int var11 = 0; + if (var2 != var1) { + var11 = (var5 - var4 << 14) / (var2 - var1); + } + + int var12 = 0; + if (var3 != var2) { + var12 = (var6 - var5 << 14) / (var3 - var2); + } + + int var13 = 0; + if (var3 != var1) { + var13 = (var4 - var6 << 14) / (var1 - var3); + } + + int[] var14 = super.field2230.Rasterizer3D_rowOffsets; + int var15 = super.field2230.field2449; + if (var1 <= var2 && var1 <= var3) { + if (var1 < var15) { + if (var2 > var15) { + var2 = var15; + } + + if (var3 > var15) { + var3 = var15; + } + + if (var2 < var3) { + var6 = var4 <<= 14; + if (var1 < 0) { + var6 -= var13 * var1; + var4 -= var11 * var1; + var1 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var12 * var2; + var2 = 0; + } + + if (var2 != var1 && var13 < var11 || var2 == var1 && var13 > var12) { + var3 -= var2; + var2 -= var1; + var1 = var14[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var5 >> 14); + var6 += var13; + var5 += var12; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14); + var6 += var13; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var3 -= var2; + var2 -= var1; + var1 = var14[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var6 >> 14); + var6 += var13; + var5 += var12; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14); + var6 += var13; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var13 * var1; + var4 -= var11 * var1; + var1 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var12; + var3 = 0; + } + + if ((var3 == var1 || var13 >= var11) && (var3 != var1 || var12 <= var11)) { + var2 -= var3; + var3 -= var1; + var1 = var14[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14); + var6 += var12; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var5 >> 14); + var5 += var13; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var2 -= var3; + var3 -= var1; + var1 = var14[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14); + var6 += var12; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var4 >> 14); + var5 += var13; + var4 += var11; + var1 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } else if (var2 <= var3) { + if (var2 < var15) { + if (var3 > var15) { + var3 = var15; + } + + if (var1 > var15) { + var1 = var15; + } + + if (var3 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var11 * var2; + var5 -= var12 * var2; + var2 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var13; + var3 = 0; + } + + if (var3 != var2 && var11 < var12 || var3 == var2 && var11 > var13) { + var1 -= var3; + var3 -= var2; + var2 = var14[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var6 >> 14); + var4 += var11; + var6 += var13; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14); + var4 += var11; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var1 -= var3; + var3 -= var2; + var2 = var14[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var4 >> 14); + var4 += var11; + var6 += var13; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14); + var4 += var11; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var6 = var5 <<= 14; + if (var2 < 0) { + var6 -= var11 * var2; + var5 -= var12 * var2; + var2 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var13 * var1; + var1 = 0; + } + + if (var11 < var12) { + var3 -= var1; + var1 -= var2; + var2 = var14[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14); + var4 += var13; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var5 >> 14); + var6 += var11; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var3 -= var1; + var1 -= var2; + var2 = var14[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14); + var4 += var13; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var6 >> 14); + var6 += var11; + var5 += var12; + var2 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } else if (var3 < var15) { + if (var1 > var15) { + var1 = var15; + } + + if (var2 > var15) { + var2 = var15; + } + + if (var1 < var2) { + var5 = var6 <<= 14; + if (var3 < 0) { + var5 -= var3 * var12; + var6 -= var3 * var13; + var3 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var11 * var1; + var1 = 0; + } + + if (var12 < var13) { + var2 -= var1; + var1 -= var3; + var3 = var14[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var4 >> 14); + var5 += var12; + var4 += var11; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14); + var5 += var12; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var2 -= var1; + var1 -= var3; + var3 = var14[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var5 >> 14); + var5 += var12; + var4 += var11; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14); + var5 += var12; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + } else { + var4 = var6 <<= 14; + if (var3 < 0) { + var4 -= var3 * var12; + var6 -= var3 * var13; + var3 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var11 * var2; + var2 = 0; + } + + if (var12 < var13) { + var1 -= var2; + var2 -= var3; + var3 = var14[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14); + var5 += var11; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var6 >> 14); + var4 += var12; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } else { + var1 -= var2; + var2 -= var3; + var3 = var14[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14); + var5 += var11; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + + this.method1573(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var4 >> 14); + var4 += var12; + var6 += var13; + var3 += Rasterizer2D.Rasterizer2D_width; + } + } + } + } + } + + @ObfuscatedName("ac") + void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { + int[] var23 = super.field2230.Rasterizer3D_textureLoader.getTexturePixels(var22); + int var24; + if (var23 == null) { + var24 = super.field2230.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); + this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class268.method1447(var24, var10), class268.method1447(var24, var11), class268.method1447(var24, var12)); + } else { + super.field2227 = super.field2230.Rasterizer3D_textureLoader.isLowDetail(var22); + super.field2228 = super.field2230.Rasterizer3D_textureLoader.vmethod3989(var22); + var24 = var5 - var4; + int var25 = var2 - var1; + int var26 = var6 - var4; + int var27 = var3 - var1; + int var28 = var11 - var10; + int var29 = var12 - var10; + int var30 = 0; + if (var2 != var1) { + var30 = (var5 - var4 << 14) / (var2 - var1); + } + + int var31 = 0; + if (var3 != var2) { + var31 = (var6 - var5 << 14) / (var3 - var2); + } + + int var32 = 0; + if (var3 != var1) { + var32 = (var4 - var6 << 14) / (var1 - var3); + } + + int var33 = var24 * var27 - var26 * var25; + if (var33 != 0) { + int var34 = (var28 * var27 - var29 * var25 << 9) / var33; + int var35 = (var29 * var24 - var28 * var26 << 9) / var33; + int var36 = super.field2230.field2458; + var14 = var13 - var14; + var17 = var16 - var17; + var20 = var19 - var20; + var15 -= var13; + var18 -= var16; + var21 -= var19; + int var37 = var15 * var16 - var18 * var13 << 14; + int var38 = (int)(((long)(var18 * var19 - var16 * var21) << 3 << 14) / (long)var36); + int var39 = (int)(((long)(var13 * var21 - var19 * var15) << 14) / (long)var36); + int var40 = var16 * var14 - var13 * var17 << 14; + int var41 = (int)(((long)(var19 * var17 - var16 * var20) << 3 << 14) / (long)var36); + int var42 = (int)(((long)(var13 * var20 - var19 * var14) << 14) / (long)var36); + int var43 = var17 * var15 - var18 * var14 << 14; + int var44 = (int)(((long)(var18 * var20 - var17 * var21) << 3 << 14) / (long)var36); + int var45 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var36); + int[] var46 = super.field2230.Rasterizer3D_rowOffsets; + int var47 = super.field2230.field2449; + int var48; + if (var1 <= var2 && var1 <= var3) { + if (var1 < var47) { + if (var2 > var47) { + var2 = var47; + } + + if (var3 > var47) { + var3 = var47; + } + + var10 = var34 + ((var10 << 9) - var34 * var4); + if (var2 < var3) { + var6 = var4 <<= 14; + if (var1 < 0) { + var6 -= var32 * var1; + var4 -= var30 * var1; + var10 -= var35 * var1; + var1 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var31 * var2; + var2 = 0; + } + + var48 = var1 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if ((var2 == var1 || var32 >= var30) && (var2 != var1 || var32 <= var31)) { + var3 -= var2; + var2 -= var1; + var1 = var46[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var5 += var31; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var3 -= var2; + var2 -= var1; + var1 = var46[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var5 += var31; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var32 * var1; + var4 -= var30 * var1; + var10 -= var35 * var1; + var1 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var31; + var3 = 0; + } + + var48 = var1 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if (var3 != var1 && var32 < var30 || var3 == var1 && var31 > var30) { + var2 -= var3; + var3 -= var1; + var1 = var46[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var31; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var5 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var2 -= var3; + var3 -= var1; + var1 = var46[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var31; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var5 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } else if (var2 <= var3) { + if (var2 < var47) { + if (var3 > var47) { + var3 = var47; + } + + if (var1 > var47) { + var1 = var47; + } + + var11 = var34 + ((var11 << 9) - var5 * var34); + if (var3 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var30 * var2; + var5 -= var31 * var2; + var11 -= var35 * var2; + var2 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var32; + var3 = 0; + } + + var48 = var2 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if ((var3 == var2 || var30 >= var31) && (var3 != var2 || var30 <= var32)) { + var1 -= var3; + var3 -= var2; + var2 = var46[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var6 += var32; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var1 -= var3; + var3 -= var2; + var2 = var46[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var6 += var32; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var6 = var5 <<= 14; + if (var2 < 0) { + var6 -= var30 * var2; + var5 -= var31 * var2; + var11 -= var35 * var2; + var2 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var32 * var1; + var1 = 0; + } + + var48 = var2 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if (var30 < var31) { + var3 -= var1; + var1 -= var2; + var2 = var46[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var32; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var6 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var3 -= var1; + var1 -= var2; + var2 = var46[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var32; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var6 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } else if (var3 < var47) { + if (var1 > var47) { + var1 = var47; + } + + if (var2 > var47) { + var2 = var47; + } + + var12 = (var12 << 9) - var34 * var6 + var34; + if (var1 < var2) { + var5 = var6 <<= 14; + if (var3 < 0) { + var5 -= var3 * var31; + var6 -= var3 * var32; + var12 -= var3 * var35; + var3 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var30 * var1; + var1 = 0; + } + + var48 = var3 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if (var31 < var32) { + var2 -= var1; + var1 -= var3; + var3 = var46[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var4 += var30; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var2 -= var1; + var1 -= var3; + var3 = var46[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var4 += var30; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var4 = var6 <<= 14; + if (var3 < 0) { + var4 -= var3 * var31; + var6 -= var3 * var32; + var12 -= var3 * var35; + var3 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var30 * var2; + var2 = 0; + } + + var48 = var3 - super.field2230.field2453; + var37 += var39 * var48; + var40 += var42 * var48; + var43 += var45 * var48; + if (var31 < var32) { + var1 -= var2; + var2 -= var3; + var3 = var46[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var30; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var4 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var1 -= var2; + var2 -= var3; + var3 = var46[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var30; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1575(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var4 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } + } + } + + @ObfuscatedName("al") + void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { + int[] var23 = super.field2230.Rasterizer3D_textureLoader.getTexturePixels(var22); + int var24; + if (var23 == null) { + var24 = super.field2230.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); + this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class268.method1447(var24, var10), class268.method1447(var24, var11), class268.method1447(var24, var12)); + } else { + super.field2227 = super.field2230.Rasterizer3D_textureLoader.isLowDetail(var22); + super.field2228 = super.field2230.Rasterizer3D_textureLoader.vmethod3989(var22); + var24 = var5 - var4; + int var25 = var2 - var1; + int var26 = var6 - var4; + int var27 = var3 - var1; + int var28 = var11 - var10; + int var29 = var12 - var10; + int var30 = 0; + if (var2 != var1) { + var30 = (var5 - var4 << 14) / (var2 - var1); + } + + int var31 = 0; + if (var3 != var2) { + var31 = (var6 - var5 << 14) / (var3 - var2); + } + + int var32 = 0; + if (var3 != var1) { + var32 = (var4 - var6 << 14) / (var1 - var3); + } + + int var33 = var24 * var27 - var26 * var25; + if (var33 != 0) { + int var34 = (var28 * var27 - var29 * var25 << 9) / var33; + int var35 = (var29 * var24 - var28 * var26 << 9) / var33; + int var36 = super.field2230.field2458; + var14 = var13 - var14; + var17 = var16 - var17; + var20 = var19 - var20; + var15 -= var13; + var18 -= var16; + var21 -= var19; + int var37 = var15 * var16 - var18 * var13 << 14; + int var38 = (int)(((long)(var18 * var19 - var16 * var21) << 14) / (long)var36); + int var39 = (int)(((long)(var13 * var21 - var19 * var15) << 14) / (long)var36); + int var40 = var16 * var14 - var13 * var17 << 14; + int var41 = (int)(((long)(var19 * var17 - var16 * var20) << 14) / (long)var36); + int var42 = (int)(((long)(var13 * var20 - var19 * var14) << 14) / (long)var36); + int var43 = var17 * var15 - var18 * var14 << 14; + int var44 = (int)(((long)(var18 * var20 - var17 * var21) << 14) / (long)var36); + int var45 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var36); + int[] var46 = super.field2230.Rasterizer3D_rowOffsets; + int var47 = super.field2230.field2449; + int var48 = super.field2230.field2453; + int var49; + if (var1 <= var2 && var1 <= var3) { + if (var1 < var47) { + if (var2 > var47) { + var2 = var47; + } + + if (var3 > var47) { + var3 = var47; + } + + var10 = var34 + ((var10 << 9) - var34 * var4); + if (var2 < var3) { + var6 = var4 <<= 14; + if (var1 < 0) { + var6 -= var32 * var1; + var4 -= var30 * var1; + var10 -= var35 * var1; + var1 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var31 * var2; + var2 = 0; + } + + var49 = var1 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if ((var2 == var1 || var32 >= var30) && (var2 != var1 || var32 <= var31)) { + var3 -= var2; + var2 -= var1; + var1 = var46[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var5 += var31; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var3 -= var2; + var2 -= var1; + var1 = var46[var1]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var5 += var31; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var5 = var4 <<= 14; + if (var1 < 0) { + var5 -= var32 * var1; + var4 -= var30 * var1; + var10 -= var35 * var1; + var1 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var31; + var3 = 0; + } + + var49 = var1 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if (var3 != var1 && var32 < var30 || var3 == var1 && var31 > var30) { + var2 -= var3; + var3 -= var1; + var1 = var46[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var31; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var5 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var2 -= var3; + var3 -= var1; + var1 = var46[var1]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var6 += var31; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var37, var40, var43, var38, var41, var44); + var5 += var32; + var4 += var30; + var10 += var35; + var1 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } else if (var2 <= var3) { + if (var2 < var47) { + if (var3 > var47) { + var3 = var47; + } + + if (var1 > var47) { + var1 = var47; + } + + var11 = var34 + ((var11 << 9) - var5 * var34); + if (var3 < var1) { + var4 = var5 <<= 14; + if (var2 < 0) { + var4 -= var30 * var2; + var5 -= var31 * var2; + var11 -= var35 * var2; + var2 = 0; + } + + var6 <<= 14; + if (var3 < 0) { + var6 -= var3 * var32; + var3 = 0; + } + + var49 = var2 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if ((var3 == var2 || var30 >= var31) && (var3 != var2 || var30 <= var32)) { + var1 -= var3; + var3 -= var2; + var2 = var46[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var6 += var32; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var1 -= var3; + var3 -= var2; + var2 = var46[var2]; + + while (true) { + --var3; + if (var3 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var6 += var32; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var6 = var5 <<= 14; + if (var2 < 0) { + var6 -= var30 * var2; + var5 -= var31 * var2; + var11 -= var35 * var2; + var2 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var32 * var1; + var1 = 0; + } + + var49 = var2 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if (var30 < var31) { + var3 -= var1; + var1 -= var2; + var2 = var46[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var32; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var6 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var3 -= var1; + var1 -= var2; + var2 = var46[var2]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var3; + if (var3 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var4 += var32; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var37, var40, var43, var38, var41, var44); + var6 += var30; + var5 += var31; + var11 += var35; + var2 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } else if (var3 < var47) { + if (var1 > var47) { + var1 = var47; + } + + if (var2 > var47) { + var2 = var47; + } + + var12 = (var12 << 9) - var34 * var6 + var34; + if (var1 < var2) { + var5 = var6 <<= 14; + if (var3 < 0) { + var5 -= var3 * var31; + var6 -= var3 * var32; + var12 -= var3 * var35; + var3 = 0; + } + + var4 <<= 14; + if (var1 < 0) { + var4 -= var30 * var1; + var1 = 0; + } + + var49 = var3 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if (var31 < var32) { + var2 -= var1; + var1 -= var3; + var3 = var46[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var4 += var30; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var2 -= var1; + var1 -= var3; + var3 = var46[var3]; + + while (true) { + --var1; + if (var1 < 0) { + while (true) { + --var2; + if (var2 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var4 += var30; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } else { + var4 = var6 <<= 14; + if (var3 < 0) { + var4 -= var3 * var31; + var6 -= var3 * var32; + var12 -= var3 * var35; + var3 = 0; + } + + var5 <<= 14; + if (var2 < 0) { + var5 -= var30 * var2; + var2 = 0; + } + + var49 = var3 - var48; + var37 += var39 * var49; + var40 += var42 * var49; + var43 += var45 * var49; + if (var31 < var32) { + var1 -= var2; + var2 -= var3; + var3 = var46[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var30; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var4 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } else { + var1 -= var2; + var2 -= var3; + var3 = var46[var3]; + + while (true) { + --var2; + if (var2 < 0) { + while (true) { + --var1; + if (var1 < 0) { + return; + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var5 += var30; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + + this.method1577(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var37, var40, var43, var38, var41, var44); + var4 += var31; + var6 += var32; + var12 += var35; + var3 += Rasterizer2D.Rasterizer2D_width; + var37 += var39; + var40 += var42; + var43 += var45; + } + } + } + } + } + } + } + + @ObfuscatedName("bv") + final void method1571(int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + if (super.field2230.field2446) { + if (var6 > super.field2230.field2455) { + var6 = super.field2230.field2455; + } + + if (var5 < 0) { + var5 = 0; + } + } + + if (var5 < var6) { + var2 += var5; + var7 += var5 * var8; + int var9; + int var10; + int var11; + int var12; + if (super.field2230.field2457) { + var4 = var6 - var5 >> 2; + var8 <<= 2; + if (super.field2230.field2452 == 0) { + if (var4 > 0) { + do { + var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var3 = super.field2229[var9]; + var7 += var8; + var1[var2++] = var3; + var1[var2++] = var3; + var1[var2++] = var3; + var1[var2++] = var3; + --var4; + } while(var4 > 0); + } + + var4 = var6 - var5 & 3; + if (var4 > 0) { + var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var3 = super.field2229[var9]; + + do { + var1[var2++] = var3; + --var4; + } while(var4 > 0); + } + } else { + var9 = super.field2230.field2452; + var10 = 256 - super.field2230.field2452; + if (var4 > 0) { + do { + var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var3 = super.field2229[var11]; + var7 += var8; + var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + --var4; + } while(var4 > 0); + } + + var4 = var6 - var5 & 3; + if (var4 > 0) { + var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var3 = super.field2229[var11]; + var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); + + do { + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + --var4; + } while(var4 > 0); + } + } + + } else { + var4 = var6 - var5; + if (super.field2230.field2452 == 0) { + do { + var9 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var1[var2++] = super.field2229[var9]; + var7 += var8; + --var4; + } while(var4 > 0); + } else { + var9 = super.field2230.field2452; + var10 = 256 - super.field2230.field2452; + + do { + var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; + var3 = super.field2229[var11]; + var7 += var8; + var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); + var12 = var1[var2]; + var1[var2++] = var3 + ((var12 & 16711935) * var9 >> 8 & 16711935) + (var9 * (var12 & 65280) >> 8 & 65280); + --var4; + } while(var4 > 0); + } + + } + } + } + + @ObfuscatedName("bf") + void method1573(int[] var1, int var2, int var3, int var4, int var5, int var6) { + if (super.field2230.field2446) { + if (var6 > super.field2230.field2455) { + var6 = super.field2230.field2455; + } + + if (var5 < 0) { + var5 = 0; + } + } + + if (var5 < var6) { + var2 += var5; + var4 = var6 - var5 >> 2; + if (super.field2230.field2452 != 0) { + if (super.field2230.field2452 == 254) { + while (true) { + --var4; + if (var4 < 0) { + var4 = var6 - var5 & 3; + + while (true) { + --var4; + if (var4 < 0) { + return; + } + + var1[var2++] = var1[var2]; + } + } + + var1[var2++] = var1[var2]; + var1[var2++] = var1[var2]; + var1[var2++] = var1[var2]; + var1[var2++] = var1[var2]; + } + } else { + int var7 = super.field2230.field2452; + int var8 = 256 - super.field2230.field2452; + var3 = ((var3 & 16711935) * var8 >> 8 & 16711935) + (var8 * (var3 & 65280) >> 8 & 65280); + + while (true) { + --var4; + int var9; + if (var4 < 0) { + var4 = var6 - var5 & 3; + + while (true) { + --var4; + if (var4 < 0) { + return; + } + + var9 = var1[var2]; + var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); + } + } + + var9 = var1[var2]; + var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); + var9 = var1[var2]; + var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); + var9 = var1[var2]; + var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); + var9 = var1[var2]; + var1[var2++] = var3 + ((var9 & 16711935) * var7 >> 8 & 16711935) + (var7 * (var9 & 65280) >> 8 & 65280); + } + } + } else { + while (true) { + --var4; + if (var4 < 0) { + var4 = var6 - var5 & 3; + + while (true) { + --var4; + if (var4 < 0) { + return; + } + + var1[var2++] = var3; + } + } + + var1[var2++] = var3; + var1[var2++] = var3; + var1[var2++] = var3; + var1[var2++] = var3; + } + } + } + } + + @ObfuscatedName("bg") + void method1575(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { + if (super.field2230.field2446) { + if (var7 > super.field2230.field2455) { + var7 = super.field2230.field2455; + } + + if (var6 < 0) { + var6 = 0; + } + } + + if (var6 < var7) { + var5 += var6; + var8 += var9 * var6; + int var18 = var7 - var6; + int var16; + int var10000; + int var17; + int var19; + int var20; + int var21; + int var22; + int var23; + int var24; + if (super.field2227) { + var24 = var6 - super.field2230.field2454; + var10 += (var13 >> 3) * var24; + var11 += var24 * (var14 >> 3); + var12 += (var15 >> 3) * var24; + var23 = var12 >> 12; + if (var23 != 0) { + var19 = var10 / var23; + var20 = var11 / var23; + if (var19 < 0) { + var19 = 0; + } else if (var19 > 4032) { + var19 = 4032; + } + } else { + var19 = 0; + var20 = 0; + } + + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 12; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 4032) { + var21 = 4032; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 20) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); + var18 >>= 3; + var9 <<= 3; + var16 = var8 >> 8; + if (super.field2228) { + if (var18 > 0) { + do { + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var10000 = var3 + var17; + var19 = var21; + var20 = var22; + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 12; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 4032) { + var21 = 4032; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 20) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + --var18; + } while(var18 > 0); + } + } else { + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var10000 = var3 + var17; + var19 = var21; + var20 = var22; + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 12; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 4032) { + var21 = 4032; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 20) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20); + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + --var18; + } while(var18 > 0); + } + } + } else { + var24 = var6 - super.field2230.field2454; + var10 += (var13 >> 3) * var24; + var11 += var24 * (var14 >> 3); + var12 += (var15 >> 3) * var24; + var23 = var12 >> 14; + if (var23 != 0) { + var19 = var10 / var23; + var20 = var11 / var23; + if (var19 < 0) { + var19 = 0; + } else if (var19 > 16256) { + var19 = 16256; + } + } else { + var19 = 0; + var20 = 0; + } + + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 14; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 16256) { + var21 = 16256; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 18) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); + var18 >>= 3; + var9 <<= 3; + var16 = var8 >> 8; + if (super.field2228) { + if (var18 > 0) { + do { + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var10000 = var3 + var17; + var19 = var21; + var20 = var22; + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 14; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 16256) { + var21 = 16256; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 18) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + --var18; + } while(var18 > 0); + } + } else { + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var10000 = var3 + var17; + var19 = var21; + var20 = var22; + var10 += var13; + var11 += var14; + var12 += var15; + var23 = var12 >> 14; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + if (var21 < 0) { + var21 = 0; + } else if (var21 > 16256) { + var21 = 16256; + } + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 18) + var20; + var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18); + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + --var18; + } while(var18 > 0); + } + } + } + + } + } + + @ObfuscatedName("ba") + void method1577(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10, int var11, int var12, int var13, int var14, int var15) { + if (super.field2230.field2446) { + if (var7 > super.field2230.field2455) { + var7 = super.field2230.field2455; + } + + if (var6 < 0) { + var6 = 0; + } + } + + if (var6 < var7) { + var5 += var6; + var8 += var9 * var6; + int var18 = var7 - var6; + int var16; + int var17; + int var19; + int var20; + int var21; + int var22; + int var23; + int var24; + if (super.field2227) { + var24 = var6 - super.field2230.field2454; + var10 += var13 * var24; + var11 += var24 * var14; + var12 += var24 * var15; + var23 = var12 >> 12; + if (var23 != 0) { + var19 = var10 / var23; + var20 = var11 / var23; + } else { + var19 = 0; + var20 = 0; + } + + var10 += var13 * var18; + var11 += var18 * var14; + var12 += var18 * var15; + var23 = var12 >> 12; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 20) + var20; + var17 = (var22 - var20) / var18 + ((var21 - var19) / var18 << 20); + var18 >>= 3; + var9 <<= 3; + var16 = var8 >> 8; + if (super.field2228) { + if (var18 > 0) { + do { + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + var4 = var2[(var3 & 4032) + (var3 >>> 26)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + --var18; + } while(var18 > 0); + } + } else { + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 4032) + (var3 >>> 26)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + --var18; + } while(var18 > 0); + } + } + } else { + var24 = var6 - super.field2230.field2454; + var10 += var13 * var24; + var11 += var24 * var14; + var12 += var24 * var15; + var23 = var12 >> 14; + if (var23 != 0) { + var19 = var10 / var23; + var20 = var11 / var23; + } else { + var19 = 0; + var20 = 0; + } + + var10 += var13 * var18; + var11 += var18 * var14; + var12 += var18 * var15; + var23 = var12 >> 14; + if (var23 != 0) { + var21 = var10 / var23; + var22 = var11 / var23; + } else { + var21 = 0; + var22 = 0; + } + + var3 = (var19 << 18) + var20; + var17 = (var22 - var20) / var18 + ((var21 - var19) / var18 << 18); + var18 >>= 3; + var9 <<= 3; + var16 = var8 >> 8; + if (super.field2228) { + if (var18 > 0) { + do { + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + var4 = var2[(var3 & 16256) + (var3 >>> 25)]; + var1[var5++] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + var3 += var17; + --var18; + } while(var18 > 0); + } + } else { + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + var8 += var9; + var16 = var8 >> 8; + --var18; + } while(var18 > 0); + } + + var18 = var7 - var6 & 7; + if (var18 > 0) { + do { + if ((var4 = var2[(var3 & 16256) + (var3 >>> 25)]) != 0) { + var1[var5] = (var16 * (var4 & 16711935) & -16711936) + (var16 * (var4 & 65280) & 16711680) >> 8; + } + + ++var5; + var3 += var17; + --var18; + } while(var18 > 0); + } + } + } + + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class284.java b/osrs/src/main/java/class284.java deleted file mode 100644 index 5ab7b2e3d..000000000 --- a/osrs/src/main/java/class284.java +++ /dev/null @@ -1,7 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("kh") -public interface class284 { - @ObfuscatedName("au") - void method1589(Object var1); -} \ No newline at end of file diff --git a/osrs/src/main/java/class245.java b/osrs/src/main/java/class285.java similarity index 81% rename from osrs/src/main/java/class245.java rename to osrs/src/main/java/class285.java index 712e895d5..9cef030fc 100644 --- a/osrs/src/main/java/class245.java +++ b/osrs/src/main/java/class285.java @@ -2,16 +2,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("jj") -public class class245 extends class228 { +@ObfuscatedName("kk") +public class class285 extends class268 { @ObfuscatedSignature( - descriptor = "(Ljl;)V" + descriptor = "(Lkh;)V" ) - class245(Clips var1) { + class285(Clips var1) { super(var1); } - @ObfuscatedName("ai") + @ObfuscatedName("au") @Export("vmethod1374") void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12) { int var13 = var5 - var4; @@ -49,8 +49,8 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo int var26 = (var18 * var13 - var17 * var15 << 8) / var24; float var27 = (var19 * (float)var16 - var20 * (float)var14) / (float)var24; float var28 = (var20 * (float)var13 - var19 * (float)var15) / (float)var24; - int[] var29 = super.field2047.Rasterizer3D_rowOffsets; - int var30 = super.field2047.field2269; + int[] var29 = super.field2230.Rasterizer3D_rowOffsets; + int var30 = super.field2230.field2449; if (var1 <= var2 && var1 <= var3) { if (var1 < var30) { if (var2 > var30) { @@ -93,7 +93,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var5 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var5 >> 14, var10, var25, var7, var27); var6 += var23; var5 += var21; var10 += var26; @@ -102,7 +102,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var25, var7, var27); var6 += var23; var4 += var22; var10 += var26; @@ -123,7 +123,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var6 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var6 >> 14, var10, var25, var7, var27); var6 += var23; var5 += var21; var10 += var26; @@ -132,7 +132,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var25, var7, var27); var6 += var23; var4 += var22; var10 += var26; @@ -170,7 +170,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var6 >> 14, var4 >> 14, var10, var25, var7, var27); var6 += var21; var4 += var22; var10 += var26; @@ -179,7 +179,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var5 >> 14, var4 >> 14, var10, var25, var7, var27); var5 += var23; var4 += var22; var10 += var26; @@ -200,7 +200,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var6 >> 14, var10, var25, var7, var27); var6 += var21; var4 += var22; var10 += var26; @@ -209,7 +209,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var10, var25, var7, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var1, 0, 0, var4 >> 14, var5 >> 14, var10, var25, var7, var27); var5 += var23; var4 += var22; var10 += var26; @@ -261,7 +261,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var6 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var6 >> 14, var11, var25, var8, var27); var4 += var22; var6 += var23; var11 += var26; @@ -270,7 +270,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var25, var8, var27); var4 += var22; var5 += var21; var11 += var26; @@ -291,7 +291,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var4 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var4 >> 14, var11, var25, var8, var27); var4 += var22; var6 += var23; var11 += var26; @@ -300,7 +300,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var25, var8, var27); var4 += var22; var5 += var21; var11 += var26; @@ -338,7 +338,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var4 >> 14, var5 >> 14, var11, var25, var8, var27); var4 += var23; var5 += var21; var11 += var26; @@ -347,7 +347,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var5 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var6 >> 14, var5 >> 14, var11, var25, var8, var27); var6 += var22; var5 += var21; var11 += var26; @@ -368,7 +368,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var4 >> 14, var11, var25, var8, var27); var4 += var23; var5 += var21; var11 += var26; @@ -377,7 +377,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var6 >> 14, var11, var25, var8, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var2, 0, 0, var5 >> 14, var6 >> 14, var11, var25, var8, var27); var6 += var22; var5 += var21; var11 += var26; @@ -428,7 +428,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var4 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var4 >> 14, var12, var25, var9, var27); var5 += var21; var4 += var22; var12 += var26; @@ -437,7 +437,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var25, var9, var27); var5 += var21; var6 += var23; var12 += var26; @@ -458,7 +458,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var5 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var5 >> 14, var12, var25, var9, var27); var5 += var21; var4 += var22; var12 += var26; @@ -467,7 +467,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var25, var9, var27); var5 += var21; var6 += var23; var12 += var26; @@ -505,7 +505,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var5 >> 14, var6 >> 14, var12, var25, var9, var27); var5 += var22; var6 += var23; var12 += var26; @@ -514,7 +514,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var6 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var4 >> 14, var6 >> 14, var12, var25, var9, var27); var4 += var21; var6 += var23; var12 += var26; @@ -535,7 +535,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var5 >> 14, var12, var25, var9, var27); var5 += var22; var6 += var23; var12 += var26; @@ -544,7 +544,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1369(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var4 >> 14, var12, var25, var9, var27); + this.method1586(Rasterizer2D.Rasterizer2D_pixels, var3, 0, 0, var6 >> 14, var4 >> 14, var12, var25, var9, var27); var4 += var21; var6 += var23; var12 += var26; @@ -557,7 +557,7 @@ void vmethod1374(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - @ObfuscatedName("az") + @ObfuscatedName("aa") @Export("vmethod1366") void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10) { int var11 = var5 - var4; @@ -591,8 +591,8 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo if (var20 != 0) { float var21 = (var15 * (float)var14 - var16 * (float)var12) / (float)var20; float var22 = (var16 * (float)var11 - var15 * (float)var13) / (float)var20; - int[] var23 = super.field2047.Rasterizer3D_rowOffsets; - int var24 = super.field2047.field2269; + int[] var23 = super.field2230.Rasterizer3D_rowOffsets; + int var24 = super.field2230.field2449; if (var1 <= var2 && var1 <= var3) { if (var1 < var24) { if (var2 > var24) { @@ -633,7 +633,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var5 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var5 >> 14, var7, var21); var6 += var19; var5 += var17; var1 += Rasterizer2D.Rasterizer2D_width; @@ -641,7 +641,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14, var7, var21); var6 += var19; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -661,7 +661,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var6 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var6 >> 14, var7, var21); var6 += var19; var5 += var17; var1 += Rasterizer2D.Rasterizer2D_width; @@ -669,7 +669,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14, var7, var21); var6 += var19; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -705,7 +705,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var6 >> 14, var4 >> 14, var7, var21); var6 += var17; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -713,7 +713,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var4 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var5 >> 14, var4 >> 14, var7, var21); var5 += var19; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -733,7 +733,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var6 >> 14, var7, var21); var6 += var17; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -741,7 +741,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var5 >> 14, var7, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var1, var10, 0, var4 >> 14, var5 >> 14, var7, var21); var5 += var19; var4 += var18; var1 += Rasterizer2D.Rasterizer2D_width; @@ -790,7 +790,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var6 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var6 >> 14, var8, var21); var4 += var18; var6 += var19; var2 += Rasterizer2D.Rasterizer2D_width; @@ -798,7 +798,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14, var8, var21); var4 += var18; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -818,7 +818,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var4 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var4 >> 14, var8, var21); var4 += var18; var6 += var19; var2 += Rasterizer2D.Rasterizer2D_width; @@ -826,7 +826,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14, var8, var21); var4 += var18; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -862,7 +862,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var4 >> 14, var5 >> 14, var8, var21); var4 += var19; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -870,7 +870,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var5 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var6 >> 14, var5 >> 14, var8, var21); var6 += var18; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -890,7 +890,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var4 >> 14, var8, var21); var4 += var19; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -898,7 +898,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var6 >> 14, var8, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var2, var10, 0, var5 >> 14, var6 >> 14, var8, var21); var6 += var18; var5 += var17; var2 += Rasterizer2D.Rasterizer2D_width; @@ -946,7 +946,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var4 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var4 >> 14, var9, var21); var5 += var17; var4 += var18; var3 += Rasterizer2D.Rasterizer2D_width; @@ -954,7 +954,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14, var9, var21); var5 += var17; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -974,7 +974,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var5 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var5 >> 14, var9, var21); var5 += var17; var4 += var18; var3 += Rasterizer2D.Rasterizer2D_width; @@ -982,7 +982,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14, var9, var21); var5 += var17; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -1018,7 +1018,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var5 >> 14, var6 >> 14, var9, var21); var5 += var18; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -1026,7 +1026,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var6 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var4 >> 14, var6 >> 14, var9, var21); var4 += var17; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -1046,7 +1046,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var5 >> 14, var9, var21); var5 += var18; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -1054,7 +1054,7 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1371(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var4 >> 14, var9, var21); + this.method1588(Rasterizer2D.Rasterizer2D_pixels, var3, var10, 0, var6 >> 14, var4 >> 14, var9, var21); var4 += var17; var6 += var19; var3 += Rasterizer2D.Rasterizer2D_width; @@ -1066,17 +1066,17 @@ void vmethod1366(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - @ObfuscatedName("ap") + @ObfuscatedName("ac") @Export("vmethod1378") void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { - int[] var23 = super.field2047.Rasterizer3D_textureLoader.getTexturePixels(var22); + int[] var23 = super.field2230.Rasterizer3D_textureLoader.getTexturePixels(var22); int var24; if (var23 == null) { - var24 = super.field2047.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); - this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class228.method1222(var24, var10), class228.method1222(var24, var11), class228.method1222(var24, var12)); + var24 = super.field2230.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); + this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class268.method1447(var24, var10), class268.method1447(var24, var11), class268.method1447(var24, var12)); } else { - super.field2044 = super.field2047.Rasterizer3D_textureLoader.isLowDetail(var22); - super.field2045 = super.field2047.Rasterizer3D_textureLoader.vmethod3989(var22); + super.field2227 = super.field2230.Rasterizer3D_textureLoader.isLowDetail(var22); + super.field2228 = super.field2230.Rasterizer3D_textureLoader.vmethod3989(var22); var24 = var5 - var4; int var25 = var2 - var1; int var26 = var6 - var4; @@ -1106,7 +1106,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo float var37 = var9 - var7; float var38 = (var36 * (float)var27 - var37 * (float)var25) / (float)var33; float var39 = (var37 * (float)var24 - var36 * (float)var26) / (float)var33; - int var40 = super.field2047.field2280; + int var40 = super.field2230.field2458; var14 = var13 - var14; var17 = var16 - var17; var20 = var19 - var20; @@ -1122,8 +1122,8 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo int var47 = var17 * var15 - var18 * var14 << 14; int var48 = (int)(((long)(var18 * var20 - var17 * var21) << 3 << 14) / (long)var40); int var49 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var40); - int[] var50 = super.field2047.Rasterizer3D_rowOffsets; - int var51 = super.field2047.field2269; + int[] var50 = super.field2230.Rasterizer3D_rowOffsets; + int var51 = super.field2230.field2449; int var52; if (var1 <= var2 && var1 <= var3) { if (var1 < var51) { @@ -1153,7 +1153,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var2 = 0; } - var52 = var1 - super.field2047.field2274; + var52 = var1 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1171,7 +1171,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var5 += var31; var10 += var35; @@ -1183,7 +1183,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var4 += var30; var10 += var35; @@ -1207,7 +1207,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var5 += var31; var10 += var35; @@ -1219,7 +1219,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var4 += var30; var10 += var35; @@ -1246,7 +1246,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var3 = 0; } - var52 = var1 - super.field2047.field2274; + var52 = var1 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1264,7 +1264,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var31; var4 += var30; var10 += var35; @@ -1276,7 +1276,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var5 += var32; var4 += var30; var10 += var35; @@ -1300,7 +1300,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var31; var4 += var30; var10 += var35; @@ -1312,7 +1312,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var5 += var32; var4 += var30; var10 += var35; @@ -1353,7 +1353,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var3 = 0; } - var52 = var2 - super.field2047.field2274; + var52 = var2 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1371,7 +1371,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var6 += var32; var11 += var35; @@ -1383,7 +1383,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var5 += var31; var11 += var35; @@ -1407,7 +1407,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var6 += var32; var11 += var35; @@ -1419,7 +1419,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var5 += var31; var11 += var35; @@ -1446,7 +1446,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var1 = 0; } - var52 = var2 - super.field2047.field2274; + var52 = var2 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1464,7 +1464,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var32; var5 += var31; var11 += var35; @@ -1476,7 +1476,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var6 += var30; var5 += var31; var11 += var35; @@ -1500,7 +1500,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var32; var5 += var31; var11 += var35; @@ -1512,7 +1512,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var6 += var30; var5 += var31; var11 += var35; @@ -1552,7 +1552,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var1 = 0; } - var52 = var3 - super.field2047.field2274; + var52 = var3 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1570,7 +1570,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var4 += var30; var12 += var35; @@ -1582,7 +1582,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var6 += var32; var12 += var35; @@ -1606,7 +1606,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var4 += var30; var12 += var35; @@ -1618,7 +1618,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var6 += var32; var12 += var35; @@ -1645,7 +1645,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo var2 = 0; } - var52 = var3 - super.field2047.field2274; + var52 = var3 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1663,7 +1663,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var30; var6 += var32; var12 += var35; @@ -1675,7 +1675,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var4 += var31; var6 += var32; var12 += var35; @@ -1699,7 +1699,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var30; var6 += var32; var12 += var35; @@ -1711,7 +1711,7 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1378(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1595(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var4 += var31; var6 += var32; var12 += var35; @@ -1728,17 +1728,17 @@ void vmethod1378(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - @ObfuscatedName("aa") + @ObfuscatedName("al") @Export("vmethod1362") void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8, float var9, int var10, int var11, int var12, int var13, int var14, int var15, int var16, int var17, int var18, int var19, int var20, int var21, int var22) { - int[] var23 = super.field2047.Rasterizer3D_textureLoader.getTexturePixels(var22); + int[] var23 = super.field2230.Rasterizer3D_textureLoader.getTexturePixels(var22); int var24; if (var23 == null) { - var24 = super.field2047.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); - this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class228.method1222(var24, var10), class228.method1222(var24, var11), class228.method1222(var24, var12)); + var24 = super.field2230.Rasterizer3D_textureLoader.getAverageTextureRGB(var22); + this.vmethod1374(var1, var2, var3, var4, var5, var6, var7, var8, var9, class268.method1447(var24, var10), class268.method1447(var24, var11), class268.method1447(var24, var12)); } else { - super.field2044 = super.field2047.Rasterizer3D_textureLoader.isLowDetail(var22); - super.field2045 = super.field2047.Rasterizer3D_textureLoader.vmethod3989(var22); + super.field2227 = super.field2230.Rasterizer3D_textureLoader.isLowDetail(var22); + super.field2228 = super.field2230.Rasterizer3D_textureLoader.vmethod3989(var22); var24 = var5 - var4; int var25 = var2 - var1; int var26 = var6 - var4; @@ -1768,7 +1768,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo float var37 = var9 - var7; float var38 = (var36 * (float)var27 - var37 * (float)var25) / (float)var33; float var39 = (var37 * (float)var24 - var36 * (float)var26) / (float)var33; - int var40 = super.field2047.field2280; + int var40 = super.field2230.field2458; var14 = var13 - var14; var17 = var16 - var17; var20 = var19 - var20; @@ -1784,8 +1784,8 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo int var47 = var17 * var15 - var18 * var14 << 14; int var48 = (int)(((long)(var18 * var20 - var17 * var21) << 14) / (long)var40); int var49 = (int)(((long)(var21 * var14 - var15 * var20) << 14) / (long)var40); - int[] var50 = super.field2047.Rasterizer3D_rowOffsets; - int var51 = super.field2047.field2269; + int[] var50 = super.field2230.Rasterizer3D_rowOffsets; + int var51 = super.field2230.field2449; int var52; if (var1 <= var2 && var1 <= var3) { if (var1 < var51) { @@ -1815,7 +1815,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var2 = 0; } - var52 = var1 - super.field2047.field2274; + var52 = var1 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1833,7 +1833,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var5 += var31; var10 += var35; @@ -1845,7 +1845,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var4 += var30; var10 += var35; @@ -1869,7 +1869,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var5 += var31; var10 += var35; @@ -1881,7 +1881,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var32; var4 += var30; var10 += var35; @@ -1908,7 +1908,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var3 = 0; } - var52 = var1 - super.field2047.field2274; + var52 = var1 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -1926,7 +1926,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var6 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var31; var4 += var30; var10 += var35; @@ -1938,7 +1938,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var5 >> 14, var4 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var5 += var32; var4 += var30; var10 += var35; @@ -1962,7 +1962,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var6 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var6 += var31; var4 += var30; var10 += var35; @@ -1974,7 +1974,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var1, var4 >> 14, var5 >> 14, var10, var34, var7, var38, var41, var44, var47, var42, var45, var48); var5 += var32; var4 += var30; var10 += var35; @@ -2015,7 +2015,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var3 = 0; } - var52 = var2 - super.field2047.field2274; + var52 = var2 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -2033,7 +2033,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var6 += var32; var11 += var35; @@ -2045,7 +2045,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var5 += var31; var11 += var35; @@ -2069,7 +2069,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var6 += var32; var11 += var35; @@ -2081,7 +2081,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var30; var5 += var31; var11 += var35; @@ -2108,7 +2108,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var1 = 0; } - var52 = var2 - super.field2047.field2274; + var52 = var2 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -2126,7 +2126,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var4 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var32; var5 += var31; var11 += var35; @@ -2138,7 +2138,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var6 >> 14, var5 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var6 += var30; var5 += var31; var11 += var35; @@ -2162,7 +2162,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var4 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var4 += var32; var5 += var31; var11 += var35; @@ -2174,7 +2174,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var2, var5 >> 14, var6 >> 14, var11, var34, var8, var38, var41, var44, var47, var42, var45, var48); var6 += var30; var5 += var31; var11 += var35; @@ -2214,7 +2214,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var1 = 0; } - var52 = var3 - super.field2047.field2274; + var52 = var3 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -2232,7 +2232,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var4 += var30; var12 += var35; @@ -2244,7 +2244,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var6 += var32; var12 += var35; @@ -2268,7 +2268,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var4 += var30; var12 += var35; @@ -2280,7 +2280,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var31; var6 += var32; var12 += var35; @@ -2307,7 +2307,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo var2 = 0; } - var52 = var3 - super.field2047.field2274; + var52 = var3 - super.field2230.field2453; var41 += var43 * var52; var44 += var46 * var52; var47 += var49 * var52; @@ -2325,7 +2325,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var5 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var30; var6 += var32; var12 += var35; @@ -2337,7 +2337,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var4 >> 14, var6 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var4 += var31; var6 += var32; var12 += var35; @@ -2361,7 +2361,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo return; } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var5 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var5 += var30; var6 += var32; var12 += var35; @@ -2373,7 +2373,7 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - this.method1380(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); + this.method1597(Rasterizer2D.Rasterizer2D_pixels, var23, 0, 0, var3, var6 >> 14, var4 >> 14, var12, var34, var9, var38, var41, var44, var47, var42, var45, var48); var4 += var31; var6 += var32; var12 += var35; @@ -2390,38 +2390,38 @@ void vmethod1362(int var1, int var2, int var3, int var4, int var5, int var6, flo } } - @ObfuscatedName("bf") - final void method1365(int[] var1, float[] var2, int var3, int var4, float var5) { - int var6 = method1373(var2[var3], var5) ? 1 : 0; + @ObfuscatedName("bv") + final void method1582(int[] var1, float[] var2, int var3, int var4, float var5) { + int var6 = method1590(var2[var3], var5) ? 1 : 0; int var7 = 1 - var6; var1[var3] = var7 * var1[var3] + var6 * var4; var2[var3] = (float)var6 * var5 + (float)var7 * var2[var3]; } - @ObfuscatedName("bq") - final void method1366(int[] var1, float[] var2, int var3, int var4, float var5) { - if (method1373(var2[var3], var5)) { + @ObfuscatedName("bf") + final void method1583(int[] var1, float[] var2, int var3, int var4, float var5) { + if (method1590(var2[var3], var5)) { int var6 = (var4 & (var4 >> 31 & 1) - 1) >> 8; - var1[var3] = super.field2046[var6]; + var1[var3] = super.field2229[var6]; var2[var3] = var5; } } - @ObfuscatedName("ba") - final void method1367(int[] var1, float[] var2, int var3, int var4, int var5, float var6) { - if (method1373(var2[var3], var6)) { + @ObfuscatedName("bg") + final void method1584(int[] var1, float[] var2, int var3, int var4, int var5, float var6) { + if (method1590(var2[var3], var6)) { int var7 = var1[var3]; var1[var3] = ((var7 & 16711935) * var5 >> 8 & 16711935) + var4 + (var5 * (var7 & 65280) >> 8 & 65280); } } - @ObfuscatedName("bl") - final void method1368(int[] var1, float[] var2, int var3, int var4, int var5, int var6, float var7) { - if (method1373(var2[var3], var7)) { + @ObfuscatedName("ba") + final void method1585(int[] var1, float[] var2, int var3, int var4, int var5, int var6, float var7) { + if (method1590(var2[var3], var7)) { int var8 = (var4 & (var4 >> 31 & 1) - 1) >> 8; - int var9 = super.field2046[var8]; + int var9 = super.field2229[var8]; var9 = ((var9 & 65280) * var6 >> 8 & 65280) + ((var9 & 16711935) * var6 >> 8 & 16711935); int var10 = var1[var3]; var1[var3] = var9 + ((var10 & 16711935) * var5 >> 8 & 16711935) + (var5 * (var10 & 65280) >> 8 & 65280); @@ -2429,11 +2429,11 @@ final void method1368(int[] var1, float[] var2, int var3, int var4, int var5, in } - @ObfuscatedName("bp") - final void method1369(int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, float var9, float var10) { - if (super.field2047.field2268) { - if (var6 > super.field2047.field2276) { - var6 = super.field2047.field2276; + @ObfuscatedName("bm") + final void method1586(int[] var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, float var9, float var10) { + if (super.field2230.field2446) { + if (var6 > super.field2230.field2455) { + var6 = super.field2230.field2455; } if (var5 < 0) { @@ -2447,25 +2447,25 @@ final void method1369(int[] var1, int var2, int var3, int var4, int var5, int va var9 += var10 * (float)var5; int var11; int var12; - if (super.field2047.field2279) { + if (super.field2230.field2457) { var4 = var6 - var5 >> 2; var8 <<= 2; - if (super.field2047.field2275 == 0) { + if (super.field2230.field2452 == 0) { if (var4 > 0) { do { var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var11]; + var3 = super.field2229[var11]; var7 += var8; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var9); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var9); var9 += var10; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var9); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var9); var9 += var10; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var9); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var9); var9 += var10; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var9); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var9); var9 += var10; ++var2; --var4; @@ -2475,35 +2475,35 @@ final void method1369(int[] var1, int var2, int var3, int var4, int var5, int va var4 = var6 - var5 & 3; if (var4 > 0) { var11 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var11]; + var3 = super.field2229[var11]; do { - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var9); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var9); var9 += var10; ++var2; --var4; } while(var4 > 0); } } else { - var11 = super.field2047.field2275; - var12 = 256 - super.field2047.field2275; + var11 = super.field2230.field2452; + var12 = 256 - super.field2230.field2452; int var13; if (var4 > 0) { do { var13 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var13]; + var3 = super.field2229[var13]; var7 += var8; var3 = ((var3 & 16711935) * var12 >> 8 & 16711935) + (var12 * (var3 & 65280) >> 8 & 65280); - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var11, var9); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var11, var9); ++var2; var9 += var10; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var11, var9); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var11, var9); ++var2; var9 += var10; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var11, var9); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var11, var9); ++var2; var9 += var10; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var11, var9); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var11, var9); ++var2; var9 += var10; --var4; @@ -2513,11 +2513,11 @@ final void method1369(int[] var1, int var2, int var3, int var4, int var5, int va var4 = var6 - var5 & 3; if (var4 > 0) { var13 = (var7 & (var7 >> 31 & 1) - 1) >> 8; - var3 = super.field2046[var13]; + var3 = super.field2229[var13]; var3 = ((var3 & 16711935) * var12 >> 8 & 16711935) + (var12 * (var3 & 65280) >> 8 & 65280); do { - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var11, var9); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var11, var9); ++var2; var9 += var10; --var4; @@ -2527,20 +2527,20 @@ final void method1369(int[] var1, int var2, int var3, int var4, int var5, int va } else { var4 = var6 - var5; - if (super.field2047.field2275 == 0) { + if (super.field2230.field2452 == 0) { do { - this.method1366(var1, Rasterizer2D.field4217, var2, var7, var9); + this.method1583(var1, Rasterizer2D.field4245, var2, var7, var9); var9 += var10; ++var2; var7 += var8; --var4; } while(var4 > 0); } else { - var11 = super.field2047.field2275; - var12 = 256 - super.field2047.field2275; + var11 = super.field2230.field2452; + var12 = 256 - super.field2230.field2452; do { - this.method1368(var1, Rasterizer2D.field4217, var2, var3, var11, var12, var9); + this.method1585(var1, Rasterizer2D.field4245, var2, var3, var11, var12, var9); var9 += var10; ++var2; var7 += var8; @@ -2552,11 +2552,11 @@ final void method1369(int[] var1, int var2, int var3, int var4, int var5, int va } } - @ObfuscatedName("bu") - final void method1371(int[] var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8) { - if (super.field2047.field2268) { - if (var6 > super.field2047.field2276) { - var6 = super.field2047.field2276; + @ObfuscatedName("bp") + final void method1588(int[] var1, int var2, int var3, int var4, int var5, int var6, float var7, float var8) { + if (super.field2230.field2446) { + if (var6 > super.field2230.field2455) { + var6 = super.field2230.field2455; } if (var5 < 0) { @@ -2568,8 +2568,8 @@ final void method1371(int[] var1, int var2, int var3, int var4, int var5, int va var2 += var5; var4 = var6 - var5 >> 2; var7 += var8 * (float)var5; - if (super.field2047.field2275 != 0) { - if (super.field2047.field2275 == 254) { + if (super.field2230.field2452 != 0) { + if (super.field2230.field2452 == 254) { while (true) { --var4; if (var4 < 0) { @@ -2591,8 +2591,8 @@ final void method1371(int[] var1, int var2, int var3, int var4, int var5, int va var1[var2++] = var1[var2]; } } else { - int var9 = super.field2047.field2275; - int var10 = 256 - super.field2047.field2275; + int var9 = super.field2230.field2452; + int var10 = 256 - super.field2230.field2452; var3 = ((var3 & 16711935) * var10 >> 8 & 16711935) + (var10 * (var3 & 65280) >> 8 & 65280); while (true) { @@ -2606,22 +2606,22 @@ final void method1371(int[] var1, int var2, int var3, int var4, int var5, int va return; } - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var9, var7); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var9, var7); ++var2; var7 += var8; } } - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var9, var7); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var9, var7); ++var2; var7 += var8; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var9, var7); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var9, var7); ++var2; var7 += var8; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var9, var7); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var9, var7); ++var2; var7 += var8; - this.method1367(var1, Rasterizer2D.field4217, var2, var3, var9, var7); + this.method1584(var1, Rasterizer2D.field4245, var2, var3, var9, var7); ++var2; var7 += var8; } @@ -2638,22 +2638,22 @@ final void method1371(int[] var1, int var2, int var3, int var4, int var5, int va return; } - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var7); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var7); var7 += var8; ++var2; } } - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var7); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var7); var7 += var8; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var7); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var7); var7 += var8; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var7); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var7); var7 += var8; ++var2; - this.method1365(var1, Rasterizer2D.field4217, var2, var3, var7); + this.method1582(var1, Rasterizer2D.field4245, var2, var3, var7); var7 += var8; ++var2; } @@ -2661,11 +2661,11 @@ final void method1371(int[] var1, int var2, int var3, int var4, int var5, int va } } - @ObfuscatedName("bz") - final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, float var10, float var11, int var12, int var13, int var14, int var15, int var16, int var17) { - if (super.field2047.field2268) { - if (var7 > super.field2047.field2276) { - var7 = super.field2047.field2276; + @ObfuscatedName("bu") + final void method1595(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, float var10, float var11, int var12, int var13, int var14, int var15, int var16, int var17) { + if (super.field2230.field2446) { + if (var7 > super.field2230.field2455) { + var7 = super.field2230.field2455; } if (var6 < 0) { @@ -2687,8 +2687,8 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int int var24; int var25; int var26; - if (super.field2044) { - var26 = var6 - super.field2047.field2272; + if (super.field2227) { + var26 = var6 - super.field2230.field2454; var12 += (var15 >> 3) * var26; var13 += var26 * (var16 >> 3); var14 += var26 * (var17 >> 3); @@ -2728,38 +2728,38 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 >>= 3; var9 <<= 3; var18 = var8 >> 8; - if (super.field2045) { + if (super.field2228) { if (var20 > 0) { do { - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var10000 = var3 + var19; var10 += var11; @@ -2793,7 +2793,7 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -2803,35 +2803,35 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int } else { if (var20 > 0) { do { - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var10000 = var3 + var19; var10 += var11; @@ -2865,7 +2865,7 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -2874,7 +2874,7 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int } } } else { - var26 = var6 - super.field2047.field2272; + var26 = var6 - super.field2230.field2454; var12 += (var15 >> 3) * var26; var13 += var26 * (var16 >> 3); var14 += var26 * (var17 >> 3); @@ -2914,38 +2914,38 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 >>= 3; var9 <<= 3; var18 = var8 >> 8; - if (super.field2045) { + if (super.field2228) { if (var20 > 0) { do { - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var10000 = var3 + var19; var10 += var11; @@ -2979,7 +2979,7 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -2989,35 +2989,35 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int } else { if (var20 > 0) { do { - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var10000 = var3 + var19; var10 += var11; @@ -3051,7 +3051,7 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3064,11 +3064,11 @@ final void method1378(int[] var1, int[] var2, int var3, int var4, int var5, int } } - @ObfuscatedName("bx") - final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, float var10, float var11, int var12, int var13, int var14, int var15, int var16, int var17) { - if (super.field2047.field2268) { - if (var7 > super.field2047.field2276) { - var7 = super.field2047.field2276; + @ObfuscatedName("by") + final void method1597(int[] var1, int[] var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, float var10, float var11, int var12, int var13, int var14, int var15, int var16, int var17) { + if (super.field2230.field2446) { + if (var7 > super.field2230.field2455) { + var7 = super.field2230.field2455; } if (var6 < 0) { @@ -3089,8 +3089,8 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int int var24; int var25; int var26; - if (super.field2044) { - var26 = var6 - super.field2047.field2272; + if (super.field2227) { + var26 = var6 - super.field2230.field2454; var12 += var26 * var15; var13 += var26 * var16; var14 += var17 * var26; @@ -3120,38 +3120,38 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 >>= 3; var9 <<= 3; var18 = var8 >> 8; - if (super.field2045) { + if (super.field2228) { if (var20 > 0) { do { - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3164,7 +3164,7 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1374(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1591(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3174,35 +3174,35 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int } else { if (var20 > 0) { do { - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3215,7 +3215,7 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1375(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1592(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3224,7 +3224,7 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int } } } else { - var26 = var6 - super.field2047.field2272; + var26 = var6 - super.field2230.field2454; var12 += var26 * var15; var13 += var26 * var16; var14 += var17 * var26; @@ -3254,38 +3254,38 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 >>= 3; var9 <<= 3; var18 = var8 >> 8; - if (super.field2045) { + if (super.field2228) { if (var20 > 0) { do { - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3298,7 +3298,7 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1376(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1593(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3308,35 +3308,35 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int } else { if (var20 > 0) { do { - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3349,7 +3349,7 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int var20 = var7 - var6 & 7; if (var20 > 0) { do { - method1377(var1, Rasterizer2D.field4217, var2, var5, var18, var3, var10); + method1594(var1, Rasterizer2D.field4245, var2, var5, var18, var3, var10); ++var5; var3 += var19; var10 += var11; @@ -3362,14 +3362,14 @@ final void method1380(int[] var1, int[] var2, int var3, int var4, int var5, int } } - @ObfuscatedName("bo") - static final boolean method1373(float var0, float var1) { + @ObfuscatedName("bw") + static final boolean method1590(float var0, float var1) { return var1 > var0; } - @ObfuscatedName("bb") - static final void method1374(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { - if (method1373(var1[var3], var6)) { + @ObfuscatedName("bj") + static final void method1591(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { + if (method1590(var1[var3], var6)) { int var7 = var2[(var5 & 4032) + (var5 >>> 26)]; var0[var3] = (var4 * (var7 & 65280) & 16711680) + ((var7 & 16711935) * var4 & -16711936) >> 8; var1[var3] = var6; @@ -3377,11 +3377,11 @@ static final void method1374(int[] var0, float[] var1, int[] var2, int var3, int } - @ObfuscatedName("br") - static final void method1375(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { + @ObfuscatedName("bn") + static final void method1592(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { int var7 = var2[(var5 & 4032) + (var5 >>> 26)]; if (var7 != 0) { - if (method1373(var1[var3], var6)) { + if (method1590(var1[var3], var6)) { var0[var3] = (var4 * (var7 & 65280) & 16711680) + ((var7 & 16711935) * var4 & -16711936) >> 8; var1[var3] = var6; } @@ -3389,9 +3389,9 @@ static final void method1375(int[] var0, float[] var1, int[] var2, int var3, int } } - @ObfuscatedName("be") - static final void method1376(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { - if (method1373(var1[var3], var6)) { + @ObfuscatedName("bo") + static final void method1593(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { + if (method1590(var1[var3], var6)) { int var7 = var2[(var5 >>> 25) + (var5 & 16256)]; var0[var3] = (var4 * (var7 & 65280) & 16711680) + ((var7 & 16711935) * var4 & -16711936) >> 8; var1[var3] = var6; @@ -3399,11 +3399,11 @@ static final void method1376(int[] var0, float[] var1, int[] var2, int var3, int } - @ObfuscatedName("bi") - static final void method1377(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { + @ObfuscatedName("bt") + static final void method1594(int[] var0, float[] var1, int[] var2, int var3, int var4, int var5, float var6) { int var7 = var2[(var5 >>> 25) + (var5 & 16256)]; if (var7 != 0) { - if (method1373(var1[var3], var6)) { + if (method1590(var1[var3], var6)) { var0[var3] = (var4 * (var7 & 65280) & 16711680) + ((var7 & 16711935) * var4 & -16711936) >> 8; var1[var3] = var6; } diff --git a/osrs/src/main/java/class29.java b/osrs/src/main/java/class29.java index 19047f9a7..c4de8f1c4 100644 --- a/osrs/src/main/java/class29.java +++ b/osrs/src/main/java/class29.java @@ -2,36 +2,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bv") +@ObfuscatedName("bi") public interface class29 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1089015731" + descriptor = "(IS)Z", + garbageValue = "512" ) @Export("vmethod3949") boolean vmethod3949(int var1); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(II)Z", - garbageValue = "-1292750960" + garbageValue = "-1146773117" ) @Export("vmethod3989") boolean vmethod3989(int var1); - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(CI)Z", - garbageValue = "-352714805" + garbageValue = "984376689" ) @Export("vmethod3951") boolean vmethod3951(char var1); - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ZI)Z", - garbageValue = "-1559971994" + descriptor = "(ZB)Z", + garbageValue = "-49" ) @Export("vmethod3953") boolean vmethod3953(boolean var1); diff --git a/osrs/src/main/java/class291.java b/osrs/src/main/java/class291.java index 94278eb0d..7bc6bb622 100644 --- a/osrs/src/main/java/class291.java +++ b/osrs/src/main/java/class291.java @@ -1,7 +1,5 @@ import net.runelite.mapping.ObfuscatedName; @ObfuscatedName("lm") -public class class291 { - @ObfuscatedName("az") - public static int field2496; +public interface class291 extends class293 { } \ No newline at end of file diff --git a/osrs/src/main/java/class292.java b/osrs/src/main/java/class292.java index c60eb1b01..7ca2d75aa 100644 --- a/osrs/src/main/java/class292.java +++ b/osrs/src/main/java/class292.java @@ -1,9 +1,139 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lp") -public class class292 { - @ObfuscatedName("gs") - @Export("worldHost") - static String worldHost; +@ObfuscatedName("lz") +public abstract class class292 implements class294 { + @ObfuscatedName("me") + @ObfuscatedSignature( + descriptor = "Lkg;" + ) + @Export("textureProvider") + static TextureProvider textureProvider; + @ObfuscatedName("at") + protected int field2496; + + @ObfuscatedSignature( + descriptor = "(Lnt;Lof;I)V" + ) + protected class292(StudioGame var1, Language var2, int var3) { + this.field2496 = var3; + } + + @ObfuscatedName("ji") + @ObfuscatedSignature( + descriptor = "(IIZI)V", + garbageValue = "1464044439" + ) + static final void method1606(int var0, int var1, boolean var2) { + if (!var2 || var0 != DefaultsGroup.timeOfPreviousKeyPress || class223.field1886 != var1) { + DefaultsGroup.timeOfPreviousKeyPress = var0; + class223.field1886 = var1; + WorldMapSection2.updateGameState(25); + LoginPacket.drawLoadingMessage("Loading - please wait.", true); + int var3 = NewShit.baseX; + int var4 = class101.baseY; + NewShit.baseX = (var0 - 6) * 8; + class101.baseY = (var1 - 6) * 8; + int var5 = NewShit.baseX - var3; + int var6 = class101.baseY - var4; + var3 = NewShit.baseX; + var4 = class101.baseY; + + int var7; + int var9; + int[] var10000; + for (var7 = 0; var7 < 65536; ++var7) { + NPC var8 = Client.npcs[var7]; + if (var8 != null) { + for (var9 = 0; var9 < 10; ++var9) { + var10000 = var8.pathX; + var10000[var9] -= var5; + var10000 = var8.pathY; + var10000[var9] -= var6; + } + + var8.x -= var5 * 128; + var8.y -= var6 * 128; + } + } + + for (var7 = 0; var7 < 2048; ++var7) { + Player var21 = Client.players[var7]; + if (var21 != null) { + for (var9 = 0; var9 < 10; ++var9) { + var10000 = var21.pathX; + var10000[var9] -= var5; + var10000 = var21.pathY; + var10000[var9] -= var6; + } + + var21.x -= var5 * 128; + var21.y -= var6 * 128; + } + } + + byte var20 = 0; + byte var18 = 104; + byte var22 = 1; + if (var5 < 0) { + var20 = 103; + var18 = -1; + var22 = -1; + } + + byte var10 = 0; + byte var11 = 104; + byte var12 = 1; + if (var6 < 0) { + var10 = 103; + var11 = -1; + var12 = -1; + } + + int var14; + for (int var13 = var20; var13 != var18; var13 += var22) { + for (var14 = var10; var14 != var11; var14 += var12) { + int var15 = var13 + var5; + int var16 = var14 + var6; + + for (int var17 = 0; var17 < 4; ++var17) { + if (var15 >= 0 && var16 >= 0 && var15 < 104 && var16 < 104) { + Client.groundItems[var17][var13][var14] = Client.groundItems[var17][var15][var16]; + } else { + Client.groundItems[var17][var13][var14] = null; + } + } + } + } + + for (PendingSpawn var19 = (PendingSpawn)Client.pendingSpawns.last(); var19 != null; var19 = (PendingSpawn)Client.pendingSpawns.previous()) { + var19.x -= var5; + var19.y -= var6; + if (var19.x < 0 || var19.y < 0 || var19.x >= 104 || var19.y >= 104) { + var19.remove(); + } + } + + if (Client.destinationX != 0) { + Client.destinationX -= var5; + Client.destinationY -= var6; + } + + Client.soundEffectCount = 0; + Client.isCameraLocked = false; + ViewportMouse.cameraX -= var5 << 7; + class36.cameraZ -= var6 << 7; + LoginScreenAnimation.oculusOrbFocalPointX -= var5 << 7; + ScriptFrame.oculusOrbFocalPointY -= var6 << 7; + Client.field535 = -1; + Client.graphicsObjects.clear(); + Client.projectiles.clear(); + + for (var14 = 0; var14 < 4; ++var14) { + Client.collisionMaps[var14].clear(); + } + + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class293.java b/osrs/src/main/java/class293.java index bd63cae04..2455a3be2 100644 --- a/osrs/src/main/java/class293.java +++ b/osrs/src/main/java/class293.java @@ -1,5 +1,5 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("la") +@ObfuscatedName("lc") public interface class293 { } \ No newline at end of file diff --git a/osrs/src/main/java/class294.java b/osrs/src/main/java/class294.java new file mode 100644 index 000000000..e661cd43c --- /dev/null +++ b/osrs/src/main/java/class294.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("lb") +public interface class294 extends Iterable { +} \ No newline at end of file diff --git a/osrs/src/main/java/class295.java b/osrs/src/main/java/class295.java new file mode 100644 index 000000000..de2d853b9 --- /dev/null +++ b/osrs/src/main/java/class295.java @@ -0,0 +1,7 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("lr") +public interface class295 { + @ObfuscatedName("at") + void method1607(Object var1); +} \ No newline at end of file diff --git a/osrs/src/main/java/class299.java b/osrs/src/main/java/class299.java deleted file mode 100644 index a7b454c5f..000000000 --- a/osrs/src/main/java/class299.java +++ /dev/null @@ -1,143 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import netscape.js.JSObject; - -import java.applet.Applet; -import java.io.File; -import java.io.RandomAccessFile; -import java.net.URL; - -@ObfuscatedName("ln") -public class class299 { - @ObfuscatedName("va") - @ObfuscatedSignature( - descriptor = "Lci;" - ) - @Export("friendSystem") - public static FriendSystem friendSystem; - @ObfuscatedName("kj") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - @Export("mapSceneSprites") - static IndexedSprite[] mapSceneSprites; - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Ljava/io/File;", - garbageValue = "1126631894" - ) - @Export("getFile") - static File getFile(String var0) { - if (!FileSystem.FileSystem_hasPermissions) { - throw new RuntimeException(""); - } else { - File var1 = (File)FileSystem.FileSystem_cacheFiles.get(var0); - if (var1 != null) { - return var1; - } else { - File var2 = new File(FileSystem.FileSystem_cacheDir, var0); - RandomAccessFile var3 = null; - - try { - File var4 = new File(var2.getParent()); - if (!var4.exists()) { - throw new RuntimeException(""); - } else { - var3 = new RandomAccessFile(var2, "rw"); - int var5 = var3.read(); - var3.seek(0L); - var3.write(var5); - var3.seek(0L); - var3.close(); - FileSystem.FileSystem_cacheFiles.put(var0, var2); - return var2; - } - } catch (Exception var8) { - try { - if (var3 != null) { - var3.close(); - var3 = null; - } - } catch (Exception var7) { - } - - throw new RuntimeException(); - } - } - } - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ILjava/lang/String;I)Z", - garbageValue = "-644258747" - ) - static boolean method1618(String var0, int var1, String var2) { - if (var1 == 0) { - try { - if (!class31.field86.startsWith("win")) { - throw new Exception(); - } else if (!var0.startsWith("http://") && !var0.startsWith("https://")) { - throw new Exception(); - } else { - String var11 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?&=,.%+-_#:/*"; - - for (int var4 = 0; var4 < var0.length(); ++var4) { - if (var11.indexOf(var0.charAt(var4)) == -1) { - throw new Exception(); - } - } - - Runtime.getRuntime().exec("cmd /c start \"j\" \"" + var0 + "\""); - return true; - } - } catch (Throwable var5) { - return false; - } - } else if (var1 == 1) { - try { - Object var10 = class26.method95(class31.field85, var2, new Object[]{(new URL(class31.field85.getCodeBase(), var0)).toString()}); - return var10 != null; - } catch (Throwable var6) { - return false; - } - } else if (var1 == 2) { - try { - class31.field85.getAppletContext().showDocument(new URL(class31.field85.getCodeBase(), var0), "_blank"); - return true; - } catch (Exception var7) { - return false; - } - } else if (var1 == 3) { - try { - Applet var3 = class31.field85; - JSObject.getWindow(var3).call("loggedout", (Object[])null); - } catch (Throwable var9) { - } - - try { - class31.field85.getAppletContext().showDocument(new URL(class31.field85.getCodeBase(), var0), "_top"); - return true; - } catch (Exception var8) { - return false; - } - } else { - throw new IllegalArgumentException(); - } - } - - @ObfuscatedName("kc") - @ObfuscatedSignature( - descriptor = "(IIB)Liw;", - garbageValue = "122" - ) - static RouteStrategy method1619(int var0, int var1) { - Client.field652.approxDestinationX = var0; - Client.field652.approxDestinationY = var1; - Client.field652.approxDestinationSizeX = 1; - Client.field652.approxDestinationSizeY = 1; - return Client.field652; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class3.java b/osrs/src/main/java/class3.java index 47ce2f916..190235604 100644 --- a/osrs/src/main/java/class3.java +++ b/osrs/src/main/java/class3.java @@ -2,11 +2,11 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("at") +@ObfuscatedName("ao") public interface class3 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;)Ltm;" + descriptor = "(Luj;)Luj;" ) @Export("vmethod12") Buffer vmethod12(Buffer var1); diff --git a/osrs/src/main/java/class30.java b/osrs/src/main/java/class30.java index e3a41120b..2e577bca2 100644 --- a/osrs/src/main/java/class30.java +++ b/osrs/src/main/java/class30.java @@ -3,105 +3,131 @@ import net.runelite.mapping.ObfuscatedSignature; import javax.imageio.ImageIO; -import java.awt.*; -import java.awt.Desktop.Action; -import java.net.URI; +import java.util.ArrayList; +import java.util.Iterator; -@ObfuscatedName("bt") +@ObfuscatedName("bv") public class class30 { - @ObfuscatedName("al") - static int field82; - @ObfuscatedName("he") - static String field83; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("VarcInt_archive") + public static AbstractArchive VarcInt_archive; static { ImageIO.setUseCache(false); } - @ObfuscatedName("au") + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "(IIIB)Z", - garbageValue = "-75" + descriptor = "(Ljava/util/ArrayList;ZI)V", + garbageValue = "358922906" ) - static boolean method116(int var0, int var1, int var2) { - return var0 >= 0 && var0 < 4 && var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104; - } + static void method131(ArrayList var0, boolean var1) { + if (!var1) { + class316.field2787.clear(); + } - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;ZZB)V", - garbageValue = "-94" - ) - @Export("openURL") - public static void openURL(String var0, boolean var1, boolean var2) { - if (var1) { - if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Action.BROWSE)) { - try { - Desktop.getDesktop().browse(new URI(var0)); - return; - } catch (Exception var4) { + Iterator var2 = var0.iterator(); + + while (var2.hasNext()) { + MusicSong var3 = (MusicSong)var2.next(); + if (var3.musicTrackGroupId != -1 && var3.musicTrackFileId != -1) { + if (!var1) { + class316.field2787.add(var3); } - } - if (class31.field86.startsWith("win")) { - BoundaryObject.method1384(var0, 0); - } else if (class31.field86.startsWith("mac")) { - class299.method1618(var0, 1, "openjs"); - } else { - BoundaryObject.method1384(var0, 2); + class316.field2790.add(var3); } - } else { - BoundaryObject.method1384(var0, 3); } } - @ObfuscatedName("ap") + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "(I)[Luk;", - garbageValue = "694687164" + descriptor = "(ILdt;ZI)I", + garbageValue = "-2029161315" ) - static IndexedSprite[] method118() { - IndexedSprite[] var0 = new IndexedSprite[class529.SpriteBuffer_spriteCount]; + static int method133(int var0, Script var1, boolean var2) { + Widget var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + if (var0 == 1700) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.itemId; + return 1; + } else if (var0 == 1701) { + if (var3.itemId != -1) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.itemQuantity; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } - for (int var1 = 0; var1 < class529.SpriteBuffer_spriteCount; ++var1) { - IndexedSprite var2 = var0[var1] = new IndexedSprite(); - var2.width = class529.SpriteBuffer_spriteWidth; - var2.height = class420.SpriteBuffer_spriteHeight; - var2.xOffset = class529.SpriteBuffer_xOffsets[var1]; - var2.yOffset = class152.SpriteBuffer_yOffsets[var1]; - var2.subWidth = HealthBarUpdate.SpriteBuffer_spriteWidths[var1]; - var2.subHeight = SpriteMask.SpriteBuffer_spriteHeights[var1]; - var2.palette = DbTableType.SpriteBuffer_spritePalette; - var2.pixels = Coord.SpriteBuffer_pixels[var1]; + return 1; + } else if (var0 == 1702) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.childIndex; + return 1; + } else if (var0 == 1707) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.method1861() ? 1 : 0; + return 1; + } else if (var0 == 1708) { + return class310.method1645(var3); + } else { + return var0 == 1709 ? GrandExchangeOfferTotalQuantityComparator.method1965(var3) : 2; } - - class529.SpriteBuffer_xOffsets = null; - class152.SpriteBuffer_yOffsets = null; - HealthBarUpdate.SpriteBuffer_spriteWidths = null; - SpriteMask.SpriteBuffer_spriteHeights = null; - DbTableType.SpriteBuffer_spritePalette = null; - Coord.SpriteBuffer_pixels = null; - return var0; } - @ObfuscatedName("jw") + @ObfuscatedName("ck") @ObfuscatedSignature( - descriptor = "(I)Low;", - garbageValue = "1819650636" + descriptor = "([BI)[B", + garbageValue = "-1158445957" ) - @Export("getScriptEvents") - public static NodeDeque getScriptEvents() { - return Client.scriptEvents; + @Export("decompressBytes") + static final byte[] decompressBytes(byte[] var0) { + Buffer var1 = new Buffer(var0); + int var2 = var1.readUnsignedByte(); + int var3 = var1.readInt(); + if (var3 >= 0 && (AbstractArchive.maximumContainerSize == 0 || var3 <= AbstractArchive.maximumContainerSize)) { + if (var2 == 0) { + byte[] var4 = new byte[var3]; + var1.readBytes(var4, 0, var3); + return var4; + } else { + int var6 = var1.readInt(); + if (var6 < 0 || AbstractArchive.maximumContainerSize != 0 && var6 > AbstractArchive.maximumContainerSize) { + throw new RuntimeException(); + } else { + byte[] var5 = new byte[var6]; + if (var2 == 1) { + BZip2Decompressor.BZip2Decompressor_decompress(var5, var6, var0, var3, 9); + } else { + AbstractArchive.gzipDecompressor.decompress(var1, var5); + } + + return var5; + } + } + } else { + throw new RuntimeException(); + } } - @ObfuscatedName("mc") + @ObfuscatedName("nj") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "26" + descriptor = "(III)V", + garbageValue = "1125993888" ) - @Export("getTapToDrop") - static boolean getTapToDrop() { - return Client.tapToDrop; + static final void method134(int var0, int var1) { + ClanChannel var2 = var0 >= 0 ? Client.currentClanChannels[var0] : ItemContainer.guestClanChannel; + if (var2 != null && var1 >= 0 && var1 < var2.method857()) { + ClanChannelMember var3 = (ClanChannelMember)var2.members.get(var1); + if (var3.rank == -1) { + String var4 = var3.username.getName(); + PacketBufferNode var5 = class113.getPacketBufferNode(ClientPacket.f65, Client.packetWriter.isaacCipher); + var5.packetBuffer.writeByte(3 + ClanChannel.stringCp1252NullTerminatedByteSize(var4)); + var5.packetBuffer.writeByte(var0); + var5.packetBuffer.writeShort(var1); + var5.packetBuffer.writeStringCp1252NullTerminated(var4); + Client.packetWriter.addNode(var5); + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class300.java b/osrs/src/main/java/class300.java deleted file mode 100644 index 6b2ce381f..000000000 --- a/osrs/src/main/java/class300.java +++ /dev/null @@ -1,69 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.TimeZone; - - -@ObfuscatedName("lc") -public final class class300 { - @ObfuscatedName("ao") - static final HashMap field2753; - - static { - field2753 = new HashMap(); - TimeZone var0; - synchronized(field2753) { - TimeZone var2 = (TimeZone)field2753.get("Europe/London"); - if (var2 == null) { - var2 = TimeZone.getTimeZone("Europe/London"); - field2753.put("Europe/London", var2); - } - - var0 = var2; - } - - java.util.Calendar.getInstance(var0); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "57" - ) - public static void method1620(int var0) { - if (!class305.musicSongs.isEmpty()) { - Iterator var1 = class305.musicSongs.iterator(); - - while (var1.hasNext()) { - MusicSong var2 = (MusicSong)var1.next(); - if (var2 != null) { - var2.musicTrackVolume = var0; - } - } - - MusicSong var3 = (MusicSong)class305.musicSongs.get(0); - if (var3 != null && var3.midiPcmStream != null && var3.midiPcmStream.isReady() && !var3.field2862) { - var3.midiPcmStream.setPcmStreamVolume(var0); - var3.field2867 = (float)var0; - } - } - - } - - @ObfuscatedName("oz") - @ObfuscatedSignature( - descriptor = "(Lmi;B)Ljava/lang/String;", - garbageValue = "-51" - ) - @Export("Widget_getSpellActionName") - static String Widget_getSpellActionName(Widget var0) { - if (HealthBarDefinition.Widget_unpackTargetMask(NewShit.getWidgetFlags(var0)) == 0) { - return null; - } else { - return var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class301.java b/osrs/src/main/java/class301.java index eb4132ae1..86323af1f 100644 --- a/osrs/src/main/java/class301.java +++ b/osrs/src/main/java/class301.java @@ -1,20 +1,18 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lv") -public final class class301 { - @ObfuscatedName("au") - static long field2754; - - @ObfuscatedName("hn") +@ObfuscatedName("lx") +public class class301 { + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "977929295" + descriptor = "(III)V", + garbageValue = "-407525522" ) - static final void method1622() { - if (AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.run(); - } - + public static final void method1625(int var0, int var1) { + ViewportMouse.ViewportMouse_x = var0; + ViewportMouse.ViewportMouse_y = var1; + ViewportMouse.ViewportMouse_isInViewport = true; + ViewportMouse.ViewportMouse_entityCount = 0; + ViewportMouse.ViewportMouse_false0 = false; } } \ No newline at end of file diff --git a/osrs/src/main/java/class302.java b/osrs/src/main/java/class302.java index e8e034ffa..57e3daaf9 100644 --- a/osrs/src/main/java/class302.java +++ b/osrs/src/main/java/class302.java @@ -1,90 +1,96 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lr") +@ObfuscatedName("lp") public class class302 { - @ObfuscatedName("am") + @ObfuscatedName("wx") @ObfuscatedSignature( - descriptor = "(IIIB)D", - garbageValue = "-9" + descriptor = "Lrg;" ) - static double method1623(int var0, int var1, int var2) { - double var3 = var1 > 0 ? (double)Math.max(0.0F, Math.min(1.0F, (float)var0 / (float)var1)) : 1.0D; - if (var3 > 0.0D && var3 < 1.0D) { - double var5; - double var7; - switch(var2) { - case 0: - return var3; - case 1: - return 1.0D - Math.cos(3.141592653589793D * var3 / 2.0D); - case 2: - return Math.sin(var3 * 3.141592653589793D / 2.0D); - case 3: - return -(Math.cos(3.141592653589793D * var3) - 1.0D) / 2.0D; - case 4: - return var3 * var3; - case 5: - return 1.0D - (1.0D - var3) * (1.0D - var3); - case 6: - return var3 < 0.5D ? var3 * 2.0D * var3 : 1.0D - Math.pow(2.0D + var3 * -2.0D, 2.0D) / 2.0D; - case 7: - return var3 * var3 * var3; - case 8: - return 1.0D - Math.pow(1.0D - var3, 3.0D); - case 9: - return var3 < 0.5D ? var3 * 4.0D * var3 * var3 : 1.0D - Math.pow(2.0D + -2.0D * var3, 3.0D) / 2.0D; - case 10: - return var3 * var3 * var3 * var3; - case 11: - return 1.0D - Math.pow(1.0D - var3, 4.0D); - case 12: - return var3 < 0.5D ? var3 * var3 * var3 * var3 * 8.0D : 1.0D - Math.pow(2.0D + -2.0D * var3, 4.0D) / 2.0D; - case 13: - return var3 * var3 * var3 * var3 * var3; - case 14: - return 1.0D - Math.pow(1.0D - var3, 5.0D); - case 15: - return var3 < 0.5D ? var3 * var3 * 8.0D * var3 * var3 * var3 : 1.0D - Math.pow(var3 * -2.0D + 2.0D, 5.0D) / 2.0D; - case 16: - return Math.pow(2.0D, var3 * 10.0D - 10.0D); - case 17: - return 1.0D - Math.pow(2.0D, var3 * -10.0D); - case 18: - return var3 < 0.5D ? Math.pow(2.0D, 10.0D + 20.0D * var3) / 2.0D : (2.0D - Math.pow(2.0D, 10.0D + var3 * -20.0D)) / 2.0D; - case 19: - return 1.0D - Math.sqrt(1.0D - Math.pow(var3, 2.0D)); - case 20: - return Math.sqrt(1.0D - Math.pow(var3 - 1.0D, 2.0D)); - case 21: - return var3 < 0.5D ? (1.0D - Math.sqrt(1.0D - Math.pow(2.0D * var3, 2.0D))) / 2.0D : (Math.sqrt(1.0D - Math.pow(2.0D + -2.0D * var3, 2.0D)) + 1.0D) / 2.0D; - case 22: - var5 = 1.70158D; - var7 = 2.70158D; - return var3 * 2.70158D * var3 * var3 - var3 * 1.70158D * var3; - case 23: - var5 = 1.70158D; - var7 = 2.70158D; - return 1.0D + 2.70158D * Math.pow(var3 - 1.0D, 3.0D) + 1.70158D * Math.pow(var3 - 1.0D, 2.0D); - case 24: - var5 = 1.70158D; - var7 = 2.5949095D; - return var3 < 0.5D ? Math.pow(var3 * 2.0D, 2.0D) * (7.189819D * var3 - 2.5949095D) / 2.0D : (Math.pow(2.0D * var3 - 2.0D, 2.0D) * (3.5949095D * (2.0D * var3 - 2.0D) + 2.5949095D) + 2.0D) / 2.0D; - case 25: - var5 = 2.0943951023931953D; - return -Math.pow(2.0D, var3 * 10.0D - 10.0D) * Math.sin((var3 * 10.0D - 10.75D) * 2.0943951023931953D); - case 26: - var5 = 2.0943951023931953D; - return Math.pow(2.0D, -10.0D * var3) * Math.sin(2.0943951023931953D * (10.0D * var3 - 0.75D)) + 1.0D; - case 27: - var5 = 1.3962634015954636D; - var7 = Math.sin((20.0D * var3 - 11.125D) * 1.3962634015954636D); - return var3 < 0.5D ? -(Math.pow(2.0D, var3 * 20.0D - 10.0D) * var7) / 2.0D : Math.pow(2.0D, 10.0D + -20.0D * var3) * var7 / 2.0D + 1.0D; - default: - return var3; + static ArchiveDisk field2511; + @ObfuscatedName("up") + @Export("cameraLookAtHeight") + static int cameraMoveToHeight; + + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "(Lnn;IIB)V", + garbageValue = "51" + ) + public static void method1626(Widget var0, int var1, int var2) { + PlayerComposition var3 = var0.field3125; + boolean var4 = var2 != var3.field2947; + var3.field2947 = var2; + if (var4) { + int var5; + int var7; + if (var3.field2947 == var1) { + for (var5 = 0; var5 < PlayerComposition.equipmentIndices.length; ++var5) { + var7 = PlayerComposition.equipmentIndices[var5]; + if (var3.equipment[var7] > 0 && var3.equipment[var7] < 512) { + var3.equipment[var7] = var3.field2944[var7]; + } + } + } else { + label62: { + if (var3.equipment[0] >= 512) { + boolean var8; + if (var3.equipment[0] < 512) { + var8 = false; + } else { + ItemComposition var6 = class214.ItemDefinition_get(var3.equipment[0] - 512); + var8 = var6.maleModel1 != class205.field1815.field1824 && var6.maleModel2 != class205.field1815.field1824; + } + + if (!var8) { + break label62; + } + } + + var3.equipment[class205.field1815.field1824] = 1; + } + + for (var5 = 0; var5 < 7; ++var5) { + var7 = PlayerComposition.equipmentIndices[var5]; + if (var3.equipment[var7] > 0 && var3.equipment[var7] < 512) { + MoveSpeed.method1167(var2, var3.equipment, var5); + } + } + } + } + + var3.method1756(); + } + + @ObfuscatedName("nb") + @ObfuscatedSignature( + descriptor = "(Ldc;ZB)V", + garbageValue = "-113" + ) + @Export("closeInterface") + static final void closeInterface(InterfaceParent var0, boolean var1) { + int var2 = var0.group; + int var3 = (int)var0.key; + var0.remove(); + if (var1) { + HealthBarDefinition.widgetDefinition.method1736(var2); + } + + for (IntegerNode var4 = (IntegerNode)Client.widgetFlags.first(); var4 != null; var4 = (IntegerNode)Client.widgetFlags.next()) { + if ((var4.key >> 48 & 65535L) == (long)var2) { + var4.remove(); } - } else { - return var3 <= 0.0D ? 0.0D : 1.0D; } + + Widget var5 = HealthBarDefinition.widgetDefinition.method1733(var3); + if (var5 != null) { + class159.invalidateWidget(var5); + } + + if (Client.rootInterface != -1) { + class514.runIntfCloseListener(Client.rootInterface, 1); + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class303.java b/osrs/src/main/java/class303.java index db003554a..d60288381 100644 --- a/osrs/src/main/java/class303.java +++ b/osrs/src/main/java/class303.java @@ -1,30 +1,61 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lt") +@ObfuscatedName("lh") public class class303 { - @ObfuscatedName("au") - static int[] field2755; - - static { - new Object(); - field2755 = new int[33]; - field2755[0] = 0; - int var0 = 2; - - for (int var1 = 1; var1 < 33; ++var1) { - field2755[var1] = var0 - 1; - var0 += var0; - } - - } + @ObfuscatedName("ac") + static int field2512; - @ObfuscatedName("au") + @ObfuscatedName("ix") @ObfuscatedSignature( - descriptor = "(I)[Laz;", - garbageValue = "-2002695578" + descriptor = "(IIB)V", + garbageValue = "86" ) - public static class6[] method1624() { - return new class6[]{class6.field6}; + static final void method1628(int var0, int var1) { + if (var0 < 128) { + var0 = 128; + } else if (var0 > 383) { + var0 = 383; + } + + if (Varcs.cameraPitch < var0) { + Varcs.cameraPitch = (var0 - Varcs.cameraPitch) * class134.cameraMoveToAcceleration / 1000 + Varcs.cameraPitch + class60.cameraMoveToSpeed; + if (Varcs.cameraPitch > var0) { + Varcs.cameraPitch = var0; + } + } else if (Varcs.cameraPitch > var0) { + Varcs.cameraPitch -= (Varcs.cameraPitch - var0) * class134.cameraMoveToAcceleration / 1000 + class60.cameraMoveToSpeed; + if (Varcs.cameraPitch < var0) { + Varcs.cameraPitch = var0; + } + } + + var1 &= 2047; + int var2 = var1 - class192.cameraYaw; + if (var2 > 1024) { + var2 -= 2048; + } else if (var2 < -1024) { + var2 += 2048; + } + + if (var2 > 0) { + class192.cameraYaw = class192.cameraYaw + class60.cameraMoveToSpeed + var2 * class134.cameraMoveToAcceleration / 1000; + class192.cameraYaw &= 2047; + } else if (var2 < 0) { + class192.cameraYaw -= class60.cameraMoveToSpeed + -var2 * class134.cameraMoveToAcceleration / 1000; + class192.cameraYaw &= 2047; + } + + int var3 = var1 - class192.cameraYaw; + if (var3 > 1024) { + var3 -= 2048; + } else if (var3 < -1024) { + var3 += 2048; + } + + if (var3 < 0 && var2 > 0 || var3 > 0 && var2 < 0) { + class192.cameraYaw = var1; + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class304.java b/osrs/src/main/java/class304.java new file mode 100644 index 000000000..a885390cb --- /dev/null +++ b/osrs/src/main/java/class304.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("li") +public interface class304 { +} \ No newline at end of file diff --git a/osrs/src/main/java/class305.java b/osrs/src/main/java/class305.java deleted file mode 100644 index 36b3ae260..000000000 --- a/osrs/src/main/java/class305.java +++ /dev/null @@ -1,62 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ArrayList; -import java.util.LinkedList; -import java.util.List; - -@ObfuscatedName("lz") -public class class305 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - public static AbstractArchive field2777; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - public static AbstractArchive field2775; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - public static AbstractArchive field2776; - @ObfuscatedName("at") - @Export("midiPcmStream") - public static ArrayList midiPcmStream; - @ObfuscatedName("ac") - public static LinkedList field2774; - @ObfuscatedName("ai") - @Export("musicSongs") - public static ArrayList musicSongs; - @ObfuscatedName("az") - public static ArrayList field2773; - @ObfuscatedName("ap") - public static ArrayList field2771; - @ObfuscatedName("aa") - public static final List field2778; - @ObfuscatedName("af") - @Export("musicPlayerStatus") - public static int musicPlayerStatus; - @ObfuscatedName("ad") - public static int field2766; - @ObfuscatedName("aq") - public static int field2769; - @ObfuscatedName("al") - public static int field2768; - - static { - midiPcmStream = null; - field2774 = new LinkedList(); - musicSongs = new ArrayList(3); - field2773 = new ArrayList(3); - field2771 = new ArrayList(); - field2778 = new ArrayList(); - musicPlayerStatus = 0; - field2766 = 0; - field2769 = 0; - field2768 = 0; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class309.java b/osrs/src/main/java/class309.java deleted file mode 100644 index 23f781673..000000000 --- a/osrs/src/main/java/class309.java +++ /dev/null @@ -1,21 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("li") -public class class309 { - @ObfuscatedName("au") - int field2821; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lcf;" - ) - class53 field2820; - - @ObfuscatedSignature( - descriptor = "(ILcf;)V" - ) - class309(int var1, class53 var2) { - this.field2821 = var1; - this.field2820 = var2; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class31.java b/osrs/src/main/java/class31.java index 9f91c5b8e..21491807a 100644 --- a/osrs/src/main/java/class31.java +++ b/osrs/src/main/java/class31.java @@ -4,53 +4,47 @@ import java.applet.Applet; -@ObfuscatedName("bd") +@ObfuscatedName("bf") public class class31 { - @ObfuscatedName("ug") - static int field84; - @ObfuscatedName("au") + @ObfuscatedName("at") static Applet field85; - @ObfuscatedName("ae") + @ObfuscatedName("ah") static String field86; + @ObfuscatedName("kp") + @ObfuscatedSignature( + descriptor = "[Lup;" + ) + @Export("scrollBarSprites") + static IndexedSprite[] scrollBarSprites; static { field85 = null; field86 = ""; } - @ObfuscatedName("ar") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "1834627338" + descriptor = "(IIII)I", + garbageValue = "978522160" ) - static final void method121(String var0) { - UserComparator8.method673(var0 + " is already on your ignore list"); - } - - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "(Lbw;I)V", - garbageValue = "-1174367966" - ) - @Export("PcmStream_disable") - static final void PcmStream_disable(PcmStream var0) { - var0.active = false; - if (var0.sound != null) { - var0.sound.position = 0; - } - - for (PcmStream var1 = var0.firstSubStream(); var1 != null; var1 = var0.nextSubStream()) { - PcmStream_disable(var1); + public static int method135(int var0, int var1, int var2) { + var2 &= 3; + if (var2 == 0) { + return var0; + } else if (var2 == 1) { + return var1; + } else { + return var2 == 2 ? 7 - var0 : 7 - var1; } - } - @ObfuscatedName("bt") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(ILdh;ZS)I", - garbageValue = "385" + descriptor = "(IB)Lco;", + garbageValue = "67" ) - static int method123(int var0, Script var1, boolean var2) { - return 2; + @Export("Messages_getMessage") + static Message Messages_getMessage(int var0) { + return (Message)Messages.Messages_hashTable.get((long)var0); } } \ No newline at end of file diff --git a/osrs/src/main/java/class310.java b/osrs/src/main/java/class310.java new file mode 100644 index 000000000..1e8867943 --- /dev/null +++ b/osrs/src/main/java/class310.java @@ -0,0 +1,32 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("lg") +public class class310 { + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lup;" + ) + @Export("options_buttons_0Sprite") + static IndexedSprite options_buttons_0Sprite; + @ObfuscatedName("fo") + static long field2769; + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Lnn;I)I", + garbageValue = "1270605570" + ) + static int method1645(Widget var0) { + if (var0.type != 11) { + --class127.Interpreter_stringStackSize; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + return 1; + } else { + String var1 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var0.method1862(var1); + return 1; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class311.java b/osrs/src/main/java/class311.java index caf466277..115bf7efc 100644 --- a/osrs/src/main/java/class311.java +++ b/osrs/src/main/java/class311.java @@ -1,12 +1,57 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("lb") -public interface class311 { - @ObfuscatedName("iw") +import java.util.HashMap; +import java.util.TimeZone; + + +@ObfuscatedName("lt") +public final class class311 { + @ObfuscatedName("ar") + static final HashMap field2771; + + static { + field2771 = new HashMap(); + TimeZone var0; + synchronized(field2771) { + TimeZone var2 = (TimeZone)field2771.get("Europe/London"); + if (var2 == null) { + var2 = TimeZone.getTimeZone("Europe/London"); + field2771.put("Europe/London", var2); + } + + var0 = var2; + } + + java.util.Calendar.getInstance(var0); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Lfw;", + garbageValue = "-1631504286" + ) + static class140 method1646(int var0) { + class140 var1 = (class140)class12.findEnumerated(UserComparator8.method671(), var0); + if (var1 == null) { + var1 = class140.field1323; + } + + return var1; + } + + @ObfuscatedName("me") @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "-9429" + descriptor = "(II)V", + garbageValue = "-256877556" ) - void vmethod1644(int var1, int var2); + static final void method1647(int var0) { + var0 = Math.max(Math.min(var0, 100), 0); + var0 = 100 - var0; + float var1 = 0.5F + (float)var0 / 200.0F; + Rasterizer3D.method1415((double)var1); + ((TextureProvider)Rasterizer3D.clips.Rasterizer3D_textureLoader).setBrightness((double)var1); + class166.method866(); + WorldMapIcon_1.clientPreferences.setBrightness((double)var1); + } } \ No newline at end of file diff --git a/osrs/src/main/java/class312.java b/osrs/src/main/java/class312.java index a2a09304c..5be1d8099 100644 --- a/osrs/src/main/java/class312.java +++ b/osrs/src/main/java/class312.java @@ -1,75 +1,9 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import java.util.Date; -import java.util.PriorityQueue; -import java.util.concurrent.Callable; -import java.util.concurrent.atomic.AtomicBoolean; - -@ObfuscatedName("md") -class class312 implements Callable { - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Llf;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final MidiPcmStream this$0; - // $FF: synthetic field - @Export("val$cancelled") - @ObfuscatedName("val$cancelled") - final AtomicBoolean val$cancelled; - - @ObfuscatedSignature( - descriptor = "(Llf;Ljava/util/concurrent/atomic/AtomicBoolean;)V" - ) - class312(MidiPcmStream var1, AtomicBoolean var2) { - this.this$0 = var1; - this.val$cancelled = var2; - } - - @Export("call") - @ObfuscatedName("call") - public Object call() { - PriorityQueue var1 = this.this$0.field2801; - - while (true) { - class309 var2 = null; - synchronized(var1) { - if (var1.isEmpty() || this.val$cancelled.get()) { - return null; - } - - var2 = (class309)var1.remove(); - } - - var2.field2820.method290(); - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)Ljava/util/Date;", - garbageValue = "1739317164" - ) - static Date method1686() { - java.util.Calendar var0 = java.util.Calendar.getInstance(); - var0.set(2, 0); - var0.set(5, 1); - var0.set(1, 1900); - return var0.getTime(); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-2037147642" - ) - static final int method1685(int var0, int var1) { - int var2 = Strings.method1878(var0 - 1, var1 - 1) + Strings.method1878(1 + var0, var1 - 1) + Strings.method1878(var0 - 1, var1 + 1) + Strings.method1878(1 + var0, var1 + 1); - int var3 = Strings.method1878(var0 - 1, var1) + Strings.method1878(1 + var0, var1) + Strings.method1878(var0, var1 - 1) + Strings.method1878(var0, var1 + 1); - int var4 = Strings.method1878(var0, var1); - return var2 / 16 + var3 / 8 + var4 / 4; - } +@ObfuscatedName("mb") +public final class class312 { + @ObfuscatedName("at") + static long field2773; + @ObfuscatedName("ah") + static long field2772; } \ No newline at end of file diff --git a/osrs/src/main/java/class313.java b/osrs/src/main/java/class313.java new file mode 100644 index 000000000..d7eb1ab01 --- /dev/null +++ b/osrs/src/main/java/class313.java @@ -0,0 +1,29 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("md") +public class class313 { + @ObfuscatedName("fg") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + @Export("archive4") + static Archive archive4; + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Lol;Ljava/lang/String;Ljava/lang/String;B)Lup;", + garbageValue = "12" + ) + @Export("SpriteBuffer_getIndexedSpriteByName") + public static IndexedSprite SpriteBuffer_getIndexedSpriteByName(AbstractArchive var0, String var1, String var2) { + if (!var0.isValidFileName(var1, var2)) { + return null; + } else { + int var3 = var0.getGroupId(var1); + int var4 = var0.getFileId(var3, var2); + return class205.method1056(var0, var3, var4); + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class314.java b/osrs/src/main/java/class314.java new file mode 100644 index 000000000..1fef01cae --- /dev/null +++ b/osrs/src/main/java/class314.java @@ -0,0 +1,73 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("my") +public class class314 { + @ObfuscatedName("at") + static int[] field2775; + @ObfuscatedName("hu") + static String field2776; + + static { + new Object(); + field2775 = new int[33]; + field2775[0] = 0; + int var0 = 2; + + for (int var1 = 1; var1 < 33; ++var1) { + field2775[var1] = var0 - 1; + var0 += var0; + } + + } + + @ObfuscatedName("ij") + @ObfuscatedSignature( + descriptor = "(IIIB)V", + garbageValue = "26" + ) + static final void method1649(int var0, int var1, int var2) { + if (ViewportMouse.cameraX < var0) { + ViewportMouse.cameraX = (var0 - ViewportMouse.cameraX) * class1.cameraLookAtAcceleration / 1000 + ViewportMouse.cameraX + WorldMapIcon_0.cameraLookAtSpeed; + if (ViewportMouse.cameraX > var0) { + ViewportMouse.cameraX = var0; + } + } + + if (ViewportMouse.cameraX > var0) { + ViewportMouse.cameraX -= (ViewportMouse.cameraX - var0) * class1.cameraLookAtAcceleration / 1000 + WorldMapIcon_0.cameraLookAtSpeed; + if (ViewportMouse.cameraX < var0) { + ViewportMouse.cameraX = var0; + } + } + + if (SecureRandomFuture.cameraY < var1) { + SecureRandomFuture.cameraY = (var1 - SecureRandomFuture.cameraY) * class1.cameraLookAtAcceleration / 1000 + SecureRandomFuture.cameraY + WorldMapIcon_0.cameraLookAtSpeed; + if (SecureRandomFuture.cameraY > var1) { + SecureRandomFuture.cameraY = var1; + } + } + + if (SecureRandomFuture.cameraY > var1) { + SecureRandomFuture.cameraY -= (SecureRandomFuture.cameraY - var1) * class1.cameraLookAtAcceleration / 1000 + WorldMapIcon_0.cameraLookAtSpeed; + if (SecureRandomFuture.cameraY < var1) { + SecureRandomFuture.cameraY = var1; + } + } + + if (class36.cameraZ < var2) { + class36.cameraZ = (var2 - class36.cameraZ) * class1.cameraLookAtAcceleration / 1000 + class36.cameraZ + WorldMapIcon_0.cameraLookAtSpeed; + if (class36.cameraZ > var2) { + class36.cameraZ = var2; + } + } + + if (class36.cameraZ > var2) { + class36.cameraZ -= (class36.cameraZ - var2) * class1.cameraLookAtAcceleration / 1000 + WorldMapIcon_0.cameraLookAtSpeed; + if (class36.cameraZ < var2) { + class36.cameraZ = var2; + } + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class316.java b/osrs/src/main/java/class316.java index 92f6a2f82..2e13d1cc2 100644 --- a/osrs/src/main/java/class316.java +++ b/osrs/src/main/java/class316.java @@ -2,177 +2,66 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Comparator; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; -@ObfuscatedName("mq") -public class class316 implements Comparator { - @ObfuscatedName("bh") - @Export("Widget_loadedInterfaces") - public static boolean[] Widget_loadedInterfaces; - @ObfuscatedName("nh") - @Export("menuWidth") - static int menuWidth; - - class316() { - } - - @ObfuscatedName("au") +@ObfuscatedName("mi") +public class class316 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lli;Lli;I)I", - garbageValue = "-629446065" + descriptor = "Lol;" ) - int method1697(class309 var1, class309 var2) { - return var1.field2821 - var2.field2821; - } - - @Export("compare") - @ObfuscatedName("compare") - public int compare(Object var1, Object var2) { - return this.method1697((class309)var1, (class309)var2); - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - return super.equals(var1); - } - - @ObfuscatedName("kt") - @ObfuscatedSignature( - descriptor = "(IIZB)V", - garbageValue = "-20" - ) - static final void method1698(int var0, int var1, boolean var2) { - if (!var2 || var0 != Tiles.timeOfPreviousKeyPress || MouseRecorder.field873 != var1) { - Tiles.timeOfPreviousKeyPress = var0; - MouseRecorder.field873 = var1; - MusicSong.updateGameState(25); - FadeInTask.drawLoadingMessage("Loading - please wait.", true); - int var3 = UrlRequester.baseX; - int var4 = class47.baseY; - UrlRequester.baseX = (var0 - 6) * 8; - class47.baseY = (var1 - 6) * 8; - int var5 = UrlRequester.baseX - var3; - int var6 = class47.baseY - var4; - var3 = UrlRequester.baseX; - var4 = class47.baseY; - - int var7; - int var9; - int[] var10000; - for (var7 = 0; var7 < 65536; ++var7) { - NPC var8 = Client.npcs[var7]; - if (var8 != null) { - for (var9 = 0; var9 < 10; ++var9) { - var10000 = var8.pathX; - var10000[var9] -= var5; - var10000 = var8.pathY; - var10000[var9] -= var6; - } - - var8.x -= var5 * 128; - var8.y -= var6 * 128; - } - } - - for (var7 = 0; var7 < 2048; ++var7) { - Player var21 = Client.players[var7]; - if (var21 != null) { - for (var9 = 0; var9 < 10; ++var9) { - var10000 = var21.pathX; - var10000[var9] -= var5; - var10000 = var21.pathY; - var10000[var9] -= var6; - } - - var21.x -= var5 * 128; - var21.y -= var6 * 128; - } - } - - byte var20 = 0; - byte var18 = 104; - byte var22 = 1; - if (var5 < 0) { - var20 = 103; - var18 = -1; - var22 = -1; - } - - byte var10 = 0; - byte var11 = 104; - byte var12 = 1; - if (var6 < 0) { - var10 = 103; - var11 = -1; - var12 = -1; - } - - int var14; - for (int var13 = var20; var13 != var18; var13 += var22) { - for (var14 = var10; var14 != var11; var14 += var12) { - int var15 = var5 + var13; - int var16 = var6 + var14; - - for (int var17 = 0; var17 < 4; ++var17) { - if (var15 >= 0 && var16 >= 0 && var15 < 104 && var16 < 104) { - Client.groundItems[var17][var13][var14] = Client.groundItems[var17][var15][var16]; - } else { - Client.groundItems[var17][var13][var14] = null; - } - } - } - } - - for (PendingSpawn var19 = (PendingSpawn)Client.pendingSpawns.last(); var19 != null; var19 = (PendingSpawn)Client.pendingSpawns.previous()) { - var19.x -= var5; - var19.y -= var6; - if (var19.x < 0 || var19.y < 0 || var19.x >= 104 || var19.y >= 104) { - var19.remove(); - } - } - - if (Client.destinationX != 0) { - Client.destinationX -= var5; - Client.destinationY -= var6; - } - - Client.soundEffectCount = 0; - Client.isCameraLocked = false; - NPCComposition.cameraX -= var5 << 7; - class139.cameraZ -= var6 << 7; - FriendLoginUpdate.oculusOrbFocalPointX -= var5 << 7; - HealthBar.oculusOrbFocalPointY -= var6 << 7; - Client.field538 = -1; - Client.graphicsObjects.clear(); - Client.projectiles.clear(); - - for (var14 = 0; var14 < 4; ++var14) { - Client.collisionMaps[var14].clear(); - } - - } - } - - @ObfuscatedName("ma") + public static AbstractArchive field2792; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "2123908840" + descriptor = "Lol;" ) - static final void method1699(int var0) { - if (ModeWhere.loadInterface(var0)) { - class152.drawModelComponents(PacketBufferNode.Widget_interfaceComponents[var0], -1); - } + public static AbstractArchive field2791; + @ObfuscatedName("ao") + @Export("midiPcmStream") + public static ArrayList midiPcmStream; + @ObfuscatedName("ab") + public static LinkedList field2790; + @ObfuscatedName("au") + @Export("musicSongs") + public static ArrayList musicSongs; + @ObfuscatedName("aa") + public static ArrayList field2787; + @ObfuscatedName("ac") + static ArrayList field2798; + @ObfuscatedName("al") + public static final List field2793; + @ObfuscatedName("az") + @Export("musicPlayerStatus") + static int musicPlayerStatus; + @ObfuscatedName("ap") + static int field2794; + @ObfuscatedName("av") + static int field2795; + @ObfuscatedName("ax") + static int field2796; + + static { + midiPcmStream = null; + field2790 = new LinkedList(); + musicSongs = new ArrayList(3); + field2787 = new ArrayList(3); + field2798 = new ArrayList(); + field2793 = new ArrayList(); + musicPlayerStatus = 0; + field2794 = 0; + field2795 = 0; + field2796 = 0; } - @ObfuscatedName("ol") + @ObfuscatedName("nh") @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "5" + descriptor = "(I)V", + garbageValue = "-1493963164" ) - static void method1700(int var0) { - if (var0 != Client.loginState) { - Client.loginState = var0; - } + static final void method1650() { + Client.field520 = Client.cycleCntr; + InterfaceParent.field861 = true; } } \ No newline at end of file diff --git a/osrs/src/main/java/class318.java b/osrs/src/main/java/class318.java deleted file mode 100644 index 24c13500e..000000000 --- a/osrs/src/main/java/class318.java +++ /dev/null @@ -1,426 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.io.InputStream; -import java.io.OutputStreamWriter; -import java.net.URL; -import java.net.URLConnection; -import java.util.BitSet; -import java.util.Random; - -@ObfuscatedName("mk") -public class class318 extends Node { - @ObfuscatedName("fq") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive7") - static Archive archive7; - @ObfuscatedName("au") - int field2875; - @ObfuscatedName("ae") - BitSet field2876; - - class318(int var1) { - this.field2875 = var1; - this.field2876 = new BitSet(128); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(JLjava/lang/String;B)I", - garbageValue = "-14" - ) - static final int method1703(long var0, String var2) { - Random var3 = new Random(); - Buffer var4 = new Buffer(128); - Buffer var5 = new Buffer(128); - int[] var6 = new int[]{var3.nextInt(), var3.nextInt(), (int)(var0 >> 32), (int)var0}; - var4.writeByte(10); - - int var7; - for (var7 = 0; var7 < 4; ++var7) { - var4.writeInt(var3.nextInt()); - } - - var4.writeInt(var6[0]); - var4.writeInt(var6[1]); - var4.writeLong(var0); - var4.writeLong(0L); - - for (var7 = 0; var7 < 4; ++var7) { - var4.writeInt(var3.nextInt()); - } - - var4.encryptRsa(class72.field731, class72.field732); - var5.writeByte(10); - - for (var7 = 0; var7 < 3; ++var7) { - var5.writeInt(var3.nextInt()); - } - - var5.writeLong(var3.nextLong()); - var5.writeLongMedium(var3.nextLong()); - class177.method919(var5); - var5.writeLong(var3.nextLong()); - var5.encryptRsa(class72.field731, class72.field732); - var7 = AbstractSocket.stringCp1252NullTerminatedByteSize(var2); - if (var7 % 8 != 0) { - var7 += 8 - var7 % 8; - } - - Buffer var8 = new Buffer(var7); - var8.writeStringCp1252NullTerminated(var2); - var8.offset = var7; - var8.xteaEncryptAll(var6); - Buffer var9 = new Buffer(var8.offset + var5.offset + var4.offset + 5); - var9.writeByte(2); - var9.writeByte(var4.offset); - var9.writeBytes(var4.array, 0, var4.offset); - var9.writeByte(var5.offset); - var9.writeBytes(var5.array, 0, var5.offset); - var9.writeShort(var8.offset); - var9.writeBytes(var8.array, 0, var8.offset); - byte[] var11 = var9.array; - String var10 = class11.method32(var11, 0, var11.length); - String var12 = var10; - - try { - URL var13 = new URL(HorizontalAlignment.method978("services", false) + "m=accountappeal/login.ws"); - URLConnection var14 = var13.openConnection(); - var14.setDoInput(true); - var14.setDoOutput(true); - var14.setConnectTimeout(5000); - OutputStreamWriter var15 = new OutputStreamWriter(var14.getOutputStream()); - String var17 = "data2=" + UserComparator10.method687(var12) + "&dest="; - int var19 = "passwordchoice.ws".length(); - StringBuilder var20 = new StringBuilder(var19); - - for (int var21 = 0; var21 < var19; ++var21) { - char var22 = "passwordchoice.ws".charAt(var21); - if ((var22 < 'a' || var22 > 'z') && (var22 < 'A' || var22 > 'Z') && (var22 < '0' || var22 > '9') && var22 != '.' && var22 != '-' && var22 != '*' && var22 != '_') { - if (var22 == ' ') { - var20.append('+'); - } else { - byte var23 = class348.charToByteCp1252(var22); - var20.append('%'); - int var24 = var23 >> 4 & 15; - if (var24 >= 10) { - var20.append((char)(var24 + 55)); - } else { - var20.append((char)(var24 + 48)); - } - - var24 = var23 & 15; - if (var24 >= 10) { - var20.append((char)(var24 + 55)); - } else { - var20.append((char)(var24 + 48)); - } - } - } else { - var20.append(var22); - } - } - - String var18 = var20.toString(); - var15.write(var17 + var18); - var15.flush(); - InputStream var25 = var14.getInputStream(); - var9 = new Buffer(new byte[1000]); - - do { - int var26 = var25.read(var9.array, var9.offset, 1000 - var9.offset); - if (var26 == -1) { - var15.close(); - var25.close(); - String var28 = new String(var9.array); - if (var28.startsWith("OFFLINE")) { - return 4; - } else if (var28.startsWith("WRONG")) { - return 7; - } else if (var28.startsWith("RELOAD")) { - return 3; - } else if (var28.startsWith("Not permitted for social network accounts.")) { - return 6; - } else { - var9.xteaDecryptAll(var6); - - while (var9.offset > 0 && var9.array[var9.offset - 1] == 0) { - --var9.offset; - } - - var28 = new String(var9.array, 0, var9.offset); - if (PendingSpawn.method508(var28)) { - class30.openURL(var28, true, false); - return 2; - } else { - return 5; - } - } - } - - var9.offset += var26; - } while(var9.offset < 1000); - - return 5; - } catch (Throwable var27) { - var27.printStackTrace(); - return 5; - } - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "1758045320" - ) - @Export("setLoginResponseString") - static void setLoginResponseString(String var0, String var1, String var2) { - Login.Login_response1 = var0; - Login.Login_response2 = var1; - Login.Login_response3 = var2; - } - - @ObfuscatedName("im") - @ObfuscatedSignature( - descriptor = "(Ldr;II)V", - garbageValue = "798219365" - ) - @Export("updateActorSequence") - static final void updateActorSequence(Actor var0, int var1) { - if (var0.spotAnimation >= Client.cycle) { - Huffman.method1853(var0); - } else { - int var4; - int var5; - int var7; - int var8; - int var11; - if (var0.exactMoveArrive1Cycle >= Client.cycle) { - boolean var2 = var0.exactMoveArrive1Cycle == Client.cycle || var0.sequence == -1 || var0.sequenceDelay != 0; - if (!var2) { - SequenceDefinition var3 = EnumComposition.SequenceDefinition_get(var0.sequence); - if (var3 != null && !var3.isCachedModelIdSet()) { - var2 = var0.sequenceFrameCycle + 1 > var3.frameLengths[var0.sequenceFrame]; - } else { - var2 = true; - } - } - - if (var2) { - var11 = var0.exactMoveArrive1Cycle - var0.spotAnimation; - var4 = Client.cycle - var0.spotAnimation; - var5 = var0.field976 * 64 + var0.field1004 * 128; - int var6 = var0.field976 * 64 + var0.field1001 * 128; - var7 = var0.field976 * 64 + var0.field1002 * 128; - var8 = var0.field976 * 64 + var0.field1014 * 128; - var0.x = (var4 * var7 + var5 * (var11 - var4)) / var11; - var0.y = (var4 * var8 + var6 * (var11 - var4)) / var11; - } - - var0.field1021 = 0; - var0.orientation = var0.exactMoveDirection; - var0.rotation = var0.orientation; - } else { - var0.movementSequence = var0.idleSequence; - if (var0.pathLength == 0) { - var0.field1021 = 0; - } else { - label298: { - if (var0.sequence != -1 && var0.sequenceDelay == 0) { - SequenceDefinition var12 = EnumComposition.SequenceDefinition_get(var0.sequence); - if (var0.field1022 > 0 && var12.precedenceAnimating == 0) { - ++var0.field1021; - break label298; - } - - if (var0.field1022 <= 0 && var12.priority == 0) { - ++var0.field1021; - break label298; - } - } - - int var14 = var0.x; - var11 = var0.y; - var4 = var0.field976 * 64 + var0.pathX[var0.pathLength - 1] * 128; - var5 = var0.field976 * 64 + var0.pathY[var0.pathLength - 1] * 128; - if (var14 < var4) { - if (var11 < var5) { - var0.orientation = 1280; - } else if (var11 > var5) { - var0.orientation = 1792; - } else { - var0.orientation = 1536; - } - } else if (var14 > var4) { - if (var11 < var5) { - var0.orientation = 768; - } else if (var11 > var5) { - var0.orientation = 256; - } else { - var0.orientation = 512; - } - } else if (var11 < var5) { - var0.orientation = 1024; - } else if (var11 > var5) { - var0.orientation = 0; - } - - MoveSpeed var13 = var0.pathTraversed[var0.pathLength - 1]; - if (var4 - var14 <= 256 && var4 - var14 >= -256 && var5 - var11 <= 256 && var5 - var11 >= -256) { - var7 = var0.orientation - var0.rotation & 2047; - if (var7 > 1024) { - var7 -= 2048; - } - - var8 = var0.walkBackSequence; - if (var7 >= -256 && var7 <= 256) { - var8 = var0.walkSequence; - } else if (var7 >= 256 && var7 < 768) { - var8 = var0.walkRightSequence; - } else if (var7 >= -768 && var7 <= -256) { - var8 = var0.walkLeftSequence; - } - - if (var8 == -1) { - var8 = var0.walkSequence; - } - - var0.movementSequence = var8; - int var9 = 4; - boolean var10 = true; - if (var0 instanceof NPC) { - var10 = ((NPC)var0).definition.isClickable; - } - - if (var10) { - if (var0.orientation != var0.rotation && var0.targetIndex == -1 && var0.field1017 != 0) { - var9 = 2; - } - - if (var0.pathLength > 2) { - var9 = 6; - } - - if (var0.pathLength > 3) { - var9 = 8; - } - - if (var0.field1021 > 0 && var0.pathLength > 1) { - var9 = 8; - --var0.field1021; - } - } else { - if (var0.pathLength > 1) { - var9 = 6; - } - - if (var0.pathLength > 2) { - var9 = 8; - } - - if (var0.field1021 > 0 && var0.pathLength > 1) { - var9 = 8; - --var0.field1021; - } - } - - if (var13 == MoveSpeed.RUN) { - var9 <<= 1; - } else if (var13 == MoveSpeed.CRAWL) { - var9 >>= 1; - } - - if (var9 >= 8) { - if (var0.movementSequence == var0.walkSequence && var0.runSequence != -1) { - var0.movementSequence = var0.runSequence; - } else if (var0.walkBackSequence == var0.movementSequence && var0.runBackSequence != -1) { - var0.movementSequence = var0.runBackSequence; - } else if (var0.movementSequence == var0.walkLeftSequence && var0.runLeftSequence != -1) { - var0.movementSequence = var0.runLeftSequence; - } else if (var0.walkRightSequence == var0.movementSequence && var0.runRightSequence != -1) { - var0.movementSequence = var0.runRightSequence; - } - } else if (var9 <= 2) { - if (var0.movementSequence == var0.walkSequence && var0.crawlSequence != -1) { - var0.movementSequence = var0.crawlSequence; - } else if (var0.movementSequence == var0.walkBackSequence && var0.crawlBackSequence != -1) { - var0.movementSequence = var0.crawlBackSequence; - } else if (var0.walkLeftSequence == var0.movementSequence && var0.crawlLeftSequence != -1) { - var0.movementSequence = var0.crawlLeftSequence; - } else if (var0.walkRightSequence == var0.movementSequence && var0.crawlRightSequence != -1) { - var0.movementSequence = var0.crawlRightSequence; - } - } - - if (var4 != var14 || var5 != var11) { - if (var14 < var4) { - var0.x += var9; - if (var0.x > var4) { - var0.x = var4; - } - } else if (var14 > var4) { - var0.x -= var9; - if (var0.x < var4) { - var0.x = var4; - } - } - - if (var11 < var5) { - var0.y += var9; - if (var0.y > var5) { - var0.y = var5; - } - } else if (var11 > var5) { - var0.y -= var9; - if (var0.y < var5) { - var0.y = var5; - } - } - } - - if (var4 == var0.x && var5 == var0.y) { - --var0.pathLength; - if (var0.field1022 > 0) { - --var0.field1022; - } - } - } else { - var0.x = var4; - var0.y = var5; - --var0.pathLength; - if (var0.field1022 > 0) { - --var0.field1022; - } - } - } - } - } - } - - if (var0.x < 128 || var0.y < 128 || var0.x >= 13184 || var0.y >= 13184) { - var0.sequence = -1; - var0.spotAnimation = 0; - var0.exactMoveArrive1Cycle = 0; - var0.method519(); - var0.x = var0.pathX[0] * 128 + var0.field976 * 64; - var0.y = var0.field976 * 64 + var0.pathY[0] * 128; - var0.method512(); - } - - if (VarbitComposition.localPlayer == var0 && (var0.x < 1536 || var0.y < 1536 || var0.x >= 11776 || var0.y >= 11776)) { - var0.sequence = -1; - var0.spotAnimation = 0; - var0.exactMoveArrive1Cycle = 0; - var0.method519(); - var0.x = var0.pathX[0] * 128 + var0.field976 * 64; - var0.y = var0.field976 * 64 + var0.pathY[0] * 128; - var0.method512(); - } - - ClanChannelMember.method777(var0); - UserComparator5.method680(var0); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class308.java b/osrs/src/main/java/class319.java similarity index 58% rename from osrs/src/main/java/class308.java rename to osrs/src/main/java/class319.java index 34d3de662..767a395e2 100644 --- a/osrs/src/main/java/class308.java +++ b/osrs/src/main/java/class319.java @@ -4,25 +4,20 @@ import java.util.concurrent.ThreadFactory; -@ObfuscatedName("lh") -class class308 implements ThreadFactory { - @ObfuscatedName("wc") - @ObfuscatedSignature( - descriptor = "Lnf;" - ) - static JagNetThread field2819; +@ObfuscatedName("mv") +class class319 implements ThreadFactory { // $FF: synthetic field @ObfuscatedSignature( - descriptor = "Llf;" + descriptor = "Lmn;" ) @Export("this$0") @ObfuscatedName("this$0") final MidiPcmStream this$0; @ObfuscatedSignature( - descriptor = "(Llf;)V" + descriptor = "(Lmn;)V" ) - class308(MidiPcmStream var1) { + class319(MidiPcmStream var1) { this.this$0 = var1; } @@ -31,4 +26,13 @@ class class308 implements ThreadFactory { public Thread newThread(Runnable var1) { return new Thread(var1, "OSRS WAV Load"); } + + @ObfuscatedName("ia") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "29" + ) + static final int method1705(int var0) { + return Math.abs(var0 - class192.cameraYaw) > 1024 ? (var0 < class192.cameraYaw ? 1 : -1) * 2048 + var0 : var0; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class320.java b/osrs/src/main/java/class320.java new file mode 100644 index 000000000..2f3c69596 --- /dev/null +++ b/osrs/src/main/java/class320.java @@ -0,0 +1,64 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("mm") +public class class320 { + @ObfuscatedName("at") + int field2841; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lcg;" + ) + class53 field2840; + + @ObfuscatedSignature( + descriptor = "(ILcg;)V" + ) + class320(int var1, class53 var2) { + this.field2841 = var1; + this.field2840 = var2; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)[Loc;", + garbageValue = "48" + ) + @Export("PlayerType_values") + public static PlayerType[] PlayerType_values() { + return new PlayerType[]{PlayerType.field3523, PlayerType.PlayerType_playerModerator, PlayerType.field3518, PlayerType.PlayerType_normal, PlayerType.field3519, PlayerType.field3515, PlayerType.field3526, PlayerType.PlayerType_hardcoreIronman, PlayerType.field3529, PlayerType.PlayerType_ironman, PlayerType.PlayerType_ultimateIronman, PlayerType.field3521, PlayerType.PlayerType_jagexModerator, PlayerType.field3517, PlayerType.field3527, PlayerType.field3528, PlayerType.field3513}; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "194" + ) + static void method1707() { + class74.Tiles_underlays = null; + Interpreter.Tiles_overlays = null; + ViewportMouse.Tiles_shapes = null; + class369.field3559 = null; + class344.field3130 = null; + class93.field948 = null; + Tiles.field843 = null; + class337.Tiles_hue = null; + Tiles.Tiles_saturation = null; + class185.Tiles_lightness = null; + MenuAction.Tiles_hueMultiplier = null; + WorldMapLabelSize.field1943 = null; + } + + @ObfuscatedName("jl") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "1466473405" + ) + static void method1708() { + if (Client.field387) { + AccessFile.addPlayerToScene(class229.localPlayer, false); + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class322.java b/osrs/src/main/java/class322.java new file mode 100644 index 000000000..c5bd75bff --- /dev/null +++ b/osrs/src/main/java/class322.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("mf") +public interface class322 { + @ObfuscatedName("im") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1786579284" + ) + @Export("vmethod1644") + void vmethod1644(int var1, int var2); +} \ No newline at end of file diff --git a/osrs/src/main/java/class323.java b/osrs/src/main/java/class323.java index ae285170b..f1aa35e08 100644 --- a/osrs/src/main/java/class323.java +++ b/osrs/src/main/java/class323.java @@ -2,13 +2,74 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mf") -public interface class323 { - @ObfuscatedName("au") +import java.util.PriorityQueue; +import java.util.concurrent.Callable; +import java.util.concurrent.atomic.AtomicBoolean; + +@ObfuscatedName("mo") +class class323 implements Callable { + @ObfuscatedName("vh") + static int field2851; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lmn;" + ) + @Export("this$0") + @ObfuscatedName("this$0") + final MidiPcmStream this$0; + // $FF: synthetic field + @Export("val$cancelled") + @ObfuscatedName("val$cancelled") + final AtomicBoolean val$cancelled; + @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "17" + descriptor = "(Lmn;Ljava/util/concurrent/atomic/AtomicBoolean;)V" ) - @Export("vmethod5708") - void vmethod5708(); + class323(MidiPcmStream var1, AtomicBoolean var2) { + this.this$0 = var1; + this.val$cancelled = var2; + } + + @Export("call") + @ObfuscatedName("call") + public Object call() { + PriorityQueue var1 = this.this$0.field2822; + + while (true) { + class320 var2 = null; + synchronized(var1) { + if (var1.isEmpty() || this.val$cancelled.get()) { + return null; + } + + var2 = (class320)var1.remove(); + } + + var2.field2840.method304(); + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ldo;III)V", + garbageValue = "1668364198" + ) + @Export("runScript") + static void runScript(ScriptEvent var0, int var1, int var2) { + Object[] var3 = var0.args; + Script var4; + if (class7.isWorldMapEvent(var0.type)) { + class133.worldMapEvent = (WorldMapEvent)var3[0]; + WorldMapElement var5 = class141.WorldMapElement_get(class133.worldMapEvent.mapElement); + var4 = ModeWhere.getWorldMapScript(var0.type, var5.objectId, var5.category); + } else { + int var6 = (Integer)var3[0]; + var4 = HealthBarUpdate.getScript(var6); + } + + if (var4 != null) { + ApproximateRouteStrategy.runScriptLogic(var0, var4, var1, var2); + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/class324.java b/osrs/src/main/java/class324.java deleted file mode 100644 index 119b698c1..000000000 --- a/osrs/src/main/java/class324.java +++ /dev/null @@ -1,14 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("ml") -public class class324 { - @ObfuscatedName("au") - public int field2892; - @ObfuscatedName("ae") - public int field2890; - @ObfuscatedName("ao") - public int field2891; - - class324() { - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class325.java b/osrs/src/main/java/class325.java deleted file mode 100644 index 7f320c1d9..000000000 --- a/osrs/src/main/java/class325.java +++ /dev/null @@ -1,35 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("mj") -public class class325 { - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "([BIIB)Ljava/lang/String;", - garbageValue = "27" - ) - @Export("decodeStringCp1252") - public static String decodeStringCp1252(byte[] var0, int var1, int var2) { - char[] var3 = new char[var2]; - int var4 = 0; - - for (int var5 = 0; var5 < var2; ++var5) { - int var6 = var0[var5 + var1] & 255; - if (var6 != 0) { - if (var6 >= 128 && var6 < 160) { - char var7 = class384.cp1252AsciiExtension[var6 - 128]; - if (var7 == 0) { - var7 = '?'; - } - - var6 = var7; - } - - var3[var4++] = (char)var6; - } - } - - return new String(var3, 0, var4); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class326.java b/osrs/src/main/java/class326.java deleted file mode 100644 index 626d06d5e..000000000 --- a/osrs/src/main/java/class326.java +++ /dev/null @@ -1,114 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.net.MalformedURLException; -import java.net.URL; - -@ObfuscatedName("mw") -public class class326 { - @ObfuscatedName("qq") - static int field2893; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Let;" - ) - UrlRequest field2894; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lui;" - ) - SpritePixels field2895; - - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Lev;)V" - ) - class326(String var1, UrlRequester var2) { - try { - this.field2894 = var2.request(new URL(var1)); - } catch (MalformedURLException var4) { - this.field2894 = null; - } - - } - - @ObfuscatedSignature( - descriptor = "(Let;)V" - ) - class326(UrlRequest var1) { - this.field2894 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Lui;", - garbageValue = "-688482237" - ) - SpritePixels method1715() { - if (this.field2895 == null && this.field2894 != null && this.field2894.isDone()) { - if (this.field2894.getResponse() != null) { - this.field2895 = WorldMapData_1.method1484(this.field2894.getResponse()); - } - - this.field2894 = null; - } - - return this.field2895; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lnu;I)V", - garbageValue = "-856388391" - ) - public static void method1714(AbstractArchive var0) { - FloorOverlayDefinition.FloorOverlayDefinition_archive = var0; - } - - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1268604308" - ) - static int method1716(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 == 2700) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.itemId; - return 1; - } else if (var0 == 2701) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - if (var3.itemId != -1) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.itemQuantity; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 2702) { - int var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var5); - if (var4 != null) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 2706) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.rootInterface; - return 1; - } else if (var0 == 2707) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3.method1834() ? 1 : 0; - return 1; - } else if (var0 == 2708) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return WorldMapDecoration.method1530(var3); - } else if (var0 == 2709) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return class390.method2030(var3); - } else { - return 2; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class327.java b/osrs/src/main/java/class327.java index 8ea2814af..e291ef0a3 100644 --- a/osrs/src/main/java/class327.java +++ b/osrs/src/main/java/class327.java @@ -1,35 +1,98 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("mp") -public class class327 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lmb;" - ) - public class329 field2902; - @ObfuscatedName("ae") +import java.util.Comparator; + +@ObfuscatedName("mu") +public class class327 implements Comparator { + class327() { + } + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lml;" + descriptor = "(Lmm;Lmm;I)I", + garbageValue = "456447247" ) - class324 field2897; - @ObfuscatedName("ao") + int method1725(class320 var1, class320 var2) { + return var1.field2841 - var2.field2841; + } + + @Export("compare") + @ObfuscatedName("compare") + public int compare(Object var1, Object var2) { + return this.method1725((class320)var1, (class320)var2); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + return super.equals(var1); + } + + @ObfuscatedName("jb") @ObfuscatedSignature( - descriptor = "Lbj;" + descriptor = "(B)V", + garbageValue = "31" ) - class27 field2896; - @ObfuscatedName("at") - public Object[] field2900; - @ObfuscatedName("ac") - public Object[] field2898; - @ObfuscatedName("ai") - public Object[] field2899; - @ObfuscatedName("az") - public Object[] field2901; + static final void method1726() { + for (Projectile var0 = (Projectile)Client.projectiles.last(); var0 != null; var0 = (Projectile)Client.projectiles.previous()) { + if (var0.plane == ItemLayer.Client_plane && Client.cycle <= var0.cycleEnd) { + if (Client.cycle >= var0.cycleStart) { + NPC var1; + int var2; + Player var3; + if (!var0.isMoving && var0.field804 != 0) { + if (var0.field804 > 0) { + var1 = Client.npcs[var0.field804 - 1]; + if (var1 != null && var1.x >= 0 && var1.x < 13312 && var1.y >= 0 && var1.y < 13312) { + var0.sourceX = var1.x; + var0.sourceY = var1.y; + var0.setDestination(var0.field794, var0.field796, var0.field800, Client.cycle); + } + } else { + var2 = -var0.field804 - 1; + if (var2 == Client.localPlayerIndex) { + var3 = class229.localPlayer; + } else { + var3 = Client.players[var2]; + } + + if (var3 != null && var3.x >= 0 && var3.x < 13312 && var3.y >= 0 && var3.y < 13312) { + var0.sourceX = var3.x; + var0.sourceY = var3.y; + var0.setDestination(var0.field794, var0.field796, var0.field800, Client.cycle); + } + } + } + + if (var0.targetIndex > 0) { + var1 = Client.npcs[var0.targetIndex - 1]; + if (var1 != null && var1.x >= 0 && var1.x < 13312 && var1.y >= 0 && var1.y < 13312) { + var0.setDestination(var1.x, var1.y, WorldMapDecorationType.getTileHeight(var1.x, var1.y, var0.plane) - var0.endHeight, Client.cycle); + } + } + + if (var0.targetIndex < 0) { + var2 = -var0.targetIndex - 1; + if (var2 == Client.localPlayerIndex) { + var3 = class229.localPlayer; + } else { + var3 = Client.players[var2]; + } + + if (var3 != null && var3.x >= 0 && var3.x < 13312 && var3.y >= 0 && var3.y < 13312) { + var0.setDestination(var3.x, var3.y, WorldMapDecorationType.getTileHeight(var3.x, var3.y, var0.plane) - var0.endHeight, Client.cycle); + } + } + + var0.advance(Client.field460); + class36.scene.drawEntity(ItemLayer.Client_plane, (int)var0.x, (int)var0.y, (int)var0.z, 60, var0, var0.yaw, -1L, false); + } + } else { + var0.remove(); + } + } - class327() { - this.field2902 = new class329(); - this.field2897 = new class324(); - this.field2896 = new class27(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class329.java b/osrs/src/main/java/class329.java index 5761b2c64..df796e924 100644 --- a/osrs/src/main/java/class329.java +++ b/osrs/src/main/java/class329.java @@ -1,1240 +1,16 @@ import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import java.awt.datatransfer.*; - -@ObfuscatedName("mb") -public class class329 { - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "Lpj;" - ) - class394 field2938; - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "Lpj;" - ) - class394 field2939; - @ObfuscatedName("ah") - boolean field2919; - @ObfuscatedName("as") - boolean field2921; - @ObfuscatedName("ay") - int field2925; - @ObfuscatedName("aj") - boolean field2920; - @ObfuscatedName("av") - int field2923; - @ObfuscatedName("aw") - int field2924; - @ObfuscatedName("ak") - int field2922; - @ObfuscatedName("bh") - int field2928; - @ObfuscatedName("bj") - int field2929; - @ObfuscatedName("bk") - int field2930; - @ObfuscatedName("bv") - int field2934; - @ObfuscatedName("bt") - int field2933; - @ObfuscatedName("bd") - int field2926; - @ObfuscatedName("by") - int field2935; - @ObfuscatedName("bs") - int field2932; - @ObfuscatedName("bm") - int field2931; - @ObfuscatedName("bf") - int field2927; - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "Lmf;" - ) - class323 field2937; - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "Lmf;" - ) - class323 field2936; - - class329() { - this.field2938 = new class394(); - this.field2939 = new class394(); - this.field2919 = false; - this.field2921 = true; - this.field2925 = 0; - this.field2920 = false; - this.field2923 = 0; - this.field2924 = 0; - this.field2922 = 0; - this.field2928 = 0; - this.field2929 = 0; - this.field2930 = 0; - this.field2934 = 0; - this.field2933 = Integer.MAX_VALUE; - this.field2926 = Integer.MAX_VALUE; - this.field2935 = 0; - this.field2932 = 0; - this.field2931 = 0; - this.field2927 = 0; - this.field2938.method2046(1); - this.field2939.method2046(1); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "108" - ) - void method1730() { - this.field2925 = (this.field2925 + 1) % 60; - if (this.field2934 > 0) { - --this.field2934; - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(ZI)Z", - garbageValue = "-1080189228" - ) - public boolean method1731(boolean var1) { - var1 = var1 && this.field2921; - boolean var2 = this.field2919 != var1; - this.field2919 = var1; - if (!this.field2919) { - this.method1755(this.field2928, this.field2928); - } - - return var2; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "220495780" - ) - public void method1732(boolean var1) { - this.field2921 = var1; - this.field2919 = var1 && this.field2919; - } +import java.util.BitSet; +@ObfuscatedName("ml") +public class class329 extends Node { @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)Z", - garbageValue = "-764154033" - ) - boolean method1733(String var1) { - String var2 = this.field2938.method2041(); - if (!var2.equals(var1)) { - var1 = this.method1799(var1); - this.field2938.method2054(var1); - this.method1740(this.field2931, this.field2927); - this.method1803(); - this.method1808(); - return true; - } else { - return false; - } - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Z", - garbageValue = "0" - ) - boolean method1734(String var1) { - this.field2939.method2054(var1); - return true; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Lpk;B)Z", - garbageValue = "2" - ) - boolean method1735(AbstractFont var1) { - boolean var2 = !this.field2920; - this.field2938.method2045(var1); - this.field2939.method2045(var1); - this.field2920 = true; - var2 |= this.method1740(this.field2931, this.field2927); - var2 |= this.method1755(this.field2929, this.field2928); - if (this.method1803()) { - this.method1808(); - var2 = true; - } - - return var2; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(IIB)Z", - garbageValue = "-41" - ) - public boolean method1736(int var1, int var2) { - boolean var3 = this.field2935 != var1 || var2 != this.field2932; - this.field2935 = var1; - this.field2932 = var2; - var3 |= this.method1740(this.field2931, this.field2927); - return var3; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1183077231" - ) - public boolean method1737(int var1) { - if (var1 < 0) { - var1 = Integer.MAX_VALUE; - } - - boolean var2 = var1 == this.field2938.method2065(); - this.field2938.method2042(var1); - this.field2939.method2042(var1); - if (this.method1803()) { - this.method1808(); - var2 = true; - } - - return var2; - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-790356702" - ) - public boolean method1738(int var1) { - this.field2938.method2043(var1); - if (this.method1803()) { - this.method1808(); - return true; - } else { - return false; - } - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-34" - ) - public boolean method1739(int var1) { - this.field2926 = var1; - if (this.method1803()) { - this.method1808(); - return true; - } else { - return false; - } - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "1916065285" - ) - public boolean method1740(int var1, int var2) { - if (!this.method1787()) { - this.field2931 = var1; - this.field2927 = var2; - return false; - } else { - int var3 = this.field2931; - int var4 = this.field2927; - int var5 = Math.max(0, this.field2938.method2060() - this.field2935 + 2); - int var6 = Math.max(0, this.field2938.method2061() - this.field2932 + 1); - this.field2931 = Math.max(0, Math.min(var5, var1)); - this.field2927 = Math.max(0, Math.min(var6, var2)); - return var3 != this.field2931 || var4 != this.field2927; - } - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(IIS)Z", - garbageValue = "-28947" - ) - public boolean method1741(int var1, int var2) { - boolean var3 = true; - if (var1 < 0 || var1 > 2) { - var3 = false; - } - - if (var2 < 0 || var2 > 2) { - var3 = false; - } - - return var3 ? this.field2938.method2047(var1, var2) : false; - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "105" - ) - public void method1742(int var1) { - this.field2938.method2048(var1); - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "318624055" - ) - public void method1743(int var1) { - this.field2923 = var1; - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-745884306" - ) - public void method1744(int var1) { - this.field2938.method2046(var1); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "73" - ) - public void method1745(int var1) { - this.field2938.method2044(var1); - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "1266422233" - ) - public boolean method1746(int var1) { - this.field2922 = var1; - String var2 = this.field2938.method2041(); - int var3 = var2.length(); - var2 = this.method1799(var2); - if (var2.length() != var3) { - this.field2938.method2054(var2); - this.method1740(this.field2931, this.field2927); - this.method1803(); - this.method1808(); - return true; - } else { - return false; - } - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-313169923" - ) - public void method1747() { - this.field2920 = false; - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-88" - ) - public boolean method1748(int var1) { - if (this.method1809(var1)) { - this.method1753(); - class395 var2 = this.field2938.method2050((char)var1, this.field2928, this.field2933); - this.method1755(var2.method2078(), var2.method2078()); - this.method1803(); - this.method1808(); - } - - return true; - } - + int field2893; @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1833500314" - ) - public void method1749() { - if (!this.method1753() && this.field2928 > 0) { - int var1 = this.field2938.method2056(this.field2928 - 1); - this.method1808(); - this.method1755(var1, var1); - } - - } - - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "54" - ) - public void method1750() { - if (!this.method1753() && this.field2928 < this.field2938.method2040()) { - int var1 = this.field2938.method2056(this.field2928); - this.method1808(); - this.method1755(var1, var1); - } - - } - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-66" - ) - public void method1751() { - if (!this.method1753() && this.field2928 > 0) { - class485 var1 = this.method1801(this.field2928 - 1); - int var2 = this.field2938.method2057((Integer)var1.field4049, this.field2928); - this.method1808(); - this.method1755(var2, var2); - } - - } - - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-43" - ) - public void method1752() { - if (!this.method1753() && this.field2928 < this.field2938.method2040()) { - class485 var1 = this.method1801(this.field2928); - int var2 = this.field2938.method2057(this.field2928, (Integer)var1.field4048); - this.method1808(); - this.method1755(var2, var2); - } - - } - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1216764682" - ) - boolean method1753() { - if (!this.method1798()) { - return false; - } else { - int var1 = this.field2938.method2057(this.field2929, this.field2928); - this.method1808(); - this.method1755(var1, var1); - return true; - } - } - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-70" - ) - public void method1754() { - this.method1755(0, this.field2938.method2040()); - } - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "28215574" - ) - public boolean method1755(int var1, int var2) { - if (!this.method1787()) { - this.field2929 = var1; - this.field2928 = var2; - return false; - } else { - if (var1 > this.field2938.method2040()) { - var1 = this.field2938.method2040(); - } - - if (var2 > this.field2938.method2040()) { - var2 = this.field2938.method2040(); - } - - boolean var3 = this.field2929 != var1 || var2 != this.field2928; - this.field2929 = var1; - if (var2 != this.field2928) { - this.field2928 = var2; - this.field2925 = 0; - this.method1806(); - } - - if (var3 && this.field2936 != null) { - this.field2936.vmethod5708(); - } - - return var3; - } - } - - @ObfuscatedName("bh") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "67" - ) - public void method1756(boolean var1) { - class485 var2 = this.method1802(this.field2928); - this.method1804((Integer)var2.field4049, var1); - } - - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "-86" - ) - public void method1757(boolean var1) { - class485 var2 = this.method1802(this.field2928); - this.method1804((Integer)var2.field4048, var1); - } - - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "103" - ) - public void method1758(boolean var1) { - this.method1804(0, var1); - } - - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1079000340" - ) - public void method1759(boolean var1) { - this.method1804(this.field2938.method2040(), var1); - } - - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-1431814125" - ) - public void method1760(boolean var1) { - if (this.method1798() && !var1) { - this.method1804(Math.min(this.field2929, this.field2928), var1); - } else if (this.field2928 > 0) { - this.method1804(this.field2928 - 1, var1); - } - - } - - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-1263469110" - ) - public void method1761(boolean var1) { - if (this.method1798() && !var1) { - this.method1804(Math.max(this.field2929, this.field2928), var1); - } else if (this.field2928 < this.field2938.method2040()) { - this.method1804(this.field2928 + 1, var1); - } - - } - - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "(ZS)V", - garbageValue = "-12006" - ) - public void method1762(boolean var1) { - if (this.field2928 > 0) { - class485 var2 = this.method1801(this.field2928 - 1); - this.method1804((Integer)var2.field4049, var1); - } - - } - - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1452508344" - ) - public void method1763(boolean var1) { - if (this.field2928 < this.field2938.method2040()) { - class485 var2 = this.method1801(this.field2928 + 1); - this.method1804((Integer)var2.field4048, var1); - } - - } - - @ObfuscatedName("bm") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1855815967" - ) - public void method1764(boolean var1) { - if (this.field2928 > 0) { - this.method1804(this.field2938.method2059(this.field2928, -1), var1); - } - - } - - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "1322004372" - ) - public void method1765(boolean var1) { - if (this.field2928 < this.field2938.method2040()) { - this.method1804(this.field2938.method2059(this.field2928, 1), var1); - } - - } - - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "(ZB)V", - garbageValue = "6" - ) - public void method1766(boolean var1) { - if (this.field2928 > 0) { - int var2 = this.method1805(); - this.method1804(this.field2938.method2059(this.field2928, -var2), var1); - } - - } - - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-203552347" - ) - public void method1767(boolean var1) { - if (this.field2928 < this.field2938.method2040()) { - int var2 = this.method1805(); - this.method1804(this.field2938.method2059(this.field2928, var2), var1); - } - - } - - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "(ZS)V", - garbageValue = "2595" - ) - public void method1768(boolean var1) { - class398 var2 = this.field2938.method2049(0, this.field2928); - class485 var3 = var2.method2119(); - this.method1804(this.field2938.method2058((Integer)var3.field4049, this.field2927), var1); - } - - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "(ZI)V", - garbageValue = "-1036465571" - ) - public void method1769(boolean var1) { - class398 var2 = this.field2938.method2049(0, this.field2928); - class485 var3 = var2.method2119(); - this.method1804(this.field2938.method2058((Integer)var3.field4049, this.field2932 + this.field2927), var1); - } - - @ObfuscatedName("bu") - @ObfuscatedSignature( - descriptor = "(IIZZI)V", - garbageValue = "-1002335608" - ) - public void method1770(int var1, int var2, boolean var3, boolean var4) { - boolean var5 = false; - class485 var6; - int var8; - if (!this.field2920) { - var8 = 0; - } else { - var1 += this.field2931; - var2 += this.field2927; - var6 = this.method1810(); - var8 = this.field2938.method2058(var1 - (Integer)var6.field4049, var2 - (Integer)var6.field4048); - } - - if (var3 && var4) { - this.field2924 = 1; - var6 = this.method1801(var8); - class485 var7 = this.method1801(this.field2930); - this.method1800(var7, var6); - } else if (var3) { - this.field2924 = 1; - var6 = this.method1801(var8); - this.method1755((Integer)var6.field4049, (Integer)var6.field4048); - this.field2930 = (Integer)var6.field4049; - } else if (var4) { - this.method1755(this.field2930, var8); - } else { - if (this.field2934 > 0 && var8 == this.field2930) { - if (this.field2928 == this.field2929) { - this.field2924 = 1; - var6 = this.method1801(var8); - this.method1755((Integer)var6.field4049, (Integer)var6.field4048); - } else { - this.field2924 = 2; - var6 = this.method1802(var8); - this.method1755((Integer)var6.field4049, (Integer)var6.field4048); - } - } else { - this.field2924 = 0; - this.method1755(var8, var8); - this.field2930 = var8; - } - - this.field2934 = 25; - } - - } - - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "(IIB)V", - garbageValue = "-30" - ) - public void method1771(int var1, int var2) { - if (this.field2920 && this.method1782()) { - var1 += this.field2931; - var2 += this.field2927; - class485 var3 = this.method1810(); - int var4 = this.field2938.method2058(var1 - (Integer)var3.field4049, var2 - (Integer)var3.field4048); - class485 var5; - class485 var6; - switch(this.field2924) { - case 0: - this.method1755(this.field2929, var4); - break; - case 1: - var5 = this.method1801(this.field2930); - var6 = this.method1801(var4); - this.method1800(var5, var6); - break; - case 2: - var5 = this.method1802(this.field2930); - var6 = this.method1802(var4); - this.method1800(var5, var6); - } - } - - } - - @ObfuscatedName("bb") - @ObfuscatedSignature( - descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", - garbageValue = "-1723140286" - ) - public void method1772(Clipboard var1) { - class398 var2 = this.field2938.method2049(this.field2929, this.field2928); - if (!var2.method2115()) { - String var3 = var2.method2113(); - if (!var3.isEmpty()) { - var1.setContents(new StringSelection(var3), (ClipboardOwner)null); - } - } - - } - - @ObfuscatedName("br") - @ObfuscatedSignature( - descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", - garbageValue = "2111715206" - ) - public void method1773(Clipboard var1) { - if (this.method1798()) { - this.method1772(var1); - this.method1753(); - } - - } - - @ObfuscatedName("be") - @ObfuscatedSignature( - descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", - garbageValue = "-992379728" - ) - public void method1774(Clipboard var1) { - Transferable var2 = var1.getContents((Object)null); - if (var2 != null && var2.isDataFlavorSupported(DataFlavor.stringFlavor)) { - try { - String var3 = this.method1799((String)var2.getTransferData(DataFlavor.stringFlavor)); - this.method1753(); - class395 var4 = this.field2938.method2051(var3, this.field2928, this.field2933); - this.method1755(var4.method2078(), var4.method2078()); - this.method1803(); - this.method1808(); - } catch (Exception var5) { - } - } - - } - - @ObfuscatedName("bi") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "127" - ) - public void method1775() { - this.field2927 = Math.max(0, this.field2927 - this.field2938.method2062()); - } - - @ObfuscatedName("bz") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-12" - ) - public void method1776() { - int var1 = Math.max(0, this.field2938.method2061() - this.field2932); - this.field2927 = Math.min(var1, this.field2927 + this.field2938.method2062()); - } - - @ObfuscatedName("bx") - @ObfuscatedSignature( - descriptor = "(Lmf;I)V", - garbageValue = "1877137858" - ) - public void method1777(class323 var1) { - this.field2937 = var1; - } - - @ObfuscatedName("bn") - @ObfuscatedSignature( - descriptor = "(Lmf;I)V", - garbageValue = "1739536664" - ) - public void method1778(class323 var1) { - this.field2936 = var1; - } - - @ObfuscatedName("bw") - @ObfuscatedSignature( - descriptor = "(I)Lpj;", - garbageValue = "-2121359079" - ) - public class394 method1779() { - return this.field2938; - } - - @ObfuscatedName("bc") - @ObfuscatedSignature( - descriptor = "(I)Lpj;", - garbageValue = "1026932642" - ) - public class394 method1780() { - return this.field2939; - } - - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "(I)Lpl;", - garbageValue = "-927140025" - ) - public class398 method1781() { - return this.field2938.method2049(this.field2929, this.field2928); - } - - @ObfuscatedName("cw") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "10263708" - ) - public boolean method1782() { - return this.field2919; - } - - @ObfuscatedName("cf") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "2120535737" - ) - public boolean method1783() { - return this.field2921; - } - - @ObfuscatedName("cm") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "111" - ) - public boolean method1784() { - return this.method1782() && this.field2925 % 60 < 30; - } - - @ObfuscatedName("cn") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "2" - ) - public int method1785() { - return this.field2928; - } - - @ObfuscatedName("cs") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "9" - ) - public int method1786() { - return this.field2929; - } - - @ObfuscatedName("cx") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "73" - ) - public boolean method1787() { - return this.field2920; - } - - @ObfuscatedName("cr") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1004374049" - ) - public int method1788() { - return this.field2931; - } - - @ObfuscatedName("cd") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-737818988" - ) - public int method1789() { - return this.field2927; - } - - @ObfuscatedName("ce") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "770052367" - ) - public int method1790() { - return this.field2938.method2065(); - } - - @ObfuscatedName("cq") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-339785891" - ) - public int method1791() { - return this.field2938.method2066(); - } - - @ObfuscatedName("cp") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "-105" - ) - public int method1792() { - return this.field2926; - } - - @ObfuscatedName("cv") - @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "10872" - ) - public int method1793() { - return this.field2923; - } - - @ObfuscatedName("co") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-333954295" - ) - public int method1794() { - return this.field2938.method2067(); - } - - @ObfuscatedName("cl") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "1" - ) - public int method1795() { - return this.field2922; - } - - @ObfuscatedName("cu") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-2053175833" - ) - public int method1796() { - return this.field2938.method2068(); - } - - @ObfuscatedName("ch") - @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "-20" - ) - public boolean method1797() { - return this.method1791() > 1; - } - - @ObfuscatedName("ci") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-350056548" - ) - boolean method1798() { - return this.field2928 != this.field2929; - } - - @ObfuscatedName("ca") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Ljava/lang/String;", - garbageValue = "83" - ) - String method1799(String var1) { - StringBuilder var2 = new StringBuilder(var1.length()); - - for (int var3 = 0; var3 < var1.length(); ++var3) { - char var4 = var1.charAt(var3); - if (this.method1809(var4)) { - var2.append(var4); - } - } - - return var2.toString(); - } - - @ObfuscatedName("cb") - @ObfuscatedSignature( - descriptor = "(Lss;Lss;B)V", - garbageValue = "5" - ) - void method1800(class485 var1, class485 var2) { - if ((Integer)var2.field4049 < (Integer)var1.field4049) { - this.method1755((Integer)var1.field4048, (Integer)var2.field4049); - } else { - this.method1755((Integer)var1.field4049, (Integer)var2.field4048); - } - - } - - @ObfuscatedName("cg") - @ObfuscatedSignature( - descriptor = "(IB)Lss;", - garbageValue = "-107" - ) - class485 method1801(int var1) { - int var2 = this.field2938.method2040(); - int var3 = 0; - int var4 = var2; - - int var5; - for (var5 = var1; var5 > 0; --var5) { - if (this.method1807(this.field2938.method2036(var5 - 1).field3680)) { - var3 = var5; - break; - } - } - - for (var5 = var1; var5 < var2; ++var5) { - if (this.method1807(this.field2938.method2036(var5).field3680)) { - var4 = var5; - break; - } - } - - return new class485(var3, var4); - } - - @ObfuscatedName("cj") - @ObfuscatedSignature( - descriptor = "(II)Lss;", - garbageValue = "-982019338" - ) - class485 method1802(int var1) { - int var2 = this.field2938.method2040(); - int var3 = 0; - int var4 = var2; - - int var5; - for (var5 = var1; var5 > 0; --var5) { - if (this.field2938.method2036(var5 - 1).field3680 == '\n') { - var3 = var5; - break; - } - } - - for (var5 = var1; var5 < var2; ++var5) { - if (this.field2938.method2036(var5).field3680 == '\n') { - var4 = var5; - break; - } - } - - return new class485(var3, var4); - } - - @ObfuscatedName("cz") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-2078239234" - ) - boolean method1803() { - if (!this.method1787()) { - return false; - } else { - boolean var1 = false; - if (this.field2938.method2040() > this.field2926) { - this.field2938.method2057(this.field2926, this.field2938.method2040()); - var1 = true; - } - - int var2 = this.method1791(); - int var3; - if (this.field2938.method2063() > var2) { - var3 = this.field2938.method2059(0, var2) - 1; - this.field2938.method2057(var3, this.field2938.method2040()); - var1 = true; - } - - if (var1) { - var3 = this.field2928; - int var4 = this.field2929; - int var5 = this.field2938.method2040(); - if (this.field2928 > var5) { - var3 = var5; - } - - if (this.field2929 > var5) { - var4 = var5; - } - - this.method1755(var4, var3); - } - - return var1; - } - } - - @ObfuscatedName("ct") - @ObfuscatedSignature( - descriptor = "(IZI)V", - garbageValue = "1750876747" - ) - void method1804(int var1, boolean var2) { - if (var2) { - this.method1755(this.field2929, var1); - } else { - this.method1755(var1, var1); - } - - } - - @ObfuscatedName("cy") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "6" - ) - int method1805() { - return this.field2932 / this.field2938.method2062(); - } - - @ObfuscatedName("ck") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-676768049" - ) - void method1806() { - class398 var1 = this.field2938.method2049(0, this.field2928); - class485 var2 = var1.method2119(); - int var3 = this.field2938.method2062(); - int var4 = (Integer)var2.field4049 - 10; - int var5 = var4 + 20; - int var6 = (Integer)var2.field4048 - 3; - int var7 = var6 + var3 + 6; - int var8 = this.field2931; - int var9 = var8 + this.field2935; - int var10 = this.field2927; - int var11 = var10 + this.field2932; - int var12 = this.field2931; - int var13 = this.field2927; - if (var4 < var8) { - var12 = var4; - } else if (var5 > var9) { - var12 = var5 - this.field2935; - } - - if (var6 < var10) { - var13 = var6; - } else if (var7 > var11) { - var13 = var7 - this.field2932; - } - - this.method1740(var12, var13); - } - - @ObfuscatedName("cc") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-369704395" - ) - boolean method1807(int var1) { - return var1 == 32 || var1 == 10 || var1 == 9; - } - - @ObfuscatedName("dh") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2067288907" - ) - void method1808() { - if (this.field2937 != null) { - this.field2937.vmethod5708(); - } - - } - - @ObfuscatedName("dj") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "-268502133" - ) - boolean method1809(int var1) { - switch(this.field2922) { - case 1: - return WorldMapLabel.isAlphaNumeric((char)var1); - case 2: - return class200.isCharAlphabetic((char)var1); - case 3: - return class330.isDigit((char)var1); - case 4: - char var2 = (char)var1; - if (class330.isDigit(var2)) { - return true; - } else { - if (var2 != 'k' && var2 != 'K' && var2 != 'm' && var2 != 'M' && var2 != 'b' && var2 != 'B') { - return false; - } - - return true; - } - default: - return true; - } - } + BitSet field2894; - @ObfuscatedName("di") - @ObfuscatedSignature( - descriptor = "(I)Lss;", - garbageValue = "-1390264109" - ) - class485 method1810() { - int var1 = this.field2938.method2069(this.field2935); - int var2 = this.field2938.method2070(this.field2932); - return new class485(var1, var2); + class329(int var1) { + this.field2893 = var1; + this.field2894 = new BitSet(128); } } \ No newline at end of file diff --git a/osrs/src/main/java/class33.java b/osrs/src/main/java/class33.java index e73464021..24446069f 100644 --- a/osrs/src/main/java/class33.java +++ b/osrs/src/main/java/class33.java @@ -1,35 +1,28 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bs") +@ObfuscatedName("ba") public class class33 { - @ObfuscatedName("um") - @Export("cameraMoveToY") - static int cameraMoveToY; - @ObfuscatedName("un") - @Export("cameraLookAtSpeed") - static int cameraLookAtSpeed; - @ObfuscatedName("az") - int field92; - @ObfuscatedName("ap") + @ObfuscatedName("aa") + int field90; + @ObfuscatedName("ac") int field91; class33(int var1, int var2) { - this.field92 = var1; + this.field90 = var1; this.field91 = var2; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lbv;I)Z", - garbageValue = "625917301" + descriptor = "(Lbi;I)Z", + garbageValue = "1979217570" ) - boolean method130(class29 var1) { + boolean method142(class29 var1) { if (var1 == null) { return false; } else { - switch(this.field92) { + switch(this.field90) { case 1: return var1.vmethod3949(this.field91); case 2: @@ -44,22 +37,41 @@ boolean method130(class29 var1) { } } - @ObfuscatedName("ao") + @ObfuscatedName("aw") @ObfuscatedSignature( - descriptor = "(IIIII)I", - garbageValue = "-795893337" + descriptor = "(Ljava/lang/String;I)I", + garbageValue = "1755486935" ) - static final int method129(int var0, int var1, int var2, int var3) { - return var0 * var2 + var3 * var1 >> 16; + static int method143(String var0) { + if (var0.equals("centre")) { + return 1; + } else { + return !var0.equals("bottom") && !var0.equals("right") ? 0 : 2; + } } - @ObfuscatedName("at") + @ObfuscatedName("kd") @ObfuscatedSignature( - descriptor = "(II)Lco;", - garbageValue = "-1816107521" + descriptor = "(Ldn;I)V", + garbageValue = "-56685834" ) - @Export("Messages_getMessage") - static Message Messages_getMessage(int var0) { - return (Message)Messages.Messages_hashTable.get((long)var0); + static void method144(NPC var0) { + var0.field983 = var0.definition.size; + var0.field1018 = var0.definition.rotation; + var0.walkSequence = var0.definition.walkSequence; + var0.walkBackSequence = var0.definition.walkBackSequence; + var0.walkLeftSequence = var0.definition.walkLeftSequence; + var0.walkRightSequence = var0.definition.walkRightSequence; + var0.idleSequence = var0.definition.idleSequence; + var0.turnLeftSequence = var0.definition.turnLeftSequence; + var0.turnRightSequence = var0.definition.turnRightSequence; + var0.runSequence = var0.definition.runSequence; + var0.runBackSequence = var0.definition.runBackSequence; + var0.runLeftSequence = var0.definition.runLeftSequence; + var0.runRightSequence = var0.definition.runRightSequence; + var0.crawlSequence = var0.definition.crawlSequence; + var0.crawlBackSequence = var0.definition.crawlBackSequence; + var0.crawlLeftSequence = var0.definition.crawlLeftSequence; + var0.crawlRightSequence = var0.definition.crawlRightSequence; } } \ No newline at end of file diff --git a/osrs/src/main/java/class330.java b/osrs/src/main/java/class330.java deleted file mode 100644 index 08f455096..000000000 --- a/osrs/src/main/java/class330.java +++ /dev/null @@ -1,38 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("mm") -public class class330 { - @ObfuscatedName("au") - public static final short[] field2941; - @ObfuscatedName("ae") - public static final short[][] field2942; - @ObfuscatedName("ao") - public static final short[] field2940; - @ObfuscatedName("at") - public static final short[][] field2943; - @ObfuscatedName("ud") - @ObfuscatedSignature( - descriptor = "Lcx;" - ) - @Export("decimator") - static Decimator decimator; - - static { - field2941 = new short[]{6798, 8741, 25238, 4626, 4550}; - field2942 = new short[][]{{6798, 107, 10283, 16, 4797, 7744, 5799, 4634, -31839, 22433, 2983, -11343, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010, -22122, 937, 8130, -13422, 30385}, {8741, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 25239, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {25238, 8742, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {4626, 11146, 6439, 12, 4758, 10270}, {4550, 4537, 5681, 5673, 5790, 6806, 8076, 4574, 17050, 0, 127, -31821, -17991}}; - field2940 = new short[]{-10304, 9104, -1, -1, -1}; - field2943 = new short[][]{{6554, 115, 10304, 28, 5702, 7756, 5681, 4510, -31835, 22437, 2859, -11339, 16, 5157, 10446, 3658, -27314, -21965, 472, 580, 784, 21966, 28950, -15697, -14002, -22116, 945, 8144, -13414, 30389}, {9104, 10275, 7595, 3610, 7975, 8526, 918, -26734, 24466, 10145, -6882, 5027, 1457, 16565, -30545, 25486, 24, 5392, 10429, 3673, -27335, -21957, 192, 687, 412, 21821, 28835, -15460, -14019}, new short[0], new short[0], new short[0]}; - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(CI)Z", - garbageValue = "770001992" - ) - @Export("isDigit") - public static boolean isDigit(char var0) { - return var0 >= '0' && var0 <= '9'; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class332.java b/osrs/src/main/java/class332.java deleted file mode 100644 index e90f8646e..000000000 --- a/osrs/src/main/java/class332.java +++ /dev/null @@ -1,22 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("mn") -public class class332 { - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lht;" - ) - @Export("clock") - static Clock clock; - - @ObfuscatedName("bo") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "1427775858" - ) - static int method1850(int var0) { - return (int)((Math.log((double)var0) / Interpreter.field717 - 7.0D) * 256.0D); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class334.java b/osrs/src/main/java/class334.java index 5ec53b987..3908e8b9f 100644 --- a/osrs/src/main/java/class334.java +++ b/osrs/src/main/java/class334.java @@ -2,12 +2,13 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("my") -public class class334 { - @ObfuscatedName("au") +@ObfuscatedName("mc") +public interface class334 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lmx;" + descriptor = "(B)V", + garbageValue = "5" ) - @Export("huffman") - static Huffman huffman; + @Export("vmethod5708") + void vmethod5708(); } \ No newline at end of file diff --git a/osrs/src/main/java/class336.java b/osrs/src/main/java/class336.java new file mode 100644 index 000000000..f5165c6ae --- /dev/null +++ b/osrs/src/main/java/class336.java @@ -0,0 +1,215 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("mp") +public class class336 { + @ObfuscatedName("at") + public int field2923; + @ObfuscatedName("ah") + public int field2921; + @ObfuscatedName("ar") + public int field2922; + + class336() { + } + + @ObfuscatedName("il") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1748948438" + ) + static final void method1740() { + int var0; + int var1; + int var2; + int var3; + int var4; + int var5; + if (Client.oculusOrbState == 0) { + var0 = class229.localPlayer.x; + var1 = class229.localPlayer.y; + if (LoginScreenAnimation.oculusOrbFocalPointX - var0 < -500 || LoginScreenAnimation.oculusOrbFocalPointX - var0 > 500 || ScriptFrame.oculusOrbFocalPointY - var1 < -500 || ScriptFrame.oculusOrbFocalPointY - var1 > 500) { + LoginScreenAnimation.oculusOrbFocalPointX = var0; + ScriptFrame.oculusOrbFocalPointY = var1; + } + + if (var0 != LoginScreenAnimation.oculusOrbFocalPointX) { + LoginScreenAnimation.oculusOrbFocalPointX += (var0 - LoginScreenAnimation.oculusOrbFocalPointX) / 16; + } + + if (var1 != ScriptFrame.oculusOrbFocalPointY) { + ScriptFrame.oculusOrbFocalPointY += (var1 - ScriptFrame.oculusOrbFocalPointY) / 16; + } + + var2 = LoginScreenAnimation.oculusOrbFocalPointX >> 7; + var3 = ScriptFrame.oculusOrbFocalPointY >> 7; + var4 = WorldMapDecorationType.getTileHeight(LoginScreenAnimation.oculusOrbFocalPointX, ScriptFrame.oculusOrbFocalPointY, ItemLayer.Client_plane); + var5 = 0; + int var6; + if (var2 > 3 && var3 > 3 && var2 < 100 && var3 < 100) { + for (var6 = var2 - 4; var6 <= var2 + 4; ++var6) { + for (int var7 = var3 - 4; var7 <= var3 + 4; ++var7) { + int var8 = ItemLayer.Client_plane; + if (var8 < 3 && (Tiles.Tiles_renderFlags[1][var6][var7] & 2) == 2) { + ++var8; + } + + int var9 = var4 - Tiles.Tiles_heights[var8][var6][var7]; + if (var9 > var5) { + var5 = var9; + } + } + } + } + + var6 = var5 * 192; + if (var6 > 98048) { + var6 = 98048; + } + + if (var6 < 32768) { + var6 = 32768; + } + + if (var6 > Client.field473) { + Client.field473 += (var6 - Client.field473) / 24; + } else if (var6 < Client.field473) { + Client.field473 += (var6 - Client.field473) / 80; + } + + class12.field41 = WorldMapDecorationType.getTileHeight(class229.localPlayer.x, class229.localPlayer.y, ItemLayer.Client_plane) - Client.camFollowHeight; + } else if (Client.oculusOrbState == 1) { + WorldMapCacheName.method1356(); + short var10 = -1; + if (Client.keyHandlerInstance.getKeyPressed(33)) { + var10 = 0; + } else if (Client.keyHandlerInstance.getKeyPressed(49)) { + var10 = 1024; + } + + if (Client.keyHandlerInstance.getKeyPressed(48)) { + if (var10 == 0) { + var10 = 1792; + } else if (var10 == 1024) { + var10 = 1280; + } else { + var10 = 1536; + } + } else if (Client.keyHandlerInstance.getKeyPressed(50)) { + if (var10 == 0) { + var10 = 256; + } else if (var10 == 1024) { + var10 = 768; + } else { + var10 = 512; + } + } + + byte var11 = 0; + if (Client.keyHandlerInstance.getKeyPressed(35)) { + var11 = -1; + } else if (Client.keyHandlerInstance.getKeyPressed(51)) { + var11 = 1; + } + + var2 = 0; + if (var10 >= 0 || var11 != 0) { + var2 = Client.keyHandlerInstance.getKeyPressed(81) ? Client.oculusOrbSlowedSpeed : Client.oculusOrbNormalSpeed ; + var2 *= 16; + Client.field462 = var10; + Client.field477 = var11; + } + + if (Client.field471 < var2) { + Client.field471 += var2 / 8; + if (Client.field471 > var2) { + Client.field471 = var2; + } + } else if (Client.field471 > var2) { + Client.field471 = Client.field471 * 9 / 10; + } + + if (Client.field471 > 0) { + var3 = Client.field471 / 16; + if (Client.field462 >= 0) { + var0 = Client.field462 - class192.cameraYaw & 2047; + var4 = Rasterizer3D.Rasterizer3D_sine[var0]; + var5 = Rasterizer3D.Rasterizer3D_cosine[var0]; + LoginScreenAnimation.oculusOrbFocalPointX += var3 * var4 / 65536; + ScriptFrame.oculusOrbFocalPointY += var5 * var3 / 65536; + } + + if (Client.field477 != 0) { + class12.field41 += var3 * Client.field477; + if (class12.field41 > 0) { + class12.field41 = 0; + } + } + } else { + Client.field462 = -1; + Client.field477 = -1; + } + + if (Client.keyHandlerInstance.getKeyPressed(13)) { + Client.packetWriter.addNode(class113.getPacketBufferNode(ClientPacket.field2593, Client.packetWriter.isaacCipher)); + Client.oculusOrbState = 0; + } + } + + if (MouseHandler.MouseHandler_currentButton == 4 && class19.mouseCam) { + var0 = MouseHandler.MouseHandler_y - Client.field464; + Client.camAngleDX = var0 * 2; + Client.field464 = var0 != -1 && var0 != 1 ? (MouseHandler.MouseHandler_y + Client.field464) / 2 : MouseHandler.MouseHandler_y ; + var1 = Client.field478 - MouseHandler.MouseHandler_x; + Client.camAngleDY = var1 * 2; + Client.field478 = var1 != -1 && var1 != 1 ? (MouseHandler.MouseHandler_x + Client.field478) / 2 : MouseHandler.MouseHandler_x ; + } else { + if (Client.keyHandlerInstance.getKeyPressed(96)) { + Client.camAngleDY += (-24 - Client.camAngleDY) / 2; + } else if (Client.keyHandlerInstance.getKeyPressed(97)) { + Client.camAngleDY += (24 - Client.camAngleDY) / 2; + } else { + Client.camAngleDY /= 2; + } + + if (Client.keyHandlerInstance.getKeyPressed(98)) { + Client.camAngleDX += (12 - Client.camAngleDX) / 2; + } else if (Client.keyHandlerInstance.getKeyPressed(99)) { + Client.camAngleDX += (-12 - Client.camAngleDX) / 2; + } else { + Client.camAngleDX /= 2; + } + + Client.field464 = MouseHandler.MouseHandler_y; + Client.field478 = MouseHandler.MouseHandler_x; + } + + Client.camAngleY = Client.camAngleDY / 2 + Client.camAngleY & 2047; + Client.camAngleX += Client.camAngleDX / 2; + if (Client.camAngleX < 128) { + Client.camAngleX = 128; + } + + if (Client.camAngleX > 383) { + Client.camAngleX = 383; + } + + } + + @ObfuscatedName("oi") + @ObfuscatedSignature( + descriptor = "(Luj;IS)V", + garbageValue = "241" + ) + static void method1741(Buffer var0, int var1) { + NewShit.method936(var0.array, var1); + if (JagexCache.JagexCache_randomDat != null) { + try { + JagexCache.JagexCache_randomDat.seek(0L); + JagexCache.JagexCache_randomDat.write(var0.array, var1, 24); + } catch (Exception var3) { + } + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class337.java b/osrs/src/main/java/class337.java new file mode 100644 index 000000000..2457a094d --- /dev/null +++ b/osrs/src/main/java/class337.java @@ -0,0 +1,9 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("mz") +public class class337 { + @ObfuscatedName("az") + @Export("Tiles_hue") + static int[] Tiles_hue; +} \ No newline at end of file diff --git a/osrs/src/main/java/class338.java b/osrs/src/main/java/class338.java index db068bb8a..7cbb18d3d 100644 --- a/osrs/src/main/java/class338.java +++ b/osrs/src/main/java/class338.java @@ -2,86 +2,61 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.concurrent.ArrayBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; +import java.net.MalformedURLException; +import java.net.URL; -@ObfuscatedName("nq") +@ObfuscatedName("nd") public class class338 { - @ObfuscatedName("ao") - static int field3112; - - @ObfuscatedName("ao") + @ObfuscatedName("bn") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2066901929" + descriptor = "Luu;" ) - @Export("savePreferences") - static void savePreferences() { - AccessFile var0 = null; - - try { - var0 = Decimator.getPreferencesFile("", WorldMapSectionType.field2417.name, true); - Buffer var1 = class449.clientPreferences.toBuffer(); - var0.write(var1.array, 0, var1.offset); - } catch (Exception var3) { - } + @Export("rasterProvider") + public static AbstractRasterProvider rasterProvider; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lea;" + ) + UrlRequest field2926; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Luz;" + ) + SpritePixels field2927; + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Lel;)V" + ) + class338(String var1, UrlRequester var2) { try { - if (var0 != null) { - var0.closeSync(true); - } - } catch (Exception var2) { + this.field2926 = var2.request(new URL(var1)); + } catch (MalformedURLException var4) { + this.field2926 = null; } } - @ObfuscatedName("am") @ObfuscatedSignature( - descriptor = "(II)Lfv;", - garbageValue = "1964561165" + descriptor = "(Lea;)V" ) - static class137 method1862(int var0) { - class137 var1 = (class137)SequenceDefinition.SequenceDefinition_cachedModel.get((long)var0); - if (var1 != null) { - return var1; - } else { - AbstractArchive var3 = VarpDefinition.SequenceDefinition_animationsArchive; - AbstractArchive var4 = class485.SequenceDefinition_skeletonsArchive; - boolean var5 = true; - byte[] var6 = var3.getFile(var0 >> 16 & 65535, var0 & 65535); - class137 var2; - if (var6 == null) { - var5 = false; - var2 = null; - } else { - int var7 = (var6[1] & 255) << 8 | var6[2] & 255; - byte[] var8 = var4.getFile(var7, 0); - if (var8 == null) { - var5 = false; - } - - if (!var5) { - var2 = null; - } else { - if (class137.field1296 == null) { - class291.field2496 = Runtime.getRuntime().availableProcessors(); - class137.field1296 = new ThreadPoolExecutor(0, class291.field2496, 0L, TimeUnit.MILLISECONDS, new ArrayBlockingQueue(class291.field2496 * 100 + 100), new class184()); - } - - try { - var2 = new class137(var3, var4, var0, false); - } catch (Exception var10) { - var2 = null; - } - } - } + class338(UrlRequest var1) { + this.field2926 = var1; + } - if (var2 != null) { - SequenceDefinition.SequenceDefinition_cachedModel.put(var2, (long)var0); + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Luz;", + garbageValue = "1464542862" + ) + SpritePixels method1742() { + if (this.field2927 == null && this.field2926 != null && this.field2926.isDone()) { + if (this.field2926.getResponse() != null) { + this.field2927 = WorldMapArchiveLoader.method2391(this.field2926.getResponse()); } - return var2; + this.field2926 = null; } + + return this.field2927; } } \ No newline at end of file diff --git a/osrs/src/main/java/class339.java b/osrs/src/main/java/class339.java index 3bacc18e6..e49e2e857 100644 --- a/osrs/src/main/java/class339.java +++ b/osrs/src/main/java/class339.java @@ -1,91 +1,175 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("na") -public enum class339 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lna;" - ) - field3117(0), - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lna;" - ) - field3115(1), - @ObfuscatedName("ao") +import java.awt.*; +import java.io.File; +import java.io.IOException; +import java.io.RandomAccessFile; + +@ObfuscatedName("nq") +public class class339 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lna;" + descriptor = "Lni;" ) - field3116(2), - @ObfuscatedName("at") + public class341 field2934; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lna;" + descriptor = "Lmp;" ) - field3113(3), - @ObfuscatedName("ac") + class336 field2929; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Lna;" + descriptor = "Lbd;" ) - field3114(4); - - @ObfuscatedName("ai") - final int field3118; + class27 field2928; + @ObfuscatedName("ao") + public Object[] field2932; + @ObfuscatedName("ab") + public Object[] field2931; + @ObfuscatedName("au") + public Object[] field2933; + @ObfuscatedName("aa") + public Object[] field2930; - class339(int var3) { - this.field3118 = var3; + class339() { + this.field2934 = new class341(); + this.field2929 = new class336(); + this.field2928 = new class27(); } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" + descriptor = "(Ljava/awt/Component;I)V", + garbageValue = "-687709037" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field3118; + static void method1743(Component var0) { + var0.removeMouseListener(MouseHandler.MouseHandler_instance); + var0.removeMouseMotionListener(MouseHandler.MouseHandler_instance); + var0.removeFocusListener(MouseHandler.MouseHandler_instance); + MouseHandler.MouseHandler_currentButtonVolatile = 0; } - @ObfuscatedName("nb") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIII)Lds;", - garbageValue = "-800562138" + descriptor = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IIB)V", + garbageValue = "99" ) - @Export("ifOpenSub") - static final InterfaceParent ifOpenSub(int var0, int var1, int var2) { - InterfaceParent var3 = new InterfaceParent(); - var3.group = var1; - var3.type = var2; - Client.interfaceParents.put(var3, (long)var0); - class19.Widget_resetModelFrames(var1); - Widget var4 = class92.getWidget(var0); - class218.invalidateWidget(var4); - if (Client.meslayerContinueWidget != null) { - class218.invalidateWidget(Client.meslayerContinueWidget); - Client.meslayerContinueWidget = null; + public static void method1744(String var0, String var1, String var2, int var3, int var4) throws IOException { + if (var1 != null && !var1.isEmpty()) { + var0 = var0 + "-" + var1; } - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var0 >> 16], var4, false); - MoveSpeed.runWidgetOnLoadListener(var1); - if (Client.rootInterface != -1) { - class385.runIntfCloseListeners(Client.rootInterface, 1); + UserComparator6.field1202 = var4; + class521.cacheGamebuild = var3; + + try { + class90.field893 = System.getProperty("os.name"); + } catch (Exception var19) { + class90.field893 = "Unknown"; } - return var3; - } + ClanChannel.field1413 = class90.field893.toLowerCase(); + Login.userHomeDirectory = null; - @ObfuscatedName("nh") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "18" - ) - static void method1865(int var0) { - for (IntegerNode var1 = (IntegerNode)Client.widgetFlags.first(); var1 != null; var1 = (IntegerNode)Client.widgetFlags.next()) { - if ((var1.key >> 48 & 65535L) == (long)var0) { - var1.remove(); + try { + Login.userHomeDirectory = System.getProperty("jagex.userhome"); + } catch (Exception var18) { + } + + if (Login.userHomeDirectory == null) { + try { + Login.userHomeDirectory = System.getProperty("user.home"); + } catch (Exception var17) { + } + } + + if (Login.userHomeDirectory != null) { + Login.userHomeDirectory = Login.userHomeDirectory + "/"; + } + + try { + if (ClanChannel.field1413.startsWith("win")) { + if (Login.userHomeDirectory == null) { + Login.userHomeDirectory = System.getenv("USERPROFILE"); + } + } else if (Login.userHomeDirectory == null) { + Login.userHomeDirectory = System.getenv("HOME"); + } + + if (Login.userHomeDirectory != null) { + Login.userHomeDirectory = Login.userHomeDirectory + "/"; } + } catch (Exception var16) { + } + + if (Login.userHomeDirectory == null) { + Login.userHomeDirectory = "~/"; } + GameObject.field2480 = new String[]{"c:/rscache/", "/rscache/", "c:/windows/", "c:/winnt/", "c:/", Login.userHomeDirectory, "/tmp/", ""}; + class85.field859 = new String[]{".jagex_cache_" + class521.cacheGamebuild, ".file_store_" + class521.cacheGamebuild}; + int var13 = 0; + + label107: + while (var13 < 4) { + JagexCache.cacheDir = class181.method918(var0, var2, var13); + if (!JagexCache.cacheDir.exists()) { + JagexCache.cacheDir.mkdirs(); + } + + File[] var6 = JagexCache.cacheDir.listFiles(); + if (var6 == null) { + break; + } + + File[] var7 = var6; + int var8 = 0; + + while (true) { + if (var8 >= var7.length) { + break label107; + } + + File var9 = var7[var8]; + + boolean var10; + try { + RandomAccessFile var11 = new RandomAccessFile(var9, "rw"); + int var12 = var11.read(); + var11.seek(0L); + var11.write(var12); + var11.seek(0L); + var11.close(); + var10 = true; + } catch (Exception var15) { + var10 = false; + } + + if (!var10) { + ++var13; + break; + } + + ++var8; + } + } + + File var5 = JagexCache.cacheDir; + FileSystem.FileSystem_cacheDir = var5; + if (!FileSystem.FileSystem_cacheDir.exists()) { + throw new RuntimeException(""); + } else { + FileSystem.FileSystem_hasPermissions = true; + PacketWriter.method643(); + JagexCache.JagexCache_dat2File = new BufferedFile(new AccessFile(class10.getFile("main_file_cache.dat2"), "rw", 1048576000L), 5200, 0); + JagexCache.JagexCache_idx255File = new BufferedFile(new AccessFile(class10.getFile("main_file_cache.idx255"), "rw", 1048576L), 6000, 0); + KeyHandler.JagexCache_idxFiles = new BufferedFile[UserComparator6.field1202]; + + for (int var14 = 0; var14 < UserComparator6.field1202; ++var14) { + KeyHandler.JagexCache_idxFiles[var14] = new BufferedFile(new AccessFile(class10.getFile("main_file_cache.idx" + var14), "rw", 1048576L), 6000, 0); + } + + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class341.java b/osrs/src/main/java/class341.java new file mode 100644 index 000000000..804812ba2 --- /dev/null +++ b/osrs/src/main/java/class341.java @@ -0,0 +1,1241 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.awt.datatransfer.*; + +@ObfuscatedName("ni") +public class class341 { + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "Lpv;" + ) + class406 field2969; + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "Lpv;" + ) + class406 field2970; + @ObfuscatedName("ai") + boolean field2950; + @ObfuscatedName("aw") + boolean field2952; + @ObfuscatedName("ae") + int field2954; + @ObfuscatedName("an") + boolean field2951; + @ObfuscatedName("ag") + int field2956; + @ObfuscatedName("ad") + int field2953; + @ObfuscatedName("af") + int field2955; + @ObfuscatedName("be") + int field2959; + @ObfuscatedName("bd") + int field2958; + @ObfuscatedName("bl") + int field2963; + @ObfuscatedName("bi") + int field2962; + @ObfuscatedName("bv") + int field2966; + @ObfuscatedName("bf") + int field2960; + @ObfuscatedName("bg") + int field2961; + @ObfuscatedName("ba") + int field2957; + @ObfuscatedName("bm") + int field2964; + @ObfuscatedName("bp") + int field2965; + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "Lmc;" + ) + class334 field2968; + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "Lmc;" + ) + class334 field2967; + + class341() { + this.field2969 = new class406(); + this.field2970 = new class406(); + this.field2950 = false; + this.field2952 = true; + this.field2954 = 0; + this.field2951 = false; + this.field2956 = 0; + this.field2953 = 0; + this.field2955 = 0; + this.field2959 = 0; + this.field2958 = 0; + this.field2963 = 0; + this.field2962 = 0; + this.field2966 = Integer.MAX_VALUE; + this.field2960 = Integer.MAX_VALUE; + this.field2961 = 0; + this.field2957 = 0; + this.field2964 = 0; + this.field2965 = 0; + this.field2969.method2062(1); + this.field2970.method2062(1); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "1" + ) + void method1758() { + this.field2954 = (this.field2954 + 1) % 60; + if (this.field2962 > 0) { + --this.field2962; + } + + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(ZI)Z", + garbageValue = "-1199149744" + ) + public boolean method1759(boolean var1) { + var1 = var1 && this.field2952; + boolean var2 = this.field2950 != var1; + this.field2950 = var1; + if (!this.field2950) { + this.method1783(this.field2959, this.field2959); + } + + return var2; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "18331512" + ) + public void method1760(boolean var1) { + this.field2952 = var1; + this.field2950 = var1 && this.field2950; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)Z", + garbageValue = "1" + ) + public boolean method1761(String var1) { + String var2 = this.field2969.method2056(); + if (!var2.equals(var1)) { + var1 = this.method1827(var1); + this.field2969.method2069(var1); + this.method1783(this.field2958, this.field2959); + this.method1768(this.field2964, this.field2965); + this.method1831(); + this.method1836(); + return true; + } else { + return false; + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)Z", + garbageValue = "-65" + ) + boolean method1762(String var1) { + this.field2970.method2069(var1); + return true; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Lpa;B)Z", + garbageValue = "116" + ) + boolean method1763(AbstractFont var1) { + boolean var2 = !this.field2951; + this.field2969.method2061(var1); + this.field2970.method2061(var1); + this.field2951 = true; + var2 |= this.method1768(this.field2964, this.field2965); + var2 |= this.method1783(this.field2958, this.field2959); + if (this.method1831()) { + this.method1836(); + var2 = true; + } + + return var2; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(IIB)Z", + garbageValue = "101" + ) + public boolean method1764(int var1, int var2) { + boolean var3 = this.field2961 != var1 || var2 != this.field2957; + this.field2961 = var1; + this.field2957 = var2; + var3 |= this.method1768(this.field2964, this.field2965); + return var3; + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "-229674282" + ) + public boolean method1765(int var1) { + if (var1 < 0) { + var1 = Integer.MAX_VALUE; + } + + boolean var2 = var1 == this.field2969.method2080(); + this.field2969.method2057(var1); + this.field2970.method2057(var1); + if (this.method1831()) { + this.method1836(); + var2 = true; + } + + return var2; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "8" + ) + public boolean method1766(int var1) { + this.field2969.method2059(var1); + if (this.method1831()) { + this.method1836(); + return true; + } else { + return false; + } + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "117249639" + ) + public boolean method1767(int var1) { + this.field2960 = var1; + if (this.method1831()) { + this.method1836(); + return true; + } else { + return false; + } + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "-285626466" + ) + public boolean method1768(int var1, int var2) { + if (!this.method1815()) { + this.field2964 = var1; + this.field2965 = var2; + return false; + } else { + int var3 = this.field2964; + int var4 = this.field2965; + int var5 = Math.max(0, this.field2969.method2075() - this.field2961 + 2); + int var6 = Math.max(0, this.field2969.method2076() - this.field2957 + 1); + this.field2964 = Math.max(0, Math.min(var5, var1)); + this.field2965 = Math.max(0, Math.min(var6, var2)); + return var3 != this.field2964 || var4 != this.field2965; + } + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(IIB)Z", + garbageValue = "18" + ) + public boolean method1769(int var1, int var2) { + boolean var3 = true; + if (var1 < 0 || var1 > 2) { + var3 = false; + } + + if (var2 < 0 || var2 > 2) { + var3 = false; + } + + return var3 ? this.field2969.method2063(var1, var2) : false; + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-56" + ) + public void method1770(int var1) { + this.field2969.method2064(var1); + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-15" + ) + public void method1771(int var1) { + this.field2956 = var1; + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "312320630" + ) + public void method1772(int var1) { + this.field2969.method2062(var1); + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1049067680" + ) + public void method1773(int var1) { + this.field2969.method2060(var1); + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1504264243" + ) + public boolean method1774(int var1) { + this.field2955 = var1; + String var2 = this.field2969.method2056(); + int var3 = var2.length(); + var2 = this.method1827(var2); + if (var2.length() != var3) { + this.field2969.method2069(var2); + this.method1768(this.field2964, this.field2965); + this.method1831(); + this.method1836(); + return true; + } else { + return false; + } + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "611320825" + ) + public void method1775() { + this.field2951 = false; + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1918004716" + ) + public boolean method1776(int var1) { + if (this.method1837(var1)) { + this.method1781(); + class407 var2 = this.field2969.method2066((char)var1, this.field2959, this.field2966); + this.method1783(var2.method2094(), var2.method2094()); + this.method1831(); + this.method1836(); + } + + return true; + } + + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "125" + ) + public void method1777() { + if (!this.method1781() && this.field2959 > 0) { + int var1 = this.field2969.method2071(this.field2959 - 1); + this.method1836(); + this.method1783(var1, var1); + } + + } + + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1496895197" + ) + public void method1778() { + if (!this.method1781() && this.field2959 < this.field2969.method2055()) { + int var1 = this.field2969.method2071(this.field2959); + this.method1836(); + this.method1783(var1, var1); + } + + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "2" + ) + public void method1779() { + if (!this.method1781() && this.field2959 > 0) { + class497 var1 = this.method1829(this.field2959 - 1); + int var2 = this.field2969.method2072((Integer)var1.field4074, this.field2959); + this.method1836(); + this.method1783(var2, var2); + } + + } + + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "576864564" + ) + public void method1780() { + if (!this.method1781() && this.field2959 < this.field2969.method2055()) { + class497 var1 = this.method1829(this.field2959); + int var2 = this.field2969.method2072(this.field2959, (Integer)var1.field4073); + this.method1836(); + this.method1783(var2, var2); + } + + } + + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1514418987" + ) + boolean method1781() { + if (!this.method1826()) { + return false; + } else { + int var1 = this.field2969.method2072(this.field2958, this.field2959); + this.method1836(); + this.method1783(var1, var1); + return true; + } + } + + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "154519165" + ) + public void method1782() { + this.method1783(0, this.field2969.method2055()); + } + + @ObfuscatedName("af") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "1917418195" + ) + public boolean method1783(int var1, int var2) { + if (!this.method1815()) { + this.field2958 = var1; + this.field2959 = var2; + return false; + } else { + if (var1 > this.field2969.method2055()) { + var1 = this.field2969.method2055(); + } + + if (var2 > this.field2969.method2055()) { + var2 = this.field2969.method2055(); + } + + boolean var3 = this.field2958 != var1 || var2 != this.field2959; + this.field2958 = var1; + if (var2 != this.field2959) { + this.field2959 = var2; + this.field2954 = 0; + this.method1834(); + } + + if (var3 && this.field2967 != null) { + this.field2967.vmethod5708(); + } + + return var3; + } + } + + @ObfuscatedName("be") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "64" + ) + public void method1784(boolean var1) { + class497 var2 = this.method1830(this.field2959); + this.method1832((Integer)var2.field4074, var1); + } + + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "-114" + ) + public void method1785(boolean var1) { + class497 var2 = this.method1830(this.field2959); + this.method1832((Integer)var2.field4073, var1); + } + + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "941946265" + ) + public void method1786(boolean var1) { + this.method1832(0, var1); + } + + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "2021236230" + ) + public void method1787(boolean var1) { + this.method1832(this.field2969.method2055(), var1); + } + + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "1171552759" + ) + public void method1788(boolean var1) { + if (this.method1826() && !var1) { + this.method1832(Math.min(this.field2958, this.field2959), var1); + } else if (this.field2959 > 0) { + this.method1832(this.field2959 - 1, var1); + } + + } + + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "-81" + ) + public void method1789(boolean var1) { + if (this.method1826() && !var1) { + this.method1832(Math.max(this.field2958, this.field2959), var1); + } else if (this.field2959 < this.field2969.method2055()) { + this.method1832(this.field2959 + 1, var1); + } + + } + + @ObfuscatedName("bg") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-1880064758" + ) + public void method1790(boolean var1) { + if (this.field2959 > 0) { + class497 var2 = this.method1829(this.field2959 - 1); + this.method1832((Integer)var2.field4074, var1); + } + + } + + @ObfuscatedName("ba") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-214351650" + ) + public void method1791(boolean var1) { + if (this.field2959 < this.field2969.method2055()) { + class497 var2 = this.method1829(this.field2959 + 1); + this.method1832((Integer)var2.field4073, var1); + } + + } + + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-2098854575" + ) + public void method1792(boolean var1) { + if (this.field2959 > 0) { + this.method1832(this.field2969.method2074(this.field2959, -1), var1); + } + + } + + @ObfuscatedName("bp") + @ObfuscatedSignature( + descriptor = "(ZB)V", + garbageValue = "115" + ) + public void method1793(boolean var1) { + if (this.field2959 < this.field2969.method2055()) { + this.method1832(this.field2969.method2074(this.field2959, 1), var1); + } + + } + + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-1022985895" + ) + public void method1794(boolean var1) { + if (this.field2959 > 0) { + int var2 = this.method1833(); + this.method1832(this.field2969.method2074(this.field2959, -var2), var1); + } + + } + + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-828148265" + ) + public void method1795(boolean var1) { + if (this.field2959 < this.field2969.method2055()) { + int var2 = this.method1833(); + this.method1832(this.field2969.method2074(this.field2959, var2), var1); + } + + } + + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-618248059" + ) + public void method1796(boolean var1) { + class410 var2 = this.field2969.method2065(0, this.field2959); + class497 var3 = var2.method2137(); + this.method1832(this.field2969.method2073((Integer)var3.field4074, this.field2965), var1); + } + + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "(ZI)V", + garbageValue = "-993585503" + ) + public void method1797(boolean var1) { + class410 var2 = this.field2969.method2065(0, this.field2959); + class497 var3 = var2.method2137(); + this.method1832(this.field2969.method2073((Integer)var3.field4074, this.field2957 + this.field2965), var1); + } + + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "(IIZZI)V", + garbageValue = "470461038" + ) + public void method1798(int var1, int var2, boolean var3, boolean var4) { + boolean var5 = false; + class497 var6; + int var8; + if (!this.field2951) { + var8 = 0; + } else { + var1 += this.field2964; + var2 += this.field2965; + var6 = this.method1838(); + var8 = this.field2969.method2073(var1 - (Integer)var6.field4074, var2 - (Integer)var6.field4073); + } + + if (var3 && var4) { + this.field2953 = 1; + var6 = this.method1829(var8); + class497 var7 = this.method1829(this.field2963); + this.method1828(var7, var6); + } else if (var3) { + this.field2953 = 1; + var6 = this.method1829(var8); + this.method1783((Integer)var6.field4074, (Integer)var6.field4073); + this.field2963 = (Integer)var6.field4074; + } else if (var4) { + this.method1783(this.field2963, var8); + } else { + if (this.field2962 > 0 && var8 == this.field2963) { + if (this.field2958 == this.field2959) { + this.field2953 = 1; + var6 = this.method1829(var8); + this.method1783((Integer)var6.field4074, (Integer)var6.field4073); + } else { + this.field2953 = 2; + var6 = this.method1830(var8); + this.method1783((Integer)var6.field4074, (Integer)var6.field4073); + } + } else { + this.field2953 = 0; + this.method1783(var8, var8); + this.field2963 = var8; + } + + this.field2962 = 25; + } + + } + + @ObfuscatedName("bu") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-292946076" + ) + public void method1799(int var1, int var2) { + if (this.field2951 && this.method1810()) { + var1 += this.field2964; + var2 += this.field2965; + class497 var3 = this.method1838(); + int var4 = this.field2969.method2073(var1 - (Integer)var3.field4074, var2 - (Integer)var3.field4073); + class497 var5; + class497 var6; + switch(this.field2953) { + case 0: + this.method1783(this.field2958, var4); + break; + case 1: + var5 = this.method1829(this.field2963); + var6 = this.method1829(var4); + this.method1828(var5, var6); + break; + case 2: + var5 = this.method1830(this.field2963); + var6 = this.method1830(var4); + this.method1828(var5, var6); + } + } + + } + + @ObfuscatedName("by") + @ObfuscatedSignature( + descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", + garbageValue = "-307910360" + ) + public void method1800(Clipboard var1) { + class410 var2 = this.field2969.method2065(this.field2958, this.field2959); + if (!var2.method2133()) { + String var3 = var2.method2131(); + if (!var3.isEmpty()) { + var1.setContents(new StringSelection(var3), (ClipboardOwner)null); + } + } + + } + + @ObfuscatedName("bh") + @ObfuscatedSignature( + descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", + garbageValue = "2135903606" + ) + public void method1801(Clipboard var1) { + if (this.method1826()) { + this.method1800(var1); + this.method1781(); + } + + } + + @ObfuscatedName("bz") + @ObfuscatedSignature( + descriptor = "(Ljava/awt/datatransfer/Clipboard;I)V", + garbageValue = "1435827067" + ) + public void method1802(Clipboard var1) { + Transferable var2 = var1.getContents((Object)null); + if (var2 != null && var2.isDataFlavorSupported(DataFlavor.stringFlavor)) { + try { + String var3 = this.method1827((String)var2.getTransferData(DataFlavor.stringFlavor)); + this.method1781(); + class407 var4 = this.field2969.method2067(var3, this.field2959, this.field2966); + this.method1783(var4.method2094(), var4.method2094()); + this.method1831(); + this.method1836(); + } catch (Exception var5) { + } + } + + } + + @ObfuscatedName("bc") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-288828294" + ) + public void method1803() { + this.field2965 = Math.max(0, this.field2965 - this.field2969.method2077()); + } + + @ObfuscatedName("bs") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "34" + ) + public void method1804() { + int var1 = Math.max(0, this.field2969.method2076() - this.field2957); + this.field2965 = Math.min(var1, this.field2965 + this.field2969.method2077()); + } + + @ObfuscatedName("bx") + @ObfuscatedSignature( + descriptor = "(Lmc;I)V", + garbageValue = "-1869847655" + ) + public void method1805(class334 var1) { + this.field2968 = var1; + } + + @ObfuscatedName("bb") + @ObfuscatedSignature( + descriptor = "(Lmc;I)V", + garbageValue = "-1051047872" + ) + public void method1806(class334 var1) { + this.field2967 = var1; + } + + @ObfuscatedName("bk") + @ObfuscatedSignature( + descriptor = "(I)Lpv;", + garbageValue = "2075539041" + ) + public class406 method1807() { + return this.field2969; + } + + @ObfuscatedName("br") + @ObfuscatedSignature( + descriptor = "(I)Lpv;", + garbageValue = "1030146297" + ) + public class406 method1808() { + return this.field2970; + } + + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "(B)Lpd;", + garbageValue = "126" + ) + public class410 method1809() { + return this.field2969.method2065(this.field2958, this.field2959); + } + + @ObfuscatedName("cf") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "2065405253" + ) + public boolean method1810() { + return this.field2950; + } + + @ObfuscatedName("cg") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "32" + ) + public boolean method1811() { + return this.field2952; + } + + @ObfuscatedName("cv") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "1" + ) + public boolean method1812() { + return this.method1810() && this.field2954 % 60 < 30; + } + + @ObfuscatedName("cx") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "0" + ) + public int method1813() { + return this.field2959; + } + + @ObfuscatedName("cp") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-93" + ) + public int method1814() { + return this.field2958; + } + + @ObfuscatedName("ce") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-1339355429" + ) + public boolean method1815() { + return this.field2951; + } + + @ObfuscatedName("ci") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-914270657" + ) + public int method1816() { + return this.field2964; + } + + @ObfuscatedName("ct") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-59337247" + ) + public int method1817() { + return this.field2965; + } + + @ObfuscatedName("cw") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "183448923" + ) + public int method1818() { + return this.field2969.method2080(); + } + + @ObfuscatedName("cq") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1901590514" + ) + public int method1819() { + return this.field2969.method2081(); + } + + @ObfuscatedName("cl") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "433958524" + ) + public int method1820() { + return this.field2960; + } + + @ObfuscatedName("cs") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "27" + ) + public int method1821() { + return this.field2956; + } + + @ObfuscatedName("co") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1220088206" + ) + public int method1822() { + return this.field2969.method2082(); + } + + @ObfuscatedName("cm") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "8" + ) + public int method1823() { + return this.field2955; + } + + @ObfuscatedName("cn") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1771864931" + ) + public int method1824() { + return this.field2969.method2083(); + } + + @ObfuscatedName("cr") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "48" + ) + public boolean method1825() { + return this.method1819() > 1; + } + + @ObfuscatedName("cj") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-760216869" + ) + boolean method1826() { + return this.field2959 != this.field2958; + } + + @ObfuscatedName("ca") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)Ljava/lang/String;", + garbageValue = "-79" + ) + String method1827(String var1) { + StringBuilder var2 = new StringBuilder(var1.length()); + + for (int var3 = 0; var3 < var1.length(); ++var3) { + char var4 = var1.charAt(var3); + if (this.method1837(var4)) { + var2.append(var4); + } + } + + return var2.toString(); + } + + @ObfuscatedName("cc") + @ObfuscatedSignature( + descriptor = "(Lti;Lti;I)V", + garbageValue = "-1148711859" + ) + void method1828(class497 var1, class497 var2) { + if ((Integer)var2.field4074 < (Integer)var1.field4074) { + this.method1783((Integer)var1.field4073, (Integer)var2.field4074); + } else { + this.method1783((Integer)var1.field4074, (Integer)var2.field4073); + } + + } + + @ObfuscatedName("cu") + @ObfuscatedSignature( + descriptor = "(II)Lti;", + garbageValue = "377951962" + ) + class497 method1829(int var1) { + int var2 = this.field2969.method2055(); + int var3 = 0; + int var4 = var2; + + int var5; + for (var5 = var1; var5 > 0; --var5) { + if (this.method1835(this.field2969.method2051(var5 - 1).field3716)) { + var3 = var5; + break; + } + } + + for (var5 = var1; var5 < var2; ++var5) { + if (this.method1835(this.field2969.method2051(var5).field3716)) { + var4 = var5; + break; + } + } + + return new class497(var3, var4); + } + + @ObfuscatedName("ch") + @ObfuscatedSignature( + descriptor = "(II)Lti;", + garbageValue = "-1182045499" + ) + class497 method1830(int var1) { + int var2 = this.field2969.method2055(); + int var3 = 0; + int var4 = var2; + + int var5; + for (var5 = var1; var5 > 0; --var5) { + if (this.field2969.method2051(var5 - 1).field3716 == '\n') { + var3 = var5; + break; + } + } + + for (var5 = var1; var5 < var2; ++var5) { + if (this.field2969.method2051(var5).field3716 == '\n') { + var4 = var5; + break; + } + } + + return new class497(var3, var4); + } + + @ObfuscatedName("cb") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1603465990" + ) + boolean method1831() { + if (!this.method1815()) { + return false; + } else { + boolean var1 = false; + if (this.field2969.method2055() > this.field2960) { + this.field2969.method2072(this.field2960, this.field2969.method2055()); + var1 = true; + } + + int var2 = this.method1819(); + int var3; + if (this.field2969.method2078() > var2) { + var3 = this.field2969.method2074(0, var2) - 1; + this.field2969.method2072(var3, this.field2969.method2055()); + var1 = true; + } + + if (var1) { + var3 = this.field2959; + int var4 = this.field2958; + int var5 = this.field2969.method2055(); + if (this.field2959 > var5) { + var3 = var5; + } + + if (this.field2958 > var5) { + var4 = var5; + } + + this.method1783(var4, var3); + } + + return var1; + } + } + + @ObfuscatedName("cz") + @ObfuscatedSignature( + descriptor = "(IZI)V", + garbageValue = "2086601547" + ) + void method1832(int var1, boolean var2) { + if (var2) { + this.method1783(this.field2958, var1); + } else { + this.method1783(var1, var1); + } + + } + + @ObfuscatedName("cy") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-1" + ) + int method1833() { + return this.field2957 / this.field2969.method2077(); + } + + @ObfuscatedName("ck") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1786950999" + ) + void method1834() { + class410 var1 = this.field2969.method2065(0, this.field2959); + class497 var2 = var1.method2137(); + int var3 = this.field2969.method2077(); + int var4 = (Integer)var2.field4074 - 10; + int var5 = var4 + 20; + int var6 = (Integer)var2.field4073 - 3; + int var7 = var3 + var6 + 6; + int var8 = this.field2964; + int var9 = var8 + this.field2961; + int var10 = this.field2965; + int var11 = var10 + this.field2957; + int var12 = this.field2964; + int var13 = this.field2965; + if (var4 < var8) { + var12 = var4; + } else if (var5 > var9) { + var12 = var5 - this.field2961; + } + + if (var6 < var10) { + var13 = var6; + } else if (var7 > var11) { + var13 = var7 - this.field2957; + } + + this.method1768(var12, var13); + } + + @ObfuscatedName("cd") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "1" + ) + boolean method1835(int var1) { + return var1 == 32 || var1 == 10 || var1 == 9; + } + + @ObfuscatedName("dt") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "336" + ) + void method1836() { + if (this.field2968 != null) { + this.field2968.vmethod5708(); + } + + } + + @ObfuscatedName("di") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1431244165" + ) + boolean method1837(int var1) { + switch(this.field2955) { + case 1: + return KeyHandler.isAlphaNumeric((char)var1); + case 2: + return class10.isCharAlphabetic((char)var1); + case 3: + return Player.isDigit((char)var1); + case 4: + char var2 = (char)var1; + if (Player.isDigit(var2)) { + return true; + } else { + if (var2 != 'k' && var2 != 'K' && var2 != 'm' && var2 != 'M' && var2 != 'b' && var2 != 'B') { + return false; + } + + return true; + } + default: + return true; + } + } + + @ObfuscatedName("dk") + @ObfuscatedSignature( + descriptor = "(I)Lti;", + garbageValue = "-306061048" + ) + class497 method1838() { + int var1 = this.field2969.method2084(this.field2961); + int var2 = this.field2969.method2085(this.field2957); + return new class497(var1, var2); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class342.java b/osrs/src/main/java/class342.java index bc1f2f67b..783d3ab1f 100644 --- a/osrs/src/main/java/class342.java +++ b/osrs/src/main/java/class342.java @@ -1,51 +1,26 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nd") -public class class342 { - @ObfuscatedName("gk") - static int field3146; - - @ObfuscatedName("lo") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "1771943161" - ) - static void method1867(int var0, int var1) { - int var2 = class59.fontBold12.stringWidth("Choose Option"); - - int var3; - int var4; - for (var3 = 0; var3 < Client.menuOptionsCount; ++var3) { - var4 = class59.fontBold12.stringWidth(class181.method928(var3)); - if (var4 > var2) { - var2 = var4; - } - } - - var2 += 8; - var3 = Client.menuOptionsCount * 15 + 22; - var4 = var0 - var2 / 2; - if (var4 + var2 > class113.canvasWidth) { - var4 = class113.canvasWidth - var2; - } +import java.util.concurrent.ScheduledExecutorService; - if (var4 < 0) { - var4 = 0; - } - - int var5 = var1; - if (var1 + var3 > class177.canvasHeight) { - var5 = class177.canvasHeight - var3; - } - - if (var5 < 0) { - var5 = 0; - } - - class12.menuX = var4; - class419.menuY = var5; - class316.menuWidth = var2; - Occluder.menuHeight = Client.menuOptionsCount * 15 + 22; +@ObfuscatedName("no") +public class class342 { + @ObfuscatedName("at") + public static final short[] field2973; + @ObfuscatedName("ah") + public static final short[][] field2974; + @ObfuscatedName("ar") + public static final short[] field2972; + @ObfuscatedName("ao") + public static final short[][] field2975; + @ObfuscatedName("ac") + @Export("soundSystemExecutor") + public static ScheduledExecutorService soundSystemExecutor; + + static { + field2973 = new short[]{6798, 8741, 25238, 4626, 4550}; + field2974 = new short[][]{{6798, 107, 10283, 16, 4797, 7744, 5799, 4634, -31839, 22433, 2983, -11343, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010, -22122, 937, 8130, -13422, 30385}, {8741, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 25239, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {25238, 8742, 12, -1506, -22374, 7735, 8404, 1701, -27106, 24094, 10153, -8915, 4783, 1341, 16578, -30533, 8, 5281, 10438, 3650, -27322, -21845, 200, 571, 908, 21830, 28946, -15701, -14010}, {4626, 11146, 6439, 12, 4758, 10270}, {4550, 4537, 5681, 5673, 5790, 6806, 8076, 4574, 17050, 0, 127, -31821, -17991}}; + field2972 = new short[]{-10304, 9104, -1, -1, -1}; + field2975 = new short[][]{{6554, 115, 10304, 28, 5702, 7756, 5681, 4510, -31835, 22437, 2859, -11339, 16, 5157, 10446, 3658, -27314, -21965, 472, 580, 784, 21966, 28950, -15697, -14002, -22116, 945, 8144, -13414, 30389}, {9104, 10275, 7595, 3610, 7975, 8526, 918, -26734, 24466, 10145, -6882, 5027, 1457, 16565, -30545, 25486, 24, 5392, 10429, 3673, -27335, -21957, 192, 687, 412, 21821, 28835, -15460, -14019}, new short[0], new short[0], new short[0]}; } } \ No newline at end of file diff --git a/osrs/src/main/java/class343.java b/osrs/src/main/java/class343.java deleted file mode 100644 index 17bf235e4..000000000 --- a/osrs/src/main/java/class343.java +++ /dev/null @@ -1,16 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ng") -public final class class343 { - @ObfuscatedName("gm") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field3148; - @ObfuscatedName("ou") - @ObfuscatedSignature( - descriptor = "Lmi;" - ) - static Widget field3147; -} \ No newline at end of file diff --git a/osrs/src/main/java/class344.java b/osrs/src/main/java/class344.java index 59df3bd4d..77d332952 100644 --- a/osrs/src/main/java/class344.java +++ b/osrs/src/main/java/class344.java @@ -2,28 +2,73 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nt") +@ObfuscatedName("ng") public class class344 { - @ObfuscatedName("ui") - @Export("cameraMoveToSpeed") - static int cameraMoveToSpeed; + @ObfuscatedName("ay") + static int[][][] field3130; + @ObfuscatedName("fh") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + @Export("archive2") + static Archive archive2; + @ObfuscatedName("th") + @Export("ClanChat_inClanChat") + static boolean ClanChat_inClanChat; + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([BILjava/lang/CharSequence;I)I", + garbageValue = "-1554381486" + ) + public static int method1877(byte[] var0, int var1, CharSequence var2) { + int var3 = var2.length(); + int var4 = var1; + + for (int var5 = 0; var5 < var3; ++var5) { + char var6 = var2.charAt(var5); + if (var6 <= 127) { + var0[var4++] = (byte)var6; + } else if (var6 <= 2047) { + var0[var4++] = (byte)(192 | var6 >> 6); + var0[var4++] = (byte)(128 | var6 & '?'); + } else { + var0[var4++] = (byte)(224 | var6 >> '\f'); + var0[var4++] = (byte)(128 | var6 >> 6 & 63); + var0[var4++] = (byte)(128 | var6 & '?'); + } + } - static { - Math.sqrt(8192.0D); + return var4 - var1; } - @ObfuscatedName("oi") + @ObfuscatedName("bc") @ObfuscatedSignature( - descriptor = "(II)Ltx;", - garbageValue = "2122507406" + descriptor = "(ILdt;ZI)I", + garbageValue = "2094869525" ) - static class506 method1868(int var0) { - class506 var1 = (class506)Client.Widget_cachedModels.get((long)var0); - if (var1 == null) { - var1 = new class506(class343.field3148, UserComparator3.method682(var0), NewShit.method979(var0)); - Client.Widget_cachedModels.put(var1, (long)var0); + static int method1878(int var0, Script var1, boolean var2) { + if (var0 == 6754) { + int var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + NPCComposition var4 = VerticalAlignment.getNpcDefinition(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4 != null ? var4.name : ""; + return 1; + } else { + NPCComposition var5; + if (var0 == 6764) { + DbTableType.Interpreter_intStackSize -= 2; + var5 = VerticalAlignment.getNpcDefinition(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + int var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5.method949(var6); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5.method951(var6); + return 1; + } else if (var0 == 6765) { + var5 = VerticalAlignment.getNpcDefinition(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5 != null ? var5.combatLevel : 0; + return 1; + } else { + return 2; + } } - - return var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class345.java b/osrs/src/main/java/class345.java deleted file mode 100644 index c62cfa4bf..000000000 --- a/osrs/src/main/java/class345.java +++ /dev/null @@ -1,30 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("nv") -public class class345 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnv;" - ) - static final class345 field3151; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnv;" - ) - static final class345 field3150; - @ObfuscatedName("ao") - final int field3152; - @ObfuscatedName("at") - final int field3153; - - static { - field3151 = new class345(51, 27, 800, 0, 16, 16); - field3150 = new class345(25, 28, 800, 656, 40, 40); - } - - class345(int var1, int var2, int var3, int var4, int var5, int var6) { - this.field3152 = var5; - this.field3153 = var6; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class348.java b/osrs/src/main/java/class348.java index 3885f7fe6..0948596ce 100644 --- a/osrs/src/main/java/class348.java +++ b/osrs/src/main/java/class348.java @@ -2,128 +2,130 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nz") +@ObfuscatedName("nw") public class class348 { - @ObfuscatedName("au") + @ObfuscatedName("ar") + @Export("KitDefinition_fileCount") + public static int KitDefinition_fileCount; + @ObfuscatedName("pu") + @Export("selectedSpellWidget") + static int selectedSpellWidget; + + @ObfuscatedName("jg") @ObfuscatedSignature( - descriptor = "(CB)B", - garbageValue = "73" + descriptor = "(IIIIZB)V", + garbageValue = "-10" ) - @Export("charToByteCp1252") - public static byte charToByteCp1252(char var0) { - byte var1; - if ((var0 <= 0 || var0 >= 128) && (var0 < 160 || var0 > 255)) { - if (var0 == 8364) { - var1 = -128; - } else if (var0 == 8218) { - var1 = -126; - } else if (var0 == 402) { - var1 = -125; - } else if (var0 == 8222) { - var1 = -124; - } else if (var0 == 8230) { - var1 = -123; - } else if (var0 == 8224) { - var1 = -122; - } else if (var0 == 8225) { - var1 = -121; - } else if (var0 == 710) { - var1 = -120; - } else if (var0 == 8240) { - var1 = -119; - } else if (var0 == 352) { - var1 = -118; - } else if (var0 == 8249) { - var1 = -117; - } else if (var0 == 338) { - var1 = -116; - } else if (var0 == 381) { - var1 = -114; - } else if (var0 == 8216) { - var1 = -111; - } else if (var0 == 8217) { - var1 = -110; - } else if (var0 == 8220) { - var1 = -109; - } else if (var0 == 8221) { - var1 = -108; - } else if (var0 == 8226) { - var1 = -107; - } else if (var0 == 8211) { - var1 = -106; - } else if (var0 == 8212) { - var1 = -105; - } else if (var0 == 732) { - var1 = -104; - } else if (var0 == 8482) { - var1 = -103; - } else if (var0 == 353) { - var1 = -102; - } else if (var0 == 8250) { - var1 = -101; - } else if (var0 == 339) { - var1 = -100; - } else if (var0 == 382) { - var1 = -98; - } else if (var0 == 376) { - var1 = -97; - } else { - var1 = 63; - } + @Export("setViewportShape") + static final void setViewportShape(int var0, int var1, int var2, int var3, boolean var4) { + if (var2 < 1) { + var2 = 1; + } + + if (var3 < 1) { + var3 = 1; + } + + int var5 = var3 - 334; + int var6; + if (var5 < 0) { + var6 = Client.field640; + } else if (var5 >= 100) { + var6 = Client.field636; } else { - var1 = (byte)var0; + var6 = (Client.field636 - Client.field640) * var5 / 100 + Client.field640; + } + + int var7 = var3 * var6 * 512 / (var2 * 334); + int var8; + int var9; + short var10; + if (var7 < Client.field638) { + var10 = Client.field638; + var6 = var10 * var2 * 334 / (var3 * 512); + if (var6 > Client.field637) { + var6 = Client.field637; + var8 = var3 * var6 * 512 / (var10 * 334); + var9 = (var2 - var8) / 2; + if (var4) { + Rasterizer2D.Rasterizer2D_resetClip(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var9, var3, -16777216); + Rasterizer2D.Rasterizer2D_fillRectangle(var0 + var2 - var9, var1, var9, var3, -16777216); + } + + var0 += var9; + var2 -= var9 * 2; + } + } else if (var7 > Client.field634) { + var10 = Client.field634; + var6 = var10 * var2 * 334 / (var3 * 512); + if (var6 < Client.field639) { + var6 = Client.field639; + var8 = var10 * var2 * 334 / (var6 * 512); + var9 = (var3 - var8) / 2; + if (var4) { + Rasterizer2D.Rasterizer2D_resetClip(); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var9, -16777216); + Rasterizer2D.Rasterizer2D_fillRectangle(var0, var3 + var1 - var9, var2, var9, -16777216); + } + + var1 += var9; + var3 -= var9 * 2; + } + } + + Client.viewportZoom = var3 * var6 / 334; + if (var2 != Client.viewportWidth || var3 != Client.viewportHeight) { + class102.method603(var2, var3); } - return var1; + Client.viewportOffsetX = var0; + Client.viewportOffsetY = var1; + Client.viewportWidth = var2; + Client.viewportHeight = var3; } - @ObfuscatedName("ih") + @ObfuscatedName("mz") @ObfuscatedSignature( - descriptor = "(Lmi;III)V", - garbageValue = "1790851766" + descriptor = "(Lnn;I)V", + garbageValue = "1443967648" ) - @Export("checkIfMinimapClicked") - static final void checkIfMinimapClicked(Widget var0, int var1, int var2) { - if (Client.minimapState == 0 || Client.minimapState == 3) { - if (!Client.isMenuOpen && (MouseHandler.MouseHandler_lastButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_lastButton == 4)) { - SpriteMask var3 = var0.getSpriteMask(true); - if (var3 == null) { - return; - } + static final void method1886(Widget var0) { + int var1 = var0.contentType; + if (var1 == 324) { + if (Client.field546 == -1) { + Client.field546 = var0.spriteId2; + Client.field547 = var0.spriteId; + } - int var4 = MouseHandler.MouseHandler_lastPressedX - var1; - int var5 = MouseHandler.MouseHandler_lastPressedY - var2; - if (var3.contains(var4, var5)) { - var4 -= var3.width / 2; - var5 -= var3.height / 2; - int var6 = Client.camAngleY & 2047; - int var7 = Rasterizer3D.Rasterizer3D_sine[var6]; - int var8 = Rasterizer3D.Rasterizer3D_cosine[var6]; - int var9 = var8 * var4 + var7 * var5 >> 11; - int var10 = var8 * var5 - var7 * var4 >> 11; - int var11 = var9 + VarbitComposition.localPlayer.x >> 7; - int var12 = VarbitComposition.localPlayer.y - var10 >> 7; - PacketBufferNode var13 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.MOVE_MINIMAPCLICK, Client.packetWriter.isaacCipher); - var13.packetBuffer.writeByte(18); - var13.packetBuffer.writeShortAddLE(var11 + UrlRequester.baseX); - var13.packetBuffer.writeShortAdd(var12 + class47.baseY); - var13.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? (Client.keyHandlerInstance.getKeyPressed(81) ? 2 : 1) : 0); - var13.packetBuffer.writeByte(var4); - var13.packetBuffer.writeByte(var5); - var13.packetBuffer.writeShort(Client.camAngleY); - var13.packetBuffer.writeByte(57); - var13.packetBuffer.writeByte(0); - var13.packetBuffer.writeByte(0); - var13.packetBuffer.writeByte(89); - var13.packetBuffer.writeShort(VarbitComposition.localPlayer.x); - var13.packetBuffer.writeShort(VarbitComposition.localPlayer.y); - var13.packetBuffer.writeByte(63); - Client.packetWriter.addNode(var13); - Client.destinationX = var11; - Client.destinationY = var12; - } + if (Client.playerAppearance.field2947 == 1) { + var0.spriteId2 = Client.field546; + } else { + var0.spriteId2 = Client.field547; + } + + } else if (var1 == 325) { + if (Client.field546 == -1) { + Client.field546 = var0.spriteId2; + Client.field547 = var0.spriteId; + } + + if (Client.playerAppearance.field2947 == 1) { + var0.spriteId2 = Client.field547; + } else { + var0.spriteId2 = Client.field546; } + } else if (var1 == 327) { + var0.modelAngleX = 150; + var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + var0.modelType = 5; + var0.modelId = 0; + } else if (var1 == 328) { + var0.modelAngleX = 150; + var0.modelAngleY = (int)(Math.sin((double)Client.cycle / 40.0D) * 256.0D) & 2047; + var0.modelType = 5; + var0.modelId = 1; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class349.java b/osrs/src/main/java/class349.java deleted file mode 100644 index 174afd1f5..000000000 --- a/osrs/src/main/java/class349.java +++ /dev/null @@ -1,100 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ne") -public class class349 { - @ObfuscatedName("ku") - @ObfuscatedSignature( - descriptor = "(ZLto;B)V", - garbageValue = "-101" - ) - static final void method1874(boolean var0, PacketBuffer var1) { - while (true) { - byte var2 = 16; - int var3 = 1 << var2; - if (var1.bitsRemaining(Client.packetWriter.serverPacketLength) >= var2 + 12) { - int var4 = var1.readBits(var2); - if (var4 != var3 - 1) { - boolean var5 = false; - if (Client.npcs[var4] == null) { - Client.npcs[var4] = new NPC(); - var5 = true; - } - - NPC var6 = Client.npcs[var4]; - Client.npcIndices[++Client.npcCount - 1] = var4; - var6.npcCycle = Client.cycle; - int var8; - if (var0) { - var8 = var1.readBits(8); - if (var8 > 127) { - var8 -= 256; - } - } else { - var8 = var1.readBits(5); - if (var8 > 15) { - var8 -= 32; - } - } - - boolean var10 = var1.readBits(1) == 1; - if (var10) { - var1.readBits(32); - } - - int var7 = var1.readBits(1); - int var11 = Client.field561[var1.readBits(3)]; - if (var5) { - var6.orientation = var6.rotation = var11; - } - - var6.definition = class90.getNpcDefinition(var1.readBits(14)); - int var12 = var1.readBits(1); - if (var12 == 1) { - Client.field552[++Client.field451 - 1] = var4; - } - - int var9; - if (var0) { - var9 = var1.readBits(8); - if (var9 > 127) { - var9 -= 256; - } - } else { - var9 = var1.readBits(5); - if (var9 > 15) { - var9 -= 32; - } - } - - ItemLayer.method1152(var6); - if (var6.field1017 == 0) { - var6.rotation = 0; - } - - var6.method583(VarbitComposition.localPlayer.pathX[0] + var8, VarbitComposition.localPlayer.pathY[0] + var9, var7 == 1); - continue; - } - } - - var1.exportIndex(); - return; - } - } - - @ObfuscatedName("kz") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "87449786" - ) - @Export("addCancelMenuEntry") - static void addCancelMenuEntry() { - Frames.method1297(); - Client.menuActions[0] = "Cancel"; - Client.menuTargets[0] = ""; - Client.menuOpcodes[0] = 1006; - Client.menuShiftClick[0] = false; - Client.menuOptionsCount = 1; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class350.java b/osrs/src/main/java/class350.java index b2fbdf2e8..1a85d5a39 100644 --- a/osrs/src/main/java/class350.java +++ b/osrs/src/main/java/class350.java @@ -1,32 +1,375 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ni") +@ObfuscatedName("ny") public class class350 { - static { - int var0 = 0; - int var1 = 0; - class345[] var2 = class466.method2345(); - - for (int var3 = 0; var3 < var2.length; ++var3) { - class345 var4 = var2[var3]; - if (var4.field3152 > var0) { - var0 = var4.field3152; - } + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lnh;" + ) + @Export("huffman") + static Huffman huffman; - if (var4.field3153 > var1) { - var1 = var4.field3153; + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "-857536144" + ) + static int method1890(int var0, Script var1, boolean var2) { + if (var0 == 3600) { + if (class12.friendSystem.friendListStatus == 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -2; + } else if (class12.friendSystem.friendListStatus == 1) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class12.friendSystem.friendsList.getSize(); } - } - } + return 1; + } else { + int var3; + if (var0 == 3601) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class12.friendSystem.method408() && var3 >= 0 && var3 < class12.friendSystem.friendsList.getSize()) { + Friend var8 = (Friend)class12.friendSystem.friendsList.get(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.getName(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var8.getPreviousName(); + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "-1513335843" - ) - public static int method1876(int var0, int var1) { - return (int)Math.round(Math.atan2((double)var0, (double)var1) * 2607.5945876176133D) & 16383; + return 1; + } else if (var0 == 3602) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class12.friendSystem.method408() && var3 >= 0 && var3 < class12.friendSystem.friendsList.getSize()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((Buddy)class12.friendSystem.friendsList.get(var3)).world; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3603) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class12.friendSystem.method408() && var3 >= 0 && var3 < class12.friendSystem.friendsList.getSize()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((Buddy)class12.friendSystem.friendsList.get(var3)).rank; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else { + String var5; + if (var0 == 3604) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + int var9 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class12.setFriendsRank(var5, var9); + return 1; + } else if (var0 == 3605) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class12.friendSystem.addFriend(var5); + return 1; + } else if (var0 == 3606) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class12.friendSystem.removeFriend(var5); + return 1; + } else if (var0 == 3607) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class12.friendSystem.addIgnore(var5); + return 1; + } else if (var0 == 3608) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + boolean var6 = true; + class12.friendSystem.removeIgnore(var5, var6); + return 1; + } else if (var0 == 3609) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var5 = UserComparator7.method675(var5); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class12.friendSystem.isFriended(new Username(var5, class89.loginType), false) ? 1 : 0; + return 1; + } else if (var0 == 3611) { + if (class20.friendsChat != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class20.friendsChat.name; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 3612) { + if (class20.friendsChat != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class20.friendsChat.getSize(); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3613) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize()) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class20.friendsChat.get(var3).getUsername().getName(); + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 3614) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((Buddy)class20.friendsChat.get(var3)).getWorld(); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3615) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ((Buddy)class20.friendsChat.get(var3)).rank; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3616) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class20.friendsChat != null ? class20.friendsChat.minKick : 0; + return 1; + } else if (var0 == 3617) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + InvDefinition.clanKickUser(var5); + return 1; + } else if (var0 == 3618) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class20.friendsChat != null ? class20.friendsChat.rank : 0; + return 1; + } else if (var0 == 3619) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class138.Clan_joinChat(var5); + return 1; + } else if (var0 == 3620) { + WorldMapSectionType.Clan_leaveChat(); + return 1; + } else if (var0 == 3621) { + if (!class12.friendSystem.method408()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class12.friendSystem.ignoreList.getSize(); + } + + return 1; + } else if (var0 == 3622) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class12.friendSystem.method408() && var3 >= 0 && var3 < class12.friendSystem.ignoreList.getSize()) { + Ignored var4 = (Ignored)class12.friendSystem.ignoreList.get(var3); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.getName(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var4.getPreviousName(); + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 3623) { + var5 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var5 = UserComparator7.method675(var5); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class12.friendSystem.isIgnored(new Username(var5, class89.loginType)) ? 1 : 0; + return 1; + } else if (var0 == 3624) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize() && class20.friendsChat.get(var3).getUsername().equals(class229.localPlayer.username)) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3625) { + if (class20.friendsChat != null && class20.friendsChat.owner != null) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = class20.friendsChat.owner; + } else { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } + + return 1; + } else if (var0 == 3626) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize() && ((ClanMate)class20.friendsChat.get(var3)).isFriend()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 != 3627) { + if (var0 == 3628) { + class12.friendSystem.friendsList.removeComparator(); + return 1; + } else { + boolean var7; + if (var0 == 3629) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator1(var7)); + return 1; + } else if (var0 == 3630) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator2(var7)); + return 1; + } else if (var0 == 3631) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator3(var7)); + return 1; + } else if (var0 == 3632) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator4(var7)); + return 1; + } else if (var0 == 3633) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator5(var7)); + return 1; + } else if (var0 == 3634) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator6(var7)); + return 1; + } else if (var0 == 3635) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator7(var7)); + return 1; + } else if (var0 == 3636) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator8(var7)); + return 1; + } else if (var0 == 3637) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator9(var7)); + return 1; + } else if (var0 == 3638) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new UserComparator10(var7)); + return 1; + } else if (var0 == 3639) { + class12.friendSystem.friendsList.sort(); + return 1; + } else if (var0 == 3640) { + class12.friendSystem.ignoreList.removeComparator(); + return 1; + } else if (var0 == 3641) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.ignoreList.addComparator(new UserComparator1(var7)); + return 1; + } else if (var0 == 3642) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.ignoreList.addComparator(new UserComparator2(var7)); + return 1; + } else if (var0 == 3643) { + class12.friendSystem.ignoreList.sort(); + return 1; + } else if (var0 == 3644) { + if (class20.friendsChat != null) { + class20.friendsChat.removeComparator(); + } + + return 1; + } else if (var0 == 3645) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator1(var7)); + } + + return 1; + } else if (var0 == 3646) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator2(var7)); + } + + return 1; + } else if (var0 == 3647) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator3(var7)); + } + + return 1; + } else if (var0 == 3648) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator4(var7)); + } + + return 1; + } else if (var0 == 3649) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator5(var7)); + } + + return 1; + } else if (var0 == 3650) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator6(var7)); + } + + return 1; + } else if (var0 == 3651) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator7(var7)); + } + + return 1; + } else if (var0 == 3652) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator8(var7)); + } + + return 1; + } else if (var0 == 3653) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator9(var7)); + } + + return 1; + } else if (var0 == 3654) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new UserComparator10(var7)); + } + + return 1; + } else if (var0 == 3655) { + if (class20.friendsChat != null) { + class20.friendsChat.sort(); + } + + return 1; + } else if (var0 == 3656) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class12.friendSystem.friendsList.addComparator(new BuddyRankComparator(var7)); + return 1; + } else if (var0 == 3657) { + var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (class20.friendsChat != null) { + class20.friendsChat.addComparator(new BuddyRankComparator(var7)); + } + + return 1; + } else { + return 2; + } + } + } else { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (class20.friendsChat != null && var3 < class20.friendsChat.getSize() && ((ClanMate)class20.friendsChat.get(var3)).isIgnored()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class351.java b/osrs/src/main/java/class351.java new file mode 100644 index 000000000..343a69c52 --- /dev/null +++ b/osrs/src/main/java/class351.java @@ -0,0 +1,72 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("nu") +public enum class351 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lnu;" + ) + field3148(0), + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lnu;" + ) + field3146(1), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lnu;" + ) + field3147(2), + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lnu;" + ) + field3144(3), + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lnu;" + ) + field3145(4); + + @ObfuscatedName("au") + final int field3149; + + class351(int var3) { + this.field3149 = var3; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field3149; + } + + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "(Lhs;B)Z", + garbageValue = "113" + ) + static boolean method1892(ObjectComposition var0) { + if (var0.transforms != null) { + int[] var1 = var0.transforms; + + for (int var2 = 0; var2 < var1.length; ++var2) { + int var3 = var1[var2]; + ObjectComposition var4 = WorldMapSection2.getObjectDefinition(var3); + if (var4.mapIconId != -1) { + return true; + } + } + } else if (var0.mapIconId != -1) { + return true; + } + + return false; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class352.java b/osrs/src/main/java/class352.java deleted file mode 100644 index 47174002e..000000000 --- a/osrs/src/main/java/class352.java +++ /dev/null @@ -1,276 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("np") -public enum class352 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnp;" - ) - field3482(-1), - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnp;" - ) - field3479(0), - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lnp;" - ) - field3480(1), - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lnp;" - ) - field3481(2); - - @ObfuscatedName("ac") - final int field3483; - - class352(int var3) { - this.field3483 = var3; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field3483; - } - - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "1" - ) - static int method1880(int var0, Script var1, boolean var2) { - int var3; - int var4; - if (var0 == 4000) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 + var4; - return 1; - } else if (var0 == 4001) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 - var4; - return 1; - } else if (var0 == 4002) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 * var4; - return 1; - } else if (var0 == 4003) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 / var4; - return 1; - } else if (var0 == 4004) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)var3); - return 1; - } else if (var0 == 4005) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)(var3 + 1)); - return 1; - } else { - int var5; - int var6; - int var7; - if (var0 == 4006) { - SoundCache.Interpreter_intStackSize -= 5; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 4]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 + (var7 - var5) * (var4 - var3) / (var6 - var5); - return 1; - } else if (var0 == 4007) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 + var4 * var3 / 100; - return 1; - } else if (var0 == 4008) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 | 1 << var4; - return 1; - } else if (var0 == 4009) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 & -1 - (1 << var4); - return 1; - } else if (var0 == 4010) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (var3 & 1 << var4) != 0 ? 1 : 0; - return 1; - } else if (var0 == 4011) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 % var4; - return 1; - } else if (var0 == 4012) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (var3 == 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, (double)var4); - } - - return 1; - } else if (var0 == 4013) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (var3 == 0) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else { - switch(var4) { - case 0: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Integer.MAX_VALUE; - break; - case 1: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - break; - case 2: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)Math.sqrt((double)var3); - break; - case 3: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)Math.cbrt((double)var3); - break; - case 4: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)Math.sqrt(Math.sqrt((double)var3)); - break; - default: - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, 1.0D / (double)var4); - } - - return 1; - } - } else if (var0 == 4014) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 & var4; - return 1; - } else if (var0 == 4015) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 | var4; - return 1; - } else if (var0 == 4016) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 < var4 ? var3 : var4; - return 1; - } else if (var0 == 4017) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 > var4 ? var3 : var4; - return 1; - } else if (var0 == 4018) { - SoundCache.Interpreter_intStackSize -= 3; - long var9 = (long)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - long var11 = (long)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - long var13 = (long)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (int)(var9 * var13 / var11); - return 1; - } else if (var0 == 4025) { - var3 = PacketBufferNode.method1609(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - return 1; - } else if (var0 == 4026) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 ^ 1 << var4; - return 1; - } else if (var0 == 4027) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Widget.method1812(var3, var4, var5); - return 1; - } else if (var0 == 4028) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = InvDefinition.method940(var3, var4, var5); - return 1; - } else if (var0 == 4029) { - SoundCache.Interpreter_intStackSize -= 3; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = 31 - var5; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 << var6 >>> var6 + var4; - return 1; - } else if (var0 == 4030) { - SoundCache.Interpreter_intStackSize -= 4; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var3 = InvDefinition.method940(var3, var5, var6); - var7 = Projectile.method430(var6 - var5 + 1); - if (var4 > var7) { - var4 = var7; - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 | var4 << var5; - return 1; - } else if (var0 == 4032) { - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = Frames.method1292(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]); - return 1; - } else if (var0 == 4033) { - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = SongTask.method2137(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]); - return 1; - } else if (var0 == 4034) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = class350.method1876(var3, var4); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var5; - return 1; - } else if (var0 == 4035) { - Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1] = Math.abs(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize - 1]); - return 1; - } else if (var0 == 4036) { - String var15 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var4 = -1; - if (class218.isNumber(var15)) { - var4 = HealthBarUpdate.method524(var15); - } - - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var4; - return 1; - } else { - return 2; - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class354.java b/osrs/src/main/java/class354.java new file mode 100644 index 000000000..c0db693be --- /dev/null +++ b/osrs/src/main/java/class354.java @@ -0,0 +1,28 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("nf") +public class class354 { + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "1854178059" + ) + static int method1896(int var0) { + return (int)Math.pow(2.0D, (double)(7.0F + (float)var0 / 256.0F)); + } + + @ObfuscatedName("oc") + @ObfuscatedSignature( + descriptor = "(Luj;I)V", + garbageValue = "-390178192" + ) + static void method1897(Buffer var0) { + if (Client.randomDatData != null) { + var0.writeBytes(Client.randomDatData, 0, Client.randomDatData.length); + } else { + byte[] var1 = class139.method748(); + var0.writeBytes(var1, 0, var1.length); + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class355.java b/osrs/src/main/java/class355.java new file mode 100644 index 000000000..e70d00fb5 --- /dev/null +++ b/osrs/src/main/java/class355.java @@ -0,0 +1,26 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("nk") +public final class class355 { + @ObfuscatedName("lx") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/String;", + garbageValue = "-1520986974" + ) + @Export("formatItemStacks") + static final String formatItemStacks(int var0) { + String var1 = Integer.toString(var0); + + for (int var2 = var1.length() - 3; var2 > 0; var2 -= 3) { + var1 = var1.substring(0, var2) + "," + var1.substring(var2); + } + + if (var1.length() > 9) { + return " " + class167.colorStartTag(65408) + var1.substring(0, var1.length() - 8) + "M" + " " + " (" + var1 + ")" + ""; + } else { + return var1.length() > 6 ? " " + class167.colorStartTag(16777215) + var1.substring(0, var1.length() - 4) + "K" + " " + " (" + var1 + ")" + "" : " " + class167.colorStartTag(16776960) + var1 + ""; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class356.java b/osrs/src/main/java/class356.java new file mode 100644 index 000000000..575cd4752 --- /dev/null +++ b/osrs/src/main/java/class356.java @@ -0,0 +1,8 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("ns") +public class class356 { + static { + Math.sqrt(8192.0D); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class357.java b/osrs/src/main/java/class357.java index 3b6470c02..c875ccad6 100644 --- a/osrs/src/main/java/class357.java +++ b/osrs/src/main/java/class357.java @@ -1,18 +1,447 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("nj") -public class class357 extends DualNode { - @ObfuscatedName("au") +@ObfuscatedName("nm") +public class class357 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lnk;" + descriptor = "Lnm;" ) - Archive field3528; - @ObfuscatedName("ae") - int field3527; + static final class357 field3179; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lnm;" + ) + static final class357 field3178; + @ObfuscatedName("bh") + @Export("hasFocus") + protected static boolean hasFocus; + @ObfuscatedName("ar") + final int field3181; @ObfuscatedName("ao") - byte field3526; + final int field3180; + + static { + field3179 = new class357(51, 27, 800, 0, 16, 16); + field3178 = new class357(25, 28, 800, 656, 40, 40); + } + + class357(int var1, int var2, int var3, int var4, int var5, int var6) { + this.field3181 = var5; + this.field3180 = var6; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "1617415071" + ) + static int method1899(int var0, Script var1, boolean var2) { + int var4 = -1; + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var3 = HealthBarDefinition.widgetDefinition.method1733(var4); + } else { + var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + } + + int var10; + if (var0 == 1100) { + DbTableType.Interpreter_intStackSize -= 2; + var10 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + int var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (var3.type == 12) { + class341 var7 = var3.method1871(); + if (var7 != null && var7.method1768(var10, var6)) { + class159.invalidateWidget(var3); + } + } else { + var3.scrollX = var10; + if (var3.scrollX > var3.scrollWidth - var3.width) { + var3.scrollX = var3.scrollWidth - var3.width; + } + + if (var3.scrollX < 0) { + var3.scrollX = 0; + } + + var3.scrollY = var6; + if (var3.scrollY > var3.scrollHeight - var3.height) { + var3.scrollY = var3.scrollHeight - var3.height; + } + + if (var3.scrollY < 0) { + var3.scrollY = 0; + } + + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1101) { + var3.color = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1102) { + var3.fill = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1103) { + var3.transparencyTop = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1104) { + var3.lineWid = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1105) { + var3.spriteId2 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1106) { + var3.spriteAngle = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1107) { + var3.spriteTiling = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1108) { + var3.modelType = 1; + var3.modelId = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1109) { + DbTableType.Interpreter_intStackSize -= 6; + var3.modelOffsetX = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var3.modelOffsetY = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var3.modelAngleX = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var3.modelAngleY = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var3.modelAngleZ = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 4]; + var3.modelZoom = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 5]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1110) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var10 != var3.sequenceId) { + var3.sequenceId = var10; + var3.modelFrame = 0; + var3.modelFrameCycle = 0; + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1111) { + var3.modelOrthog = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else { + class341 var9; + if (var0 != 1112) { + class341 var12; + if (var0 == 1113) { + var3.fontId = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3.type == 12) { + var12 = var3.method1871(); + if (var12 != null) { + var12.method1775(); + } + } + + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1114) { + DbTableType.Interpreter_intStackSize -= 3; + if (var3.type == 12) { + var12 = var3.method1871(); + if (var12 != null) { + var12.method1769(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + var12.method1770(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]); + } + } else { + var3.textXAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var3.textYAlignment = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var3.textLineHeight = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + } + + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1115) { + var3.textShadowed = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1116) { + var3.outline = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1117) { + var3.spriteShadow = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1118) { + var3.spriteFlipV = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1119) { + var3.spriteFlipH = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1120) { + DbTableType.Interpreter_intStackSize -= 2; + var3.scrollWidth = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var3.scrollHeight = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + class159.invalidateWidget(var3); + if (var4 != -1 && var3.type == 0) { + class132.revalidateWidgetScroll(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var4 >> 16], var3, false); + } + + return 1; + } else if (var0 == 1121) { + class10.resumePauseWidget(var3.id, var3.childIndex); + Client.meslayerContinueWidget = var3; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1122) { + var3.spriteId = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1123) { + var3.color2 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1124) { + var3.transparencyBot = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1125) { + var10 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + FillMode var13 = (FillMode)class12.findEnumerated(WallDecoration.FillMode_values(), var10); + if (var13 != null) { + var3.fillMode = var13; + class159.invalidateWidget(var3); + } + + return 1; + } else { + boolean var5; + if (var0 == 1126) { + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + var3.field2989 = var5; + return 1; + } else if (var0 == 1127) { + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + var3.modelTransparency = var5; + return 1; + } else if (var0 == 1129) { + var3.field3117 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + class159.invalidateWidget(var3); + return 1; + } else if (var0 == 1130) { + var3.method1855(Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize], class60.urlRequester, ModelData0.method1598()); + return 1; + } else if (var0 == 1131) { + DbTableType.Interpreter_intStackSize -= 2; + var3.method1858(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + return 1; + } else if (var0 == 1132) { + var3.method1859(Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize], Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + return 1; + } else { + class336 var14; + if (var0 == 1133) { + --DbTableType.Interpreter_intStackSize; + var14 = var3.method1872(); + if (var14 != null) { + var14.field2923 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1134) { + --DbTableType.Interpreter_intStackSize; + var14 = var3.method1872(); + if (var14 != null) { + var14.field2921 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1135) { + --class127.Interpreter_stringStackSize; + var12 = var3.method1871(); + if (var12 != null) { + var3.text2 = Interpreter.Interpreter_stringStack[class127.Interpreter_stringStackSize]; + } - class357() { + return 1; + } else if (var0 == 1136) { + --DbTableType.Interpreter_intStackSize; + var14 = var3.method1872(); + if (var14 != null) { + var14.field2922 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1137) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null && var12.method1765(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize])) { + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1138) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null && var12.method1766(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize])) { + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1139) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null && var12.method1767(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize])) { + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1140) { + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + Client.field422.method1114(); + var9 = var3.method1871(); + if (var9 != null && var9.method1759(var5)) { + if (var5) { + Client.field422.method1112(var3); + } + + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1141) { + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + if (!var5 && Client.field422.method1113() == var3) { + Client.field422.method1114(); + class159.invalidateWidget(var3); + } + + var9 = var3.method1871(); + if (var9 != null) { + var9.method1760(var5); + } + + return 1; + } else if (var0 == 1142) { + DbTableType.Interpreter_intStackSize -= 2; + var12 = var3.method1871(); + if (var12 != null && var12.method1783(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1])) { + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1143) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null && var12.method1783(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize])) { + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1144) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null) { + var12.method1772(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + class159.invalidateWidget(var3); + } + + return 1; + } else if (var0 == 1145) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null) { + var12.method1771(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + } + + return 1; + } else if (var0 == 1146) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null) { + var12.method1774(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + } + + return 1; + } else if (var0 == 1147) { + --DbTableType.Interpreter_intStackSize; + var12 = var3.method1871(); + if (var12 != null) { + var12.method1773(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]); + class159.invalidateWidget(var3); + } + + return 1; + } else { + class27 var11; + if (var0 == 1148) { + DbTableType.Interpreter_intStackSize -= 2; + var11 = var3.method1873(); + if (var11 != null) { + var11.method111(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + } + + return 1; + } else if (var0 == 1149) { + DbTableType.Interpreter_intStackSize -= 2; + var11 = var3.method1873(); + if (var11 != null) { + var11.method113((char)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize], Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]); + } + + return 1; + } else if (var0 == 1150) { + var3.method1856(Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize], class60.urlRequester); + return 1; + } else { + return 2; + } + } + } + } + } else { + String var8 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + if (var3.type == 12) { + var9 = var3.method1871(); + if (var9 != null && var9.method1815()) { + var9.method1761(var8); + } else { + var3.text = var8; + } + + class159.invalidateWidget(var3); + } else if (!var8.equals(var3.text)) { + var3.text = var8; + class159.invalidateWidget(var3); + } + + return 1; + } + } + } + + @ObfuscatedName("hw") + @ObfuscatedSignature( + descriptor = "(Loh;Ljava/lang/String;I)V", + garbageValue = "-587575754" + ) + static void method1900(Archive var0, String var1) { + ArchiveLoader var2 = new ArchiveLoader(var0, var1); + Client.archiveLoaders.add(var2); + Client.field549 += var2.groupCount; } } \ No newline at end of file diff --git a/osrs/src/main/java/class36.java b/osrs/src/main/java/class36.java index 6ee2d3e52..0095e5e26 100644 --- a/osrs/src/main/java/class36.java +++ b/osrs/src/main/java/class36.java @@ -2,46 +2,201 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bq") +import java.text.ParseException; +import java.util.Date; + +@ObfuscatedName("bw") public class class36 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Loc;" + descriptor = "Lpm;" ) @Export("reflectionChecks") public static IterableNodeDeque reflectionChecks; - @ObfuscatedName("aj") - @Export("userHomeDirectory") - static String userHomeDirectory; + @ObfuscatedName("jj") + @ObfuscatedSignature( + descriptor = "Lkf;" + ) + @Export("scene") + static Scene scene; + @ObfuscatedName("kk") + @Export("cameraZ") + static int cameraZ; static { reflectionChecks = new IterableNodeDeque(); } - @ObfuscatedName("lj") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IIIIIIIIB)V", - garbageValue = "16" + descriptor = "(B)[Llo;", + garbageValue = "88" ) - @Export("drawWidgets") - static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - if (ModeWhere.loadInterface(var0)) { - class162.field1420 = null; - class135.drawInterface(PacketBufferNode.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6, var7); - if (class162.field1420 != null) { - class135.drawInterface(class162.field1420, -1412584499, var1, var2, var3, var4, class134.field1294, class326.field2893, var7); - class162.field1420 = null; - } + static LoginPacket[] method183() { + return new LoginPacket[]{LoginPacket.NEW_LOGIN_CONNECTION, LoginPacket.RECONNECT_LOGIN_CONNECTION, LoginPacket.field2766, LoginPacket.field2765, LoginPacket.field2764, LoginPacket.field2761}; + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1667921404" + ) + static boolean method184() { + Date var0; + try { + var0 = class395.method2040(); + } catch (ParseException var7) { + UserComparator7.method674(7); + class139.setLoginResponseString("Date not valid.", "Please ensure date follows the format", "DD/MM/YYYY and is after 01/01/1900"); + return false; + } + if (var0 == null) { + return false; } else { - if (var7 != -1) { - Client.field407[var7] = true; + java.util.Calendar var2 = java.util.Calendar.getInstance(); + var2.set(1, var2.get(1) - 13); + var2.set(5, var2.get(5) + 1); + var2.set(11, 0); + var2.set(12, 0); + var2.set(13, 0); + var2.set(14, 0); + Date var3 = var2.getTime(); + boolean var4 = var0.before(var3); + boolean var6 = class241.method1296(var0); + if (!var6) { + UserComparator7.method674(7); + class139.setLoginResponseString("Date not valid.", "Please ensure date follows the format", "DD/MM/YYYY and is after 01/01/1900"); + return false; } else { - for (int var8 = 0; var8 < 100; ++var8) { - Client.field407[var8] = true; + if (!var4) { + class160.field1406 = 8388607; + } else { + class160.field1406 = (int)(var0.getTime() / 86400000L - 11745L); + } + + return true; + } + } + } + + @ObfuscatedName("no") + @ObfuscatedSignature( + descriptor = "(Lnn;IIII)V", + garbageValue = "-1700622537" + ) + @Export("drawMinimap") + static final void drawMinimap(Widget var0, int var1, int var2, int var3) { + class102.method604(); + SpriteMask var4 = var0.method1851(HealthBarDefinition.widgetDefinition, false); + if (var4 != null) { + Rasterizer2D.Rasterizer2D_setClip(var1, var2, var4.width + var1, var2 + var4.height); + if (Client.minimapState != 2 && Client.minimapState != 5) { + int var5 = Client.camAngleY & 2047; + int var6 = class229.localPlayer.x / 32 + 48; + int var7 = 464 - class229.localPlayer.y / 32; + class102.sceneMinimapSprite.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, var6, var7, var5, 256, var4.xStarts, var4.xWidths); + + int var8; + int var9; + int var10; + for (var8 = 0; var8 < Client.mapIconCount; ++var8) { + var9 = Client.mapIconXs[var8] * 4 + 2 - class229.localPlayer.x / 32; + var10 = Client.mapIconYs[var8] * 4 + 2 - class229.localPlayer.y / 32; + class147.drawSpriteOnMinimap(var1, var2, var9, var10, Client.mapIcons[var8], var4); } + + int var11; + int var12; + for (var8 = 0; var8 < 104; ++var8) { + for (var9 = 0; var9 < 104; ++var9) { + NodeDeque var14 = Client.groundItems[ItemLayer.Client_plane][var8][var9]; + if (var14 != null) { + var11 = var8 * 4 + 2 - class229.localPlayer.x / 32; + var12 = var9 * 4 + 2 - class229.localPlayer.y / 32; + class147.drawSpriteOnMinimap(var1, var2, var11, var12, HorizontalAlignment.mapDotSprites[0], var4); + } + } + } + + for (var8 = 0; var8 < Client.npcCount; ++var8) { + NPC var15 = Client.npcs[Client.npcIndices[var8]]; + if (var15 != null && var15.isVisible()) { + NPCComposition var17 = var15.definition; + if (var17 != null && var17.transforms != null) { + var17 = var17.transform(); + } + + if (var17 != null && var17.drawMapDot && var17.isInteractable) { + var11 = var15.x / 32 - class229.localPlayer.x / 32; + var12 = var15.y / 32 - class229.localPlayer.y / 32; + class147.drawSpriteOnMinimap(var1, var2, var11, var12, HorizontalAlignment.mapDotSprites[1], var4); + } + } + } + + var8 = Players.Players_count; + int[] var18 = Players.Players_indices; + + for (var10 = 0; var10 < var8; ++var10) { + Player var16 = Client.players[var18[var10]]; + if (var16 != null && var16.isVisible() && !var16.isHidden && var16 != class229.localPlayer) { + var12 = var16.x / 32 - class229.localPlayer.x / 32; + int var13 = var16.y / 32 - class229.localPlayer.y / 32; + if (var16.isFriend()) { + class147.drawSpriteOnMinimap(var1, var2, var12, var13, HorizontalAlignment.mapDotSprites[3], var4); + } else if (class229.localPlayer.team != 0 && var16.team != 0 && var16.team == class229.localPlayer.team) { + class147.drawSpriteOnMinimap(var1, var2, var12, var13, HorizontalAlignment.mapDotSprites[4], var4); + } else if (var16.isFriendsChatMember()) { + class147.drawSpriteOnMinimap(var1, var2, var12, var13, HorizontalAlignment.mapDotSprites[5], var4); + } else if (var16.isClanMember()) { + class147.drawSpriteOnMinimap(var1, var2, var12, var13, HorizontalAlignment.mapDotSprites[6], var4); + } else { + class147.drawSpriteOnMinimap(var1, var2, var12, var13, HorizontalAlignment.mapDotSprites[2], var4); + } + } + } + + if (Client.hintArrowType != 0 && Client.cycle % 20 < 10) { + if (Client.hintArrowType == 1 && Client.hintArrowNpcIndex >= 0 && Client.hintArrowNpcIndex < Client.npcs.length) { + NPC var19 = Client.npcs[Client.hintArrowNpcIndex]; + if (var19 != null) { + var11 = var19.x / 32 - class229.localPlayer.x / 32; + var12 = var19.y / 32 - class229.localPlayer.y / 32; + class153.worldToMinimap(var1, var2, var11, var12, class12.mapMarkerSprites[1], var4); + } + } + + if (Client.hintArrowType == 2) { + var10 = Client.hintArrowX * 4 - NewShit.baseX * 4 + 2 - class229.localPlayer.x / 32; + var11 = Client.hintArrowY * 4 - class101.baseY * 4 + 2 - class229.localPlayer.y / 32; + class153.worldToMinimap(var1, var2, var10, var11, class12.mapMarkerSprites[1], var4); + } + + if (Client.hintArrowType == 10 && Client.hintArrowPlayerIndex >= 0 && Client.hintArrowPlayerIndex < Client.players.length) { + Player var20 = Client.players[Client.hintArrowPlayerIndex]; + if (var20 != null) { + var11 = var20.x / 32 - class229.localPlayer.x / 32; + var12 = var20.y / 32 - class229.localPlayer.y / 32; + class153.worldToMinimap(var1, var2, var11, var12, class12.mapMarkerSprites[1], var4); + } + } + } + + if (Client.destinationX != 0) { + var10 = Client.destinationX * 4 + 2 - class229.localPlayer.x / 32; + var11 = Client.destinationY * 4 + 2 - class229.localPlayer.y / 32; + class147.drawSpriteOnMinimap(var1, var2, var10, var11, class12.mapMarkerSprites[0], var4); + } + + if (!class229.localPlayer.isHidden) { + Rasterizer2D.Rasterizer2D_fillRectangle(var4.width / 2 + var1 - 1, var4.height / 2 + var2 - 1, 3, 3, 16777215); + } + } else { + Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); } + Client.field408[var3] = true; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class361.java b/osrs/src/main/java/class361.java new file mode 100644 index 000000000..be41db00c --- /dev/null +++ b/osrs/src/main/java/class361.java @@ -0,0 +1,58 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("nz") +public class class361 { + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "[Lcr;" + ) + @Export("World_worlds") + static World[] World_worlds; + + static { + int var0 = 0; + int var1 = 0; + class357[] var2 = new class357[]{class357.field3179, class357.field3178}; + class357[] var3 = var2; + + for (int var4 = 0; var4 < var3.length; ++var4) { + class357 var5 = var3[var4]; + if (var5.field3181 > var0) { + var0 = var5.field3181; + } + + if (var5.field3180 > var1) { + var1 = var5.field3180; + } + } + + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "1795808199" + ) + public static int method1902(int var0, int var1) { + int var2; + for (var2 = 0; var1 > 0; --var1) { + var2 = var2 << 1 | var0 & 1; + var0 >>>= 1; + } + + return var2; + } + + @ObfuscatedName("ns") + @ObfuscatedSignature( + descriptor = "(Lnn;I)I", + garbageValue = "571282441" + ) + @Export("getWidgetFlags") + static int getWidgetFlags(Widget var0) { + IntegerNode var1 = (IntegerNode)Client.widgetFlags.get(((long)var0.id << 32) + (long)var0.childIndex); + return var1 != null ? var1.integer : var0.flags; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class362.java b/osrs/src/main/java/class362.java new file mode 100644 index 000000000..8afc60e10 --- /dev/null +++ b/osrs/src/main/java/class362.java @@ -0,0 +1,16 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("nl") +public class class362 { + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(IB)[B", + garbageValue = "-38" + ) + @Export("ByteArrayPool_getArray") + public static byte[] ByteArrayPool_getArray(int var0) { + return ServerPacket.ByteArrayPool_getArrayBool(var0, false); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class364.java b/osrs/src/main/java/class364.java new file mode 100644 index 000000000..0a6c7eea3 --- /dev/null +++ b/osrs/src/main/java/class364.java @@ -0,0 +1,44 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("oi") +public enum class364 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Loi;" + ) + field3511(-1), + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Loi;" + ) + field3508(0), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Loi;" + ) + field3510(1), + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Loi;" + ) + field3509(2); + + @ObfuscatedName("ab") + final int field3512; + + class364(int var3) { + this.field3512 = var3; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field3512; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class369.java b/osrs/src/main/java/class369.java index c6621cd90..0c4d51975 100644 --- a/osrs/src/main/java/class369.java +++ b/osrs/src/main/java/class369.java @@ -2,230 +2,34 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.HashMap; - -@ObfuscatedName("od") -public class class369 { - @ObfuscatedName("ck") - @Export("otp") - static String otp; - @ObfuscatedName("au") - @Export("spriteMap") - final HashMap spriteMap; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lrb;" - ) - @Export("bounds") - Bounds bounds; - @ObfuscatedName("ao") - int[] field3590; - @ObfuscatedName("at") - int[] field3591; - @ObfuscatedName("ac") - int field3589; - - public class369() { - this.spriteMap = new HashMap(); - this.bounds = new Bounds(0, 0); - this.field3590 = new int[2048]; - this.field3591 = new int[2048]; - this.field3589 = 0; - ArchiveDiskActionHandler.method1884(); - } - - @ObfuscatedName("ae") +@ObfuscatedName("oy") +public class class369 extends DualNode { + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "915989256" + descriptor = "Lol;" ) - void method1961(int var1) { - int var2 = var1 * 2 + 1; - double[] var3 = Clock.method930(0.0D, (double)((float)var1 / 3.0F), var1); - double var4 = var3[var1] * var3[var1]; - int[] var6 = new int[var2 * var2]; - boolean var7 = false; - - for (int var8 = 0; var8 < var2; ++var8) { - for (int var9 = 0; var9 < var2; ++var9) { - int var10 = var6[var9 + var8 * var2] = (int)(256.0D * (var3[var8] * var3[var9] / var4)); - if (!var7 && var10 > 0) { - var7 = true; - } - } - } - - SpritePixels var11 = new SpritePixels(var6, var2, var2); - this.spriteMap.put(var1, var11); - } - - @ObfuscatedName("ao") + @Export("SequenceDefinition_archive") + public static AbstractArchive SequenceDefinition_archive; + @ObfuscatedName("aa") + static byte[][][] field3559; + @ObfuscatedName("gh") + static String field3560; + @ObfuscatedName("jg") @ObfuscatedSignature( - descriptor = "(IB)Lui;", - garbageValue = "63" + descriptor = "Lpf;" ) - SpritePixels method1962(int var1) { - if (!this.spriteMap.containsKey(var1)) { - this.method1961(var1); - } - - return (SpritePixels)this.spriteMap.get(var1); - } - + @Export("fontPlain11") + static Font fontPlain11; @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-1621400552" - ) - public final void method1963(int var1, int var2) { - if (this.field3589 < this.field3590.length) { - this.field3590[this.field3589] = var1; - this.field3591[this.field3589] = var2; - ++this.field3589; - } - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1492834453" - ) - public final void method1964() { - this.field3589 = 0; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(IILui;FI)V", - garbageValue = "435818307" - ) - public final void method1965(int var1, int var2, SpritePixels var3, float var4) { - int var5 = (int)(var4 * 18.0F); - SpritePixels var6 = this.method1962(var5); - int var7 = var5 * 2 + 1; - Bounds var8 = new Bounds(0, 0, var3.subWidth, var3.subHeight); - Bounds var9 = new Bounds(0, 0); - this.bounds.setHigh(var7, var7); - System.nanoTime(); - - int var10; - int var11; - int var12; - for (var10 = 0; var10 < this.field3589; ++var10) { - var11 = this.field3590[var10]; - var12 = this.field3591[var10]; - int var13 = (int)(var4 * (float)(var11 - var1)) - var5; - int var14 = (int)((float)var3.subHeight - (float)(var12 - var2) * var4) - var5; - this.bounds.setLow(var13, var14); - this.bounds.method2285(var8, var9); - this.method1966(var6, var3, var9); - } - - System.nanoTime(); - System.nanoTime(); - - for (var10 = 0; var10 < var3.pixels.length; ++var10) { - if (var3.pixels[var10] == 0) { - var3.pixels[var10] = -16777216; - } else { - var11 = (var3.pixels[var10] + 64 - 1) / 256; - if (var11 <= 0) { - var3.pixels[var10] = -16777216; - } else { - if (var11 > ItemComposition.field1768.length) { - var11 = ItemComposition.field1768.length; - } - - var12 = ItemComposition.field1768[var11 - 1]; - var3.pixels[var10] = -16777216 | var12; - } - } - } - - System.nanoTime(); - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Lui;Lui;Lrb;I)V", - garbageValue = "-1016036720" + descriptor = "Loh;" ) - void method1966(SpritePixels var1, SpritePixels var2, Bounds var3) { - if (var3.highX != 0 && var3.highY != 0) { - int var4 = 0; - int var5 = 0; - if (var3.lowX == 0) { - var4 = var1.subWidth - var3.highX; - } - - if (var3.lowY == 0) { - var5 = var1.subHeight - var3.highY; - } - - int var6 = var4 + var5 * var1.subWidth; - int var7 = var2.subWidth * var3.lowY + var3.lowX; - - for (int var8 = 0; var8 < var3.highY; ++var8) { - for (int var9 = 0; var9 < var3.highX; ++var9) { - int[] var10000 = var2.pixels; - int var10001 = var7++; - var10000[var10001] += var1.pixels[var6++]; - } - - var6 += var1.subWidth - var3.highX; - var7 += var2.subWidth - var3.highX; - } - - } - } - - @ObfuscatedName("mh") - @ObfuscatedSignature( - descriptor = "(Lmi;IIZI)V", - garbageValue = "1138527751" - ) - @Export("alignWidgetSize") - static void alignWidgetSize(Widget var0, int var1, int var2, boolean var3) { - int var4 = var0.width; - int var5 = var0.height; - if (var0.widthAlignment == 0) { - var0.width = var0.rawWidth; - } else if (var0.widthAlignment == 1) { - var0.width = var1 - var0.rawWidth; - } else if (var0.widthAlignment == 2) { - var0.width = var0.rawWidth * var1 >> 14; - } - - if (var0.heightAlignment == 0) { - var0.height = var0.rawHeight; - } else if (var0.heightAlignment == 1) { - var0.height = var2 - var0.rawHeight; - } else if (var0.heightAlignment == 2) { - var0.height = var2 * var0.rawHeight >> 14; - } - - if (var0.widthAlignment == 4) { - var0.width = var0.field3006 * var0.height / var0.field3011; - } - - if (var0.heightAlignment == 4) { - var0.height = var0.width * var0.field3011 / var0.field3006; - } - - if (var0.contentType == 1337) { - Client.viewportWidget = var0; - } - - if (var0.type == 12) { - var0.method1844().method1736(var0.width, var0.height); - } - - if (var3 && var0.onResize != null && (var4 != var0.width || var5 != var0.height)) { - ScriptEvent var6 = new ScriptEvent(); - var6.widget = var0; - var6.args = var0.onResize; - Client.scriptEvents.addFirst(var6); - } + Archive field3564; + @ObfuscatedName("ah") + int field3563; + @ObfuscatedName("ar") + byte field3562; + class369() { } } \ No newline at end of file diff --git a/osrs/src/main/java/class370.java b/osrs/src/main/java/class370.java deleted file mode 100644 index eea13349e..000000000 --- a/osrs/src/main/java/class370.java +++ /dev/null @@ -1,291 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("og") -public class class370 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Log;" - ) - static final class370 field3598; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Log;" - ) - static final class370 field3595; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Log;" - ) - static final class370 field3596; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Log;" - ) - static final class370 field3597; - @ObfuscatedName("br") - @Export("hasFocus") - protected static boolean hasFocus; - - static { - field3598 = new class370(); - field3595 = new class370(); - field3596 = new class370(); - field3597 = new class370(); - } - - class370() { - } - - @ObfuscatedName("kj") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-2133764143" - ) - static final void method1968() { - class108.method621(false); - Client.field452 = 0; - boolean var0 = true; - - int var1; - for (var1 = 0; var1 < UserComparator5.regionLandArchives.length; ++var1) { - if (class59.regionMapArchiveIds[var1] != -1 && UserComparator5.regionLandArchives[var1] == null) { - UserComparator5.regionLandArchives[var1] = class499.archive9.takeFile(class59.regionMapArchiveIds[var1], 0); - if (UserComparator5.regionLandArchives[var1] == null) { - var0 = false; - ++Client.field452; - } - } - - if (ObjTypeCustomisation.regionLandArchiveIds[var1] != -1 && class197.regionMapArchives[var1] == null) { - class197.regionMapArchives[var1] = class499.archive9.takeFileEncrypted(ObjTypeCustomisation.regionLandArchiveIds[var1], 0, RunException.xteaKeys[var1]); - if (class197.regionMapArchives[var1] == null) { - var0 = false; - ++Client.field452; - } - } - } - - if (!var0) { - Client.field456 = 1; - } else { - Client.field455 = 0; - var0 = true; - - int var3; - int var4; - for (var1 = 0; var1 < UserComparator5.regionLandArchives.length; ++var1) { - byte[] var2 = class197.regionMapArchives[var1]; - if (var2 != null) { - var3 = (class191.regions[var1] >> 8) * 64 - UrlRequester.baseX; - var4 = (class191.regions[var1] & 255) * 64 - class47.baseY; - if (Client.isInInstance) { - var3 = 10; - var4 = 10; - } - - var0 &= class142.method768(var2, var3, var4); - } - } - - if (!var0) { - Client.field456 = 2; - } else { - if (Client.field456 != 0) { - FadeInTask.drawLoadingMessage("Loading - please wait." + "
" + " (" + 100 + "%" + ")", true); - } - - class301.method1622(); - class130.scene.clear(); - - for (var1 = 0; var1 < 4; ++var1) { - Client.collisionMaps[var1].clear(); - } - - int var15; - for (var1 = 0; var1 < 4; ++var1) { - for (var15 = 0; var15 < 104; ++var15) { - for (var3 = 0; var3 < 104; ++var3) { - Tiles.Tiles_renderFlags[var1][var15][var3] = 0; - } - } - } - - class301.method1622(); - Language.method1973(); - var1 = UserComparator5.regionLandArchives.length; - class388.method2029(); - class108.method621(true); - int var17; - if (!Client.isInInstance) { - byte[] var5; - for (var15 = 0; var15 < var1; ++var15) { - var3 = (class191.regions[var15] >> 8) * 64 - UrlRequester.baseX; - var4 = (class191.regions[var15] & 255) * 64 - class47.baseY; - var5 = UserComparator5.regionLandArchives[var15]; - if (var5 != null) { - class301.method1622(); - class261.method1500(var5, var3, var4, Tiles.timeOfPreviousKeyPress * 8 - 48, MouseRecorder.field873 * 8 - 48, Client.collisionMaps); - } - } - - for (var15 = 0; var15 < var1; ++var15) { - var3 = (class191.regions[var15] >> 8) * 64 - UrlRequester.baseX; - var4 = (class191.regions[var15] & 255) * 64 - class47.baseY; - var5 = UserComparator5.regionLandArchives[var15]; - if (var5 == null && MouseRecorder.field873 < 800) { - class301.method1622(); - class17.method49(var3, var4, 64, 64); - } - } - - class108.method621(true); - - for (var15 = 0; var15 < var1; ++var15) { - byte[] var16 = class197.regionMapArchives[var15]; - if (var16 != null) { - var4 = (class191.regions[var15] >> 8) * 64 - UrlRequester.baseX; - var17 = (class191.regions[var15] & 255) * 64 - class47.baseY; - class301.method1622(); - FriendsChat.method2206(var16, var4, var17, class130.scene, Client.collisionMaps); - } - } - } - - int var6; - int var7; - int var8; - if (Client.isInInstance) { - int var9; - int var10; - int var11; - for (var15 = 0; var15 < 4; ++var15) { - class301.method1622(); - - for (var3 = 0; var3 < 13; ++var3) { - for (var4 = 0; var4 < 13; ++var4) { - boolean var19 = false; - var6 = Client.instanceChunkTemplates[var15][var3][var4]; - if (var6 != -1) { - var7 = var6 >> 24 & 3; - var8 = var6 >> 1 & 3; - var9 = var6 >> 14 & 1023; - var10 = var6 >> 3 & 2047; - var11 = (var9 / 8 << 8) + var10 / 8; - - for (int var12 = 0; var12 < class191.regions.length; ++var12) { - if (class191.regions[var12] == var11 && UserComparator5.regionLandArchives[var12] != null) { - int var13 = (var9 - var3) * 8; - int var14 = (var10 - var4) * 8; - class132.method734(UserComparator5.regionLandArchives[var12], var15, var3 * 8, var4 * 8, var7, (var9 & 7) * 8, (var10 & 7) * 8, var8, var13, var14, Client.collisionMaps); - var19 = true; - break; - } - } - } - - if (!var19) { - class372.method1970(var15, var3 * 8, var4 * 8); - } - } - } - } - - for (var15 = 0; var15 < 13; ++var15) { - for (var3 = 0; var3 < 13; ++var3) { - var4 = Client.instanceChunkTemplates[0][var15][var3]; - if (var4 == -1) { - class17.method49(var15 * 8, var3 * 8, 8, 8); - } - } - } - - class108.method621(true); - - for (var15 = 0; var15 < 4; ++var15) { - class301.method1622(); - - for (var3 = 0; var3 < 13; ++var3) { - for (var4 = 0; var4 < 13; ++var4) { - var17 = Client.instanceChunkTemplates[var15][var3][var4]; - if (var17 != -1) { - var6 = var17 >> 24 & 3; - var7 = var17 >> 1 & 3; - var8 = var17 >> 14 & 1023; - var9 = var17 >> 3 & 2047; - var10 = (var8 / 8 << 8) + var9 / 8; - - for (var11 = 0; var11 < class191.regions.length; ++var11) { - if (class191.regions[var11] == var10 && class197.regionMapArchives[var11] != null) { - Tiles.method459(class197.regionMapArchives[var11], var15, var3 * 8, var4 * 8, var6, (var8 & 7) * 8, (var9 & 7) * 8, var7, class130.scene, Client.collisionMaps); - break; - } - } - } - } - } - } - } - - class108.method621(true); - class301.method1622(); - class129.method717(class130.scene, Client.collisionMaps); - class108.method621(true); - var15 = Tiles.Tiles_minPlane; - if (var15 > HealthBar.Client_plane) { - var15 = HealthBar.Client_plane; - } - - if (var15 < HealthBar.Client_plane - 1) { - var15 = HealthBar.Client_plane - 1; - } - - if (Client.isLowDetail) { - class130.scene.init(Tiles.Tiles_minPlane); - } else { - class130.scene.init(0); - } - - for (var3 = 0; var3 < 104; ++var3) { - for (var4 = 0; var4 < 104; ++var4) { - class135.updateItemPile(var3, var4); - } - } - - class301.method1622(); - class165.method869(); - ObjectComposition.ObjectDefinition_cachedModelData.clear(); - PacketBufferNode var18; - if (class219.client.hasFrame()) { - var18 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.DETECT_MODIFIED_CLIENT, Client.packetWriter.isaacCipher); - var18.packetBuffer.writeInt(1057001181); - Client.packetWriter.addNode(var18); - } - - if (!Client.isInInstance) { - var3 = (Tiles.timeOfPreviousKeyPress - 6) / 8; - var4 = (Tiles.timeOfPreviousKeyPress + 6) / 8; - var17 = (MouseRecorder.field873 - 6) / 8; - var6 = (MouseRecorder.field873 + 6) / 8; - - for (var7 = var3 - 1; var7 <= var4 + 1; ++var7) { - for (var8 = var17 - 1; var8 <= var6 + 1; ++var8) { - if (var7 < var3 || var7 > var4 || var8 < var17 || var8 > var6) { - class499.archive9.loadRegionFromName("m" + var7 + "_" + var8); - class499.archive9.loadRegionFromName("l" + var7 + "_" + var8); - } - } - } - } - - MusicSong.updateGameState(30); - class301.method1622(); - ObjectSound.method414(); - var18 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.MAP_BUILD_COMPLETE, Client.packetWriter.isaacCipher); - Client.packetWriter.addNode(var18); - PacketWriter.method645(); - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class371.java b/osrs/src/main/java/class371.java deleted file mode 100644 index 7bc13ad0a..000000000 --- a/osrs/src/main/java/class371.java +++ /dev/null @@ -1,14 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ob") -public interface class371 { - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" - ) - @Export("rsOrdinal") - int rsOrdinal(); -} \ No newline at end of file diff --git a/osrs/src/main/java/class372.java b/osrs/src/main/java/class372.java deleted file mode 100644 index ced4177a7..000000000 --- a/osrs/src/main/java/class372.java +++ /dev/null @@ -1,196 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.HashMap; - -@ObfuscatedName("ok") -public class class372 { - @ObfuscatedName("wr") - @Export("foundItemIndex") - static int foundItemIndex; - - static { - new HashMap(); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(IIII)V", - garbageValue = "1337034941" - ) - static final void method1970(int var0, int var1, int var2) { - int var3; - for (var3 = 0; var3 < 8; ++var3) { - for (int var4 = 0; var4 < 8; ++var4) { - Tiles.Tiles_heights[var0][var3 + var1][var4 + var2] = 0; - } - } - - if (var1 > 0) { - for (var3 = 1; var3 < 8; ++var3) { - Tiles.Tiles_heights[var0][var1][var3 + var2] = Tiles.Tiles_heights[var0][var1 - 1][var3 + var2]; - } - } - - if (var2 > 0) { - for (var3 = 1; var3 < 8; ++var3) { - Tiles.Tiles_heights[var0][var3 + var1][var2] = Tiles.Tiles_heights[var0][var3 + var1][var2 - 1]; - } - } - - if (var1 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2] != 0) { - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2]; - } else if (var2 > 0 && Tiles.Tiles_heights[var0][var1][var2 - 1] != 0) { - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1][var2 - 1]; - } else if (var1 > 0 && var2 > 0 && Tiles.Tiles_heights[var0][var1 - 1][var2 - 1] != 0) { - Tiles.Tiles_heights[var0][var1][var2] = Tiles.Tiles_heights[var0][var1 - 1][var2 - 1]; - } - - } - - @ObfuscatedName("bh") - @ObfuscatedSignature( - descriptor = "(ILdh;ZB)I", - garbageValue = "-1" - ) - static int method1971(int var0, Script var1, boolean var2) { - if (var0 == 3300) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.cycle; - return 1; - } else { - int var3; - int var4; - if (var0 == 3301) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class209.method1087(var3, var4); - return 1; - } else if (var0 == 3302) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = DynamicObject.ItemContainer_getCount(var3, var4); - return 1; - } else if (var0 == 3303) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class212.method1099(var3, var4); - return 1; - } else if (var0 == 3304) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = AbstractArchive.getInvDefinition(var3).size; - return 1; - } else if (var0 == 3305) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.currentLevels[var3]; - return 1; - } else if (var0 == 3306) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.levels[var3]; - return 1; - } else if (var0 == 3307) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.experience[var3]; - return 1; - } else { - int var5; - if (var0 == 3308) { - var3 = HealthBar.Client_plane; - var4 = (VarbitComposition.localPlayer.x >> 7) + UrlRequester.baseX; - var5 = (VarbitComposition.localPlayer.y >> 7) + class47.baseY; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = (var4 << 14) + var5 + (var3 << 28); - return 1; - } else if (var0 == 3309) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 >> 14 & 16383; - return 1; - } else if (var0 == 3310) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 >> 28; - return 1; - } else if (var0 == 3311) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3 & 16383; - return 1; - } else if (var0 == 3312) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.isMembersWorld ? 1 : 0; - return 1; - } else if (var0 == 3313) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] + 32768; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class209.method1087(var3, var4); - return 1; - } else if (var0 == 3314) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] + 32768; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = DynamicObject.ItemContainer_getCount(var3, var4); - return 1; - } else if (var0 == 3315) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize] + 32768; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class212.method1099(var3, var4); - return 1; - } else if (var0 == 3316) { - if (Client.staffModLevel >= 2) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.staffModLevel; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3317) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.rebootTimer; - return 1; - } else if (var0 == 3318) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.worldId; - return 1; - } else if (var0 == 3321) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.runEnergy / 100; - return 1; - } else if (var0 == 3322) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.weight; - return 1; - } else if (var0 == 3323) { - if (Client.playerMod) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 1; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - } - - return 1; - } else if (var0 == 3324) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.worldProperties; - return 1; - } else if (var0 == 3325) { - SoundCache.Interpreter_intStackSize -= 4; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var5 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - int var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var3 += var4 << 14; - var3 += var5 << 28; - var3 += var6; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = var3; - return 1; - } else if (var0 == 3326) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.lastMouseRecordX; - return 1; - } else if (var0 == 3327) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.lastMouseRecordY; - return 1; - } else if (var0 == 3331) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.runEnergy; - return 1; - } else { - return 2; - } - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class376.java b/osrs/src/main/java/class376.java new file mode 100644 index 000000000..095e48486 --- /dev/null +++ b/osrs/src/main/java/class376.java @@ -0,0 +1,11 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ou") +public class class376 { + @ObfuscatedName("gq") + @ObfuscatedSignature( + descriptor = "Lrl;" + ) + static GraphicsDefaults field3614; +} \ No newline at end of file diff --git a/osrs/src/main/java/class381.java b/osrs/src/main/java/class381.java new file mode 100644 index 000000000..51012b456 --- /dev/null +++ b/osrs/src/main/java/class381.java @@ -0,0 +1,178 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.HashMap; + +@ObfuscatedName("os") +public class class381 { + @ObfuscatedName("at") + @Export("spriteMap") + final HashMap spriteMap; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lrv;" + ) + @Export("bounds") + Bounds bounds; + @ObfuscatedName("ar") + int[] field3630; + @ObfuscatedName("ao") + int[] field3629; + @ObfuscatedName("ab") + int field3628; + + public class381() { + this.spriteMap = new HashMap(); + this.bounds = new Bounds(0, 0); + this.field3630 = new int[2048]; + this.field3629 = new int[2048]; + this.field3628 = 0; + class162.method845(); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-18604685" + ) + void method1983(int var1) { + int var2 = var1 * 2 + 1; + double[] var3 = class384.method1990(0.0D, (double)((float)var1 / 3.0F), var1); + double var4 = var3[var1] * var3[var1]; + int[] var6 = new int[var2 * var2]; + boolean var7 = false; + + for (int var8 = 0; var8 < var2; ++var8) { + for (int var9 = 0; var9 < var2; ++var9) { + int var10 = var6[var9 + var2 * var8] = (int)(256.0D * (var3[var9] * var3[var8] / var4)); + if (!var7 && var10 > 0) { + var7 = true; + } + } + } + + SpritePixels var11 = new SpritePixels(var6, var2, var2); + this.spriteMap.put(var1, var11); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Luz;", + garbageValue = "1127436045" + ) + SpritePixels method1984(int var1) { + if (!this.spriteMap.containsKey(var1)) { + this.method1983(var1); + } + + return (SpritePixels)this.spriteMap.get(var1); + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1542973383" + ) + public final void method1985(int var1, int var2) { + if (this.field3628 < this.field3630.length) { + this.field3630[this.field3628] = var1; + this.field3629[this.field3628] = var2; + ++this.field3628; + } + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(S)V", + garbageValue = "-26946" + ) + public final void method1986() { + this.field3628 = 0; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(IILuz;FB)V", + garbageValue = "127" + ) + public final void method1987(int var1, int var2, SpritePixels var3, float var4) { + int var5 = (int)(var4 * 18.0F); + SpritePixels var6 = this.method1984(var5); + int var7 = var5 * 2 + 1; + Bounds var8 = new Bounds(0, 0, var3.subWidth, var3.subHeight); + Bounds var9 = new Bounds(0, 0); + this.bounds.setHigh(var7, var7); + System.nanoTime(); + + int var10; + int var11; + int var12; + for (var10 = 0; var10 < this.field3628; ++var10) { + var11 = this.field3630[var10]; + var12 = this.field3629[var10]; + int var13 = (int)((float)(var11 - var1) * var4) - var5; + int var14 = (int)((float)var3.subHeight - (float)(var12 - var2) * var4) - var5; + this.bounds.setLow(var13, var14); + this.bounds.method2301(var8, var9); + this.method1988(var6, var3, var9); + } + + System.nanoTime(); + System.nanoTime(); + + for (var10 = 0; var10 < var3.pixels.length; ++var10) { + if (var3.pixels[var10] == 0) { + var3.pixels[var10] = -16777216; + } else { + var11 = (var3.pixels[var10] + 64 - 1) / 256; + if (var11 <= 0) { + var3.pixels[var10] = -16777216; + } else { + if (var11 > ChatChannel.field835.length) { + var11 = ChatChannel.field835.length; + } + + var12 = ChatChannel.field835[var11 - 1]; + var3.pixels[var10] = -16777216 | var12; + } + } + } + + System.nanoTime(); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(Luz;Luz;Lrv;I)V", + garbageValue = "-1645913083" + ) + void method1988(SpritePixels var1, SpritePixels var2, Bounds var3) { + if (var3.highX != 0 && var3.highY != 0) { + int var4 = 0; + int var5 = 0; + if (var3.lowX == 0) { + var4 = var1.subWidth - var3.highX; + } + + if (var3.lowY == 0) { + var5 = var1.subHeight - var3.highY; + } + + int var6 = var4 + var5 * var1.subWidth; + int var7 = var3.lowX + var2.subWidth * var3.lowY; + + for (int var8 = 0; var8 < var3.highY; ++var8) { + for (int var9 = 0; var9 < var3.highX; ++var9) { + int[] var10000 = var2.pixels; + int var10001 = var7++; + var10000[var10001] += var1.pixels[var6++]; + } + + var6 += var1.subWidth - var3.highX; + var7 += var2.subWidth - var3.highX; + } + + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class382.java b/osrs/src/main/java/class382.java new file mode 100644 index 000000000..6263e7baf --- /dev/null +++ b/osrs/src/main/java/class382.java @@ -0,0 +1,36 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ot") +public class class382 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lot;" + ) + static final class382 field3636; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lot;" + ) + static final class382 field3633; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lot;" + ) + static final class382 field3635; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lot;" + ) + static final class382 field3634; + + static { + field3636 = new class382(); + field3633 = new class382(); + field3635 = new class382(); + field3634 = new class382(); + } + + class382() { + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class383.java b/osrs/src/main/java/class383.java index be67d8647..4f5089b20 100644 --- a/osrs/src/main/java/class383.java +++ b/osrs/src/main/java/class383.java @@ -1,24 +1,14 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("oi") -public final class class383 { - @ObfuscatedName("oc") +@ObfuscatedName("oj") +public interface class383 { + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1663230842" + descriptor = "(B)I", + garbageValue = "-11" ) - static void method2021() { - if (class390.field3656 != null) { - Client.field369 = Client.cycle; - class390.field3656.method1964(); - - for (int var0 = 0; var0 < Client.players.length; ++var0) { - if (Client.players[var0] != null) { - class390.field3656.method1963((Client.players[var0].x >> 7) + UrlRequester.baseX, (Client.players[var0].y >> 7) + class47.baseY); - } - } - } - - } + @Export("rsOrdinal") + int rsOrdinal(); } \ No newline at end of file diff --git a/osrs/src/main/java/class384.java b/osrs/src/main/java/class384.java index c04505e0f..5684a98bd 100644 --- a/osrs/src/main/java/class384.java +++ b/osrs/src/main/java/class384.java @@ -2,40 +2,36 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("oq") +import java.util.HashMap; + +@ObfuscatedName("op") public class class384 { - @ObfuscatedName("au") - @Export("cp1252AsciiExtension") - public static final char[] cp1252AsciiExtension; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("ItemDefinition_archive") - public static AbstractArchive ItemDefinition_archive; + @ObfuscatedName("ah") + @Export("clearLoginScreen") + static boolean clearLoginScreen; static { - cp1252AsciiExtension = new char[]{'\u20ac', '\u0000', '\u201a', '\u0192', '\u201e', '\u2026', '\u2020', '\u2021', '\u02c6', '\u2030', '\u0160', '\u2039', '\u0152', '\u0000', '\u017d', '\u0000', '\u0000', '\u2018', '\u2019', '\u201c', '\u201d', '\u2022', '\u2013', '\u2014', '\u02dc', '\u2122', '\u0161', '\u203a', '\u0153', '\u0000', '\u017e', '\u0178'}; + new HashMap(); } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Lhb;", - garbageValue = "1314651935" + descriptor = "(DDII)[D", + garbageValue = "-1133509454" ) - public static VarbitComposition method2022(int var0) { - VarbitComposition var1 = (VarbitComposition)VarbitComposition.VarbitDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; - } else { - byte[] var2 = VarbitComposition.VarbitDefinition_archive.takeFile(14, var0); - var1 = new VarbitComposition(); - if (var2 != null) { - var1.decode(new Buffer(var2)); - } + public static double[] method1990(double var0, double var2, int var4) { + int var5 = var4 * 2 + 1; + double[] var6 = new double[var5]; + int var7 = -var4; - VarbitComposition.VarbitDefinition_cached.put(var1, (long)var0); - return var1; + for (int var8 = 0; var7 <= var4; ++var8) { + double var15 = ((double)var7 - var0) / var2; + double var13 = Math.exp(-var15 * var15 / 2.0D) / Math.sqrt(6.283185307179586D); + double var11 = var13 / var2; + var6[var8] = var11; + ++var7; } + + return var6; } } \ No newline at end of file diff --git a/osrs/src/main/java/class385.java b/osrs/src/main/java/class385.java deleted file mode 100644 index 82db62e12..000000000 --- a/osrs/src/main/java/class385.java +++ /dev/null @@ -1,143 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ov") -public class class385 { - @ObfuscatedName("au") - static char[] field3649; - @ObfuscatedName("ae") - static char[] field3647; - @ObfuscatedName("ao") - static char[] field3648; - @ObfuscatedName("at") - static int[] field3650; - @ObfuscatedName("fu") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive6") - static Archive archive6; - - static { - field3649 = new char[64]; - - int var0; - for (var0 = 0; var0 < 26; ++var0) { - field3649[var0] = (char)(var0 + 65); - } - - for (var0 = 26; var0 < 52; ++var0) { - field3649[var0] = (char)(var0 + 97 - 26); - } - - for (var0 = 52; var0 < 62; ++var0) { - field3649[var0] = (char)(var0 + 48 - 52); - } - - field3649[62] = '+'; - field3649[63] = '/'; - field3647 = new char[64]; - - for (var0 = 0; var0 < 26; ++var0) { - field3647[var0] = (char)(var0 + 65); - } - - for (var0 = 26; var0 < 52; ++var0) { - field3647[var0] = (char)(var0 + 97 - 26); - } - - for (var0 = 52; var0 < 62; ++var0) { - field3647[var0] = (char)(var0 + 48 - 52); - } - - field3647[62] = '*'; - field3647[63] = '-'; - field3648 = new char[64]; - - for (var0 = 0; var0 < 26; ++var0) { - field3648[var0] = (char)(var0 + 65); - } - - for (var0 = 26; var0 < 52; ++var0) { - field3648[var0] = (char)(var0 + 97 - 26); - } - - for (var0 = 52; var0 < 62; ++var0) { - field3648[var0] = (char)(var0 + 48 - 52); - } - - field3648[62] = '-'; - field3648[63] = '_'; - field3650 = new int[128]; - - for (var0 = 0; var0 < field3650.length; ++var0) { - field3650[var0] = -1; - } - - for (var0 = 65; var0 <= 90; ++var0) { - field3650[var0] = var0 - 65; - } - - for (var0 = 97; var0 <= 122; ++var0) { - field3650[var0] = var0 - 97 + 26; - } - - for (var0 = 48; var0 <= 57; ++var0) { - field3650[var0] = var0 - 48 + 52; - } - - int[] var2 = field3650; - field3650[43] = 62; - var2[42] = 62; - int[] var1 = field3650; - field3650[47] = 63; - var1[45] = 63; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/CharSequence;I)Ljava/lang/String;", - garbageValue = "1294395846" - ) - public static String method2023(CharSequence var0) { - String var1 = class211.base37DecodeLong(class134.method739(var0)); - if (var1 == null) { - var1 = ""; - } - - return var1; - } - - @ObfuscatedName("lg") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;IIIIB)V", - garbageValue = "12" - ) - @Export("insertMenuItemNoShift") - public static final void insertMenuItemNoShift(String var0, String var1, int var2, int var3, int var4, int var5) { - UserComparator8.insertMenuItem(var0, var1, var2, var3, var4, var5, -1, false); - } - - @ObfuscatedName("mw") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "189486485" - ) - @Export("runIntfCloseListeners") - static final void runIntfCloseListeners(int var0, int var1) { - if (ModeWhere.loadInterface(var0)) { - class212.runComponentCloseListeners(PacketBufferNode.Widget_interfaceComponents[var0], var1); - } - } - - @ObfuscatedName("nl") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-85" - ) - static final void method2026(int var0) { - var0 = Math.min(Math.max(var0, 0), 127); - class449.clientPreferences.setCurrentSoundEffectVolume(var0); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class386.java b/osrs/src/main/java/class386.java deleted file mode 100644 index f201378ff..000000000 --- a/osrs/src/main/java/class386.java +++ /dev/null @@ -1,33 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.regex.Pattern; - - -@ObfuscatedName("op") -public final class class386 { - static { - Pattern.compile("^\\D*(\\d+)\\D*$"); - } - - @ObfuscatedName("no") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "289831668" - ) - static final void method2027(int var0, int var1) { - if (Client.currentClanChannels[var0] != null) { - if (var1 >= 0 && var1 < Client.currentClanChannels[var0].method859()) { - ClanChannelMember var2 = (ClanChannelMember)Client.currentClanChannels[var0].members.get(var1); - if (var2.rank == -1) { - PacketBufferNode var3 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.AFFINEDCLANSETTINGS_ADDBANNED_FROMCHANNEL, Client.packetWriter.isaacCipher); - var3.packetBuffer.writeByte(3 + AbstractSocket.stringCp1252NullTerminatedByteSize(var2.username.getName())); - var3.packetBuffer.writeByte(var0); - var3.packetBuffer.writeShort(var1); - var3.packetBuffer.writeStringCp1252NullTerminated(var2.username.getName()); - Client.packetWriter.addNode(var3); - } - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class387.java b/osrs/src/main/java/class387.java deleted file mode 100644 index 6c99c84c6..000000000 --- a/osrs/src/main/java/class387.java +++ /dev/null @@ -1,159 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("or") -public class class387 { - @ObfuscatedName("gw") - @ObfuscatedSignature( - descriptor = "Lrr;" - ) - static GraphicsDefaults field3652; - - @ObfuscatedName("ha") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "0" - ) - @Export("getLoginError") - static void getLoginError(int var0) { - int var1 = class466.method2350(); - if (var0 == -3) { - class318.setLoginResponseString("Connection timed out.", "Please try using a different world.", ""); - } else if (var0 == -2) { - class318.setLoginResponseString("Error connecting to server.", "Please try using a different world.", ""); - } else if (var0 == -1) { - class318.setLoginResponseString("No response from server.", "Please try using a different world.", ""); - } else if (var0 == 3) { - PcmPlayer.method212(3); - Login.field751 = 1; - } else if (var0 == 4) { - PcmPlayer.method212(14); - Login.field750 = 0; - } else if (var0 == 5) { - Login.field751 = 2; - class318.setLoginResponseString("Either your account is still logged in, or the last", "world you were using has become unavailable.", "Please try again later."); - } else if (var0 == 68) { - if (!Client.reloadJS5) { - Client.reloadJS5 = true; - class415.reloadJS5(); - return; - } - - class318.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); - } else if (!Client.onMobile && var0 == 6) { - class318.setLoginResponseString("RuneScape has been updated!", "Please reload this page.", ""); - } else if (var0 == 7) { - class318.setLoginResponseString("This world is full.", "Please use a different world.", ""); - } else if (var0 == 8) { - class318.setLoginResponseString("Unable to connect.", "Login server offline.", ""); - } else if (var0 == 9) { - class318.setLoginResponseString("Login limit exceeded.", "Too many connections from your address.", ""); - } else if (var0 == 10) { - class318.setLoginResponseString("Unable to connect.", "Bad session id.", ""); - } else if (var0 == 11) { - class318.setLoginResponseString("We suspect someone knows your password.", "Press 'change your password' on front page.", ""); - } else if (var0 == 12) { - class318.setLoginResponseString("You need a members account to login to this world.", "Please subscribe, or use a different world.", ""); - } else if (var0 == 13) { - class318.setLoginResponseString("Could not complete login.", "Please try using a different world.", ""); - } else if (var0 == 14) { - class318.setLoginResponseString("The server is being updated.", "Please wait 1 minute and try again.", ""); - } else if (var0 == 16) { - class318.setLoginResponseString("Too many login attempts.", "You can use the Jagex Launcher to continue playing.", "Press the button below to download it now."); - PcmPlayer.method212(33); - } else if (var0 == 17) { - class318.setLoginResponseString("To access this free world, log into a", "members world and move your character", "to a non-members area."); - } else if (var0 == 18) { - PcmPlayer.method212(14); - Login.field750 = 1; - } else if (var0 == 19) { - class318.setLoginResponseString("This world is running a closed Beta.", "Sorry invited players only.", "Please use a different world."); - } else if (var0 == 20) { - class318.setLoginResponseString("Invalid loginserver requested.", "Please try using a different world.", ""); - } else if (var0 == 22) { - class318.setLoginResponseString("Malformed login packet.", "Please try again.", ""); - } else if (var0 == 23) { - class318.setLoginResponseString("No reply from loginserver.", "Please wait 1 minute and try again.", ""); - } else if (var0 == 24) { - class318.setLoginResponseString("Error loading your profile.", "Please contact customer support.", ""); - } else if (var0 == 25) { - class318.setLoginResponseString("Unexpected loginserver response.", "Please try using a different world.", ""); - } else if (var0 == 26) { - class318.setLoginResponseString("This computers address has been blocked", "as it was used to break our rules.", ""); - } else if (var0 == 27) { - class318.setLoginResponseString("", "Service unavailable.", ""); - } else if (var0 == 31) { - class318.setLoginResponseString("Your account must have a displayname set", "in order to play the game. Please set it", "via the website, or the main game."); - } else if (var0 == 32) { - PcmPlayer.method212(14); - Login.field750 = 2; - } else if (var0 == 37) { - class318.setLoginResponseString("Your account is currently inaccessible.", "Please try again in a few minutes.", ""); - } else if (var0 == 38) { - class318.setLoginResponseString("You need to vote to play!", "Visit runescape.com and vote,", "and then come back here!"); - } else if (var0 == 55) { - PcmPlayer.method212(8); - } else { - if (var0 == 56) { - class318.setLoginResponseString("Enter the 6-digit code generated by your", "authenticator app.", ""); - MusicSong.updateGameState(11); - return; - } - - if (var0 == 57) { - class318.setLoginResponseString("The code you entered was incorrect.", "Please try again.", ""); - MusicSong.updateGameState(11); - return; - } - - if (var0 == 61) { - class318.setLoginResponseString("", "Please enter your date of birth (DD/MM/YYYY)", ""); - PcmPlayer.method212(7); - } else { - if (var0 == 62) { - MusicSong.updateGameState(10); - PcmPlayer.method212(9); - class318.setLoginResponseString("Login attempt timed out.", "Please try again.", ""); - return; - } - - if (var0 == 63) { - MusicSong.updateGameState(10); - PcmPlayer.method212(9); - class318.setLoginResponseString("You were signed out.", "Please sign in again.", ""); - return; - } - - if (var0 == 65 || var0 == 67) { - MusicSong.updateGameState(10); - PcmPlayer.method212(9); - class318.setLoginResponseString("Failed to login.", "Please try again.", ""); - return; - } - - if (var0 == 71) { - MusicSong.updateGameState(10); - PcmPlayer.method212(7); - class318.setLoginResponseString("There was a problem updating your DOB.", "Please try again later. If the problem ", "persists, please contact Jagex Support."); - } else if (var0 == 73) { - MusicSong.updateGameState(10); - PcmPlayer.method212(6); - class318.setLoginResponseString("Your date of birth information is waiting", "to be reviewed by our staff.", "It will be processed shortly."); - } else if (var0 == 72) { - MusicSong.updateGameState(10); - PcmPlayer.method212(32); - } else { - class318.setLoginResponseString("Unexpected server response", "Please try using a different world.", ""); - } - } - } - - MusicSong.updateGameState(10); - boolean var2 = var1 != class466.method2350(); - if (!var2 && Client.field648.method2616()) { - PcmPlayer.method212(9); - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class388.java b/osrs/src/main/java/class388.java deleted file mode 100644 index f32f6f6f7..000000000 --- a/osrs/src/main/java/class388.java +++ /dev/null @@ -1,48 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("oo") -public final class class388 { - @ObfuscatedName("au") - @Export("base37Table") - public static final char[] base37Table; - @ObfuscatedName("ae") - static long[] field3654; - @ObfuscatedName("fk") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - static Archive field3655; - - static { - base37Table = new char[]{'_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; - field3654 = new long[12]; - - for (int var0 = 0; var0 < field3654.length; ++var0) { - field3654[var0] = (long)Math.pow(37.0D, (double)var0); - } - - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-27" - ) - static void method2029() { - for (ObjectSound var0 = (ObjectSound)ObjectSound.objectSounds.last(); var0 != null; var0 = (ObjectSound)ObjectSound.objectSounds.previous()) { - if (var0.stream1 != null) { - class162.pcmStreamMixer.removeSubStream(var0.stream1); - var0.stream1 = null; - } - - if (var0.stream2 != null) { - class162.pcmStreamMixer.removeSubStream(var0.stream2); - var0.stream2 = null; - } - } - - ObjectSound.objectSounds.clear(); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class390.java b/osrs/src/main/java/class390.java deleted file mode 100644 index d4b2a5968..000000000 --- a/osrs/src/main/java/class390.java +++ /dev/null @@ -1,36 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ps") -public final class class390 { - @ObfuscatedName("wq") - @ObfuscatedSignature( - descriptor = "Lod;" - ) - public static class369 field3656; - @ObfuscatedName("au") - final Object field3658; - @ObfuscatedName("ae") - int field3657; - - class390(Object var1, int var2) { - this.field3658 = var1; - this.field3657 = var2; - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(Lmi;I)I", - garbageValue = "-490718469" - ) - static int method2030(Widget var0) { - if (var0.type != 11) { - Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize - 1] = ""; - return 1; - } else { - String var1 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = var0.method1836(var1); - return 1; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class391.java b/osrs/src/main/java/class391.java deleted file mode 100644 index 872a63645..000000000 --- a/osrs/src/main/java/class391.java +++ /dev/null @@ -1,55 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ConcurrentModificationException; -import java.util.Iterator; -import java.util.NoSuchElementException; - -@ObfuscatedName("pr") -public class class391 implements Iterator { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lpa;" - ) - class392 field3661; - @ObfuscatedName("ae") - int field3659; - @ObfuscatedName("ao") - int field3660; - - @ObfuscatedSignature( - descriptor = "(Lpa;)V" - ) - class391(class392 var1) { - this.field3659 = 0; - this.field3660 = this.field3661.field3663; - this.field3661 = var1; - } - - @Export("hasNext") - @ObfuscatedName("hasNext") - public boolean hasNext() { - return this.field3659 < this.field3661.field3664; - } - - @Export("next") - @ObfuscatedName("next") - public Object next() { - if (this.field3661.field3663 != this.field3660) { - throw new ConcurrentModificationException(); - } else if (this.field3659 < this.field3661.field3664) { - Object var1 = this.field3661.field3666[this.field3659].field3658; - ++this.field3659; - return var1; - } else { - throw new NoSuchElementException(); - } - } - - @Export("remove") - @ObfuscatedName("remove") - public void remove() { - throw new UnsupportedOperationException(); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class392.java b/osrs/src/main/java/class392.java deleted file mode 100644 index c08179fe1..000000000 --- a/osrs/src/main/java/class392.java +++ /dev/null @@ -1,229 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.*; - -@ObfuscatedName("pa") -public class class392 extends AbstractQueue { - @ObfuscatedName("wh") - @ObfuscatedSignature( - descriptor = "Lno;" - ) - @Export("grandExchangeEvents") - static GrandExchangeEvents grandExchangeEvents; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "[Lps;" - ) - class390[] field3666; - @ObfuscatedName("ae") - Map field3665; - @ObfuscatedName("ao") - int field3664; - @ObfuscatedName("at") - final Comparator field3667; - @ObfuscatedName("ac") - int field3663; - - public class392(int var1, Comparator var2) { - this.field3663 = 0; - this.field3666 = new class390[var1]; - this.field3665 = new HashMap(); - this.field3667 = var2; - } - - public class392(int var1) { - this(var1, (Comparator)null); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "0" - ) - void method2031() { - int var1 = (this.field3666.length << 1) + 1; - this.field3666 = (class390[])((class390[])Arrays.copyOf(this.field3666, var1)); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-119" - ) - void method2032(int var1) { - class390 var2; - int var3; - for (var2 = this.field3666[var1]; var1 > 0; var1 = var3) { - var3 = var1 - 1 >>> 1; - class390 var4 = this.field3666[var3]; - if (this.field3667 != null) { - if (this.field3667.compare(var2.field3658, var4.field3658) >= 0) { - break; - } - } else if (((Comparable)var2.field3658).compareTo(var4.field3658) >= 0) { - break; - } - - this.field3666[var1] = var4; - this.field3666[var1].field3657 = var1; - } - - this.field3666[var1] = var2; - this.field3666[var1].field3657 = var1; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-466589419" - ) - void method2033(int var1) { - class390 var2 = this.field3666[var1]; - - int var8; - for (int var3 = this.field3664 >>> 1; var1 < var3; var1 = var8) { - int var4 = (var1 << 1) + 1; - class390 var5 = this.field3666[var4]; - int var6 = (var1 << 1) + 2; - class390 var7 = this.field3666[var6]; - if (this.field3667 != null) { - if (var6 < this.field3664 && this.field3667.compare(var5.field3658, var7.field3658) > 0) { - var8 = var6; - } else { - var8 = var4; - } - } else if (var6 < this.field3664 && ((Comparable)var5.field3658).compareTo(var7.field3658) > 0) { - var8 = var6; - } else { - var8 = var4; - } - - if (this.field3667 != null) { - if (this.field3667.compare(var2.field3658, this.field3666[var8].field3658) <= 0) { - break; - } - } else if (((Comparable)var2.field3658).compareTo(this.field3666[var8].field3658) <= 0) { - break; - } - - this.field3666[var1] = this.field3666[var8]; - this.field3666[var1].field3657 = var1; - } - - this.field3666[var1] = var2; - this.field3666[var1].field3657 = var1; - } - - @Export("remove") - @ObfuscatedName("remove") - public boolean remove(Object var1) { - class390 var2 = (class390)this.field3665.remove(var1); - if (var2 == null) { - return false; - } else { - ++this.field3663; - --this.field3664; - if (this.field3664 == var2.field3657) { - this.field3666[this.field3664] = null; - return true; - } else { - class390 var3 = this.field3666[this.field3664]; - this.field3666[this.field3664] = null; - this.field3666[var2.field3657] = var3; - this.field3666[var2.field3657].field3657 = var2.field3657; - this.method2033(var2.field3657); - if (var3 == this.field3666[var2.field3657]) { - this.method2032(var2.field3657); - } - - return true; - } - } - } - - @Export("peek") - @ObfuscatedName("peek") - public Object peek() { - return this.field3664 == 0 ? null : this.field3666[0].field3658; - } - - @Export("size") - @ObfuscatedName("size") - public int size() { - return this.field3664; - } - - public boolean offer(Object var1) { - if (this.field3665.containsKey(var1)) { - throw new IllegalArgumentException(""); - } else { - ++this.field3663; - int var2 = this.field3664; - if (var2 >= this.field3666.length) { - this.method2031(); - } - - ++this.field3664; - if (var2 == 0) { - this.field3666[0] = new class390(var1, 0); - this.field3665.put(var1, this.field3666[0]); - } else { - this.field3666[var2] = new class390(var1, var2); - this.field3665.put(var1, this.field3666[var2]); - this.method2032(var2); - } - - return true; - } - } - - @Export("poll") - @ObfuscatedName("poll") - public Object poll() { - if (this.field3664 == 0) { - return null; - } else { - ++this.field3663; - Object var1 = this.field3666[0].field3658; - this.field3665.remove(var1); - --this.field3664; - if (this.field3664 == 0) { - this.field3666[this.field3664] = null; - } else { - this.field3666[0] = this.field3666[this.field3664]; - this.field3666[0].field3657 = 0; - this.field3666[this.field3664] = null; - this.method2033(0); - } - - return var1; - } - } - - @Export("contains") - @ObfuscatedName("contains") - public boolean contains(Object var1) { - return this.field3665.containsKey(var1); - } - - @Export("toArray") - @ObfuscatedName("toArray") - public Object[] toArray() { - Object[] var1 = super.toArray(); - if (this.field3667 != null) { - Arrays.sort(var1, this.field3667); - } else { - Arrays.sort(var1); - } - - return var1; - } - - @Export("iterator") - @ObfuscatedName("iterator") - public Iterator iterator() { - return new class391(this); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class394.java b/osrs/src/main/java/class394.java deleted file mode 100644 index 1e83b98a2..000000000 --- a/osrs/src/main/java/class394.java +++ /dev/null @@ -1,799 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ArrayList; - -@ObfuscatedName("pj") -public class class394 { - @ObfuscatedName("ab") - int field3669; - @ObfuscatedName("ag") - int field3670; - @ObfuscatedName("am") - int field3672; - @ObfuscatedName("ax") - int field3675; - @ObfuscatedName("ah") - int field3671; - @ObfuscatedName("as") - boolean field3668; - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "Lpk;" - ) - AbstractFont field3677; - @ObfuscatedName("aj") - ArrayList field3676; - @ObfuscatedName("av") - int field3673; - @ObfuscatedName("aw") - int field3674; - - public class394() { - this.field3669 = Integer.MAX_VALUE; - this.field3670 = Integer.MAX_VALUE; - this.field3672 = 0; - this.field3675 = 0; - this.field3671 = 0; - this.field3668 = true; - this.field3676 = new ArrayList(); - this.field3673 = 0; - this.field3674 = 0; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)Lpz;", - garbageValue = "425318611" - ) - public class396 method2036(int var1) { - return (class396)this.field3676.get(var1); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)Lpz;", - garbageValue = "1830163512" - ) - class396 method2037() { - return this.field3676.size() == 0 ? null : (class396)this.field3676.get(this.field3676.size() - 1); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1992869018" - ) - public boolean method2038() { - return this.field3676.size() == 0; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-675218118" - ) - boolean method2039() { - return this.field3670 > 1; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1688510031" - ) - public int method2040() { - return this.field3676.size(); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "163147996" - ) - public String method2041() { - if (this.method2038()) { - return ""; - } else { - StringBuilder var1 = new StringBuilder(this.method2040()); - - for (int var2 = 0; var2 < this.method2040(); ++var2) { - class396 var3 = this.method2036(var2); - var1.append(var3.field3680); - } - - return var1.toString(); - } - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-32" - ) - public void method2042(int var1) { - if (this.field3677 != null && var1 < this.field3677.ascent * 2) { - var1 = Integer.MAX_VALUE; - } - - if (this.field3669 != var1) { - this.field3669 = var1; - this.method2071(); - } - - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "-1949241738" - ) - public void method2043(int var1) { - if (this.field3670 != var1) { - this.field3670 = var1; - this.method2071(); - } - - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(IB)V", - garbageValue = "-38" - ) - public void method2044(int var1) { - if (this.field3674 != var1) { - this.field3674 = var1; - this.method2071(); - } - - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(Lpk;I)V", - garbageValue = "1103184746" - ) - public void method2045(AbstractFont var1) { - if (var1 != this.field3677) { - this.field3677 = var1; - if (this.field3677 != null) { - if (this.field3671 == 0) { - this.field3671 = this.field3677.ascent; - } - - if (!this.method2038()) { - this.method2071(); - } - } - } - - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1772052418" - ) - public void method2046(int var1) { - if (this.field3673 != var1) { - this.field3673 = var1; - this.method2071(); - } - - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(III)Z", - garbageValue = "-1456021058" - ) - public boolean method2047(int var1, int var2) { - if (this.field3672 != var1 || var2 != this.field3675) { - this.field3672 = var1; - this.field3675 = var2; - this.method2071(); - } - - return true; - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(II)V", - garbageValue = "1080029038" - ) - public void method2048(int var1) { - if (this.field3671 != var1) { - this.field3671 = var1; - this.method2071(); - } - - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(III)Lpl;", - garbageValue = "-1114977482" - ) - public class398 method2049(int var1, int var2) { - if (var2 == var1) { - return new class398(this, 0, 0); - } else if (var1 <= this.field3676.size() && var2 <= this.field3676.size()) { - return var2 < var1 ? new class398(this, var2, var1) : new class398(this, var1, var2); - } else { - return new class398(this, 0, 0); - } - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(CIII)Lpu;", - garbageValue = "-803390242" - ) - public class395 method2050(char var1, int var2, int var3) { - return this.method2051(Character.toString(var1), var2, var3); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;III)Lpu;", - garbageValue = "-522015714" - ) - public class395 method2051(String var1, int var2, int var3) { - if (var3 == 0) { - var3 = Integer.MAX_VALUE; - } - - int var4 = var2; - if (this.field3676.size() >= var3) { - this.method2072(var2, var2); - return new class395(var2, true); - } else { - this.field3676.ensureCapacity(this.field3676.size() + var1.length()); - - for (int var5 = 0; var5 < var1.length() && this.field3676.size() < var3; ++var5) { - class396 var6 = new class396(); - var6.field3680 = var1.charAt(var5); - this.field3676.add(var4, var6); - ++var4; - } - - this.method2072(var2, var4); - if (this.field3670 != 0 && this.method2063() > this.field3670) { - while (var4 != var2) { - --var4; - this.method2056(var4); - if (this.method2063() <= this.field3670) { - break; - } - } - - return new class395(var4, true); - } else { - return new class395(var4, false); - } - } - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;II)Lpu;", - garbageValue = "-584459098" - ) - class395 method2052(String var1, int var2) { - return this.method2051(var1, this.field3676.size(), var2); - } - - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)Lpu;", - garbageValue = "67" - ) - public class395 method2054(String var1) { - this.method2055(); - return this.method2052(var1, 0); - } - - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1865432397" - ) - void method2055() { - this.field3676.clear(); - } - - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "2" - ) - public int method2056(int var1) { - return this.method2057(var1, var1 + 1); - } - - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "(III)I", - garbageValue = "1605170962" - ) - public int method2057(int var1, int var2) { - int var3; - if (var2 < var1) { - var3 = var2; - var2 = var1; - var1 = var3; - } - - this.field3676.subList(var1, var2).clear(); - var3 = var1; - if (this.method2039() && this.field3673 == 1) { - while (var3 > 0) { - --var3; - char var4 = ((class396)this.field3676.get(var3)).field3680; - if (var4 == ' ' || var4 == '\t') { - break; - } - } - } - - this.method2072(var3, var2); - return var1; - } - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(IIS)I", - garbageValue = "194" - ) - public int method2058(int var1, int var2) { - if (this.field3677 == null) { - return 0; - } else if (this.method2039() && var1 > this.field3669) { - return this.field3676.size(); - } else { - if (!this.field3676.isEmpty()) { - for (int var3 = 0; var3 < this.field3676.size(); ++var3) { - class396 var4 = (class396)this.field3676.get(var3); - if (var2 <= var4.field3682 + this.method2062()) { - if (var2 < var4.field3682) { - break; - } - - if (var1 < var4.field3681) { - return var3 > 0 ? var3 - 1 : 0; - } - - if (1 + var3 != this.field3676.size() && ((class396)this.field3676.get(1 + var3)).field3682 != var4.field3682) { - int var5 = this.method2074((class396)this.field3676.get(var3), false); - if (var1 < var5 + var4.field3681) { - return var3; - } - - if (var2 <= var4.field3682 + this.method2062()) { - return var3 + 1; - } - } - } - } - - class396 var6 = (class396)this.field3676.get(this.field3676.size() - 1); - if (var1 >= var6.field3681 && var1 <= var6.field3681 + this.method2064() && var2 >= var6.field3682 && var2 <= var6.field3682 + this.method2062()) { - return this.field3676.size() - 1; - } - } - - return this.field3676.size(); - } - } - - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "(IIS)I", - garbageValue = "139" - ) - public int method2059(int var1, int var2) { - if (this.field3677 != null && !this.method2038() && var1 <= this.field3676.size()) { - byte var3; - if (var2 > 0) { - var3 = 1; - } else { - var3 = -1; - var2 = -var2; - } - - int var4 = 0; - int var5 = 0; - if (var1 > 0) { - class396 var6 = (class396)this.field3676.get(var1 - 1); - var4 = var6.field3681 + this.method2073(var1 - 1); - var5 = var6.field3682; - } else if (var3 == -1 && var1 == 0) { - return 0; - } - - int var14 = 16777215; - int var7 = 0; - int var8 = var1; - int var9 = 16777215; - int var10 = var3 == 1 ? this.field3676.size() + 1 : 0; - - for (int var11 = var3 + var1; var10 != var11; var11 += var3) { - class396 var12 = (class396)this.field3676.get(var11 - 1); - if (var5 != var12.field3682) { - ++var7; - var5 = var12.field3682; - if (var7 > var2) { - return var8; - } - } - - if (var7 == var2) { - int var13 = Math.abs(var12.field3681 + this.method2073(var11 - 1) - var4); - if (var13 >= var9) { - return var8; - } - - var8 = var11; - var9 = var13; - } - } - - if (var3 == 1) { - return this.field3676.size(); - } else { - if (var5 != 0) { - ++var7; - } - - return var9 == 16777215 || var7 == var2 && var4 < var9 ? 0 : var8; - } - } else { - return 0; - } - } - - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-540646519" - ) - public int method2060() { - if (!this.field3676.isEmpty() && this.method2063() == 1) { - return this.field3676.isEmpty() ? 0 : ((class396)this.field3676.get(this.field3676.size() - 1)).field3681 + this.method2064(); - } else { - int var1 = -1; - int var2 = 0; - - for (int var3 = this.field3676.size() - 1; var3 >= 0; --var3) { - class396 var4 = (class396)this.field3676.get(var3); - if (var1 != var4.field3682) { - int var5 = this.method2074(var4, false) + var4.field3681; - var2 = Math.max(var5, var2); - var1 = var4.field3682; - } - } - - return var2; - } - } - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "872153542" - ) - public int method2061() { - return this.method2038() ? 0 : this.field3677.ascent + ((class396)this.field3676.get(this.field3676.size() - 1)).field3682; - } - - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1220139043" - ) - public int method2062() { - return this.field3671; - } - - @ObfuscatedName("bh") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "106" - ) - public int method2063() { - return this.method2061() / this.field3677.ascent; - } - - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1975027491" - ) - int method2064() { - return this.method2038() ? 0 : this.method2074((class396)this.field3676.get(this.field3676.size() - 1), false); - } - - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "103" - ) - public int method2065() { - return this.field3669; - } - - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "2030708038" - ) - public int method2066() { - return this.field3670; - } - - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "106" - ) - public int method2067() { - return this.field3673; - } - - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "326799918" - ) - public int method2068() { - return this.field3674; - } - - @ObfuscatedName("by") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "0" - ) - public int method2069(int var1) { - switch(this.field3672) { - case 0: - return 0; - case 1: - return var1 / 2; - case 2: - return var1; - default: - return 0; - } - } - - @ObfuscatedName("bs") - @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "59" - ) - public int method2070(int var1) { - switch(this.field3675) { - case 0: - return 0; - case 1: - return var1 / 2; - case 2: - return var1; - default: - return 0; - } - } - - @ObfuscatedName("bm") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2042432438" - ) - void method2071() { - this.method2072(0, this.field3676.size()); - } - - @ObfuscatedName("bf") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "2146351228" - ) - void method2072(int var1, int var2) { - if (!this.method2038() && this.field3677 != null) { - class485 var3 = this.method2075(var1, var2); - boolean var4 = (Integer)var3.field4049 == 0 && (Integer)var3.field4048 == this.field3676.size(); - int var5 = (Integer)var3.field4049; - int var6 = 0; - int var7 = var4 ? 0 : ((class396)this.field3676.get((Integer)var3.field4049)).field3682 * 778585567 * -122833377; - int var8 = 0; - - int var9; - for (var9 = (Integer)var3.field4049; var9 <= (Integer)var3.field4048; ++var9) { - boolean var10 = var9 >= this.field3676.size(); - class396 var11 = (class396)this.field3676.get(!var10 ? var9 : this.field3676.size() - 1); - int var12 = !var10 ? this.method2074(var11, false) : 0; - boolean var13 = !var10 && var11.field3680 == '\n'; - boolean var14 = !var10 && this.method2039() && var12 + var6 > this.field3669; - if (var13 || var14 || var10) { - int var15 = var9; - int var16 = 0; - int var17; - int var18; - class396 var19; - if (var14) { - var17 = 0; - if (this.field3673 == 1) { - for (var18 = var9; var18 > var5; --var18) { - var19 = (class396)this.field3676.get(var18); - var17 += var18 < var15 ? this.method2074(var19, false) : 0; - if (var19.field3680 == ' ' || var19.field3680 == '\n') { - var15 = var18; - var6 -= var17; - var16 = var17; - break; - } - } - } - } - - var17 = -this.method2069(var6); - - for (var18 = var5; var18 < var15; ++var18) { - var19 = (class396)this.field3676.get(var18); - int var20 = this.method2074(var19, false); - var19.field3681 = var17; - var19.field3682 = var7; - var17 += var20; - } - - var5 = var15; - var6 = var16; - var7 += this.method2062(); - ++var8; - } - - var6 += !var10 ? var12 : 0; - } - - if (this.field3675 != 0 && var4) { - var9 = var8 * this.method2062(); - int var23 = this.method2070(var9); - - for (int var21 = 0; var21 < this.field3676.size(); ++var21) { - class396 var22 = (class396)this.field3676.get(var21); - var22.field3682 -= var23; - } - } - - } - } - - @ObfuscatedName("bq") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "369306860" - ) - int method2073(int var1) { - return var1 < this.field3676.size() ? this.method2074((class396)this.field3676.get(var1), false) : 0; - } - - @ObfuscatedName("ba") - @ObfuscatedSignature( - descriptor = "(Lpz;ZI)I", - garbageValue = "1524622539" - ) - int method2074(class396 var1, boolean var2) { - if (var1.field3680 == '\n') { - return 0; - } else if (this.field3674 == 0) { - int var3 = this.field3677.advances[var1.field3680]; - if (var3 == 0) { - return var1.field3680 == '\t' ? this.field3677.advances[32] * 3 : this.field3677.advances[32]; - } else { - return var3; - } - } else { - return this.field3677.advances[42]; - } - } - - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "(IIB)Lss;", - garbageValue = "0" - ) - class485 method2075(int var1, int var2) { - int var3 = Math.min(var1, var2); - int var4 = Math.max(var1, var2); - int var5 = this.field3676.size(); - if (var3 == 0 && var4 == var5) { - return new class485(0, var5); - } else { - int var6 = this.method2076(var3, false); - int var7 = this.method2077(var4, false); - int var8; - switch(this.field3675) { - case 0: - if (this.field3672 == 0) { - return new class485(var6, var5); - } - - var8 = this.method2076(var3, true); - return new class485(var8, var5); - case 1: - return new class485(0, var5); - case 2: - if (this.field3672 == 2) { - return new class485(0, var7); - } - - var8 = this.method2077(var4, true); - return new class485(0, var8); - default: - return new class485(0, var5); - } - } - } - - @ObfuscatedName("bp") - @ObfuscatedSignature( - descriptor = "(IZI)I", - garbageValue = "-1605508090" - ) - int method2076(int var1, boolean var2) { - if (var1 < this.field3676.size()) { - int var3 = ((class396)this.field3676.get(var1)).field3682; - - for (int var4 = var1; var4 > 0; --var4) { - if (((class396)this.field3676.get(var4 - 1)).field3682 < var3) { - if (!var2) { - return var4; - } - - var2 = false; - var3 = ((class396)this.field3676.get(var4 - 1)).field3682; - } - } - } - - return 0; - } - - @ObfuscatedName("bu") - @ObfuscatedSignature( - descriptor = "(IZI)I", - garbageValue = "1892979097" - ) - int method2077(int var1, boolean var2) { - if (var1 < this.field3676.size()) { - int var3 = ((class396)this.field3676.get(var1)).field3682; - - for (int var4 = var1; var4 < this.field3676.size() - 1; ++var4) { - if (((class396)this.field3676.get(var4 + 1)).field3682 > var3) { - if (!var2) { - return var4; - } - - var2 = false; - var3 = ((class396)this.field3676.get(var4 + 1)).field3682; - } - } - } - - return this.field3676.size(); - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1123926703" - ) - public static void method2053() { - HitSplatDefinition.HitSplatDefinition_cached.clear(); - HitSplatDefinition.HitSplatDefinition_cachedSprites.clear(); - HitSplatDefinition.HitSplatDefinition_cachedFonts.clear(); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class395.java b/osrs/src/main/java/class395.java index 2171bbd17..b66913521 100644 --- a/osrs/src/main/java/class395.java +++ b/osrs/src/main/java/class395.java @@ -1,25 +1,56 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pu") -public class class395 { - @ObfuscatedName("au") - int field3678; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; +@ObfuscatedName("pr") +public final class class395 { + @ObfuscatedName("am") + static int field3683; + + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "(IZ)V", - garbageValue = "1" + descriptor = "(I)Ljava/util/Date;", + garbageValue = "-1974311975" ) - class395(int var1, boolean var2) { - this.field3678 = var1; + static Date method2040() throws ParseException { + SimpleDateFormat var0 = new SimpleDateFormat("ddMMyyyyHH", Locale.ENGLISH); + var0.setLenient(false); + StringBuilder var1 = new StringBuilder(); + String[] var2 = Login.field769; + + for (int var3 = 0; var3 < var2.length; ++var3) { + String var4 = var2[var3]; + if (var4 == null) { + UserComparator7.method674(7); + class139.setLoginResponseString("Date not valid.", "Please ensure all characters are populated.", ""); + return null; + } + + var1.append(var4); + } + + var1.append("12"); + return var0.parse(var1.toString()); } - @ObfuscatedName("au") + @ObfuscatedName("je") @ObfuscatedSignature( - descriptor = "(S)I", - garbageValue = "28670" + descriptor = "(III)I", + garbageValue = "-1509651634" ) - public int method2078() { - return this.field3678; + static int method2041(int var0, int var1) { + int var2 = var1 - 334; + if (var2 < 0) { + var2 = 0; + } else if (var2 > 100) { + var2 = 100; + } + + int var3 = (Client.zoomWidth - Client.zoomHeight) * var2 / 100 + Client.zoomHeight; + return var0 * var3 / 256; } } \ No newline at end of file diff --git a/osrs/src/main/java/class396.java b/osrs/src/main/java/class396.java index 879803c26..c3fbdb790 100644 --- a/osrs/src/main/java/class396.java +++ b/osrs/src/main/java/class396.java @@ -1,22 +1,55 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pz") +@ObfuscatedName("pp") public class class396 { - @ObfuscatedName("ag") + @ObfuscatedName("at") + @Export("cp1252AsciiExtension") + static final char[] cp1252AsciiExtension; + @ObfuscatedName("al") + @Export("SpriteBuffer_pixels") + public static byte[][] SpriteBuffer_pixels; + @ObfuscatedName("rs") @ObfuscatedSignature( - descriptor = "Lgo;" + descriptor = "Lis;" ) - static ClanChannel field3679; - @ObfuscatedName("au") - public char field3680; - @ObfuscatedName("ae") - public int field3681; - @ObfuscatedName("ao") - public int field3682; + @Export("mouseWheel") + static class212 mouseWheel; + + static { + cp1252AsciiExtension = new char[]{'\u20ac', '\u0000', '\u201a', '\u0192', '\u201e', '\u2026', '\u2020', '\u2021', '\u02c6', '\u2030', '\u0160', '\u2039', '\u0152', '\u0000', '\u017d', '\u0000', '\u0000', '\u2018', '\u2019', '\u201c', '\u201d', '\u2022', '\u2013', '\u2014', '\u02dc', '\u2122', '\u0161', '\u203a', '\u0153', '\u0000', '\u017e', '\u0178'}; + } + + @ObfuscatedName("mw") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1031282913" + ) + static void method2042() { + for (InterfaceParent var0 = (InterfaceParent)Client.interfaceParents.first(); var0 != null; var0 = (InterfaceParent)Client.interfaceParents.next()) { + int var1 = var0.group; + if (HealthBarDefinition.widgetDefinition.loadInterface(var1)) { + boolean var2 = true; + Widget[] var3 = HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var1]; + + int var4; + for (var4 = 0; var4 < var3.length; ++var4) { + if (var3[var4] != null) { + var2 = var3[var4].isIf3; + break; + } + } + + if (!var2) { + var4 = (int)var0.key; + Widget var5 = HealthBarDefinition.widgetDefinition.method1733(var4); + if (var5 != null) { + class159.invalidateWidget(var5); + } + } + } + } - class396() { - this.field3681 = 0; - this.field3682 = 0; } } \ No newline at end of file diff --git a/osrs/src/main/java/class397.java b/osrs/src/main/java/class397.java new file mode 100644 index 000000000..745dd30bc --- /dev/null +++ b/osrs/src/main/java/class397.java @@ -0,0 +1,89 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("pb") +public class class397 { + @ObfuscatedName("at") + static char[] field3689; + @ObfuscatedName("ah") + static char[] field3687; + @ObfuscatedName("ar") + static char[] field3688; + @ObfuscatedName("ao") + static int[] field3690; + + static { + field3689 = new char[64]; + + int var0; + for (var0 = 0; var0 < 26; ++var0) { + field3689[var0] = (char)(var0 + 65); + } + + for (var0 = 26; var0 < 52; ++var0) { + field3689[var0] = (char)(var0 + 97 - 26); + } + + for (var0 = 52; var0 < 62; ++var0) { + field3689[var0] = (char)(var0 + 48 - 52); + } + + field3689[62] = '+'; + field3689[63] = '/'; + field3687 = new char[64]; + + for (var0 = 0; var0 < 26; ++var0) { + field3687[var0] = (char)(var0 + 65); + } + + for (var0 = 26; var0 < 52; ++var0) { + field3687[var0] = (char)(var0 + 97 - 26); + } + + for (var0 = 52; var0 < 62; ++var0) { + field3687[var0] = (char)(var0 + 48 - 52); + } + + field3687[62] = '*'; + field3687[63] = '-'; + field3688 = new char[64]; + + for (var0 = 0; var0 < 26; ++var0) { + field3688[var0] = (char)(var0 + 65); + } + + for (var0 = 26; var0 < 52; ++var0) { + field3688[var0] = (char)(var0 + 97 - 26); + } + + for (var0 = 52; var0 < 62; ++var0) { + field3688[var0] = (char)(var0 + 48 - 52); + } + + field3688[62] = '-'; + field3688[63] = '_'; + field3690 = new int[128]; + + for (var0 = 0; var0 < field3690.length; ++var0) { + field3690[var0] = -1; + } + + for (var0 = 65; var0 <= 90; ++var0) { + field3690[var0] = var0 - 65; + } + + for (var0 = 97; var0 <= 122; ++var0) { + field3690[var0] = var0 - 97 + 26; + } + + for (var0 = 48; var0 <= 57; ++var0) { + field3690[var0] = var0 - 48 + 52; + } + + int[] var2 = field3690; + field3690[43] = 62; + var2[42] = 62; + int[] var1 = field3690; + field3690[47] = 63; + var1[45] = 63; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class398.java b/osrs/src/main/java/class398.java index 98ef9adb1..0048ba644 100644 --- a/osrs/src/main/java/class398.java +++ b/osrs/src/main/java/class398.java @@ -1,155 +1,11 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("pl") -public class class398 { - @ObfuscatedName("gy") - @Export("playerUUIDLength") - static int playerUUIDLength; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lpj;" - ) - class394 field3708; - @ObfuscatedName("ae") - int field3706; - @ObfuscatedName("ao") - int field3707; - - @ObfuscatedSignature( - descriptor = "(Lpj;II)V" - ) - class398(class394 var1, int var2, int var3) { - this.field3706 = 0; - this.field3707 = 0; - this.field3708 = var1; - this.field3706 = var2; - this.field3707 = var3; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "1" - ) - public String method2113() { - if (this.method2115()) { - return ""; - } else { - StringBuilder var1 = new StringBuilder(this.method2116()); - - for (int var2 = this.field3706; var2 < this.field3707; ++var2) { - class396 var3 = this.field3708.method2036(var2); - var1.append(var3.field3680); - } - - return var1.toString(); - } - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "0" - ) - boolean method2114(int var1) { - return this.field3708.method2068() == 2 || this.field3708.method2068() == 1 && (!this.field3708.field3668 || this.field3707 - 1 != var1); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "181871891" - ) - public boolean method2115() { - return this.field3706 == this.field3707; - } +import java.util.regex.Pattern; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "1557600445" - ) - public int method2116() { - return this.field3707 - this.field3706; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Lpz;I)Z", - garbageValue = "-663348628" - ) - boolean method2117(class396 var1) { - if (this.field3708.field3674 == 2) { - return true; - } else if (this.field3708.field3674 == 0) { - return false; - } else { - return this.field3708.method2037() != var1; - } - } - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-808768391" - ) - int method2118() { - if (this.method2115()) { - return 0; - } else { - class396 var1 = this.field3708.method2036(this.field3707 - 1); - if (var1.field3680 == '\n') { - return 0; - } else if (this.method2117(var1)) { - return this.field3708.field3677.advances[42]; - } else { - int var2 = this.field3708.field3677.advances[var1.field3680]; - if (var2 == 0) { - return var1.field3680 == '\t' ? this.field3708.field3677.advances[32] * 3 : this.field3708.field3677.advances[32]; - } else { - return var2; - } - } - } - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(I)Lss;", - garbageValue = "-873357566" - ) - public class485 method2119() { - if (this.method2115()) { - return new class485(0, 0); - } else { - class396 var1 = this.field3708.method2036(this.field3707 - 1); - return new class485(var1.field3681 + this.method2118(), var1.field3682); - } - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(II)Lpz;", - garbageValue = "602399469" - ) - public class396 method2120(int var1) { - return var1 >= 0 && var1 < this.method2116() ? this.field3708.method2036(this.field3706 + var1) : null; - } - - @ObfuscatedName("mj") - @ObfuscatedSignature( - descriptor = "(IB)Z", - garbageValue = "-46" - ) - static boolean method2121(int var0) { - for (int var1 = 0; var1 < Client.field532; ++var1) { - if (Client.field581[var1] == var0) { - return true; - } - } - - return false; +@ObfuscatedName("pl") +public final class class398 { + static { + Pattern.compile("^\\D*(\\d+)\\D*$"); } } \ No newline at end of file diff --git a/osrs/src/main/java/class399.java b/osrs/src/main/java/class399.java new file mode 100644 index 000000000..90bc50916 --- /dev/null +++ b/osrs/src/main/java/class399.java @@ -0,0 +1,13 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("pz") +public class class399 { + @ObfuscatedName("ro") + @ObfuscatedSignature( + descriptor = "Ltl;" + ) + @Export("Widget_cachedModels") + static class509 Widget_cachedModels; +} \ No newline at end of file diff --git a/osrs/src/main/java/class4.java b/osrs/src/main/java/class4.java index 428505050..1d1493ad7 100644 --- a/osrs/src/main/java/class4.java +++ b/osrs/src/main/java/class4.java @@ -1,381 +1,67 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ac") -public final class class4 { - @ObfuscatedName("gh") - @Export("currentPort") - static int currentPort; +import java.util.Collections; - @ObfuscatedName("au") +@ObfuscatedName("ab") +public final class class4 { + @ObfuscatedName("iy") @ObfuscatedSignature( - descriptor = "(IIILiw;Lis;Z[I[ILij;I)I", - garbageValue = "-375034258" + descriptor = "Lro;" ) - public static int method4(int var0, int var1, int var2, RouteStrategy var3, CollisionMap var4, boolean var5, int[] var6, int[] var7, class216 var8) { - var8.method1128(); - int var9 = var8.method1132(); - int var10 = var8.method1133(); - int[][] var11 = var8.method1135(); - int[][] var12 = var8.method1134(); - int[] var13 = var8.method1136(); - int[] var14 = var8.method1137(); - boolean var15; - int var17; - int var18; - int var23; - int var24; - int var25; - int var26; - int var27; - int var28; - int var29; - int var31; - int var33; - int var42; - if (var2 == 1) { - var17 = var8.method1132(); - var18 = var8.method1133(); - int[][] var19 = var8.method1135(); - int[][] var20 = var8.method1134(); - int[] var21 = var8.method1136(); - int[] var22 = var8.method1137(); - var23 = var8.method1138(); - var24 = var0; - var25 = var1; - var26 = var17 >> 1; - var27 = var18 >> 1; - var28 = var0 - var26; - var29 = var1 - var27; - var20[var26][var27] = 99; - var19[var26][var27] = 0; - byte var30 = 0; - var31 = 0; - var21[var30] = var0; - var42 = var30 + 1; - var22[var30] = var1; - int[][] var32 = var4.flags; - - boolean var16; - while (true) { - if (var42 == var31) { - var8.method1129(var24, var25); - var16 = false; - break; - } - - var24 = var21[var31]; - var25 = var22[var31]; - var31 = var31 + 1 & var23; - var26 = var24 - var28; - var27 = var25 - var29; - var33 = var24 - var4.xInset; - int var34 = var25 - var4.yInset; - if (var3.hasArrived(1, var24, var25, var4)) { - var8.method1129(var24, var25); - var16 = true; - break; - } - - int var35 = var19[var26][var27] + 1; - if (var26 > 0 && var20[var26 - 1][var27] == 0 && (var32[var33 - 1][var34] & 19136776) == 0) { - var21[var42] = var24 - 1; - var22[var42] = var25; - var42 = var42 + 1 & var23; - var20[var26 - 1][var27] = 2; - var19[var26 - 1][var27] = var35; - } - - if (var26 < var17 - 1 && var20[var26 + 1][var27] == 0 && (var32[var33 + 1][var34] & 19136896) == 0) { - var21[var42] = var24 + 1; - var22[var42] = var25; - var42 = var42 + 1 & var23; - var20[var26 + 1][var27] = 8; - var19[var26 + 1][var27] = var35; - } - - if (var27 > 0 && var20[var26][var27 - 1] == 0 && (var32[var33][var34 - 1] & 19136770) == 0) { - var21[var42] = var24; - var22[var42] = var25 - 1; - var42 = var42 + 1 & var23; - var20[var26][var27 - 1] = 1; - var19[var26][var27 - 1] = var35; - } - - if (var27 < var18 - 1 && var20[var26][var27 + 1] == 0 && (var32[var33][var34 + 1] & 19136800) == 0) { - var21[var42] = var24; - var22[var42] = var25 + 1; - var42 = var42 + 1 & var23; - var20[var26][var27 + 1] = 4; - var19[var26][var27 + 1] = var35; - } - - if (var26 > 0 && var27 > 0 && var20[var26 - 1][var27 - 1] == 0 && (var32[var33 - 1][var34 - 1] & 19136782) == 0 && (var32[var33 - 1][var34] & 19136776) == 0 && (var32[var33][var34 - 1] & 19136770) == 0) { - var21[var42] = var24 - 1; - var22[var42] = var25 - 1; - var42 = var42 + 1 & var23; - var20[var26 - 1][var27 - 1] = 3; - var19[var26 - 1][var27 - 1] = var35; - } - - if (var26 < var17 - 1 && var27 > 0 && var20[var26 + 1][var27 - 1] == 0 && (var32[var33 + 1][var34 - 1] & 19136899) == 0 && (var32[var33 + 1][var34] & 19136896) == 0 && (var32[var33][var34 - 1] & 19136770) == 0) { - var21[var42] = var24 + 1; - var22[var42] = var25 - 1; - var42 = var42 + 1 & var23; - var20[var26 + 1][var27 - 1] = 9; - var19[var26 + 1][var27 - 1] = var35; - } - - if (var26 > 0 && var27 < var18 - 1 && var20[var26 - 1][var27 + 1] == 0 && (var32[var33 - 1][var34 + 1] & 19136824) == 0 && (var32[var33 - 1][var34] & 19136776) == 0 && (var32[var33][var34 + 1] & 19136800) == 0) { - var21[var42] = var24 - 1; - var22[var42] = var25 + 1; - var42 = var42 + 1 & var23; - var20[var26 - 1][var27 + 1] = 6; - var19[var26 - 1][var27 + 1] = var35; - } - - if (var26 < var17 - 1 && var27 < var18 - 1 && var20[var26 + 1][var27 + 1] == 0 && (var32[var33 + 1][var34 + 1] & 19136992) == 0 && (var32[var33 + 1][var34] & 19136896) == 0 && (var32[var33][var34 + 1] & 19136800) == 0) { - var21[var42] = var24 + 1; - var22[var42] = var25 + 1; - var42 = var42 + 1 & var23; - var20[var26 + 1][var27 + 1] = 12; - var19[var26 + 1][var27 + 1] = var35; - } - } - - var15 = var16; - } else if (var2 == 2) { - var15 = LoginPacket.method1616(var0, var1, var3, var4, var8); - } else { - var15 = FontName.method2446(var0, var1, var2, var3, var4, var8); - } - - int var41 = var0 - (var9 >> 1); - var17 = var1 - (var10 >> 1); - var18 = var8.method1130(); - int var36 = var8.method1131(); - int var37; - int var38; - if (!var15) { - var37 = Integer.MAX_VALUE; - var38 = Integer.MAX_VALUE; - byte var39 = 10; - var23 = var3.approxDestinationX; - var24 = var3.approxDestinationY; - var25 = var3.approxDestinationSizeX; - var26 = var3.approxDestinationSizeY; + static AbstractSocket field4; - for (var27 = var23 - var39; var27 <= var39 + var23; ++var27) { - for (var28 = var24 - var39; var28 <= var24 + var39; ++var28) { - var29 = var27 - var41; - var42 = var28 - var17; - if (var29 >= 0 && var42 >= 0 && var29 < var9 && var42 < var10 && var11[var29][var42] < 100) { - var31 = 0; - if (var27 < var23) { - var31 = var23 - var27; - } else if (var27 > var23 + var25 - 1) { - var31 = var27 - (var25 + var23 - 1); - } - - int var40 = 0; - if (var28 < var24) { - var40 = var24 - var28; - } else if (var28 > var26 + var24 - 1) { - var40 = var28 - (var26 + var24 - 1); - } - - var33 = var40 * var40 + var31 * var31; - if (var33 < var37 || var33 == var37 && var11[var29][var42] < var38) { - var37 = var33; - var38 = var11[var29][var42]; - var18 = var27; - var36 = var28; - } - } - } - } + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([I[II)V", + garbageValue = "1584240093" + ) + public static void method5(int[] var0, int[] var1) { + if (var0 != null && var1 != null) { + Clock.ByteArrayPool_alternativeSizes = var0; + class267.ByteArrayPool_altSizeArrayCounts = new int[var0.length]; + class1.ByteArrayPool_arrays = new byte[var0.length][][]; - if (var37 == Integer.MAX_VALUE) { - return -1; + for (int var2 = 0; var2 < Clock.ByteArrayPool_alternativeSizes.length; ++var2) { + class1.ByteArrayPool_arrays[var2] = new byte[var1[var2]][]; + ByteArrayPool.field3780.add(var0[var2]); } - } - if (var0 == var18 && var36 == var1) { - var6[0] = var18; - var7[0] = var36; - return 0; + Collections.sort(ByteArrayPool.field3780); } else { - byte var43 = 0; - var13[var43] = var18; - var37 = var43 + 1; - var14[var43] = var36; - - int var44; - for (var38 = var44 = var12[var18 - var41][var36 - var17]; var0 != var18 || var36 != var1; var38 = var12[var18 - var41][var36 - var17]) { - if (var38 != var44) { - var44 = var38; - var13[var37] = var18; - var14[var37++] = var36; - } - - if ((var38 & 2) != 0) { - ++var18; - } else if ((var38 & 8) != 0) { - --var18; - } - - if ((var38 & 1) != 0) { - ++var36; - } else if ((var38 & 4) != 0) { - --var36; - } - } - - var23 = 0; - - while (var37-- > 0) { - var6[var23] = var13[var37]; - var7[var23++] = var14[var37]; - if (var23 >= var6.length) { - break; - } - } - - return var23; + Clock.ByteArrayPool_alternativeSizes = null; + class267.ByteArrayPool_altSizeArrayCounts = null; + class1.ByteArrayPool_arrays = null; + Renderable.method1514(); } } - @ObfuscatedName("ad") + @ObfuscatedName("nk") @ObfuscatedSignature( - descriptor = "(IIIIIZI)Lui;", - garbageValue = "693042452" + descriptor = "(IIZB)V", + garbageValue = "0" ) - @Export("getItemSprite") - public static final SpritePixels getItemSprite(int var0, int var1, int var2, int var3, int var4, boolean var5) { - if (var1 == -1) { - var4 = 0; - } else if (var4 == 2 && var1 != 1) { - var4 = 1; - } - - long var6 = ((long)var4 << 40) + ((long)var2 << 38) + ((long)var1 << 16) + (long)var0 + ((long)var3 << 42); - SpritePixels var8; - if (!var5) { - var8 = (SpritePixels)ItemComposition.ItemDefinition_cachedSprites.get(var6); - if (var8 != null) { - return var8; + static final void method6(int var0, int var1, boolean var2) { + if (Client.currentClanChannels[var0] != null) { + if (var1 >= 0 && var1 < Client.currentClanChannels[var0].method857()) { + ClanChannelMember var3 = (ClanChannelMember)Client.currentClanChannels[var0].members.get(var1); + PacketBufferNode var4 = class113.getPacketBufferNode(ClientPacket.f10, Client.packetWriter.isaacCipher); + var4.packetBuffer.writeByte(4 + ClanChannel.stringCp1252NullTerminatedByteSize(var3.username.getName())); + var4.packetBuffer.writeByte(var0); + var4.packetBuffer.writeShort(var1); + var4.packetBuffer.writeBoolean(var2); + var4.packetBuffer.writeStringCp1252NullTerminated(var3.username.getName()); + Client.packetWriter.addNode(var4); } } + } - ItemComposition var9 = InvDefinition.ItemDefinition_get(var0); - if (var1 > 1 && var9.countobj != null) { - int var10 = -1; - - for (int var11 = 0; var11 < 10; ++var11) { - if (var1 >= var9.countco[var11] && var9.countco[var11] != 0) { - var10 = var9.countobj[var11]; - } - } - - if (var10 != -1) { - var9 = InvDefinition.ItemDefinition_get(var10); - } - } - - Model var22 = var9.getModel(1); - if (var22 == null) { - return null; - } else { - SpritePixels var23 = null; - if (var9.noteTemplate != -1) { - var23 = getItemSprite(var9.note, 10, 1, 0, 0, true); - if (var23 == null) { - return null; - } - } else if (var9.notedId != -1) { - var23 = getItemSprite(var9.unnotedId, var1, var2, var3, 0, false); - if (var23 == null) { - return null; - } - } else if (var9.placeholderTemplate != -1) { - var23 = getItemSprite(var9.placeholder, var1, 0, 0, 0, false); - if (var23 == null) { - return null; - } - } - - int[] var12 = Rasterizer2D.Rasterizer2D_pixels; - int var13 = Rasterizer2D.Rasterizer2D_width; - int var14 = Rasterizer2D.Rasterizer2D_height; - float[] var15 = Rasterizer2D.field4217; - int[] var16 = new int[4]; - Rasterizer2D.Rasterizer2D_getClipArray(var16); - var8 = new SpritePixels(36, 32); - Rasterizer3D.method1198(var8.pixels, 36, 32, (float[])null); - Rasterizer2D.Rasterizer2D_clear(); - Rasterizer3D.method1199(); - Rasterizer3D.method1202(16, 16); - Rasterizer3D.clips.field2279 = false; - if (var9.placeholderTemplate != -1) { - var23.drawTransBgAt(0, 0); - } - - int var17 = var9.zoom2d; - if (var5) { - var17 = (int)((double)var17 * 1.5D); - } else if (var2 == 2) { - var17 = (int)((double)var17 * 1.04D); - } - - int var18 = var17 * Rasterizer3D.Rasterizer3D_sine[var9.xan2d] >> 16; - int var19 = var17 * Rasterizer3D.Rasterizer3D_cosine[var9.xan2d] >> 16; - var22.calculateBoundsCylinder(); - var22.method1338(0, var9.yan2d, var9.zan2d, var9.xan2d, var9.offsetX2d, var22.height / 2 + var18 + var9.offsetY2d, var19 + var9.offsetY2d); - if (var9.notedId != -1) { - var23.drawTransBgAt(0, 0); - } - - if (var2 >= 1) { - var8.outline(1); - } - - if (var2 >= 2) { - var8.outline(16777215); - } - - if (var3 != 0) { - var8.shadow(var3); - } - - Rasterizer3D.method1198(var8.pixels, 36, 32, (float[])null); - if (var9.noteTemplate != -1) { - var23.drawTransBgAt(0, 0); - } - - if (var4 == 1 || var4 == 2 && var9.isStackable == 1) { - Font var20 = class452.ItemDefinition_fontPlain11; - String var21; - if (var1 < 100000) { - var21 = "" + var1 + ""; - } else if (var1 < 10000000) { - var21 = "" + var1 / 1000 + "K" + ""; - } else { - var21 = "" + var1 / 1000000 + "M" + ""; - } - - var20.draw(var21, 0, 9, 16776960, 1); - } - - if (!var5) { - ItemComposition.ItemDefinition_cachedSprites.put(var8, var6); - } - - Rasterizer3D.method1198(var12, var13, var14, var15); - Rasterizer2D.Rasterizer2D_setClipArray(var16); - Rasterizer3D.method1199(); - Rasterizer3D.clips.field2279 = true; - return var8; - } + @ObfuscatedName("ov") + @ObfuscatedSignature( + descriptor = "(S)Z", + garbageValue = "2291" + ) + static boolean method7() { + return WorldMapIcon_1.clientPreferences.method561() >= Client.param21; } } \ No newline at end of file diff --git a/osrs/src/main/java/class400.java b/osrs/src/main/java/class400.java new file mode 100644 index 000000000..b638f7eef --- /dev/null +++ b/osrs/src/main/java/class400.java @@ -0,0 +1,21 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("pe") +public final class class400 { + @ObfuscatedName("at") + @Export("base37Table") + public static final char[] base37Table; + @ObfuscatedName("ah") + static long[] field3693; + + static { + base37Table = new char[]{'_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; + field3693 = new long[12]; + + for (int var0 = 0; var0 < field3693.length; ++var0) { + field3693[var0] = (long)Math.pow(37.0D, (double)var0); + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class401.java b/osrs/src/main/java/class401.java deleted file mode 100644 index 7bfe42a08..000000000 --- a/osrs/src/main/java/class401.java +++ /dev/null @@ -1,73 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ArrayList; -import java.util.Iterator; - -@ObfuscatedName("pv") -public class class401 extends SongTask { - @ObfuscatedName("au") - ArrayList field3711; - - @ObfuscatedSignature( - descriptor = "(Lpm;Ljava/util/ArrayList;)V" - ) - public class401(SongTask var1, ArrayList var2) { - super(var1); - super.field3722 = "ClearRequestTask"; - this.field3711 = var2; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1604030758" - ) - public boolean vmethod2142() { - if (this.field3711.isEmpty()) { - return true; - } else { - Iterator var1 = this.field3711.iterator(); - - while (var1.hasNext()) { - MusicSong var2 = (MusicSong)var1.next(); - - try { - if (class305.musicSongs.contains(var2)) { - if (var2 == null) { - class305.musicSongs.remove(var2); - } else { - if (var2.midiPcmStream.field2809 > 0) { - --var2.midiPcmStream.field2809; - } - - if (var2.midiPcmStream.field2809 == 0) { - var2.midiPcmStream.clear(); - var2.midiPcmStream.method1633(); - var2.midiPcmStream.setPcmStreamVolume(0); - } - - int var3 = var2.musicTrackGroupId; - int var4 = var2.musicTrackFileId; - Iterator var5 = class305.field2778.iterator(); - - while (var5.hasNext()) { - class311 var6 = (class311)var5.next(); - var6.vmethod1644(var3, var4); - } - - class305.musicSongs.remove(var2); - } - } - } catch (Exception var8) { - Messages.RunException_sendStackTrace((String)null, var8); - this.method2138(var8.getMessage()); - class305.musicSongs.clear(); - return true; - } - } - - return true; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class402.java b/osrs/src/main/java/class402.java new file mode 100644 index 000000000..67d878fd0 --- /dev/null +++ b/osrs/src/main/java/class402.java @@ -0,0 +1,65 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("pw") +public final class class402 { + @ObfuscatedName("al") + static int field3694; + @ObfuscatedName("at") + final Object field3696; + @ObfuscatedName("ah") + int field3695; + + class402(Object var1, int var2) { + this.field3696 = var1; + this.field3695 = var2; + } + + @ObfuscatedName("kh") + @ObfuscatedSignature( + descriptor = "(ILjava/lang/String;B)V", + garbageValue = "-6" + ) + static void method2043(int var0, String var1) { + int var2 = Players.Players_count; + int[] var3 = Players.Players_indices; + boolean var4 = false; + Username var5 = new Username(var1, class89.loginType); + + for (int var6 = 0; var6 < var2; ++var6) { + Player var7 = Client.players[var3[var6]]; + if (var7 != null && var7 != class229.localPlayer && var7.username != null && var7.username.equals(var5)) { + PacketBufferNode var8; + if (var0 == 1) { + var8 = class113.getPacketBufferNode(ClientPacket.OPPLAYER1, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShort(var3[var6]); + var8.packetBuffer.writeByteNeg(0); + Client.packetWriter.addNode(var8); + } else if (var0 == 4) { + var8 = class113.getPacketBufferNode(ClientPacket.OPPLAYER4, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeByteSub(0); + var8.packetBuffer.writeShortAddLE(var3[var6]); + Client.packetWriter.addNode(var8); + } else if (var0 == 6) { + var8 = class113.getPacketBufferNode(ClientPacket.OPPLAYER6, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeByteSub(0); + var8.packetBuffer.writeShort(var3[var6]); + Client.packetWriter.addNode(var8); + } else if (var0 == 7) { + var8 = class113.getPacketBufferNode(ClientPacket.OPPLAYER7, Client.packetWriter.isaacCipher); + var8.packetBuffer.writeShortLE(var3[var6]); + var8.packetBuffer.writeByteSub(0); + Client.packetWriter.addNode(var8); + } + + var4 = true; + break; + } + } + + if (!var4) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(4, "", "Unable to find " + var1); + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class403.java b/osrs/src/main/java/class403.java index 8299e08f5..be26d27fa 100644 --- a/osrs/src/main/java/class403.java +++ b/osrs/src/main/java/class403.java @@ -2,53 +2,82 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import java.util.ConcurrentModificationException; import java.util.Iterator; +import java.util.NoSuchElementException; -@ObfuscatedName("pd") -public class class403 extends SongTask { - @ObfuscatedName("ae") - @Export("clearLoginScreen") - static boolean clearLoginScreen; +@ObfuscatedName("pg") +public class class403 implements Iterator { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lps;" + ) + class404 field3699; + @ObfuscatedName("ah") + int field3697; + @ObfuscatedName("ar") + int field3698; @ObfuscatedSignature( - descriptor = "(Lpm;)V" + descriptor = "(Lps;)V" ) - public class403(SongTask var1) { - super(var1); - super.field3722 = "StartSongTask"; + class403(class404 var1) { + this.field3697 = 0; + this.field3698 = this.field3699.field3700; + this.field3699 = var1; + } + + @Export("hasNext") + @ObfuscatedName("hasNext") + public boolean hasNext() { + return this.field3697 < this.field3699.field3701; + } + + @Export("next") + @ObfuscatedName("next") + public Object next() { + if (this.field3699.field3700 != this.field3698) { + throw new ConcurrentModificationException(); + } else if (this.field3697 < this.field3699.field3701) { + Object var1 = this.field3699.field3703[this.field3697].field3696; + ++this.field3697; + return var1; + } else { + throw new NoSuchElementException(); + } } - @ObfuscatedName("au") + @Export("remove") + @ObfuscatedName("remove") + public void remove() { + throw new UnsupportedOperationException(); + } + + @ObfuscatedName("aq") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1604030758" + descriptor = "(IIB)I", + garbageValue = "14" ) - public boolean vmethod2142() { - Iterator var1 = class305.musicSongs.iterator(); - - while (var1.hasNext()) { - MusicSong var2 = (MusicSong)var1.next(); - if (var2 != null && !var2.field2865 && var2.midiPcmStream != null) { - try { - var2.midiPcmStream.method1632(); - var2.midiPcmStream.setPcmStreamVolume(0); - if (var2.field2872 != null) { - var2.midiPcmStream.setMusicTrack(var2.field2872, var2.musicTrackBoolean); - } - - var2.field2872 = null; - var2.field2861 = null; - var2.musicTrackArchive = null; - var2.field2865 = true; - } catch (Exception var4) { - Messages.RunException_sendStackTrace((String)null, var4); - this.method2138(var4.getMessage()); - return true; - } + static final int method2044(int var0, int var1) { + if (var0 == -2) { + return 12345678; + } else if (var0 == -1) { + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; } - } - super.field3721 = true; - return true; + return var1; + } else { + var1 = (var0 & 127) * var1 / 128; + if (var1 < 2) { + var1 = 2; + } else if (var1 > 126) { + var1 = 126; + } + + return (var0 & 65408) + var1; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class404.java b/osrs/src/main/java/class404.java new file mode 100644 index 000000000..c8ad67360 --- /dev/null +++ b/osrs/src/main/java/class404.java @@ -0,0 +1,354 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.*; + +@ObfuscatedName("ps") +public class class404 extends AbstractQueue { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "[Lpw;" + ) + class402[] field3703; + @ObfuscatedName("ah") + Map field3702; + @ObfuscatedName("ar") + int field3701; + @ObfuscatedName("ao") + final Comparator field3704; + @ObfuscatedName("ab") + int field3700; + + public class404(int var1, Comparator var2) { + this.field3700 = 0; + this.field3703 = new class402[var1]; + this.field3702 = new HashMap(); + this.field3704 = var2; + } + + public class404(int var1) { + this(var1, (Comparator)null); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1191377810" + ) + void method2046() { + int var1 = (this.field3703.length << 1) + 1; + this.field3703 = (class402[])((class402[])Arrays.copyOf(this.field3703, var1)); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1996732562" + ) + void method2047(int var1) { + class402 var2; + int var3; + for (var2 = this.field3703[var1]; var1 > 0; var1 = var3) { + var3 = var1 - 1 >>> 1; + class402 var4 = this.field3703[var3]; + if (this.field3704 != null) { + if (this.field3704.compare(var2.field3696, var4.field3696) >= 0) { + break; + } + } else if (((Comparable)var2.field3696).compareTo(var4.field3696) >= 0) { + break; + } + + this.field3703[var1] = var4; + this.field3703[var1].field3695 = var1; + } + + this.field3703[var1] = var2; + this.field3703[var1].field3695 = var1; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-500854691" + ) + void method2048(int var1) { + class402 var2 = this.field3703[var1]; + + int var8; + for (int var3 = this.field3701 >>> 1; var1 < var3; var1 = var8) { + int var4 = (var1 << 1) + 1; + class402 var5 = this.field3703[var4]; + int var6 = (var1 << 1) + 2; + class402 var7 = this.field3703[var6]; + if (this.field3704 != null) { + if (var6 < this.field3701 && this.field3704.compare(var5.field3696, var7.field3696) > 0) { + var8 = var6; + } else { + var8 = var4; + } + } else if (var6 < this.field3701 && ((Comparable)var5.field3696).compareTo(var7.field3696) > 0) { + var8 = var6; + } else { + var8 = var4; + } + + if (this.field3704 != null) { + if (this.field3704.compare(var2.field3696, this.field3703[var8].field3696) <= 0) { + break; + } + } else if (((Comparable)var2.field3696).compareTo(this.field3703[var8].field3696) <= 0) { + break; + } + + this.field3703[var1] = this.field3703[var8]; + this.field3703[var1].field3695 = var1; + } + + this.field3703[var1] = var2; + this.field3703[var1].field3695 = var1; + } + + @Export("remove") + @ObfuscatedName("remove") + public boolean remove(Object var1) { + class402 var2 = (class402)this.field3702.remove(var1); + if (var2 == null) { + return false; + } else { + ++this.field3700; + --this.field3701; + if (this.field3701 == var2.field3695) { + this.field3703[this.field3701] = null; + return true; + } else { + class402 var3 = this.field3703[this.field3701]; + this.field3703[this.field3701] = null; + this.field3703[var2.field3695] = var3; + this.field3703[var2.field3695].field3695 = var2.field3695; + this.method2048(var2.field3695); + if (var3 == this.field3703[var2.field3695]) { + this.method2047(var2.field3695); + } + + return true; + } + } + } + + @Export("peek") + @ObfuscatedName("peek") + public Object peek() { + return this.field3701 == 0 ? null : this.field3703[0].field3696; + } + + @Export("size") + @ObfuscatedName("size") + public int size() { + return this.field3701; + } + + @Export("offer") + @ObfuscatedName("offer") + public boolean offer(Object var1) { + if (this.field3702.containsKey(var1)) { + //throw new IllegalArgumentException(""); + } else { + ++this.field3700; + int var2 = this.field3701; + if (var2 >= this.field3703.length) { + this.method2046(); + } + + ++this.field3701; + if (var2 == 0) { + this.field3703[0] = new class402(var1, 0); + this.field3702.put(var1, this.field3703[0]); + } else { + this.field3703[var2] = new class402(var1, var2); + this.field3702.put(var1, this.field3703[var2]); + this.method2047(var2); + } + + return true; + } + return true; + + } + + @Export("poll") + @ObfuscatedName("poll") + public Object poll() { + if (this.field3701 == 0) { + return null; + } else { + ++this.field3700; + Object var1 = this.field3703[0].field3696; + this.field3702.remove(var1); + --this.field3701; + if (this.field3701 == 0) { + this.field3703[this.field3701] = null; + } else { + this.field3703[0] = this.field3703[this.field3701]; + this.field3703[0].field3695 = 0; + this.field3703[this.field3701] = null; + this.method2048(0); + } + + return var1; + } + } + + @Export("contains") + @ObfuscatedName("contains") + public boolean contains(Object var1) { + return this.field3702.containsKey(var1); + } + + @Export("toArray") + @ObfuscatedName("toArray") + public Object[] toArray() { + Object[] var1 = super.toArray(); + if (this.field3704 != null) { + Arrays.sort(var1, this.field3704); + } else { + Arrays.sort(var1); + } + + return var1; + } + + @Export("iterator") + @ObfuscatedName("iterator") + public Iterator iterator() { + return new class403(this); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lfm;FB)F", + garbageValue = "0" + ) + static float method2045(class131 var0, float var1) { + if (var0 != null && var0.method722() != 0) { + if (var1 < (float)var0.field1258[0].field1217) { + return var0.field1257 == class129.field1244 ? var0.field1258[0].field1213 : Decimator.method321(var0, var1, true); + } else if (var1 > (float)var0.field1258[var0.method722() - 1].field1217) { + return var0.field1256 == class129.field1244 ? var0.field1258[var0.method722() - 1].field1213 : Decimator.method321(var0, var1, false); + } else if (var0.field1252) { + return var0.field1258[0].field1213; + } else { + class126 var2 = var0.method721(var1); + boolean var3 = false; + boolean var4 = false; + if (var2 == null) { + return 0.0F; + } else { + float var5; + float var6; + float var7; + if ((double)var2.field1212 == 0.0D && (double)var2.field1216 == 0.0D) { + var3 = true; + } else if (var2.field1212 == Float.MAX_VALUE && Float.MAX_VALUE == var2.field1216) { + var4 = true; + } else if (var2.field1211 != null) { + if (var0.field1253) { + var5 = (float)var2.field1217; + float var9 = var2.field1213; + var6 = var5 + var2.field1212 * 0.33333334F; + float var10 = 0.33333334F * var2.field1216 + var9; + float var8 = (float)var2.field1211.field1217; + float var12 = var2.field1211.field1213; + var7 = var8 - var2.field1211.field1215 * 0.33333334F; + float var11 = var12 - 0.33333334F * var2.field1211.field1214; + if (var0.field1254) { + Language.method1997(var0, var5, var6, var7, var8, var9, var10, var11, var12); + } else if (var0 != null) { + var0.field1259 = var5; + float var13 = var8 - var5; + float var14 = var12 - var9; + float var15 = var6 - var5; + float var16 = 0.0F; + float var17 = 0.0F; + if ((double)var15 != 0.0D) { + var16 = (var10 - var9) / var15; + } + + var15 = var8 - var7; + if (0.0D != (double)var15) { + var17 = (var12 - var11) / var15; + } + + float var18 = 1.0F / (var13 * var13); + float var19 = var16 * var13; + float var20 = var13 * var17; + var0.field1263 = (var20 + var19 - var14 - var14) * var18 / var13; + var0.field1270 = var18 * (var14 + var14 + var14 - var19 - var19 - var20); + var0.field1265 = var16; + var0.field1267 = var9; + } + + var0.field1253 = false; + } + } else { + var3 = true; + } + + if (var3) { + return var2.field1213; + } else if (var4) { + return (float)var2.field1217 != var1 && var2.field1211 != null ? var2.field1211.field1213 : var2.field1213; + } else if (var0.field1254) { + if (var0 == null) { + var5 = 0.0F; + } else { + if (var0.field1259 == var1) { + var6 = 0.0F; + } else if (var0.field1260 == var1) { + var6 = 1.0F; + } else { + var6 = (var1 - var0.field1259) / (var0.field1260 - var0.field1259); + } + + if (var0.field1255) { + var7 = var6; + } else { + class127.field1221[3] = var0.field1267; + class127.field1221[2] = var0.field1265; + class127.field1221[1] = var0.field1270; + class127.field1221[0] = var0.field1263 - var6; + class127.field1220[0] = 0.0F; + class127.field1220[1] = 0.0F; + class127.field1220[2] = 0.0F; + class127.field1220[3] = 0.0F; + class127.field1220[4] = 0.0F; + int var21 = FloorUnderlayDefinition.method967(class127.field1221, 3, 0.0F, true, 1.0F, true, class127.field1220); + if (var21 == 1) { + var7 = class127.field1220[0]; + } else { + var7 = 0.0F; + } + } + + var5 = var7 * (var0.field1266 + (var0.field1269 + var0.field1262 * var7) * var7) + var0.field1268; + } + + return var5; + } else { + if (var0 == null) { + var5 = 0.0F; + } else { + var6 = var1 - var0.field1259; + var5 = var0.field1267 + var6 * (var6 * (var0.field1270 + var6 * var0.field1263) + var0.field1265); + } + + return var5; + } + } + } + } else { + return 0.0F; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class406.java b/osrs/src/main/java/class406.java new file mode 100644 index 000000000..3af592402 --- /dev/null +++ b/osrs/src/main/java/class406.java @@ -0,0 +1,812 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.ArrayList; + +@ObfuscatedName("pv") +public class class406 { + @ObfuscatedName("ak") + int field3710; + @ObfuscatedName("aj") + int field3709; + @ObfuscatedName("am") + int field3711; + @ObfuscatedName("aq") + int field3712; + @ObfuscatedName("ai") + int field3708; + @ObfuscatedName("aw") + boolean field3705; + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "Lpa;" + ) + AbstractFont field3714; + @ObfuscatedName("an") + ArrayList field3713; + @ObfuscatedName("ag") + int field3707; + @ObfuscatedName("ad") + int field3706; + + public class406() { + this.field3710 = Integer.MAX_VALUE; + this.field3709 = Integer.MAX_VALUE; + this.field3711 = 0; + this.field3712 = 0; + this.field3708 = 0; + this.field3705 = true; + this.field3713 = new ArrayList(); + this.field3707 = 0; + this.field3706 = 0; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Lpn;", + garbageValue = "-1648887293" + ) + public class408 method2051(int var1) { + return (class408)this.field3713.get(var1); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(I)Lpn;", + garbageValue = "-1618780366" + ) + class408 method2052() { + return this.field3713.size() == 0 ? null : (class408)this.field3713.get(this.field3713.size() - 1); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "2001561937" + ) + public boolean method2053() { + return this.field3713.size() == 0; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-607330455" + ) + boolean method2054() { + return this.field3709 > 1; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-917985217" + ) + public int method2055() { + return this.field3713.size(); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1548157009" + ) + public String method2056() { + if (this.method2053()) { + return ""; + } else { + StringBuilder var1 = new StringBuilder(this.method2055()); + + for (int var2 = 0; var2 < this.method2055(); ++var2) { + class408 var3 = this.method2051(var2); + var1.append(var3.field3716); + } + + return var1.toString(); + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "-1319008258" + ) + public void method2057(int var1) { + if (this.field3714 != null && var1 < this.field3714.ascent * 2) { + var1 = Integer.MAX_VALUE; + } + + if (this.field3710 != var1) { + this.field3710 = var1; + this.method2086(); + } + + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1206229207" + ) + public void method2059(int var1) { + if (this.field3709 != var1) { + this.field3709 = var1; + this.method2086(); + } + + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "2046388223" + ) + public void method2060(int var1) { + if (this.field3706 != var1) { + this.field3706 = var1; + this.method2086(); + } + + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(Lpa;B)V", + garbageValue = "83" + ) + public void method2061(AbstractFont var1) { + if (var1 != this.field3714) { + this.field3714 = var1; + if (this.field3714 != null) { + if (this.field3708 == 0) { + this.field3708 = this.field3714.ascent; + } + + if (!this.method2053()) { + this.method2086(); + } + } + } + + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(II)V", + garbageValue = "1301835621" + ) + public void method2062(int var1) { + if (this.field3707 != var1) { + this.field3707 = var1; + this.method2086(); + } + + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(III)Z", + garbageValue = "203029050" + ) + public boolean method2063(int var1, int var2) { + if (this.field3711 != var1 || var2 != this.field3712) { + this.field3711 = var1; + this.field3712 = var2; + this.method2086(); + } + + return true; + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(IB)V", + garbageValue = "-36" + ) + public void method2064(int var1) { + if (this.field3708 != var1) { + this.field3708 = var1; + this.method2086(); + } + + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(IIB)Lpd;", + garbageValue = "-125" + ) + public class410 method2065(int var1, int var2) { + if (var2 == var1) { + return new class410(this, 0, 0); + } else if (var1 <= this.field3713.size() && var2 <= this.field3713.size()) { + return var2 < var1 ? new class410(this, var2, var1) : new class410(this, var1, var2); + } else { + return new class410(this, 0, 0); + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(CIIB)Lpx;", + garbageValue = "51" + ) + public class407 method2066(char var1, int var2, int var3) { + return this.method2067(Character.toString(var1), var2, var3); + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;III)Lpx;", + garbageValue = "1271891096" + ) + public class407 method2067(String var1, int var2, int var3) { + if (var3 == 0) { + var3 = Integer.MAX_VALUE; + } + + int var4 = var2; + if (this.field3713.size() >= var3) { + this.method2087(var2, var2); + return new class407(var2, true); + } else { + this.field3713.ensureCapacity(this.field3713.size() + var1.length()); + + for (int var5 = 0; var5 < var1.length() && this.field3713.size() < var3; ++var5) { + class408 var6 = new class408(); + var6.field3716 = var1.charAt(var5); + this.field3713.add(var4, var6); + ++var4; + } + + this.method2087(var2, var4); + if (this.field3709 != 0 && this.method2078() > this.field3709) { + while (var4 != var2) { + --var4; + this.method2071(var4); + if (this.method2078() <= this.field3709) { + break; + } + } + + return new class407(var4, true); + } else { + return new class407(var4, false); + } + } + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;IB)Lpx;", + garbageValue = "-98" + ) + class407 method2068(String var1, int var2) { + return this.method2067(var1, this.field3713.size(), var2); + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)Lpx;", + garbageValue = "-83" + ) + public class407 method2069(String var1) { + this.method2070(); + return this.method2068(var1, 0); + } + + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "95" + ) + void method2070() { + this.field3713.clear(); + } + + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-620955221" + ) + public int method2071(int var1) { + return this.method2072(var1, var1 + 1); + } + + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "(IIB)I", + garbageValue = "58" + ) + public int method2072(int var1, int var2) { + int var3; + if (var2 < var1) { + var3 = var2; + var2 = var1; + var1 = var3; + } + + this.field3713.subList(var1, var2).clear(); + var3 = var1; + if (this.method2054() && this.field3707 == 1) { + while (var3 > 0) { + --var3; + char var4 = ((class408)this.field3713.get(var3)).field3716; + if (var4 == ' ' || var4 == '\t') { + break; + } + } + } + + this.method2087(var3, var2); + return var1; + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "-769092328" + ) + public int method2073(int var1, int var2) { + if (this.field3714 == null) { + return 0; + } else if (this.method2054() && var1 > this.field3710) { + return this.field3713.size(); + } else { + if (!this.field3713.isEmpty()) { + for (int var3 = 0; var3 < this.field3713.size(); ++var3) { + class408 var4 = (class408)this.field3713.get(var3); + if (var2 <= var4.field3718 + this.method2077()) { + if (var2 < var4.field3718) { + break; + } + + if (var1 < var4.field3717) { + return var3 > 0 ? var3 - 1 : 0; + } + + if (1 + var3 != this.field3713.size() && ((class408)this.field3713.get(1 + var3)).field3718 != var4.field3718) { + int var5 = this.method2089((class408)this.field3713.get(var3), false); + if (var1 < var5 + var4.field3717) { + return var3; + } + + if (var2 <= var4.field3718 + this.method2077()) { + return var3 + 1; + } + } + } + } + + class408 var6 = (class408)this.field3713.get(this.field3713.size() - 1); + if (var1 >= var6.field3717 && var1 <= var6.field3717 + this.method2079() && var2 >= var6.field3718 && var2 <= var6.field3718 + this.method2077()) { + return this.field3713.size() - 1; + } + } + + return this.field3713.size(); + } + } + + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "(III)I", + garbageValue = "795729934" + ) + public int method2074(int var1, int var2) { + if (this.field3714 != null && !this.method2053() && var1 <= this.field3713.size()) { + byte var3; + if (var2 > 0) { + var3 = 1; + } else { + var3 = -1; + var2 = -var2; + } + + int var4 = 0; + int var5 = 0; + if (var1 > 0) { + class408 var6 = (class408)this.field3713.get(var1 - 1); + var4 = var6.field3717 + this.method2088(var1 - 1); + var5 = var6.field3718; + } else if (var3 == -1 && var1 == 0) { + return 0; + } + + int var14 = 16777215; + int var7 = 0; + int var8 = var1; + int var9 = 16777215; + int var10 = var3 == 1 ? this.field3713.size() + 1 : 0; + + for (int var11 = var3 + var1; var11 != var10; var11 += var3) { + class408 var12 = (class408)this.field3713.get(var11 - 1); + if (var5 != var12.field3718) { + ++var7; + var5 = var12.field3718; + if (var7 > var2) { + return var8; + } + } + + if (var7 == var2) { + int var13 = Math.abs(var12.field3717 + this.method2088(var11 - 1) - var4); + if (var13 >= var9) { + return var8; + } + + var8 = var11; + var9 = var13; + } + } + + if (var3 == 1) { + return this.field3713.size(); + } else { + if (var5 != 0) { + ++var7; + } + + return var9 == 16777215 || var7 == var2 && var4 < var9 ? 0 : var8; + } + } else { + return 0; + } + } + + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-612896858" + ) + public int method2075() { + if (!this.field3713.isEmpty() && this.method2078() == 1) { + return this.field3713.isEmpty() ? 0 : ((class408)this.field3713.get(this.field3713.size() - 1)).field3717 + this.method2079(); + } else { + int var1 = -1; + int var2 = 0; + + for (int var3 = this.field3713.size() - 1; var3 >= 0; --var3) { + class408 var4 = (class408)this.field3713.get(var3); + if (var1 != var4.field3718) { + int var5 = this.method2089(var4, false) + var4.field3717; + var2 = Math.max(var5, var2); + var1 = var4.field3718; + } + } + + return var2; + } + } + + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "6" + ) + public int method2076() { + return this.method2053() ? 0 : this.field3714.ascent + ((class408)this.field3713.get(this.field3713.size() - 1)).field3718; + } + + @ObfuscatedName("af") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-593841574" + ) + public int method2077() { + return this.field3708; + } + + @ObfuscatedName("be") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "93" + ) + public int method2078() { + return this.method2076() / this.field3714.ascent; + } + + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-918826426" + ) + int method2079() { + return this.method2053() ? 0 : this.method2089((class408)this.field3713.get(this.field3713.size() - 1), false); + } + + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-379034894" + ) + public int method2080() { + return this.field3710; + } + + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "2096364291" + ) + public int method2081() { + return this.field3709; + } + + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-1926453895" + ) + public int method2082() { + return this.field3707; + } + + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-163729135" + ) + public int method2083() { + return this.field3706; + } + + @ObfuscatedName("bg") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "1438354732" + ) + public int method2084(int var1) { + switch(this.field3711) { + case 0: + return 0; + case 1: + return var1 / 2; + case 2: + return var1; + default: + return 0; + } + } + + @ObfuscatedName("ba") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-1172186374" + ) + public int method2085(int var1) { + switch(this.field3712) { + case 0: + return 0; + case 1: + return var1 / 2; + case 2: + return var1; + default: + return 0; + } + } + + @ObfuscatedName("bm") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "0" + ) + void method2086() { + this.method2087(0, this.field3713.size()); + } + + @ObfuscatedName("bp") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "605694861" + ) + void method2087(int var1, int var2) { + if (!this.method2053() && this.field3714 != null) { + class497 var3 = this.method2090(var1, var2); + boolean var4 = (Integer)var3.field4074 == 0 && (Integer)var3.field4073 == this.field3713.size(); + int var5 = (Integer)var3.field4074; + int var6 = 0; + int var7 = var4 ? 0 : ((class408)this.field3713.get((Integer)var3.field4074)).field3718; + int var8 = 0; + + int var9; + for (var9 = (Integer)var3.field4074; var9 <= (Integer)var3.field4073; ++var9) { + boolean var10 = var9 >= this.field3713.size(); + class408 var11 = (class408)this.field3713.get(!var10 ? var9 : this.field3713.size() - 1); + int var12 = !var10 ? this.method2089(var11, false) : 0; + boolean var13 = !var10 && var11.field3716 == '\n'; + boolean var14 = !var10 && this.method2054() && var12 + var6 > this.field3710; + if (var13 || var14 || var10) { + int var15 = var9; + int var16 = 0; + int var17; + int var18; + class408 var19; + if (var14) { + var17 = 0; + if (this.field3707 == 1) { + for (var18 = var9; var18 > var5; --var18) { + var19 = (class408)this.field3713.get(var18); + var17 += var18 < var15 ? this.method2089(var19, false) : 0; + if (var19.field3716 == ' ' || var19.field3716 == '\n') { + var15 = var18; + var6 -= var17; + var16 = var17; + break; + } + } + } + } + + var17 = -this.method2084(var6); + + for (var18 = var5; var18 < var15; ++var18) { + var19 = (class408)this.field3713.get(var18); + int var20 = this.method2089(var19, false); + var19.field3717 = var17; + var19.field3718 = var7; + var17 += var20; + } + + var5 = var15; + var6 = var16; + var7 += this.method2077(); + ++var8; + } + + var6 += !var10 ? var12 : 0; + } + + if (this.field3712 != 0 && var4) { + var9 = var8 * this.method2077(); + int var23 = this.method2085(var9); + + for (int var21 = 0; var21 < this.field3713.size(); ++var21) { + class408 var22 = (class408)this.field3713.get(var21); + var22.field3718 -= var23; + } + } + + } + } + + @ObfuscatedName("bw") + @ObfuscatedSignature( + descriptor = "(II)I", + garbageValue = "-1124192376" + ) + int method2088(int var1) { + return var1 < this.field3713.size() ? this.method2089((class408)this.field3713.get(var1), false) : 0; + } + + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "(Lpn;ZI)I", + garbageValue = "2090126332" + ) + int method2089(class408 var1, boolean var2) { + if (var1.field3716 == '\n') { + return 0; + } else if (this.field3706 == 0) { + int var3 = this.field3714.advances[var1.field3716]; + if (var3 == 0) { + return var1.field3716 == '\t' ? this.field3714.advances[32] * 3 : this.field3714.advances[32]; + } else { + return var3; + } + } else { + return this.field3714.advances[42]; + } + } + + @ObfuscatedName("bn") + @ObfuscatedSignature( + descriptor = "(III)Lti;", + garbageValue = "-139251767" + ) + class497 method2090(int var1, int var2) { + int var3 = Math.min(var1, var2); + int var4 = Math.max(var1, var2); + int var5 = this.field3713.size(); + if (var3 == 0 && var4 == var5) { + return new class497(0, var5); + } else { + int var6 = this.method2091(var3, false); + int var7 = this.method2092(var4, false); + int var8; + switch(this.field3712) { + case 0: + if (this.field3711 == 0) { + return new class497(var6, var5); + } + + var8 = this.method2091(var3, true); + return new class497(var8, var5); + case 1: + return new class497(0, var5); + case 2: + if (this.field3711 == 2) { + return new class497(0, var7); + } + + var8 = this.method2092(var4, true); + return new class497(0, var8); + default: + return new class497(0, var5); + } + } + } + + @ObfuscatedName("bo") + @ObfuscatedSignature( + descriptor = "(IZB)I", + garbageValue = "-36" + ) + int method2091(int var1, boolean var2) { + if (var1 < this.field3713.size()) { + int var3 = ((class408)this.field3713.get(var1)).field3718; + + for (int var4 = var1; var4 > 0; --var4) { + if (((class408)this.field3713.get(var4 - 1)).field3718 < var3) { + if (!var2) { + return var4; + } + + var2 = false; + var3 = ((class408)this.field3713.get(var4 - 1)).field3718; + } + } + } + + return 0; + } + + @ObfuscatedName("bt") + @ObfuscatedSignature( + descriptor = "(IZI)I", + garbageValue = "-1768880978" + ) + int method2092(int var1, boolean var2) { + if (var1 < this.field3713.size()) { + int var3 = ((class408)this.field3713.get(var1)).field3718; + + for (int var4 = var1; var4 < this.field3713.size() - 1; ++var4) { + if (((class408)this.field3713.get(var4 + 1)).field3718 > var3) { + if (!var2) { + return var4; + } + + var2 = false; + var3 = ((class408)this.field3713.get(var4 + 1)).field3718; + } + } + } + + return this.field3713.size(); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lol;Lol;ZI)V", + garbageValue = "-180086044" + ) + public static void method2058(AbstractArchive var0, AbstractArchive var1, boolean var2) { + ObjectComposition.ObjectDefinition_archive = var0; + ObjectComposition.ObjectDefinition_modelsArchive = var1; + ObjectComposition.ObjectDefinition_isLowDetail = var2; + } + + @ObfuscatedName("mi") + @ObfuscatedSignature( + descriptor = "(IIIIIIIB)V", + garbageValue = "51" + ) + @Export("updateRootInterface") + static final void updateRootInterface(int var0, int var1, int var2, int var3, int var4, int var5, int var6) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + AbstractWorldMapData.updateInterface(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0], -1, var1, var2, var3, var4, var5, var6); + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class407.java b/osrs/src/main/java/class407.java new file mode 100644 index 000000000..5fe3647c2 --- /dev/null +++ b/osrs/src/main/java/class407.java @@ -0,0 +1,718 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("px") +public class class407 { + @ObfuscatedName("at") + int field3715; + + @ObfuscatedSignature( + descriptor = "(IZ)V", + garbageValue = "1" + ) + class407(int var1, boolean var2) { + this.field3715 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(S)I", + garbageValue = "6521" + ) + public int method2094() { + return this.field3715; + } + + @ObfuscatedName("kx") + @ObfuscatedSignature( + descriptor = "(IIIIILjava/lang/String;Ljava/lang/String;IIB)V", + garbageValue = "-45" + ) + @Export("menuAction") + static final void menuAction(int var0, int var1, int var2, int var3, int var4, String var5, String var6, int var7, int var8) { + if (var2 >= 2000) { + var2 -= 2000; + } + + PacketBufferNode var9; + if (var2 == 1004) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJE, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(var3); + var9.packetBuffer.writeShort(class101.baseY + var1); + var9.packetBuffer.writeShort(var0 + NewShit.baseX); + Client.packetWriter.addNode(var9); + } + + if (var2 == 26) { + class520.method2526(); + } + + if (var2 == 22) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJ5, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAddLE(class101.baseY + var1); + var9.packetBuffer.writeShortAddLE(var3); + var9.packetBuffer.writeShortAddLE(var0 + NewShit.baseX); + var9.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var9); + } + + Widget var18; + if (var2 == 25) { + var18 = HealthBarDefinition.widgetDefinition.getWidgetChild(var1, var0); + if (var18 != null) { + class53.method308(); + FadeOutTask.method2154(var1, var0, WorldMapData_0.Widget_unpackTargetMask(class361.getWidgetFlags(var18)), var4); + Client.isItemSelected = 0; + Client.field599 = class89.Widget_getSpellActionName(var18); + if (Client.field599 == null) { + Client.field599 = "null"; + } + + if (var18.isIf3) { + Client.field598 = var18.dataText + class167.colorStartTag(16777215); + } else { + Client.field598 = class167.colorStartTag(65280) + var18.field3122 + class167.colorStartTag(16777215); + } + } + + } else { + if (var2 == 6) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOC4, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAddLE(class101.baseY + var1); + var9.packetBuffer.writeShort(var3); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + Client.packetWriter.addNode(var9); + } + + PacketBufferNode var10; + NPC var14; + if (var2 == 11) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPC3, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShortAddLE(var3); + var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 12) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPC4, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + } + + Player var15; + if (var2 == 48) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER5, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShortAddLE(var3); + var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 3) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOC1, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortLE(class101.baseY + var1); + var9.packetBuffer.writeShort(var0 + NewShit.baseX); + var9.packetBuffer.writeShortAdd(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 17) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJT, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortLE(var0 + NewShit.baseX); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAdd(class101.baseY + var1); + var9.packetBuffer.writeIntME(class348.selectedSpellWidget); + var9.packetBuffer.writeShort(Client.selectedSpellChildIndex); + var9.packetBuffer.writeShort(Client.selectedSpellItemId); + var9.packetBuffer.writeShortAdd(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 20) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJ3, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeShort(class101.baseY + var1); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 51) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER8, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortLE(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 30 && Client.meslayerContinueWidget == null) { + class10.resumePauseWidget(var1, var0); + Client.meslayerContinueWidget = HealthBarDefinition.widgetDefinition.getWidgetChild(var1, var0); + class159.invalidateWidget(Client.meslayerContinueWidget); + } + + if (var2 == 21) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJ4, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAddLE(class101.baseY + var1); + var9.packetBuffer.writeShort(var3); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAddLE(var0 + NewShit.baseX); + Client.packetWriter.addNode(var9); + } + + if (var2 == 50) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER7, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShortLE(var3); + var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 57 || var2 == 1007) { + var18 = HealthBarDefinition.widgetDefinition.getWidgetChild(var1, var0); + if (var18 != null) { + FloorOverlayDefinition.widgetDefaultMenuAction(var3, var1, var0, var4, var6); + } + } + + int var11; + Widget var16; + if (var2 == 28) { + var9 = class113.getPacketBufferNode(ClientPacket.WIDGET_TYPE5, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var9); + var16 = HealthBarDefinition.widgetDefinition.method1733(var1); + if (var16 != null && var16.cs1Instructions != null && var16.cs1Instructions[0][0] == 5) { + var11 = var16.cs1Instructions[0][1]; + Varps.Varps_main[var11] = 1 - Varps.Varps_main[var11]; + Projectile.changeGameOptions(var11); + } + } + + PacketBufferNode var13; + if (var2 == 24) { + var18 = HealthBarDefinition.widgetDefinition.method1733(var1); + if (var18 != null) { + boolean var12 = true; + if (var18.contentType > 0) { + var12 = class101.method597(var18); + } + + if (var12) { + var13 = class113.getPacketBufferNode(ClientPacket.WIDGET_TYPE5, Client.packetWriter.isaacCipher); + var13.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var13); + } + } + } + + if (var2 == 47) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER4, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortAddLE(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 2) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOCT, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(var3); + var9.packetBuffer.writeShortAddLE(Client.selectedSpellItemId); + var9.packetBuffer.writeShort(Client.selectedSpellChildIndex); + var9.packetBuffer.writeShortLE(class101.baseY + var1); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeIntLE(class348.selectedSpellWidget); + var9.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var9); + } + + if (var2 == 1002) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOCE, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAddLE(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 8) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPCT, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeInt(class348.selectedSpellWidget); + var10.packetBuffer.writeShortLE(var3); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShort(Client.selectedSpellChildIndex); + var10.packetBuffer.writeShortAdd(Client.selectedSpellItemId); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 58) { + var18 = HealthBarDefinition.widgetDefinition.getWidgetChild(var1, var0); + if (var18 != null) { + if (var18.field3098 != null) { + ScriptEvent var17 = new ScriptEvent(); + var17.widget = var18; + var17.opIndex = var3; + var17.targetName = var6; + var17.args = var18.field3098; + class157.runScriptEvent(var17); + } + + var10 = class113.getPacketBufferNode(ClientPacket.IF_BUTTONT, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeIntIME(class348.selectedSpellWidget); + var10.packetBuffer.writeShortAdd(var0); + var10.packetBuffer.writeShortAdd(Client.selectedSpellChildIndex); + var10.packetBuffer.writeIntME(var1); + var10.packetBuffer.writeShortAdd(var4); + var10.packetBuffer.writeShortAddLE(Client.selectedSpellItemId); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 16) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.f53, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAdd(class59.field302); + var9.packetBuffer.writeShortAddLE(var3); + var9.packetBuffer.writeShortAddLE(class221.field1877); + var9.packetBuffer.writeShort(class101.baseY + var1); + var9.packetBuffer.writeInt(class195.field1620); + Client.packetWriter.addNode(var9); + } + + if (var2 == 1001) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOC5, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeShortAdd(class101.baseY + var1); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAdd(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 10) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPC2, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortLE(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 9) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPC1, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShort(var3); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 15) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYERT, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortAddLE(Client.selectedSpellItemId); + var10.packetBuffer.writeShortLE(var3); + var10.packetBuffer.writeShortAdd(Client.selectedSpellChildIndex); + var10.packetBuffer.writeIntME(class348.selectedSpellWidget); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 1) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.field2604, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeIntME(class195.field1620); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeShortLE(class221.field1877); + var9.packetBuffer.writeShortAdd(var3); + var9.packetBuffer.writeShortLE(class59.field302); + var9.packetBuffer.writeShortAdd(class101.baseY + var1); + Client.packetWriter.addNode(var9); + } + + if (var2 == 1003) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + var14 = Client.npcs[var3]; + if (var14 != null) { + NPCComposition var19 = var14.definition; + if (var19.transforms != null) { + var19 = var19.transform(); + } + + if (var19 != null) { + var13 = class113.getPacketBufferNode(ClientPacket.CLOSE_MODAL, Client.packetWriter.isaacCipher); + var13.packetBuffer.writeShortAddLE(var19.id); + Client.packetWriter.addNode(var13); + } + } + } + + if (var2 == 4) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOC2, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShort(class101.baseY + var1); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 1008 || var2 == 1009 || var2 == 1010 || var2 == 1011 || var2 == 1012) { + NewShit.worldMap.worldMapMenuAction(var2, var3, new Coord(var0), new Coord(var1)); + } + + if (var2 == 49) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER6, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 23) { + if (Client.isMenuOpen) { + class36.scene.setViewportWalking(); + } else { + class36.scene.menuOpen(ItemLayer.Client_plane, var0, var1, true); + } + } + + if (var2 == 44) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER1, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShort(var3); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 45) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER2, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortAdd(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 7) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.field2587, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShortAddLE(var3); + var10.packetBuffer.writeShort(class59.field302); + var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeIntLE(class195.field1620); + var10.packetBuffer.writeShort(class221.field1877); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 29) { + var9 = class113.getPacketBufferNode(ClientPacket.WIDGET_TYPE5, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeInt(var1); + Client.packetWriter.addNode(var9); + var16 = HealthBarDefinition.widgetDefinition.method1733(var1); + if (var16 != null && var16.cs1Instructions != null && var16.cs1Instructions[0][0] == 5) { + var11 = var16.cs1Instructions[0][1]; + if (Varps.Varps_main[var11] != var16.cs1ComparisonValues[0]) { + Varps.Varps_main[var11] = var16.cs1ComparisonValues[0]; + Projectile.changeGameOptions(var11); + } + } + } + + if (var2 == 13) { + var14 = Client.npcs[var3]; + if (var14 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPNPC5, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByteSub(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 19) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJ2, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeShortAddLE(class101.baseY + var1); + var9.packetBuffer.writeShortLE(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 14) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYERU, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeShort(class221.field1877); + var10.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShortLE(class59.field302); + var10.packetBuffer.writeShortLE(var3); + var10.packetBuffer.writeInt(class195.field1620); + Client.packetWriter.addNode(var10); + } + } + + if (var2 == 5) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPLOC3, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeByteNeg(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var9.packetBuffer.writeShortAddLE(class101.baseY + var1); + var9.packetBuffer.writeShortAdd(var0 + NewShit.baseX); + var9.packetBuffer.writeShortAdd(var3); + Client.packetWriter.addNode(var9); + } + + if (var2 == 18) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var9 = class113.getPacketBufferNode(ClientPacket.OPOBJ1, Client.packetWriter.isaacCipher); + var9.packetBuffer.writeShort(class101.baseY + var1); + var9.packetBuffer.writeShort(var0 + NewShit.baseX); + var9.packetBuffer.writeShortLE(var3); + var9.packetBuffer.writeByteAdd(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + Client.packetWriter.addNode(var9); + } + + if (var2 == 46) { + var15 = Client.players[var3]; + if (var15 != null) { + Client.mouseCrossX = var7; + Client.mouseCrossY = var8; + Client.mouseCrossColor = 2; + Client.mouseCrossState = 0; + Client.destinationX = var0; + Client.destinationY = var1; + var10 = class113.getPacketBufferNode(ClientPacket.OPPLAYER3, Client.packetWriter.isaacCipher); + var10.packetBuffer.writeByte(Client.keyHandlerInstance.getKeyPressed(82) ? 1 : 0); + var10.packetBuffer.writeShort(var3); + Client.packetWriter.addNode(var10); + } + } + + if (Client.isItemSelected != 0) { + Client.isItemSelected = 0; + class159.invalidateWidget(HealthBarDefinition.widgetDefinition.method1733(class195.field1620)); + } + + if (Client.isSpellSelected) { + class53.method308(); + } + + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class408.java b/osrs/src/main/java/class408.java index 93f100987..05906ce98 100644 --- a/osrs/src/main/java/class408.java +++ b/osrs/src/main/java/class408.java @@ -1,118 +1,37 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Iterator; - -@ObfuscatedName("pp") -public class class408 extends SongTask { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - AbstractArchive field3728; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - AbstractArchive field3726; - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - AbstractArchive field3727; - - @ObfuscatedSignature( - descriptor = "(Lpm;Lnu;Lnu;Lnu;)V" - ) - public class408(SongTask var1, AbstractArchive var2, AbstractArchive var3, AbstractArchive var4) { - super(var1); - this.field3728 = var2; - this.field3726 = var3; - this.field3727 = var4; - super.field3722 = "LoadSongTask"; +@ObfuscatedName("pn") +public class class408 { + @ObfuscatedName("at") + public char field3716; + @ObfuscatedName("ah") + public int field3717; + @ObfuscatedName("ar") + public int field3718; + + class408() { + this.field3717 = 0; + this.field3718 = 0; } - @ObfuscatedName("au") + @ObfuscatedName("ce") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1604030758" + descriptor = "(Ltu;I)Ljava/lang/Object;", + garbageValue = "-458356510" ) - public boolean vmethod2142() { - int var1 = 0; - Iterator var2 = class305.musicSongs.iterator(); - - while (true) { - while (var2.hasNext()) { - MusicSong var3 = (MusicSong)var2.next(); - if (var3 != null && var3.midiPcmStream.field2809 > 1 && var3.midiPcmStream.method1637()) { - this.method2138("Attempted to load patches of already loading midiplayer!"); - return true; - } - - if (var3 != null && !var3.field2866) { - try { - if (var3.musicTrackArchive != null && var3.musicTrackGroupId != -1 && var3.musicTrackFileId != -1) { - if (var3.field2872 == null) { - var3.field2872 = MusicTrack.readTrack(var3.musicTrackArchive, var3.musicTrackGroupId, var3.musicTrackFileId); - if (var3.field2872 == null) { - continue; - } - } - - if (var3.field2861 == null) { - var3.field2861 = new SoundCache(this.field3727, this.field3726); - } - - if (var3.midiPcmStream.method1630(var3.field2872, this.field3728, var3.field2861)) { - ++var1; - var3.field2866 = true; - var3.midiPcmStream.method1631(); - } - } else { - ++var1; - } - } catch (Exception var5) { - Messages.RunException_sendStackTrace((String)null, var5); - this.method2138(var5.getMessage()); - return true; - } - } else { - ++var1; - } - } - - if (var1 == class305.musicSongs.size()) { - return true; - } - - return false; - } - } - - @ObfuscatedName("nr") - @ObfuscatedSignature( - descriptor = "(IIIILui;Lme;I)V", - garbageValue = "-1567258086" - ) - @Export("worldToMinimap") - static final void worldToMinimap(int var0, int var1, int var2, int var3, SpritePixels var4, SpriteMask var5) { - int var6 = var3 * var3 + var2 * var2; - if (var6 > 4225 && var6 < 90000) { - int var7 = Client.camAngleY & 2047; - int var8 = Rasterizer3D.Rasterizer3D_sine[var7]; - int var9 = Rasterizer3D.Rasterizer3D_cosine[var7]; - int var10 = var3 * var8 + var9 * var2 >> 16; - int var11 = var3 * var9 - var8 * var2 >> 16; - double var12 = Math.atan2((double)var10, (double)var11); - int var14 = var5.width / 2 - 25; - int var15 = (int)(Math.sin(var12) * (double)var14); - int var16 = (int)(Math.cos(var12) * (double)var14); - byte var17 = 20; - class167.redHintArrowSprite.method2686(var15 + (var0 + var5.width / 2 - var17 / 2), var5.height / 2 + var1 - var17 / 2 - var16 - 10, var17, var17, 15, 15, var12, 256); + static Object method2096(class514 var0) { + if (var0 == null) { + throw new IllegalStateException("popValueOfType() failure - null baseVarType"); } else { - class210.drawSpriteOnMinimap(var0, var1, var2, var3, var4, var5); + switch(var0.field4129) { + case 0: + return Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + case 2: + return Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + default: + throw new IllegalStateException("popValueOfType() failure - unsupported type"); + } } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class409.java b/osrs/src/main/java/class409.java deleted file mode 100644 index 2c0f76cb8..000000000 --- a/osrs/src/main/java/class409.java +++ /dev/null @@ -1,94 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; - -import java.util.Random; - -@ObfuscatedName("pg") -public class class409 { - @ObfuscatedName("au") - @Export("writeRandomDat") - public static void writeRandomDat(byte[] var0, int var1, byte[] var2, int var3, int var4) { - if (var2 == var0) { - if (var3 == var1) { - return; - } - - if (var3 > var1 && var3 < var4 + var1) { - --var4; - var1 += var4; - var3 += var4; - var4 = var1 - var4; - - for (var4 += 7; var1 >= var4; var2[var3--] = var0[var1--]) { - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - var2[var3--] = var0[var1--]; - } - - for (var4 -= 7; var1 >= var4; var2[var3--] = var0[var1--]) { - } - - return; - } - } - - var4 += var1; - - for (var4 -= 7; var1 < var4; var2[var3++] = var0[var1++]) { - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - var2[var3++] = var0[var1++]; - } - - for (var4 += 7; var1 < var4; var2[var3++] = var0[var1++]) { - } - - } - - @ObfuscatedName("af") - @Export("clearIntArray") - public static void clearIntArray(int[] var0, int var1, int var2) { - for (var2 = var2 + var1 - 7; var1 < var2; var0[var1++] = 0) { - var0[var1++] = 0; - var0[var1++] = 0; - var0[var1++] = 0; - var0[var1++] = 0; - var0[var1++] = 0; - var0[var1++] = 0; - var0[var1++] = 0; - } - - for (var2 += 7; var1 < var2; var0[var1++] = 0) { - } - - } - - @ObfuscatedName("ad") - public static void method2146(int[] var0, int var1, int var2, int var3) { - if (var2 == 0 && var3 == 0) { - var2 = (int)(Math.random() * 2.147483647E9D); - var3 = (int)(Math.random() * 2.147483647E9D); - } - - long var4 = (long)var2 << 32 | (long)var3; - Random var6 = new Random(var4); - - for (int var7 = var1 - 1; var7 > 0; --var7) { - int var8 = var6.nextInt(var7 + 1); - if (var7 != var8) { - int var9 = var0[var7]; - var0[var7] = var0[var8]; - var0[var8] = var9; - } - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class410.java b/osrs/src/main/java/class410.java index 803257c7c..725a2b28d 100644 --- a/osrs/src/main/java/class410.java +++ b/osrs/src/main/java/class410.java @@ -1,30 +1,183 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ph") +import java.util.Date; + +@ObfuscatedName("pd") public class class410 { - @ObfuscatedName("ax") - @Export("ByteArrayPool_arrays") - static byte[][][] ByteArrayPool_arrays; - @ObfuscatedName("au") - int field3733; - @ObfuscatedName("ae") - int field3730; - @ObfuscatedName("ao") - int field3731; @ObfuscatedName("at") - int field3732; - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - boolean var1 = true; - int var2 = 10 - Integer.toString(this.field3733).length(); - int var3 = 10 - Integer.toString(this.field3731).length(); - int var4 = 10 - Integer.toString(this.field3730).length(); - String var5 = " ".substring(10 - var2); - String var6 = " ".substring(10 - var3); - String var7 = " ".substring(10 - var4); - return " Size: " + this.field3733 + var5 + "Created: " + this.field3730 + var7 + "Total used: " + this.field3731 + var6 + "Max-In-Use: " + this.field3732; + @ObfuscatedSignature( + descriptor = "Lpv;" + ) + class406 field3743; + @ObfuscatedName("ah") + int field3741; + @ObfuscatedName("ar") + int field3742; + + @ObfuscatedSignature( + descriptor = "(Lpv;II)V" + ) + class410(class406 var1, int var2, int var3) { + this.field3741 = 0; + this.field3742 = 0; + this.field3743 = var1; + this.field3741 = var2; + this.field3742 = var3; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "2063026916" + ) + public String method2131() { + if (this.method2133()) { + return ""; + } else { + StringBuilder var1 = new StringBuilder(this.method2134()); + + for (int var2 = this.field3741; var2 < this.field3742; ++var2) { + class408 var3 = this.field3743.method2051(var2); + var1.append(var3.field3716); + } + + return var1.toString(); + } + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Z", + garbageValue = "1949431779" + ) + boolean method2132(int var1) { + return this.field3743.method2083() == 2 || this.field3743.method2083() == 1 && (!this.field3743.field3705 || this.field3742 - 1 != var1); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "43" + ) + public boolean method2133() { + return this.field3742 == this.field3741; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "25" + ) + public int method2134() { + return this.field3742 - this.field3741; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Lpn;I)Z", + garbageValue = "-1150378981" + ) + boolean method2135(class408 var1) { + if (this.field3743.field3706 == 2) { + return true; + } else if (this.field3743.field3706 == 0) { + return false; + } else { + return this.field3743.method2052() != var1; + } + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(S)I", + garbageValue = "128" + ) + int method2136() { + if (this.method2133()) { + return 0; + } else { + class408 var1 = this.field3743.method2051(this.field3742 - 1); + if (var1.field3716 == '\n') { + return 0; + } else if (this.method2135(var1)) { + return this.field3743.field3714.advances[42]; + } else { + int var2 = this.field3743.field3714.advances[var1.field3716]; + if (var2 == 0) { + return var1.field3716 == '\t' ? this.field3743.field3714.advances[32] * 3 : this.field3743.field3714.advances[32]; + } else { + return var2; + } + } + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)Lti;", + garbageValue = "-1126162265" + ) + public class497 method2137() { + if (this.method2133()) { + return new class497(0, 0); + } else { + class408 var1 = this.field3743.method2051(this.field3742 - 1); + return new class497(var1.field3717 + this.method2136(), var1.field3718); + } + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(II)Lpn;", + garbageValue = "262474299" + ) + public class408 method2138(int var1) { + return var1 >= 0 && var1 < this.method2134() ? this.field3743.method2051(this.field3741 + var1) : null; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-127" + ) + public static final void method2139() { + ViewportMouse.ViewportMouse_isInViewport = false; + ViewportMouse.ViewportMouse_entityCount = 0; + } + + @ObfuscatedName("nz") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1487231086" + ) + static void method2140(String var0) { + MenuAction.param9 = var0; + + try { + String var1 = SpriteMask.client.getParameter(Integer.toString(18)); + String var2 = SpriteMask.client.getParameter(Integer.toString(13)); + String var3 = var1 + "settings=" + var0 + "; version=1; path=/; domain=" + var2; + if (var0.length() == 0) { + var3 = var3 + "; Expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0"; + } else { + String var4 = var3 + "; Expires="; + long var6 = SpotAnimationDefinition.method962() + 94608000000L; + Calendar.Calendar_calendar.setTime(new Date(var6)); + int var8 = Calendar.Calendar_calendar.get(7); + int var9 = Calendar.Calendar_calendar.get(5); + int var10 = Calendar.Calendar_calendar.get(2); + int var11 = Calendar.Calendar_calendar.get(1); + int var12 = Calendar.Calendar_calendar.get(11); + int var13 = Calendar.Calendar_calendar.get(12); + int var14 = Calendar.Calendar_calendar.get(13); + String var5 = Calendar.DAYS_OF_THE_WEEK[var8 - 1] + ", " + var9 / 10 + var9 % 10 + "-" + Calendar.MONTH_NAMES_ENGLISH_GERMAN[0][var10] + "-" + var11 + " " + var12 / 10 + var12 % 10 + ":" + var13 / 10 + var13 % 10 + ":" + var14 / 10 + var14 % 10 + " GMT"; + var3 = var4 + var5 + "; Max-Age=" + 94608000L; + } + + class26.method107(SpriteMask.client, "document.cookie=\"" + var3 + "\""); + } catch (Throwable var15) { + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class413.java b/osrs/src/main/java/class413.java new file mode 100644 index 000000000..0eb3ff8e6 --- /dev/null +++ b/osrs/src/main/java/class413.java @@ -0,0 +1,75 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.ArrayList; +import java.util.Iterator; + +@ObfuscatedName("pq") +public class class413 extends SongTask { + @ObfuscatedName("at") + ArrayList field3745; + + @ObfuscatedSignature( + descriptor = "(Lql;Ljava/util/ArrayList;)V" + ) + public class413(SongTask var1, ArrayList var2) { + super(var1); + super.field3756 = "ClearRequestTask"; + this.field3745 = var2; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "-799935345" + ) + @Export("vmethod2142") + public boolean vmethod2142() { + if (this.field3745.isEmpty()) { + return true; + } else { + Iterator var1 = this.field3745.iterator(); + + while (var1.hasNext()) { + MusicSong var2 = (MusicSong)var1.next(); + + try { + if (class316.musicSongs.contains(var2)) { + if (var2 == null) { + class316.musicSongs.remove(var2); + } else { + if (var2.midiPcmStream.field2830 > 0) { + --var2.midiPcmStream.field2830; + } + + if (var2.midiPcmStream.field2830 == 0) { + var2.midiPcmStream.clear(); + var2.midiPcmStream.method1657(); + var2.midiPcmStream.setPcmStreamVolume(0); + } + + int var3 = var2.musicTrackGroupId; + int var4 = var2.musicTrackFileId; + Iterator var5 = class316.field2793.iterator(); + + while (var5.hasNext()) { + class322 var6 = (class322)var5.next(); + var6.vmethod1644(var3, var4); + } + + class316.musicSongs.remove(var2); + } + } + } catch (Exception var8) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var8); + this.method2160(var8.getMessage()); + class316.musicSongs.clear(); + return true; + } + } + + return true; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class415.java b/osrs/src/main/java/class415.java index c213ddefa..8980f07c1 100644 --- a/osrs/src/main/java/class415.java +++ b/osrs/src/main/java/class415.java @@ -1,270 +1,186 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.Reflection; -import java.io.IOException; +import java.io.*; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Iterator; -@ObfuscatedName("pw") -public class class415 { - @ObfuscatedName("hj") +@ObfuscatedName("py") +public class class415 extends SongTask { @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "66" + descriptor = "(Lql;)V" ) - @Export("reloadJS5") - static void reloadJS5() { - if (KeyHandler.varcs.hasUnwrittenChanges()) { - KeyHandler.varcs.write(); - } - - if (class126.mouseRecorder != null) { - class126.mouseRecorder.isRunning = false; - } - - class126.mouseRecorder = null; - Client.packetWriter.close(); - if (GameEngine.taskHandler != null) { - try { - GameEngine.taskHandler.close(); - } catch (Exception var3) { - } - } - - GameEngine.taskHandler = null; - Tiles.method461(); - class1.archive2.clearFiles(); - Player.archive13.clearFiles(); - class106.field1107.clearFiles(); - Tiles.field838.clearFiles(); - class10.field28.clearFiles(); - WorldMapElement.field1509.clearFiles(); - ClanChannelMember.field1339.clearFiles(); - class227.field2040.clearFiles(); - class72.method424(); - class130.scene.clear(); - - for (int var1 = 0; var1 < 4; ++var1) { - Client.collisionMaps[var1].clear(); - } - - Canvas.worldMap = null; - Script.method445(0, 0); - UrlRequester.method652(); - Client.playingJingle = false; - class388.method2029(); - if (AddRequestTask.pcmPlayer1 != null) { - AddRequestTask.pcmPlayer1.shutdown(); - } - - class308.field2819.method1940(); - class214.method1124(); - if (FriendsChat.urlRequester != null) { - FriendsChat.urlRequester.close(); - } - - class510.method2513(); - JagexCache.JagexCache_dat2File = null; - JagexCache.JagexCache_idx255File = null; - WallDecoration.JagexCache_idxFiles = null; - ItemContainer.method468(); - class6.masterDisk = null; - Client.archiveLoaders.clear(); - Client.field550 = 0; - class308.field2819 = new JagNetThread(); - FriendsChat.urlRequester = new class113(class219.client.field661, 216); - - try { - SecureRandomCallable.method462("oldschool", class30.field83, WorldMapLabelSize.field2323.name, 0, 22); - } catch (IOException var2) { - throw new RuntimeException(var2); - } - - class6.masterDisk = new ArchiveDisk(255, JagexCache.JagexCache_dat2File, JagexCache.JagexCache_idx255File, 500000); - GameEngine.taskHandler = new TaskHandler(); - class219.client.method152(); - Client.field419 = class92.field940; - MusicSong.updateGameState(0); + public class415(SongTask var1) { + super(var1); + super.field3756 = "StartSongTask"; } - @ObfuscatedName("ix") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1762836764" + descriptor = "(I)Z", + garbageValue = "-799935345" ) - static final void method2159() { - int var0; - int var1; - int var2; - int var3; - int var4; - int var5; - if (Client.oculusOrbState == 0) { - var0 = VarbitComposition.localPlayer.x; - var1 = VarbitComposition.localPlayer.y; - if (FriendLoginUpdate.oculusOrbFocalPointX - var0 < -500 || FriendLoginUpdate.oculusOrbFocalPointX - var0 > 500 || HealthBar.oculusOrbFocalPointY - var1 < -500 || HealthBar.oculusOrbFocalPointY - var1 > 500) { - FriendLoginUpdate.oculusOrbFocalPointX = var0; - HealthBar.oculusOrbFocalPointY = var1; - } - - if (var0 != FriendLoginUpdate.oculusOrbFocalPointX) { - FriendLoginUpdate.oculusOrbFocalPointX += (var0 - FriendLoginUpdate.oculusOrbFocalPointX) / 16; - } - - if (var1 != HealthBar.oculusOrbFocalPointY) { - HealthBar.oculusOrbFocalPointY += (var1 - HealthBar.oculusOrbFocalPointY) / 16; - } - - var2 = FriendLoginUpdate.oculusOrbFocalPointX >> 7; - var3 = HealthBar.oculusOrbFocalPointY >> 7; - var4 = class18.getTileHeight(FriendLoginUpdate.oculusOrbFocalPointX, HealthBar.oculusOrbFocalPointY, HealthBar.Client_plane); - var5 = 0; - int var6; - if (var2 > 3 && var3 > 3 && var2 < 100 && var3 < 100) { - for (var6 = var2 - 4; var6 <= var2 + 4; ++var6) { - for (int var7 = var3 - 4; var7 <= var3 + 4; ++var7) { - int var8 = HealthBar.Client_plane; - if (var8 < 3 && (Tiles.Tiles_renderFlags[1][var6][var7] & 2) == 2) { - ++var8; - } - - int var9 = var4 - Tiles.Tiles_heights[var8][var6][var7]; - if (var9 > var5) { - var5 = var9; - } + @Export("vmethod2142") + public boolean vmethod2142() { + Iterator var1 = class316.musicSongs.iterator(); + + while (var1.hasNext()) { + MusicSong var2 = (MusicSong)var1.next(); + if (var2 != null && !var2.field2883 && var2.midiPcmStream != null) { + try { + var2.midiPcmStream.method1656(); + var2.midiPcmStream.setPcmStreamVolume(0); + if (var2.field2891 != null) { + var2.midiPcmStream.setMusicTrack(var2.field2891, var2.musicTrackBoolean); } - } - } - - var6 = var5 * 192; - if (var6 > 98048) { - var6 = 98048; - } - - if (var6 < 32768) { - var6 = 32768; - } - if (var6 > Client.field467) { - Client.field467 += (var6 - Client.field467) / 24; - } else if (var6 < Client.field467) { - Client.field467 += (var6 - Client.field467) / 80; + var2.field2891 = null; + var2.field2881 = null; + var2.musicTrackArchive = null; + var2.field2883 = true; + } catch (Exception var4) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var4); + this.method2160(var4.getMessage()); + return true; + } } + } - class125.field1194 = class18.getTileHeight(VarbitComposition.localPlayer.x, VarbitComposition.localPlayer.y, HealthBar.Client_plane) - Client.camFollowHeight; - } else if (Client.oculusOrbState == 1) { - class28.method111(); - short var10 = -1; - if (Client.keyHandlerInstance.getKeyPressed(33)) { - var10 = 0; - } else if (Client.keyHandlerInstance.getKeyPressed(49)) { - var10 = 1024; - } + super.field3754 = true; + return true; + } - if (Client.keyHandlerInstance.getKeyPressed(48)) { - if (var10 == 0) { - var10 = 1792; - } else if (var10 == 1024) { - var10 = 1280; - } else { - var10 = 1536; - } - } else if (Client.keyHandlerInstance.getKeyPressed(50)) { - if (var10 == 0) { - var10 = 256; - } else if (var10 == 1024) { - var10 = 768; + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "([BB)Ljava/lang/String;", + garbageValue = "14" + ) + public static String method2150(byte[] var0) { + int var2 = var0.length; + StringBuilder var3 = new StringBuilder(); + + for (int var4 = 0; var4 < var2 + 0; var4 += 3) { + int var5 = var0[var4] & 255; + var3.append(class397.field3689[var5 >>> 2]); + if (var4 < var2 - 1) { + int var6 = var0[var4 + 1] & 255; + var3.append(class397.field3689[(var5 & 3) << 4 | var6 >>> 4]); + if (var4 < var2 - 2) { + int var7 = var0[var4 + 2] & 255; + var3.append(class397.field3689[(var6 & 15) << 2 | var7 >>> 6]).append(class397.field3689[var7 & 63]); } else { - var10 = 512; + var3.append(class397.field3689[(var6 & 15) << 2]).append("="); } + } else { + var3.append(class397.field3689[(var5 & 3) << 4]).append("=="); } + } - byte var11 = 0; - if (Client.keyHandlerInstance.getKeyPressed(35)) { - var11 = -1; - } else if (Client.keyHandlerInstance.getKeyPressed(51)) { - var11 = 1; - } - - var2 = 0; - if (var10 >= 0 || var11 != 0) { - var2 = Client.keyHandlerInstance.getKeyPressed(81) ? Client.oculusOrbSlowedSpeed * 1039153205 * -557098467 : Client.oculusOrbNormalSpeed * -554086649 * 623963831; - var2 *= 16; - Client.field468 = var10; - Client.field471 = var11; - } - - if (Client.field480 < var2) { - Client.field480 += var2 / 8; - if (Client.field480 > var2) { - Client.field480 = var2; - } - } else if (Client.field480 > var2) { - Client.field480 = Client.field480 * 9 / 10; - } + String var1 = var3.toString(); + return var1; + } - if (Client.field480 > 0) { - var3 = Client.field480 / 16; - if (Client.field468 >= 0) { - var0 = Client.field468 - UserComparator10.cameraYaw & 2047; - var4 = Rasterizer3D.Rasterizer3D_sine[var0]; - var5 = Rasterizer3D.Rasterizer3D_cosine[var0]; - FriendLoginUpdate.oculusOrbFocalPointX += var4 * var3 / 65536; - HealthBar.oculusOrbFocalPointY += var5 * var3 / 65536; - } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Luo;I)V", + garbageValue = "1697357932" + ) + @Export("performReflectionCheck") + public static void performReflectionCheck(PacketBuffer var0) { + ReflectionCheck var1 = (ReflectionCheck)class36.reflectionChecks.last(); + if (var1 != null) { + int var2 = var0.offset; + var0.writeInt(var1.id); + + for (int var3 = 0; var3 < var1.size; ++var3) { + if (var1.creationErrors[var3] != 0) { + var0.writeByte(var1.creationErrors[var3]); + } else { + try { + int var4 = var1.operations[var3]; + Field var5; + int var6; + if (var4 == 0) { + var5 = var1.fields[var3]; + var6 = Reflection.getInt(var5, (Object)null); + var0.writeByte(0); + var0.writeInt(var6); + } else if (var4 == 1) { + var5 = var1.fields[var3]; + Reflection.setInt(var5, (Object)null, var1.intReplaceValues[var3]); + var0.writeByte(0); + } else if (var4 == 2) { + var5 = var1.fields[var3]; + var6 = var5.getModifiers(); + var0.writeByte(0); + var0.writeInt(var6); + } - if (Client.field471 != 0) { - class125.field1194 += var3 * Client.field471; - if (class125.field1194 > 0) { - class125.field1194 = 0; + Method var25; + if (var4 != 3) { + if (var4 == 4) { + var25 = var1.methods[var3]; + var6 = var25.getModifiers(); + var0.writeByte(0); + var0.writeInt(var6); + } + } else { + var25 = var1.methods[var3]; + byte[][] var10 = var1.arguments[var3]; + Object[] var7 = new Object[var10.length]; + + for (int var8 = 0; var8 < var10.length; ++var8) { + ObjectInputStream var9 = new ObjectInputStream(new ByteArrayInputStream(var10[var8])); + var7[var8] = var9.readObject(); + } + + Object var11 = Reflection.invoke(var25, (Object)null, var7); + if (var11 == null) { + var0.writeByte(0); + } else if (var11 instanceof Number) { + var0.writeByte(1); + var0.writeLong(((Number)var11).longValue()); + } else if (var11 instanceof String) { + var0.writeByte(2); + var0.writeStringCp1252NullTerminated((String)var11); + } else { + var0.writeByte(4); + } + } + } catch (ClassNotFoundException var13) { + var0.writeByte(-10); + } catch (InvalidClassException var14) { + var0.writeByte(-11); + } catch (StreamCorruptedException var15) { + var0.writeByte(-12); + } catch (OptionalDataException var16) { + var0.writeByte(-13); + } catch (IllegalAccessException var17) { + var0.writeByte(-14); + } catch (IllegalArgumentException var18) { + var0.writeByte(-15); + } catch (InvocationTargetException var19) { + var0.writeByte(-16); + } catch (SecurityException var20) { + var0.writeByte(-17); + } catch (IOException var21) { + var0.writeByte(-18); + } catch (NullPointerException var22) { + var0.writeByte(-19); + } catch (Exception var23) { + var0.writeByte(-20); + } catch (Throwable var24) { + var0.writeByte(-21); } } - } else { - Client.field468 = -1; - Client.field471 = -1; } - if (Client.keyHandlerInstance.getKeyPressed(13)) { - ObjectSound.method416(); - } + var0.writeCrc(var2); + var1.remove(); } - - if (MouseHandler.MouseHandler_currentButton == 4 && ObjTypeCustomisation.mouseCam) { - var0 = MouseHandler.MouseHandler_y - Client.field465; - Client.camAngleDX = var0 * 2; - Client.field465 = var0 != -1 && var0 != 1 ? (Client.field465 + MouseHandler.MouseHandler_y) / 2 : MouseHandler.MouseHandler_y * 1545391541 * 1675983005; - var1 = Client.field473 - MouseHandler.MouseHandler_x; - Client.camAngleDY = var1 * 2; - Client.field473 = var1 != -1 && var1 != 1 ? (MouseHandler.MouseHandler_x + Client.field473) / 2 : MouseHandler.MouseHandler_x * 72258787 * 2105757899; - } else { - if (Client.keyHandlerInstance.getKeyPressed(96)) { - Client.camAngleDY += (-24 - Client.camAngleDY) / 2; - } else if (Client.keyHandlerInstance.getKeyPressed(97)) { - Client.camAngleDY += (24 - Client.camAngleDY) / 2; - } else { - Client.camAngleDY /= 2; - } - - if (Client.keyHandlerInstance.getKeyPressed(98)) { - Client.camAngleDX += (12 - Client.camAngleDX) / 2; - } else if (Client.keyHandlerInstance.getKeyPressed(99)) { - Client.camAngleDX += (-12 - Client.camAngleDX) / 2; - } else { - Client.camAngleDX /= 2; - } - - Client.field465 = MouseHandler.MouseHandler_y; - Client.field473 = MouseHandler.MouseHandler_x; - } - - Client.camAngleY = Client.camAngleDY / 2 + Client.camAngleY & 2047; - Client.camAngleX += Client.camAngleDX / 2; - if (Client.camAngleX < 128) { - Client.camAngleX = 128; - } - - if (Client.camAngleX > 383) { - Client.camAngleX = 383; - } - } } \ No newline at end of file diff --git a/osrs/src/main/java/class416.java b/osrs/src/main/java/class416.java deleted file mode 100644 index d29179b61..000000000 --- a/osrs/src/main/java/class416.java +++ /dev/null @@ -1,82 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("qe") -public class class416 { - @ObfuscatedName("ag") - @Export("ByteArrayPool_alternativeSizes") - static int[] ByteArrayPool_alternativeSizes; - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "-1333151916" - ) - @Export("addChatMessage") - static void addChatMessage(int var0, String var1, String var2, String var3) { - ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0); - if (var4 == null) { - var4 = new ChatChannel(); - Messages.Messages_channels.put(var0, var4); - } - - Message var5 = var4.addMessage(var0, var1, var2, var3); - Messages.Messages_hashTable.put(var5, (long)var5.count); - Messages.Messages_queue.add(var5); - Client.chatCycle = Client.cycleCntr; - } - - @ObfuscatedName("ia") - @ObfuscatedSignature( - descriptor = "(III)V", - garbageValue = "-2143808168" - ) - static final void method2161(int var0, int var1) { - if (var0 < 128) { - var0 = 128; - } else if (var0 > 383) { - var0 = 383; - } - - if (class129.cameraPitch < var0) { - class129.cameraPitch = (var0 - class129.cameraPitch) * WorldMapElement.cameraLookAtAcceleration / 1000 + class129.cameraPitch + class33.cameraLookAtSpeed; - if (class129.cameraPitch > var0) { - class129.cameraPitch = var0; - } - } else if (class129.cameraPitch > var0) { - class129.cameraPitch -= (class129.cameraPitch - var0) * WorldMapElement.cameraLookAtAcceleration / 1000 + class33.cameraLookAtSpeed; - if (class129.cameraPitch < var0) { - class129.cameraPitch = var0; - } - } - - var1 &= 2047; - int var2 = var1 - UserComparator10.cameraYaw; - if (var2 > 1024) { - var2 -= 2048; - } else if (var2 < -1024) { - var2 += 2048; - } - - if (var2 > 0) { - UserComparator10.cameraYaw = UserComparator10.cameraYaw + class33.cameraLookAtSpeed + var2 * WorldMapElement.cameraLookAtAcceleration / 1000; - UserComparator10.cameraYaw &= 2047; - } else if (var2 < 0) { - UserComparator10.cameraYaw -= -var2 * WorldMapElement.cameraLookAtAcceleration / 1000 + class33.cameraLookAtSpeed; - UserComparator10.cameraYaw &= 2047; - } - - int var3 = var1 - UserComparator10.cameraYaw; - if (var3 > 1024) { - var3 -= 2048; - } else if (var3 < -1024) { - var3 += 2048; - } - - if (var3 < 0 && var2 > 0 || var3 > 0 && var2 < 0) { - UserComparator10.cameraYaw = var1; - } - - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class418.java b/osrs/src/main/java/class418.java deleted file mode 100644 index a68fecf0e..000000000 --- a/osrs/src/main/java/class418.java +++ /dev/null @@ -1,45 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("qn") -public class class418 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lqn;" - ) - static final class418 field3759; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lqn;" - ) - static final class418 field3758; - @ObfuscatedName("ao") - final String field3760; - - static { - field3759 = new class418("Basic"); - field3758 = new class418("Bearer"); - } - - class418(String var1) { - this.field3760 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "75" - ) - String method2162() { - return this.field3760; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)[Lrq;", - garbageValue = "-2125486223" - ) - static class453[] method2163() { - return new class453[]{class453.field3896, class453.field3893, class453.field3894, class453.field3895}; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class419.java b/osrs/src/main/java/class419.java deleted file mode 100644 index c91875c43..000000000 --- a/osrs/src/main/java/class419.java +++ /dev/null @@ -1,182 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import javax.net.ssl.HttpsURLConnection; -import java.text.DecimalFormat; -import java.util.*; -import java.util.Map.Entry; - -@ObfuscatedName("qf") -public class class419 { - @ObfuscatedName("nx") - @Export("menuY") - static int menuY; - @ObfuscatedName("at") - final Map field3764; - @ObfuscatedName("ac") - final Map field3763; - @ObfuscatedName("ai") - final DecimalFormat field3762; - - public class419() { - this.field3764 = new HashMap(); - this.field3763 = new HashMap(); - this.field3762 = new DecimalFormat(); - this.field3762.setMaximumFractionDigits(2); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljavax/net/ssl/HttpsURLConnection;B)V", - garbageValue = "14" - ) - public void method2164(HttpsURLConnection var1) { - Iterator var2 = this.field3764.entrySet().iterator(); - - while (var2.hasNext()) { - Entry var3 = (Entry)var2.next(); - var1.setRequestProperty((String)var3.getKey(), (String)var3.getValue()); - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)Ljava/util/Map;", - garbageValue = "1187497182" - ) - public Map method2165() { - return this.field3764; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ljava/lang/String;I)V", - garbageValue = "2091196892" - ) - public void method2166(String var1, String var2) { - if (var1 != null && !var1.isEmpty()) { - this.field3764.put(var1, var2 != null ? var2 : ""); - } - - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-321106609" - ) - public void method2167(String var1) { - if (var1 != null && !var1.isEmpty()) { - this.field3764.remove(var1); - } - - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Lqn;Ljava/lang/String;B)V", - garbageValue = "19" - ) - void method2168(class418 var1, String var2) { - String var3 = String.format("%s %s", var1.method2162(), var2); - this.method2166("Authorization", var3); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-1710758973" - ) - public void method2169(String var1) { - this.method2168(class418.field3759, var1); - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-911338485" - ) - public void method2170(String var1) { - this.method2168(class418.field3758, var1); - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(Lre;I)V", - garbageValue = "858846638" - ) - public void method2171(class460 var1) { - this.field3764.put("Content-Type", var1.method2331()); - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "10" - ) - public void method2172() { - this.field3764.remove("Content-Type"); - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(Lre;B)V", - garbageValue = "103" - ) - public void method2173(class460 var1) { - this.method2174(var1, 1.0F); - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(Lre;FI)V", - garbageValue = "-2080888931" - ) - void method2174(class460 var1, float var2) { - this.field3763.put(var1, Math.max(0.0F, Math.min(1.0F, var2))); - this.method2175(); - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-689194447" - ) - void method2175() { - this.field3764.remove("Accept"); - if (!this.field3763.isEmpty()) { - this.field3764.put("Accept", this.method2176()); - } - - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/String;", - garbageValue = "92" - ) - String method2176() { - ArrayList var1 = new ArrayList(this.field3763.entrySet()); - Collections.sort(var1, new class420(this)); - StringBuilder var2 = new StringBuilder(); - Iterator var3 = var1.iterator(); - - while (var3.hasNext()) { - Entry var4 = (Entry)var3.next(); - if (var2.length() > 0) { - var2.append(","); - } - - var2.append(((class460)var4.getKey()).method2331()); - float var5 = (Float)var4.getValue(); - if (var5 < 1.0F) { - String var6 = this.field3762.format((double)var5); - var2.append(";q=").append(var6); - } - } - - return var2.toString(); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class420.java b/osrs/src/main/java/class420.java index e5802f21b..fd6089359 100644 --- a/osrs/src/main/java/class420.java +++ b/osrs/src/main/java/class420.java @@ -2,47 +2,92 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Comparator; -import java.util.Map.Entry; - -@ObfuscatedName("qr") -class class420 implements Comparator { - @ObfuscatedName("ao") - @Export("SpriteBuffer_spriteHeight") - static int SpriteBuffer_spriteHeight; - // $FF: synthetic field +import java.util.Iterator; + +@ObfuscatedName("qo") +public class class420 extends SongTask { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field3762; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lqf;" + descriptor = "Lol;" ) - @Export("this$0") - @ObfuscatedName("this$0") - final class419 this$0; + AbstractArchive field3761; + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + AbstractArchive field3760; @ObfuscatedSignature( - descriptor = "(Lqf;)V" + descriptor = "(Lql;Lol;Lol;Lol;)V" ) - class420(class419 var1) { - this.this$0 = var1; + public class420(SongTask var1, AbstractArchive var2, AbstractArchive var3, AbstractArchive var4) { + super(var1); + this.field3762 = var2; + this.field3761 = var3; + this.field3760 = var4; + super.field3756 = "LoadSongTask"; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/util/Map$Entry;Ljava/util/Map$Entry;I)I", - garbageValue = "1962289219" + descriptor = "(I)Z", + garbageValue = "-799935345" ) - int method2177(Entry var1, Entry var2) { - return ((Float)var2.getValue()).compareTo((Float)var1.getValue()); - } + @Export("vmethod2142") + public boolean vmethod2142() { + int var1 = 0; + Iterator var2 = class316.musicSongs.iterator(); - @Export("compare") - @ObfuscatedName("compare") - public int compare(Object var1, Object var2) { - return this.method2177((Entry)var1, (Entry)var2); - } + while (true) { + while (var2.hasNext()) { + MusicSong var3 = (MusicSong)var2.next(); + if (var3 != null && var3.midiPcmStream.field2830 > 1 && var3.midiPcmStream.method1661()) { + this.method2160("Attempted to load patches of already loading midiplayer!"); + return true; + } + + if (var3 != null && !var3.field2882) { + try { + if (var3.musicTrackArchive != null && var3.musicTrackGroupId != -1 && var3.musicTrackFileId != -1) { + if (var3.field2891 == null) { + var3.field2891 = MusicTrack.readTrack(var3.musicTrackArchive, var3.musicTrackGroupId, var3.musicTrackFileId); + if (var3.field2891 == null) { + continue; + } + } + + if (var3.field2881 == null) { + var3.field2881 = new SoundCache(this.field3760, this.field3761); + } + + if (var3.midiPcmStream.method1654(var3.field2891, this.field3762, var3.field2881)) { + ++var1; + var3.field2882 = true; + var3.midiPcmStream.method1655(); + } + } else { + ++var1; + } + } catch (Exception var5) { + GrandExchangeOfferWorldComparator.RunException_sendStackTrace((String)null, var5); + this.method2160(var5.getMessage()); + return true; + } + } else { + ++var1; + } + } + + if (var1 == class316.musicSongs.size()) { + return true; + } - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - return super.equals(var1); + return false; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class421.java b/osrs/src/main/java/class421.java index eb43a9331..599972648 100644 --- a/osrs/src/main/java/class421.java +++ b/osrs/src/main/java/class421.java @@ -1,27 +1,94 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("qm") +import java.util.Random; + +@ObfuscatedName("qp") public class class421 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lqm;" - ) - public static final class421 field3766; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lqm;" - ) - static final class421 field3767; - @ObfuscatedName("ao") - final int field3768; - - static { - field3766 = new class421(0); - field3767 = new class421(1); + @ObfuscatedName("at") + @Export("writeRandomDat") + public static void writeRandomDat(byte[] var0, int var1, byte[] var2, int var3, int var4) { + if (var2 == var0) { + if (var3 == var1) { + return; + } + + if (var3 > var1 && var3 < var4 + var1) { + --var4; + var1 += var4; + var3 += var4; + var4 = var1 - var4; + + for (var4 += 7; var1 >= var4; var2[var3--] = var0[var1--]) { + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + var2[var3--] = var0[var1--]; + } + + for (var4 -= 7; var1 >= var4; var2[var3--] = var0[var1--]) { + } + + return; + } + } + + var4 += var1; + + for (var4 -= 7; var1 < var4; var2[var3++] = var0[var1++]) { + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + var2[var3++] = var0[var1++]; + } + + for (var4 += 7; var1 < var4; var2[var3++] = var0[var1++]) { + } + + } + + @ObfuscatedName("az") + @Export("clearIntArray") + public static void clearIntArray(int[] var0, int var1, int var2) { + for (var2 = var2 + var1 - 7; var1 < var2; var0[var1++] = 0) { + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + var0[var1++] = 0; + } + + for (var2 += 7; var1 < var2; var0[var1++] = 0) { + } + } - class421(int var1) { - this.field3768 = var1; + @ObfuscatedName("ap") + public static void method2166(int[] var0, int var1, int var2, int var3) { + if (var2 == 0 && var3 == 0) { + var2 = (int)(Math.random() * 2.147483647E9D); + var3 = (int)(Math.random() * 2.147483647E9D); + } + + long var4 = (long)var2 << 32 | (long)var3; + Random var6 = new Random(var4); + + for (int var7 = var1 - 1; var7 > 0; --var7) { + int var8 = var6.nextInt(var7 + 1); + if (var7 != var8) { + int var9 = var0[var7]; + var0[var7] = var0[var8]; + var0[var8] = var9; + } + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class422.java b/osrs/src/main/java/class422.java index ce1ab0cc5..94a67bf89 100644 --- a/osrs/src/main/java/class422.java +++ b/osrs/src/main/java/class422.java @@ -2,52 +2,299 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Comparator; +@ObfuscatedName("qy") +public class class422 { + @ObfuscatedName("ab") + static int field3763; + @ObfuscatedName("at") + int field3767; + @ObfuscatedName("ah") + int field3764; + @ObfuscatedName("ar") + int field3766; + @ObfuscatedName("ao") + int field3765; -@ObfuscatedName("qw") -class class422 implements Comparator { - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - static AbstractArchive field3769; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lqv;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class423 this$0; + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + boolean var1 = true; + int var2 = 10 - Integer.toString(this.field3767).length(); + int var3 = 10 - Integer.toString(this.field3766).length(); + int var4 = 10 - Integer.toString(this.field3764).length(); + String var5 = " ".substring(10 - var2); + String var6 = " ".substring(10 - var3); + String var7 = " ".substring(10 - var4); + return " Size: " + this.field3767 + var5 + "Created: " + this.field3764 + var7 + "Total used: " + this.field3766 + var6 + "Max-In-Use: " + this.field3765; + } + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(Lqv;)V" + descriptor = "([I[IIII)V", + garbageValue = "-2144991667" ) - class422(class423 var1) { - this.this$0 = var1; + public static void method2167(int[] var0, int[] var1, int var2, int var3) { + if (var2 < var3) { + int var4 = (var3 + var2) / 2; + int var5 = var2; + int var6 = var0[var4]; + var0[var4] = var0[var3]; + var0[var3] = var6; + int var7 = var1[var4]; + var1[var4] = var1[var3]; + var1[var3] = var7; + int var8 = var6 == Integer.MAX_VALUE ? 0 : 1; + + for (int var9 = var2; var9 < var3; ++var9) { + if (var0[var9] < (var9 & var8) + var6) { + int var10 = var0[var9]; + var0[var9] = var0[var5]; + var0[var5] = var10; + int var11 = var1[var9]; + var1[var9] = var1[var5]; + var1[var5++] = var11; + } + } + + var0[var3] = var0[var5]; + var0[var5] = var6; + var1[var3] = var1[var5]; + var1[var5] = var7; + method2167(var0, var1, var2, var5 - 1); + method2167(var0, var1, var5 + 1, var3); + } + } - @ObfuscatedName("au") + @ObfuscatedName("ba") @ObfuscatedSignature( - descriptor = "(Lqj;Lqj;I)I", - garbageValue = "-1576026190" + descriptor = "(ILdt;ZI)I", + garbageValue = "1334389960" ) - int method2178(class424 var1, class424 var2) { - if (var1.field3779 > var2.field3779) { + static int method2168(int var0, Script var1, boolean var2) { + int var3; + int var4; + if (var0 == 4000) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 + var4; + return 1; + } else if (var0 == 4001) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 - var4; + return 1; + } else if (var0 == 4002) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 * var3; + return 1; + } else if (var0 == 4003) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 / var4; + return 1; + } else if (var0 == 4004) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)var3); + return 1; + } else if (var0 == 4005) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)(var3 + 1)); return 1; } else { - return var1.field3779 < var2.field3779 ? -1 : 0; - } - } + int var5; + int var6; + int var7; + if (var0 == 4006) { + DbTableType.Interpreter_intStackSize -= 5; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var7 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 4]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 + (var7 - var5) * (var4 - var3) / (var6 - var5); + return 1; + } else if (var0 == 4007) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 + var3 * var4 / 100; + return 1; + } else if (var0 == 4008) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 | 1 << var4; + return 1; + } else if (var0 == 4009) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 & -1 - (1 << var4); + return 1; + } else if (var0 == 4010) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (var3 & 1 << var4) != 0 ? 1 : 0; + return 1; + } else if (var0 == 4011) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 % var4; + return 1; + } else if (var0 == 4012) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (var3 == 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, (double)var4); + } - @Export("compare") - @ObfuscatedName("compare") - public int compare(Object var1, Object var2) { - return this.method2178((class424)var1, (class424)var2); - } + return 1; + } else if (var0 == 4013) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (var3 == 0) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + return 1; + } else { + switch(var4) { + case 0: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Integer.MAX_VALUE; + break; + case 1: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + break; + case 2: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)Math.sqrt((double)var3); + break; + case 3: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)Math.cbrt((double)var3); + break; + case 4: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)Math.sqrt(Math.sqrt((double)var3)); + break; + default: + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, 1.0D / (double)var4); + } + + return 1; + } + } else if (var0 == 4014) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 & var4; + return 1; + } else if (var0 == 4015) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 | var4; + return 1; + } else if (var0 == 4016) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 < var4 ? var3 : var4; + return 1; + } else if (var0 == 4017) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 > var4 ? var3 : var4; + return 1; + } else if (var0 == 4018) { + DbTableType.Interpreter_intStackSize -= 3; + long var9 = (long)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + long var11 = (long)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + long var13 = (long)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (int)(var13 * var9 / var11); + return 1; + } else if (var0 == 4025) { + var3 = UserComparator4.method665(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + return 1; + } else if (var0 == 4026) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 ^ 1 << var4; + return 1; + } else if (var0 == 4027) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class197.method976(var3, var4, var5); + return 1; + } else if (var0 == 4028) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class93.method500(var3, var4, var5); + return 1; + } else if (var0 == 4029) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = 31 - var5; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 << var6 >>> var6 + var4; + return 1; + } else if (var0 == 4030) { + DbTableType.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var3 = class93.method500(var3, var5, var6); + var7 = class214.method1092(var6 - var5 + 1); + if (var4 > var7) { + var4 = var7; + } - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - return super.equals(var1); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 | var4 << var5; + return 1; + } else if (var0 == 4032) { + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = class174.method884(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]); + return 1; + } else if (var0 == 4033) { + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = class195.method973(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]); + return 1; + } else if (var0 == 4034) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = PacketBufferNode.method1635(var3, var4); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5; + return 1; + } else if (var0 == 4035) { + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = Math.abs(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]); + return 1; + } else if (var0 == 4036) { + String var15 = Interpreter.Interpreter_stringStack[--class127.Interpreter_stringStackSize]; + var4 = -1; + if (ClientPacket.isNumber(var15)) { + var4 = Huffman.method1888(var15); + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4; + return 1; + } else { + return 2; + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class423.java b/osrs/src/main/java/class423.java deleted file mode 100644 index a6a7aac61..000000000 --- a/osrs/src/main/java/class423.java +++ /dev/null @@ -1,199 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.Comparator; -import java.util.HashMap; -import java.util.Map; - -@ObfuscatedName("qv") -public final class class423 { - @ObfuscatedName("au") - final Comparator field3771; - @ObfuscatedName("ae") - final Map field3772; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lpa;" - ) - final class392 field3774; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lpa;" - ) - final class392 field3775; - @ObfuscatedName("ac") - final long field3773; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lqm;" - ) - final class421 field3776; - @ObfuscatedName("az") - final int field3770; - - @ObfuscatedSignature( - descriptor = "(JILqm;)V" - ) - class423(long var1, int var3, class421 var4) { - this.field3771 = new class422(this); - this.field3773 = var1; - this.field3770 = var3; - this.field3776 = var4; - if (this.field3770 == -1) { - this.field3772 = new HashMap(64); - this.field3774 = new class392(64, this.field3771); - this.field3775 = null; - } else { - if (this.field3776 == null) { - throw new IllegalArgumentException(""); - } - - this.field3772 = new HashMap(this.field3770); - this.field3774 = new class392(this.field3770, this.field3771); - this.field3775 = new class392(this.field3770); - } - - } - - @ObfuscatedSignature( - descriptor = "(ILqm;)V" - ) - public class423(int var1, class421 var2) { - this(-1L, var1, var2); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "1594986015" - ) - boolean method2179() { - return this.field3770 != -1; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;B)Ljava/lang/Object;", - garbageValue = "-31" - ) - public Object method2180(Object var1) { - synchronized(this) { - if (this.field3773 != -1L) { - this.method2183(); - } - - class424 var3 = (class424)this.field3772.get(var1); - if (var3 == null) { - return null; - } else { - this.method2182(var3, false); - return var3.field3778; - } - } - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Ljava/lang/Object;I)Ljava/lang/Object;", - garbageValue = "-396691149" - ) - public Object method2181(Object var1, Object var2) { - synchronized(this) { - if (this.field3773 != -1L) { - this.method2183(); - } - - class424 var4 = (class424)this.field3772.get(var1); - if (var4 != null) { - Object var8 = var4.field3778; - var4.field3778 = var2; - this.method2182(var4, false); - return var8; - } else { - class424 var5; - if (this.method2179() && this.field3772.size() == this.field3770) { - var5 = (class424)this.field3775.remove(); - this.field3772.remove(var5.field3777); - this.field3774.remove(var5); - } - - var5 = new class424(var2, var1); - this.field3772.put(var1, var5); - this.method2182(var5, true); - return null; - } - } - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Lqj;ZB)V", - garbageValue = "16" - ) - void method2182(class424 var1, boolean var2) { - if (!var2) { - this.field3774.remove(var1); - if (this.method2179() && !this.field3775.remove(var1)) { - throw new IllegalStateException(""); - } - } - - var1.field3779 = System.currentTimeMillis(); - if (this.method2179()) { - switch(this.field3776.field3768) { - case 0: - var1.field3780 = var1.field3779; - break; - case 1: - ++var1.field3780; - } - - this.field3775.add(var1); - } - - this.field3774.add(var1); - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1791287945" - ) - void method2183() { - if (this.field3773 == -1L) { - throw new IllegalStateException(""); - } else { - long var1 = System.currentTimeMillis() - this.field3773; - - while (!this.field3774.isEmpty()) { - class424 var3 = (class424)this.field3774.peek(); - if (var3.field3779 >= var1) { - return; - } - - this.field3772.remove(var3.field3777); - this.field3774.remove(var3); - if (this.method2179()) { - this.field3775.remove(var3); - } - } - - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "33" - ) - public void method2184() { - synchronized(this) { - this.field3772.clear(); - this.field3774.clear(); - if (this.method2179()) { - this.field3775.clear(); - } - - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class424.java b/osrs/src/main/java/class424.java deleted file mode 100644 index 9712a8953..000000000 --- a/osrs/src/main/java/class424.java +++ /dev/null @@ -1,55 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("qj") -public final class class424 implements Comparable { - @ObfuscatedName("au") - Object field3778; - @ObfuscatedName("ae") - Object field3777; - @ObfuscatedName("ao") - long field3779; - @ObfuscatedName("at") - long field3780; - - class424(Object var1, Object var2) { - this.field3778 = var1; - this.field3777 = var2; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Lqj;B)I", - garbageValue = "1" - ) - int method2185(class424 var1) { - if (this.field3780 < var1.field3780) { - return -1; - } else { - return this.field3780 > var1.field3780 ? 1 : 0; - } - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - if (var1 instanceof class424) { - return this.field3777.equals(((class424)var1).field3777); - } else { - throw new IllegalArgumentException(); - } - } - - @Export("hashCode") - @ObfuscatedName("hashCode") - public int hashCode() { - return this.field3777.hashCode(); - } - - @Export("compareTo") - @ObfuscatedName("compareTo") - public int compareTo(Object var1) { - return this.method2185((class424)var1); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class426.java b/osrs/src/main/java/class426.java new file mode 100644 index 000000000..cf56bbd3d --- /dev/null +++ b/osrs/src/main/java/class426.java @@ -0,0 +1,95 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("qj") +public class class426 { + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "777593325" + ) + static int method2177(int var0, Script var1, boolean var2) { + Widget var3; + if (var0 >= 2000) { + var0 -= 1000; + var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + } else { + var3 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + } + + class159.invalidateWidget(var3); + int var4; + int var5; + if (var0 != 1200 && var0 != 1205 && var0 != 1212) { + if (var0 == 1201) { + var3.modelType = 2; + var3.modelId = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + return 1; + } else if (var0 == 1202) { + var3.modelType = 3; + var3.modelId = class229.localPlayer.appearance.getChatHeadId(); + return 1; + } else if (var0 == 1207) { + boolean var7 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize] == 1; + class18.method70(var3, class229.localPlayer.appearance, var7); + return 1; + } else if (var0 == 1208) { + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3.field3125 == null) { + throw new RuntimeException(""); + } else { + AbstractWorldMapData.method1323(var3, var4); + return 1; + } + } else if (var0 == 1209) { + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + if (var3.field3125 == null) { + throw new RuntimeException(""); + } else { + ZoneOperation.method1633(var3, var4, var5); + return 1; + } + } else if (var0 == 1210) { + var4 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3.field3125 == null) { + throw new RuntimeException(""); + } else { + class302.method1626(var3, class229.localPlayer.appearance.field2947, var4); + return 1; + } + } else { + return 2; + } + } else { + DbTableType.Interpreter_intStackSize -= 2; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var3.itemId = var4; + var3.itemQuantity = var5; + ItemComposition var6 = class214.ItemDefinition_get(var4); + var3.modelAngleX = var6.xan2d; + var3.modelAngleY = var6.yan2d; + var3.modelAngleZ = var6.zan2d; + var3.modelOffsetX = var6.offsetX2d; + var3.modelOffsetY = var6.offsetY2d; + var3.modelZoom = var6.zoom2d; + if (var0 == 1205) { + var3.itemQuantityMode = 0; + } else if (var0 == 1212 | 1 == var6.isStackable) { + var3.itemQuantityMode = 1; + } else { + var3.itemQuantityMode = 2; + } + + if (var3.modelRotation > 0) { + var3.modelZoom = var3.modelZoom * 32 / var3.modelRotation; + } else if (var3.rawWidth > 0) { + var3.modelZoom = var3.modelZoom * 32 / var3.rawWidth; + } + + return 1; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class261.java b/osrs/src/main/java/class427.java similarity index 51% rename from osrs/src/main/java/class261.java rename to osrs/src/main/java/class427.java index bf82953cd..23ae8d345 100644 --- a/osrs/src/main/java/class261.java +++ b/osrs/src/main/java/class427.java @@ -1,17 +1,14 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("kt") -public class class261 { - @ObfuscatedName("ap") - static int field2396; - - @ObfuscatedName("at") +@ObfuscatedName("qw") +public class class427 { + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BIIII[Lis;I)V", - garbageValue = "657439907" + descriptor = "([BIIII[Liw;I)V", + garbageValue = "-294639369" ) - static final void method1500(byte[] var0, int var1, int var2, int var3, int var4, CollisionMap[] var5) { + static final void method2178(byte[] var0, int var1, int var2, int var3, int var4, CollisionMap[] var5) { int var7; int var8; for (int var6 = 0; var6 < 4; ++var6) { @@ -19,7 +16,7 @@ static final void method1500(byte[] var0, int var1, int var2, int var3, int var4 for (var8 = 0; var8 < 64; ++var8) { if (var7 + var1 > 0 && var7 + var1 < 103 && var8 + var2 > 0 && var8 + var2 < 103) { int[] var10000 = var5[var6].flags[var7 + var1]; - var10000[var2 + var8] &= -16777217; + var10000[var8 + var2] &= -16777217; } } } @@ -32,22 +29,10 @@ static final void method1500(byte[] var0, int var1, int var2, int var3, int var4 for (int var9 = 0; var9 < 64; ++var9) { int var10 = var8 + var1; int var11 = var9 + var2; - SecureRandomFuture.loadTerrain(var12, var7, var10, var11, var3 + var10, var11 + var4, 0); + class14.loadTerrain(var12, var7, var10, var11, var3 + var10, var11 + var4, 0); } } } } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1102761288" - ) - public static void method1501() { - Widget.Widget_cachedSprites.clear(); - Widget.Widget_cachedModels.clear(); - Widget.Widget_cachedFonts.clear(); - Widget.Widget_cachedSpriteMasks.clear(); - } } \ No newline at end of file diff --git a/osrs/src/main/java/class428.java b/osrs/src/main/java/class428.java new file mode 100644 index 000000000..618a8cecc --- /dev/null +++ b/osrs/src/main/java/class428.java @@ -0,0 +1,9 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("qg") +public class class428 { + @ObfuscatedName("or") + @Export("menuWidth") + static int menuWidth; +} \ No newline at end of file diff --git a/osrs/src/main/java/class430.java b/osrs/src/main/java/class430.java new file mode 100644 index 000000000..05f34c928 --- /dev/null +++ b/osrs/src/main/java/class430.java @@ -0,0 +1,36 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("qr") +public class class430 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lqr;" + ) + static final class430 field3795; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lqr;" + ) + static final class430 field3794; + @ObfuscatedName("ar") + final String field3796; + + static { + field3795 = new class430("Basic"); + field3794 = new class430("Bearer"); + } + + class430(String var1) { + this.field3796 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1414159306" + ) + String method2179() { + return this.field3796; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class431.java b/osrs/src/main/java/class431.java new file mode 100644 index 000000000..282a34c7a --- /dev/null +++ b/osrs/src/main/java/class431.java @@ -0,0 +1,178 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import javax.net.ssl.HttpsURLConnection; +import java.text.DecimalFormat; +import java.util.*; +import java.util.Map.Entry; + +@ObfuscatedName("qf") +public class class431 { + @ObfuscatedName("ao") + final Map field3799; + @ObfuscatedName("ab") + final Map field3798; + @ObfuscatedName("au") + final DecimalFormat field3797; + + public class431() { + this.field3799 = new HashMap(); + this.field3798 = new HashMap(); + this.field3797 = new DecimalFormat(); + this.field3797.setMaximumFractionDigits(2); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljavax/net/ssl/HttpsURLConnection;I)V", + garbageValue = "514712825" + ) + public void method2180(HttpsURLConnection var1) { + Iterator var2 = this.field3799.entrySet().iterator(); + + while (var2.hasNext()) { + Entry var3 = (Entry)var2.next(); + var1.setRequestProperty((String)var3.getKey(), (String)var3.getValue()); + } + + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(I)Ljava/util/Map;", + garbageValue = "289317846" + ) + public Map method2181() { + return this.field3799; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;Ljava/lang/String;I)V", + garbageValue = "-1068565867" + ) + public void method2182(String var1, String var2) { + if (var1 != null && !var1.isEmpty()) { + this.field3799.put(var1, var2 != null ? var2 : ""); + } + + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;B)V", + garbageValue = "90" + ) + public void method2183(String var1) { + if (var1 != null && !var1.isEmpty()) { + this.field3799.remove(var1); + } + + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(Lqr;Ljava/lang/String;I)V", + garbageValue = "-1582767971" + ) + void method2184(class430 var1, String var2) { + String var3 = String.format("%s %s", var1.method2179(), var2); + this.method2182("Authorization", var3); + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;S)V", + garbageValue = "1431" + ) + public void method2185(String var1) { + this.method2184(class430.field3795, var1); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1155653800" + ) + public void method2186(String var1) { + this.method2184(class430.field3794, var1); + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(Lsi;B)V", + garbageValue = "-85" + ) + public void method2187(class472 var1) { + this.field3799.put("Content-Type", var1.method2348()); + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "37" + ) + public void method2188() { + this.field3799.remove("Content-Type"); + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(Lsi;B)V", + garbageValue = "4" + ) + public void method2189(class472 var1) { + this.method2190(var1, 1.0F); + } + + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "(Lsi;FI)V", + garbageValue = "-974878647" + ) + void method2190(class472 var1, float var2) { + this.field3798.put(var1, Math.max(0.0F, Math.min(1.0F, var2))); + this.method2191(); + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1694240959" + ) + void method2191() { + this.field3799.remove("Accept"); + if (!this.field3798.isEmpty()) { + this.field3799.put("Accept", this.method2192()); + } + + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1880009483" + ) + String method2192() { + ArrayList var1 = new ArrayList(this.field3798.entrySet()); + Collections.sort(var1, new class432(this)); + StringBuilder var2 = new StringBuilder(); + Iterator var3 = var1.iterator(); + + while (var3.hasNext()) { + Entry var4 = (Entry)var3.next(); + if (var2.length() > 0) { + var2.append(","); + } + + var2.append(((class472)var4.getKey()).method2348()); + float var5 = (Float)var4.getValue(); + if (var5 < 1.0F) { + String var6 = this.field3797.format((double)var5); + var2.append(";q=").append(var6); + } + } + + return var2.toString(); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class432.java b/osrs/src/main/java/class432.java new file mode 100644 index 000000000..183cf5732 --- /dev/null +++ b/osrs/src/main/java/class432.java @@ -0,0 +1,51 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Comparator; +import java.util.Map.Entry; + +@ObfuscatedName("qx") +class class432 implements Comparator { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + @Export("WorldMapElement_archive") + public static AbstractArchive WorldMapElement_archive; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lqf;" + ) + @Export("this$0") + @ObfuscatedName("this$0") + final class431 this$0; + + @ObfuscatedSignature( + descriptor = "(Lqf;)V" + ) + class432(class431 var1) { + this.this$0 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/util/Map$Entry;Ljava/util/Map$Entry;I)I", + garbageValue = "-2140651191" + ) + int method2193(Entry var1, Entry var2) { + return ((Float)var2.getValue()).compareTo((Float)var1.getValue()); + } + + @Export("compare") + @ObfuscatedName("compare") + public int compare(Object var1, Object var2) { + return this.method2193((Entry)var1, (Entry)var2); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + return super.equals(var1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class433.java b/osrs/src/main/java/class433.java new file mode 100644 index 000000000..aaf829a6f --- /dev/null +++ b/osrs/src/main/java/class433.java @@ -0,0 +1,27 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("qm") +public class class433 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lqm;" + ) + public static final class433 field3801; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lqm;" + ) + static final class433 field3802; + @ObfuscatedName("ar") + final int field3803; + + static { + field3801 = new class433(1); + field3802 = new class433(0); + } + + class433(int var1) { + this.field3803 = var1; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class434.java b/osrs/src/main/java/class434.java new file mode 100644 index 000000000..8261ca105 --- /dev/null +++ b/osrs/src/main/java/class434.java @@ -0,0 +1,48 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Comparator; + +@ObfuscatedName("qv") +class class434 implements Comparator { + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Lqc;" + ) + @Export("this$0") + @ObfuscatedName("this$0") + final class435 this$0; + + @ObfuscatedSignature( + descriptor = "(Lqc;)V" + ) + class434(class435 var1) { + this.this$0 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lqe;Lqe;I)I", + garbageValue = "1841574446" + ) + int method2194(class436 var1, class436 var2) { + if (var1.field3814 > var2.field3814) { + return 1; + } else { + return var1.field3814 < var2.field3814 ? -1 : 0; + } + } + + @Export("compare") + @ObfuscatedName("compare") + public int compare(Object var1, Object var2) { + return this.method2194((class436)var1, (class436)var2); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + return super.equals(var1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class435.java b/osrs/src/main/java/class435.java new file mode 100644 index 000000000..197440848 --- /dev/null +++ b/osrs/src/main/java/class435.java @@ -0,0 +1,213 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Comparator; +import java.util.HashMap; +import java.util.Map; + +@ObfuscatedName("qc") +public final class class435 { + @ObfuscatedName("at") + final Comparator field3805; + @ObfuscatedName("ah") + final Map field3806; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lps;" + ) + final class404 field3809; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lps;" + ) + final class404 field3808; + @ObfuscatedName("ab") + final long field3807; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lqm;" + ) + final class433 field3810; + @ObfuscatedName("aa") + final int field3804; + + @ObfuscatedSignature( + descriptor = "(JILqm;)V" + ) + class435(long var1, int var3, class433 var4) { + this.field3805 = new class434(this); + this.field3807 = var1; + this.field3804 = var3; + this.field3810 = var4; + if (this.field3804 == -1) { + this.field3806 = new HashMap(64); + this.field3809 = new class404(64, this.field3805); + this.field3808 = null; + } else { + if (this.field3810 == null) { + throw new IllegalArgumentException(""); + } + + this.field3806 = new HashMap(this.field3804); + this.field3809 = new class404(this.field3804, this.field3805); + this.field3808 = new class404(this.field3804); + } + + } + + @ObfuscatedSignature( + descriptor = "(ILqm;)V" + ) + public class435(int var1, class433 var2) { + this(-1L, var1, var2); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)Z", + garbageValue = "2" + ) + boolean method2195() { + return this.field3804 != -1; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;B)Ljava/lang/Object;", + garbageValue = "122" + ) + public Object method2196(Object var1) { + synchronized(this) { + if (-1L != this.field3807) { + this.method2199(); + } + + class436 var3 = (class436)this.field3806.get(var1); + if (var3 == null) { + return null; + } else { + this.method2198(var3, false); + return var3.field3812; + } + } + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;Ljava/lang/Object;I)Ljava/lang/Object;", + garbageValue = "1227309321" + ) + public Object method2197(Object var1, Object var2) { + synchronized(this) { + if (this.field3807 != -1L) { + this.method2199(); + } + + class436 var4 = (class436)this.field3806.get(var1); + if (var4 != null) { + Object var8 = var4.field3812; + var4.field3812 = var2; + this.method2198(var4, false); + return var8; + } else { + class436 var5; + if (this.method2195() && this.field3806.size() == this.field3804) { + var5 = (class436)this.field3808.remove(); + this.field3806.remove(var5.field3811); + this.field3809.remove(var5); + } + + var5 = new class436(var2, var1); + this.field3806.put(var1, var5); + this.method2198(var5, true); + return null; + } + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Lqe;ZB)V", + garbageValue = "14" + ) + void method2198(class436 var1, boolean var2) { + if (!var2) { + this.field3809.remove(var1); + if (this.method2195()) { + } + } + + var1.field3814 = System.currentTimeMillis(); + if (this.method2195()) { + switch(this.field3810.field3803) { + case 0: + ++var1.field3813; + break; + case 1: + var1.field3813 = var1.field3814; + } + + this.field3808.add(var1); + } + + this.field3809.add(var1); + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-704318355" + ) + void method2199() { + if (this.field3807 == -1L) { + throw new IllegalStateException(""); + } else { + long var1 = System.currentTimeMillis() - this.field3807; + + while (!this.field3809.isEmpty()) { + class436 var3 = (class436)this.field3809.peek(); + if (var3.field3814 >= var1) { + return; + } + + this.field3806.remove(var3.field3811); + this.field3809.remove(var3); + if (this.method2195()) { + this.field3808.remove(var3); + } + } + + } + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-189414151" + ) + @Export("clearFiles") + public void clearFiles() { + synchronized(this) { + this.field3806.clear(); + this.field3809.clear(); + if (this.method2195()) { + this.field3808.clear(); + } + + } + } + + @ObfuscatedName("in") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "12" + ) + static final void method2201() { + if (Client.field535 != ItemLayer.Client_plane) { + Client.field535 = ItemLayer.Client_plane; + WorldMapDecoration.method1330(ItemLayer.Client_plane); + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class436.java b/osrs/src/main/java/class436.java new file mode 100644 index 000000000..12e9238a5 --- /dev/null +++ b/osrs/src/main/java/class436.java @@ -0,0 +1,55 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("qe") +public final class class436 implements Comparable { + @ObfuscatedName("at") + Object field3812; + @ObfuscatedName("ah") + Object field3811; + @ObfuscatedName("ar") + long field3814; + @ObfuscatedName("ao") + long field3813; + + class436(Object var1, Object var2) { + this.field3812 = var1; + this.field3811 = var2; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Lqe;I)I", + garbageValue = "1786312392" + ) + int method2202(class436 var1) { + if (this.field3813 < var1.field3813) { + return -1; + } else { + return this.field3813 > var1.field3813 ? 1 : 0; + } + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + if (var1 instanceof class436) { + return this.field3811.equals(((class436)var1).field3811); + } else { + throw new IllegalArgumentException(); + } + } + + @Export("hashCode") + @ObfuscatedName("hashCode") + public int hashCode() { + return this.field3811.hashCode(); + } + + @Export("compareTo") + @ObfuscatedName("compareTo") + public int compareTo(Object var1) { + return this.method2202((class436)var1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class448.java b/osrs/src/main/java/class448.java deleted file mode 100644 index 918dfd30b..000000000 --- a/osrs/src/main/java/class448.java +++ /dev/null @@ -1,138 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rj") -public class class448 { - @ObfuscatedName("au") - float field3865; - @ObfuscatedName("ae") - float field3863; - @ObfuscatedName("ao") - float field3864; - - static { - new class448(0.0F, 0.0F, 0.0F); - new class448(1.0F, 1.0F, 1.0F); - new class448(1.0F, 0.0F, 0.0F); - new class448(0.0F, 1.0F, 0.0F); - new class448(0.0F, 0.0F, 1.0F); - WorldMapArea.method1413(100); - } - - class448(float var1, float var2, float var3) { - this.field3865 = var1; - this.field3863 = var2; - this.field3864 = var3; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)F", - garbageValue = "36" - ) - final float method2291() { - return (float)Math.sqrt((double)(this.field3865 * this.field3865 + this.field3863 * this.field3863 + this.field3864 * this.field3864)); - } - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - return this.field3865 + ", " + this.field3863 + ", " + this.field3864; - } - - @ObfuscatedName("bb") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "853635809" - ) - static int method2292(int var0, Script var1, boolean var2) { - if (var0 == 6200) { - SoundCache.Interpreter_intStackSize -= 2; - Client.field638 = (short)class155.method829(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - if (Client.field638 <= 0) { - Client.field638 = 256; - } - - Client.field640 = (short)class155.method829(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - if (Client.field640 <= 0) { - Client.field640 = 256; - } - - return 1; - } else if (var0 == 6201) { - SoundCache.Interpreter_intStackSize -= 2; - Client.zoomHeight = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - if (Client.zoomHeight <= 0) { - Client.zoomHeight = 256; - } - - Client.zoomWidth = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (Client.zoomWidth <= 0) { - Client.zoomWidth = 320; - } - - return 1; - } else if (var0 == 6202) { - SoundCache.Interpreter_intStackSize -= 4; - Client.field635 = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - if (Client.field635 <= 0) { - Client.field635 = 1; - } - - Client.field634 = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (Client.field634 <= 0) { - Client.field634 = 32767; - } else if (Client.field634 < Client.field635) { - Client.field634 = Client.field635; - } - - Client.field641 = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - if (Client.field641 <= 0) { - Client.field641 = 1; - } - - Client.field637 = (short)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - if (Client.field637 <= 0) { - Client.field637 = 32767; - } else if (Client.field637 < Client.field641) { - Client.field637 = Client.field641; - } - - return 1; - } else if (var0 == 6203) { - if (Client.viewportWidget != null) { - GrandExchangeOfferOwnWorldComparator.setViewportShape(0, 0, Client.viewportWidget.width, Client.viewportWidget.height, false); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.viewportWidth; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.viewportHeight; - } else { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = -1; - } - - return 1; - } else if (var0 == 6204) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.zoomHeight; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.zoomWidth; - return 1; - } else if (var0 == 6205) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class332.method1850(Client.field638); - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class332.method1850(Client.field640); - return 1; - } else if (var0 == 6220) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 6221) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 6222) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class113.canvasWidth; - return 1; - } else if (var0 == 6223) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class177.canvasHeight; - return 1; - } else { - return 2; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class449.java b/osrs/src/main/java/class449.java deleted file mode 100644 index 3a13dca63..000000000 --- a/osrs/src/main/java/class449.java +++ /dev/null @@ -1,128 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ro") -public final class class449 { - @ObfuscatedName("wp") - @ObfuscatedSignature( - descriptor = "Ldp;" - ) - @Export("clientPreferences") - static ClientPreferences clientPreferences; - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "[Lro;" - ) - static class449[] field3868; - @ObfuscatedName("ae") - static int field3867; - @ObfuscatedName("at") - float field3871; - @ObfuscatedName("ac") - float field3869; - @ObfuscatedName("ai") - float field3870; - @ObfuscatedName("az") - float field3872; - - static { - field3868 = new class449[0]; - GrandExchangeOffer.method1954(100); - new class449(); - } - - class449() { - this.method2296(); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1516285968" - ) - public void method2293() { - synchronized(field3868) { - if (class338.field3112 < field3867 - 1) { - field3868[++class338.field3112 - 1] = this; - } - - } - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(FFFFI)V", - garbageValue = "-426853069" - ) - void method2294(float var1, float var2, float var3, float var4) { - this.field3871 = var1; - this.field3869 = var2; - this.field3870 = var3; - this.field3872 = var4; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(FFFFI)V", - garbageValue = "-49952444" - ) - public void method2295(float var1, float var2, float var3, float var4) { - float var5 = (float)Math.sin((double)(var4 * 0.5F)); - float var6 = (float)Math.cos((double)(var4 * 0.5F)); - this.field3871 = var5 * var1; - this.field3869 = var2 * var5; - this.field3870 = var5 * var3; - this.field3872 = var6; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "61" - ) - final void method2296() { - this.field3870 = 0.0F; - this.field3869 = 0.0F; - this.field3871 = 0.0F; - this.field3872 = 1.0F; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Lro;B)V", - garbageValue = "-34" - ) - public final void method2297(class449 var1) { - this.method2294(this.field3871 * var1.field3872 + this.field3872 * var1.field3871 + this.field3870 * var1.field3869 - this.field3869 * var1.field3870, var1.field3870 * this.field3871 + this.field3872 * var1.field3869 + (var1.field3872 * this.field3869 - this.field3870 * var1.field3871), var1.field3870 * this.field3872 + (this.field3870 * var1.field3872 + this.field3869 * var1.field3871 - var1.field3869 * this.field3871), this.field3872 * var1.field3872 - this.field3871 * var1.field3871 - this.field3869 * var1.field3869 - var1.field3870 * this.field3870); - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - if (!(var1 instanceof class449)) { - return false; - } else { - class449 var2 = (class449)var1; - return var2.field3871 == this.field3871 && var2.field3869 == this.field3869 && var2.field3870 == this.field3870 && this.field3872 == var2.field3872; - } - } - - @Export("hashCode") - @ObfuscatedName("hashCode") - public int hashCode() { - boolean var1 = true; - float var2 = 1.0F; - var2 = this.field3871 + var2 * 31.0F; - var2 = this.field3869 + var2 * 31.0F; - var2 = this.field3870 + 31.0F * var2; - var2 = this.field3872 + 31.0F * var2; - return (int)var2; - } - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - return this.field3871 + "," + this.field3869 + "," + this.field3870 + "," + this.field3872; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class450.java b/osrs/src/main/java/class450.java deleted file mode 100644 index 52ee2dad0..000000000 --- a/osrs/src/main/java/class450.java +++ /dev/null @@ -1,447 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.Arrays; - -@ObfuscatedName("rz") -public final class class450 { - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "[Lrz;" - ) - public static class450[] field3873; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lrz;" - ) - public static final class450 field3874; - @ObfuscatedName("ac") - public float[] field3875; - - static { - field3873 = new class450[0]; - class272.method1544(100); - field3874 = new class450(); - } - - public class450() { - this.field3875 = new float[16]; - this.method2302(); - } - - @ObfuscatedSignature( - descriptor = "(Lrz;)V" - ) - public class450(class450 var1) { - this.field3875 = new float[16]; - this.method2304(var1); - } - - @ObfuscatedSignature( - descriptor = "(Ltm;Z)V" - ) - public class450(Buffer var1, boolean var2) { - this.field3875 = new float[16]; - this.method2299(var1, var2); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1723077119" - ) - public void method2298() { - synchronized(field3873) { - if (class462.field3904 < GrandExchangeOfferOwnWorldComparator.field361 - 1) { - field3873[++class462.field3904 - 1] = this; - } - - } - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ltm;ZI)V", - garbageValue = "1560038466" - ) - void method2299(Buffer var1, boolean var2) { - if (var2) { - class451 var3 = new class451(); - int var6 = var1.readShort(); - var6 &= 16383; - float var5 = (float)(6.283185307179586D * (double)((float)var6 / 16384.0F)); - var3.method2315(var5); - int var9 = var1.readShort(); - var9 &= 16383; - float var8 = (float)((double)((float)var9 / 16384.0F) * 6.283185307179586D); - var3.method2316(var8); - int var12 = var1.readShort(); - var12 &= 16383; - float var11 = (float)((double)((float)var12 / 16384.0F) * 6.283185307179586D); - var3.method2317(var11); - var3.method2318((float)var1.readShort(), (float)var1.readShort(), (float)var1.readShort()); - this.method2310(var3); - } else { - for (int var13 = 0; var13 < 16; ++var13) { - this.field3875[var13] = var1.method2551(); - } - } - - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(B)[F", - garbageValue = "-57" - ) - float[] method2300() { - float[] var1 = new float[3]; - if ((double)this.field3875[2] < 0.999D && (double)this.field3875[2] > -0.999D) { - var1[1] = (float)(-Math.asin((double)this.field3875[2])); - double var2 = Math.cos((double)var1[1]); - var1[0] = (float)Math.atan2((double)this.field3875[6] / var2, (double)this.field3875[10] / var2); - var1[2] = (float)Math.atan2((double)this.field3875[1] / var2, (double)this.field3875[0] / var2); - } else { - var1[0] = 0.0F; - var1[1] = (float)Math.atan2((double)this.field3875[2], 0.0D); - var1[2] = (float)Math.atan2((double)(-this.field3875[9]), (double)this.field3875[5]); - } - - return var1; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(I)[F", - garbageValue = "1952444493" - ) - public float[] method2301() { - float[] var1 = new float[]{(float)(-Math.asin((double)this.field3875[6])), 0.0F, 0.0F}; - double var2 = Math.cos((double)var1[0]); - double var4; - double var6; - if (Math.abs(var2) > 0.005D) { - var4 = (double)this.field3875[2]; - var6 = (double)this.field3875[10]; - double var8 = (double)this.field3875[4]; - double var10 = (double)this.field3875[5]; - var1[1] = (float)Math.atan2(var4, var6); - var1[2] = (float)Math.atan2(var8, var10); - } else { - var4 = (double)this.field3875[1]; - var6 = (double)this.field3875[0]; - if (this.field3875[6] < 0.0F) { - var1[1] = (float)Math.atan2(var4, var6); - } else { - var1[1] = (float)(-Math.atan2(var4, var6)); - } - - var1[2] = 0.0F; - } - - return var1; - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1131918254" - ) - public void method2302() { - this.field3875[0] = 1.0F; - this.field3875[1] = 0.0F; - this.field3875[2] = 0.0F; - this.field3875[3] = 0.0F; - this.field3875[4] = 0.0F; - this.field3875[5] = 1.0F; - this.field3875[6] = 0.0F; - this.field3875[7] = 0.0F; - this.field3875[8] = 0.0F; - this.field3875[9] = 0.0F; - this.field3875[10] = 1.0F; - this.field3875[11] = 0.0F; - this.field3875[12] = 0.0F; - this.field3875[13] = 0.0F; - this.field3875[14] = 0.0F; - this.field3875[15] = 1.0F; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "109" - ) - public void method2303() { - this.field3875[0] = 0.0F; - this.field3875[1] = 0.0F; - this.field3875[2] = 0.0F; - this.field3875[3] = 0.0F; - this.field3875[4] = 0.0F; - this.field3875[5] = 0.0F; - this.field3875[6] = 0.0F; - this.field3875[7] = 0.0F; - this.field3875[8] = 0.0F; - this.field3875[9] = 0.0F; - this.field3875[10] = 0.0F; - this.field3875[11] = 0.0F; - this.field3875[12] = 0.0F; - this.field3875[13] = 0.0F; - this.field3875[14] = 0.0F; - this.field3875[15] = 0.0F; - } - - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "(Lrz;I)V", - garbageValue = "1658923125" - ) - public void method2304(class450 var1) { - System.arraycopy(var1.field3875, 0, this.field3875, 0, 16); - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(FB)V", - garbageValue = "54" - ) - public void method2305(float var1) { - this.method2306(var1, var1, var1); - } - - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "(FFFB)V", - garbageValue = "0" - ) - public void method2306(float var1, float var2, float var3) { - this.method2302(); - this.field3875[0] = var1; - this.field3875[5] = var2; - this.field3875[10] = var3; - } - - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "(Lrz;I)V", - garbageValue = "1420506541" - ) - public void method2307(class450 var1) { - for (int var2 = 0; var2 < this.field3875.length; ++var2) { - float[] var10000 = this.field3875; - var10000[var2] += var1.field3875[var2]; - } - - } - - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "(Lrz;I)V", - garbageValue = "2026698221" - ) - public void method2308(class450 var1) { - float var2 = this.field3875[2] * var1.field3875[8] + var1.field3875[0] * this.field3875[0] + var1.field3875[4] * this.field3875[1] + var1.field3875[12] * this.field3875[3]; - float var3 = this.field3875[0] * var1.field3875[1] + var1.field3875[5] * this.field3875[1] + var1.field3875[9] * this.field3875[2] + this.field3875[3] * var1.field3875[13]; - float var4 = var1.field3875[14] * this.field3875[3] + this.field3875[2] * var1.field3875[10] + var1.field3875[6] * this.field3875[1] + var1.field3875[2] * this.field3875[0]; - float var5 = this.field3875[0] * var1.field3875[3] + var1.field3875[7] * this.field3875[1] + this.field3875[2] * var1.field3875[11] + this.field3875[3] * var1.field3875[15]; - float var6 = this.field3875[7] * var1.field3875[12] + this.field3875[4] * var1.field3875[0] + this.field3875[5] * var1.field3875[4] + var1.field3875[8] * this.field3875[6]; - float var7 = this.field3875[6] * var1.field3875[9] + var1.field3875[1] * this.field3875[4] + var1.field3875[5] * this.field3875[5] + this.field3875[7] * var1.field3875[13]; - float var8 = this.field3875[7] * var1.field3875[14] + this.field3875[5] * var1.field3875[6] + this.field3875[4] * var1.field3875[2] + var1.field3875[10] * this.field3875[6]; - float var9 = var1.field3875[15] * this.field3875[7] + this.field3875[6] * var1.field3875[11] + this.field3875[4] * var1.field3875[3] + this.field3875[5] * var1.field3875[7]; - float var10 = var1.field3875[12] * this.field3875[11] + this.field3875[10] * var1.field3875[8] + var1.field3875[4] * this.field3875[9] + this.field3875[8] * var1.field3875[0]; - float var11 = this.field3875[11] * var1.field3875[13] + this.field3875[9] * var1.field3875[5] + var1.field3875[1] * this.field3875[8] + var1.field3875[9] * this.field3875[10]; - float var12 = var1.field3875[14] * this.field3875[11] + this.field3875[9] * var1.field3875[6] + var1.field3875[2] * this.field3875[8] + this.field3875[10] * var1.field3875[10]; - float var13 = var1.field3875[15] * this.field3875[11] + var1.field3875[11] * this.field3875[10] + var1.field3875[7] * this.field3875[9] + this.field3875[8] * var1.field3875[3]; - float var14 = this.field3875[14] * var1.field3875[8] + var1.field3875[0] * this.field3875[12] + this.field3875[13] * var1.field3875[4] + this.field3875[15] * var1.field3875[12]; - float var15 = var1.field3875[13] * this.field3875[15] + var1.field3875[5] * this.field3875[13] + this.field3875[12] * var1.field3875[1] + var1.field3875[9] * this.field3875[14]; - float var16 = this.field3875[14] * var1.field3875[10] + var1.field3875[6] * this.field3875[13] + this.field3875[12] * var1.field3875[2] + var1.field3875[14] * this.field3875[15]; - float var17 = var1.field3875[15] * this.field3875[15] + var1.field3875[3] * this.field3875[12] + this.field3875[13] * var1.field3875[7] + var1.field3875[11] * this.field3875[14]; - this.field3875[0] = var2; - this.field3875[1] = var3; - this.field3875[2] = var4; - this.field3875[3] = var5; - this.field3875[4] = var6; - this.field3875[5] = var7; - this.field3875[6] = var8; - this.field3875[7] = var9; - this.field3875[8] = var10; - this.field3875[9] = var11; - this.field3875[10] = var12; - this.field3875[11] = var13; - this.field3875[12] = var14; - this.field3875[13] = var15; - this.field3875[14] = var16; - this.field3875[15] = var17; - } - - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "(Lro;I)V", - garbageValue = "1037679755" - ) - public void method2309(class449 var1) { - float var2 = var1.field3872 * var1.field3872; - float var3 = var1.field3871 * var1.field3872; - float var4 = var1.field3872 * var1.field3869; - float var5 = var1.field3870 * var1.field3872; - float var6 = var1.field3871 * var1.field3871; - float var7 = var1.field3871 * var1.field3869; - float var8 = var1.field3870 * var1.field3871; - float var9 = var1.field3869 * var1.field3869; - float var10 = var1.field3869 * var1.field3870; - float var11 = var1.field3870 * var1.field3870; - this.field3875[0] = var6 + var2 - var11 - var9; - this.field3875[1] = var7 + var5 + var7 + var5; - this.field3875[2] = var8 - var4 - var4 + var8; - this.field3875[4] = var7 - var5 - var5 + var7; - this.field3875[5] = var2 + var9 - var6 - var11; - this.field3875[6] = var3 + var10 + var3 + var10; - this.field3875[8] = var8 + var4 + var8 + var4; - this.field3875[9] = var10 - var3 - var3 + var10; - this.field3875[10] = var11 + var2 - var9 - var6; - } - - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "(Lrm;I)V", - garbageValue = "-552331483" - ) - void method2310(class451 var1) { - this.field3875[0] = var1.field3887; - this.field3875[1] = var1.field3880; - this.field3875[2] = var1.field3883; - this.field3875[3] = 0.0F; - this.field3875[4] = var1.field3886; - this.field3875[5] = var1.field3878; - this.field3875[6] = var1.field3882; - this.field3875[7] = 0.0F; - this.field3875[8] = var1.field3888; - this.field3875[9] = var1.field3884; - this.field3875[10] = var1.field3877; - this.field3875[11] = 0.0F; - this.field3875[12] = var1.field3881; - this.field3875[13] = var1.field3879; - this.field3875[14] = var1.field3885; - this.field3875[15] = 1.0F; - } - - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "(I)F", - garbageValue = "-1874677140" - ) - float method2311() { - return this.field3875[12] * this.field3875[9] * this.field3875[6] * this.field3875[3] + (this.field3875[8] * this.field3875[7] * this.field3875[2] * this.field3875[13] + this.field3875[8] * this.field3875[1] * this.field3875[6] * this.field3875[15] + this.field3875[14] * this.field3875[11] * this.field3875[4] * this.field3875[1] + (this.field3875[0] * this.field3875[7] * this.field3875[9] * this.field3875[14] + this.field3875[15] * this.field3875[5] * this.field3875[0] * this.field3875[10] - this.field3875[0] * this.field3875[5] * this.field3875[11] * this.field3875[14] - this.field3875[15] * this.field3875[0] * this.field3875[6] * this.field3875[9] + this.field3875[13] * this.field3875[0] * this.field3875[6] * this.field3875[11] - this.field3875[10] * this.field3875[0] * this.field3875[7] * this.field3875[13] - this.field3875[15] * this.field3875[4] * this.field3875[1] * this.field3875[10]) - this.field3875[12] * this.field3875[1] * this.field3875[6] * this.field3875[11] - this.field3875[7] * this.field3875[1] * this.field3875[8] * this.field3875[14] + this.field3875[12] * this.field3875[10] * this.field3875[7] * this.field3875[1] + this.field3875[15] * this.field3875[4] * this.field3875[2] * this.field3875[9] - this.field3875[13] * this.field3875[11] * this.field3875[4] * this.field3875[2] - this.field3875[15] * this.field3875[8] * this.field3875[2] * this.field3875[5] + this.field3875[11] * this.field3875[2] * this.field3875[5] * this.field3875[12] - this.field3875[9] * this.field3875[7] * this.field3875[2] * this.field3875[12] - this.field3875[14] * this.field3875[3] * this.field3875[4] * this.field3875[9] + this.field3875[13] * this.field3875[10] * this.field3875[4] * this.field3875[3] + this.field3875[14] * this.field3875[8] * this.field3875[5] * this.field3875[3] - this.field3875[12] * this.field3875[3] * this.field3875[5] * this.field3875[10] - this.field3875[6] * this.field3875[3] * this.field3875[8] * this.field3875[13]); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-93" - ) - public void method2312() { - float var1 = 1.0F / this.method2311(); - float var2 = (this.field3875[11] * this.field3875[6] * this.field3875[13] + (this.field3875[15] * this.field3875[5] * this.field3875[10] - this.field3875[14] * this.field3875[11] * this.field3875[5] - this.field3875[9] * this.field3875[6] * this.field3875[15]) + this.field3875[14] * this.field3875[7] * this.field3875[9] - this.field3875[7] * this.field3875[10] * this.field3875[13]) * var1; - float var3 = (this.field3875[13] * this.field3875[3] * this.field3875[10] + (this.field3875[15] * -this.field3875[1] * this.field3875[10] + this.field3875[14] * this.field3875[11] * this.field3875[1] + this.field3875[9] * this.field3875[2] * this.field3875[15] - this.field3875[11] * this.field3875[2] * this.field3875[13] - this.field3875[14] * this.field3875[9] * this.field3875[3])) * var1; - float var4 = (this.field3875[15] * this.field3875[6] * this.field3875[1] - this.field3875[1] * this.field3875[7] * this.field3875[14] - this.field3875[15] * this.field3875[2] * this.field3875[5] + this.field3875[2] * this.field3875[7] * this.field3875[13] + this.field3875[3] * this.field3875[5] * this.field3875[14] - this.field3875[13] * this.field3875[6] * this.field3875[3]) * var1; - float var5 = (this.field3875[9] * this.field3875[3] * this.field3875[6] + (this.field3875[7] * this.field3875[1] * this.field3875[10] + this.field3875[11] * -this.field3875[1] * this.field3875[6] + this.field3875[11] * this.field3875[2] * this.field3875[5] - this.field3875[7] * this.field3875[2] * this.field3875[9] - this.field3875[5] * this.field3875[3] * this.field3875[10])) * var1; - float var6 = (this.field3875[12] * this.field3875[10] * this.field3875[7] + (this.field3875[6] * this.field3875[8] * this.field3875[15] + this.field3875[15] * this.field3875[10] * -this.field3875[4] + this.field3875[4] * this.field3875[11] * this.field3875[14] - this.field3875[11] * this.field3875[6] * this.field3875[12] - this.field3875[14] * this.field3875[8] * this.field3875[7])) * var1; - float var7 = (this.field3875[2] * this.field3875[11] * this.field3875[12] + (this.field3875[0] * this.field3875[10] * this.field3875[15] - this.field3875[14] * this.field3875[0] * this.field3875[11] - this.field3875[15] * this.field3875[2] * this.field3875[8]) + this.field3875[14] * this.field3875[8] * this.field3875[3] - this.field3875[3] * this.field3875[10] * this.field3875[12]) * var1; - float var8 = (this.field3875[15] * this.field3875[2] * this.field3875[4] + this.field3875[15] * this.field3875[6] * -this.field3875[0] + this.field3875[0] * this.field3875[7] * this.field3875[14] - this.field3875[7] * this.field3875[2] * this.field3875[12] - this.field3875[3] * this.field3875[4] * this.field3875[14] + this.field3875[12] * this.field3875[3] * this.field3875[6]) * var1; - float var9 = (this.field3875[10] * this.field3875[4] * this.field3875[3] + this.field3875[0] * this.field3875[6] * this.field3875[11] - this.field3875[10] * this.field3875[0] * this.field3875[7] - this.field3875[2] * this.field3875[4] * this.field3875[11] + this.field3875[7] * this.field3875[2] * this.field3875[8] - this.field3875[8] * this.field3875[6] * this.field3875[3]) * var1; - float var10 = (this.field3875[15] * this.field3875[4] * this.field3875[9] - this.field3875[13] * this.field3875[4] * this.field3875[11] - this.field3875[15] * this.field3875[5] * this.field3875[8] + this.field3875[11] * this.field3875[5] * this.field3875[12] + this.field3875[13] * this.field3875[8] * this.field3875[7] - this.field3875[12] * this.field3875[9] * this.field3875[7]) * var1; - float var11 = var1 * (this.field3875[15] * this.field3875[9] * -this.field3875[0] + this.field3875[13] * this.field3875[0] * this.field3875[11] + this.field3875[1] * this.field3875[8] * this.field3875[15] - this.field3875[11] * this.field3875[1] * this.field3875[12] - this.field3875[8] * this.field3875[3] * this.field3875[13] + this.field3875[9] * this.field3875[3] * this.field3875[12]); - float var12 = (this.field3875[4] * this.field3875[3] * this.field3875[13] + this.field3875[12] * this.field3875[1] * this.field3875[7] + (this.field3875[15] * this.field3875[5] * this.field3875[0] - this.field3875[13] * this.field3875[0] * this.field3875[7] - this.field3875[1] * this.field3875[4] * this.field3875[15]) - this.field3875[12] * this.field3875[3] * this.field3875[5]) * var1; - float var13 = var1 * (this.field3875[8] * this.field3875[3] * this.field3875[5] + (-this.field3875[0] * this.field3875[5] * this.field3875[11] + this.field3875[9] * this.field3875[7] * this.field3875[0] + this.field3875[4] * this.field3875[1] * this.field3875[11] - this.field3875[8] * this.field3875[1] * this.field3875[7] - this.field3875[3] * this.field3875[4] * this.field3875[9])); - float var14 = (this.field3875[12] * this.field3875[6] * this.field3875[9] + (this.field3875[14] * this.field3875[9] * -this.field3875[4] + this.field3875[13] * this.field3875[10] * this.field3875[4] + this.field3875[8] * this.field3875[5] * this.field3875[14] - this.field3875[12] * this.field3875[10] * this.field3875[5] - this.field3875[8] * this.field3875[6] * this.field3875[13])) * var1; - float var15 = (this.field3875[13] * this.field3875[8] * this.field3875[2] + this.field3875[0] * this.field3875[9] * this.field3875[14] - this.field3875[13] * this.field3875[0] * this.field3875[10] - this.field3875[1] * this.field3875[8] * this.field3875[14] + this.field3875[1] * this.field3875[10] * this.field3875[12] - this.field3875[12] * this.field3875[2] * this.field3875[9]) * var1; - float var16 = var1 * (-this.field3875[0] * this.field3875[5] * this.field3875[14] + this.field3875[6] * this.field3875[0] * this.field3875[13] + this.field3875[14] * this.field3875[1] * this.field3875[4] - this.field3875[6] * this.field3875[1] * this.field3875[12] - this.field3875[4] * this.field3875[2] * this.field3875[13] + this.field3875[2] * this.field3875[5] * this.field3875[12]); - float var17 = (this.field3875[5] * this.field3875[0] * this.field3875[10] - this.field3875[0] * this.field3875[6] * this.field3875[9] - this.field3875[1] * this.field3875[4] * this.field3875[10] + this.field3875[1] * this.field3875[6] * this.field3875[8] + this.field3875[2] * this.field3875[4] * this.field3875[9] - this.field3875[8] * this.field3875[2] * this.field3875[5]) * var1; - this.field3875[0] = var2; - this.field3875[1] = var3; - this.field3875[2] = var4; - this.field3875[3] = var5; - this.field3875[4] = var6; - this.field3875[5] = var7; - this.field3875[6] = var8; - this.field3875[7] = var9; - this.field3875[8] = var10; - this.field3875[9] = var11; - this.field3875[10] = var12; - this.field3875[11] = var13; - this.field3875[12] = var14; - this.field3875[13] = var15; - this.field3875[14] = var16; - this.field3875[15] = var17; - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(B)[F", - garbageValue = "6" - ) - public float[] method2313() { - float[] var1 = new float[3]; - class448 var2 = new class448(this.field3875[0], this.field3875[1], this.field3875[2]); - class448 var3 = new class448(this.field3875[4], this.field3875[5], this.field3875[6]); - class448 var4 = new class448(this.field3875[8], this.field3875[9], this.field3875[10]); - var1[0] = var2.method2291(); - var1[1] = var3.method2291(); - var1[2] = var4.method2291(); - return var1; - } - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - StringBuilder var1 = new StringBuilder(); - this.method2301(); - this.method2300(); - - for (int var2 = 0; var2 < 4; ++var2) { - for (int var3 = 0; var3 < 4; ++var3) { - if (var3 > 0) { - var1.append("\t"); - } - - float var4 = this.field3875[var3 + var2 * 4]; - if (Math.sqrt((double)(var4 * var4)) < 9.999999747378752E-5D) { - var4 = 0.0F; - } - - var1.append(var4); - } - - var1.append("\n"); - } - - return var1.toString(); - } - - @Export("hashCode") - @ObfuscatedName("hashCode") - public int hashCode() { - boolean var1 = true; - byte var2 = 1; - int var3 = var2 * 31 + Arrays.hashCode(this.field3875); - return var3; - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - if (!(var1 instanceof class450)) { - return false; - } else { - class450 var2 = (class450)var1; - - for (int var3 = 0; var3 < 16; ++var3) { - if (this.field3875[var3] != var2.field3875[var3]) { - return false; - } - } - - return true; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class451.java b/osrs/src/main/java/class451.java deleted file mode 100644 index 9f7e29eb5..000000000 --- a/osrs/src/main/java/class451.java +++ /dev/null @@ -1,147 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rm") -public class class451 { - @ObfuscatedName("kf") - @ObfuscatedSignature( - descriptor = "[Luk;" - ) - static IndexedSprite[] field3876; - @ObfuscatedName("au") - float field3887; - @ObfuscatedName("ae") - float field3880; - @ObfuscatedName("ao") - float field3883; - @ObfuscatedName("at") - float field3886; - @ObfuscatedName("ac") - float field3878; - @ObfuscatedName("ai") - float field3882; - @ObfuscatedName("az") - float field3888; - @ObfuscatedName("ap") - float field3884; - @ObfuscatedName("aa") - float field3877; - @ObfuscatedName("af") - float field3881; - @ObfuscatedName("ad") - float field3879; - @ObfuscatedName("aq") - float field3885; - - static { - new class451(); - } - - class451() { - this.method2314(); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "1136613952" - ) - void method2314() { - this.field3885 = 0.0F; - this.field3879 = 0.0F; - this.field3881 = 0.0F; - this.field3884 = 0.0F; - this.field3888 = 0.0F; - this.field3882 = 0.0F; - this.field3886 = 0.0F; - this.field3883 = 0.0F; - this.field3880 = 0.0F; - this.field3877 = 1.0F; - this.field3878 = 1.0F; - this.field3887 = 1.0F; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(FB)V", - garbageValue = "-67" - ) - void method2315(float var1) { - float var2 = (float)Math.cos((double)var1); - float var3 = (float)Math.sin((double)var1); - float var4 = this.field3880; - float var5 = this.field3878; - float var6 = this.field3884; - float var7 = this.field3879; - this.field3880 = var4 * var2 - var3 * this.field3883; - this.field3883 = var2 * this.field3883 + var4 * var3; - this.field3878 = var5 * var2 - this.field3882 * var3; - this.field3882 = var5 * var3 + this.field3882 * var2; - this.field3884 = var2 * var6 - var3 * this.field3877; - this.field3877 = var6 * var3 + this.field3877 * var2; - this.field3879 = var2 * var7 - var3 * this.field3885; - this.field3885 = var7 * var3 + this.field3885 * var2; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(FB)V", - garbageValue = "0" - ) - void method2316(float var1) { - float var2 = (float)Math.cos((double)var1); - float var3 = (float)Math.sin((double)var1); - float var4 = this.field3887; - float var5 = this.field3886; - float var6 = this.field3888; - float var7 = this.field3881; - this.field3887 = var3 * this.field3883 + var2 * var4; - this.field3883 = this.field3883 * var2 - var4 * var3; - this.field3886 = var3 * this.field3882 + var2 * var5; - this.field3882 = this.field3882 * var2 - var3 * var5; - this.field3888 = var6 * var2 + this.field3877 * var3; - this.field3877 = this.field3877 * var2 - var3 * var6; - this.field3881 = var2 * var7 + this.field3885 * var3; - this.field3885 = this.field3885 * var2 - var7 * var3; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(FI)V", - garbageValue = "-2078210991" - ) - void method2317(float var1) { - float var2 = (float)Math.cos((double)var1); - float var3 = (float)Math.sin((double)var1); - float var4 = this.field3887; - float var5 = this.field3886; - float var6 = this.field3888; - float var7 = this.field3881; - this.field3887 = var2 * var4 - var3 * this.field3880; - this.field3880 = var2 * this.field3880 + var3 * var4; - this.field3886 = var5 * var2 - var3 * this.field3878; - this.field3878 = var3 * var5 + var2 * this.field3878; - this.field3888 = var2 * var6 - var3 * this.field3884; - this.field3884 = this.field3884 * var2 + var3 * var6; - this.field3881 = var2 * var7 - this.field3879 * var3; - this.field3879 = this.field3879 * var2 + var7 * var3; - } - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(FFFI)V", - garbageValue = "-586193895" - ) - void method2318(float var1, float var2, float var3) { - this.field3881 += var1; - this.field3879 += var2; - this.field3885 += var3; - } - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - return this.field3887 + "," + this.field3886 + "," + this.field3888 + "," + this.field3881 + "\n" + this.field3880 + "," + this.field3878 + "," + this.field3884 + "," + this.field3879 + "\n" + this.field3883 + "," + this.field3882 + "," + this.field3877 + "," + this.field3885; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class452.java b/osrs/src/main/java/class452.java deleted file mode 100644 index 42d11ae95..000000000 --- a/osrs/src/main/java/class452.java +++ /dev/null @@ -1,25 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rc") -public class class452 { - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lpi;" - ) - @Export("ItemDefinition_fontPlain11") - public static Font ItemDefinition_fontPlain11; - @ObfuscatedName("aj") - @Export("loginBoxCenter") - static int loginBoxCenter; - @ObfuscatedName("au") - float[] field3891; - @ObfuscatedName("ae") - int field3892; - - class452(float[] var1, int var2) { - this.field3891 = var1; - this.field3892 = var2; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class453.java b/osrs/src/main/java/class453.java deleted file mode 100644 index 88e60f939..000000000 --- a/osrs/src/main/java/class453.java +++ /dev/null @@ -1,47 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rq") -public enum class453 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lrq;" - ) - field3896(0, 1), - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lrq;" - ) - field3893(2, 2), - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lrq;" - ) - field3894(3, 3), - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Lrq;" - ) - field3895(1, 10); - - @ObfuscatedName("ac") - final int field3897; - @ObfuscatedName("ai") - final int field3898; - - class453(int var3, int var4) { - this.field3897 = var3; - this.field3898 = var4; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field3898; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class454.java b/osrs/src/main/java/class454.java deleted file mode 100644 index 8addb494d..000000000 --- a/osrs/src/main/java/class454.java +++ /dev/null @@ -1,77 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rs") -public class class454 implements class459 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lsu;" - ) - public final class489 field3899; - - @ObfuscatedSignature( - descriptor = "(Lsx;)V" - ) - class454(class490 var1) { - this.field3899 = var1; - } - - @ObfuscatedSignature( - descriptor = "(Lrp;)V" - ) - public class454(class455 var1) { - this(new class490(var1)); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "530420265" - ) - public int method2320(int var1) { - return this.field3899.vmethod8144(var1); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Lfh;FS)F", - garbageValue = "26313" - ) - static float method2321(class130 var0, float var1) { - if (var0 == null) { - return 0.0F; - } else { - float var2; - if (var0.field1258 == var1) { - var2 = 0.0F; - } else if (var1 == var0.field1254) { - var2 = 1.0F; - } else { - var2 = (var1 - var0.field1258) / (var0.field1254 - var0.field1258); - } - - float var3; - if (var0.field1242) { - var3 = var2; - } else { - class126.field1206[3] = var0.field1255; - class126.field1206[2] = var0.field1249; - class126.field1206[1] = var0.field1250; - class126.field1206[0] = var0.field1247 - var2; - class126.field1207[0] = 0.0F; - class126.field1207[1] = 0.0F; - class126.field1207[2] = 0.0F; - class126.field1207[3] = 0.0F; - class126.field1207[4] = 0.0F; - int var4 = ModelData0.method1381(class126.field1206, 3, 0.0F, true, 1.0F, true, class126.field1207); - if (var4 == 1) { - var3 = class126.field1207[0]; - } else { - var3 = 0.0F; - } - } - - return var3 * (var0.field1253 + var3 * (var3 * var0.field1248 + var0.field1256)) + var0.field1252; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class455.java b/osrs/src/main/java/class455.java deleted file mode 100644 index 42b4002d4..000000000 --- a/osrs/src/main/java/class455.java +++ /dev/null @@ -1,74 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rp") -public abstract class class455 extends class281 implements class522 { - @ObfuscatedSignature( - descriptor = "(Lns;Lon;I)V" - ) - protected class455(StudioGame var1, Language var2, int var3) { - super(var1, var2, var3); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IB)Lrv;", - garbageValue = "-32" - ) - @Export("vmethod8207") - protected abstract class457 vmethod8207(int var1); - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1119561049" - ) - public int method2322() { - return super.field2482; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/Object;", - garbageValue = "22" - ) - @Export("vmethod8697") - public Object vmethod8697(int var1) { - class457 var2 = this.vmethod8207(var1); - return var2 != null && var2.method2328() ? var2.method2329() : null; - } - - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "(Ltm;B)Lud;", - garbageValue = "-80" - ) - public class523 method2324(Buffer var1) { - int var2 = var1.readUnsignedShort(); - class457 var3 = this.vmethod8207(var2); - class523 var4 = new class523(var2); - Class var5 = var3.field3900.field4105; - if (var5 == Integer.class) { - var4.field4215 = var1.readInt(); - } else if (var5 == Long.class) { - var4.field4215 = var1.readLong(); - } else if (var5 == String.class) { - var4.field4215 = var1.readStringCp1252NullCircumfixed(); - } else { - if (!class518.class.isAssignableFrom(var5)) { - throw new IllegalStateException(); - } - - try { - class518 var6 = (class518)var5.newInstance(); - var6.method2614(var1); - var4.field4215 = var6; - } catch (InstantiationException var7) { - } catch (IllegalAccessException var8) { - } - } - - return var4; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class457.java b/osrs/src/main/java/class457.java deleted file mode 100644 index 4435517b9..000000000 --- a/osrs/src/main/java/class457.java +++ /dev/null @@ -1,86 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("rv") -public abstract class class457 implements class280 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Ltb;" - ) - class502 field3900; - - class457(int var1) { - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "362589282" - ) - @Export("vmethod7769") - abstract void vmethod7769(Buffer var1, int var2); - - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "(Ltm;B)V", - garbageValue = "-87" - ) - public void method2327(Buffer var1) { - while (true) { - int var2 = var1.readUnsignedByte(); - if (var2 == 0) { - return; - } - - class453 var3 = (class453)KeyHandler.findEnumerated(class418.method2163(), var2); - if (var3 != null) { - switch(var3.field3897) { - case 0: - int var4 = var1.readUnsignedByte(); - this.field3900 = SequenceDefinition.method1074(var4); - if (this.field3900 != null) { - break; - } - - throw new IllegalStateException("Unknown ScriptVarType ID in VarType.decode: " + var4); - case 1: - var1.readStringCp1252NullCircumfixed(); - break; - case 2: - class352[] var5 = new class352[]{class352.field3482, class352.field3480, class352.field3479, class352.field3481}; - KeyHandler.findEnumerated(var5, var1.readUnsignedByte()); - break; - default: - throw new IllegalStateException("Unrecognised VarTypeEncodingKey - " + var3); - } - } else { - this.vmethod7769(var1, var2); - } - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-2062851135" - ) - boolean method2328() { - return this.field3900 != null; - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(B)Ljava/lang/Object;", - garbageValue = "-12" - ) - Object method2329() { - if (this.field3900 == class502.field4101) { - return 0; - } else if (this.field3900 == class502.field4099) { - return -1L; - } else { - return this.field3900 == class502.field4100 ? "" : null; - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class458.java b/osrs/src/main/java/class458.java index 1053d207f..bf41b3513 100644 --- a/osrs/src/main/java/class458.java +++ b/osrs/src/main/java/class458.java @@ -1,5 +1,19 @@ import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("ry") -public interface class458 { +public class class458 { + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1658967602" + ) + static void method2306() { + class541.SpriteBuffer_xOffsets = null; + class541.SpriteBuffer_yOffsets = null; + class541.SpriteBuffer_spriteWidths = null; + class520.SpriteBuffer_spriteHeights = null; + class541.SpriteBuffer_spritePalette = null; + class396.SpriteBuffer_pixels = null; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class459.java b/osrs/src/main/java/class459.java deleted file mode 100644 index 92b2fc10b..000000000 --- a/osrs/src/main/java/class459.java +++ /dev/null @@ -1,5 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("rk") -public interface class459 extends class458 { -} \ No newline at end of file diff --git a/osrs/src/main/java/class46.java b/osrs/src/main/java/class46.java index 0eee6e2fc..d00e3ef08 100644 --- a/osrs/src/main/java/class46.java +++ b/osrs/src/main/java/class46.java @@ -1,67 +1,67 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bz") +@ObfuscatedName("bs") public class class46 { - @ObfuscatedName("au") - int field224; - @ObfuscatedName("ae") - int field220; - @ObfuscatedName("ao") - int field222; @ObfuscatedName("at") - int field223; - @ObfuscatedName("ac") int field219; - @ObfuscatedName("ai") - int field221; - @ObfuscatedName("az") - int[] field225; + @ObfuscatedName("ah") + int field216; + @ObfuscatedName("ar") + int field218; + @ObfuscatedName("ao") + int field217; + @ObfuscatedName("ab") + int field215; + @ObfuscatedName("au") + int field220; + @ObfuscatedName("aa") + int[] field221; class46() { - class60 var1 = VorbisSample.field267; - this.field224 = var1.method325(16); - this.field220 = var1.method325(24); - this.field222 = var1.method325(24); - this.field223 = var1.method325(24) + 1; - this.field219 = var1.method325(6) + 1; - this.field221 = var1.method325(8); - int[] var2 = new int[this.field219]; + class60 var1 = VorbisSample.field264; + this.field219 = var1.method335(16); + this.field216 = var1.method335(24); + this.field218 = var1.method335(24); + this.field217 = var1.method335(24) + 1; + this.field215 = var1.method335(6) + 1; + this.field220 = var1.method335(8); + int[] var2 = new int[this.field215]; int var3; - for (var3 = 0; var3 < this.field219; ++var3) { + for (var3 = 0; var3 < this.field215; ++var3) { int var4 = 0; - int var5 = var1.method325(3); - boolean var6 = var1.method326() != 0; + int var5 = var1.method335(3); + boolean var6 = var1.method336() != 0; if (var6) { - var4 = var1.method325(5); + var4 = var1.method335(5); } var2[var3] = var4 << 3 | var5; } - this.field225 = new int[this.field219 * 8]; + this.field221 = new int[this.field215 * 8]; - for (var3 = 0; var3 < this.field219 * 8; ++var3) { - this.field225[var3] = (var2[var3 >> 3] & 1 << (var3 & 7)) != 0 ? var1.method325(8) : -1; + for (var3 = 0; var3 < this.field215 * 8; ++var3) { + this.field221[var3] = (var2[var3 >> 3] & 1 << (var3 & 7)) != 0 ? var1.method335(8) : -1; } } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([FIZLce;)V" + descriptor = "([FIZLcw;)V" ) - void method229(float[] var1, int var2, boolean var3, class60 var4) { + void method243(float[] var1, int var2, boolean var3, class60 var4) { int var5; for (var5 = 0; var5 < var2; ++var5) { var1[var5] = 0.0F; } if (!var3) { - var5 = VorbisSample.field268[this.field221].field257; - int var6 = this.field222 - this.field220; - int var7 = var6 / this.field223; + var5 = VorbisSample.field263[this.field220].field252; + int var6 = this.field218 - this.field216; + int var7 = var6 / this.field217; int[] var8 = new int[var7]; for (int var9 = 0; var9 < 8; ++var9) { @@ -71,41 +71,41 @@ void method229(float[] var1, int var2, boolean var3, class60 var4) { int var11; int var12; if (var9 == 0) { - var11 = VorbisSample.field268[this.field221].method287(var4); + var11 = VorbisSample.field263[this.field220].method301(var4); for (var12 = var5 - 1; var12 >= 0; --var12) { if (var10 + var12 < var7) { - var8[var10 + var12] = var11 % this.field219; + var8[var10 + var12] = var11 % this.field215; } - var11 /= this.field219; + var11 /= this.field215; } } for (var11 = 0; var11 < var5; ++var11) { var12 = var8[var10]; - int var13 = this.field225[var9 + var12 * 8]; + int var13 = this.field221[var9 + var12 * 8]; if (var13 >= 0) { - int var14 = var10 * this.field223 + this.field220; - VorbisCodebook var15 = VorbisSample.field268[var13]; + int var14 = var10 * this.field217 + this.field216; + VorbisCodebook var15 = VorbisSample.field263[var13]; int var16; - if (this.field224 == 0) { - var16 = this.field223 / var15.field257; + if (this.field219 == 0) { + var16 = this.field217 / var15.field252; for (int var17 = 0; var17 < var16; ++var17) { - float[] var21 = var15.method288(var4); + float[] var21 = var15.method302(var4); - for (int var19 = 0; var19 < var15.field257; ++var19) { + for (int var19 = 0; var19 < var15.field252; ++var19) { var1[var14 + var17 + var19 * var16] += var21[var19]; } } } else { var16 = 0; - while (var16 < this.field223) { - float[] var20 = var15.method288(var4); + while (var16 < this.field217) { + float[] var20 = var15.method302(var4); - for (int var18 = 0; var18 < var15.field257; ++var18) { + for (int var18 = 0; var18 < var15.field252; ++var18) { var1[var14 + var16] += var20[var18]; ++var16; } diff --git a/osrs/src/main/java/class460.java b/osrs/src/main/java/class460.java index 12e46a15e..96a1b6ba4 100644 --- a/osrs/src/main/java/class460.java +++ b/osrs/src/main/java/class460.java @@ -1,59 +1,60 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("re") +@ObfuscatedName("rb") public class class460 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lre;" - ) - public static final class460 field3901; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lre;" - ) - static final class460 field3902; - @ObfuscatedName("ao") - String field3903; + @ObfuscatedName("at") + float field3898; + @ObfuscatedName("ah") + float field3896; + @ObfuscatedName("ar") + float field3897; static { - field3901 = new class460("application/json"); - field3902 = new class460("text/plain"); + new class460(0.0F, 0.0F, 0.0F); + new class460(1.0F, 1.0F, 1.0F); + new class460(1.0F, 0.0F, 0.0F); + new class460(0.0F, 1.0F, 0.0F); + new class460(0.0F, 0.0F, 1.0F); } - class460(String var1) { - this.field3903 = var1; + class460(float var1, float var2, float var3) { + this.field3898 = var1; + this.field3896 = var2; + this.field3897 = var3; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-1631262328" + descriptor = "(B)F", + garbageValue = "56" ) - public String method2331() { - return this.field3903; + final float method2307() { + return (float)Math.sqrt((double)(this.field3897 * this.field3897 + this.field3896 * this.field3896 + this.field3898 * this.field3898)); } - @ObfuscatedName("kf") + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + return this.field3898 + ", " + this.field3896 + ", " + this.field3897; + } + + @ObfuscatedName("ih") @ObfuscatedSignature( - descriptor = "(IIIIII)Z", - garbageValue = "1329235005" + descriptor = "(IIII)V", + garbageValue = "-986184126" ) - static final boolean method2332(int var0, int var1, int var2, int var3, int var4) { - PendingSpawn var5 = null; - - for (PendingSpawn var6 = (PendingSpawn)Client.pendingSpawns.last(); var6 != null; var6 = (PendingSpawn)Client.pendingSpawns.previous()) { - if (var0 == var6.plane && var6.x == var1 && var2 == var6.y && var3 == var6.type) { - var5 = var6; - break; - } + @Export("queueSoundEffect") + static void queueSoundEffect(int var0, int var1, int var2) { + if (WorldMapIcon_1.clientPreferences.getCurrentSoundEffectsVolume() != 0 && var1 != 0 && Client.soundEffectCount < 50) { + Client.soundEffectIds[Client.soundEffectCount] = var0; + Client.queuedSoundEffectLoops[Client.soundEffectCount] = var1; + Client.queuedSoundEffectDelays[Client.soundEffectCount] = var2; + Client.soundEffects[Client.soundEffectCount] = null; + Client.soundLocations[Client.soundEffectCount] = 0; + ++Client.soundEffectCount; } - if (var5 != null) { - var5.field945 = var4; - return true; - } else { - return false; - } } } \ No newline at end of file diff --git a/osrs/src/main/java/class461.java b/osrs/src/main/java/class461.java index 84c56e76b..0b1efc30b 100644 --- a/osrs/src/main/java/class461.java +++ b/osrs/src/main/java/class461.java @@ -2,23 +2,121 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.UnsupportedEncodingException; +@ObfuscatedName("rq") +public final class class461 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "[Lrq;" + ) + static class461[] field3900; + @ObfuscatedName("ah") + static int field3899; + @ObfuscatedName("ao") + float field3903; + @ObfuscatedName("ab") + float field3902; + @ObfuscatedName("au") + float field3904; + @ObfuscatedName("aa") + float field3901; + + static { + field3900 = new class461[0]; + FontName.method2459(100); + new class461(); + } + + class461() { + this.method2312(); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-905673513" + ) + public void method2309() { + synchronized(field3900) { + if (IgnoreList.field3815 < field3899 - 1) { + field3900[++IgnoreList.field3815 - 1] = this; + } + + } + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(FFFFI)V", + garbageValue = "1133120924" + ) + void method2310(float var1, float var2, float var3, float var4) { + this.field3903 = var1; + this.field3902 = var2; + this.field3904 = var3; + this.field3901 = var4; + } + + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(FFFFI)V", + garbageValue = "1735434078" + ) + public void method2311(float var1, float var2, float var3, float var4) { + float var5 = (float)Math.sin((double)(var4 * 0.5F)); + float var6 = (float)Math.cos((double)(0.5F * var4)); + this.field3903 = var1 * var5; + this.field3902 = var5 * var2; + this.field3904 = var3 * var5; + this.field3901 = var6; + } -@ObfuscatedName("rf") -public interface class461 { @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)Lre;", - garbageValue = "1843960357" + descriptor = "(I)V", + garbageValue = "210229291" ) - @Export("vmethod2213") - class460 vmethod2213(); + final void method2312() { + this.field3904 = 0.0F; + this.field3902 = 0.0F; + this.field3903 = 0.0F; + this.field3901 = 1.0F; + } - @ObfuscatedName("ae") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-2012768243" + descriptor = "(Lrq;I)V", + garbageValue = "992983838" ) - @Export("vmethod7797") - byte[] vmethod7797() throws UnsupportedEncodingException; + public final void method2313(class461 var1) { + this.method2310(this.field3904 * var1.field3902 + var1.field3901 * this.field3903 + this.field3901 * var1.field3903 - var1.field3904 * this.field3902, var1.field3902 * this.field3901 + (this.field3902 * var1.field3901 - var1.field3903 * this.field3904) + this.field3903 * var1.field3904, this.field3901 * var1.field3904 + (var1.field3903 * this.field3902 + this.field3904 * var1.field3901 - this.field3903 * var1.field3902), var1.field3901 * this.field3901 - var1.field3903 * this.field3903 - var1.field3902 * this.field3902 - var1.field3904 * this.field3904); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + if (!(var1 instanceof class461)) { + return false; + } else { + class461 var2 = (class461)var1; + return var2.field3903 == this.field3903 && var2.field3902 == this.field3902 && this.field3904 == var2.field3904 && var2.field3901 == this.field3901; + } + } + + @Export("hashCode") + @ObfuscatedName("hashCode") + public int hashCode() { + boolean var1 = true; + float var2 = 1.0F; + var2 = 31.0F * var2 + this.field3903; + var2 = this.field3902 + 31.0F * var2; + var2 = 31.0F * var2 + this.field3904; + var2 = this.field3901 + 31.0F * var2; + return (int)var2; + } + + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + return this.field3903 + "," + this.field3902 + "," + this.field3904 + "," + this.field3901; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class462.java b/osrs/src/main/java/class462.java index c3a537700..541876acf 100644 --- a/osrs/src/main/java/class462.java +++ b/osrs/src/main/java/class462.java @@ -1,93 +1,449 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; -import java.io.UnsupportedEncodingException; +import java.util.Arrays; -@ObfuscatedName("rl") -public class class462 implements class461 { - @ObfuscatedName("at") - public static int field3904; - @ObfuscatedName("ae") +@ObfuscatedName("rz") +public final class class462 { + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lorg/json/JSONObject;" + descriptor = "[Lrz;" ) - JSONObject field3905; + static class462[] field3907; + @ObfuscatedName("ar") + static int field3906; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lrz;" + ) + public static final class462 field3905; + @ObfuscatedName("ab") + public float[] field3908; - public class462(byte[] var1) throws UnsupportedEncodingException { - this.method2336(var1); + static { + field3907 = new class462[0]; + ServerPacket.method1640(100); + field3905 = new class462(); } - public class462(JSONObject var1) { - this.field3905 = var1; + public class462() { + this.field3908 = new float[16]; + this.method2318(); } - public class462(String var1) throws UnsupportedEncodingException { - this.method2337(var1); + @ObfuscatedSignature( + descriptor = "(Lrz;)V" + ) + public class462(class462 var1) { + this.field3908 = new float[16]; + this.method2320(var1); } - @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(I)Lre;", - garbageValue = "1843960357" + descriptor = "(Luj;Z)V" ) - public class460 vmethod2213() { - return class460.field3901; + public class462(Buffer var1, boolean var2) { + this.field3908 = new float[16]; + this.method2315(var1, var2); } - @ObfuscatedName("ae") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-2012768243" + descriptor = "(I)V", + garbageValue = "-2018425549" ) - @Export("vmethod7797") - public byte[] vmethod7797() throws UnsupportedEncodingException { - return this.field3905 == null ? new byte[0] : this.field3905.toString().getBytes("UTF-8"); + public void method2314() { + synchronized(field3907) { + if (DirectByteArrayCopier.field3136 < field3906 - 1) { + field3907[++DirectByteArrayCopier.field3136 - 1] = this; + } + + } } - @ObfuscatedName("ai") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "([BB)V", - garbageValue = "-68" + descriptor = "(Luj;ZI)V", + garbageValue = "-1679447945" ) - void method2336(byte[] var1) throws UnsupportedEncodingException { - String var2 = new String(var1, "UTF-8"); - this.method2337(var2); + void method2315(Buffer var1, boolean var2) { + if (var2) { + class463 var3 = new class463(); + int var6 = var1.readShort(); + var6 &= 16383; + float var5 = (float)(6.283185307179586D * (double)((float)var6 / 16384.0F)); + var3.method2331(var5); + int var9 = var1.readShort(); + var9 &= 16383; + float var8 = (float)(6.283185307179586D * (double)((float)var9 / 16384.0F)); + var3.method2332(var8); + int var12 = var1.readShort(); + var12 &= 16383; + float var11 = (float)(6.283185307179586D * (double)((float)var12 / 16384.0F)); + var3.method2333(var11); + var3.method2334((float)var1.readShort(), (float)var1.readShort(), (float)var1.readShort()); + this.method2326(var3); + } else { + for (int var13 = 0; var13 < 16; ++var13) { + this.field3908[var13] = var1.method2565(); + } + } + } - @ObfuscatedName("az") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-32" + descriptor = "(B)[F", + garbageValue = "1" ) - void method2337(String var1) throws UnsupportedEncodingException { - try { - if (var1.charAt(0) == '{') { - this.field3905 = new JSONObject(var1); - } else { - if (var1.charAt(0) != '[') { - throw new UnsupportedEncodingException("Invalid JSON passed to the JSON content builder."); - } + float[] method2316() { + float[] var1 = new float[3]; + if ((double)this.field3908[2] < 0.999D && (double)this.field3908[2] > -0.999D) { + var1[1] = (float)(-Math.asin((double)this.field3908[2])); + double var2 = Math.cos((double)var1[1]); + var1[0] = (float)Math.atan2((double)this.field3908[6] / var2, (double)this.field3908[10] / var2); + var1[2] = (float)Math.atan2((double)this.field3908[1] / var2, (double)this.field3908[0] / var2); + } else { + var1[0] = 0.0F; + var1[1] = (float)Math.atan2((double)this.field3908[2], 0.0D); + var1[2] = (float)Math.atan2((double)(-this.field3908[9]), (double)this.field3908[5]); + } + + return var1; + } - JSONArray var2 = new JSONArray(var1); - this.field3905 = new JSONObject(); - this.field3905.method2709("arrayValues", var2); + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(B)[F", + garbageValue = "5" + ) + public float[] method2317() { + float[] var1 = new float[]{(float)(-Math.asin((double)this.field3908[6])), 0.0F, 0.0F}; + double var2 = Math.cos((double)var1[0]); + double var4; + double var6; + if (Math.abs(var2) > 0.005D) { + var4 = (double)this.field3908[2]; + var6 = (double)this.field3908[10]; + double var8 = (double)this.field3908[4]; + double var10 = (double)this.field3908[5]; + var1[1] = (float)Math.atan2(var4, var6); + var1[2] = (float)Math.atan2(var8, var10); + } else { + var4 = (double)this.field3908[1]; + var6 = (double)this.field3908[0]; + if (this.field3908[6] < 0.0F) { + var1[1] = (float)Math.atan2(var4, var6); + } else { + var1[1] = (float)(-Math.atan2(var4, var6)); } - } catch (JSONException var3) { - throw new UnsupportedEncodingException(var3.getMessage()); + var1[2] = 0.0F; } + + return var1; + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "-60" + ) + void method2318() { + this.field3908[0] = 1.0F; + this.field3908[1] = 0.0F; + this.field3908[2] = 0.0F; + this.field3908[3] = 0.0F; + this.field3908[4] = 0.0F; + this.field3908[5] = 1.0F; + this.field3908[6] = 0.0F; + this.field3908[7] = 0.0F; + this.field3908[8] = 0.0F; + this.field3908[9] = 0.0F; + this.field3908[10] = 1.0F; + this.field3908[11] = 0.0F; + this.field3908[12] = 0.0F; + this.field3908[13] = 0.0F; + this.field3908[14] = 0.0F; + this.field3908[15] = 1.0F; + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "77" + ) + public void method2319() { + this.field3908[0] = 0.0F; + this.field3908[1] = 0.0F; + this.field3908[2] = 0.0F; + this.field3908[3] = 0.0F; + this.field3908[4] = 0.0F; + this.field3908[5] = 0.0F; + this.field3908[6] = 0.0F; + this.field3908[7] = 0.0F; + this.field3908[8] = 0.0F; + this.field3908[9] = 0.0F; + this.field3908[10] = 0.0F; + this.field3908[11] = 0.0F; + this.field3908[12] = 0.0F; + this.field3908[13] = 0.0F; + this.field3908[14] = 0.0F; + this.field3908[15] = 0.0F; + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(Lrz;I)V", + garbageValue = "-1456016137" + ) + public void method2320(class462 var1) { + System.arraycopy(var1.field3908, 0, this.field3908, 0, 16); + } + + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "(FB)V", + garbageValue = "93" + ) + public void method2321(float var1) { + this.method2322(var1, var1, var1); } @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(B)Lorg/json/JSONObject;", - garbageValue = "-30" + descriptor = "(FFFB)V", + garbageValue = "111" + ) + public void method2322(float var1, float var2, float var3) { + this.method2318(); + this.field3908[0] = var1; + this.field3908[5] = var2; + this.field3908[10] = var3; + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(Lrz;I)V", + garbageValue = "-459748559" + ) + public void method2323(class462 var1) { + for (int var2 = 0; var2 < this.field3908.length; ++var2) { + float[] var10000 = this.field3908; + var10000[var2] += var1.field3908[var2]; + } + + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(Lrz;I)V", + garbageValue = "1005316731" + ) + public void method2324(class462 var1) { + float var2 = var1.field3908[12] * this.field3908[3] + var1.field3908[8] * this.field3908[2] + var1.field3908[0] * this.field3908[0] + this.field3908[1] * var1.field3908[4]; + float var3 = var1.field3908[9] * this.field3908[2] + var1.field3908[5] * this.field3908[1] + this.field3908[0] * var1.field3908[1] + var1.field3908[13] * this.field3908[3]; + float var4 = var1.field3908[14] * this.field3908[3] + var1.field3908[6] * this.field3908[1] + var1.field3908[2] * this.field3908[0] + var1.field3908[10] * this.field3908[2]; + float var5 = this.field3908[3] * var1.field3908[15] + var1.field3908[3] * this.field3908[0] + var1.field3908[7] * this.field3908[1] + this.field3908[2] * var1.field3908[11]; + float var6 = this.field3908[7] * var1.field3908[12] + this.field3908[4] * var1.field3908[0] + var1.field3908[4] * this.field3908[5] + this.field3908[6] * var1.field3908[8]; + float var7 = this.field3908[7] * var1.field3908[13] + this.field3908[5] * var1.field3908[5] + var1.field3908[1] * this.field3908[4] + var1.field3908[9] * this.field3908[6]; + float var8 = this.field3908[7] * var1.field3908[14] + this.field3908[4] * var1.field3908[2] + var1.field3908[6] * this.field3908[5] + this.field3908[6] * var1.field3908[10]; + float var9 = var1.field3908[11] * this.field3908[6] + var1.field3908[3] * this.field3908[4] + this.field3908[5] * var1.field3908[7] + this.field3908[7] * var1.field3908[15]; + float var10 = this.field3908[8] * var1.field3908[0] + this.field3908[9] * var1.field3908[4] + this.field3908[10] * var1.field3908[8] + this.field3908[11] * var1.field3908[12]; + float var11 = var1.field3908[1] * this.field3908[8] + var1.field3908[5] * this.field3908[9] + var1.field3908[9] * this.field3908[10] + this.field3908[11] * var1.field3908[13]; + float var12 = this.field3908[8] * var1.field3908[2] + this.field3908[9] * var1.field3908[6] + this.field3908[10] * var1.field3908[10] + this.field3908[11] * var1.field3908[14]; + float var13 = this.field3908[11] * var1.field3908[15] + var1.field3908[7] * this.field3908[9] + var1.field3908[3] * this.field3908[8] + var1.field3908[11] * this.field3908[10]; + float var14 = var1.field3908[8] * this.field3908[14] + var1.field3908[0] * this.field3908[12] + var1.field3908[4] * this.field3908[13] + this.field3908[15] * var1.field3908[12]; + float var15 = var1.field3908[9] * this.field3908[14] + this.field3908[12] * var1.field3908[1] + this.field3908[13] * var1.field3908[5] + var1.field3908[13] * this.field3908[15]; + float var16 = var1.field3908[14] * this.field3908[15] + this.field3908[12] * var1.field3908[2] + var1.field3908[6] * this.field3908[13] + var1.field3908[10] * this.field3908[14]; + float var17 = this.field3908[13] * var1.field3908[7] + var1.field3908[3] * this.field3908[12] + var1.field3908[11] * this.field3908[14] + this.field3908[15] * var1.field3908[15]; + this.field3908[0] = var2; + this.field3908[1] = var3; + this.field3908[2] = var4; + this.field3908[3] = var5; + this.field3908[4] = var6; + this.field3908[5] = var7; + this.field3908[6] = var8; + this.field3908[7] = var9; + this.field3908[8] = var10; + this.field3908[9] = var11; + this.field3908[10] = var12; + this.field3908[11] = var13; + this.field3908[12] = var14; + this.field3908[13] = var15; + this.field3908[14] = var16; + this.field3908[15] = var17; + } + + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "(Lrq;I)V", + garbageValue = "-2073322468" ) - public JSONObject method2338() { - return this.field3905; + public void method2325(class461 var1) { + float var2 = var1.field3901 * var1.field3901; + float var3 = var1.field3901 * var1.field3903; + float var4 = var1.field3901 * var1.field3902; + float var5 = var1.field3901 * var1.field3904; + float var6 = var1.field3903 * var1.field3903; + float var7 = var1.field3903 * var1.field3902; + float var8 = var1.field3904 * var1.field3903; + float var9 = var1.field3902 * var1.field3902; + float var10 = var1.field3902 * var1.field3904; + float var11 = var1.field3904 * var1.field3904; + this.field3908[0] = var2 + var6 - var11 - var9; + this.field3908[1] = var5 + var7 + var5 + var7; + this.field3908[2] = var8 - var4 - var4 + var8; + this.field3908[4] = var7 - var5 - var5 + var7; + this.field3908[5] = var9 + var2 - var6 - var11; + this.field3908[6] = var3 + var3 + var10 + var10; + this.field3908[8] = var4 + var8 + var8 + var4; + this.field3908[9] = var10 + (var10 - var3 - var3); + this.field3908[10] = var2 + var11 - var9 - var6; + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(Lrj;I)V", + garbageValue = "-1749310376" + ) + void method2326(class463 var1) { + this.field3908[0] = var1.field3917; + this.field3908[1] = var1.field3912; + this.field3908[2] = var1.field3916; + this.field3908[3] = 0.0F; + this.field3908[4] = var1.field3914; + this.field3908[5] = var1.field3910; + this.field3908[6] = var1.field3918; + this.field3908[7] = 0.0F; + this.field3908[8] = var1.field3909; + this.field3908[9] = var1.field3911; + this.field3908[10] = var1.field3913; + this.field3908[11] = 0.0F; + this.field3908[12] = var1.field3920; + this.field3908[13] = var1.field3915; + this.field3908[14] = var1.field3919; + this.field3908[15] = 1.0F; + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(I)F", + garbageValue = "868032907" + ) + float method2327() { + return this.field3908[5] * this.field3908[3] * this.field3908[8] * this.field3908[14] + this.field3908[4] * this.field3908[3] * this.field3908[10] * this.field3908[13] + (this.field3908[8] * this.field3908[7] * this.field3908[2] * this.field3908[13] + this.field3908[15] * this.field3908[6] * this.field3908[1] * this.field3908[8] + this.field3908[13] * this.field3908[11] * this.field3908[6] * this.field3908[0] + (this.field3908[15] * this.field3908[5] * this.field3908[0] * this.field3908[10] - this.field3908[5] * this.field3908[0] * this.field3908[11] * this.field3908[14] - this.field3908[6] * this.field3908[0] * this.field3908[9] * this.field3908[15]) + this.field3908[14] * this.field3908[9] * this.field3908[0] * this.field3908[7] - this.field3908[7] * this.field3908[0] * this.field3908[10] * this.field3908[13] - this.field3908[15] * this.field3908[10] * this.field3908[4] * this.field3908[1] + this.field3908[11] * this.field3908[4] * this.field3908[1] * this.field3908[14] - this.field3908[1] * this.field3908[6] * this.field3908[11] * this.field3908[12] - this.field3908[14] * this.field3908[1] * this.field3908[7] * this.field3908[8] + this.field3908[1] * this.field3908[7] * this.field3908[10] * this.field3908[12] + this.field3908[15] * this.field3908[2] * this.field3908[4] * this.field3908[9] - this.field3908[13] * this.field3908[11] * this.field3908[2] * this.field3908[4] - this.field3908[2] * this.field3908[5] * this.field3908[8] * this.field3908[15] + this.field3908[12] * this.field3908[2] * this.field3908[5] * this.field3908[11] - this.field3908[12] * this.field3908[9] * this.field3908[7] * this.field3908[2] - this.field3908[9] * this.field3908[3] * this.field3908[4] * this.field3908[14]) - this.field3908[10] * this.field3908[5] * this.field3908[3] * this.field3908[12] - this.field3908[6] * this.field3908[3] * this.field3908[8] * this.field3908[13] + this.field3908[12] * this.field3908[9] * this.field3908[3] * this.field3908[6]; + } + + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-536017222" + ) + public void method2328() { + float var1 = 1.0F / this.method2327(); + float var2 = (this.field3908[7] * this.field3908[9] * this.field3908[14] + this.field3908[15] * this.field3908[10] * this.field3908[5] - this.field3908[14] * this.field3908[5] * this.field3908[11] - this.field3908[15] * this.field3908[9] * this.field3908[6] + this.field3908[13] * this.field3908[6] * this.field3908[11] - this.field3908[10] * this.field3908[7] * this.field3908[13]) * var1; + float var3 = (this.field3908[13] * this.field3908[10] * this.field3908[3] + (this.field3908[15] * -this.field3908[1] * this.field3908[10] + this.field3908[11] * this.field3908[1] * this.field3908[14] + this.field3908[2] * this.field3908[9] * this.field3908[15] - this.field3908[13] * this.field3908[11] * this.field3908[2] - this.field3908[14] * this.field3908[9] * this.field3908[3])) * var1; + float var4 = var1 * (this.field3908[15] * this.field3908[6] * this.field3908[1] - this.field3908[14] * this.field3908[7] * this.field3908[1] - this.field3908[15] * this.field3908[2] * this.field3908[5] + this.field3908[2] * this.field3908[7] * this.field3908[13] + this.field3908[3] * this.field3908[5] * this.field3908[14] - this.field3908[13] * this.field3908[6] * this.field3908[3]); + float var5 = (this.field3908[5] * this.field3908[2] * this.field3908[11] + this.field3908[11] * this.field3908[6] * -this.field3908[1] + this.field3908[10] * this.field3908[1] * this.field3908[7] - this.field3908[7] * this.field3908[2] * this.field3908[9] - this.field3908[10] * this.field3908[5] * this.field3908[3] + this.field3908[6] * this.field3908[3] * this.field3908[9]) * var1; + float var6 = var1 * (this.field3908[12] * this.field3908[7] * this.field3908[10] + (this.field3908[14] * this.field3908[11] * this.field3908[4] + -this.field3908[4] * this.field3908[10] * this.field3908[15] + this.field3908[6] * this.field3908[8] * this.field3908[15] - this.field3908[12] * this.field3908[11] * this.field3908[6] - this.field3908[7] * this.field3908[8] * this.field3908[14])); + float var7 = var1 * (this.field3908[11] * this.field3908[2] * this.field3908[12] + (this.field3908[0] * this.field3908[10] * this.field3908[15] - this.field3908[0] * this.field3908[11] * this.field3908[14] - this.field3908[8] * this.field3908[2] * this.field3908[15]) + this.field3908[3] * this.field3908[8] * this.field3908[14] - this.field3908[12] * this.field3908[10] * this.field3908[3]); + float var8 = (this.field3908[3] * this.field3908[6] * this.field3908[12] + (this.field3908[14] * this.field3908[7] * this.field3908[0] + this.field3908[6] * -this.field3908[0] * this.field3908[15] + this.field3908[4] * this.field3908[2] * this.field3908[15] - this.field3908[2] * this.field3908[7] * this.field3908[12] - this.field3908[3] * this.field3908[4] * this.field3908[14])) * var1; + float var9 = var1 * (this.field3908[8] * this.field3908[2] * this.field3908[7] + (this.field3908[11] * this.field3908[6] * this.field3908[0] - this.field3908[10] * this.field3908[7] * this.field3908[0] - this.field3908[2] * this.field3908[4] * this.field3908[11]) + this.field3908[10] * this.field3908[3] * this.field3908[4] - this.field3908[6] * this.field3908[3] * this.field3908[8]); + float var10 = var1 * (this.field3908[13] * this.field3908[7] * this.field3908[8] + this.field3908[15] * this.field3908[4] * this.field3908[9] - this.field3908[4] * this.field3908[11] * this.field3908[13] - this.field3908[5] * this.field3908[8] * this.field3908[15] + this.field3908[11] * this.field3908[5] * this.field3908[12] - this.field3908[7] * this.field3908[9] * this.field3908[12]); + float var11 = var1 * (this.field3908[8] * this.field3908[1] * this.field3908[15] + this.field3908[15] * this.field3908[9] * -this.field3908[0] + this.field3908[0] * this.field3908[11] * this.field3908[13] - this.field3908[12] * this.field3908[1] * this.field3908[11] - this.field3908[8] * this.field3908[3] * this.field3908[13] + this.field3908[12] * this.field3908[9] * this.field3908[3]); + float var12 = (this.field3908[7] * this.field3908[1] * this.field3908[12] + (this.field3908[15] * this.field3908[5] * this.field3908[0] - this.field3908[13] * this.field3908[7] * this.field3908[0] - this.field3908[4] * this.field3908[1] * this.field3908[15]) + this.field3908[13] * this.field3908[3] * this.field3908[4] - this.field3908[12] * this.field3908[3] * this.field3908[5]) * var1; + float var13 = var1 * (this.field3908[8] * this.field3908[5] * this.field3908[3] + (this.field3908[11] * this.field3908[5] * -this.field3908[0] + this.field3908[0] * this.field3908[7] * this.field3908[9] + this.field3908[11] * this.field3908[1] * this.field3908[4] - this.field3908[8] * this.field3908[7] * this.field3908[1] - this.field3908[3] * this.field3908[4] * this.field3908[9])); + float var14 = var1 * (this.field3908[14] * this.field3908[9] * -this.field3908[4] + this.field3908[13] * this.field3908[4] * this.field3908[10] + this.field3908[14] * this.field3908[5] * this.field3908[8] - this.field3908[5] * this.field3908[10] * this.field3908[12] - this.field3908[13] * this.field3908[8] * this.field3908[6] + this.field3908[9] * this.field3908[6] * this.field3908[12]); + float var15 = (this.field3908[13] * this.field3908[2] * this.field3908[8] + this.field3908[10] * this.field3908[1] * this.field3908[12] + (this.field3908[9] * this.field3908[0] * this.field3908[14] - this.field3908[13] * this.field3908[0] * this.field3908[10] - this.field3908[1] * this.field3908[8] * this.field3908[14]) - this.field3908[12] * this.field3908[2] * this.field3908[9]) * var1; + float var16 = var1 * (this.field3908[12] * this.field3908[2] * this.field3908[5] + (this.field3908[14] * -this.field3908[0] * this.field3908[5] + this.field3908[0] * this.field3908[6] * this.field3908[13] + this.field3908[14] * this.field3908[1] * this.field3908[4] - this.field3908[6] * this.field3908[1] * this.field3908[12] - this.field3908[13] * this.field3908[4] * this.field3908[2])); + float var17 = var1 * (this.field3908[4] * this.field3908[2] * this.field3908[9] + this.field3908[5] * this.field3908[0] * this.field3908[10] - this.field3908[9] * this.field3908[6] * this.field3908[0] - this.field3908[10] * this.field3908[4] * this.field3908[1] + this.field3908[8] * this.field3908[1] * this.field3908[6] - this.field3908[2] * this.field3908[5] * this.field3908[8]); + this.field3908[0] = var2; + this.field3908[1] = var3; + this.field3908[2] = var4; + this.field3908[3] = var5; + this.field3908[4] = var6; + this.field3908[5] = var7; + this.field3908[6] = var8; + this.field3908[7] = var9; + this.field3908[8] = var10; + this.field3908[9] = var11; + this.field3908[10] = var12; + this.field3908[11] = var13; + this.field3908[12] = var14; + this.field3908[13] = var15; + this.field3908[14] = var16; + this.field3908[15] = var17; + } + + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "(I)[F", + garbageValue = "-616853758" + ) + public float[] method2329() { + float[] var1 = new float[3]; + class460 var2 = new class460(this.field3908[0], this.field3908[1], this.field3908[2]); + class460 var3 = new class460(this.field3908[4], this.field3908[5], this.field3908[6]); + class460 var4 = new class460(this.field3908[8], this.field3908[9], this.field3908[10]); + var1[0] = var2.method2307(); + var1[1] = var3.method2307(); + var1[2] = var4.method2307(); + return var1; + } + + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + StringBuilder var1 = new StringBuilder(); + this.method2317(); + this.method2316(); + + for (int var2 = 0; var2 < 4; ++var2) { + for (int var3 = 0; var3 < 4; ++var3) { + if (var3 > 0) { + var1.append("\t"); + } + + float var4 = this.field3908[var3 + var2 * 4]; + if (Math.sqrt((double)(var4 * var4)) < 9.999999747378752E-5D) { + var4 = 0.0F; + } + + var1.append(var4); + } + + var1.append("\n"); + } + + return var1.toString(); + } + + @Export("hashCode") + @ObfuscatedName("hashCode") + public int hashCode() { + boolean var1 = true; + byte var2 = 1; + int var3 = var2 * 31 + Arrays.hashCode(this.field3908); + return var3; + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + if (!(var1 instanceof class462)) { + return false; + } else { + class462 var2 = (class462)var1; + + for (int var3 = 0; var3 < 16; ++var3) { + if (var2.field3908[var3] != this.field3908[var3]) { + return false; + } + } + + return true; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class463.java b/osrs/src/main/java/class463.java index a623be4a3..a005b87d2 100644 --- a/osrs/src/main/java/class463.java +++ b/osrs/src/main/java/class463.java @@ -2,73 +2,290 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.util.Iterator; -import java.util.Map; -import java.util.Map.Entry; - -@ObfuscatedName("rt") -public class class463 implements class461 { +@ObfuscatedName("rj") +public class class463 { + @ObfuscatedName("at") + float field3917; + @ObfuscatedName("ah") + float field3912; + @ObfuscatedName("ar") + float field3916; + @ObfuscatedName("ao") + float field3914; + @ObfuscatedName("ab") + float field3910; @ObfuscatedName("au") - final Map field3906; + float field3918; + @ObfuscatedName("aa") + float field3909; + @ObfuscatedName("ac") + float field3911; + @ObfuscatedName("al") + float field3913; + @ObfuscatedName("az") + float field3920; + @ObfuscatedName("ap") + float field3915; + @ObfuscatedName("av") + float field3919; - public class463(Map var1) { - this.field3906 = var1; + static { + new class463(); } - @ObfuscatedName("au") + class463() { + this.method2330(); + } + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Lre;", - garbageValue = "1843960357" + descriptor = "(I)V", + garbageValue = "1136254272" ) - @Export("vmethod2213") - public class460 vmethod2213() { - return null; + void method2330() { + this.field3919 = 0.0F; + this.field3915 = 0.0F; + this.field3920 = 0.0F; + this.field3911 = 0.0F; + this.field3909 = 0.0F; + this.field3918 = 0.0F; + this.field3914 = 0.0F; + this.field3916 = 0.0F; + this.field3912 = 0.0F; + this.field3913 = 1.0F; + this.field3910 = 1.0F; + this.field3917 = 1.0F; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)[B", - garbageValue = "-2012768243" + descriptor = "(FI)V", + garbageValue = "1766211153" ) - @Export("vmethod7797") - public byte[] vmethod7797() throws UnsupportedEncodingException { - return this.method2342().getBytes("UTF-8"); + void method2331(float var1) { + float var2 = (float)Math.cos((double)var1); + float var3 = (float)Math.sin((double)var1); + float var4 = this.field3912; + float var5 = this.field3910; + float var6 = this.field3911; + float var7 = this.field3915; + this.field3912 = var2 * var4 - this.field3916 * var3; + this.field3916 = var4 * var3 + var2 * this.field3916; + this.field3910 = var5 * var2 - this.field3918 * var3; + this.field3918 = this.field3918 * var2 + var5 * var3; + this.field3911 = var2 * var6 - var3 * this.field3913; + this.field3913 = this.field3913 * var2 + var3 * var6; + this.field3915 = var7 * var2 - this.field3919 * var3; + this.field3919 = var3 * var7 + var2 * this.field3919; } - @ObfuscatedName("ai") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "-920677238" + descriptor = "(FB)V", + garbageValue = "16" ) - public String method2342() throws UnsupportedEncodingException { - StringBuilder var1 = new StringBuilder(); - Iterator var2 = this.field3906.entrySet().iterator(); + void method2332(float var1) { + float var2 = (float)Math.cos((double)var1); + float var3 = (float)Math.sin((double)var1); + float var4 = this.field3917; + float var5 = this.field3914; + float var6 = this.field3909; + float var7 = this.field3920; + this.field3917 = var3 * this.field3916 + var2 * var4; + this.field3916 = var2 * this.field3916 - var3 * var4; + this.field3914 = var3 * this.field3918 + var5 * var2; + this.field3918 = this.field3918 * var2 - var3 * var5; + this.field3909 = var2 * var6 + var3 * this.field3913; + this.field3913 = var2 * this.field3913 - var3 * var6; + this.field3920 = var7 * var2 + var3 * this.field3919; + this.field3919 = var2 * this.field3919 - var7 * var3; + } - while (var2.hasNext()) { - Entry var3 = (Entry)var2.next(); - String var4 = URLEncoder.encode((String)var3.getKey(), "UTF-8"); - String var5 = URLEncoder.encode((String)var3.getValue(), "UTF-8"); - var1.append(var4).append("=").append(var5).append("&"); - } + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(FI)V", + garbageValue = "1612992617" + ) + void method2333(float var1) { + float var2 = (float)Math.cos((double)var1); + float var3 = (float)Math.sin((double)var1); + float var4 = this.field3917; + float var5 = this.field3914; + float var6 = this.field3909; + float var7 = this.field3920; + this.field3917 = var4 * var2 - this.field3912 * var3; + this.field3912 = this.field3912 * var2 + var4 * var3; + this.field3914 = var5 * var2 - var3 * this.field3910; + this.field3910 = var2 * this.field3910 + var3 * var5; + this.field3909 = var6 * var2 - var3 * this.field3911; + this.field3911 = var3 * var6 + var2 * this.field3911; + this.field3920 = var7 * var2 - var3 * this.field3915; + this.field3915 = var3 * var7 + this.field3915 * var2; + } - if (var1.length() == 0) { - return ""; - } else { - var1.deleteCharAt(var1.length() - 1); - var1.insert(0, "?"); - return var1.toString(); - } + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "(FFFB)V", + garbageValue = "4" + ) + void method2334(float var1, float var2, float var3) { + this.field3920 += var1; + this.field3915 += var2; + this.field3919 += var3; } - @ObfuscatedName("ah") + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + return this.field3917 + "," + this.field3914 + "," + this.field3909 + "," + this.field3920 + "\n" + this.field3912 + "," + this.field3910 + "," + this.field3911 + "," + this.field3915 + "\n" + this.field3916 + "," + this.field3918 + "," + this.field3913 + "," + this.field3919; + } + + @ObfuscatedName("be") @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "67" + descriptor = "(ILdt;ZB)I", + garbageValue = "-99" ) - static void method2343() { - PcmPlayer.method212(24); - class318.setLoginResponseString("", "You were disconnected from the server.", ""); + static int method2335(int var0, Script var1, boolean var2) { + if (var0 == 3300) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.cycle; + return 1; + } else { + int var3; + int var4; + if (var0 == 3301) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ClientPreferences.method535(var3, var4); + return 1; + } else if (var0 == 3302) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class182.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == 3303) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class27.method114(var3, var4); + return 1; + } else if (var0 == 3304) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = LoginPacket.getInvDefinition(var3).size; + return 1; + } else if (var0 == 3305) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.currentLevels[var3]; + return 1; + } else if (var0 == 3306) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.levels[var3]; + return 1; + } else if (var0 == 3307) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.experience[var3]; + return 1; + } else { + int var5; + if (var0 == 3308) { + var3 = ItemLayer.Client_plane; + var4 = (class229.localPlayer.x >> 7) + NewShit.baseX; + var5 = (class229.localPlayer.y >> 7) + class101.baseY; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (var4 << 14) + var5 + (var3 << 28); + return 1; + } else if (var0 == 3309) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 >> 14 & 16383; + return 1; + } else if (var0 == 3310) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 >> 28; + return 1; + } else if (var0 == 3311) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3 & 16383; + return 1; + } else if (var0 == 3312) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.isMembersWorld ? 1 : 0; + return 1; + } else if (var0 == 3313) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ClientPreferences.method535(var3, var4); + return 1; + } else if (var0 == 3314) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class182.ItemContainer_getCount(var3, var4); + return 1; + } else if (var0 == 3315) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize] + 32768; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = class27.method114(var3, var4); + return 1; + } else if (var0 == 3316) { + if (Client.staffModLevel >= 2) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.staffModLevel; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3317) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.rebootTimer; + return 1; + } else if (var0 == 3318) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.worldId; + return 1; + } else if (var0 == 3321) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.runEnergy / 100; + return 1; + } else if (var0 == 3322) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.weight; + return 1; + } else if (var0 == 3323) { + if (Client.playerMod) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + + return 1; + } else if (var0 == 3324) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.worldProperties; + return 1; + } else if (var0 == 3325) { + DbTableType.Interpreter_intStackSize -= 4; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + int var6 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 3]; + var3 += var4 << 14; + var3 += var5 << 28; + var3 += var6; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3; + return 1; + } else if (var0 == 3326) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.lastMouseRecordX; + return 1; + } else if (var0 == 3327) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.lastMouseRecordY; + return 1; + } else if (var0 == 3331) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.runEnergy; + return 1; + } else if (var0 == 3332) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Client.field564[var3]; + return 1; + } else { + return 2; + } + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class464.java b/osrs/src/main/java/class464.java index cf00d7541..e5b70c4d4 100644 --- a/osrs/src/main/java/class464.java +++ b/osrs/src/main/java/class464.java @@ -1,21 +1,14 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("rx") +@ObfuscatedName("ri") public class class464 { - @ObfuscatedName("ac") - static final int[] field3907; - @ObfuscatedName("ai") - static final int[] field3908; - - static { - field3907 = new int[16384]; - field3908 = new int[16384]; - double var0 = 3.834951969714103E-4D; - - for (int var2 = 0; var2 < 16384; ++var2) { - field3907[var2] = (int)(16384.0D * Math.sin((double)var2 * var0)); - field3908[var2] = (int)(16384.0D * Math.cos(var0 * (double)var2)); - } - + @ObfuscatedName("at") + float[] field3921; + @ObfuscatedName("ah") + int field3922; + + class464(float[] var1, int var2) { + this.field3921 = var1; + this.field3922 = var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/class465.java b/osrs/src/main/java/class465.java index 04e8eb3b3..c44c15bfa 100644 --- a/osrs/src/main/java/class465.java +++ b/osrs/src/main/java/class465.java @@ -1,21 +1,47 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("rw") -public class class465 { - @ObfuscatedName("al") - static final int[] field3909; - @ObfuscatedName("an") - static final int[] field3910; +@ObfuscatedName("ru") +public enum class465 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lru;" + ) + field3926(1, 1), + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lru;" + ) + field3923(0, 2), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lru;" + ) + field3925(3, 3), + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lru;" + ) + field3924(2, 10); - static { - field3909 = new int[2048]; - field3910 = new int[2048]; - double var0 = 0.0030679615757712823D; + @ObfuscatedName("ab") + final int field3927; + @ObfuscatedName("au") + final int field3928; - for (int var2 = 0; var2 < 2048; ++var2) { - field3909[var2] = (int)(65536.0D * Math.sin(var0 * (double)var2)); - field3910[var2] = (int)(65536.0D * Math.cos((double)var2 * var0)); - } + class465(int var3, int var4) { + this.field3927 = var3; + this.field3928 = var4; + } + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field3928; } } \ No newline at end of file diff --git a/osrs/src/main/java/class466.java b/osrs/src/main/java/class466.java index d1fab3893..b622255f7 100644 --- a/osrs/src/main/java/class466.java +++ b/osrs/src/main/java/class466.java @@ -1,650 +1,34 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("rn") -public class class466 { - @ObfuscatedName("ai") - static int[] field3914; - @ObfuscatedName("az") - public static int[] field3911; - @ObfuscatedName("ad") - @Export("Tiles_saturation") - static int[] Tiles_saturation; - @ObfuscatedName("ab") +@ObfuscatedName("rx") +public class class466 implements class471 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lfi;" + descriptor = "Lty;" ) - static ClanSettings field3912; + public final class501 field3929; - static { - field3914 = new int[32768]; - - for (int var0 = 0; var0 < 32768; ++var0) { - field3914[var0] = method2344(var0); - } - - method2346(); - } - - @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "(B)[Lnv;", - garbageValue = "3" + descriptor = "(Ltq;)V" ) - static class345[] method2345() { - return new class345[]{class345.field3151, class345.field3150}; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(II)I", - garbageValue = "2141889570" - ) - static final int method2344(int var0) { - double var1 = (double)(var0 >> 10 & 31) / 31.0D; - double var3 = (double)(var0 >> 5 & 31) / 31.0D; - double var5 = (double)(var0 & 31) / 31.0D; - double var7 = var1; - if (var3 < var1) { - var7 = var3; - } - - if (var5 < var7) { - var7 = var5; - } - - double var9 = var1; - if (var3 > var1) { - var9 = var3; - } - - if (var5 > var9) { - var9 = var5; - } - - double var11 = 0.0D; - double var13 = 0.0D; - double var15 = (var9 + var7) / 2.0D; - if (var7 != var9) { - if (var15 < 0.5D) { - var13 = (var9 - var7) / (var7 + var9); - } - - if (var15 >= 0.5D) { - var13 = (var9 - var7) / (2.0D - var9 - var7); - } - - if (var9 == var1) { - var11 = (var3 - var5) / (var9 - var7); - } else if (var3 == var9) { - var11 = 2.0D + (var5 - var1) / (var9 - var7); - } else if (var5 == var9) { - var11 = 4.0D + (var1 - var3) / (var9 - var7); - } - } - - int var17 = (int)(var11 * 256.0D / 6.0D); - var17 &= 255; - double var18 = 256.0D * var13; - if (var18 < 0.0D) { - var18 = 0.0D; - } else if (var18 > 255.0D) { - var18 = 255.0D; - } - - if (var15 > 0.7D) { - var18 /= 2.0D; - var18 = Math.floor(var18); - } - - if (var15 > 0.75D) { - var18 /= 2.0D; - var18 = Math.floor(var18); - } - - if (var15 > 0.85D) { - var18 /= 2.0D; - var18 = Math.floor(var18); - } - - if (var15 > 0.95D) { - var18 /= 2.0D; - var18 = Math.floor(var18); - } - - if (var15 > 0.995D) { - var15 = 0.995D; - } - - int var20 = (int)((double)(var17 / 4 * 8) + var18 / 32.0D); - return (var20 << 7) + (int)(var15 * 128.0D); + class466(class502 var1) { + this.field3929 = var1; } - @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "861588431" + descriptor = "(Lrt;)V" ) - static void method2346() { - if (field3911 == null) { - field3911 = new int[65536]; - double var0 = 0.949999988079071D; - - for (int var2 = 0; var2 < 65536; ++var2) { - double var3 = 0.0078125D + (double)(var2 >> 10 & 63) / 64.0D; - double var5 = 0.0625D + (double)(var2 >> 7 & 7) / 8.0D; - double var7 = (double)(var2 & 127) / 128.0D; - double var9 = var7; - double var11 = var7; - double var13 = var7; - if (0.0D != var5) { - double var15; - if (var7 < 0.5D) { - var15 = var7 * (var5 + 1.0D); - } else { - var15 = var5 + var7 - var5 * var7; - } - - double var17 = 2.0D * var7 - var15; - double var19 = var3 + 0.3333333333333333D; - if (var19 > 1.0D) { - --var19; - } - - double var23 = var3 - 0.3333333333333333D; - if (var23 < 0.0D) { - ++var23; - } - - if (var19 * 6.0D < 1.0D) { - var9 = var19 * 6.0D * (var15 - var17) + var17; - } else if (2.0D * var19 < 1.0D) { - var9 = var15; - } else if (3.0D * var19 < 2.0D) { - var9 = var17 + (var15 - var17) * (0.6666666666666666D - var19) * 6.0D; - } else { - var9 = var17; - } - - if (6.0D * var3 < 1.0D) { - var11 = var17 + (var15 - var17) * 6.0D * var3; - } else if (2.0D * var3 < 1.0D) { - var11 = var15; - } else if (var3 * 3.0D < 2.0D) { - var11 = 6.0D * (var15 - var17) * (0.6666666666666666D - var3) + var17; - } else { - var11 = var17; - } - - if (6.0D * var23 < 1.0D) { - var13 = 6.0D * (var15 - var17) * var23 + var17; - } else if (var23 * 2.0D < 1.0D) { - var13 = var15; - } else if (var23 * 3.0D < 2.0D) { - var13 = var17 + (0.6666666666666666D - var23) * (var15 - var17) * 6.0D; - } else { - var13 = var17; - } - } - - var9 = Math.pow(var9, var0); - var11 = Math.pow(var11, var0); - var13 = Math.pow(var13, var0); - int var25 = (int)(256.0D * var9); - int var16 = (int)(256.0D * var11); - int var26 = (int)(256.0D * var13); - int var18 = var26 + (var16 << 8) + (var25 << 16); - field3911[var2] = var18 & 16777215; - } - - } + public class466(class467 var1) { + this(new class502(var1)); } - @ObfuscatedName("ao") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(II)I", - garbageValue = "294804302" - ) - public static int method2347(int var0) { - return 255 - (var0 & 255); - } - - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "66" - ) - static int method2350() { - return Login.loginIndex; - } - - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-734620102" - ) - static int method2349(int var0, Script var1, boolean var2) { - String var3; - if (var0 == 3100) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - MouseHandler.addGameMessage(0, "", var3); - return 1; - } else if (var0 == 3101) { - SoundCache.Interpreter_intStackSize -= 2; - LoginType.performPlayerAnimation(VarbitComposition.localPlayer, Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - return 1; - } else if (var0 == 3103) { - if (!Interpreter.field704) { - Interpreter.field705 = true; - } - - return 1; - } else { - int var10; - if (var0 == 3104) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var10 = 0; - if (class218.isNumber(var3)) { - var10 = HealthBarUpdate.method524(var3); - } - - PacketBufferNode var12 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.RESUME_P_COUNTDIALOG, Client.packetWriter.isaacCipher); - var12.packetBuffer.writeInt(var10); - Client.packetWriter.addNode(var12); - return 1; - } else { - PacketBufferNode var14; - if (var0 == 3105) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.RESUME_P_NAMEDIALOG, Client.packetWriter.isaacCipher); - var14.packetBuffer.writeByte(var3.length() + 1); - var14.packetBuffer.writeStringCp1252NullTerminated(var3); - Client.packetWriter.addNode(var14); - return 1; - } else if (var0 == 3106) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.RESUME_P_STRINGDIALOG, Client.packetWriter.isaacCipher); - var14.packetBuffer.writeByte(var3.length() + 1); - var14.packetBuffer.writeStringCp1252NullTerminated(var3); - Client.packetWriter.addNode(var14); - return 1; - } else { - String var7; - int var8; - if (var0 == 3107) { - var8 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var7 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class14.method41(var8, var7); - return 1; - } else if (var0 == 3108) { - SoundCache.Interpreter_intStackSize -= 3; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var10 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - int var9 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - Widget var13 = class92.getWidget(var9); - class227.clickWidget(var13, var8, var10); - return 1; - } else if (var0 == 3109) { - SoundCache.Interpreter_intStackSize -= 2; - var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var10 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - Widget var11 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - class227.clickWidget(var11, var8, var10); - return 1; - } else if (var0 == 3110) { - ObjTypeCustomisation.mouseCam = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 3111) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class449.clientPreferences.getRoofsHidden() ? 1 : 0; - return 1; - } else if (var0 == 3112) { - class449.clientPreferences.setRoofsHidden(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1); - return 1; - } else if (var0 == 3113) { - var3 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - boolean var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class30.openURL(var3, var4, false); - return 1; - } else if (var0 == 3115) { - var8 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var14 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.RESUME_P_OBJDIALOG, Client.packetWriter.isaacCipher); - var14.packetBuffer.writeShort(var8); - Client.packetWriter.addNode(var14); - return 1; - } else if (var0 == 3116) { - var8 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class137.Interpreter_stringStackSize -= 2; - var7 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - String var5 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize + 1]; - if (var7.length() > 500) { - return 1; - } else if (var5.length() > 500) { - return 1; - } else { - PacketBufferNode var6 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.BUG_REPORT, Client.packetWriter.isaacCipher); - var6.packetBuffer.writeShort(1 + AbstractSocket.stringCp1252NullTerminatedByteSize(var7) + AbstractSocket.stringCp1252NullTerminatedByteSize(var5)); - var6.packetBuffer.writeStringCp1252NullTerminated(var5); - var6.packetBuffer.writeByte(var8); - var6.packetBuffer.writeStringCp1252NullTerminated(var7); - Client.packetWriter.addNode(var6); - return 1; - } - } else if (var0 == 3117) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 3118) { - Client.showMouseOverText = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 3119) { - Client.field386 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 3120) { - if (Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1) { - Client.drawPlayerNames |= 1; - } else { - Client.drawPlayerNames &= -2; - } - - return 1; - } else if (var0 == 3121) { - if (Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1) { - Client.drawPlayerNames |= 2; - } else { - Client.drawPlayerNames &= -3; - } - - return 1; - } else if (var0 == 3122) { - if (Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1) { - Client.drawPlayerNames |= 4; - } else { - Client.drawPlayerNames &= -5; - } - - return 1; - } else if (var0 == 3123) { - if (Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1) { - Client.drawPlayerNames |= 8; - } else { - Client.drawPlayerNames &= -9; - } - - return 1; - } else if (var0 == 3124) { - Client.drawPlayerNames = 0; - return 1; - } else if (var0 == 3125) { - Client.showMouseCross = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 3126) { - Client.showLoadingMessages = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - return 1; - } else if (var0 == 3127) { - class14.setTapToDrop(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1); - return 1; - } else if (var0 == 3128) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class30.getTapToDrop() ? 1 : 0; - return 1; - } else if (var0 == 3129) { - SoundCache.Interpreter_intStackSize -= 2; - Client.oculusOrbNormalSpeed = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - Client.oculusOrbSlowedSpeed = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - return 1; - } else if (var0 == 3130) { - SoundCache.Interpreter_intStackSize -= 2; - return 1; - } else if (var0 == 3131) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 3132) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class113.canvasWidth; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class177.canvasHeight; - return 1; - } else if (var0 == 3133) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 3134) { - return 1; - } else if (var0 == 3135) { - SoundCache.Interpreter_intStackSize -= 2; - return 1; - } else if (var0 == 3136) { - Client.field505 = 3; - Client.field508 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - return 1; - } else if (var0 == 3137) { - Client.field505 = 2; - Client.field508 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - return 1; - } else if (var0 == 3138) { - Client.field505 = 0; - return 1; - } else if (var0 == 3139) { - Client.field505 = 1; - return 1; - } else if (var0 == 3140) { - Client.field505 = 3; - Client.field508 = var2 ? GameObject.scriptDotWidget.id * -198009563 * -802277715 : SceneTilePaint.scriptActiveWidget.id * -198009563 * -802277715; - return 1; - } else { - boolean var15; - if (var0 == 3141) { - var15 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class449.clientPreferences.setIsUsernameHidden(var15); - return 1; - } else if (var0 == 3142) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class449.clientPreferences.getIsUsernameHidden() ? 1 : 0; - return 1; - } else if (var0 == 3143) { - var15 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - Client.Login_isUsernameRemembered = var15; - if (!var15) { - class449.clientPreferences.setUsernameToRemember(""); - } - - return 1; - } else if (var0 == 3144) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.Login_isUsernameRemembered ? 1 : 0; - return 1; - } else if (var0 == 3145) { - return 1; - } else if (var0 == 3146) { - var15 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class449.clientPreferences.getTitleMusicDisabled(!var15); - return 1; - } else if (var0 == 3147) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = class449.clientPreferences.getTitleMusicDisabled() ? 0 : 1; - return 1; - } else if (var0 == 3148) { - return 1; - } else if (var0 == 3149) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3150) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3151) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3152) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3153) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Login.Login_loadingPercent; - return 1; - } else if (var0 == 3154) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = FriendSystem.method412(); - return 1; - } else if (var0 == 3155) { - --class137.Interpreter_stringStackSize; - return 1; - } else if (var0 == 3156) { - return 1; - } else if (var0 == 3157) { - SoundCache.Interpreter_intStackSize -= 2; - return 1; - } else if (var0 == 3158) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3159) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3160) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3161) { - --SoundCache.Interpreter_intStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3162) { - --SoundCache.Interpreter_intStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3163) { - --class137.Interpreter_stringStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3164) { - --SoundCache.Interpreter_intStackSize; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - return 1; - } else if (var0 == 3165) { - --SoundCache.Interpreter_intStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3166) { - SoundCache.Interpreter_intStackSize -= 2; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3167) { - SoundCache.Interpreter_intStackSize -= 2; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3168) { - SoundCache.Interpreter_intStackSize -= 2; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - Interpreter.Interpreter_stringStack[++class137.Interpreter_stringStackSize - 1] = ""; - return 1; - } else if (var0 == 3169) { - return 1; - } else if (var0 == 3170) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3171) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3172) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 3173) { - --SoundCache.Interpreter_intStackSize; - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3174) { - --SoundCache.Interpreter_intStackSize; - return 1; - } else if (var0 == 3175) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = 0; - return 1; - } else if (var0 == 3176) { - return 1; - } else if (var0 == 3177) { - return 1; - } else if (var0 == 3178) { - --class137.Interpreter_stringStackSize; - return 1; - } else if (var0 == 3179) { - return 1; - } else if (var0 == 3180) { - --class137.Interpreter_stringStackSize; - return 1; - } else if (var0 == 3181) { - class20.method69(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return 1; - } else if (var0 == 3182) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = PlayerType.method1883(); - return 1; - } else if (var0 == 3189) { - var8 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - FontName.method2447(var8); - return 1; - } else { - return 2; - } - } - } - } - } - } - - @ObfuscatedName("bl") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1811966721" - ) - static int method2351(int var0, Script var1, boolean var2) { - int var3; - if (var0 == 5504) { - SoundCache.Interpreter_intStackSize -= 2; - var3 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - int var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (!Client.isCameraLocked) { - Client.camAngleX = var3; - Client.camAngleY = var4; - } - - return 1; - } else if (var0 == 5505) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.camAngleX; - return 1; - } else if (var0 == 5506) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.camAngleY; - return 1; - } else if (var0 == 5530) { - var3 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3 < 0) { - var3 = 0; - } - - Client.camFollowHeight = var3; - return 1; - } else if (var0 == 5531) { - Interpreter.Interpreter_intStack[++SoundCache.Interpreter_intStackSize - 1] = Client.camFollowHeight; - return 1; - } else { - return 2; - } - } - - @ObfuscatedName("hl") - @ObfuscatedSignature( - descriptor = "(Lnk;Ljava/lang/String;I)V", - garbageValue = "88867976" - ) - static void method2348(Archive var0, String var1) { - ArchiveLoader var2 = new ArchiveLoader(var0, var1); - Client.archiveLoaders.add(var2); - Client.field550 += var2.groupCount; - } - - @ObfuscatedName("ls") - @ObfuscatedSignature( - descriptor = "(IIS)V", - garbageValue = "-2084" + garbageValue = "-1855937345" ) - @Export("resumePauseWidget") - static void resumePauseWidget(int var0, int var1) { - PacketBufferNode var2 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CONTINUE, Client.packetWriter.isaacCipher); - var2.packetBuffer.writeIntLE(var0); - var2.packetBuffer.writeIntME(var1); - Client.packetWriter.addNode(var2); + public int method2337(int var1) { + return this.field3929.vmethod8144(var1); } } \ No newline at end of file diff --git a/osrs/src/main/java/class467.java b/osrs/src/main/java/class467.java new file mode 100644 index 000000000..6e58566a5 --- /dev/null +++ b/osrs/src/main/java/class467.java @@ -0,0 +1,74 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("rt") +public abstract class class467 extends class292 implements class534 { + @ObfuscatedSignature( + descriptor = "(Lnt;Lof;I)V" + ) + protected class467(StudioGame var1, Language var2, int var3) { + super(var1, var2, var3); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IB)Lsj;", + garbageValue = "-61" + ) + @Export("vmethod8207") + protected abstract class469 vmethod8207(int var1); + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "-973269100" + ) + public int method2338() { + return super.field2496; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/Object;", + garbageValue = "415168938" + ) + @Export("vmethod8697") + public Object vmethod8697(int var1) { + class469 var2 = this.vmethod8207(var1); + return var2 != null && var2.method2345() ? var2.method2346() : null; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Luj;I)Lux;", + garbageValue = "-475761809" + ) + public class535 method2340(Buffer var1) { + int var2 = var1.readUnsignedShort(); + class469 var3 = this.vmethod8207(var2); + class535 var4 = new class535(var2); + Class var5 = var3.field3930.field4130; + if (var5 == Integer.class) { + var4.field4243 = var1.readInt(); + } else if (var5 == Long.class) { + var4.field4243 = var1.readLong(); + } else if (var5 == String.class) { + var4.field4243 = var1.readStringCp1252NullCircumfixed(); + } else { + if (!class530.class.isAssignableFrom(var5)) { + throw new IllegalStateException(); + } + + try { + class530 var6 = (class530)var5.newInstance(); + var6.method2631(var1); + var4.field4243 = var6; + } catch (InstantiationException var7) { + } catch (IllegalAccessException var8) { + } + } + + return var4; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class456.java b/osrs/src/main/java/class468.java similarity index 58% rename from osrs/src/main/java/class456.java rename to osrs/src/main/java/class468.java index bcbbf7d77..d95d8181a 100644 --- a/osrs/src/main/java/class456.java +++ b/osrs/src/main/java/class468.java @@ -2,16 +2,16 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("rg") -public class class456 extends class457 { - public class456(int var1) { +@ObfuscatedName("sg") +public class class468 extends class469 { + public class468(int var1) { super(var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;II)V", - garbageValue = "362589282" + descriptor = "(Luj;II)V", + garbageValue = "-1867165172" ) @Export("vmethod7769") void vmethod7769(Buffer var1, int var2) { diff --git a/osrs/src/main/java/class469.java b/osrs/src/main/java/class469.java new file mode 100644 index 000000000..c66d4bd35 --- /dev/null +++ b/osrs/src/main/java/class469.java @@ -0,0 +1,108 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("sj") +public abstract class class469 implements class291 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Ltu;" + ) + class514 field3930; + + class469(int var1) { + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;II)V", + garbageValue = "-1867165172" + ) + @Export("vmethod7769") + abstract void vmethod7769(Buffer var1, int var2); + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Luj;B)V", + garbageValue = "0" + ) + public void method2343(Buffer var1) { + while (true) { + int var2 = var1.readUnsignedByte(); + if (var2 == 0) { + return; + } + + class465 var3 = (class465)class12.findEnumerated(class129.method708(), var2); + if (var3 != null) { + switch(var3.field3927) { + case 0: + class12.findEnumerated(MilliClock.method1100(), var1.readUnsignedByte()); + break; + case 1: + int var4 = var1.readUnsignedByte(); + this.field3930 = class472.method2349(var4); + if (this.field3930 != null) { + break; + } + + throw new IllegalStateException("Unknown ScriptVarType ID in VarType.decode: " + var4); + case 2: + var1.readStringCp1252NullCircumfixed(); + break; + default: + throw new IllegalStateException("Unrecognised VarTypeEncodingKey - " + var3); + } + } else { + this.vmethod7769(var1, var2); + } + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "984690534" + ) + boolean method2345() { + return this.field3930 != null; + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/Object;", + garbageValue = "1989421795" + ) + Object method2346() { + if (this.field3930 == class514.field4126) { + return 0; + } else if (this.field3930 == class514.field4124) { + return -1L; + } else { + return this.field3930 == class514.field4125 ? "" : null; + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Ltf;", + garbageValue = "1997766495" + ) + @Export("getDbRowType") + public static DbRowType getDbRowType(int var0) { + DbRowType var1 = (DbRowType)DbRowType.DBRowType_cache.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = DbRowType.field4140.takeFile(38, var0); + var1 = new DbRowType(); + if (var2 != null) { + var1.method2520(new Buffer(var2)); + } + + var1.method2523(); + DbRowType.DBRowType_cache.put(var1, (long)var0); + return var1; + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class47.java b/osrs/src/main/java/class47.java index de745e757..e4c5f2cc4 100644 --- a/osrs/src/main/java/class47.java +++ b/osrs/src/main/java/class47.java @@ -6,152 +6,141 @@ @ObfuscatedName("bx") public class class47 { - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - public static AbstractArchive field226; - @ObfuscatedName("jr") - @Export("baseY") - static int baseY; - @ObfuscatedName("ra") + @ObfuscatedName("ae") + @Export("canvasHeight") + public static int canvasHeight; + @ObfuscatedName("fu") @ObfuscatedSignature( - descriptor = "Lth;" + descriptor = "Loh;" ) - @Export("HitSplatDefinition_cachedSprites") - static class497 HitSplatDefinition_cachedSprites; - @ObfuscatedName("au") + @Export("archive12") + static Archive archive12; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lcm;" + descriptor = "Lcv;" ) - VorbisSample field230; - @ObfuscatedName("ae") + VorbisSample field225; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Lbu;" + descriptor = "Lbt;" ) - RawSound field229; - @ObfuscatedName("ao") - ReentrantLock field231; + RawSound field224; + @ObfuscatedName("ar") + ReentrantLock field226; @ObfuscatedSignature( - descriptor = "(Lcm;Lbu;)V" + descriptor = "(Lcv;Lbt;)V" ) class47(VorbisSample var1, RawSound var2) { - this.field230 = var1; - this.field229 = var2; - this.field231 = new ReentrantLock(); + this.field225 = var1; + this.field224 = var2; + this.field226 = new ReentrantLock(); } - @ObfuscatedName("ly") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "(IIIILjava/lang/String;I)V", - garbageValue = "997098077" + descriptor = "(ILdt;ZI)I", + garbageValue = "1747596015" ) - @Export("widgetDefaultMenuAction") - static void widgetDefaultMenuAction(int var0, int var1, int var2, int var3, String var4) { - Widget var5 = SoundCache.getWidgetChild(var1, var2); - if (var5 != null) { - if (var5.onOp != null) { - ScriptEvent var6 = new ScriptEvent(); - var6.widget = var5; - var6.opIndex = var0; - var6.targetName = var4; - var6.args = var5.onOp; - WorldMapSection1.runScriptEvent(var6); - } - - boolean var11 = true; - if (var5.contentType > 0) { - var11 = Bounds.method2290(var5); - } - - if (var11) { - int var8 = NewShit.getWidgetFlags(var5); - int var9 = var0 - 1; - boolean var7 = (var8 >> var9 + 1 & 1) != 0; - if (var7) { - PacketBufferNode var10; - if (var0 == 1) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON1, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } - - if (var0 == 2) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON2, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } - - if (var0 == 3) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON3, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } + static int method244(int var0, Script var1, boolean var2) { + int var3; + int var4; + if (var0 == 100) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + int var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + if (var4 == 0) { + throw new RuntimeException(); + } else { + Widget var6 = HealthBarDefinition.widgetDefinition.method1733(var3); + if (var6.children == null) { + var6.children = new Widget[var5 + 1]; + } - if (var0 == 4) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON4, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } + if (var6.children.length <= var5) { + Widget[] var7 = new Widget[var5 + 1]; - if (var0 == 5) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON5, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); + for (int var8 = 0; var8 < var6.children.length; ++var8) { + var7[var8] = var6.children[var8]; } - if (var0 == 6) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON6, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); - } + var6.children = var7; + } - if (var0 == 7) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON7, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); + if (var5 > 0 && var6.children[var5 - 1] == null) { + throw new RuntimeException("" + (var5 - 1)); + } else { + Widget var12 = new Widget(); + var12.type = var4; + var12.parentId = var12.id = var6.id; + var12.childIndex = var5; + var12.isIf3 = true; + if (var4 == 12) { + var12.method1870(); + var12.method1871().method1806(new class105(var12)); + var12.method1871().method1805(new class106(var12)); } - if (var0 == 8) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON8, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); + var6.children[var5] = var12; + if (var2) { + Interpreter.scriptDotWidget = var12; + } else { + HealthBar.scriptActiveWidget = var12; } - if (var0 == 9) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON9, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); + class159.invalidateWidget(var6); + return 1; + } + } + } else { + Widget var9; + if (var0 == 101) { + var9 = var2 ? Interpreter.scriptDotWidget : HealthBar.scriptActiveWidget; + Widget var10 = HealthBarDefinition.widgetDefinition.method1733(var9.id); + var10.children[var9.childIndex] = null; + class159.invalidateWidget(var10); + return 1; + } else if (var0 == 102) { + var9 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + var9.children = null; + class159.invalidateWidget(var9); + return 1; + } else if (var0 != 200) { + if (var0 == 201) { + var9 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var9 != null) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + if (var2) { + Interpreter.scriptDotWidget = var9; + } else { + HealthBar.scriptActiveWidget = var9; + } + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; } - if (var0 == 10) { - var10 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.IF_BUTTON10, Client.packetWriter.isaacCipher); - var10.packetBuffer.writeInt(var1); - var10.packetBuffer.writeShort(var2); - var10.packetBuffer.writeShort(var3); - Client.packetWriter.addNode(var10); + return 1; + } else { + return 2; + } + } else { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + Widget var11 = HealthBarDefinition.widgetDefinition.getWidgetChild(var3, var4); + if (var11 != null && var4 != -1) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 1; + if (var2) { + Interpreter.scriptDotWidget = var11; + } else { + HealthBar.scriptActiveWidget = var11; } - + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; } + + return 1; } } } diff --git a/osrs/src/main/java/class470.java b/osrs/src/main/java/class470.java new file mode 100644 index 000000000..429697340 --- /dev/null +++ b/osrs/src/main/java/class470.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("sr") +public interface class470 { +} \ No newline at end of file diff --git a/osrs/src/main/java/class471.java b/osrs/src/main/java/class471.java new file mode 100644 index 000000000..7a0dccbe0 --- /dev/null +++ b/osrs/src/main/java/class471.java @@ -0,0 +1,5 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("sa") +public interface class471 extends class470 { +} \ No newline at end of file diff --git a/osrs/src/main/java/class472.java b/osrs/src/main/java/class472.java new file mode 100644 index 000000000..ba1e496d9 --- /dev/null +++ b/osrs/src/main/java/class472.java @@ -0,0 +1,133 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("si") +public class class472 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lsi;" + ) + public static final class472 field3931; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lsi;" + ) + static final class472 field3932; + @ObfuscatedName("ar") + String field3933; + + static { + field3931 = new class472("application/json"); + field3932 = new class472("text/plain"); + } + + class472(String var1) { + this.field3933 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Ljava/lang/String;", + garbageValue = "1925429052" + ) + public String method2348() { + return this.field3933; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(II)Ltu;", + garbageValue = "-2020292957" + ) + public static class514 method2349(int var0) { + int var1 = class512.field4123[var0]; + if (var1 == 1) { + return class514.field4126; + } else if (var1 == 2) { + return class514.field4125; + } else { + return var1 == 3 ? class514.field4124 : null; + } + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-2006289317" + ) + public static void method2350() { + class316.field2787.clear(); + } + + @ObfuscatedName("kn") + @ObfuscatedSignature( + descriptor = "(Luo;B)V", + garbageValue = "-41" + ) + static final void method2351(PacketBuffer var0) { + var0.importIndex(); + int var1 = var0.readBits(8); + int var2; + if (var1 < Client.npcCount) { + for (var2 = var1; var2 < Client.npcCount; ++var2) { + Client.field559[++Client.field489 - 1] = Client.npcIndices[var2]; + } + } + + if (var1 > Client.npcCount) { + throw new RuntimeException(""); + } else { + Client.npcCount = 0; + + for (var2 = 0; var2 < var1; ++var2) { + int var3 = Client.npcIndices[var2]; + NPC var4 = Client.npcs[var3]; + int var5 = var0.readBits(1); + if (var5 == 0) { + Client.npcIndices[++Client.npcCount - 1] = var3; + var4.npcCycle = Client.cycle; + } else { + int var6 = var0.readBits(2); + if (var6 == 0) { + Client.npcIndices[++Client.npcCount - 1] = var3; + var4.npcCycle = Client.cycle; + Client.field550[++Client.field449 - 1] = var3; + } else { + int var7; + int var8; + if (var6 == 1) { + Client.npcIndices[++Client.npcCount - 1] = var3; + var4.npcCycle = Client.cycle; + var7 = var0.readBits(3); + var4.move(var7, MoveSpeed.WALK); + var8 = var0.readBits(1); + if (var8 == 1) { + Client.field550[++Client.field449 - 1] = var3; + } + } else if (var6 == 2) { + Client.npcIndices[++Client.npcCount - 1] = var3; + var4.npcCycle = Client.cycle; + if (var0.readBits(1) == 1) { + var7 = var0.readBits(3); + var4.move(var7, MoveSpeed.RUN); + var8 = var0.readBits(3); + var4.move(var8, MoveSpeed.RUN); + } else { + var7 = var0.readBits(3); + var4.move(var7, MoveSpeed.CRAWL); + } + + var7 = var0.readBits(1); + if (var7 == 1) { + Client.field550[++Client.field449 - 1] = var3; + } + } else if (var6 == 3) { + Client.field559[++Client.field489 - 1] = var3; + } + } + } + } + + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class473.java b/osrs/src/main/java/class473.java new file mode 100644 index 000000000..51d25400b --- /dev/null +++ b/osrs/src/main/java/class473.java @@ -0,0 +1,24 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.io.UnsupportedEncodingException; + +@ObfuscatedName("sd") +public interface class473 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)Lsi;", + garbageValue = "-24" + ) + @Export("vmethod2213") + class472 vmethod2213(); + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)[B", + garbageValue = "0" + ) + @Export("vmethod7797") + byte[] vmethod7797() throws UnsupportedEncodingException; +} \ No newline at end of file diff --git a/osrs/src/main/java/class474.java b/osrs/src/main/java/class474.java new file mode 100644 index 000000000..1ff509f8a --- /dev/null +++ b/osrs/src/main/java/class474.java @@ -0,0 +1,91 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.UnsupportedEncodingException; + +@ObfuscatedName("sv") +public class class474 implements class473 { + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lorg/json/JSONObject;" + ) + JSONObject field3934; + + public class474(byte[] var1) throws UnsupportedEncodingException { + this.method2355(var1); + } + + public class474(JSONObject var1) { + this.field3934 = var1; + } + + public class474(String var1) throws UnsupportedEncodingException { + this.method2356(var1); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)Lsi;", + garbageValue = "-24" + ) + public class472 vmethod2213() { + return class472.field3931; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)[B", + garbageValue = "0" + ) + @Export("vmethod7797") + public byte[] vmethod7797() throws UnsupportedEncodingException { + return this.field3934 == null ? new byte[0] : this.field3934.toString().getBytes("UTF-8"); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "([BI)V", + garbageValue = "-1436694020" + ) + void method2355(byte[] var1) throws UnsupportedEncodingException { + String var2 = new String(var1, "UTF-8"); + this.method2356(var2); + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "1963139059" + ) + void method2356(String var1) throws UnsupportedEncodingException { + try { + if (var1.charAt(0) == '{') { + this.field3934 = new JSONObject(var1); + } else { + if (var1.charAt(0) != '[') { + throw new UnsupportedEncodingException("Invalid JSON passed to the JSON content builder."); + } + + JSONArray var2 = new JSONArray(var1); + this.field3934 = new JSONObject(); + this.field3934.method2727("arrayValues", var2); + } + + } catch (JSONException var3) { + throw new UnsupportedEncodingException(var3.getMessage()); + } + } + + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(B)Lorg/json/JSONObject;", + garbageValue = "70" + ) + public JSONObject method2357() { + return this.field3934; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class475.java b/osrs/src/main/java/class475.java index d9a8bd375..dee44b95e 100644 --- a/osrs/src/main/java/class475.java +++ b/osrs/src/main/java/class475.java @@ -2,13 +2,100 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sv") -public interface class475 { - @ObfuscatedName("au") +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; + +@ObfuscatedName("sk") +public class class475 implements class473 { + @ObfuscatedName("at") + final Map field3935; + + public class475(Map var1) { + this.field3935 = var1; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)Lsi;", + garbageValue = "-24" + ) + @Export("vmethod2213") + public class472 vmethod2213() { + return null; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)[B", + garbageValue = "0" + ) + @Export("vmethod7797") + public byte[] vmethod7797() throws UnsupportedEncodingException { + return this.method2361().getBytes("UTF-8"); + } + + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(S)Lsm;", - garbageValue = "256" + descriptor = "(I)Ljava/lang/String;", + garbageValue = "-2008716639" ) - @Export("get") - PlatformInfo get(); + public String method2361() throws UnsupportedEncodingException { + StringBuilder var1 = new StringBuilder(); + Iterator var2 = this.field3935.entrySet().iterator(); + + while (var2.hasNext()) { + Entry var3 = (Entry)var2.next(); + String var4 = URLEncoder.encode((String)var3.getKey(), "UTF-8"); + String var5 = URLEncoder.encode((String)var3.getValue(), "UTF-8"); + var1.append(var4).append("=").append(var5).append("&"); + } + + if (var1.length() == 0) { + return ""; + } else { + var1.deleteCharAt(var1.length() - 1); + var1.insert(0, "?"); + return var1.toString(); + } + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "([Ljava/lang/String;[IIIB)V", + garbageValue = "-67" + ) + public static void method2362(String[] var0, int[] var1, int var2, int var3) { + if (var2 < var3) { + int var4 = (var3 + var2) / 2; + int var5 = var2; + String var6 = var0[var4]; + var0[var4] = var0[var3]; + var0[var3] = var6; + int var7 = var1[var4]; + var1[var4] = var1[var3]; + var1[var3] = var7; + + for (int var8 = var2; var8 < var3; ++var8) { + if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) { + String var9 = var0[var8]; + var0[var8] = var0[var5]; + var0[var5] = var9; + int var10 = var1[var8]; + var1[var8] = var1[var5]; + var1[var5++] = var10; + } + } + + var0[var3] = var0[var5]; + var0[var5] = var6; + var1[var3] = var1[var5]; + var1[var5] = var7; + method2362(var0, var1, var2, var5 - 1); + method2362(var0, var1, var5 + 1, var3); + } + + } } \ No newline at end of file diff --git a/osrs/src/main/java/class476.java b/osrs/src/main/java/class476.java index a9a37a639..d93951b9d 100644 --- a/osrs/src/main/java/class476.java +++ b/osrs/src/main/java/class476.java @@ -1,89 +1,21 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("se") -public class class476 extends class479 { +@ObfuscatedName("sc") +public class class476 { + @ObfuscatedName("ab") + static final int[] field3936; @ObfuscatedName("au") - int field3961; - @ObfuscatedName("ae") - int field3960; - @ObfuscatedName("ao") - double field3957; - @ObfuscatedName("at") - double field3958; - @ObfuscatedName("ac") - double field3955; - @ObfuscatedName("ai") - double field3956; - @ObfuscatedName("az") - double field3959; + static final int[] field3937; - public class476(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { - super(var9, var10); - this.field3961 = 0; - this.field3960 = 0; - this.field3957 = 0.0D; - this.field3958 = 0.0D; - this.field3955 = 0.0D; - this.field3956 = 0.0D; - this.field3959 = 0.0D; - this.field3961 = var3; - this.field3960 = var6; - if ((var5 - var8) * (var7 - var1) == (var4 - var7) * (var8 - var2)) { - this.field3957 = (double)var4; - this.field3958 = (double)var5; - } else { - double var11 = (double)((float)(var7 + var1)) / 2.0D; - double var13 = (double)((float)(var8 + var2)) / 2.0D; - double var15 = (double)((float)(var4 + var7)) / 2.0D; - double var17 = (double)((float)(var5 + var8)) / 2.0D; - double var19 = -1.0D * (double)(var7 - var1) / (double)(var8 - var2); - double var21 = (double)(var4 - var7) * -1.0D / (double)(var5 - var8); - this.field3957 = (var19 * var11 - var21 * var15 + var17 - var13) / (var19 - var21); - this.field3958 = var13 + var19 * (this.field3957 - var11); - this.field3955 = Math.sqrt(Math.pow(this.field3957 - (double)var1, 2.0D) + Math.pow(this.field3958 - (double)var2, 2.0D)); - this.field3956 = Math.atan2((double)var2 - this.field3958, (double)var1 - this.field3957); - double var23 = Math.atan2((double)var8 - this.field3958, (double)var7 - this.field3957); - this.field3959 = Math.atan2((double)var5 - this.field3958, (double)var4 - this.field3957); - boolean var25 = this.field3956 <= var23 && var23 <= this.field3959 || this.field3959 <= var23 && var23 <= this.field3956; - if (!var25) { - this.field3959 += (double)(this.field3956 - this.field3959 > 0.0D ? 2 : -2) * 3.141592653589793D; - } + static { + field3936 = new int[16384]; + field3937 = new int[16384]; + double var0 = 3.834951969714103E-4D; + for (int var2 = 0; var2 < 16384; ++var2) { + field3936[var2] = (int)(16384.0D * Math.sin((double)var2 * var0)); + field3937[var2] = (int)(16384.0D * Math.cos((double)var2 * var0)); } - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "818000115" - ) - public int vmethod2349() { - double var1 = this.method2377(); - double var3 = this.field3956 + (this.field3959 - this.field3956) * var1; - return (int)Math.round(this.field3957 + this.field3955 * Math.cos(var3)); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "363084355" - ) - public int vmethod2347() { - double var1 = this.method2377(); - double var3 = this.field3956 + var1 * (this.field3959 - this.field3956); - return (int)Math.round(this.field3958 + this.field3955 * Math.sin(var3)); - } - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1706544959" - ) - @Export("vmethod2320") - public int vmethod2320() { - double var1 = this.method2377(); - return (int)Math.round((double)this.field3961 + var1 * (double)(this.field3960 - this.field3961)); } } \ No newline at end of file diff --git a/osrs/src/main/java/class477.java b/osrs/src/main/java/class477.java index 029c77eb0..a906811eb 100644 --- a/osrs/src/main/java/class477.java +++ b/osrs/src/main/java/class477.java @@ -1,101 +1,20 @@ import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sk") -public class class477 extends class479 { - @ObfuscatedName("au") - int field3967; - @ObfuscatedName("ae") - int field3963; - @ObfuscatedName("ao") - int field3965; - @ObfuscatedName("at") - int field3966; - @ObfuscatedName("ac") - int field3962; - @ObfuscatedName("ai") - int field3964; - - public class477(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { - super(var7, var8); - this.field3967 = 0; - this.field3963 = 0; - this.field3965 = 0; - this.field3966 = 0; - this.field3962 = 0; - this.field3964 = 0; - this.field3967 = var1; - this.field3963 = var2; - this.field3965 = var3; - this.field3966 = var4; - this.field3962 = var5; - this.field3964 = var6; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "818000115" - ) - public int vmethod2349() { - double var1 = this.method2377(); - return (int)Math.round((double)(this.field3966 - this.field3967) * var1 + (double)this.field3967); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "363084355" - ) - public int vmethod2347() { - double var1 = this.method2377(); - return (int)Math.round(var1 * (double)(this.field3962 - this.field3963) + (double)this.field3963); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1706544959" - ) - public int vmethod2320() { - double var1 = this.method2377(); - return (int)Math.round((double)this.field3965 + (double)(this.field3964 - this.field3965) * var1); - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "([I[IIII)V", - garbageValue = "-1387907364" - ) - public static void method2370(int[] var0, int[] var1, int var2, int var3) { - if (var2 < var3) { - int var4 = (var3 + var2) / 2; - int var5 = var2; - int var6 = var0[var4]; - var0[var4] = var0[var3]; - var0[var3] = var6; - int var7 = var1[var4]; - var1[var4] = var1[var3]; - var1[var3] = var7; - int var8 = var6 == Integer.MAX_VALUE ? 0 : 1; - - for (int var9 = var2; var9 < var3; ++var9) { - if (var0[var9] < (var9 & var8) + var6) { - int var10 = var0[var9]; - var0[var9] = var0[var5]; - var0[var5] = var10; - int var11 = var1[var9]; - var1[var9] = var1[var5]; - var1[var5++] = var11; - } - } - - var0[var3] = var0[var5]; - var0[var5] = var6; - var1[var3] = var1[var5]; - var1[var5] = var7; - method2370(var0, var1, var2, var5 - 1); - method2370(var0, var1, var5 + 1, var3); +@ObfuscatedName("sx") +public class class477 { + @ObfuscatedName("ax") + static final int[] field3939; + @ObfuscatedName("as") + static final int[] field3938; + + static { + field3939 = new int[2048]; + field3938 = new int[2048]; + double var0 = 0.0030679615757712823D; + + for (int var2 = 0; var2 < 2048; ++var2) { + field3939[var2] = (int)(65536.0D * Math.sin(var0 * (double)var2)); + field3938[var2] = (int)(65536.0D * Math.cos((double)var2 * var0)); } } diff --git a/osrs/src/main/java/class478.java b/osrs/src/main/java/class478.java index ddf84d5ba..3a1cdbd66 100644 --- a/osrs/src/main/java/class478.java +++ b/osrs/src/main/java/class478.java @@ -1,37 +1,237 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("sy") -public class class478 extends class480 { +@ObfuscatedName("ss") +public class class478 { @ObfuscatedName("au") - int field3969; - @ObfuscatedName("ae") - int field3968; - - public class478(int var1, int var2, int var3, int var4) { - super(var3, var4); - this.field3969 = 0; - this.field3968 = 0; - this.field3969 = var1; - this.field3968 = var2; + static int[] field3942; + @ObfuscatedName("aa") + public static int[] field3940; + @ObfuscatedName("ti") + @ObfuscatedSignature( + descriptor = "Lfc;" + ) + @Export("guestClanSettings") + static ClanSettings guestClanSettings; + + static { + field3942 = new int[32768]; + + for (int var0 = 0; var0 < 32768; ++var0) { + field3942[var0] = method2363(var0); + } + + if (field3940 == null) { + field3940 = new int[65536]; + double var25 = 0.949999988079071D; + + for (int var2 = 0; var2 < 65536; ++var2) { + double var3 = 0.0078125D + (double)(var2 >> 10 & 63) / 64.0D; + double var5 = (double)(var2 >> 7 & 7) / 8.0D + 0.0625D; + double var7 = (double)(var2 & 127) / 128.0D; + double var9 = var7; + double var11 = var7; + double var13 = var7; + if (var5 != 0.0D) { + double var15; + if (var7 < 0.5D) { + var15 = (1.0D + var5) * var7; + } else { + var15 = var5 + var7 - var7 * var5; + } + + double var17 = var7 * 2.0D - var15; + double var19 = var3 + 0.3333333333333333D; + if (var19 > 1.0D) { + --var19; + } + + double var23 = var3 - 0.3333333333333333D; + if (var23 < 0.0D) { + ++var23; + } + + if (var19 * 6.0D < 1.0D) { + var9 = var17 + var19 * (var15 - var17) * 6.0D; + } else if (2.0D * var19 < 1.0D) { + var9 = var15; + } else if (3.0D * var19 < 2.0D) { + var9 = var17 + (0.6666666666666666D - var19) * (var15 - var17) * 6.0D; + } else { + var9 = var17; + } + + if (var3 * 6.0D < 1.0D) { + var11 = var17 + var3 * (var15 - var17) * 6.0D; + } else if (2.0D * var3 < 1.0D) { + var11 = var15; + } else if (3.0D * var3 < 2.0D) { + var11 = var17 + (0.6666666666666666D - var3) * (var15 - var17) * 6.0D; + } else { + var11 = var17; + } + + if (6.0D * var23 < 1.0D) { + var13 = var17 + var23 * (var15 - var17) * 6.0D; + } else if (var23 * 2.0D < 1.0D) { + var13 = var15; + } else if (var23 * 3.0D < 2.0D) { + var13 = var17 + (var15 - var17) * (0.6666666666666666D - var23) * 6.0D; + } else { + var13 = var17; + } + } + + var9 = Math.pow(var9, var25); + var11 = Math.pow(var11, var25); + var13 = Math.pow(var13, var25); + int var27 = (int)(var9 * 256.0D); + int var16 = (int)(var11 * 256.0D); + int var28 = (int)(256.0D * var13); + int var18 = var28 + (var16 << 8) + (var27 << 16); + field3940[var2] = var18 & 16777215; + } + } + } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1901048798" + descriptor = "(II)I", + garbageValue = "-2145901051" ) - public int method2371() { - double var1 = this.method2377(); - return (int)Math.round((double)this.field3969 + var1 * (double)(this.field3968 - this.field3969)); + static final int method2363(int var0) { + double var1 = (double)(var0 >> 10 & 31) / 31.0D; + double var3 = (double)(var0 >> 5 & 31) / 31.0D; + double var5 = (double)(var0 & 31) / 31.0D; + double var7 = var1; + if (var3 < var1) { + var7 = var3; + } + + if (var5 < var7) { + var7 = var5; + } + + double var9 = var1; + if (var3 > var1) { + var9 = var3; + } + + if (var5 > var9) { + var9 = var5; + } + + double var11 = 0.0D; + double var13 = 0.0D; + double var15 = (var9 + var7) / 2.0D; + if (var9 != var7) { + if (var15 < 0.5D) { + var13 = (var9 - var7) / (var7 + var9); + } + + if (var15 >= 0.5D) { + var13 = (var9 - var7) / (2.0D - var9 - var7); + } + + if (var1 == var9) { + var11 = (var3 - var5) / (var9 - var7); + } else if (var9 == var3) { + var11 = 2.0D + (var5 - var1) / (var9 - var7); + } else if (var5 == var9) { + var11 = (var1 - var3) / (var9 - var7) + 4.0D; + } + } + + int var17 = (int)(var11 * 256.0D / 6.0D); + var17 &= 255; + double var18 = 256.0D * var13; + if (var18 < 0.0D) { + var18 = 0.0D; + } else if (var18 > 255.0D) { + var18 = 255.0D; + } + + if (var15 > 0.7D) { + var18 /= 2.0D; + var18 = Math.floor(var18); + } + + if (var15 > 0.75D) { + var18 /= 2.0D; + var18 = Math.floor(var18); + } + + if (var15 > 0.85D) { + var18 /= 2.0D; + var18 = Math.floor(var18); + } + + if (var15 > 0.95D) { + var18 /= 2.0D; + var18 = Math.floor(var18); + } + + if (var15 > 0.995D) { + var15 = 0.995D; + } + + int var20 = (int)((double)(var17 / 4 * 8) + var18 / 32.0D); + return (int)(128.0D * var15) + (var20 << 7); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IB)I", + garbageValue = "124" + ) + public static int method2364(int var0) { + return 255 - (var0 & 255); } - @ObfuscatedName("aj") + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;I)V", - garbageValue = "-2077618476" + descriptor = "(I)V", + garbageValue = "930574871" ) - static void method2372(String var0) { - Login.field764 = HorizontalAlignment.method977(var0); + static void method2365() { + Login.Login_username = Login.Login_username.trim(); + if (Login.Login_username.length() == 0) { + class139.setLoginResponseString("", "Please enter your username/email address.", ""); + } else if (Login.Login_password.length() == 0) { + class139.setLoginResponseString("", "Please enter your password.", ""); + } else { + class139.setLoginResponseString("", "Connecting to server...", ""); + VerticalAlignment.method958(false); + WorldMapSection2.updateGameState(20); + } + } + + @ObfuscatedName("kp") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1143986054" + ) + static final void method2366(int var0, int var1) { + if (Client.menuOptionsCount >= 2 || Client.isItemSelected != 0 || Client.isSpellSelected) { + if (Client.showMouseOverText) { + int var2 = Client.menuOptionsCount - 1; + String var4; + if (Client.isItemSelected == 1 && Client.menuOptionsCount < 2) { + var4 = "Use" + " " + Client.field597 + " " + "->"; + } else if (Client.isSpellSelected && Client.menuOptionsCount < 2) { + var4 = Client.field599 + " " + Client.field598 + " " + "->"; + } else { + var4 = ReflectionCheck.method187(var2); + } + + if (Client.menuOptionsCount > 2) { + var4 = var4 + class167.colorStartTag(16777215) + " " + '/' + " " + (Client.menuOptionsCount - 2) + " more options"; + } + + GrandExchangeOfferTotalQuantityComparator.fontBold12.drawRandomAlphaAndSpacing(var4, var0 + 4, var1 + 15, 16777215, 0, Client.cycle / 1000); + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class479.java b/osrs/src/main/java/class479.java deleted file mode 100644 index f6b82f187..000000000 --- a/osrs/src/main/java/class479.java +++ /dev/null @@ -1,34 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("sn") -public abstract class class479 extends class480 { - class479(int var1, int var2) { - super(var1, var2); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "818000115" - ) - @Export("vmethod2349") - public abstract int vmethod2349(); - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "363084355" - ) - @Export("vmethod2347") - public abstract int vmethod2347(); - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(I)I", - garbageValue = "-1706544959" - ) - @Export("vmethod2320") - public abstract int vmethod2320(); -} \ No newline at end of file diff --git a/osrs/src/main/java/class480.java b/osrs/src/main/java/class480.java deleted file mode 100644 index 2e48135e3..000000000 --- a/osrs/src/main/java/class480.java +++ /dev/null @@ -1,51 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("sc") -public abstract class class480 { - @ObfuscatedName("gv") - @Export("worldPort") - static int worldPort; - @ObfuscatedName("ap") - int field3974; - @ObfuscatedName("aa") - int field3972; - @ObfuscatedName("af") - double field3971; - @ObfuscatedName("ad") - int field3973; - - class480(int var1, int var2) { - this.field3974 = 0; - this.field3972 = 0; - this.field3971 = 0.0D; - this.field3973 = 0; - this.field3974 = var1; - this.field3972 = 0; - this.field3973 = var2 >= 0 && var2 <= 27 ? var2 : 0; - this.field3971 = class302.method1623(this.field3972, this.field3974, this.field3973); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-299202193" - ) - public void method2376() { - if (this.field3972 < this.field3974) { - ++this.field3972; - this.field3971 = class302.method1623(this.field3972, this.field3974, this.field3973); - } - - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(I)D", - garbageValue = "1467440127" - ) - double method2377() { - return this.field3971; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class485.java b/osrs/src/main/java/class485.java deleted file mode 100644 index ed0f1f722..000000000 --- a/osrs/src/main/java/class485.java +++ /dev/null @@ -1,70 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ss") -public class class485 { - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - @Export("SequenceDefinition_skeletonsArchive") - static AbstractArchive SequenceDefinition_skeletonsArchive; - @ObfuscatedName("au") - public final Object field4049; - @ObfuscatedName("ae") - public final Object field4048; - - public class485(Object var1, Object var2) { - this.field4049 = var1; - this.field4048 = var2; - } - - @Export("toString") - @ObfuscatedName("toString") - public String toString() { - return this.field4049 + ", " + this.field4048; - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - if (var1 != null && var1 instanceof class485) { - class485 var2 = (class485)var1; - if (this.field4049 == null) { - if (var2.field4049 != null) { - return false; - } - } else if (!this.field4049.equals(var2.field4049)) { - return false; - } - - if (this.field4048 == null) { - if (var2.field4048 != null) { - return false; - } - } else if (!this.field4048.equals(var2.field4048)) { - return false; - } - - return true; - } else { - return false; - } - } - - @Export("hashCode") - @ObfuscatedName("hashCode") - public int hashCode() { - int var1 = 0; - if (this.field4049 != null) { - var1 += this.field4049.hashCode(); - } - - if (this.field4048 != null) { - var1 += 31 * this.field4048.hashCode(); - } - - return var1; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class487.java b/osrs/src/main/java/class487.java new file mode 100644 index 000000000..674cc8879 --- /dev/null +++ b/osrs/src/main/java/class487.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("sz") +public interface class487 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)Lsb;", + garbageValue = "-87" + ) + @Export("get") + PlatformInfo get(); +} \ No newline at end of file diff --git a/osrs/src/main/java/class488.java b/osrs/src/main/java/class488.java new file mode 100644 index 000000000..3b05d0042 --- /dev/null +++ b/osrs/src/main/java/class488.java @@ -0,0 +1,89 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("sp") +public class class488 extends class491 { + @ObfuscatedName("at") + int field3989; + @ObfuscatedName("ah") + int field3988; + @ObfuscatedName("ar") + double field3986; + @ObfuscatedName("ao") + double field3985; + @ObfuscatedName("ab") + double field3984; + @ObfuscatedName("au") + double field3987; + @ObfuscatedName("aa") + double field3983; + + public class488(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) { + super(var9, var10); + this.field3989 = 0; + this.field3988 = 0; + this.field3986 = 0.0D; + this.field3985 = 0.0D; + this.field3984 = 0.0D; + this.field3987 = 0.0D; + this.field3983 = 0.0D; + this.field3989 = var3; + this.field3988 = var6; + if ((var5 - var8) * (var7 - var1) == (var4 - var7) * (var8 - var2)) { + this.field3986 = (double)var4; + this.field3985 = (double)var5; + } else { + double var11 = (double)((float)(var7 + var1)) / 2.0D; + double var13 = (double)((float)(var8 + var2)) / 2.0D; + double var15 = (double)((float)(var4 + var7)) / 2.0D; + double var17 = (double)((float)(var5 + var8)) / 2.0D; + double var19 = (double)(var7 - var1) * -1.0D / (double)(var8 - var2); + double var21 = (double)(var4 - var7) * -1.0D / (double)(var5 - var8); + this.field3986 = (var19 * var11 - var21 * var15 + var17 - var13) / (var19 - var21); + this.field3985 = var13 + var19 * (this.field3986 - var11); + this.field3984 = Math.sqrt(Math.pow(this.field3986 - (double)var1, 2.0D) + Math.pow(this.field3985 - (double)var2, 2.0D)); + this.field3987 = Math.atan2((double)var2 - this.field3985, (double)var1 - this.field3986); + double var23 = Math.atan2((double)var8 - this.field3985, (double)var7 - this.field3986); + this.field3983 = Math.atan2((double)var5 - this.field3985, (double)var4 - this.field3986); + boolean var25 = this.field3987 <= var23 && var23 <= this.field3983 || this.field3983 <= var23 && var23 <= this.field3987; + if (!var25) { + this.field3983 += (double)(this.field3987 - this.field3983 > 0.0D ? 2 : -2) * 3.141592653589793D; + } + + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "2" + ) + public int vmethod2386() { + double var1 = this.method2390(); + double var3 = this.field3987 + var1 * (this.field3983 - this.field3987); + return (int)Math.round(this.field3986 + this.field3984 * Math.cos(var3)); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "124" + ) + public int vmethod2387() { + double var1 = this.method2390(); + double var3 = var1 * (this.field3983 - this.field3987) + this.field3987; + return (int)Math.round(this.field3985 + this.field3984 * Math.sin(var3)); + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1254922863" + ) + @Export("vmethod2320") + public int vmethod2320() { + double var1 = this.method2390(); + return (int)Math.round((double)this.field3989 + var1 * (double)(this.field3988 - this.field3989)); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class489.java b/osrs/src/main/java/class489.java index 00cdf1d82..723a569c4 100644 --- a/osrs/src/main/java/class489.java +++ b/osrs/src/main/java/class489.java @@ -1,19 +1,75 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("su") -public interface class489 extends Iterable { +@ObfuscatedName("sf") +public class class489 extends class491 { + @ObfuscatedName("wn") + static long field3990; + @ObfuscatedName("at") + int field3995; + @ObfuscatedName("ah") + int field3992; + @ObfuscatedName("ar") + int field3994; + @ObfuscatedName("ao") + int field3993; + @ObfuscatedName("ab") + int field3991; @ObfuscatedName("au") + int field3996; + + public class489(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) { + super(var7, var8); + this.field3995 = 0; + this.field3992 = 0; + this.field3994 = 0; + this.field3993 = 0; + this.field3991 = 0; + this.field3996 = 0; + this.field3995 = var1; + this.field3992 = var2; + this.field3994 = var3; + this.field3993 = var4; + this.field3991 = var5; + this.field3996 = var6; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "2" + ) + public int vmethod2386() { + double var1 = this.method2390(); + return (int)Math.round((double)(this.field3993 - this.field3995) * var1 + (double)this.field3995); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "124" + ) + public int vmethod2387() { + double var1 = this.method2390(); + return (int)Math.round((double)this.field3992 + (double)(this.field3991 - this.field3992) * var1); + } + + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(IS)I", - garbageValue = "31516" + descriptor = "(I)I", + garbageValue = "1254922863" ) - int vmethod8144(int var1); + public int vmethod2320() { + double var1 = this.method2390(); + return (int)Math.round((double)this.field3994 + (double)(this.field3996 - this.field3994) * var1); + } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILjava/lang/Object;I)V", - garbageValue = "1797615972" + descriptor = "(CI)Z", + garbageValue = "-1028387364" ) - void vmethod8143(int var1, Object var2); + public static final boolean method2381(char var0) { + return var0 == 160 || var0 == ' ' || var0 == '_' || var0 == '-'; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class490.java b/osrs/src/main/java/class490.java index cbce77685..b95a3635e 100644 --- a/osrs/src/main/java/class490.java +++ b/osrs/src/main/java/class490.java @@ -1,70 +1,28 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.Collections; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -@ObfuscatedName("sx") -public class class490 implements class489 { - @ObfuscatedName("au") - Map field4064; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Luu;" - ) - final class522 field4065; - - @ObfuscatedSignature( - descriptor = "(Luu;)V" - ) - public class490(class522 var1) { - this.field4065 = var1; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IS)I", - garbageValue = "31516" - ) - @Export("vmethod8144") - public int vmethod8144(int var1) { - if (this.field4064 != null) { - class523 var2 = (class523)this.field4064.get(var1); - if (var2 != null) { - return (Integer)var2.field4215; - } - } - - return (Integer)this.field4065.vmethod8697(var1); +@ObfuscatedName("sm") +public class class490 extends class492 { + @ObfuscatedName("at") + int field3998; + @ObfuscatedName("ah") + int field3997; + + public class490(int var1, int var2, int var3, int var4) { + super(var3, var4); + this.field3998 = 0; + this.field3997 = 0; + this.field3998 = var1; + this.field3997 = var2; } - @ObfuscatedName("ae") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILjava/lang/Object;I)V", - garbageValue = "1797615972" + descriptor = "(I)I", + garbageValue = "-287739597" ) - @Export("vmethod8143") - public void vmethod8143(int var1, Object var2) { - if (this.field4064 == null) { - this.field4064 = new HashMap(); - this.field4064.put(var1, new class523(var1, var2)); - } else { - class523 var3 = (class523)this.field4064.get(var1); - if (var3 == null) { - this.field4064.put(var1, new class523(var1, var2)); - } else { - var3.field4215 = var2; - } - } - - } - - @Export("iterator") - @ObfuscatedName("iterator") - public Iterator iterator() { - return this.field4064 == null ? Collections.emptyList().iterator() : this.field4064.values().iterator(); + public int method2385() { + double var1 = this.method2390(); + return (int)Math.round(var1 * (double)(this.field3997 - this.field3998) + (double)this.field3998); } } \ No newline at end of file diff --git a/osrs/src/main/java/class491.java b/osrs/src/main/java/class491.java new file mode 100644 index 000000000..d569d9ad8 --- /dev/null +++ b/osrs/src/main/java/class491.java @@ -0,0 +1,30 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("sq") +public abstract class class491 extends class492 { + class491(int var1, int var2) { + super(var1, var2); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "2" + ) + public abstract int vmethod2386(); + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "124" + ) + public abstract int vmethod2387(); + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(I)I", + garbageValue = "1254922863" + ) + public abstract int vmethod2320(); +} \ No newline at end of file diff --git a/osrs/src/main/java/class492.java b/osrs/src/main/java/class492.java new file mode 100644 index 000000000..1d485d7ec --- /dev/null +++ b/osrs/src/main/java/class492.java @@ -0,0 +1,47 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("so") +public abstract class class492 { + @ObfuscatedName("ac") + int field4000; + @ObfuscatedName("al") + int field4001; + @ObfuscatedName("az") + double field3999; + @ObfuscatedName("ap") + int field4002; + + class492(int var1, int var2) { + this.field4000 = 0; + this.field4001 = 0; + this.field3999 = 0.0D; + this.field4002 = 0; + this.field4000 = var1; + this.field4001 = 0; + this.field4002 = var2 >= 0 && var2 <= 27 ? var2 : 0; + this.field3999 = PlayerType.method1907(this.field4001, this.field4000, this.field4002); + } + + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-1511635495" + ) + public void method2389() { + if (this.field4001 < this.field4000) { + ++this.field4001; + this.field3999 = PlayerType.method1907(this.field4001, this.field4000, this.field4002); + } + + } + + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "(B)D", + garbageValue = "-60" + ) + double method2390() { + return this.field3999; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class493.java b/osrs/src/main/java/class493.java deleted file mode 100644 index 23ef9bff5..000000000 --- a/osrs/src/main/java/class493.java +++ /dev/null @@ -1,94 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.io.*; - -@ObfuscatedName("sg") -public class class493 { - @ObfuscatedName("ao") - static final char[] field4077; - @ObfuscatedName("at") - static final char[] field4078; - - static { - field4077 = new char[]{' ', '\u00a0', '_', '-', '\u00e0', '\u00e1', '\u00e2', '\u00e4', '\u00e3', '\u00c0', '\u00c1', '\u00c2', '\u00c4', '\u00c3', '\u00e8', '\u00e9', '\u00ea', '\u00eb', '\u00c8', '\u00c9', '\u00ca', '\u00cb', '\u00ed', '\u00ee', '\u00ef', '\u00cd', '\u00ce', '\u00cf', '\u00f2', '\u00f3', '\u00f4', '\u00f6', '\u00f5', '\u00d2', '\u00d3', '\u00d4', '\u00d6', '\u00d5', '\u00f9', '\u00fa', '\u00fb', '\u00fc', '\u00d9', '\u00da', '\u00db', '\u00dc', '\u00e7', '\u00c7', '\u00ff', '\u0178', '\u00f1', '\u00d1', '\u00df'}; - field4078 = new char[]{'[', ']', '#'}; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Throwable;I)Ljava/lang/String;", - garbageValue = "1089015752" - ) - static String method2465(Throwable var0) throws IOException { - String var1; - if (var0 instanceof RunException) { - RunException var2 = (RunException)var0; - var1 = var2.field4291 + " | "; - var0 = var2.parent; - } else { - var1 = ""; - } - - StringWriter var12 = new StringWriter(); - PrintWriter var3 = new PrintWriter(var12); - var0.printStackTrace(var3); - var3.close(); - String var4 = var12.toString(); - BufferedReader var5 = new BufferedReader(new StringReader(var4)); - String var6 = var5.readLine(); - - while (true) { - while (true) { - String var7 = var5.readLine(); - if (var7 == null) { - var1 = var1 + "| " + var6; - return var1; - } - - int var8 = var7.indexOf(40); - int var9 = var7.indexOf(41, var8 + 1); - if (var8 >= 0 && var9 >= 0) { - String var10 = var7.substring(var8 + 1, var9); - int var11 = var10.indexOf(".java:"); - if (var11 >= 0) { - var10 = var10.substring(0, var11) + var10.substring(var11 + 5); - var1 = var1 + var10 + ' '; - continue; - } - - var7 = var7.substring(0, var8); - } - - var7 = var7.trim(); - var7 = var7.substring(var7.lastIndexOf(32) + 1); - var7 = var7.substring(var7.lastIndexOf(9) + 1); - var1 = var1 + var7 + ' '; - } - } - } - - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "(B)Luk;", - garbageValue = "-94" - ) - public static IndexedSprite method2466() { - IndexedSprite var0 = new IndexedSprite(); - var0.width = class529.SpriteBuffer_spriteWidth; - var0.height = class420.SpriteBuffer_spriteHeight; - var0.xOffset = class529.SpriteBuffer_xOffsets[0]; - var0.yOffset = class152.SpriteBuffer_yOffsets[0]; - var0.subWidth = HealthBarUpdate.SpriteBuffer_spriteWidths[0]; - var0.subHeight = SpriteMask.SpriteBuffer_spriteHeights[0]; - var0.palette = DbTableType.SpriteBuffer_spritePalette; - var0.pixels = Coord.SpriteBuffer_pixels[0]; - class529.SpriteBuffer_xOffsets = null; - class152.SpriteBuffer_yOffsets = null; - HealthBarUpdate.SpriteBuffer_spriteWidths = null; - SpriteMask.SpriteBuffer_spriteHeights = null; - DbTableType.SpriteBuffer_spritePalette = null; - Coord.SpriteBuffer_pixels = null; - return var0; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class496.java b/osrs/src/main/java/class496.java deleted file mode 100644 index a228949db..000000000 --- a/osrs/src/main/java/class496.java +++ /dev/null @@ -1,45 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.Iterator; - -@ObfuscatedName("tn") -class class496 implements Iterator { - @ObfuscatedName("au") - int field4093; - // $FF: synthetic field - @ObfuscatedSignature( - descriptor = "Lth;" - ) - @Export("this$0") - @ObfuscatedName("this$0") - final class497 this$0; - - @ObfuscatedSignature( - descriptor = "(Lth;)V" - ) - class496(class497 var1) { - this.this$0 = var1; - } - - @Export("hasNext") - @ObfuscatedName("hasNext") - public boolean hasNext() { - return this.field4093 < this.this$0.method2322(); - } - - @Export("next") - @ObfuscatedName("next") - public Object next() { - int var1 = ++this.field4093 - 1; - class456 var2 = (class456)this.this$0.field4095.get((long)var1); - return var2 != null ? var2 : this.this$0.method2482(var1); - } - - @Export("remove") - @ObfuscatedName("remove") - public void remove() { - throw new UnsupportedOperationException(); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class497.java b/osrs/src/main/java/class497.java index f53092acb..2bd164677 100644 --- a/osrs/src/main/java/class497.java +++ b/osrs/src/main/java/class497.java @@ -1,81 +1,63 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -import java.util.Iterator; - -@ObfuscatedName("th") -public class class497 extends class455 implements class283 { - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lnu;" - ) - final AbstractArchive field4096; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lkg;" - ) - final DemotingHashTable field4095; +@ObfuscatedName("ti") +public class class497 { @ObfuscatedName("at") - final int field4094; + public final Object field4074; + @ObfuscatedName("ah") + public final Object field4073; + + public class497(Object var1, Object var2) { + this.field4074 = var1; + this.field4073 = var2; + } - @ObfuscatedSignature( - descriptor = "(Lns;ILon;Lnu;)V" - ) - public class497(StudioGame var1, int var2, Language var3, AbstractArchive var4) { - super(var1, var3, var4 != null ? var4.getGroupFileCount(var2) : 0); - this.field4095 = new DemotingHashTable(64); - this.field4096 = var4; - this.field4094 = var2; + @Export("toString") + @ObfuscatedName("toString") + public String toString() { + return this.field4074 + ", " + this.field4073; } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IB)Lrv;", - garbageValue = "-32" - ) - @Export("vmethod8207") - protected class457 vmethod8207(int var1) { - synchronized(this.field4095) { - class456 var2 = (class456)this.field4095.get((long)var1); - if (var2 == null) { - var2 = this.method2482(var1); - this.field4095.method1593(var2, (long)var1); + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + if (var1 != null && var1 instanceof class497) { + class497 var2 = (class497)var1; + if (this.field4074 == null) { + if (var2.field4074 != null) { + return false; + } + } else if (!this.field4074.equals(var2.field4074)) { + return false; + } + + if (this.field4073 == null) { + if (var2.field4073 != null) { + return false; + } + } else if (!this.field4073.equals(var2.field4073)) { + return false; } - return var2; + return true; + } else { + return false; } } - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(IB)Lrg;", - garbageValue = "-117" - ) - class456 method2482(int var1) { - byte[] var2 = this.field4096.takeFile(this.field4094, var1); - class456 var3 = new class456(var1); - if (var2 != null) { - var3.method2327(new Buffer(var2)); + @Export("hashCode") + @ObfuscatedName("hashCode") + public int hashCode() { + int var1 = 0; + if (this.field4074 != null) { + var1 += this.field4074.hashCode(); } - return var3; - } - - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "322447059" - ) - public void method2483() { - synchronized(this.field4095) { - this.field4095.clear(); + if (this.field4073 != null) { + var1 += 31 * this.field4073.hashCode(); } - } - @Export("iterator") - @ObfuscatedName("iterator") - public Iterator iterator() { - return new class496(this); + return var1; } } \ No newline at end of file diff --git a/osrs/src/main/java/class498.java b/osrs/src/main/java/class498.java deleted file mode 100644 index a6ed9d1bf..000000000 --- a/osrs/src/main/java/class498.java +++ /dev/null @@ -1,21 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("tj") -public interface class498 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Ltm;I)V", - garbageValue = "465506048" - ) - void vmethod8274(Object var1, Buffer var2); - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ltm;I)Ljava/lang/Object;", - garbageValue = "-295239457" - ) - @Export("vmethod8273") - Object vmethod8273(Buffer var1); -} \ No newline at end of file diff --git a/osrs/src/main/java/class499.java b/osrs/src/main/java/class499.java deleted file mode 100644 index cc3222894..000000000 --- a/osrs/src/main/java/class499.java +++ /dev/null @@ -1,98 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("tl") -final class class499 implements class498 { - @ObfuscatedName("fz") - @ObfuscatedSignature( - descriptor = "Lnk;" - ) - @Export("archive9") - static Archive archive9; - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Ltm;I)V", - garbageValue = "465506048" - ) - @Export("vmethod8274") - public void vmethod8274(Object var1, Buffer var2) { - this.method2486((Integer)var1, var2); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ltm;I)Ljava/lang/Object;", - garbageValue = "-295239457" - ) - @Export("vmethod8273") - public Object vmethod8273(Buffer var1) { - return var1.readInt(); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Integer;Ltm;S)V", - garbageValue = "128" - ) - void method2486(Integer var1, Buffer var2) { - var2.writeInt(var1); - } - - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1972049883" - ) - static int method2489(int var0, Script var1, boolean var2) { - Widget var3; - if (var0 != 1927 && var0 != 2927) { - int var4; - if (var0 == 1928) { - var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var4 >= 1 && var4 <= 10) { - class102 var5 = new class102(var4, var3.id, var3.childIndex, var3.itemId); - Interpreter.field715.add(var5); - return 1; - } else { - throw new RuntimeException(); - } - } else if (var0 == 2928) { - SoundCache.Interpreter_intStackSize -= 3; - int var7 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var4 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - int var8 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - if (var8 >= 1 && var8 <= 10) { - class102 var6 = new class102(var8, var7, var4, class92.getWidget(var7).itemId); - Interpreter.field715.add(var6); - return 1; - } else { - throw new RuntimeException(); - } - } else { - return 2; - } - } else if (Interpreter.field708 >= 10) { - throw new RuntimeException(); - } else { - if (var0 >= 2000) { - var3 = class92.getWidget(Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - } else { - var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - } - - if (var3.onResize == null) { - return 0; - } else { - ScriptEvent var9 = new ScriptEvent(); - var9.widget = var3; - var9.args = var3.onResize; - var9.field864 = Interpreter.field708 + 1; - Client.scriptEvents.addFirst(var9); - return 1; - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class5.java b/osrs/src/main/java/class5.java index f75a95457..17af1d6d7 100644 --- a/osrs/src/main/java/class5.java +++ b/osrs/src/main/java/class5.java @@ -5,41 +5,41 @@ import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; -@ObfuscatedName("ai") +@ObfuscatedName("au") public class class5 implements class2 { - @ObfuscatedName("au") - final MessageDigest field4; + @ObfuscatedName("at") + final MessageDigest field5; @ObfuscatedSignature( - descriptor = "(Laa;)V" + descriptor = "(Lal;)V" ) class5(class8 var1) { - this.field4 = this.method10(); + this.field5 = this.method12(); } - @ObfuscatedName("au") - boolean method6(int var1, String var2, long var3) { - byte[] var5 = this.method9(var2, var3); - return method7(var5) >= var1; + @ObfuscatedName("at") + boolean method8(int var1, String var2, long var3) { + byte[] var5 = this.method11(var2, var3); + return method9(var5) >= var1; } - @ObfuscatedName("at") - byte[] method9(String var1, long var2) { + @ObfuscatedName("ao") + byte[] method11(String var1, long var2) { StringBuilder var4 = new StringBuilder(); var4.append(var1).append(Long.toHexString(var2)); - this.field4.reset(); + this.field5.reset(); try { - this.field4.update(var4.toString().getBytes("UTF-8")); + this.field5.update(var4.toString().getBytes("UTF-8")); } catch (UnsupportedEncodingException var6) { var6.printStackTrace(); } - return this.field4.digest(); + return this.field5.digest(); } - @ObfuscatedName("ac") - MessageDigest method10() { + @ObfuscatedName("ab") + MessageDigest method12() { try { return MessageDigest.getInstance("SHA-256"); } catch (NoSuchAlgorithmException var2) { @@ -48,14 +48,14 @@ MessageDigest method10() { } } - @ObfuscatedName("ae") - static int method7(byte[] var0) { + @ObfuscatedName("ah") + static int method9(byte[] var0) { int var1 = 0; byte[] var2 = var0; for (int var3 = 0; var3 < var2.length; ++var3) { byte var4 = var2[var3]; - int var5 = method8(var4); + int var5 = method10(var4); var1 += var5; if (var5 != 8) { break; @@ -65,8 +65,8 @@ static int method7(byte[] var0) { return var1; } - @ObfuscatedName("ao") - static int method8(byte var0) { + @ObfuscatedName("ar") + static int method10(byte var0) { int var1 = 0; if (var0 == 0) { var1 = 8; diff --git a/osrs/src/main/java/class501.java b/osrs/src/main/java/class501.java index 346c330f6..308b412ec 100644 --- a/osrs/src/main/java/class501.java +++ b/osrs/src/main/java/class501.java @@ -1,35 +1,19 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tg") -final class class501 implements class498 { - @ObfuscatedName("au") +@ObfuscatedName("ty") +public interface class501 extends Iterable { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Ltm;I)V", - garbageValue = "465506048" + descriptor = "(IB)I", + garbageValue = "-17" ) - @Export("vmethod8274") - public void vmethod8274(Object var1, Buffer var2) { - this.method2491((Long)var1, var2); - } + int vmethod8144(int var1); - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ltm;I)Ljava/lang/Object;", - garbageValue = "-295239457" + descriptor = "(ILjava/lang/Object;B)V", + garbageValue = "-122" ) - @Export("vmethod8273") - public Object vmethod8273(Buffer var1) { - return var1.readLong(); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Long;Ltm;B)V", - garbageValue = "-19" - ) - void method2491(Long var1, Buffer var2) { - var2.writeLong(var1); - } + void vmethod8143(int var1, Object var2); } \ No newline at end of file diff --git a/osrs/src/main/java/class502.java b/osrs/src/main/java/class502.java index f1f96a793..b07a1b568 100644 --- a/osrs/src/main/java/class502.java +++ b/osrs/src/main/java/class502.java @@ -2,100 +2,69 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tb") -public class class502 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Ltb;" - ) - public static final class502 field4101; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Ltb;" - ) - public static final class502 field4099; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Ltb;" - ) - public static final class502 field4100; - @ObfuscatedName("ke") - @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("headIconPrayerSprites") - static SpritePixels[] headIconPrayerSprites; - @ObfuscatedName("at") - public final int field4104; - @ObfuscatedName("ac") - public final int field4103; - @ObfuscatedName("ai") - public final Class field4105; - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Ltj;" - ) - public final class498 field4106; - - static { - field4101 = new class502(1, 0, Integer.class, new class499()); - field4099 = new class502(0, 1, Long.class, new class501()); - field4100 = new class502(2, 2, String.class, new class503()); - } +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +@ObfuscatedName("tq") +public class class502 implements class501 { + @ObfuscatedName("at") + Map field4089; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IILjava/lang/Class;Ltj;)V" + descriptor = "Lur;" ) - class502(int var1, int var2, Class var3, class498 var4) { - this.field4104 = var1; - this.field4103 = var2; - this.field4105 = var3; - this.field4106 = var4; - } + final class534 field4090; - @ObfuscatedName("ae") @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" + descriptor = "(Lur;)V" ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field4103; + public class502(class534 var1) { + this.field4090 = var1; } @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Ltm;S)Ljava/lang/Object;", - garbageValue = "5018" + descriptor = "(IB)I", + garbageValue = "-17" ) - public Object method2497(Buffer var1) { - return this.field4106.vmethod8273(var1); - } + @Export("vmethod8144") + public int vmethod8144(int var1) { + if (this.field4089 != null) { + class535 var2 = (class535)this.field4089.get(var1); + if (var2 != null) { + return (Integer)var2.field4243; + } + } - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[Ltb;", - garbageValue = "44" - ) - public static class502[] method2494() { - return new class502[]{field4101, field4100, field4099}; + return (Integer)this.field4090.vmethod8697(var1); } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(Ljava/lang/Class;B)Ltb;", - garbageValue = "82" + descriptor = "(ILjava/lang/Object;B)V", + garbageValue = "-122" ) - public static class502 method2495(Class var0) { - class502[] var1 = method2494(); - - for (int var2 = 0; var2 < var1.length; ++var2) { - class502 var3 = var1[var2]; - if (var3.field4105 == var0) { - return var3; + @Export("vmethod8143") + public void vmethod8143(int var1, Object var2) { + if (this.field4089 == null) { + this.field4089 = new HashMap(); + this.field4089.put(var1, new class535(var1, var2)); + } else { + class535 var3 = (class535)this.field4089.get(var1); + if (var3 == null) { + this.field4089.put(var1, new class535(var1, var2)); + } else { + var3.field4243 = var2; } } - return null; + } + + @Export("iterator") + @ObfuscatedName("iterator") + public Iterator iterator() { + return this.field4089 == null ? Collections.emptyList().iterator() : this.field4089.values().iterator(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class503.java b/osrs/src/main/java/class503.java index 110f6f3b9..1421ca6f6 100644 --- a/osrs/src/main/java/class503.java +++ b/osrs/src/main/java/class503.java @@ -1,47 +1,7 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tz") -final class class503 implements class498 { - @ObfuscatedName("cy") - static int field4107; - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;Ltm;I)V", - garbageValue = "465506048" - ) - @Export("vmethod8274") - public void vmethod8274(Object var1, Buffer var2) { - this.method2498((String)var1, var2); - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ltm;I)Ljava/lang/Object;", - garbageValue = "-295239457" - ) - @Export("vmethod8273") - public Object vmethod8273(Buffer var1) { - return var1.readStringCp1252NullTerminated(); - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;Ltm;I)V", - garbageValue = "-1097671055" - ) - void method2498(String var1, Buffer var2) { - var2.writeStringCp1252NullTerminated(var1); - } - - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2008641376" - ) - static final void method2501() { - UserComparator8.method673("You can't add yourself to your own ignore list"); - } +@ObfuscatedName("ts") +public class class503 { + @ObfuscatedName("ax") + public static short[] field4091; } \ No newline at end of file diff --git a/osrs/src/main/java/class504.java b/osrs/src/main/java/class504.java deleted file mode 100644 index a589fabc3..000000000 --- a/osrs/src/main/java/class504.java +++ /dev/null @@ -1,20 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("ti") -public final class class504 { - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "(IZII)V", - garbageValue = "-1433824975" - ) - public static final void method2502(int var0, boolean var1, int var2) { - if (var0 >= 8000 && var0 <= 48000) { - PcmPlayer.field181 = var0; - PcmPlayer.PcmPlayer_stereo = var1; - PcmPlayer.field182 = var2; - } else { - throw new IllegalArgumentException(); - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class505.java b/osrs/src/main/java/class505.java new file mode 100644 index 000000000..3f2ab6332 --- /dev/null +++ b/osrs/src/main/java/class505.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("tg") +public class class505 { + @ObfuscatedName("ar") + public static final char[] field4104; + @ObfuscatedName("ao") + public static final char[] field4103; + + static { + field4104 = new char[]{' ', '\u00a0', '_', '-', '\u00e0', '\u00e1', '\u00e2', '\u00e4', '\u00e3', '\u00c0', '\u00c1', '\u00c2', '\u00c4', '\u00c3', '\u00e8', '\u00e9', '\u00ea', '\u00eb', '\u00c8', '\u00c9', '\u00ca', '\u00cb', '\u00ed', '\u00ee', '\u00ef', '\u00cd', '\u00ce', '\u00cf', '\u00f2', '\u00f3', '\u00f4', '\u00f6', '\u00f5', '\u00d2', '\u00d3', '\u00d4', '\u00d6', '\u00d5', '\u00f9', '\u00fa', '\u00fb', '\u00fc', '\u00d9', '\u00da', '\u00db', '\u00dc', '\u00e7', '\u00c7', '\u00ff', '\u0178', '\u00f1', '\u00d1', '\u00df'}; + field4103 = new char[]{'[', ']', '#'}; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class506.java b/osrs/src/main/java/class506.java deleted file mode 100644 index 1caa990da..000000000 --- a/osrs/src/main/java/class506.java +++ /dev/null @@ -1,81 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -@ObfuscatedName("tx") -public class class506 extends DualNode { - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "[Ltb;" - ) - class502[] field4114; - @ObfuscatedName("ac") - List field4113; - - @ObfuscatedSignature( - descriptor = "(Lnu;I)V" - ) - public class506(AbstractArchive var1, int var2) { - byte[] var3 = var1.takeFile(var2, 0); - this.method2506(new Buffer(var3)); - } - - @ObfuscatedSignature( - descriptor = "(Lnu;II)V" - ) - public class506(AbstractArchive var1, int var2, int var3) { - byte[] var4 = var1.takeFile(var2, var3 + 1); - this.method2506(new Buffer(var4)); - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;I)V", - garbageValue = "1051210616" - ) - void method2506(Buffer var1) { - int var2 = var1.method2565(); - this.field4114 = new class502[var2]; - this.field4113 = new ArrayList(var2); - - for (int var3 = 0; var3 < var2; ++var3) { - this.field4114[var3] = (class502)KeyHandler.findEnumerated(class502.method2494(), var1.readUnsignedByte()); - int var4 = var1.method2565(); - HashMap var5 = new HashMap(var4); - - while (var4-- > 0) { - Object var6 = this.field4114[var3].method2497(var1); - int var7 = var1.method2565(); - ArrayList var8 = new ArrayList(); - - while (var7-- > 0) { - int var9 = var1.method2565(); - var8.add(var9); - } - - var5.put(var6, var8); - } - - this.field4113.add(var3, var5); - } - - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(Ljava/lang/Object;IB)Ljava/util/List;", - garbageValue = "113" - ) - public List method2507(Object var1, int var2) { - if (var2 < 0) { - var2 = 0; - } - - Map var3 = (Map)this.field4113.get(var2); - return (List)var3.get(var1); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class508.java b/osrs/src/main/java/class508.java index f285b456f..36ceb6c3b 100644 --- a/osrs/src/main/java/class508.java +++ b/osrs/src/main/java/class508.java @@ -1,14 +1,45 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tr") -public class class508 { - @ObfuscatedName("ao") - static final int field4120; +import java.util.Iterator; + +@ObfuscatedName("tx") +class class508 implements Iterator { @ObfuscatedName("at") - static final int field4121; + int field4119; + // $FF: synthetic field + @ObfuscatedSignature( + descriptor = "Ltl;" + ) + @Export("this$0") + @ObfuscatedName("this$0") + final class509 this$0; + + @ObfuscatedSignature( + descriptor = "(Ltl;)V" + ) + class508(class509 var1) { + this.this$0 = var1; + } + + @Export("hasNext") + @ObfuscatedName("hasNext") + public boolean hasNext() { + return this.field4119 < this.this$0.method2338(); + } + + @Export("next") + @ObfuscatedName("next") + public Object next() { + int var1 = ++this.field4119 - 1; + class468 var2 = (class468)this.this$0.field4121.get((long)var1); + return var2 != null ? var2 : this.this$0.method2492(var1); + } - static { - field4120 = (int)(Math.pow(2.0D, 4.0D) - 1.0D); - field4121 = (int)(Math.pow(2.0D, 8.0D) - 1.0D); + @Export("remove") + @ObfuscatedName("remove") + public void remove() { + throw new UnsupportedOperationException(); } } \ No newline at end of file diff --git a/osrs/src/main/java/class509.java b/osrs/src/main/java/class509.java new file mode 100644 index 000000000..55d3c5594 --- /dev/null +++ b/osrs/src/main/java/class509.java @@ -0,0 +1,81 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.util.Iterator; + +@ObfuscatedName("tl") +public class class509 extends class467 implements class294 { + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lol;" + ) + final AbstractArchive field4122; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lls;" + ) + final DemotingHashTable field4121; + @ObfuscatedName("ao") + final int field4120; + + @ObfuscatedSignature( + descriptor = "(Lnt;ILof;Lol;)V" + ) + public class509(StudioGame var1, int var2, Language var3, AbstractArchive var4) { + super(var1, var3, var4 != null ? var4.getGroupFileCount(var2) : 0); + this.field4121 = new DemotingHashTable(64); + this.field4122 = var4; + this.field4120 = var2; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IB)Lsj;", + garbageValue = "-61" + ) + @Export("vmethod8207") + protected class469 vmethod8207(int var1) { + synchronized(this.field4121) { + class468 var2 = (class468)this.field4121.get((long)var1); + if (var2 == null) { + var2 = this.method2492(var1); + this.field4121.method1611(var2, (long)var1); + } + + return var2; + } + } + + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "(IB)Lsg;", + garbageValue = "0" + ) + class468 method2492(int var1) { + byte[] var2 = this.field4122.takeFile(this.field4120, var1); + class468 var3 = new class468(var1); + if (var2 != null) { + var3.method2343(new Buffer(var2)); + } + + return var3; + } + + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "-985406624" + ) + public void method2493() { + synchronized(this.field4121) { + this.field4121.clear(); + } + } + + @Export("iterator") + @ObfuscatedName("iterator") + public Iterator iterator() { + return new class508(this); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class51.java b/osrs/src/main/java/class51.java index 6af387408..9becd7b06 100644 --- a/osrs/src/main/java/class51.java +++ b/osrs/src/main/java/class51.java @@ -2,12 +2,12 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("bg") +@ObfuscatedName("bq") public interface class51 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)Lbb;", - garbageValue = "74" + descriptor = "(S)Lby;", + garbageValue = "-2211" ) @Export("player") PcmPlayer player(); diff --git a/osrs/src/main/java/class510.java b/osrs/src/main/java/class510.java index 479f078fe..c52d41f70 100644 --- a/osrs/src/main/java/class510.java +++ b/osrs/src/main/java/class510.java @@ -2,213 +2,21 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ty") -public enum class510 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4129(1), - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4124(2), - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4127(4), +@ObfuscatedName("tc") +public interface class510 { @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4128(8), - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4135(16), - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4138(32), - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4151(64, true), - @ObfuscatedName("ap") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4143(128), - @ObfuscatedName("aa") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4122(256, true), - @ObfuscatedName("af") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4136(512), - @ObfuscatedName("ad") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4123(1024), - @ObfuscatedName("aq") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4144(2048), - @ObfuscatedName("al") - @ObfuscatedSignature( - descriptor = "Lty;" + descriptor = "(Ljava/lang/Object;Luj;B)V", + garbageValue = "-42" ) - field4140(4096), - @ObfuscatedName("an") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4142(8192), - @ObfuscatedName("ar") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4145(16384), - @ObfuscatedName("ab") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4134(32768), - @ObfuscatedName("ag") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4125(65536), - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4141(131072), - @ObfuscatedName("ax") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4149(262144), - @ObfuscatedName("ah") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4137(524288), - @ObfuscatedName("as") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4146(1048576), - @ObfuscatedName("ay") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4150(2097152), - @ObfuscatedName("aj") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4139(4194304), - @ObfuscatedName("av") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4147(8388608), - @ObfuscatedName("aw") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4148(16777216), - @ObfuscatedName("ak") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4126(33554432), - @ObfuscatedName("bh") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4153(67108864, true), - @ObfuscatedName("bj") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4130(134217728), - @ObfuscatedName("bk") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4154(268435456), - @ObfuscatedName("bv") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4132(536870912, true), - @ObfuscatedName("bt") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4131(1073741824, true), - @ObfuscatedName("bd") - @ObfuscatedSignature( - descriptor = "Lty;" - ) - field4152(Integer.MIN_VALUE); - - @ObfuscatedName("hu") - static String field4133; - @ObfuscatedName("by") - final int field4155; - - class510(int var3) { - this.field4155 = var3; - } - - @ObfuscatedSignature( - descriptor = "(IZ)V", - garbageValue = "1" - ) - class510(int var3, boolean var4) { - this.field4155 = var3; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field4155; - } + @Export("vmethod8274") + void vmethod8274(Object var1, Buffer var2); - @ObfuscatedName("az") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "3331" + descriptor = "(Luj;B)Ljava/lang/Object;", + garbageValue = "-69" ) - public static void method2513() { - try { - JagexCache.JagexCache_dat2File.close(); - - for (int var0 = 0; var0 < JagexCache.field1461; ++var0) { - WallDecoration.JagexCache_idxFiles[var0].close(); - } - - JagexCache.JagexCache_idx255File.close(); - JagexCache.JagexCache_randomDat.close(); - } catch (Exception var2) { - } - - } + @Export("vmethod8273") + Object vmethod8273(Buffer var1); } \ No newline at end of file diff --git a/osrs/src/main/java/class511.java b/osrs/src/main/java/class511.java new file mode 100644 index 000000000..ec60f891f --- /dev/null +++ b/osrs/src/main/java/class511.java @@ -0,0 +1,185 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("tv") +final class class511 implements class510 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;Luj;B)V", + garbageValue = "-42" + ) + @Export("vmethod8274") + public void vmethod8274(Object var1, Buffer var2) { + this.method2496((Integer)var1, var2); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Luj;B)Ljava/lang/Object;", + garbageValue = "-69" + ) + @Export("vmethod8273") + public Object vmethod8273(Buffer var1) { + return var1.readInt(); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Integer;Luj;I)V", + garbageValue = "-1691146966" + ) + void method2496(Integer var1, Buffer var2) { + var2.writeInt(var1); + } + + @ObfuscatedName("jj") + @ObfuscatedSignature( + descriptor = "(IIIIIB)V", + garbageValue = "-83" + ) + @Export("drawObject") + static final void drawObject(int var0, int var1, int var2, int var3, int var4) { + long var5 = class36.scene.getBoundaryObjectTag(var0, var1, var2); + int var7; + int var8; + int var9; + int var10; + int var12; + int var13; + if (0L != var5) { + var7 = class36.scene.getObjectFlags(var0, var1, var2, var5); + var8 = var7 >> 6 & 3; + var9 = var7 & 31; + var10 = var3; + if (class207.method1059(var5)) { + var10 = var4; + } + + int[] var11 = class102.sceneMinimapSprite.pixels; + var12 = var1 * 4 + (103 - var2) * 2048 + 24624; + var13 = class232.Entity_unpackID(var5); + ObjectComposition var14 = WorldMapSection2.getObjectDefinition(var13); + if (var14.mapSceneId != -1) { + IndexedSprite var15 = VarpDefinition.mapSceneSprites[var14.mapSceneId]; + if (var15 != null) { + int var16 = (var14.sizeX * 4 - var15.subWidth) / 2; + int var17 = (var14.sizeY * 4 - var15.subHeight) / 2; + var15.drawAt(var16 + var1 * 4 + 48, (104 - var2 - var14.sizeY) * 4 + var17 + 48); + } + } else { + if (var9 == 0 || var9 == 2) { + if (var8 == 0) { + var11[var12] = var10; + var11[var12 + 512] = var10; + var11[var12 + 1024] = var10; + var11[var12 + 1536] = var10; + } else if (var8 == 1) { + var11[var12] = var10; + var11[var12 + 1] = var10; + var11[var12 + 2] = var10; + var11[var12 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 3] = var10; + var11[var12 + 512 + 3] = var10; + var11[var12 + 1024 + 3] = var10; + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 3) { + var11[var12 + 1536] = var10; + var11[var12 + 1536 + 1] = var10; + var11[var12 + 1536 + 2] = var10; + var11[var12 + 1536 + 3] = var10; + } + } + + if (var9 == 3) { + if (var8 == 0) { + var11[var12] = var10; + } else if (var8 == 1) { + var11[var12 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 3) { + var11[var12 + 1536] = var10; + } + } + + if (var9 == 2) { + if (var8 == 3) { + var11[var12] = var10; + var11[var12 + 512] = var10; + var11[var12 + 1024] = var10; + var11[var12 + 1536] = var10; + } else if (var8 == 0) { + var11[var12] = var10; + var11[var12 + 1] = var10; + var11[var12 + 2] = var10; + var11[var12 + 3] = var10; + } else if (var8 == 1) { + var11[var12 + 3] = var10; + var11[var12 + 512 + 3] = var10; + var11[var12 + 1024 + 3] = var10; + var11[var12 + 1536 + 3] = var10; + } else if (var8 == 2) { + var11[var12 + 1536] = var10; + var11[var12 + 1536 + 1] = var10; + var11[var12 + 1536 + 2] = var10; + var11[var12 + 1536 + 3] = var10; + } + } + } + } + + var5 = class36.scene.getGameObjectTag(var0, var1, var2); + if (var5 != 0L) { + var7 = class36.scene.getObjectFlags(var0, var1, var2, var5); + var8 = var7 >> 6 & 3; + var9 = var7 & 31; + var10 = class232.Entity_unpackID(var5); + ObjectComposition var24 = WorldMapSection2.getObjectDefinition(var10); + int var19; + if (var24.mapSceneId != -1) { + IndexedSprite var18 = VarpDefinition.mapSceneSprites[var24.mapSceneId]; + if (var18 != null) { + var13 = (var24.sizeX * 4 - var18.subWidth) / 2; + var19 = (var24.sizeY * 4 - var18.subHeight) / 2; + var18.drawAt(var13 + var1 * 4 + 48, var19 + (104 - var2 - var24.sizeY) * 4 + 48); + } + } else if (var9 == 9) { + var12 = 15658734; + if (class207.method1059(var5)) { + var12 = 15597568; + } + + int[] var20 = class102.sceneMinimapSprite.pixels; + var19 = var1 * 4 + (103 - var2) * 2048 + 24624; + if (var8 != 0 && var8 != 2) { + var20[var19] = var12; + var20[var19 + 1 + 512] = var12; + var20[var19 + 1024 + 2] = var12; + var20[var19 + 1536 + 3] = var12; + } else { + var20[var19 + 1536] = var12; + var20[var19 + 1 + 1024] = var12; + var20[var19 + 512 + 2] = var12; + var20[var19 + 3] = var12; + } + } + } + + var5 = class36.scene.getFloorDecorationTag(var0, var1, var2); + if (var5 != 0L) { + var7 = class232.Entity_unpackID(var5); + ObjectComposition var21 = WorldMapSection2.getObjectDefinition(var7); + if (var21.mapSceneId != -1) { + IndexedSprite var22 = VarpDefinition.mapSceneSprites[var21.mapSceneId]; + if (var22 != null) { + var10 = (var21.sizeX * 4 - var22.subWidth) / 2; + int var23 = (var21.sizeY * 4 - var22.subHeight) / 2; + var22.drawAt(var10 + var1 * 4 + 48, (104 - var2 - var21.sizeY) * 4 + var23 + 48); + } + } + } + + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class500.java b/osrs/src/main/java/class512.java similarity index 61% rename from osrs/src/main/java/class500.java rename to osrs/src/main/java/class512.java index 1bf5ca0aa..a775356de 100644 --- a/osrs/src/main/java/class500.java +++ b/osrs/src/main/java/class512.java @@ -1,24 +1,11 @@ import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tq") -public class class500 { - @ObfuscatedName("ae") - static final int[] field4098; +@ObfuscatedName("tm") +public class class512 { + @ObfuscatedName("ah") + static final int[] field4123; static { - field4098 = new int[]{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, -1, 1, -1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 3, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; - } - - @ObfuscatedName("jy") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "108" - ) - static void method2490() { - for (class211 var0 = (class211)Client.field628.last(); var0 != null; var0 = (class211)Client.field628.previous()) { - var0.remove(); - } - + field4123 = new int[]{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, -1, 1, -1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 3, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; } } \ No newline at end of file diff --git a/osrs/src/main/java/class513.java b/osrs/src/main/java/class513.java new file mode 100644 index 000000000..41023a441 --- /dev/null +++ b/osrs/src/main/java/class513.java @@ -0,0 +1,35 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("td") +final class class513 implements class510 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Object;Luj;B)V", + garbageValue = "-42" + ) + @Export("vmethod8274") + public void vmethod8274(Object var1, Buffer var2) { + this.method2500((Long)var1, var2); + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(Luj;B)Ljava/lang/Object;", + garbageValue = "-69" + ) + @Export("vmethod8273") + public Object vmethod8273(Buffer var1) { + return var1.readLong(); + } + + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Long;Luj;B)V", + garbageValue = "79" + ) + void method2500(Long var1, Buffer var2) { + var2.writeLong(var1); + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class514.java b/osrs/src/main/java/class514.java new file mode 100644 index 000000000..f6be06004 --- /dev/null +++ b/osrs/src/main/java/class514.java @@ -0,0 +1,166 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("tu") +public class class514 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Ltu;" + ) + public static final class514 field4126; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Ltu;" + ) + public static final class514 field4124; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Ltu;" + ) + public static final class514 field4125; + @ObfuscatedName("ft") + @ObfuscatedSignature( + descriptor = "Loh;" + ) + @Export("archive6") + static Archive archive6; + @ObfuscatedName("ao") + public final int field4129; + @ObfuscatedName("ab") + public final int field4128; + @ObfuscatedName("au") + public final Class field4130; + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Ltc;" + ) + public final class510 field4131; + + static { + field4126 = new class514(0, 0, Integer.class, new class511()); + field4124 = new class514(1, 1, Long.class, new class513()); + field4125 = new class514(2, 2, String.class, new class515()); + } + + @ObfuscatedSignature( + descriptor = "(IILjava/lang/Class;Ltc;)V" + ) + class514(int var1, int var2, Class var3, class510 var4) { + this.field4129 = var1; + this.field4128 = var2; + this.field4130 = var3; + this.field4131 = var4; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field4128; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "(Luj;I)Ljava/lang/Object;", + garbageValue = "-2037622624" + ) + public Object method2506(Buffer var1) { + return this.field4131.vmethod8273(var1); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[Ltu;", + garbageValue = "-2123619619" + ) + public static class514[] method2503() { + return new class514[]{field4126, field4124, field4125}; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Class;B)Ltu;", + garbageValue = "5" + ) + public static class514 method2504(Class var0) { + class514[] var1 = method2503(); + + for (int var2 = 0; var2 < var1.length; ++var2) { + class514 var3 = var1[var2]; + if (var3.field4130 == var0) { + return var3; + } + } + + return null; + } + + @ObfuscatedName("ju") + @ObfuscatedSignature( + descriptor = "(IIIS)V", + garbageValue = "-5207" + ) + @Export("worldToScreen") + static final void worldToScreen(int var0, int var1, int var2) { + if (var0 >= 128 && var1 >= 128 && var0 <= 13056 && var1 <= 13056) { + int var3 = WorldMapDecorationType.getTileHeight(var0, var1, ItemLayer.Client_plane) - var2; + var0 -= ViewportMouse.cameraX; + var3 -= SecureRandomFuture.cameraY; + var1 -= class36.cameraZ; + int var4 = Rasterizer3D.Rasterizer3D_sine[Varcs.cameraPitch]; + int var5 = Rasterizer3D.Rasterizer3D_cosine[Varcs.cameraPitch]; + int var6 = Rasterizer3D.Rasterizer3D_sine[class192.cameraYaw]; + int var7 = Rasterizer3D.Rasterizer3D_cosine[class192.cameraYaw]; + int var8 = var6 * var1 + var0 * var7 >> 16; + var1 = var7 * var1 - var0 * var6 >> 16; + var0 = var8; + var8 = var3 * var5 - var4 * var1 >> 16; + var1 = var5 * var1 + var4 * var3 >> 16; + if (var1 >= 50) { + Client.viewportTempX = var0 * Client.viewportZoom / var1 + Client.viewportWidth / 2; + Client.viewportTempY = var8 * Client.viewportZoom / var1 + Client.viewportHeight / 2; + } else { + Client.viewportTempX = -1; + Client.viewportTempY = -1; + } + + } else { + Client.viewportTempX = -1; + Client.viewportTempY = -1; + } + } + + @ObfuscatedName("ky") + @ObfuscatedSignature( + descriptor = "(IB)Z", + garbageValue = "38" + ) + static final boolean method2508(int var0) { + if (var0 < 0) { + return false; + } else { + int var1 = Client.menuOpcodes[var0]; + if (var1 >= 2000) { + var1 -= 2000; + } + + return var1 == 1007; + } + } + + @ObfuscatedName("mv") + @ObfuscatedSignature( + descriptor = "(III)V", + garbageValue = "-1571518188" + ) + @Export("runIntfCloseListener") + static final void runIntfCloseListener(int var0, int var1) { + if (HealthBarDefinition.widgetDefinition.loadInterface(var0)) { + UserComparator5.runComponentCloseListeners(HealthBarDefinition.widgetDefinition.Widget_interfaceComponents[var0], var1); + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class515.java b/osrs/src/main/java/class515.java index 9495a7e46..839908864 100644 --- a/osrs/src/main/java/class515.java +++ b/osrs/src/main/java/class515.java @@ -1,68 +1,39 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("tw") -public class class515 { - @ObfuscatedName("au") - int[] field4163; - @ObfuscatedName("ae") - short[] field4164; +@ObfuscatedName("ta") +final class class515 implements class510 { + @ObfuscatedName("ox") + @Export("menuHeight") + static int menuHeight; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(Lhw;)V" - ) - public class515(NPCComposition var1) { - this.field4163 = new int[8]; - this.field4164 = new short[8]; - int var2 = 0; - if (var1.method992()) { - var2 = var1.method993().length; - System.arraycopy(var1.method993(), 0, this.field4163, 0, var2); - System.arraycopy(var1.method995(), 0, this.field4164, 0, var2); - } - - for (int var3 = var2; var3 < 8; ++var3) { - this.field4163[var3] = -1; - this.field4164[var3] = -1; - } - - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(B)[I", - garbageValue = "-122" - ) - public int[] method2602() { - return this.field4163; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)[S", - garbageValue = "80" + descriptor = "(Ljava/lang/Object;Luj;B)V", + garbageValue = "-42" ) - public short[] method2603() { - return this.field4164; + @Export("vmethod8274") + public void vmethod8274(Object var1, Buffer var2) { + this.method2510((String)var1, var2); } - @ObfuscatedName("ao") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(IISI)V", - garbageValue = "-1005641077" + descriptor = "(Luj;B)Ljava/lang/Object;", + garbageValue = "-69" ) - public void method2604(int var1, int var2, short var3) { - this.field4163[var1] = var2; - this.field4164[var1] = var3; + @Export("vmethod8273") + public Object vmethod8273(Buffer var1) { + return var1.readStringCp1252NullTerminated(); } - @ObfuscatedName("at") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "([I[SB)V", - garbageValue = "1" + descriptor = "(Ljava/lang/String;Luj;I)V", + garbageValue = "919376125" ) - public void method2605(int[] var1, short[] var2) { - this.field4163 = var1; - this.field4164 = var2; + void method2510(String var1, Buffer var2) { + var2.writeStringCp1252NullTerminated(var1); } } \ No newline at end of file diff --git a/osrs/src/main/java/class516.java b/osrs/src/main/java/class516.java new file mode 100644 index 000000000..8fecef3af --- /dev/null +++ b/osrs/src/main/java/class516.java @@ -0,0 +1,43 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("tj") +public final class class516 { + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "(S)Z", + garbageValue = "6525" + ) + public static boolean method2513() { + boolean var0 = false; + boolean var1 = false; + if (!class316.field2798.isEmpty()) { + SongTask var2 = (SongTask)class316.field2798.get(0); + if (var2 == null) { + class316.field2798.remove(0); + } else if (var2.vmethod2142()) { + if (var2.method2156()) { + System.out.println("Error in midimanager.service: " + var2.method2158()); + var0 = true; + } else { + if (var2.method2159() != null) { + class316.field2798.add(1, var2.method2159()); + } + + var1 = var2.method2157(); + } + + class316.field2798.remove(0); + } else { + var1 = var2.method2157(); + } + } + + if (var0) { + class316.field2798.clear(); + SecureRandomCallable.method457(); + } + + return var1; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class518.java b/osrs/src/main/java/class518.java deleted file mode 100644 index 20153b3c7..000000000 --- a/osrs/src/main/java/class518.java +++ /dev/null @@ -1,11 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("tf") -public interface class518 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(Ltm;B)V" - ) - void method2614(Buffer var1); -} \ No newline at end of file diff --git a/osrs/src/main/java/class519.java b/osrs/src/main/java/class519.java deleted file mode 100644 index 4bf40d972..000000000 --- a/osrs/src/main/java/class519.java +++ /dev/null @@ -1,74 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("tv") -public class class519 implements class371 { - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - public static final class519 field4205; - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - public static final class519 field4204; - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - static final class519 field4208; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - static final class519 field4209; - @ObfuscatedName("ac") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - static final class519 field4206; - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "Ltv;" - ) - static final class519 field4207; - @ObfuscatedName("az") - final int field4211; - @ObfuscatedName("ap") - final int field4210; - - static { - field4205 = new class519(1, 0); - field4204 = new class519(5, 2); - field4208 = new class519(2, 5); - field4209 = new class519(0, 6); - field4206 = new class519(4, 7); - field4207 = new class519(3, 8); - } - - class519(int var1, int var2) { - this.field4211 = var1; - this.field4210 = var2; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-664760154" - ) - public boolean method2616() { - return this == field4204; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(B)I", - garbageValue = "41" - ) - @Export("rsOrdinal") - public int rsOrdinal() { - return this.field4210; - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class520.java b/osrs/src/main/java/class520.java new file mode 100644 index 000000000..ae79a6d1d --- /dev/null +++ b/osrs/src/main/java/class520.java @@ -0,0 +1,107 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +import java.io.*; + +@ObfuscatedName("uf") +public class class520 { + @ObfuscatedName("ar") + static final int field4148; + @ObfuscatedName("ao") + static final int field4147; + @ObfuscatedName("aa") + @Export("SpriteBuffer_spriteHeights") + public static int[] SpriteBuffer_spriteHeights; + + static { + field4148 = (int)(Math.pow(2.0D, 4.0D) - 1.0D); + field4147 = (int)(Math.pow(2.0D, 8.0D) - 1.0D); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(B)[Lly;", + garbageValue = "-51" + ) + public static ZoneOperation[] method2524() { + return new ZoneOperation[]{ZoneOperation.LOC_ANIM, ZoneOperation.field2616, ZoneOperation.field2620, ZoneOperation.field2618, ZoneOperation.OBJ_DEL, ZoneOperation.field2622, ZoneOperation.LOC_DEL, ZoneOperation.LOC_ADD_CHANGE, ZoneOperation.AREA_SOUND, ZoneOperation.field2625, ZoneOperation.OBJ_COUNT, ZoneOperation.MAPPROJ_ANIM, ZoneOperation.PREFETCH_GAMEOBJECTS}; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/Throwable;I)Ljava/lang/String;", + garbageValue = "-1924207396" + ) + static String method2525(Throwable var0) throws IOException { + String var1; + if (var0 instanceof RunException) { + RunException var2 = (RunException)var0; + var1 = var2.field4320 + " | "; + var0 = var2.parent; + } else { + var1 = ""; + } + + StringWriter var12 = new StringWriter(); + PrintWriter var3 = new PrintWriter(var12); + var0.printStackTrace(var3); + var3.close(); + String var4 = var12.toString(); + BufferedReader var5 = new BufferedReader(new StringReader(var4)); + String var6 = var5.readLine(); + + while (true) { + while (true) { + String var7 = var5.readLine(); + if (var7 == null) { + var1 = var1 + "| " + var6; + return var1; + } + + int var8 = var7.indexOf(40); + int var9 = var7.indexOf(41, var8 + 1); + if (var8 >= 0 && var9 >= 0) { + String var10 = var7.substring(var8 + 1, var9); + int var11 = var10.indexOf(".java:"); + if (var11 >= 0) { + var10 = var10.substring(0, var11) + var10.substring(var11 + 5); + var1 = var1 + var10 + ' '; + continue; + } + + var7 = var7.substring(0, var8); + } + + var7 = var7.trim(); + var7 = var7.substring(var7.lastIndexOf(32) + 1); + var7 = var7.substring(var7.lastIndexOf(9) + 1); + var1 = var1 + var7 + ' '; + } + } + } + + @ObfuscatedName("nd") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "471269719" + ) + static final void method2526() { + PacketBufferNode var0 = class113.getPacketBufferNode(ClientPacket.FREECAM_EXIT, Client.packetWriter.isaacCipher); + Client.packetWriter.addNode(var0); + Interpreter.field703 = true; + + for (InterfaceParent var1 = (InterfaceParent)Client.interfaceParents.first(); var1 != null; var1 = (InterfaceParent)Client.interfaceParents.next()) { + if (var1.type == 0 || var1.type == 3) { + class302.closeInterface(var1, true); + } + } + + if (Client.meslayerContinueWidget != null) { + class159.invalidateWidget(Client.meslayerContinueWidget); + Client.meslayerContinueWidget = null; + } + + Interpreter.field703 = false; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class521.java b/osrs/src/main/java/class521.java new file mode 100644 index 000000000..c58b336d3 --- /dev/null +++ b/osrs/src/main/java/class521.java @@ -0,0 +1,16 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ue") +public class class521 { + @ObfuscatedName("ak") + @Export("cacheGamebuild") + static int cacheGamebuild; + @ObfuscatedName("um") + @ObfuscatedSignature( + descriptor = "Lce;" + ) + @Export("decimator") + static Decimator decimator; +} \ No newline at end of file diff --git a/osrs/src/main/java/class522.java b/osrs/src/main/java/class522.java index 352169b3a..190669ce4 100644 --- a/osrs/src/main/java/class522.java +++ b/osrs/src/main/java/class522.java @@ -2,13 +2,191 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("uu") -public interface class522 { +@ObfuscatedName("ug") +public enum class522 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4158(1), + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4152(2), + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4157(4), @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(IB)Ljava/lang/Object;", - garbageValue = "22" + descriptor = "Lug;" + ) + field4155(8), + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4163(16), + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4174(32), + @ObfuscatedName("aa") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4162(64, true), + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4164(128), + @ObfuscatedName("al") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4154(256, true), + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4179(512), + @ObfuscatedName("ap") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4156(1024), + @ObfuscatedName("av") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4175(2048), + @ObfuscatedName("ax") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4177(4096), + @ObfuscatedName("as") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4173(8192), + @ObfuscatedName("ay") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4178(16384), + @ObfuscatedName("ak") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4169(32768), + @ObfuscatedName("aj") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4153(65536), + @ObfuscatedName("am") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4170(131072), + @ObfuscatedName("aq") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4172(262144), + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4168(524288), + @ObfuscatedName("aw") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4176(1048576), + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4166(2097152), + @ObfuscatedName("an") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4171(4194304), + @ObfuscatedName("ag") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4167(8388608), + @ObfuscatedName("ad") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4165(16777216), + @ObfuscatedName("af") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4151(33554432), + @ObfuscatedName("be") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4180(67108864, true), + @ObfuscatedName("bd") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4159(134217728), + @ObfuscatedName("bl") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4182(268435456), + @ObfuscatedName("bi") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4160(536870912, true), + @ObfuscatedName("bv") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4161(1073741824, true), + @ObfuscatedName("bf") + @ObfuscatedSignature( + descriptor = "Lug;" + ) + field4181(Integer.MIN_VALUE); + + @ObfuscatedName("bg") + final int field4183; + + class522(int var3) { + this.field4183 = var3; + } + + @ObfuscatedSignature( + descriptor = "(IZ)V", + garbageValue = "1" + ) + class522(int var3, boolean var4) { + this.field4183 = var3; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" ) - @Export("vmethod8697") - Object vmethod8697(int var1); + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field4183; + } } \ No newline at end of file diff --git a/osrs/src/main/java/class523.java b/osrs/src/main/java/class523.java deleted file mode 100644 index bde25889f..000000000 --- a/osrs/src/main/java/class523.java +++ /dev/null @@ -1,42 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("ud") -public class class523 { - @ObfuscatedName("au") - public final int field4216; - @ObfuscatedName("ae") - public Object field4215; - - public class523(int var1) { - this.field4216 = var1; - } - - public class523(int var1, Object var2) { - this.field4216 = var1; - this.field4215 = var2; - } - - @Export("hashCode") - @ObfuscatedName("hashCode") - public int hashCode() { - return super.hashCode(); - } - - @Export("equals") - @ObfuscatedName("equals") - public boolean equals(Object var1) { - if (!(var1 instanceof class523)) { - return false; - } else { - class523 var2 = (class523)var1; - if (var2.field4215 == null && this.field4215 != null) { - return false; - } else if (this.field4215 == null && var2.field4215 != null) { - return false; - } else { - return var2.field4216 == this.field4216 && var2.field4215.equals(this.field4215); - } - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class527.java b/osrs/src/main/java/class527.java new file mode 100644 index 000000000..d31b83221 --- /dev/null +++ b/osrs/src/main/java/class527.java @@ -0,0 +1,68 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("um") +public class class527 { + @ObfuscatedName("at") + int[] field4191; + @ObfuscatedName("ah") + short[] field4192; + + @ObfuscatedSignature( + descriptor = "(Lhw;)V" + ) + public class527(NPCComposition var1) { + this.field4191 = new int[8]; + this.field4192 = new short[8]; + int var2 = 0; + if (var1.method947()) { + var2 = var1.method948().length; + System.arraycopy(var1.method948(), 0, this.field4191, 0, var2); + System.arraycopy(var1.method950(), 0, this.field4192, 0, var2); + } + + for (int var3 = var2; var3 < 8; ++var3) { + this.field4191[var3] = -1; + this.field4192[var3] = -1; + } + + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)[I", + garbageValue = "1522434870" + ) + public int[] method2619() { + return this.field4191; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(I)[S", + garbageValue = "-2015204847" + ) + public short[] method2620() { + return this.field4192; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IISI)V", + garbageValue = "-561705498" + ) + public void method2621(int var1, int var2, short var3) { + this.field4191[var1] = var2; + this.field4192[var1] = var3; + } + + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "([I[SI)V", + garbageValue = "1404172969" + ) + public void method2622(int[] var1, short[] var2) { + this.field4191 = var1; + this.field4192 = var2; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class529.java b/osrs/src/main/java/class529.java deleted file mode 100644 index b8d084cc8..000000000 --- a/osrs/src/main/java/class529.java +++ /dev/null @@ -1,15 +0,0 @@ -import net.runelite.mapping.Export; -import net.runelite.mapping.ObfuscatedName; - -@ObfuscatedName("uf") -public class class529 { - @ObfuscatedName("au") - @Export("SpriteBuffer_spriteCount") - static int SpriteBuffer_spriteCount; - @ObfuscatedName("ae") - @Export("SpriteBuffer_spriteWidth") - static int SpriteBuffer_spriteWidth; - @ObfuscatedName("at") - @Export("SpriteBuffer_xOffsets") - static int[] SpriteBuffer_xOffsets; -} \ No newline at end of file diff --git a/osrs/src/main/java/class53.java b/osrs/src/main/java/class53.java index 1db51ccff..a748650a3 100644 --- a/osrs/src/main/java/class53.java +++ b/osrs/src/main/java/class53.java @@ -1,59 +1,59 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.util.ArrayList; -import java.util.Iterator; +import java.util.Arrays; -@ObfuscatedName("cf") +@ObfuscatedName("cg") public class class53 extends Node { - @ObfuscatedName("au") + @ObfuscatedName("cy") + static int field256; + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "Lbx;" ) - class47 field261; + class47 field257; public class53() { - this.field261 = null; + this.field257 = null; } @ObfuscatedSignature( - descriptor = "(Lcm;)V" + descriptor = "(Lcv;)V" ) class53(VorbisSample var1) { if (var1 != null) { - this.field261 = new class47(var1, (RawSound)null); + this.field257 = new class47(var1, (RawSound)null); } } @ObfuscatedSignature( - descriptor = "(Lbu;)V" + descriptor = "(Lbt;)V" ) public class53(RawSound var1) { - this.field261 = new class47((VorbisSample)null, var1); + this.field257 = new class47((VorbisSample)null, var1); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "6" + descriptor = "(I)Z", + garbageValue = "-925391311" ) - public boolean method289() { - return this.field261 == null; + public boolean method303() { + return this.field257 == null; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)Lbu;", - garbageValue = "2082518533" + descriptor = "(I)Lbt;", + garbageValue = "1961444927" ) - public RawSound method290() { - if (this.field261 != null && this.field261.field231.tryLock()) { + public RawSound method304() { + if (this.field257 != null && this.field257.field226.tryLock()) { RawSound var1; try { - var1 = this.method293(); + var1 = this.method306(); } finally { - this.field261.field231.unlock(); + this.field257.field226.unlock(); } return var1; @@ -62,20 +62,20 @@ public RawSound method290() { } } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Lbu;", - garbageValue = "2121230840" + descriptor = "(I)Lbt;", + garbageValue = "-96589694" ) - public RawSound method292() { - if (this.field261 != null) { - this.field261.field231.lock(); + public RawSound method305() { + if (this.field257 != null) { + this.field257.field226.lock(); RawSound var1; try { - var1 = this.method293(); + var1 = this.method306(); } finally { - this.field261.field231.unlock(); + this.field257.field226.unlock(); } return var1; @@ -84,412 +84,168 @@ public RawSound method292() { } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "(I)Lbu;", - garbageValue = "-565305963" + descriptor = "(I)Lbt;", + garbageValue = "-1970113950" ) - RawSound method293() { - if (this.field261.field229 == null) { - this.field261.field229 = this.field261.field230.toRawSound((int[])null); - this.field261.field230 = null; + RawSound method306() { + if (this.field257.field224 == null) { + this.field257.field224 = this.field257.field225.toRawSound((int[])null); + this.field257.field225 = null; } - return this.field261.field229; + return this.field257.field224; } - @ObfuscatedName("ae") + @ObfuscatedName("ht") @ObfuscatedSignature( - descriptor = "(Ljava/util/ArrayList;IIIIZI)V", - garbageValue = "-1757242477" + descriptor = "(I)V", + garbageValue = "1624794329" ) - public static void method291(ArrayList var0, int var1, int var2, int var3, int var4, boolean var5) { - if (!var0.isEmpty()) { - class305.field2774.clear(); - class305.field2771.clear(); - class200.method1009(var5); - class270.method1536(var0, var5); - if (!class305.field2774.isEmpty()) { - class270.method1537(var1, var2, var3, var4); - class305.field2771.add(new AddRequestTask((SongTask)null)); - class305.field2771.add(new class408((SongTask)null, class305.field2777, class305.field2775, class305.field2776)); - ArrayList var6 = new ArrayList(); - var6.add(new class403(new FadeInTask((SongTask)null, 0, true, class305.field2768))); - if (!class305.musicSongs.isEmpty()) { - ArrayList var7 = new ArrayList(); - var7.add(new DelayFadeTask(new ConcurrentMidiTask((SongTask)null, var6), class305.field2769)); - ArrayList var9 = new ArrayList(); - Iterator var10 = class305.musicSongs.iterator(); - - while (var10.hasNext()) { - MusicSong var11 = (MusicSong)var10.next(); - var9.add(var11); - } - - var7.add(new DelayFadeTask(new FadeOutTask(new class401((SongTask)null, var9), 0, false, class305.field2766), class305.musicPlayerStatus)); - class305.field2771.add(new ConcurrentMidiTask((SongTask)null, var7)); - } else { - class305.field2771.add(new DelayFadeTask((SongTask)null, class305.field2769)); - class305.field2771.add(new ConcurrentMidiTask((SongTask)null, var6)); - } - - } - } - } - - @ObfuscatedName("az") - @ObfuscatedSignature( - descriptor = "(Lto;ILdf;II)V", - garbageValue = "-2132656914" - ) - static final void method294(PacketBuffer var0, int var1, Player var2, int var3) { - byte var4 = MoveSpeed.STATIONARY.speed; - int var5; - if ((var3 & 8) != 0) { - var5 = var0.readUnsignedByte(); - byte[] var6 = new byte[var5]; - Buffer var7 = new Buffer(var6); - var0.method2601(var6, 0, var5); - Players.cachedAppearanceBuffer[var1] = var7; - var2.read(var7); - } - - int var8; - int var9; - int var16; - int var17; - if ((var3 & 65536) != 0) { - var5 = var0.readUnsignedByte(); - - for (var16 = 0; var16 < var5; ++var16) { - var17 = var0.readUnsignedByteAdd(); - var8 = var0.method2587(); - var9 = var0.readInt(); - var2.updateSpotAnimation(var17, var8, var9 >> 16, var9 & 65535); - } - } - - if ((var3 & 64) != 0) { - var2.movingOrientation = var0.method2587(); - if (var2.pathLength == 0) { - var2.orientation = var2.movingOrientation; - var2.method521(); - } - } - - if ((var3 & 16) != 0) { - var2.targetIndex = var0.method2587(); - var2.targetIndex += var0.readUnsignedByteAdd() << 16; - var5 = 16777215; - if (var2.targetIndex == var5) { - var2.targetIndex = -1; - } - } - - int var10; - int var11; - if ((var3 & 4096) != 0) { - var5 = var0.method2587(); - var16 = var5 >> 8; - var17 = var16 >= 13 && var16 <= 20 ? var16 - 12 : 0; - PlayerType var18 = (PlayerType)KeyHandler.findEnumerated(MidiPcmStream.PlayerType_values(), var0.readUnsignedByteAdd()); - boolean var24 = var0.readUnsignedByte() == 1; - var10 = var0.readUnsignedByteNeg(); - var11 = var0.offset; - if (var2.username != null && var2.appearance != null) { - boolean var12 = false; - if (var18.isUser && class299.friendSystem.isIgnored(var2.username)) { - var12 = true; - } - - if (!var12 && Client.field486 == 0 && !var2.isHidden) { - Players.field1121.offset = 0; - var0.method2601(Players.field1121.array, 0, var10); - Players.field1121.offset = 0; - String var13 = AbstractFont.escapeBrackets(World.method385(DirectByteArrayCopier.readString(Players.field1121))); - var2.overheadText = var13.trim(); - var2.field995 = var5 >> 8; - var2.field996 = var5 & 255; - var2.overheadTextCyclesRemaining = 150; - byte[] var14 = null; - int var15; - if (var17 > 0 && var17 <= 8) { - var14 = new byte[var17]; - - for (var15 = 0; var15 < var17; ++var15) { - var14[var15] = var0.readSignedByteSub(); - } - } - - var2.field1028 = class164.method863(var14); - var2.isAutoChatting = var24; - var2.showPublicPlayerChat = var2 != VarbitComposition.localPlayer && var18.isUser && !Client.field602.isEmpty() && var13.toLowerCase().indexOf(Client.field602) == -1; - if (var18.isPrivileged) { - var15 = var24 ? 91 : 1; - } else { - var15 = var24 ? 90 : 2; - } - - if (var18.modIcon != -1) { - MouseHandler.addGameMessage(var15, Tile.addImageTag(var18.modIcon) + var2.username.getName(), var13); - } else { - MouseHandler.addGameMessage(var15, var2.username.getName(), var13); - } + static void method307() { + Client.mouseLastLastPressedTimeMillis = -1L; + Message.mouseRecorder.index = 0; + class357.hasFocus = true; + Client.hadFocus = true; + Client.timeOfPreviousKeyPress = -1L; + class36.reflectionChecks = new IterableNodeDeque(); + Client.packetWriter.clearBuffer(); + Client.packetWriter.packetBuffer.offset = 0; + Client.packetWriter.serverPacket = null; + Client.packetWriter.field1167 = null; + Client.packetWriter.field1168 = null; + Client.packetWriter.field1166 = null; + Client.packetWriter.serverPacketLength = 0; + Client.packetWriter.field1164 = 0; + Client.rebootTimer = 0; + Client.logoutTimer = 0; + Client.hintArrowType = 0; + class160.method840(); + WorldMapEvent.method1382(0); + LoginScreenAnimation.method523(); + Client.isItemSelected = 0; + Client.isSpellSelected = false; + Client.soundEffectCount = 0; + Client.camAngleY = 0; + Client.oculusOrbState = 0; + MidiPcmStream.field2799 = null; + Client.minimapState = 0; + Client.field535 = -1; + Client.destinationX = 0; + Client.destinationY = 0; + Client.playerAttackOption = AttackOption.AttackOption_hidden; + Client.npcAttackOption = AttackOption.AttackOption_hidden; + Client.npcCount = 0; + Players.Players_count = 0; + + int var0; + for (var0 = 0; var0 < 2048; ++var0) { + Players.cachedAppearanceBuffer[var0] = null; + Players.playerMovementSpeeds[var0] = MoveSpeed.WALK; + } + + for (var0 = 0; var0 < 2048; ++var0) { + Client.players[var0] = null; + } + + for (var0 = 0; var0 < 65536; ++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; } } - - var0.offset = var17 + var10 + var11; - } - - int var26; - if ((var3 & 32) != 0) { - var5 = var0.readUnsignedShortLE(); - PlayerType var21 = (PlayerType)KeyHandler.findEnumerated(MidiPcmStream.PlayerType_values(), var0.readUnsignedByteNeg()); - boolean var27 = var0.readUnsignedByteNeg() == 1; - var8 = var0.readUnsignedByte(); - var9 = var0.offset; - if (var2.username != null && var2.appearance != null) { - boolean var25 = false; - if (var21.isUser && class299.friendSystem.isIgnored(var2.username)) { - var25 = true; - } - - if (!var25 && Client.field486 == 0 && !var2.isHidden) { - Players.field1121.offset = 0; - var0.method2601(Players.field1121.array, 0, var8); - Players.field1121.offset = 0; - String var19 = AbstractFont.escapeBrackets(World.method385(DirectByteArrayCopier.readString(Players.field1121))); - var2.overheadText = var19.trim(); - var2.field995 = var5 >> 8; - var2.field996 = var5 & 255; - var2.overheadTextCyclesRemaining = 150; - var2.field1028 = null; - var2.isAutoChatting = var27; - var2.showPublicPlayerChat = var2 != VarbitComposition.localPlayer && var21.isUser && !Client.field602.isEmpty() && var19.toLowerCase().indexOf(Client.field602) == -1; - if (var21.isPrivileged) { - var26 = var27 ? 91 : 1; - } else { - var26 = var27 ? 90 : 2; - } - - if (var21.modIcon != -1) { - MouseHandler.addGameMessage(var26, Tile.addImageTag(var21.modIcon) + var2.username.getName(), var19); - } else { - MouseHandler.addGameMessage(var26, var2.username.getName(), var19); - } - } - } - - var0.offset = var8 + var9; } - if ((var3 & 4) != 0) { - var5 = var0.readUnsignedByte(); - if (var5 > 0) { - for (var16 = 0; var16 < var5; ++var16) { - var8 = -1; - var9 = -1; - var10 = -1; - var17 = var0.readUShortSmart(); - if (var17 == 32767) { - var17 = var0.readUShortSmart(); - var9 = var0.readUShortSmart(); - var8 = var0.readUShortSmart(); - var10 = var0.readUShortSmart(); - } else if (var17 != 32766) { - var9 = var0.readUShortSmart(); - } else { - var17 = -1; - } - - var11 = var0.readUShortSmart(); - var2.addHitSplat(var17, var9, var8, var10, Client.cycle, var11); - } - } - - var16 = var0.readUnsignedByte(); - if (var16 > 0) { - for (var17 = 0; var17 < var16; ++var17) { - var8 = var0.readUShortSmart(); - var9 = var0.readUShortSmart(); - if (var9 != 32767) { - var10 = var0.readUShortSmart(); - var11 = var0.readUnsignedByteAdd(); - var26 = var9 > 0 ? var0.readUnsignedByte() : var11; - var2.addHealthBar(var8, Client.cycle, var9, var10, var11, var26); - } else { - var2.removeHealthBar(var8); - } - } - } + Client.pendingSpawns = new NodeDeque(); + class12.friendSystem.clear(); + if (VarpDefinition.field1443 > 5000) { } - if ((var3 & 512) != 0) { - var2.field1004 = var0.readSignedByteSub(); - var2.field1001 = var0.readByteAdd(); - var2.field1002 = var0.readByte(); - var2.field1014 = var0.readByte(); - var2.spotAnimation = var0.readUnsignedShortLE() + Client.cycle; - var2.exactMoveArrive1Cycle = var0.readUnsignedShortLE() + Client.cycle; - var2.exactMoveDirection = var0.method2587(); - if (var2.hasMovementPending) { - var2.field1004 += var2.tileX; - var2.field1001 += var2.tileY; - var2.field1002 += var2.tileX; - var2.field1014 += var2.tileY; - var2.pathLength = 0; - } else { - var2.field1004 += var2.pathX[0]; - var2.field1001 += var2.pathY[0]; - var2.field1002 += var2.pathX[0]; - var2.field1014 += var2.pathY[0]; - var2.pathLength = 1; + for (var0 = 0; var0 < VarpDefinition.field1443; ++var0) { + VarpDefinition var3 = FloorOverlayDefinition.VarpDefinition_get(var0); + if (var3 != null) { + Varps.Varps_temp[var0] = 0; + Varps.Varps_main[var0] = 0; } - - var2.field1022 = 0; } - if ((var3 & 2048) != 0) { - MoveSpeed[] var20 = Players.playerMovementSpeeds; - MoveSpeed[] var23 = new MoveSpeed[]{MoveSpeed.STATIONARY, MoveSpeed.CRAWL, MoveSpeed.RUN, MoveSpeed.WALK}; - var20[var1] = (MoveSpeed)KeyHandler.findEnumerated(var23, var0.readByte()); + class176.varcs.clearTransient(); + Client.followerIndex = -1; + if (Client.rootInterface != -1) { + HealthBarDefinition.widgetDefinition.method1736(Client.rootInterface); } - if ((var3 & 128) != 0) { - var2.overheadText = var0.readStringCp1252NullTerminated(); - if (var2.overheadText.charAt(0) == '~') { - var2.overheadText = var2.overheadText.substring(1); - MouseHandler.addGameMessage(2, var2.username.getName(), var2.overheadText); - } else if (var2 == VarbitComposition.localPlayer) { - MouseHandler.addGameMessage(2, var2.username.getName(), var2.overheadText); - } - - var2.isAutoChatting = false; - var2.field995 = 0; - var2.field996 = 0; - var2.overheadTextCyclesRemaining = 150; + for (InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.first(); var4 != null; var4 = (InterfaceParent)Client.interfaceParents.next()) { + class302.closeInterface(var4, true); } - if ((var3 & 16384) != 0) { - var2.recolourStartCycle = Client.cycle + var0.readIntME(); - var2.recolourEndCycle = Client.cycle + var0.readIntME(); - var2.recolourHue = var0.readSignedByteSub(); - var2.recolourSaturation = var0.readByteNeg(); - var2.recolourLuminance = var0.readByteAdd(); - var2.recolourAmount = (byte)var0.readUnsignedByteNeg(); - } + Client.rootInterface = -1; + Client.interfaceParents = new NodeHashTable(8); + Client.meslayerContinueWidget = null; + class160.method840(); + Client.playerAppearance.method1746((int[])null, (int[])null, new int[]{0, 0, 0, 0, 0}, 0, -1); - if ((var3 & 8192) != 0) { - for (var5 = 0; var5 < 3; ++var5) { - var2.actions[var5] = var0.readStringCp1252NullTerminated(); - } - } - - if ((var3 & 1024) != 0) { - var4 = var0.readByte(); + for (var0 = 0; var0 < 8; ++var0) { + Client.playerMenuActions[var0] = null; + Client.playerOptionsPriorities[var0] = false; } - if ((var3 & 2) != 0) { - var5 = var0.readUnsignedShort(); - if (var5 == 65535) { - var5 = -1; - } + class59.method332(); + Client.isLoading = true; - var16 = var0.readUnsignedByteAdd(); - LoginType.performPlayerAnimation(var2, var5, var16); + for (var0 = 0; var0 < 100; ++var0) { + Client.field407[var0] = true; } - if (var2.hasMovementPending) { - if (var4 == 127) { - var2.resetPath(var2.tileX, var2.tileY); - } else { - MoveSpeed var28; - if (var4 != MoveSpeed.STATIONARY.speed) { - MoveSpeed[] var22 = new MoveSpeed[]{MoveSpeed.STATIONARY, MoveSpeed.CRAWL, MoveSpeed.RUN, MoveSpeed.WALK}; - var28 = (MoveSpeed)KeyHandler.findEnumerated(var22, var4); - } else { - var28 = Players.playerMovementSpeeds[var1]; - } - - var2.move(var2.tileX, var2.tileY, var28); - } + if (Client.packetWriter != null && Client.packetWriter.isaacCipher != null) { + PacketBufferNode var5 = class113.getPacketBufferNode(ClientPacket.EVENT_MOUSE_IDLE, Client.packetWriter.isaacCipher); + var5.packetBuffer.writeByte(ApproximateRouteStrategy.getWindowedMode()); + var5.packetBuffer.writeShort(Language.canvasWidth); + var5.packetBuffer.writeShort(class47.canvasHeight); + Client.packetWriter.addNode(var5); } - } + class20.friendsChat = null; + class478.guestClanSettings = null; + Arrays.fill(Client.currentClanSettings, (Object)null); + ItemContainer.guestClanChannel = null; + Arrays.fill(Client.currentClanChannels, (Object)null); - @ObfuscatedName("am") - @ObfuscatedSignature( - descriptor = "(B)V", - garbageValue = "-28" - ) - static void method296() { - if (class125.loadWorlds()) { - Login.worldSelectOpen = true; - Login.worldSelectPage = 0; - Login.worldSelectPagesCount = 0; + for (var0 = 0; var0 < 8; ++var0) { + Client.grandExchangeOffers[var0] = new GrandExchangeOffer(); } + class6.grandExchangeEvents = null; + Client.reloadJS5 = false; } - @ObfuscatedName("bx") + @ObfuscatedName("lf") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "-1225390547" + descriptor = "(I)V", + garbageValue = "50042051" ) - static int method297(int var0, Script var1, boolean var2) { - return 2; - } - - @ObfuscatedName("ca") - @ObfuscatedSignature( - descriptor = "([BI)[B", - garbageValue = "959381861" - ) - @Export("decompressBytes") - static final byte[] decompressBytes(byte[] var0) { - Buffer var1 = new Buffer(var0); - int var2 = var1.readUnsignedByte(); - int var3 = var1.readInt(); - if (var3 >= 0 && (AbstractArchive.maximumContainerSize == 0 || var3 <= AbstractArchive.maximumContainerSize)) { - if (var2 == 0) { - byte[] var4 = new byte[var3]; - var1.readBytes(var4, 0, var3); - return var4; - } else { - int var6 = var1.readInt(); - if (var6 < 0 || AbstractArchive.maximumContainerSize != 0 && var6 > AbstractArchive.maximumContainerSize) { - throw new RuntimeException(); - } else { - byte[] var5 = new byte[var6]; - if (var2 == 1) { - BZip2Decompressor.BZip2Decompressor_decompress(var5, var6, var0, var3, 9); - } else { - AbstractArchive.gzipDecompressor.decompress(var1, var5); - } - - return var5; - } - } - } else { - throw new RuntimeException(); - } - } - - @ObfuscatedName("ld") - @ObfuscatedSignature( - descriptor = "(II)Z", - garbageValue = "709896940" - ) - static final boolean method298(int var0) { - if (var0 < 0) { - return false; - } else { - int var1 = Client.menuOpcodes[var0]; - if (var1 >= 2000) { - var1 -= 2000; - } - - return var1 == 1007; + static void method308() { + if (Client.isSpellSelected) { + Widget var0 = HealthBarDefinition.widgetDefinition.getWidgetChild(class348.selectedSpellWidget, Client.selectedSpellChildIndex); + if (var0 != null && var0.onTargetLeave != null) { + ScriptEvent var1 = new ScriptEvent(); + var1.widget = var0; + var1.args = var0.onTargetLeave; + class157.runScriptEvent(var1); + } + + Client.selectedSpellItemId = -1; + Client.isSpellSelected = false; + class159.invalidateWidget(var0); } } } \ No newline at end of file diff --git a/osrs/src/main/java/class530.java b/osrs/src/main/java/class530.java new file mode 100644 index 000000000..4c1f382fb --- /dev/null +++ b/osrs/src/main/java/class530.java @@ -0,0 +1,11 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ua") +public interface class530 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(Luj;B)V" + ) + void method2631(Buffer var1); +} \ No newline at end of file diff --git a/osrs/src/main/java/class531.java b/osrs/src/main/java/class531.java new file mode 100644 index 000000000..4a35df0a1 --- /dev/null +++ b/osrs/src/main/java/class531.java @@ -0,0 +1,74 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("us") +public class class531 implements class383 { + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + public static final class531 field4234; + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + public static final class531 field4233; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + static final class531 field4237; + @ObfuscatedName("ao") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + static final class531 field4236; + @ObfuscatedName("ab") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + static final class531 field4235; + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "Lus;" + ) + static final class531 field4238; + @ObfuscatedName("aa") + final int field4239; + @ObfuscatedName("ac") + final int field4240; + + static { + field4234 = new class531(1, 0); + field4233 = new class531(3, 2); + field4237 = new class531(4, 5); + field4236 = new class531(2, 6); + field4235 = new class531(0, 7); + field4238 = new class531(5, 8); + } + + class531(int var1, int var2) { + this.field4239 = var1; + this.field4240 = var2; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(I)Z", + garbageValue = "1094976837" + ) + public boolean method2633() { + return this == field4233; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(B)I", + garbageValue = "-11" + ) + @Export("rsOrdinal") + public int rsOrdinal() { + return this.field4240; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class532.java b/osrs/src/main/java/class532.java deleted file mode 100644 index d6509d0c5..000000000 --- a/osrs/src/main/java/class532.java +++ /dev/null @@ -1,132 +0,0 @@ -import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; - -@ObfuscatedName("uo") -public class class532 { - @ObfuscatedName("ae") - int field4262; - @ObfuscatedName("ao") - int field4266; - @ObfuscatedName("at") - int field4269; - @ObfuscatedName("ac") - int field4260; - @ObfuscatedName("ai") - int field4263; - @ObfuscatedName("az") - int field4270; - @ObfuscatedName("ap") - int field4267; - @ObfuscatedName("aa") - int field4259; - @ObfuscatedName("af") - boolean field4258; - @ObfuscatedName("ad") - int field4261; - @ObfuscatedName("aq") - int field4268; - @ObfuscatedName("al") - int field4264; - @ObfuscatedName("an") - int field4265; - - public class532() { - this.field4267 = 0; - this.field4259 = 0; - } - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIIIIIIIZB)V", - garbageValue = "115" - ) - public void method2694(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, boolean var9) { - this.field4262 = var1; - this.field4266 = var2; - this.field4269 = var3; - this.field4260 = var4; - this.field4263 = var5; - this.field4270 = var6; - this.field4267 = var7; - this.field4259 = var8; - this.field4258 = var9; - } - - @ObfuscatedName("ae") - @ObfuscatedSignature( - descriptor = "(IIIII)V", - garbageValue = "-1659604987" - ) - public void method2695(int var1, int var2, int var3, int var4) { - this.field4261 = var1; - this.field4268 = var2; - this.field4264 = var3; - this.field4265 = var4; - } - - @ObfuscatedName("ao") - @ObfuscatedSignature( - descriptor = "(Lpj;Lpi;B)V", - garbageValue = "-101" - ) - public void method2696(class394 var1, Font var2) { - if (var2 != null) { - int var3 = var2.ascent; - int var4 = Math.min(this.field4260, (int)((float)var3 * 0.9F)); - int var5 = var1.method2069(this.field4269); - int var6 = var1.method2070(this.field4260); - int var7 = var5 + (this.field4262 - this.field4263); - int var8 = var6 + var3 + (this.field4266 - this.field4270); - Rasterizer2D.Rasterizer2D_setClip(this.field4262, this.field4266, this.field4262 + this.field4269, this.field4260 + this.field4266); - int var9 = this.field4259; - int var10 = this.field4267; - if (var9 > var10) { - int var11 = var9; - var9 = var10; - var10 = var11; - } - - class398 var21 = var1.method2049(0, var9); - class398 var12 = var1.method2049(var9, var10); - class398 var13 = var1.method2049(var10, var1.method2040()); - class398 var14 = var1.method2049(0, this.field4267); - int var16; - int var18; - if (!var12.method2115()) { - int var15 = var2.maxAscent + var2.maxDescent; - - for (var16 = 0; var16 < var12.method2116(); ++var16) { - class396 var17 = var12.method2120(var16); - var18 = var7 + var17.field3681; - int var19 = var2.charWidth(var17.field3680); - int var20 = var8 + var17.field3682 - var3; - Rasterizer2D.Rasterizer2D_fillRectangle(var18, var20, var19, var15, this.field4265); - } - } - - if (!var21.method2115()) { - var2.method2094(var21, var7, var8, this.field4261, this.field4268, -1); - } - - if (!var12.method2115()) { - var2.method2094(var12, var7, var8, this.field4264, this.field4268, -1); - } - - if (!var13.method2115()) { - var2.method2094(var13, var7, var8, this.field4261, this.field4268, -1); - } - - if (this.field4258) { - class485 var22 = var14.method2119(); - var16 = var7 + (Integer)var22.field4049; - int var23 = var8 + (Integer)var22.field4048; - var18 = var23 - var4; - Rasterizer2D.Rasterizer2D_drawLine(var16, var23, var16, var18, this.field4261); - if (this.field4268 != -1) { - Rasterizer2D.Rasterizer2D_drawLine(var16 + 1, var23 + 1, var16 + 1, var18 + 1, this.field4268); - } - } - - } - } -} \ No newline at end of file diff --git a/osrs/src/main/java/class534.java b/osrs/src/main/java/class534.java new file mode 100644 index 000000000..2d5274343 --- /dev/null +++ b/osrs/src/main/java/class534.java @@ -0,0 +1,14 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ur") +public interface class534 { + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(II)Ljava/lang/Object;", + garbageValue = "415168938" + ) + @Export("vmethod8697") + Object vmethod8697(int var1); +} \ No newline at end of file diff --git a/osrs/src/main/java/class535.java b/osrs/src/main/java/class535.java new file mode 100644 index 000000000..ca811124a --- /dev/null +++ b/osrs/src/main/java/class535.java @@ -0,0 +1,42 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("ux") +public class class535 { + @ObfuscatedName("at") + public final int field4244; + @ObfuscatedName("ah") + public Object field4243; + + public class535(int var1) { + this.field4244 = var1; + } + + public class535(int var1, Object var2) { + this.field4244 = var1; + this.field4243 = var2; + } + + @Export("hashCode") + @ObfuscatedName("hashCode") + public int hashCode() { + return super.hashCode(); + } + + @Export("equals") + @ObfuscatedName("equals") + public boolean equals(Object var1) { + if (!(var1 instanceof class535)) { + return false; + } else { + class535 var2 = (class535)var1; + if (var2.field4243 == null && this.field4243 != null) { + return false; + } else if (this.field4243 == null && var2.field4243 != null) { + return false; + } else { + return this.field4244 == var2.field4244 && var2.field4243.equals(this.field4243); + } + } + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class541.java b/osrs/src/main/java/class541.java new file mode 100644 index 000000000..ec53c376b --- /dev/null +++ b/osrs/src/main/java/class541.java @@ -0,0 +1,24 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; + +@ObfuscatedName("uc") +public class class541 { + @ObfuscatedName("at") + @Export("SpriteBuffer_spriteCount") + static int SpriteBuffer_spriteCount; + @ObfuscatedName("ah") + @Export("SpriteBuffer_spriteWidth") + public static int SpriteBuffer_spriteWidth; + @ObfuscatedName("ao") + @Export("SpriteBuffer_xOffsets") + public static int[] SpriteBuffer_xOffsets; + @ObfuscatedName("ab") + @Export("SpriteBuffer_yOffsets") + public static int[] SpriteBuffer_yOffsets; + @ObfuscatedName("au") + @Export("SpriteBuffer_spriteWidths") + public static int[] SpriteBuffer_spriteWidths; + @ObfuscatedName("ac") + @Export("SpriteBuffer_spritePalette") + public static int[] SpriteBuffer_spritePalette; +} \ No newline at end of file diff --git a/osrs/src/main/java/class542.java b/osrs/src/main/java/class542.java new file mode 100644 index 000000000..79b1e873b --- /dev/null +++ b/osrs/src/main/java/class542.java @@ -0,0 +1,13 @@ +import net.runelite.mapping.Export; +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ub") +public class class542 { + @ObfuscatedName("az") + @ObfuscatedSignature( + descriptor = "Lea;" + ) + @Export("World_request") + static UrlRequest World_request; +} \ No newline at end of file diff --git a/osrs/src/main/java/class544.java b/osrs/src/main/java/class544.java new file mode 100644 index 000000000..33510c397 --- /dev/null +++ b/osrs/src/main/java/class544.java @@ -0,0 +1,273 @@ +import net.runelite.mapping.ObfuscatedName; +import net.runelite.mapping.ObfuscatedSignature; + +@ObfuscatedName("ut") +public class class544 { + @ObfuscatedName("ah") + int field4294; + @ObfuscatedName("ar") + int field4298; + @ObfuscatedName("ao") + int field4296; + @ObfuscatedName("ab") + int field4292; + @ObfuscatedName("au") + int field4300; + @ObfuscatedName("aa") + int field4291; + @ObfuscatedName("ac") + int field4293; + @ObfuscatedName("al") + int field4295; + @ObfuscatedName("az") + boolean field4290; + @ObfuscatedName("ap") + int field4297; + @ObfuscatedName("av") + int field4301; + @ObfuscatedName("ax") + int field4302; + @ObfuscatedName("as") + int field4299; + + public class544() { + this.field4293 = 0; + this.field4295 = 0; + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IIIIIIIIZB)V", + garbageValue = "0" + ) + public void method2712(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, boolean var9) { + this.field4294 = var1; + this.field4298 = var2; + this.field4296 = var3; + this.field4292 = var4; + this.field4300 = var5; + this.field4291 = var6; + this.field4293 = var7; + this.field4295 = var8; + this.field4290 = var9; + } + + @ObfuscatedName("ah") + @ObfuscatedSignature( + descriptor = "(IIIIB)V", + garbageValue = "82" + ) + public void method2713(int var1, int var2, int var3, int var4) { + this.field4297 = var1; + this.field4301 = var2; + this.field4302 = var3; + this.field4299 = var4; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(Lpv;Lpf;I)V", + garbageValue = "72760556" + ) + public void method2714(class406 var1, Font var2) { + if (var2 != null) { + int var3 = var2.ascent; + int var4 = Math.min(this.field4292, (int)((float)var3 * 0.9F)); + int var5 = var1.method2084(this.field4296); + int var6 = var1.method2085(this.field4292); + int var7 = var5 + (this.field4294 - this.field4300); + int var8 = var6 + var3 + (this.field4298 - this.field4291); + Rasterizer2D.Rasterizer2D_setClip(this.field4294, this.field4298, this.field4294 + this.field4296, this.field4292 + this.field4298); + int var9 = this.field4295; + int var10 = this.field4293; + if (var9 > var10) { + int var11 = var9; + var9 = var10; + var10 = var11; + } + + class410 var21 = var1.method2065(0, var9); + class410 var12 = var1.method2065(var9, var10); + class410 var13 = var1.method2065(var10, var1.method2055()); + class410 var14 = var1.method2065(0, this.field4293); + int var16; + int var18; + if (!var12.method2133()) { + int var15 = var2.maxAscent + var2.maxDescent; + + for (var16 = 0; var16 < var12.method2134(); ++var16) { + class408 var17 = var12.method2138(var16); + var18 = var7 + var17.field3717; + int var19 = var2.charWidth(var17.field3716); + int var20 = var8 + var17.field3718 - var3; + Rasterizer2D.Rasterizer2D_fillRectangle(var18, var20, var19, var15, this.field4299); + } + } + + if (!var21.method2133()) { + var2.method2112(var21, var7, var8, this.field4297, this.field4301, -1); + } + + if (!var12.method2133()) { + var2.method2112(var12, var7, var8, this.field4302, this.field4301, -1); + } + + if (!var13.method2133()) { + var2.method2112(var13, var7, var8, this.field4297, this.field4301, -1); + } + + if (this.field4290) { + class497 var22 = var14.method2137(); + var16 = var7 + (Integer)var22.field4074; + int var23 = var8 + (Integer)var22.field4073; + var18 = var23 - var4; + Rasterizer2D.Rasterizer2D_drawLine(var16, var23, var16, var18, this.field4297); + if (this.field4301 != -1) { + Rasterizer2D.Rasterizer2D_drawLine(var16 + 1, var23 + 1, var16 + 1, var18 + 1, this.field4301); + } + } + + } + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(ILjava/lang/String;Lof;II)Lld;", + garbageValue = "-1670201559" + ) + public static PacketBufferNode method2711(int var0, String var1, Language var2, int var3) { + PacketBufferNode var4 = class113.getPacketBufferNode(ClientPacket.f96, Client.packetWriter.isaacCipher); + var4.packetBuffer.writeByte(0); + int var5 = var4.packetBuffer.offset; + var4.packetBuffer.writeByte(var0); + String var6 = var1.toLowerCase(); + int var7 = 0; + byte[] var8 = null; + if (var6.startsWith("yellow:")) { + var7 = 0; + var1 = var1.substring("yellow:".length()); + } else if (var6.startsWith("red:")) { + var7 = 1; + var1 = var1.substring("red:".length()); + } else if (var6.startsWith("green:")) { + var7 = 2; + var1 = var1.substring("green:".length()); + } else if (var6.startsWith("cyan:")) { + var7 = 3; + var1 = var1.substring("cyan:".length()); + } else if (var6.startsWith("purple:")) { + var7 = 4; + var1 = var1.substring("purple:".length()); + } else if (var6.startsWith("white:")) { + var7 = 5; + var1 = var1.substring("white:".length()); + } else if (var6.startsWith("flash1:")) { + var7 = 6; + var1 = var1.substring("flash1:".length()); + } else if (var6.startsWith("flash2:")) { + var7 = 7; + var1 = var1.substring("flash2:".length()); + } else if (var6.startsWith("flash3:")) { + var7 = 8; + var1 = var1.substring("flash3:".length()); + } else if (var6.startsWith("glow1:")) { + var7 = 9; + var1 = var1.substring("glow1:".length()); + } else if (var6.startsWith("glow2:")) { + var7 = 10; + var1 = var1.substring("glow2:".length()); + } else if (var6.startsWith("glow3:")) { + var7 = 11; + var1 = var1.substring("glow3:".length()); + } else if (var6.startsWith("rainbow:")) { + var7 = 12; + var1 = var1.substring("rainbow:".length()); + } else if (var6.startsWith("pattern")) { + boolean var10 = true; + boolean var11 = true; + int var12 = "pattern".length(); + int var13 = 0; + byte[] var14 = new byte[8]; + + byte[] var9; + while (true) { + int var15 = var12 + var13; + if (var15 >= var6.length()) { + var9 = null; + break; + } + + char var16 = var6.charAt(var15); + if (var16 == ':') { + if (var13 == 0) { + var9 = null; + } else { + byte[] var17 = new byte[var13]; + System.arraycopy(var14, 0, var17, 0, var13); + var9 = var17; + } + break; + } + + if (var14.length == var13) { + var9 = null; + break; + } + + if (var16 >= '0' && var16 <= '9') { + var16 = (char)(var16 - '0'); + } else { + if (var16 < 'a' || var16 > 'z') { + var9 = null; + break; + } + + var16 = (char)(var16 - 'W'); + } + + var14[var13++] = (byte)var16; + } + + var8 = var9; + if (var9 != null) { + var7 = var9.length + 12; + var1 = var1.substring("pattern".length() + var9.length + 1); + } + } + + var6 = var1.toLowerCase(); + byte var18 = 0; + if (var6.startsWith("wave:")) { + var18 = 1; + var1 = var1.substring("wave:".length()); + } else if (var6.startsWith("wave2:")) { + var18 = 2; + var1 = var1.substring("wave2:".length()); + } else if (var6.startsWith("shake:")) { + var18 = 3; + var1 = var1.substring("shake:".length()); + } else if (var6.startsWith("scroll:")) { + var18 = 4; + var1 = var1.substring("scroll:".length()); + } else if (var6.startsWith("slide:")) { + var18 = 5; + var1 = var1.substring("slide:".length()); + } + + var4.packetBuffer.writeByte(var7); + var4.packetBuffer.writeByte(var18); + if (var8 != null && Client.param25 >= 214) { + for (int var19 = 0; var19 < var8.length; ++var19) { + var4.packetBuffer.writeByte(var8[var19]); + } + } + + PcmPlayer.method210(var4.packetBuffer, var1); + if (var0 == class351.field3144.rsOrdinal()) { + var4.packetBuffer.writeByte(var3); + } + + var4.packetBuffer.writeLengthByte(var4.packetBuffer.offset - var5); + return var4; + } +} \ No newline at end of file diff --git a/osrs/src/main/java/class538.java b/osrs/src/main/java/class550.java similarity index 67% rename from osrs/src/main/java/class538.java rename to osrs/src/main/java/class550.java index 8d9eda082..a7965767a 100644 --- a/osrs/src/main/java/class538.java +++ b/osrs/src/main/java/class550.java @@ -1,11 +1,11 @@ import net.runelite.mapping.ObfuscatedName; -@ObfuscatedName("uv") -public class class538 { - @ObfuscatedName("au") - static final int[] field4284; +@ObfuscatedName("vz") +public class class550 { + @ObfuscatedName("at") + public static final int[] field4316; static { - field4284 = new int[]{16777215, 14942979, 16747520, 16772352, 32806, 2375822, 7547266, 16720268, 11884176, 5261772, 10724259, 13970688, 15693351, 16577588, 494960, 2208255, 10178454, 16756679, 13722276, 8105443, 16751190, 2543274, 7591918, 10246609, 10021057, 11894492, 2894892, 9699842, 6371605, 13680896, 4882723, 14504, 8388736, 14025328, 10682978, 4004472}; + field4316 = new int[]{16777215, 14942979, 16747520, 16772352, 32806, 2375822, 7547266, 16720268, 11884176, 5261772, 10724259, 13970688, 15693351, 16577588, 494960, 2208255, 10178454, 16756679, 13722276, 8105443, 16751190, 2543274, 7591918, 10246609, 10021057, 11894492, 2894892, 9699842, 6371605, 13680896, 4882723, 14504, 8388736, 14025328, 10682978, 4004472}; } } \ No newline at end of file diff --git a/osrs/src/main/java/class59.java b/osrs/src/main/java/class59.java index 60e879070..9056e6654 100644 --- a/osrs/src/main/java/class59.java +++ b/osrs/src/main/java/class59.java @@ -2,59 +2,49 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("cd") +import java.util.LinkedList; +import java.util.List; + +@ObfuscatedName("ct") public class class59 { - @ObfuscatedName("fd") - @ObfuscatedSignature( - descriptor = "Lqi;" - ) - @Export("js5Socket") - static AbstractSocket js5Socket; - @ObfuscatedName("jt") - @ObfuscatedSignature( - descriptor = "Lpi;" - ) - @Export("fontBold12") - static Font fontBold12; - @ObfuscatedName("js") - @Export("regionMapArchiveIds") - static int[] regionMapArchiveIds; - @ObfuscatedName("au") + @ObfuscatedName("iz") + static int field302; + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Lbo;" + descriptor = "Lbu;" ) - VorbisFloor field311; - @ObfuscatedName("ae") - boolean field312; + VorbisFloor field305; + @ObfuscatedName("ah") + boolean field303; + @ObfuscatedName("ar") + int[] field307; @ObfuscatedName("ao") - int[] field314; - @ObfuscatedName("at") - int[] field315; - @ObfuscatedName("ac") - boolean[] field313; + int[] field306; + @ObfuscatedName("ab") + boolean[] field304; @ObfuscatedSignature( - descriptor = "(Lbo;Z[I[I[Z)V" + descriptor = "(Lbu;Z[I[I[Z)V" ) class59(VorbisFloor var1, boolean var2, int[] var3, int[] var4, boolean[] var5) { - this.field311 = var1; - this.field312 = var2; - this.field314 = var3; - this.field315 = var4; - this.field313 = var5; + this.field305 = var1; + this.field303 = var2; + this.field307 = var3; + this.field306 = var4; + this.field304 = var5; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "([FIB)V", - garbageValue = "44" + descriptor = "([FII)V", + garbageValue = "-121312327" ) - void method321(float[] var1, int var2) { - int var3 = this.field311.field176.length; - VorbisFloor var10000 = this.field311; - int var4 = VorbisFloor.field172[this.field311.multiplier - 1]; - boolean[] var5 = this.field313; - this.field313[1] = true; + void method329(float[] var1, int var2) { + int var3 = this.field305.field175.length; + VorbisFloor var10000 = this.field305; + int var4 = VorbisFloor.field170[this.field305.multiplier - 1]; + boolean[] var5 = this.field304; + this.field304[1] = true; var5[0] = true; int var6; @@ -63,37 +53,37 @@ void method321(float[] var1, int var2) { int var9; int var10; for (var6 = 2; var6 < var3; ++var6) { - var7 = this.field311.method192(this.field314, var6); - var8 = this.field311.method193(this.field314, var6); - var9 = this.field311.method194(this.field314[var7], this.field315[var7], this.field314[var8], this.field315[var8], this.field314[var6]); - var10 = this.field315[var6]; + var7 = this.field305.method205(this.field307, var6); + var8 = this.field305.method206(this.field307, var6); + var9 = this.field305.method207(this.field307[var7], this.field306[var7], this.field307[var8], this.field306[var8], this.field307[var6]); + var10 = this.field306[var6]; int var11 = var4 - var9; int var13 = (var11 < var9 ? var11 : var9) << 1; if (var10 != 0) { - boolean[] var14 = this.field313; - this.field313[var8] = true; + boolean[] var14 = this.field304; + this.field304[var8] = true; var14[var7] = true; - this.field313[var6] = true; + this.field304[var6] = true; if (var10 >= var13) { - this.field315[var6] = var11 > var9 ? var9 + (var10 - var9) : var11 + (var9 - var10) - 1; + this.field306[var6] = var11 > var9 ? var9 + (var10 - var9) : var11 + (var9 - var10) - 1; } else { - this.field315[var6] = (var10 & 1) != 0 ? var9 - (var10 + 1) / 2 : var10 / 2 + var9; + this.field306[var6] = (var10 & 1) != 0 ? var9 - (var10 + 1) / 2 : var10 / 2 + var9; } } else { - this.field313[var6] = false; - this.field315[var6] = var9; + this.field304[var6] = false; + this.field306[var6] = var9; } } this.VarbisFloor_sort(0, var3 - 1); var6 = 0; - var7 = this.field311.multiplier * this.field315[0]; + var7 = this.field305.multiplier * this.field306[0]; for (var8 = 1; var8 < var3; ++var8) { - if (this.field313[var8]) { - var9 = this.field314[var8]; - var10 = this.field311.multiplier * this.field315[var8]; - this.field311.method195(var6, var7, var9, var10, var1, var2); + if (this.field304[var8]) { + var9 = this.field307[var8]; + var10 = this.field305.multiplier * this.field306[var8]; + this.field305.method208(var6, var7, var9, var10, var1, var2); if (var9 >= var2) { return; } @@ -103,7 +93,7 @@ void method321(float[] var1, int var2) { } } - var10000 = this.field311; + var10000 = this.field305; float var16 = VorbisFloor.VorbisFloor_decibelStatics[var7]; for (var9 = var6; var9 < var2; ++var9) { @@ -112,66 +102,268 @@ void method321(float[] var1, int var2) { } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(B)Z", - garbageValue = "81" + descriptor = "(I)Z", + garbageValue = "-1465438441" ) - boolean method322() { - return this.field312; + boolean method330() { + return this.field303; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( descriptor = "(III)V", - garbageValue = "1743044108" + garbageValue = "1888348492" ) @Export("VarbisFloor_sort") void VarbisFloor_sort(int var1, int var2) { if (var1 < var2) { int var3 = var1; - int var4 = this.field314[var1]; - int var5 = this.field315[var1]; - boolean var6 = this.field313[var1]; + int var4 = this.field307[var1]; + int var5 = this.field306[var1]; + boolean var6 = this.field304[var1]; for (int var7 = var1 + 1; var7 <= var2; ++var7) { - int var8 = this.field314[var7]; + int var8 = this.field307[var7]; if (var8 < var4) { - this.field314[var3] = var8; - this.field315[var3] = this.field315[var7]; - this.field313[var3] = this.field313[var7]; + this.field307[var3] = var8; + this.field306[var3] = this.field306[var7]; + this.field304[var3] = this.field304[var7]; ++var3; - this.field314[var7] = this.field314[var3]; - this.field315[var7] = this.field315[var3]; - this.field313[var7] = this.field313[var3]; + this.field307[var7] = this.field307[var3]; + this.field306[var7] = this.field306[var3]; + this.field304[var7] = this.field304[var3]; } } - this.field314[var3] = var4; - this.field315[var3] = var5; - this.field313[var3] = var6; + this.field307[var3] = var4; + this.field306[var3] = var5; + this.field304[var3] = var6; this.VarbisFloor_sort(var1, var3 - 1); this.VarbisFloor_sort(var3 + 1, var2); } } - @ObfuscatedName("at") + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "(CLon;B)I", - garbageValue = "82" + descriptor = "(I)V", + garbageValue = "-1858684336" ) - @Export("lowercaseChar") - static int lowercaseChar(char var0, Language var1) { - int var2 = var0 << 4; - if (Character.isUpperCase(var0) || Character.isTitleCase(var0)) { - var0 = Character.toLowerCase(var0); - var2 = (var0 << 4) + 1; + static void method332() { + ItemContainer.itemContainers = new NodeHashTable(32); + } + + @ObfuscatedName("cf") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "5" + ) + static int method333(int var0, Script var1, boolean var2) { + int var3; + int var5; + int var7; + Object var21; + DbTable var22; + if (var0 != 7500 && var0 != 7508) { + if (var0 != 7501) { + int var4; + int var6; + if (var0 == 7502) { + DbTableType.Interpreter_intStackSize -= 3; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 2]; + var6 = SequenceDefinition.method1041(var4); + var7 = ZoneOperation.method1630(var4); + int var8 = class134.method731(var4); + DbRowType var23 = class469.getDbRowType(var3); + DbTableType var24 = FadeOutTask.getDbTableType(var6); + int[] var25 = var24.types[var7]; + int var12 = 0; + int var13 = var25.length; + if (var8 >= 0) { + if (var8 >= var13) { + throw new RuntimeException("Tuple index out-of-bounds. Requested: " + var8 + ", Max: " + var13); + } + + var12 = var8; + var13 = var8 + 1; + } + + Object[] var14 = var23.getColumnType(var7); + if (var14 == null && var24.defaultValues != null) { + var14 = var24.defaultValues[var7]; + } + + int var15; + int var16; + if (var14 == null) { + for (var15 = var12; var15 < var13; ++var15) { + var16 = var25[var15]; + class514 var17 = class472.method2349(var16); + if (var17 == class514.field4125) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = ""; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = MusicPatchNode.method1723(var16); + } + } + + return 1; + } else { + var15 = var14.length / var25.length; + if (var5 >= 0 && var5 < var15) { + for (var16 = var12; var16 < var13; ++var16) { + int var19 = var16 + var25.length * var5; + class514 var18 = class472.method2349(var25[var16]); + if (var18 == class514.field4125) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = (String)var14[var19]; + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (Integer)var14[var19]; + } + } + + return 1; + } else { + throw new RuntimeException(); + } + } + } else if (var0 == 7503) { + DbTableType.Interpreter_intStackSize -= 2; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + var4 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize + 1]; + var5 = 0; + var6 = SequenceDefinition.method1041(var4); + var7 = ZoneOperation.method1630(var4); + DbRowType var26 = class469.getDbRowType(var3); + DbTableType var9 = FadeOutTask.getDbTableType(var6); + int[] var10 = var9.types[var7]; + Object[] var11 = var26.getColumnType(var7); + if (var11 == null && var9.defaultValues != null) { + var11 = var9.defaultValues[var7]; + } + + if (var11 != null) { + var5 = var11.length / var10.length; + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5; + return 1; + } else if (var0 != 7504 && var0 != 7510) { + if (var0 == 7505) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + DbRowType var28 = class469.getDbRowType(var3); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var28.tableId; + return 1; + } else if (var0 == 7506) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var4 = -1; + if (DevicePcmPlayerProvider.field67 != null && var3 >= 0 && var3 < DevicePcmPlayerProvider.field67.size()) { + var4 = (Integer)DevicePcmPlayerProvider.field67.get(var3); + } + + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4; + return 1; + } else if (var0 != 7507 && var0 != 7509) { + return 2; + } else { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var21 = WorldMapLabelSize.method1187(var3); + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var22 = class168.getDbTable(var5); + if (var22 == null) { + throw new RuntimeException(); + } else if (SequenceDefinition.method1041(var5) != Client.field545) { + throw new RuntimeException(); + } else if (DevicePcmPlayerProvider.field67 == null && DevicePcmPlayerProvider.field67.isEmpty()) { + throw new RuntimeException(); + } else { + var7 = class134.method731(var5); + List var20 = var22.method2518(var21, var7); + DevicePcmPlayerProvider.field67 = new LinkedList(DevicePcmPlayerProvider.field67); + if (var20 != null) { + DevicePcmPlayerProvider.field67.retainAll(var20); + } else { + DevicePcmPlayerProvider.field67.clear(); + } + + class10.field30 = DevicePcmPlayerProvider.field67.iterator(); + if (var0 == 7507) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = DevicePcmPlayerProvider.field67.size(); + } + + return 1; + } + } + } else { + --DbTableType.Interpreter_intStackSize; + var3 = Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize]; + DbTable var27 = UserComparator4.method668(var3); + if (var27 == null) { + throw new RuntimeException(); + } else { + DevicePcmPlayerProvider.field67 = var27.method2518(0, 0); + var5 = 0; + if (DevicePcmPlayerProvider.field67 != null) { + Client.field545 = var3; + class10.field30 = DevicePcmPlayerProvider.field67.iterator(); + var5 = DevicePcmPlayerProvider.field67.size(); + } + + if (var0 == 7504) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var5; + } + + return 1; + } + } + } else { + if (class10.field30 != null && class10.field30.hasNext()) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = (Integer)class10.field30.next(); + } else { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = -1; + } + + return 1; + } + } else { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var21 = WorldMapLabelSize.method1187(var3); + var5 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + var22 = class168.getDbTable(var5); + if (var22 == null) { + throw new RuntimeException(); + } else { + var7 = class134.method731(var5); + DevicePcmPlayerProvider.field67 = var22.method2518(var21, var7); + if (DevicePcmPlayerProvider.field67 != null) { + Client.field545 = SequenceDefinition.method1041(var5); + class10.field30 = DevicePcmPlayerProvider.field67.iterator(); + if (var0 == 7500) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = DevicePcmPlayerProvider.field67.size(); + } + } else { + Client.field545 = -1; + class10.field30 = null; + if (var0 == 7500) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = 0; + } + } + + return 1; + } } + } - if (var0 == 241 && var1 == Language.Language_ES) { - var2 = 1762; + @ObfuscatedName("ke") + @ObfuscatedSignature( + descriptor = "(Lcb;III)V", + garbageValue = "1570010040" + ) + static final void method334(MenuAction var0, int var1, int var2) { + if (var0 != null) { + class407.menuAction(var0.param0, var0.param1, var0.opcode, var0.identifier, var0.itemId, var0.action, var0.target, var1, var2); } - return var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/class6.java b/osrs/src/main/java/class6.java index eba6bf3f8..dad10b5f0 100644 --- a/osrs/src/main/java/class6.java +++ b/osrs/src/main/java/class6.java @@ -2,166 +2,246 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("az") -public enum class6 implements class371 { - @ObfuscatedName("au") +import java.awt.*; +import java.util.ArrayList; + +@ObfuscatedName("aa") +public enum class6 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Laz;" + descriptor = "Laa;" ) - field6(0, 0); + field9(0, 0); - @ObfuscatedName("wi") + @ObfuscatedName("wa") @ObfuscatedSignature( - descriptor = "Lru;" + descriptor = "Lov;" ) - @Export("masterDisk") - static ArchiveDisk masterDisk; - @ObfuscatedName("ae") - public final int field8; - @ObfuscatedName("ao") - final int field7; + @Export("grandExchangeEvents") + static GrandExchangeEvents grandExchangeEvents; + @ObfuscatedName("bl") + @Export("loginScreenFontMetrics") + static FontMetrics loginScreenFontMetrics; + @ObfuscatedName("km") + static int field6; + @ObfuscatedName("ah") + final int field10; + @ObfuscatedName("ar") + final int field11; class6(int var3, int var4) { - this.field8 = var3; - this.field7 = var4; + this.field10 = var3; + this.field11 = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field7; + return this.field11; } - @ObfuscatedName("bn") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "1893076970" + descriptor = "(Lol;Lol;ZII)V", + garbageValue = "-1391050872" ) - static int method12(int var0, Script var1, boolean var2) { - return 2; + static void method14(AbstractArchive var0, AbstractArchive var1, boolean var2, int var3) { + if (class384.clearLoginScreen) { + if (var3 == 4) { + UserComparator7.method674(4); + } + + } else { + if (var3 == 0) { + ClientPreferences.method568(var2); + } else { + UserComparator7.method674(var3); + } + + Rasterizer2D.Rasterizer2D_clear(); + byte[] var4 = var0.takeFileByNames("title.jpg", ""); + class250.leftTitleSprite = WorldMapArchiveLoader.method2391(var4); + Login.rightTitleSprite = class250.leftTitleSprite.mirrorHorizontally(); + MenuAction.method435(var1, Client.worldProperties); + Login.titleboxSprite = class313.SpriteBuffer_getIndexedSpriteByName(var1, "titlebox", ""); + Login.titlebuttonSprite = class313.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton", ""); + Login.field776 = class313.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton_large", ""); + class11.field38 = class313.SpriteBuffer_getIndexedSpriteByName(var1, "play_now_text", ""); + class313.SpriteBuffer_getIndexedSpriteByName(var1, "titlebutton_wide42,1", ""); + class134.runesSprite = Skills.method1895(var1, "runes", ""); + Login.title_muteSprite = Skills.method1895(var1, "title_mute", ""); + class310.options_buttons_0Sprite = class313.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,0", ""); + Login.field779 = class313.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,4", ""); + FriendsList.options_buttons_2Sprite = class313.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,2", ""); + GrandExchangeEvents.field3611 = class313.SpriteBuffer_getIndexedSpriteByName(var1, "options_radio_buttons,6", ""); + NPCComposition.field1532 = class310.options_buttons_0Sprite.subWidth; + class113.field1178 = class310.options_buttons_0Sprite.subHeight; + EnumComposition.field1505 = new LoginScreenAnimation(class134.runesSprite); + if (var2) { + Login.Login_username = ""; + Login.Login_password = ""; + Login.field769 = new String[8]; + Login.field753 = 0; + } + + class53.field256 = 0; + NewShit.otp = ""; + Login.field744 = true; + Login.worldSelectOpen = false; + if (!WorldMapIcon_1.clientPreferences.getTitleMusicDisabled()) { + ArrayList var5 = new ArrayList(); + var5.add(new MusicSong(class514.archive6, "scape main", "", 255, false)); + PendingSpawn.method505(var5, 0, 0, 0, 100, false); + } else { + WorldMapManager.method1265(0, 0); + } + + class472.method2350(); + class157.method827().method1954(false); + class384.clearLoginScreen = true; + Login.xPadding = (Language.canvasWidth - 765) / 2; + Login.loginBoxX = Login.xPadding + 202; + class157.loginBoxCenter = Login.loginBoxX + 180; + class250.leftTitleSprite.drawAt(Login.xPadding, 0); + Login.rightTitleSprite.drawAt(Login.xPadding + 382, 0); + Login.logoSprite.drawAt(Login.xPadding + 382 - Login.logoSprite.subWidth / 2, 18); + } } - @ObfuscatedName("ne") + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "(Lmi;IIIB)V", - garbageValue = "32" + descriptor = "(IIIIIZI)Luz;", + garbageValue = "-328465387" ) - @Export("drawMinimap") - static final void drawMinimap(Widget var0, int var1, int var2, int var3) { - class301.method1622(); - SpriteMask var4 = var0.getSpriteMask(false); - if (var4 != null) { - Rasterizer2D.Rasterizer2D_setClip(var1, var2, var4.width + var1, var2 + var4.height); - if (Client.minimapState != 2 && Client.minimapState != 5) { - int var5 = Client.camAngleY & 2047; - int var6 = VarbitComposition.localPlayer.x / 32 + 48; - int var7 = 464 - VarbitComposition.localPlayer.y / 32; - AbstractUserComparator.sceneMinimapSprite.drawRotatedMaskedCenteredAround(var1, var2, var4.width, var4.height, var6, var7, var5, 256, var4.xStarts, var4.xWidths); - - int var8; - int var9; - int var10; - for (var8 = 0; var8 < Client.mapIconCount; ++var8) { - var9 = Client.mapIconXs[var8] * 4 + 2 - VarbitComposition.localPlayer.x / 32; - var10 = Client.mapIconYs[var8] * 4 + 2 - VarbitComposition.localPlayer.y / 32; - class210.drawSpriteOnMinimap(var1, var2, var9, var10, Client.mapIcons[var8], var4); - } + @Export("getItemSprite") + public static final SpritePixels getItemSprite(int var0, int var1, int var2, int var3, int var4, boolean var5) { + if (var1 == -1) { + var4 = 0; + } else if (var4 == 2 && var1 != 1) { + var4 = 1; + } - int var11; - int var12; - for (var8 = 0; var8 < 104; ++var8) { - for (var9 = 0; var9 < 104; ++var9) { - NodeDeque var14 = Client.groundItems[HealthBar.Client_plane][var8][var9]; - if (var14 != null) { - var11 = var8 * 4 + 2 - VarbitComposition.localPlayer.x / 32; - var12 = var9 * 4 + 2 - VarbitComposition.localPlayer.y / 32; - class210.drawSpriteOnMinimap(var1, var2, var11, var12, FloorOverlayDefinition.mapDotSprites[0], var4); - } - } - } + long var6 = ((long)var4 << 40) + (long)var0 + ((long)var1 << 16) + ((long)var2 << 38) + ((long)var3 << 42); + SpritePixels var8; + if (!var5) { + var8 = (SpritePixels)ItemComposition.ItemDefinition_cachedSprites.get(var6); + if (var8 != null) { + return var8; + } + } - for (var8 = 0; var8 < Client.npcCount; ++var8) { - NPC var15 = Client.npcs[Client.npcIndices[var8]]; - if (var15 != null && var15.isVisible()) { - NPCComposition var17 = var15.definition; - if (var17 != null && var17.transforms != null) { - var17 = var17.transform(); - } - - if (var17 != null && var17.drawMapDot && var17.isInteractable) { - var11 = var15.x / 32 - VarbitComposition.localPlayer.x / 32; - var12 = var15.y / 32 - VarbitComposition.localPlayer.y / 32; - class210.drawSpriteOnMinimap(var1, var2, var11, var12, FloorOverlayDefinition.mapDotSprites[1], var4); - } - } - } + ItemComposition var9 = class214.ItemDefinition_get(var0); + if (var1 > 1 && var9.countobj != null) { + int var10 = -1; - var8 = Players.Players_count; - int[] var18 = Players.Players_indices; - - for (var10 = 0; var10 < var8; ++var10) { - Player var16 = Client.players[var18[var10]]; - if (var16 != null && var16.isVisible() && !var16.isHidden && var16 != VarbitComposition.localPlayer) { - var12 = var16.x / 32 - VarbitComposition.localPlayer.x / 32; - int var13 = var16.y / 32 - VarbitComposition.localPlayer.y / 32; - if (var16.isFriend()) { - class210.drawSpriteOnMinimap(var1, var2, var12, var13, FloorOverlayDefinition.mapDotSprites[3], var4); - } else if (VarbitComposition.localPlayer.team != 0 && var16.team != 0 && var16.team == VarbitComposition.localPlayer.team) { - class210.drawSpriteOnMinimap(var1, var2, var12, var13, FloorOverlayDefinition.mapDotSprites[4], var4); - } else if (var16.isFriendsChatMember()) { - class210.drawSpriteOnMinimap(var1, var2, var12, var13, FloorOverlayDefinition.mapDotSprites[5], var4); - } else if (var16.isClanMember()) { - class210.drawSpriteOnMinimap(var1, var2, var12, var13, FloorOverlayDefinition.mapDotSprites[6], var4); - } else { - class210.drawSpriteOnMinimap(var1, var2, var12, var13, FloorOverlayDefinition.mapDotSprites[2], var4); - } - } + for (int var11 = 0; var11 < 10; ++var11) { + if (var1 >= var9.countco[var11] && var9.countco[var11] != 0) { + var10 = var9.countobj[var11]; } + } - if (Client.hintArrowType != 0 && Client.cycle % 20 < 10) { - if (Client.hintArrowType == 1 && Client.hintArrowNpcIndex >= 0 && Client.hintArrowNpcIndex < Client.npcs.length) { - NPC var19 = Client.npcs[Client.hintArrowNpcIndex]; - if (var19 != null) { - var11 = var19.x / 32 - VarbitComposition.localPlayer.x / 32; - var12 = var19.y / 32 - VarbitComposition.localPlayer.y / 32; - class408.worldToMinimap(var1, var2, var11, var12, Message.mapMarkerSprites[1], var4); - } - } - - if (Client.hintArrowType == 2) { - var10 = Client.hintArrowX * 4 - UrlRequester.baseX * 4 + 2 - VarbitComposition.localPlayer.x / 32; - var11 = Client.hintArrowY * 4 - class47.baseY * 4 + 2 - VarbitComposition.localPlayer.y / 32; - class408.worldToMinimap(var1, var2, var10, var11, Message.mapMarkerSprites[1], var4); - } - - if (Client.hintArrowType == 10 && Client.hintArrowPlayerIndex >= 0 && Client.hintArrowPlayerIndex < Client.players.length) { - Player var20 = Client.players[Client.hintArrowPlayerIndex]; - if (var20 != null) { - var11 = var20.x / 32 - VarbitComposition.localPlayer.x / 32; - var12 = var20.y / 32 - VarbitComposition.localPlayer.y / 32; - class408.worldToMinimap(var1, var2, var11, var12, Message.mapMarkerSprites[1], var4); - } - } - } + if (var10 != -1) { + var9 = class214.ItemDefinition_get(var10); + } + } - if (Client.destinationX != 0) { - var10 = Client.destinationX * 4 + 2 - VarbitComposition.localPlayer.x / 32; - var11 = Client.destinationY * 4 + 2 - VarbitComposition.localPlayer.y / 32; - class210.drawSpriteOnMinimap(var1, var2, var10, var11, Message.mapMarkerSprites[0], var4); + Model var22 = var9.getModel(1); + if (var22 == null) { + return null; + } else { + SpritePixels var23 = null; + if (var9.noteTemplate != -1) { + var23 = getItemSprite(var9.note, 10, 1, 0, 0, true); + if (var23 == null) { + return null; } + } else if (var9.notedId != -1) { + var23 = getItemSprite(var9.unnotedId, var1, var2, var3, 0, false); + if (var23 == null) { + return null; + } + } else if (var9.placeholderTemplate != -1) { + var23 = getItemSprite(var9.placeholder, var1, 0, 0, 0, false); + if (var23 == null) { + return null; + } + } + + int[] var12 = Rasterizer2D.Rasterizer2D_pixels; + int var13 = Rasterizer2D.Rasterizer2D_width; + int var14 = Rasterizer2D.Rasterizer2D_height; + float[] var15 = Rasterizer2D.field4245; + int[] var16 = new int[4]; + Rasterizer2D.Rasterizer2D_getClipArray(var16); + var8 = new SpritePixels(36, 32); + Rasterizer3D.method1426(var8.pixels, 36, 32, (float[])null); + Rasterizer2D.Rasterizer2D_clear(); + Rasterizer3D.method1427(); + Rasterizer3D.method1430(16, 16); + Rasterizer3D.clips.field2457 = false; + if (var9.placeholderTemplate != -1) { + var23.drawTransBgAt(0, 0); + } + + int var17 = var9.zoom2d; + if (var5) { + var17 = (int)(1.5D * (double)var17); + } else if (var2 == 2) { + var17 = (int)((double)var17 * 1.04D); + } + + int var18 = var17 * Rasterizer3D.Rasterizer3D_sine[var9.xan2d] >> 16; + int var19 = var17 * Rasterizer3D.Rasterizer3D_cosine[var9.xan2d] >> 16; + var22.calculateBoundsCylinder(); + var22.method1556(0, var9.yan2d, var9.zan2d, var9.xan2d, var9.offsetX2d, var22.height / 2 + var18 + var9.offsetY2d, var19 + var9.offsetY2d); + if (var9.notedId != -1) { + var23.drawTransBgAt(0, 0); + } + + if (var2 >= 1) { + var8.outline(1); + } - if (!VarbitComposition.localPlayer.isHidden) { - Rasterizer2D.Rasterizer2D_fillRectangle(var4.width / 2 + var1 - 1, var4.height / 2 + var2 - 1, 3, 3, 16777215); + if (var2 >= 2) { + var8.outline(16777215); + } + + if (var3 != 0) { + var8.shadow(var3); + } + + Rasterizer3D.method1426(var8.pixels, 36, 32, (float[])null); + if (var9.noteTemplate != -1) { + var23.drawTransBgAt(0, 0); + } + + if (var4 == 1 || var4 == 2 && var9.isStackable == 1) { + Font var20 = TaskHandler.ItemDefinition_fontPlain11; + String var21; + if (var1 < 100000) { + var21 = "" + var1 + ""; + } else if (var1 < 10000000) { + var21 = "" + var1 / 1000 + "K" + ""; + } else { + var21 = "" + var1 / 1000000 + "M" + ""; } - } else { - Rasterizer2D.Rasterizer2D_fillMaskedRectangle(var1, var2, 0, var4.xStarts, var4.xWidths); + + var20.draw(var21, 0, 9, 16776960, 1); + } + + if (!var5) { + ItemComposition.ItemDefinition_cachedSprites.put(var8, var6); } - Client.field408[var3] = true; + Rasterizer3D.method1426(var12, var13, var14, var15); + Rasterizer2D.Rasterizer2D_setClipArray(var16); + Rasterizer3D.method1427(); + Rasterizer3D.clips.field2457 = true; + return var8; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class60.java b/osrs/src/main/java/class60.java index 39dbfd5d4..0d4fe533d 100644 --- a/osrs/src/main/java/class60.java +++ b/osrs/src/main/java/class60.java @@ -2,80 +2,249 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("ce") +@ObfuscatedName("cw") public class class60 { - @ObfuscatedName("au") - byte[] field316; - @ObfuscatedName("ae") - int field317; - @ObfuscatedName("ao") - int field318; + @ObfuscatedName("ws") + @ObfuscatedSignature( + descriptor = "Lsb;" + ) + static PlatformInfo field312; + @ObfuscatedName("ab") + @Export("Interpreter_stringLocals") + static String[] Interpreter_stringLocals; + @ObfuscatedName("io") + @ObfuscatedSignature( + descriptor = "Lel;" + ) + @Export("urlRequester") + static UrlRequester urlRequester; + @ObfuscatedName("kd") + @ObfuscatedSignature( + descriptor = "[Luz;" + ) + @Export("headIconHintSprites") + static SpritePixels[] headIconHintSprites; + @ObfuscatedName("oc") + @Export("menuY") + static int menuY; + @ObfuscatedName("uz") + @Export("cameraLookAtSpeed") + static int cameraMoveToSpeed; + @ObfuscatedName("at") + byte[] field314; + @ObfuscatedName("ah") + int field315; + @ObfuscatedName("ar") + int field316; class60() { - this.field316 = null; - this.field317 = 0; - this.field318 = 0; + this.field314 = null; + this.field315 = 0; + this.field316 = 0; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)I", - garbageValue = "-62" + descriptor = "(II)I", + garbageValue = "1826933410" ) - int method325(int var1) { + int method335(int var1) { int var2 = 0; int var3; int var4; - for (var3 = 0; var1 >= 8 - this.field318; var1 -= var4) { - var4 = 8 - this.field318; + for (var3 = 0; var1 >= 8 - this.field316; var1 -= var4) { + var4 = 8 - this.field316; int var5 = (1 << var4) - 1; - var2 += (this.field316[this.field317] >> this.field318 & var5) << var3; - this.field318 = 0; - ++this.field317; + var2 += (this.field314[this.field315] >> this.field316 & var5) << var3; + this.field316 = 0; + ++this.field315; var3 += var4; } if (var1 > 0) { var4 = (1 << var1) - 1; - var2 += (this.field316[this.field317] >> this.field318 & var4) << var3; - this.field318 += var1; + var2 += (this.field314[this.field315] >> this.field316 & var4) << var3; + this.field316 += var1; } return var2; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "-36" + garbageValue = "100" ) - int method326() { - int var1 = this.field316[this.field317] >> this.field318 & 1; - ++this.field318; - this.field317 += this.field318 >> 3; - this.field318 &= 7; + int method336() { + int var1 = this.field314[this.field315] >> this.field316 & 1; + ++this.field316; + this.field315 += this.field316 >> 3; + this.field316 &= 7; return var1; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "([BII)V", - garbageValue = "1812215657" + descriptor = "([BIB)V", + garbageValue = "-31" ) - void method327(byte[] var1, int var2) { - this.field316 = var1; - this.field317 = var2; - this.field318 = 0; + void method337(byte[] var1, int var2) { + this.field314 = var1; + this.field315 = var2; + this.field316 = 0; + } + + @ObfuscatedName("ae") + @ObfuscatedSignature( + descriptor = "(ILdt;ZB)I", + garbageValue = "3" + ) + static int method338(int var0, Script var1, boolean var2) { + Widget var3 = HealthBarDefinition.widgetDefinition.method1733(Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]); + if (var0 == 2600) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollX; + return 1; + } else if (var0 == 2601) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollY; + return 1; + } else if (var0 == 2602) { + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var3.text; + return 1; + } else if (var0 == 2603) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollWidth; + return 1; + } else if (var0 == 2604) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.scrollHeight; + return 1; + } else if (var0 == 2605) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelZoom; + return 1; + } else if (var0 == 2606) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleX; + return 1; + } else if (var0 == 2607) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleZ; + return 1; + } else if (var0 == 2608) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelAngleY; + return 1; + } else if (var0 == 2609) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.transparencyTop; + return 1; + } else if (var0 == 2610) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.transparencyBot; + return 1; + } else if (var0 == 2611) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.color; + return 1; + } else if (var0 == 2612) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.color2; + return 1; + } else if (var0 == 2613) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.fillMode.rsOrdinal(); + return 1; + } else if (var0 == 2614) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0; + return 1; + } else { + class336 var4; + if (var0 == 2617) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2923 : 0; + } + + if (var0 == 2618) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2921 : 0; + return 1; + } else { + class341 var7; + if (var0 == 2619) { + var7 = var3.method1871(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1808().method2056() : ""; + return 1; + } else if (var0 == 2620) { + var4 = var3.method1872(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var4 != null ? var4.field2922: 0; + return 1; + } else if (var0 == 2621) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1818() : 0; + return 1; + } else if (var0 == 2622) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1819() : 0; + return 1; + } else if (var0 == 2623) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1820() : 0; + return 1; + } else if (var0 == 2624) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null && var7.method1810() ? 1 : 0; + return 1; + } else if (var0 != 2625) { + if (var0 == 2626) { + var7 = var3.method1871(); + Interpreter.Interpreter_stringStack[++class127.Interpreter_stringStackSize - 1] = var7 != null ? var7.method1809().method2131() : ""; + return 1; + } else if (var0 == 2627) { + var7 = var3.method1871(); + int var5 = var7 != null ? var7.method1814() : 0; + int var6 = var7 != null ? var7.method1813() : 0; + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Math.min(var5, var6); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = Math.max(var5, var6); + return 1; + } else if (var0 == 2628) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1813() : 0; + return 1; + } else if (var0 == 2629) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1822() : 0; + return 1; + } else if (var0 == 2630) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1821() : 0; + return 1; + } else if (var0 == 2631) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1823() : 0; + return 1; + } else if (var0 == 2632) { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null ? var7.method1824() : 0; + return 1; + } else { + class27 var8; + if (var0 == 2633) { + var8 = var3.method1873(); + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = var8 != null ? var8.method115(Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]) : 0; + return 1; + } else if (var0 == 2634) { + var8 = var3.method1873(); + Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1] = var8 != null ? var8.method116((char)Interpreter.Interpreter_intStack[DbTableType.Interpreter_intStackSize - 1]) : 0; + return 1; + } else { + return 2; + } + } + } else { + var7 = var3.method1871(); + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = var7 != null && var7.method1811() ? 1 : 0; + return 1; + } + } + } } - @ObfuscatedName("ai") + @ObfuscatedName("kw") @ObfuscatedSignature( - descriptor = "(IZI)Ljava/lang/String;", - garbageValue = "-1921565351" + descriptor = "(B)Z", + garbageValue = "-128" ) - @Export("intToString") - public static String intToString(int var0, boolean var1) { - return var1 && var0 >= 0 ? class102.method605(var0, 10, var1) : Integer.toString(var0); + static final boolean method339() { + return Client.isMenuOpen; } } \ No newline at end of file diff --git a/osrs/src/main/java/class7.java b/osrs/src/main/java/class7.java index 712bc1d36..679f4df58 100644 --- a/osrs/src/main/java/class7.java +++ b/osrs/src/main/java/class7.java @@ -1,3 +1,4 @@ +import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @@ -5,82 +6,91 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; -@ObfuscatedName("ap") +@ObfuscatedName("ac") public class class7 { - @ObfuscatedName("aq") - static int field9; - @ObfuscatedName("au") - ExecutorService field10; - @ObfuscatedName("ae") - Future field11; - @ObfuscatedName("ao") + @ObfuscatedName("bq") + @ObfuscatedSignature( + descriptor = "Lrv;" + ) + static Bounds field13; + @ObfuscatedName("fc") @ObfuscatedSignature( - descriptor = "Ltm;" + descriptor = "Loh;" ) - final Buffer field13; + static Archive field12; @ObfuscatedName("at") + ExecutorService field14; + @ObfuscatedName("ah") + Future field15; + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "Luj;" + ) + final Buffer field17; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Lat;" + descriptor = "Lao;" ) - final class3 field12; + final class3 field16; @ObfuscatedSignature( - descriptor = "(Ltm;Lat;)V" + descriptor = "(Luj;Lao;)V" ) public class7(Buffer var1, class3 var2) { - this.field10 = Executors.newSingleThreadExecutor(); - this.field13 = var1; - this.field12 = var2; - this.method17(); + this.field14 = Executors.newSingleThreadExecutor(); + this.field17 = var1; + this.field16 = var2; + this.method20(); } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "-1836441256" + garbageValue = "-1139388423" ) - public boolean method14() { - return this.field11.isDone(); + public boolean method17() { + return this.field15.isDone(); } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "2092027940" + descriptor = "(B)V", + garbageValue = "-85" ) - public void method15() { - this.field10.shutdown(); - this.field10 = null; + public void method18() { + this.field14.shutdown(); + this.field14 = null; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(B)Ltm;", - garbageValue = "-120" + descriptor = "(I)Luj;", + garbageValue = "1719469539" ) - public Buffer method16() { + public Buffer method19() { try { - return (Buffer)this.field11.get(); + return (Buffer)this.field15.get(); } catch (Exception var2) { return null; } } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)V", - garbageValue = "-691162885" + garbageValue = "670467057" ) - void method17() { - this.field11 = this.field10.submit(new class1(this, this.field13, this.field12)); + void method20() { + this.field15 = this.field14.submit(new class1(this, this.field17, this.field16)); } - @ObfuscatedName("iy") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(IB)I", + descriptor = "(IB)Z", garbageValue = "1" ) - static final int method18(int var0) { - return Math.abs(var0 - UserComparator10.cameraYaw) > 1024 ? var0 + 2048 * (var0 < UserComparator10.cameraYaw ? 1 : -1) : var0; + @Export("isWorldMapEvent") + public static boolean isWorldMapEvent(int var0) { + return var0 == 10 || var0 == 11 || var0 == 12 || var0 == 13 || var0 == 14 || var0 == 15 || var0 == 16 || var0 == 17; } } \ No newline at end of file diff --git a/osrs/src/main/java/class72.java b/osrs/src/main/java/class72.java index ea0e33576..d70bbda62 100644 --- a/osrs/src/main/java/class72.java +++ b/osrs/src/main/java/class72.java @@ -2,37 +2,107 @@ import net.runelite.mapping.ObfuscatedSignature; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.Iterator; -@ObfuscatedName("cj") +@ObfuscatedName("ch") public class class72 { - @ObfuscatedName("ac") - static final BigInteger field731; - @ObfuscatedName("ai") - static final BigInteger field732; - @ObfuscatedName("cd") - static int field730; + @ObfuscatedName("ab") + static final BigInteger field729; + @ObfuscatedName("au") + static final BigInteger field730; static { - field731 = new BigInteger("80782894952180643741752986186714059433953886149239752893425047584684715842049"); - field732 = new BigInteger("7237300117305667488707183861728052766358166655052137727439795191253340127955075499635575104901523446809299097934591732635674173519120047404024393881551683"); + field729 = new BigInteger("80782894952180643741752986186714059433953886149239752893425047584684715842049"); + field730 = new BigInteger("7237300117305667488707183861728052766358166655052137727439795191253340127955075499635575104901523446809299097934591732635674173519120047404024393881551683"); + } + + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(II)Lep;", + garbageValue = "1917414227" + ) + static class129 method432(int var0) { + class129[] var1 = new class129[]{class129.field1244, class129.field1241, class129.field1243, class129.field1242, class129.field1240}; + class129 var2 = (class129)class12.findEnumerated(var1, var0); + if (var2 == null) { + var2 = class129.field1244; + } + + return var2; } - @ObfuscatedName("hh") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)V", - garbageValue = "-1604625566" + descriptor = "(B)V", + garbageValue = "1" ) - static void method424() { - Client.compass = null; - class167.redHintArrowSprite = null; - class299.mapSceneSprites = null; - class178.headIconPkSprites = null; - class502.headIconPrayerSprites = null; - ArchiveLoader.headIconHintSprites = null; - Message.mapMarkerSprites = null; - class152.crossSprites = null; - FloorOverlayDefinition.mapDotSprites = null; - GrandExchangeOfferOwnWorldComparator.scrollBarSprites = null; - class451.field3876 = null; + public static void method431() { + class182.e1.clear(); + } + + @ObfuscatedName("ac") + @ObfuscatedSignature( + descriptor = "(Lol;IS)V", + garbageValue = "-25767" + ) + public static void method433(AbstractArchive var0, int var1) { + if (!class316.field2787.isEmpty()) { + ArrayList var2 = new ArrayList(); + Iterator var3 = class316.field2787.iterator(); + + while (var3.hasNext()) { + MusicSong var4 = (MusicSong)var3.next(); + var4.field2883 = false; + var4.field2882 = false; + var4.field2884 = false; + var4.field2880 = false; + var4.musicTrackArchive = var0; + var4.musicTrackVolume = var1; + var4.field2886 = 0.0F; + var2.add(var4); + } + + PendingSpawn.method505(var2, class316.musicPlayerStatus, class316.field2794, class316.field2795, class316.field2796, false); + } + } + + @ObfuscatedName("bj") + @ObfuscatedSignature( + descriptor = "(ILdt;ZI)I", + garbageValue = "1084979795" + ) + static int method434(int var0, Script var1, boolean var2) { + if (var0 == 5306) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = ApproximateRouteStrategy.getWindowedMode(); + return 1; + } else { + int var3; + if (var0 == 5307) { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3 == 1 || var3 == 2) { + class9.setWindowedMode(var3); + } + + return 1; + } else if (var0 == 5308) { + Interpreter.Interpreter_intStack[++DbTableType.Interpreter_intStackSize - 1] = WorldMapIcon_1.clientPreferences.method563(); + return 1; + } else if (var0 != 5309) { + if (var0 == 5310) { + --DbTableType.Interpreter_intStackSize; + return 1; + } else { + return 2; + } + } else { + var3 = Interpreter.Interpreter_intStack[--DbTableType.Interpreter_intStackSize]; + if (var3 == 1 || var3 == 2) { + WorldMapIcon_1.clientPreferences.method562(var3); + } + + return 1; + } + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class74.java b/osrs/src/main/java/class74.java index ca28c2541..58ab54581 100644 --- a/osrs/src/main/java/class74.java +++ b/osrs/src/main/java/class74.java @@ -1,24 +1,20 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; -import net.runelite.mapping.ObfuscatedSignature; import java.math.BigInteger; -@ObfuscatedName("ct") +@ObfuscatedName("cz") public class class74 { - @ObfuscatedName("au") + @ObfuscatedName("at") static final BigInteger field742; - @ObfuscatedName("ae") + @ObfuscatedName("ah") static final BigInteger field741; - @ObfuscatedName("dg") - @ObfuscatedSignature( - descriptor = "[Lui;" - ) - @Export("worldSelectBackSprites") - static SpritePixels[] worldSelectBackSprites; + @ObfuscatedName("ao") + @Export("Tiles_underlays") + static short[][][] Tiles_underlays; static { field742 = new BigInteger("10001", 16); - field741 = new BigInteger("9d65aa39691f5fadd6296eeee7726eab566ecc003adda321a1bf18f94cce90d5198fcdf30dca1deef73fa1deb8c1ed0731e3f4712b23ab9f180de4946043ea93a3fef2c0099f69c64d0be204a1415322032e6f60aca9aa2a420c696627b2ed49a7970bdfe1cdcf1446fa65530a3bb0b1573a3effc1086fa29016ff9cc35e8951", 16); + field741 = new BigInteger("850174caa25e7608dd4a92f60946ae0011b578e0da829e93de3169dbf59d67460a86139a1843088971808d1b8b97572c5002f6d6a760038af0b0b8f3b1a5362cfc5151edcedc2df5fadf70a85c7b12e24eb4a8f8d7f1e5a523910fdda2964063936666111808b5b27513ec83e9e6a7b30e45f252d93096d0fc2d0370da3871d5", 16); } } \ No newline at end of file diff --git a/osrs/src/main/java/class8.java b/osrs/src/main/java/class8.java index a5d2d6fd3..423288828 100644 --- a/osrs/src/main/java/class8.java +++ b/osrs/src/main/java/class8.java @@ -1,35 +1,35 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("aa") +@ObfuscatedName("al") public class class8 { - @ObfuscatedName("au") - final int field15; - @ObfuscatedName("ae") - final int field14; - @ObfuscatedName("ao") - final String field16; + @ObfuscatedName("at") + final int field19; + @ObfuscatedName("ah") + final int field18; + @ObfuscatedName("ar") + final String field20; @ObfuscatedSignature( - descriptor = "(Ltm;)V" + descriptor = "(Luj;)V" ) class8(Buffer var1) { this(var1.readUnsignedByte(), var1.readUnsignedByte(), var1.readStringCp1252NullTerminated()); } class8(int var1, int var2, String var3) { - this.field15 = var1; - this.field14 = var2; - this.field16 = var3; + this.field19 = var1; + this.field18 = var2; + this.field20 = var3; } - @ObfuscatedName("au") - String method19() { - return Integer.toHexString(this.field15) + Integer.toHexString(this.field14) + this.field16; + @ObfuscatedName("at") + String method21() { + return Integer.toHexString(this.field19) + Integer.toHexString(this.field18) + this.field20; } - @ObfuscatedName("ae") - int method20() { - return this.field14; + @ObfuscatedName("ah") + int method22() { + return this.field18; } } \ No newline at end of file diff --git a/osrs/src/main/java/class85.java b/osrs/src/main/java/class85.java index e1a3cfea7..c52e28ac7 100644 --- a/osrs/src/main/java/class85.java +++ b/osrs/src/main/java/class85.java @@ -2,126 +2,14 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -import java.awt.*; - -@ObfuscatedName("da") +@ObfuscatedName("dg") public class class85 { - @ObfuscatedName("bk") - @Export("loginScreenFontMetrics") - static FontMetrics loginScreenFontMetrics; - @ObfuscatedName("dt") - @ObfuscatedSignature( - descriptor = "Luk;" - ) - @Export("worldSelectLeftSprite") - static IndexedSprite worldSelectLeftSprite; - - @ObfuscatedName("au") - @ObfuscatedSignature( - descriptor = "(IIIB)I", - garbageValue = "0" - ) - public static int method470(int var0, int var1, int var2) { - var2 &= 3; - if (var2 == 0) { - return var0; - } else if (var2 == 1) { - return var1; - } else { - return var2 == 2 ? 7 - var0 : 7 - var1; - } - } - - @ObfuscatedName("ai") - @ObfuscatedSignature( - descriptor = "(Lto;B)V", - garbageValue = "82" - ) - static final void method471(PacketBuffer var0) { - for (int var1 = 0; var1 < Players.Players_pendingUpdateCount; ++var1) { - int var2 = Players.Players_pendingUpdateIndices[var1]; - Player var3 = Client.players[var2]; - int var4 = var0.readUnsignedByte(); - if ((var4 & 1) != 0) { - var4 += var0.readUnsignedByte() << 8; - } - - if ((var4 & 32768) != 0) { - var4 += var0.readUnsignedByte() << 16; - } - - class53.method294(var0, var2, var3, var4); - } - - } - - @ObfuscatedName("ir") + @ObfuscatedName("am") + static String[] field859; + @ObfuscatedName("ct") @ObfuscatedSignature( - descriptor = "(Ljava/lang/String;B)V", - garbageValue = "-67" + descriptor = "Lof;" ) - @Export("doCheat") - static final void doCheat(String var0) { - if (var0.equalsIgnoreCase("toggleroof")) { - class449.clientPreferences.setRoofsHidden(!class449.clientPreferences.getRoofsHidden()); - if (class449.clientPreferences.getRoofsHidden()) { - MouseHandler.addGameMessage(99, "", "Roofs are now all hidden"); - } else { - MouseHandler.addGameMessage(99, "", "Roofs will only be removed selectively"); - } - } - - if (var0.startsWith("zbuf")) { - boolean var1 = HealthBarUpdate.method524(var0.substring(5).trim()) == 1; - class219.client.method149(var1); - Rasterizer3D.method1185(var1); - } - - if (var0.equalsIgnoreCase("z")) { - Client.renderSelf = !Client.renderSelf; - } - - if (var0.equalsIgnoreCase("displayfps")) { - class449.clientPreferences.method549(); - } - - if (var0.equalsIgnoreCase("renderself")) { - Client.field386 = !Client.field386; - } - - if (var0.equalsIgnoreCase("mouseovertext")) { - Client.showMouseOverText = !Client.showMouseOverText; - } - - if (Client.staffModLevel >= 2) { - if (var0.equalsIgnoreCase("errortest")) { - throw new RuntimeException(); - } - - if (var0.equalsIgnoreCase("showcoord")) { - Canvas.worldMap.showCoord = !Canvas.worldMap.showCoord; - } - - if (var0.equalsIgnoreCase("fpson")) { - class449.clientPreferences.method548(true); - } - - if (var0.equalsIgnoreCase("fpsoff")) { - class449.clientPreferences.method548(false); - } - - if (var0.equalsIgnoreCase("gc")) { - System.gc(); - } - - if (var0.equalsIgnoreCase("clientdrop")) { - Renderable.method1291(); - } - } - - PacketBufferNode var2 = ApproximateRouteStrategy.getPacketBufferNode(ClientPacket.CLIENT_CHEAT, Client.packetWriter.isaacCipher); - var2.packetBuffer.writeByte(var0.length() + 1); - var2.packetBuffer.writeStringCp1252NullTerminated(var0); - Client.packetWriter.addNode(var2); - } + @Export("clientLanguage") + static Language clientLanguage; } \ No newline at end of file diff --git a/osrs/src/main/java/class89.java b/osrs/src/main/java/class89.java index 07df32da4..77adcdedd 100644 --- a/osrs/src/main/java/class89.java +++ b/osrs/src/main/java/class89.java @@ -2,51 +2,119 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dl") -public enum class89 implements class371 { - @ObfuscatedName("au") +@ObfuscatedName("dm") +public enum class89 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ldl;" + descriptor = "Ldm;" ) - field884(0, -1), - @ObfuscatedName("ae") + field889(0, -1), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ldl;" + descriptor = "Ldm;" ) - field881(1, 1), - @ObfuscatedName("ao") + field886(1, 1), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ldl;" + descriptor = "Ldm;" ) - field882(2, 7), - @ObfuscatedName("at") + field888(2, 7), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ldl;" + descriptor = "Ldm;" ) - field883(3, 8), - @ObfuscatedName("ac") + field887(3, 8), + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ldl;" + descriptor = "Ldm;" ) - field880(4, 9); + field885(4, 9); - @ObfuscatedName("ai") - final int field885; - @ObfuscatedName("az") - final int field886; + @ObfuscatedName("cp") + @ObfuscatedSignature( + descriptor = "Ltt;" + ) + @Export("loginType") + static LoginType loginType; + @ObfuscatedName("au") + final int field891; + @ObfuscatedName("aa") + final int field890; class89(int var3, int var4) { - this.field885 = var3; - this.field886 = var4; + this.field891 = var3; + this.field890 = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field886; + return this.field890; + } + + @ObfuscatedName("au") + @ObfuscatedSignature( + descriptor = "(Lcr;Lcr;IZI)I", + garbageValue = "-1326256206" + ) + @Export("compareWorlds") + static int compareWorlds(World var0, World var1, int var2, boolean var3) { + if (var2 == 1) { + int var4 = var0.population; + int var5 = var1.population; + if (!var3) { + if (var4 == -1) { + var4 = 2001; + } + + if (var5 == -1) { + var5 = 2001; + } + } + + return var4 - var5; + } else if (var2 == 2) { + return var0.location - var1.location; + } else if (var2 == 3) { + if (var0.activity.equals("-")) { + if (var1.activity.equals("-")) { + return 0; + } else { + return var3 ? -1 : 1; + } + } else if (var1.activity.equals("-")) { + return var3 ? 1 : -1; + } else { + return var0.activity.compareTo(var1.activity); + } + } else if (var2 == 4) { + return var0.method401() ? (var1.method401() ? 0 : 1) : (var1.method401() ? -1 : 0); + } else if (var2 == 5) { + return var0.method399() ? (var1.method399() ? 0 : 1) : (var1.method399() ? -1 : 0); + } else if (var2 == 6) { + return var0.isPvp() ? (var1.isPvp() ? 0 : 1) : (var1.isPvp() ? -1 : 0); + } else if (var2 == 7) { + return var0.isMembersOnly() ? (var1.isMembersOnly() ? 0 : 1) : (var1.isMembersOnly() ? -1 : 0); + } else { + return var0.id - var1.id; + } + } + + @ObfuscatedName("nt") + @ObfuscatedSignature( + descriptor = "(Lnn;B)Ljava/lang/String;", + garbageValue = "-100" + ) + @Export("Widget_getSpellActionName") + static String Widget_getSpellActionName(Widget var0) { + if (WorldMapData_0.Widget_unpackTargetMask(class361.getWidgetFlags(var0)) == 0) { + return null; + } else { + return var0.spellActionName != null && var0.spellActionName.trim().length() != 0 ? var0.spellActionName : null; + } } } \ No newline at end of file diff --git a/osrs/src/main/java/class9.java b/osrs/src/main/java/class9.java index 2f2fc64d1..b9c61ce69 100644 --- a/osrs/src/main/java/class9.java +++ b/osrs/src/main/java/class9.java @@ -1,722 +1,444 @@ import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; -@ObfuscatedName("af") -public class class9 implements class371 { - @ObfuscatedName("au") +@ObfuscatedName("az") +public class class9 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Laz;" ) - public static final class9 field18; - @ObfuscatedName("ae") + public static final class9 field22; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Laz;" ) - public static final class9 field17; - @ObfuscatedName("ao") + public static final class9 field21; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Laz;" ) - static final class9 field22; - @ObfuscatedName("at") - @ObfuscatedSignature( - descriptor = "Laf;" - ) - static final class9 field23; - @ObfuscatedName("ac") + static final class9 field25; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Laf;" + descriptor = "Laz;" ) - static final class9 field21; - @ObfuscatedName("gq") - static String field20; - @ObfuscatedName("ox") + static final class9 field24; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Lcz;" + descriptor = "Laz;" ) - @Export("tempMenuAction") - static MenuAction tempMenuAction; - @ObfuscatedName("ai") - int field26; - @ObfuscatedName("az") - String field27; - @ObfuscatedName("ap") - boolean field25; + static final class9 field23; + @ObfuscatedName("au") + int field28; @ObfuscatedName("aa") - boolean field24; + String field29; + @ObfuscatedName("ac") + boolean field26; + @ObfuscatedName("al") + boolean field27; static { - field18 = new class9(0, "POST", true, true); - field17 = new class9(1, "GET", true, false); - field22 = new class9(2, "PUT", false, true); - field23 = new class9(3, "PATCH", false, true); - field21 = new class9(4, "DELETE", false, true); + field22 = new class9(0, "POST", true, true); + field21 = new class9(1, "GET", true, false); + field25 = new class9(2, "PUT", false, true); + field24 = new class9(3, "PATCH", false, true); + field23 = new class9(4, "DELETE", false, true); } class9(int var1, String var2, boolean var3, boolean var4) { - this.field26 = var1; - this.field27 = var2; - this.field25 = var3; - this.field24 = var4; + this.field28 = var1; + this.field29 = var2; + this.field26 = var3; + this.field27 = var4; } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(I)Z", - garbageValue = "-2119966021" + descriptor = "(B)Z", + garbageValue = "-82" ) - boolean method21() { - return this.field25; + boolean method23() { + return this.field26; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field26; + return this.field28; } - @ObfuscatedName("ao") + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "(I)Ljava/lang/String;", - garbageValue = "1243672924" + descriptor = "(B)Ljava/lang/String;", + garbageValue = "62" ) - public String method22() { - return this.field27; + public String method24() { + return this.field29; } - @ObfuscatedName("at") + @ObfuscatedName("ao") @ObfuscatedSignature( descriptor = "(I)Z", - garbageValue = "861678070" + garbageValue = "1331729662" ) - boolean method23() { - return this.field24; + boolean method25() { + return this.field27; } - @ObfuscatedName("ml") + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "([Lmi;IIIIIIIB)V", - garbageValue = "-33" + descriptor = "(Luo;IB)V", + garbageValue = "10" ) - @Export("updateInterface") - static final void updateInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) { - for (int var8 = 0; var8 < var0.length; ++var8) { - Widget var9 = var0[var8]; - if (var9 != null && var9.parentId == var1 && (var9.method1826() || NewShit.getWidgetFlags(var9) != 0 || var9 == Client.clickedWidgetParent)) { - if (var9.isIf3) { - if (class143.isComponentHidden(var9)) { - continue; - } - } else if (var9.type == 0 && var9 != class146.mousedOverWidgetIf1 && class143.isComponentHidden(var9)) { - continue; - } - - if (var9.type == 11) { - if (var9.method1841(FriendsChat.urlRequester)) { - if (var9.method1834()) { - class218.invalidateWidget(var9); - Login.revalidateWidgetScroll(var9.children, var9, true); - } + @Export("readPlayerUpdate") + static void readPlayerUpdate(PacketBuffer var0, int var1) { + boolean var2 = var0.readBits(1) == 1; + if (var2) { + Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1; + } - if (var9.field3088 != null) { - ScriptEvent var10 = new ScriptEvent(); - var10.widget = var9; - var10.args = var9.field3088; - Client.scriptEvents.addFirst(var10); - } - } - } else if (var9.type == 12 && var9.method1849()) { - class218.invalidateWidget(var9); + int var3 = var0.readBits(2); + Player var4 = Client.players[var1]; + if (var3 == 0) { + if (var2) { + var4.hasMovementPending = false; + } else if (Client.localPlayerIndex == var1) { + throw new RuntimeException(); + } else { + Players.Players_regions[var1] = (var4.plane << 28) + (class101.baseY + var4.pathY[0] >> 13) + (NewShit.baseX + var4.pathX[0] >> 13 << 14); + if (var4.movingOrientation != -1) { + Players.Players_orientations[var1] = var4.movingOrientation; + } else { + Players.Players_orientations[var1] = var4.orientation; } - int var26 = var9.x + var6; - int var11 = var7 + var9.y; - int var12; - int var13; - int var14; - int var15; - int var16; - int var17; - int var18; - if (var9.type == 9) { - var16 = var26; - var17 = var11; - var18 = var26 + var9.width; - int var19 = var11 + var9.height; - if (var18 < var26) { - var16 = var18; - var18 = var26; - } + Players.Players_targetIndices[var1] = var4.targetIndex; + Client.players[var1] = null; + if (var0.readBits(1) != 0) { + Buddy.updateExternalPlayer(var0, var1); + } - if (var19 < var11) { - var17 = var19; - var19 = var11; - } + } + } else { + int var5; + int var6; + int var7; + if (var3 == 1) { + var5 = var0.readBits(3); + var6 = var4.pathX[0]; + var7 = var4.pathY[0]; + if (var5 == 0) { + --var6; + --var7; + } else if (var5 == 1) { + --var7; + } else if (var5 == 2) { + ++var6; + --var7; + } else if (var5 == 3) { + --var6; + } else if (var5 == 4) { + ++var6; + } else if (var5 == 5) { + --var6; + ++var7; + } else if (var5 == 6) { + ++var7; + } else if (var5 == 7) { + ++var6; + ++var7; + } - ++var18; - ++var19; - var12 = var16 > var2 ? var16 : var2; - var13 = var17 > var3 ? var17 : var3; - var14 = var18 < var4 ? var18 : var4; - var15 = var19 < var5 ? var19 : var5; + if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { + var4.resetPath(var6, var7); + var4.hasMovementPending = false; + } else if (var2) { + var4.hasMovementPending = true; + var4.tileX = var6; + var4.tileY = var7; } else { - var16 = var26 + var9.width; - var17 = var11 + var9.height; - var12 = var26 > var2 ? var26 : var2; - var13 = var11 > var3 ? var11 : var3; - var14 = var16 < var4 ? var16 : var4; - var15 = var17 < var5 ? var17 : var5; + var4.hasMovementPending = false; + var4.move(var6, var7, Players.playerMovementSpeeds[var1]); } - if (var9 == Client.clickedWidget) { - Client.field397 = true; - Client.field515 = var26; - Client.field521 = var11; + } else if (var3 == 2) { + var5 = var0.readBits(4); + var6 = var4.pathX[0]; + var7 = var4.pathY[0]; + if (var5 == 0) { + var6 -= 2; + var7 -= 2; + } else if (var5 == 1) { + --var6; + var7 -= 2; + } else if (var5 == 2) { + var7 -= 2; + } else if (var5 == 3) { + ++var6; + var7 -= 2; + } else if (var5 == 4) { + var6 += 2; + var7 -= 2; + } else if (var5 == 5) { + var6 -= 2; + --var7; + } else if (var5 == 6) { + var6 += 2; + --var7; + } else if (var5 == 7) { + var6 -= 2; + } else if (var5 == 8) { + var6 += 2; + } else if (var5 == 9) { + var6 -= 2; + ++var7; + } else if (var5 == 10) { + var6 += 2; + ++var7; + } else if (var5 == 11) { + var6 -= 2; + var7 += 2; + } else if (var5 == 12) { + --var6; + var7 += 2; + } else if (var5 == 13) { + var7 += 2; + } else if (var5 == 14) { + ++var6; + var7 += 2; + } else if (var5 == 15) { + var6 += 2; + var7 += 2; } - boolean var34 = false; - if (var9.field2969) { - switch(Client.field505) { - case 0: - var34 = true; - case 1: - default: - break; - case 2: - if (Client.field508 == var9.id >>> 16) { - var34 = true; - } - break; - case 3: - if (var9.id == Client.field508) { - var34 = true; - } + if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { + if (var2) { + var4.hasMovementPending = true; + var4.tileX = var6; + var4.tileY = var7; + } else { + var4.hasMovementPending = false; + var4.move(var6, var7, Players.playerMovementSpeeds[var1]); } + } else { + var4.resetPath(var6, var7); + var4.hasMovementPending = false; } - if (var34 || !var9.isIf3 || var12 < var14 && var13 < var15) { - if (var9.isIf3) { - ScriptEvent var27; - if (var9.noClickThrough) { - if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { - for (var27 = (ScriptEvent)Client.scriptEvents.last(); var27 != null; var27 = (ScriptEvent)Client.scriptEvents.previous()) { - if (var27.field861) { - var27.remove(); - var27.widget.field2975 = false; - } - } - - class500.method2490(); - if (class159.widgetDragDuration == 0) { - Client.clickedWidget = null; - Client.clickedWidgetParent = null; - } - - if (!Client.isMenuOpen) { - class349.addCancelMenuEntry(); - } - } - } else if (var9.noScrollThrough && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { - for (var27 = (ScriptEvent)Client.scriptEvents.last(); var27 != null; var27 = (ScriptEvent)Client.scriptEvents.previous()) { - if (var27.field861 && var27.widget.onScroll == var27.args) { - var27.remove(); - } - } - } + } else { + var5 = var0.readBits(1); + int var8; + int var9; + int var10; + int var11; + if (var5 == 0) { + var6 = var0.readBits(12); + var7 = var6 >> 10; + var8 = var6 >> 5 & 31; + if (var8 > 15) { + var8 -= 32; } - var17 = MouseHandler.MouseHandler_x; - var18 = MouseHandler.MouseHandler_y; - if (MouseHandler.MouseHandler_lastButton != 0) { - var17 = MouseHandler.MouseHandler_lastPressedX; - var18 = MouseHandler.MouseHandler_lastPressedY; + var9 = var6 & 31; + if (var9 > 15) { + var9 -= 32; } - boolean var35 = var17 >= var12 && var18 >= var13 && var17 < var14 && var18 < var15; - if (var9.contentType == 1337) { - if (!Client.isLoading && !Client.isMenuOpen && var35) { - class134.addSceneMenuOptions(var17, var18, var12, var13); + var10 = var8 + var4.pathX[0]; + var11 = var9 + var4.pathY[0]; + if (Client.localPlayerIndex != var1 || var4.x >= 1536 && var4.y >= 1536 && var4.x < 11776 && var4.y < 11776) { + if (var2) { + var4.hasMovementPending = true; + var4.tileX = var10; + var4.tileY = var11; + } else { + var4.hasMovementPending = false; + var4.move(var10, var11, Players.playerMovementSpeeds[var1]); } - } else if (var9.contentType == 1338) { - class348.checkIfMinimapClicked(var9, var26, var11); } else { - if (var9.contentType == 1400) { - Canvas.worldMap.onCycle(MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y, var35, var26, var11, var9.width, var9.height); - } - - if (!Client.isMenuOpen && var35) { - if (var9.contentType == 1400) { - Canvas.worldMap.addElementMenuOptions(var26, var11, var9.width, var9.height, var17, var18); - } else { - ClanChannelMember.method778(var9); - } - } - - boolean var21; - int var23; - if (var34) { - for (int var20 = 0; var20 < var9.field2977.length; ++var20) { - var21 = false; - boolean var22 = false; - if (!var21 && var9.field2977[var20] != null) { - for (var23 = 0; var23 < var9.field2977[var20].length; ++var23) { - boolean var24 = false; - if (var9.field3055 != null) { - var24 = Client.keyHandlerInstance.getKeyPressed(var9.field2977[var20][var23]); - } - - if (class398.method2121(var9.field2977[var20][var23]) || var24) { - var21 = true; - if (var9.field3055 != null && var9.field3055[var20] > Client.cycle) { - break; - } - - byte var25 = var9.field2978[var20][var23]; - if (var25 == 0 || ((var25 & 8) == 0 || !Client.keyHandlerInstance.getKeyPressed(86) && !Client.keyHandlerInstance.getKeyPressed(82) && !Client.keyHandlerInstance.getKeyPressed(81)) && ((var25 & 2) == 0 || Client.keyHandlerInstance.getKeyPressed(86)) && ((var25 & 1) == 0 || Client.keyHandlerInstance.getKeyPressed(82)) && ((var25 & 4) == 0 || Client.keyHandlerInstance.getKeyPressed(81))) { - var22 = true; - break; - } - } - } - } - - if (var22) { - if (var20 < 10) { - class47.widgetDefaultMenuAction(var20 + 1, var9.id, var9.childIndex, var9.itemId, ""); - } else if (var20 == 10) { - InvDefinition.Widget_runOnTargetLeave(); - DirectByteArrayCopier.selectSpell(var9.id, var9.childIndex, HealthBarDefinition.Widget_unpackTargetMask(NewShit.getWidgetFlags(var9)), var9.itemId); - Client.field600 = class300.Widget_getSpellActionName(var9); - if (Client.field600 == null) { - Client.field600 = "null"; - } - - Client.field601 = var9.dataText + MoveSpeed.colorStartTag(16777215); - } - - var23 = var9.field3047[var20]; - if (var9.field3055 == null) { - var9.field3055 = new int[var9.field2977.length]; - } - - if (var9.field3046 == null) { - var9.field3046 = new int[var9.field2977.length]; - } - - if (var23 != 0) { - if (var9.field3055[var20] == 0) { - var9.field3055[var20] = var23 + Client.cycle + var9.field3046[var20]; - } else { - var9.field3055[var20] = var23 + Client.cycle; - } - } else { - var9.field3055[var20] = Integer.MAX_VALUE; - } - } - - if (!var21 && var9.field3055 != null) { - var9.field3055[var20] = 0; - } - } - } + var4.resetPath(var10, var11); + var4.hasMovementPending = false; + } - if (var9.isIf3) { - if (MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { - var35 = true; - } else { - var35 = false; - } - - boolean var36 = false; - if ((MouseHandler.MouseHandler_currentButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_currentButton == 4) && var35) { - var36 = true; - } - - var21 = false; - if ((MouseHandler.MouseHandler_lastButton == 1 || !ObjTypeCustomisation.mouseCam && MouseHandler.MouseHandler_lastButton == 4) && MouseHandler.MouseHandler_lastPressedX >= var12 && MouseHandler.MouseHandler_lastPressedY >= var13 && MouseHandler.MouseHandler_lastPressedX < var14 && MouseHandler.MouseHandler_lastPressedY < var15) { - var21 = true; - } - - if (var21) { - class227.clickWidget(var9, MouseHandler.MouseHandler_lastPressedX - var26, MouseHandler.MouseHandler_lastPressedY - var11); - } - - if (var9.method1827()) { - if (var21) { - Client.field628.addFirst(new class211(0, MouseHandler.MouseHandler_x - var26, MouseHandler.MouseHandler_y - var11, var9)); - } - - if (var36) { - Client.field628.addFirst(new class211(1, MouseHandler.MouseHandler_x - var26, MouseHandler.MouseHandler_y - var11, var9)); - } - } - - if (var9.contentType == 1400) { - Canvas.worldMap.method2386(var17, var18, var35 & var36, var35 & var21); - } - - if (Client.clickedWidget != null && var9 != Client.clickedWidget && var35 && class238.method1309(NewShit.getWidgetFlags(var9))) { - Client.draggedOnWidget = var9; - } - - if (var9 == Client.clickedWidgetParent) { - Client.field395 = true; - Client.field514 = var26; - Client.field513 = var11; - } - - if (var9.hasListener) { - ScriptEvent var28; - if (var35 && Client.mouseWheelRotation != 0 && var9.onScroll != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseY = Client.mouseWheelRotation; - var28.args = var9.onScroll; - Client.scriptEvents.addFirst(var28); - } - - if (Client.clickedWidget != null || Client.isMenuOpen) { - var21 = false; - var36 = false; - var35 = false; - } - - if (!var9.field2974 && var21) { - var9.field2974 = true; - if (var9.onClick != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_lastPressedX - var26; - var28.mouseY = MouseHandler.MouseHandler_lastPressedY - var11; - var28.args = var9.onClick; - Client.scriptEvents.addFirst(var28); - } - } - - if (var9.field2974 && var36 && var9.onClickRepeat != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onClickRepeat; - Client.scriptEvents.addFirst(var28); - } - - if (var9.field2974 && !var36) { - var9.field2974 = false; - if (var9.onRelease != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onRelease; - Client.field630.addFirst(var28); - } - } - - if (var36 && var9.onHold != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onHold; - Client.scriptEvents.addFirst(var28); - } - - if (!var9.field2975 && var35) { - var9.field2975 = true; - if (var9.onMouseOver != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onMouseOver; - Client.scriptEvents.addFirst(var28); - } - } - - if (var9.field2975 && var35 && var9.onMouseRepeat != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onMouseRepeat; - Client.scriptEvents.addFirst(var28); - } - - if (var9.field2975 && !var35) { - var9.field2975 = false; - if (var9.onMouseLeave != null) { - var28 = new ScriptEvent(); - var28.field861 = true; - var28.widget = var9; - var28.mouseX = MouseHandler.MouseHandler_x - var26; - var28.mouseY = MouseHandler.MouseHandler_y - var11; - var28.args = var9.onMouseLeave; - Client.field630.addFirst(var28); - } - } - - if (var9.onTimer != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onTimer; - Client.field629.addFirst(var28); - } - - ScriptEvent var29; - int var37; - int var38; - if (var9.onVarTransmit != null && Client.changedVarpCount > var9.field3041) { - if (var9.varTransmitTriggers != null && Client.changedVarpCount - var9.field3041 <= 32) { - label647: - for (var37 = var9.field3041; var37 < Client.changedVarpCount; ++var37) { - var23 = Client.changedVarps[var37 & 31]; - - for (var38 = 0; var38 < var9.varTransmitTriggers.length; ++var38) { - if (var23 == var9.varTransmitTriggers[var38]) { - var29 = new ScriptEvent(); - var29.widget = var9; - var29.args = var9.onVarTransmit; - Client.scriptEvents.addFirst(var29); - break label647; - } - } - } - } else { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onVarTransmit; - Client.scriptEvents.addFirst(var28); - } - - var9.field3041 = Client.changedVarpCount; - } - - if (var9.onInvTransmit != null && Client.changedItemContainersCount > var9.field3042) { - if (var9.invTransmitTriggers != null && Client.changedItemContainersCount - var9.field3042 <= 32) { - label623: - for (var37 = var9.field3042; var37 < Client.changedItemContainersCount; ++var37) { - var23 = Client.changedItemContainers[var37 & 31]; - - for (var38 = 0; var38 < var9.invTransmitTriggers.length; ++var38) { - if (var23 == var9.invTransmitTriggers[var38]) { - var29 = new ScriptEvent(); - var29.widget = var9; - var29.args = var9.onInvTransmit; - Client.scriptEvents.addFirst(var29); - break label623; - } - } - } - } else { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onInvTransmit; - Client.scriptEvents.addFirst(var28); - } - - var9.field3042 = Client.changedItemContainersCount; - } - - if (var9.onStatTransmit != null && Client.changedSkillsCount > var9.field3040) { - if (var9.statTransmitTriggers != null && Client.changedSkillsCount - var9.field3040 <= 32) { - label599: - for (var37 = var9.field3040; var37 < Client.changedSkillsCount; ++var37) { - var23 = Client.changedSkills[var37 & 31]; - - for (var38 = 0; var38 < var9.statTransmitTriggers.length; ++var38) { - if (var23 == var9.statTransmitTriggers[var38]) { - var29 = new ScriptEvent(); - var29.widget = var9; - var29.args = var9.onStatTransmit; - Client.scriptEvents.addFirst(var29); - break label599; - } - } - } - } else { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onStatTransmit; - Client.scriptEvents.addFirst(var28); - } - - var9.field3040 = Client.changedSkillsCount; - } - - if (Client.chatCycle > var9.field3043 && var9.onChatTransmit != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onChatTransmit; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field518 > var9.field3043 && var9.onFriendTransmit != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onFriendTransmit; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field524 > var9.field3043 && var9.onClanTransmit != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onClanTransmit; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field511 > var9.field3043 && var9.field3082 != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.field3082; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field517 > var9.field3043 && var9.field3090 != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.field3090; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field529 > var9.field3043 && var9.onStockTransmit != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onStockTransmit; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field525 > var9.field3043 && var9.field3081 != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.field3081; - Client.scriptEvents.addFirst(var28); - } - - if (Client.field528 > var9.field3043 && var9.onMiscTransmit != null) { - var28 = new ScriptEvent(); - var28.widget = var9; - var28.args = var9.onMiscTransmit; - Client.scriptEvents.addFirst(var28); - } - - var9.field3043 = Client.cycleCntr; - if (var9.onKey != null) { - for (var37 = 0; var37 < Client.field532; ++var37) { - ScriptEvent var30 = new ScriptEvent(); - var30.widget = var9; - var30.keyTyped = Client.field581[var37]; - var30.keyPressed = Client.field580[var37]; - var30.args = var9.onKey; - Client.scriptEvents.addFirst(var30); - } - } - - ScriptEvent var31; - int[] var39; - if (var9.field3089 != null) { - var39 = Client.keyHandlerInstance.method1109(); - - for (var23 = 0; var23 < var39.length; ++var23) { - var31 = new ScriptEvent(); - var31.widget = var9; - var31.keyTyped = var39[var23]; - var31.args = var9.field3089; - Client.scriptEvents.addFirst(var31); - } - } - - if (var9.field3079 != null) { - var39 = Client.keyHandlerInstance.method1110(); - - for (var23 = 0; var23 < var39.length; ++var23) { - var31 = new ScriptEvent(); - var31.widget = var9; - var31.keyTyped = var39[var23]; - var31.args = var9.field3079; - Client.scriptEvents.addFirst(var31); - } - } - } - } + var4.plane = (byte)(var7 + var4.plane & 3); + if (Client.localPlayerIndex == var1) { + ItemLayer.Client_plane = var4.plane; + } - if (!var9.isIf3) { - if (Client.clickedWidget != null || Client.isMenuOpen) { - continue; - } - - if ((var9.mouseOverRedirect >= 0 || var9.mouseOverColor != 0) && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { - if (var9.mouseOverRedirect >= 0) { - class146.mousedOverWidgetIf1 = var0[var9.mouseOverRedirect]; - } else { - class146.mousedOverWidgetIf1 = var9; - } - } - - if (var9.type == 8 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15) { - class343.field3147 = var9; - } - - if (var9.scrollHeight > var9.height) { - SongTask.method2139(var9, var26 + var9.width, var11, var9.height, var9.scrollHeight, MouseHandler.MouseHandler_x, MouseHandler.MouseHandler_y); - } - } + } else { + var6 = var0.readBits(30); + var7 = var6 >> 28; + var8 = var6 >> 14 & 16383; + var9 = var6 & 16383; + var10 = (var8 + NewShit.baseX + var4.pathX[0] & 16383) - NewShit.baseX; + var11 = (var9 + class101.baseY + var4.pathY[0] & 16383) - class101.baseY; + if (Client.localPlayerIndex == var1 && (var4.x < 1536 || var4.y < 1536 || var4.x >= 11776 || var4.y >= 11776)) { + var4.resetPath(var10, var11); + var4.hasMovementPending = false; + } else if (var2) { + var4.hasMovementPending = true; + var4.tileX = var10; + var4.tileY = var11; + } else { + var4.hasMovementPending = false; + var4.move(var10, var11, Players.playerMovementSpeeds[var1]); + } - if (var9.type == 0) { - updateInterface(var0, var9.id, var12, var13, var14, var15, var26 - var9.scrollX, var11 - var9.scrollY); - if (var9.children != null) { - updateInterface(var9.children, var9.id, var12, var13, var14, var15, var26 - var9.scrollX, var11 - var9.scrollY); - } - - InterfaceParent var32 = (InterfaceParent)Client.interfaceParents.get((long)var9.id); - if (var32 != null) { - if (var32.type == 0 && MouseHandler.MouseHandler_x >= var12 && MouseHandler.MouseHandler_y >= var13 && MouseHandler.MouseHandler_x < var14 && MouseHandler.MouseHandler_y < var15 && !Client.isMenuOpen) { - for (ScriptEvent var33 = (ScriptEvent)Client.scriptEvents.last(); var33 != null; var33 = (ScriptEvent)Client.scriptEvents.previous()) { - if (var33.field861) { - var33.remove(); - var33.widget.field2975 = false; - } - } - - if (class159.widgetDragDuration == 0) { - Client.clickedWidget = null; - Client.clickedWidgetParent = null; - } - - if (!Client.isMenuOpen) { - class349.addCancelMenuEntry(); - } - } - - LoginScreenAnimation.updateRootInterface(var32.group, var12, var13, var14, var15, var26, var11); - } - } + var4.plane = (byte)(var7 + var4.plane & 3); + if (Client.localPlayerIndex == var1) { + ItemLayer.Client_plane = var4.plane; } + } } } + } + + @ObfuscatedName("ai") + @ObfuscatedSignature( + descriptor = "(Lorg/json/JSONObject;Ljava/lang/String;I)[F", + garbageValue = "-257144128" + ) + static float[] method27(JSONObject var0, String var1) throws JSONException { + float[] var2 = new float[4]; + + try { + JSONArray var3 = var0.getJSONArray(var1); + var2[0] = (float)var3.optDouble(0, 0.0D); + var2[1] = (float)var3.optDouble(1, 0.0D); + var2[2] = (float)var3.optDouble(2, 1.0D); + var2[3] = (float)var3.optDouble(3, 1.0D); + } catch (JSONException var4) { + var2[0] = 0.0F; + var2[1] = 0.0F; + var2[2] = 1.0F; + var2[3] = 1.0F; + } + + return var2; + } + + @ObfuscatedName("hd") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "77503344" + ) + static final void method29() { + if (Client.logoutTimer > 0) { + class13.method51(); + } else { + Client.timer.method2171(); + WorldMapSection2.updateGameState(40); + class4.field4 = Client.packetWriter.getSocket(); + Client.packetWriter.removeSocket(); + } + } + + @ObfuscatedName("ie") + @ObfuscatedSignature( + descriptor = "(Ljava/lang/String;I)V", + garbageValue = "416478591" + ) + @Export("doCheat") + static final void doCheat(String var0) { + if (var0.equalsIgnoreCase("toggleroof")) { + WorldMapIcon_1.clientPreferences.setRoofsHidden(!WorldMapIcon_1.clientPreferences.getRoofsHidden()); + if (WorldMapIcon_1.clientPreferences.getRoofsHidden()) { + GrandExchangeOfferUnitPriceComparator.addGameMessage(99, "", "Roofs are now all hidden"); + } else { + GrandExchangeOfferUnitPriceComparator.addGameMessage(99, "", "Roofs will only be removed selectively"); + } + } + + if (var0.startsWith("zbuf")) { + boolean var1 = Huffman.method1888(var0.substring(5).trim()) == 1; + SpriteMask.client.method161(var1); + Rasterizer3D.method1413(var1); + } + + if (var0.equalsIgnoreCase("z")) { + Client.renderSelf = !Client.renderSelf; + } + + if (var0.equalsIgnoreCase("displayfps")) { + WorldMapIcon_1.clientPreferences.method546(); + } + + if (var0.equalsIgnoreCase("renderself")) { + Client.field387 = !Client.field387; + } + + if (var0.equalsIgnoreCase("mouseovertext")) { + Client.showMouseOverText = !Client.showMouseOverText; + } + + if (Client.staffModLevel >= 2) { + if (var0.equalsIgnoreCase("errortest")) { + throw new RuntimeException(); + } + + if (var0.equalsIgnoreCase("showcoord")) { + NewShit.worldMap.showCoord = !NewShit.worldMap.showCoord; + } + + if (var0.equalsIgnoreCase("fpson")) { + WorldMapIcon_1.clientPreferences.method545(true); + } + + if (var0.equalsIgnoreCase("fpsoff")) { + WorldMapIcon_1.clientPreferences.method545(false); + } + + if (var0.equalsIgnoreCase("gc")) { + System.gc(); + } + + if (var0.equalsIgnoreCase("clientdrop")) { + method29(); + } + } + PacketBufferNode var2 = class113.getPacketBufferNode(ClientPacket.DOCHEAT, Client.packetWriter.isaacCipher); + var2.packetBuffer.writeByte(var0.length() + 1); + var2.packetBuffer.writeStringCp1252NullTerminated(var0); + Client.packetWriter.addNode(var2); } - @ObfuscatedName("ox") + @ObfuscatedName("ip") @ObfuscatedSignature( - descriptor = "(S)V", - garbageValue = "-1162" + descriptor = "(II)V", + garbageValue = "-1070211689" ) - static void method26() { - class449.clientPreferences.method563(Client.param21); + @Export("setWindowedMode") + static void setWindowedMode(int var0) { + Client.field613 = 0L; + if (var0 >= 2) { + Client.isResizable = true; + } else { + Client.isResizable = false; + } + + if (ApproximateRouteStrategy.getWindowedMode() == 1) { + SpriteMask.client.setMaxCanvasSize(765, 503); + } else { + SpriteMask.client.setMaxCanvasSize(7680, 2160); + } + + if (Client.gameState >= 25 && Client.packetWriter != null && Client.packetWriter.isaacCipher != null) { + PacketBufferNode var1 = class113.getPacketBufferNode(ClientPacket.EVENT_MOUSE_IDLE, Client.packetWriter.isaacCipher); + var1.packetBuffer.writeByte(ApproximateRouteStrategy.getWindowedMode()); + var1.packetBuffer.writeShort(Language.canvasWidth); + var1.packetBuffer.writeShort(class47.canvasHeight); + Client.packetWriter.addNode(var1); + } + } } \ No newline at end of file diff --git a/osrs/src/main/java/class90.java b/osrs/src/main/java/class90.java index 91c9893fc..d58260ae6 100644 --- a/osrs/src/main/java/class90.java +++ b/osrs/src/main/java/class90.java @@ -2,85 +2,544 @@ import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dk") -public enum class90 implements class371 { - @ObfuscatedName("au") +@ObfuscatedName("dr") +public enum class90 implements class383 { + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field893(0, -1), - @ObfuscatedName("ae") + field898(0, -1), + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field889(1, 2), - @ObfuscatedName("ao") + field895(1, 2), + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field891(2, 3), - @ObfuscatedName("at") + field897(2, 3), + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field892(3, 4), - @ObfuscatedName("ac") + field896(3, 4), + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field888(4, 5), - @ObfuscatedName("ai") + field894(4, 5), + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Ldk;" + descriptor = "Ldr;" ) - field890(5, 6); + field899(5, 6); - @ObfuscatedName("bg") - @ObfuscatedSignature( - descriptor = "Lrb;" - ) - static Bounds field887; - @ObfuscatedName("az") - final int field895; - @ObfuscatedName("ap") - final int field894; + @ObfuscatedName("av") + public static short[][] field892; + @ObfuscatedName("ae") + static String field893; + @ObfuscatedName("aa") + final int field900; + @ObfuscatedName("ac") + final int field901; class90(int var3, int var4) { - this.field895 = var3; - this.field894 = var4; + this.field900 = var3; + this.field901 = var4; } - @ObfuscatedName("ae") + @ObfuscatedName("ah") @ObfuscatedSignature( descriptor = "(B)I", - garbageValue = "41" + garbageValue = "-11" ) @Export("rsOrdinal") public int rsOrdinal() { - return this.field894; + return this.field901; } - @ObfuscatedName("au") + @ObfuscatedName("at") + @ObfuscatedSignature( + descriptor = "(IIB)Z", + garbageValue = "-9" + ) + static boolean method473(int var0, int var1) { + return var0 != 4 || var1 < 8; + } + + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(CLof;B)I", + garbageValue = "53" + ) + @Export("lowercaseChar") + static int lowercaseChar(char var0, Language var1) { + int var2 = var0 << 4; + if (Character.isUpperCase(var0) || Character.isTitleCase(var0)) { + var0 = Character.toLowerCase(var0); + var2 = (var0 << 4) + 1; + } + + if (var0 == 241 && var1 == Language.Language_ES) { + var2 = 1762; + } + + return var2; + } + + @ObfuscatedName("ks") + @ObfuscatedSignature( + descriptor = "(I)V", + garbageValue = "892396745" + ) + static final void method476() { + for (PendingSpawn var0 = (PendingSpawn)Client.pendingSpawns.last(); var0 != null; var0 = (PendingSpawn)Client.pendingSpawns.previous()) { + if (var0.endCycle == -1) { + var0.startCycle = 0; + ScriptFrame.method344(var0); + } else { + var0.remove(); + } + } + + } + + @ObfuscatedName("kz") @ObfuscatedSignature( - descriptor = "(IB)Lhw;", - garbageValue = "0" + descriptor = "(ZLuo;I)V", + garbageValue = "2029902605" ) - @Export("getNpcDefinition") - public static NPCComposition getNpcDefinition(int var0) { - NPCComposition var1 = (NPCComposition)NPCComposition.NpcDefinition_cached.get((long)var0); - if (var1 != null) { - return var1; + @Export("updateNpcs") + static final void updateNpcs(boolean var0, PacketBuffer var1) { + Client.field489 = 0; + Client.field449 = 0; + class472.method2351(var1); + + int var3; + int var8; + int var9; + int var10; + int var12; + int var19; + while (true) { + byte var2 = 16; + var3 = 1 << var2; + if (var1.bitsRemaining(Client.packetWriter.serverPacketLength) < var2 + 12) { + break; + } + + int var4 = var1.readBits(var2); + if (var4 == var3 - 1) { + break; + } + + boolean var5 = false; + if (Client.npcs[var4] == null) { + Client.npcs[var4] = new NPC(); + var5 = true; + } + + NPC var20 = Client.npcs[var4]; + Client.npcIndices[++Client.npcCount - 1] = var4; + var20.npcCycle = Client.cycle; + var19 = var1.readBits(1); + var10 = Client.field563[var1.readBits(3)]; + if (var5) { + var20.orientation = var20.rotation = var10; + } + + if (var0) { + var8 = var1.readBits(8); + if (var8 > 127) { + var8 -= 256; + } + } else { + var8 = var1.readBits(5); + if (var8 > 15) { + var8 -= 32; + } + } + + boolean var11 = var1.readBits(1) == 1; + if (var11) { + var1.readBits(32); + } + + var12 = var1.readBits(1); + if (var12 == 1) { + Client.field550[++Client.field449 - 1] = var4; + } + + if (var0) { + var9 = var1.readBits(8); + if (var9 > 127) { + var9 -= 256; + } + } else { + var9 = var1.readBits(5); + if (var9 > 15) { + var9 -= 32; + } + } + + var20.definition = VerticalAlignment.getNpcDefinition(var1.readBits(14)); + class33.method144(var20); + if (var20.field1018 == 0) { + var20.rotation = 0; + } + + var20.method581(class229.localPlayer.pathX[0] + var8, class229.localPlayer.pathY[0] + var9, var19 == 1); + } + + var1.exportIndex(); + + int var21; + for (var21 = 0; var21 < Client.field449; ++var21) { + var3 = Client.field550[var21]; + NPC var14 = Client.npcs[var3]; + int var22 = var1.readUnsignedByte(); + int var6; + if ((var22 & 16) != 0) { + var6 = var1.readUnsignedByte(); + var22 += var6 << 8; + } + + if ((var22 & 256) != 0) { + var6 = var1.readUnsignedByte(); + var22 += var6 << 16; + } + + int[] var7; + short[] var15; + short[] var16; + long var17; + int var23; + boolean var24; + if ((var22 & 4096) != 0) { + var6 = var1.readUnsignedByteAdd(); + if ((var6 & 1) == 1) { + var14.method593(); + } else { + var7 = null; + if ((var6 & 2) == 2) { + var8 = var1.readUnsignedByteSub(); + var7 = new int[var8]; + + for (var9 = 0; var9 < var8; ++var9) { + var10 = var1.readUnsignedShortLE(); + var10 = var10 == 65535 ? -1 : var10; + var7[var9] = var10; + } + } + + var15 = null; + if ((var6 & 4) == 4) { + var9 = 0; + if (var14.definition.recolorTo != null) { + var9 = var14.definition.recolorTo.length; + } + + var15 = new short[var9]; + + for (var10 = 0; var10 < var9; ++var10) { + var15[var10] = (short)var1.readUnsignedShortLE(); + } + } + + var16 = null; + if ((var6 & 8) == 8) { + var10 = 0; + if (var14.definition.retextureTo != null) { + var10 = var14.definition.retextureTo.length; + } + + var16 = new short[var10]; + + for (var23 = 0; var23 < var10; ++var23) { + var16[var23] = (short)var1.readUnsignedShortAdd(); + } + } + + var24 = false; + if ((var6 & 16) != 0) { + var24 = var1.readUnsignedByteAdd() == 1; + } + + var17 = (long)(++NPC.field1080 - 1); + var14.method591(new NewShit(var17, var7, var15, var16, var24)); + } + } + + if ((var22 & 65536) != 0) { + var6 = var1.readUnsignedByte(); + var7 = new int[8]; + var15 = new short[8]; + + for (var9 = 0; var9 < 8; ++var9) { + if ((var6 & 1 << var9) != 0) { + var7[var9] = var1.readNullableLargeSmart(); + var15[var9] = (short)var1.readShortSmartSub(); + } else { + var7[var9] = -1; + var15[var9] = -1; + } + } + + var14.method587(var7, var15); + } + + if ((var22 & 262144) != 0) { + var6 = var1.readUnsignedIntME(); + var14.turnLeftSequence = (var6 & 1) != 0 ? var1.readUnsignedShort() : var14.definition.turnLeftSequence ; + var14.turnRightSequence = (var6 & 2) != 0 ? var1.readUnsignedShortAdd() : var14.definition.turnRightSequence ; + var14.walkSequence = (var6 & 4) != 0 ? var1.readUnsignedShortAddLE() : var14.definition.walkSequence ; + var14.walkBackSequence = (var6 & 8) != 0 ? var1.readUnsignedShortAdd() : var14.definition.walkBackSequence ; + var14.walkLeftSequence = (var6 & 16) != 0 ? var1.readUnsignedShortAddLE() : var14.definition.walkLeftSequence ; + var14.walkRightSequence = (var6 & 32) != 0 ? var1.readUnsignedShortAdd() : var14.definition.walkRightSequence ; + var14.runSequence = (var6 & 64) != 0 ? var1.readUnsignedShortLE() : var14.definition.runSequence ; + var14.runBackSequence = (var6 & 128) != 0 ? var1.readUnsignedShortAddLE() : var14.definition.runBackSequence ; + var14.runLeftSequence = (var6 & 256) != 0 ? var1.readUnsignedShortAdd() : var14.definition.runLeftSequence ; + var14.runRightSequence = (var6 & 512) != 0 ? var1.readUnsignedShort() : var14.definition.runRightSequence ; + var14.crawlSequence = (var6 & 1024) != 0 ? var1.readUnsignedShortAdd() : var14.definition.crawlSequence ; + var14.crawlBackSequence = (var6 & 2048) != 0 ? var1.readUnsignedShort() : var14.definition.crawlBackSequence ; + var14.crawlLeftSequence = (var6 & 4096) != 0 ? var1.readUnsignedShortAdd() : var14.definition.crawlLeftSequence ; + var14.crawlRightSequence = (var6 & 8192) != 0 ? var1.readUnsignedShortAdd() : var14.definition.crawlRightSequence ; + var14.idleSequence = (var6 & 16384) != 0 ? var1.readUnsignedShortAddLE() : var14.definition.idleSequence ; + } + + if ((var22 & 1) != 0) { + var6 = var1.readUnsignedShortLE(); + if (var6 == 65535) { + var6 = -1; + } + + var19 = var1.readUnsignedByte(); + if (var6 == var14.sequence && var6 != -1) { + var8 = DynamicObject.SequenceDefinition_get(var6).replyMode; + if (var8 == 1) { + var14.sequenceFrame = 0; + var14.sequenceFrameCycle = 0; + var14.sequenceDelay = var19; + var14.currentSequenceFrameIndex = 0; + } + + if (var8 == 2) { + var14.currentSequenceFrameIndex = 0; + } + } else if (var6 == -1 || var14.sequence == -1 || DynamicObject.SequenceDefinition_get(var6).forcedPriority >= DynamicObject.SequenceDefinition_get(var14.sequence).forcedPriority) { + var14.sequence = var6; + var14.sequenceFrame = 0; + var14.sequenceFrameCycle = 0; + var14.sequenceDelay = var19; + var14.currentSequenceFrameIndex = 0; + var14.field1029 = var14.pathLength; + } + } + + if ((var22 & 1024) != 0) { + var14.field1013 = var1.readByteAdd(); + var14.field1012 = var1.readByteNeg(); + var14.field1024 = var1.readByteAdd(); + var14.field1010 = var1.readByteNeg(); + var14.spotAnimation = var1.readUnsignedShortAddLE() + Client.cycle; + var14.exactMoveArrive1Cycle = var1.readUnsignedShortAddLE() + Client.cycle; + var14.exactMoveDirection = var1.readUnsignedShortAddLE(); + var14.pathLength = 1; + var14.field1029 = 0; + var14.field1013 += var14.pathX[0]; + var14.field1012 += var14.pathY[0]; + var14.field1024 += var14.pathX[0]; + var14.field1010 += var14.pathY[0]; + } + + if ((var22 & 8192) != 0) { + var14.combatLevelChange = var1.readUnsignedIntIME(); + } + + if ((var22 & 32) != 0) { + var6 = var1.readUnsignedShort(); + var19 = var1.readUnsignedShortLE(); + var14.field969 = var1.readUnsignedByteSub() == 1; + if (Client.param25 >= 212) { + var14.field995 = var6; + var14.field997 = var19; + } else { + var8 = var14.x - (var6 - NewShit.baseX - NewShit.baseX) * 64; + var9 = var14.y - (var19 - class101.baseY - class101.baseY) * 64; + if (var8 != 0 || var9 != 0) { + var14.movingOrientation = SequenceDefinition.method1040(var8, var9); + } + } + } + + if ((var22 & 128) != 0) { + var14.targetIndex = var1.readUnsignedShort(); + var14.targetIndex += var1.readUnsignedByteSub() << 16; + var6 = 16777215; + if (var6 == var14.targetIndex) { + var14.targetIndex = -1; + } + } + + if ((var22 & 2) != 0) { + var6 = var1.readUnsignedByteAdd(); + if (var6 > 0) { + for (var19 = 0; var19 < var6; ++var19) { + var9 = -1; + var10 = -1; + var23 = -1; + var8 = var1.readUShortSmart(); + if (var8 == 32767) { + var8 = var1.readUShortSmart(); + var10 = var1.readUShortSmart(); + var9 = var1.readUShortSmart(); + var23 = var1.readUShortSmart(); + } else if (var8 != 32766) { + var10 = var1.readUShortSmart(); + } else { + var8 = -1; + } + + var12 = var1.readUShortSmart(); + var14.addHitSplat(var8, var10, var9, var23, Client.cycle, var12); + } + } + + var19 = var1.readUnsignedByteNeg(); + if (var19 > 0) { + for (var8 = 0; var8 < var19; ++var8) { + var9 = var1.readUShortSmart(); + var10 = var1.readUShortSmart(); + if (var10 != 32767) { + var23 = var1.readUShortSmart(); + var12 = var1.readUnsignedByte(); + int var13 = var10 > 0 ? var1.readUnsignedByte() : var12; + var14.addHealthBar(var9, Client.cycle, var10, var23, var12, var13); + } else { + var14.removeHealthBar(var9); + } + } + } + } + + if ((var22 & 16384) != 0) { + var14.method575(var1.readStringCp1252NullTerminated()); + } + + if ((var22 & 32768) != 0) { + var14.method576(var1.readUnsignedByteSub()); + } + + if ((var22 & 131072) != 0) { + var6 = var1.readUnsignedByte(); + + for (var19 = 0; var19 < var6; ++var19) { + var8 = var1.readUnsignedByte(); + var9 = var1.readUnsignedShort(); + var10 = var1.readUnsignedIntIME(); + var14.updateSpotAnimation(var8, var9, var10 >> 16, var10 & 65535); + } + } + + if ((var22 & 2048) != 0) { + var14.recolourStartCycle = Client.cycle + var1.readUnsignedShortLE(); + var14.recolourEndCycle = Client.cycle + var1.readUnsignedShortAddLE(); + var14.recolourHue = var1.readByteAdd(); + var14.recolourSaturation = var1.readByteNeg(); + var14.recolourLuminance = var1.readByteAdd(); + var14.recolourAmount = (byte)var1.readUnsignedByteNeg(); + } + + if ((var22 & 512) != 0) { + var6 = var1.readUnsignedByteSub(); + if ((var6 & 1) == 1) { + var14.method592(); + } else { + var7 = null; + if ((var6 & 2) == 2) { + var8 = var1.readUnsignedByteSub(); + var7 = new int[var8]; + + for (var9 = 0; var9 < var8; ++var9) { + var10 = var1.readUnsignedShort(); + var10 = var10 == 65535 ? -1 : var10; + var7[var9] = var10; + } + } + + var15 = null; + if ((var6 & 4) == 4) { + var9 = 0; + if (var14.definition.recolorTo != null) { + var9 = var14.definition.recolorTo.length; + } + + var15 = new short[var9]; + + for (var10 = 0; var10 < var9; ++var10) { + var15[var10] = (short)var1.readUnsignedShort(); + } + } + + var16 = null; + if ((var6 & 8) == 8) { + var10 = 0; + if (var14.definition.retextureTo != null) { + var10 = var14.definition.retextureTo.length; + } + + var16 = new short[var10]; + + for (var23 = 0; var23 < var10; ++var23) { + var16[var23] = (short)var1.readUnsignedShortAdd(); + } + } + + var24 = false; + if ((var6 & 16) != 0) { + var24 = var1.readUnsignedByteAdd() == 1; + } + + var17 = (long)(++NPC.field1081 - 1); + var14.method589(new NewShit(var17, var7, var15, var16, var24)); + } + } + + if ((var22 & 8) != 0) { + var14.definition = VerticalAlignment.getNpcDefinition(var1.readUnsignedShortLE()); + class33.method144(var14); + var14.method588(); + } + + if ((var22 & 4) != 0) { + var14.overheadText = var1.readStringCp1252NullTerminated(); + var14.overheadTextCyclesRemaining = 100; + } + + if ((var22 & 64) != 0) { + var1.readUnsignedShortAdd(); + var1.readUnsignedIntME(); + } + } + + for (var21 = 0; var21 < Client.field489; ++var21) { + var3 = Client.field559[var21]; + if (Client.npcs[var3].npcCycle != Client.cycle) { + Client.npcs[var3].definition = null; + Client.npcs[var3] = null; + } + } + + if (var1.offset != Client.packetWriter.serverPacketLength) { + throw new RuntimeException(var1.offset + "," + Client.packetWriter.serverPacketLength); } else { - byte[] var2 = NPCComposition.NpcDefinition_archive.takeFile(9, var0); - var1 = new NPCComposition(); - var1.id = var0; - if (var2 != null) { - var1.decode(new Buffer(var2)); + for (var21 = 0; var21 < Client.npcCount; ++var21) { + if (Client.npcs[Client.npcIndices[var21]] == null) { + throw new RuntimeException(var21 + "," + Client.npcCount); + } } - var1.postDecode(); - NPCComposition.NpcDefinition_cached.put(var1, (long)var0); - return var1; } } } \ No newline at end of file diff --git a/osrs/src/main/java/class92.java b/osrs/src/main/java/class92.java index ee3a9f5dd..55b4d1caa 100644 --- a/osrs/src/main/java/class92.java +++ b/osrs/src/main/java/class92.java @@ -1,193 +1,155 @@ -import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; -@ObfuscatedName("dz") +@ObfuscatedName("da") public class class92 { - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field940; - @ObfuscatedName("ae") + static final class92 field942; + @ObfuscatedName("ah") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field930; - @ObfuscatedName("ao") + static final class92 field935; + @ObfuscatedName("ar") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field935; - @ObfuscatedName("at") + static final class92 field940; + @ObfuscatedName("ao") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field939; - @ObfuscatedName("ac") + static final class92 field938; + @ObfuscatedName("ab") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field928; - @ObfuscatedName("ai") + static final class92 field933; + @ObfuscatedName("au") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field932; - @ObfuscatedName("az") + static final class92 field943; + @ObfuscatedName("aa") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field941; - @ObfuscatedName("ap") + static final class92 field932; + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field936; - @ObfuscatedName("aa") + static final class92 field934; + @ObfuscatedName("al") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field926; - @ObfuscatedName("af") + static final class92 field937; + @ObfuscatedName("az") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field931; - @ObfuscatedName("ad") + static final class92 field947; + @ObfuscatedName("ap") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field929; - @ObfuscatedName("aq") + static final class92 field939; + @ObfuscatedName("av") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field937; - @ObfuscatedName("al") + static final class92 field944; + @ObfuscatedName("ax") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field933; - @ObfuscatedName("an") + static final class92 field945; + @ObfuscatedName("as") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field934; - @ObfuscatedName("ar") + static final class92 field941; + @ObfuscatedName("ay") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field938; - @ObfuscatedName("ab") + static final class92 field946; + @ObfuscatedName("ak") @ObfuscatedSignature( - descriptor = "Ldz;" + descriptor = "Lda;" ) - static final class92 field927; + static final class92 field936; static { - field940 = new class92(); - field930 = new class92(); + field942 = new class92(); field935 = new class92(); - field939 = new class92(); - field928 = new class92(); + field940 = new class92(); + field938 = new class92(); + field933 = new class92(); + field943 = new class92(); field932 = new class92(); + field934 = new class92(); + field937 = new class92(); + field947 = new class92(); + field939 = new class92(); + field944 = new class92(); + field945 = new class92(); field941 = new class92(); + field946 = new class92(); field936 = new class92(); - field926 = new class92(); - field931 = new class92(); - field929 = new class92(); - field937 = new class92(); - field933 = new class92(); - field934 = new class92(); - field938 = new class92(); - field927 = new class92(); } class92() { } - @ObfuscatedName("au") + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(II)Lmi;", - garbageValue = "412092455" - ) - @Export("getWidget") - public static Widget getWidget(int var0) { - int var1 = var0 >> 16; - int var2 = var0 & 65535; - if (PacketBufferNode.Widget_interfaceComponents[var1] == null || PacketBufferNode.Widget_interfaceComponents[var1][var2] == null) { - boolean var3 = ModeWhere.loadInterface(var1); - if (!var3) { - return null; + descriptor = "(II)Lgh;", + garbageValue = "-1228219586" + ) + public static HealthBarDefinition method497(int var0) { + HealthBarDefinition var1 = (HealthBarDefinition)HealthBarDefinition.HealthBarDefinition_cached.get((long)var0); + if (var1 != null) { + return var1; + } else { + byte[] var2 = HealthBarDefinition.HealthBarDefinition_archive.takeFile(33, var0); + var1 = new HealthBarDefinition(); + var1.field1494 = var0; + if (var2 != null) { + var1.decode(new Buffer(var2)); } - } - return PacketBufferNode.Widget_interfaceComponents[var1][var2]; + HealthBarDefinition.HealthBarDefinition_cached.put(var1, (long)var0); + return var1; + } } - @ObfuscatedName("jl") + @ObfuscatedName("ac") @ObfuscatedSignature( - descriptor = "(Ldf;ZB)V", - garbageValue = "1" + descriptor = "(II)I", + garbageValue = "1040473159" ) - @Export("addPlayerToScene") - static void addPlayerToScene(Player var0, boolean var1) { - if (var0 != null && var0.isVisible() && !var0.isHidden) { - var0.isUnanimated = false; - if ((Client.isLowDetail && Players.Players_count > 50 || Players.Players_count > 200) && var1 && var0.idleSequence == var0.movementSequence) { - var0.isUnanimated = true; - } - - int var2 = var0.x >> 7; - int var3 = var0.y >> 7; - if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { - long var4 = FontName.calculateTag(0, 0, 0, false, var0.index); - if (var0.attachedModel != null && Client.cycle >= var0.animationCycleStart && Client.cycle < var0.animationCycleEnd) { - var0.isUnanimated = false; - var0.tileHeight = class18.getTileHeight(var0.x, var0.y, HealthBar.Client_plane); - var0.playerCycle = Client.cycle; - class130.scene.addNullableObject(HealthBar.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.minX, var0.minY, var0.maxX, var0.maxY); - } else { - if ((var0.x & 127) == 64 && (var0.y & 127) == 64) { - if (Client.tileLastDrawnActor[var2][var3] == Client.viewportDrawCount) { - return; - } - - Client.tileLastDrawnActor[var2][var3] = Client.viewportDrawCount; - } - - var0.tileHeight = class18.getTileHeight(var0.x, var0.y, HealthBar.Client_plane); - var0.playerCycle = Client.cycle; - class130.scene.drawEntity(HealthBar.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.isWalking); - } - } + static int method498(int var0) { + Message var1 = (Message)Messages.Messages_hashTable.get((long)var0); + if (var1 == null) { + return -1; + } else { + return var1.nextDual == Messages.Messages_queue.sentinel ? -1 : ((Message)var1.nextDual).count; } - } - @ObfuscatedName("ns") - @ObfuscatedSignature( - descriptor = "(Lds;ZI)V", - garbageValue = "-1838716449" - ) - @Export("closeInterface") - static final void closeInterface(InterfaceParent var0, boolean var1) { - int var2 = var0.group; - int var3 = (int)var0.key; - var0.remove(); - if (var1) { - Skeleton.method1232(var2); - } - - class339.method1865(var2); - Widget var4 = getWidget(var3); - if (var4 != null) { - class218.invalidateWidget(var4); - } - - if (Client.rootInterface != -1) { - class385.runIntfCloseListeners(Client.rootInterface, 1); + @ObfuscatedName("jv") + @ObfuscatedSignature( + descriptor = "(B)V", + garbageValue = "124" + ) + static void method499() { + if (class229.localPlayer.x >> 7 == Client.destinationX && class229.localPlayer.y >> 7 == Client.destinationY) { + Client.destinationX = 0; } } diff --git a/osrs/src/main/java/class93.java b/osrs/src/main/java/class93.java index 4a408e3f0..4a50373e9 100644 --- a/osrs/src/main/java/class93.java +++ b/osrs/src/main/java/class93.java @@ -3,396 +3,128 @@ @ObfuscatedName("dw") public class class93 { - @ObfuscatedName("az") + @ObfuscatedName("ac") + static byte[][][] field948; + + @ObfuscatedName("at") @ObfuscatedSignature( - descriptor = "(ILdh;ZI)I", - garbageValue = "36436435" + descriptor = "(B)I", + garbageValue = "60" ) - static int method504(int var0, Script var1, boolean var2) { - int var4 = -1; - Widget var3; - if (var0 >= 2000) { - var0 -= 1000; - var4 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - var3 = class92.getWidget(var4); - } else { - var3 = var2 ? GameObject.scriptDotWidget : SceneTilePaint.scriptActiveWidget; - } + public static int method501() { + return ViewportMouse.ViewportMouse_entityCount; + } - int var10; - if (var0 == 1100) { - SoundCache.Interpreter_intStackSize -= 2; - var10 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - int var6 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - if (var3.type == 12) { - class329 var7 = var3.method1844(); - if (var7 != null && var7.method1740(var10, var6)) { - class218.invalidateWidget(var3); - } - } else { - var3.scrollX = var10; - if (var3.scrollX > var3.scrollWidth - var3.width) { - var3.scrollX = var3.scrollWidth - var3.width; - } + @ObfuscatedName("ar") + @ObfuscatedSignature( + descriptor = "(IIII)I", + garbageValue = "1385698501" + ) + public static int method500(int var0, int var1, int var2) { + int var3 = class214.method1092(var2 - var1 + 1); + var3 <<= var1; + return var0 & ~var3; + } - if (var3.scrollX < 0) { - var3.scrollX = 0; - } + @ObfuscatedName("md") + @ObfuscatedSignature( + descriptor = "(Lnn;I)V", + garbageValue = "-296278834" + ) + static final void method502(Widget var0) { + String var1; + int var2; + int var3; + if (var0.buttonType == 1) { + var1 = var0.buttonText; + var2 = var0.id; + var3 = var0.itemId; + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var1, "", 24, 0, 0, var2, var3, false); + } - var3.scrollY = var6; - if (var3.scrollY > var3.scrollHeight - var3.height) { - var3.scrollY = var3.scrollHeight - var3.height; - } + if (var0.buttonType == 2 && !Client.isSpellSelected) { + var1 = class89.Widget_getSpellActionName(var0); + if (var1 != null) { + KeyHandler.method106(var1, class167.colorStartTag(65280) + var0.field3122, 25, 0, -1, var0.id, var0.itemId); + } + } - if (var3.scrollY < 0) { - var3.scrollY = 0; - } + if (var0.buttonType == 3) { + WorldMapSectionType.insertMenuItemNoShift("Close", "", 26, 0, 0, var0.id); + } - class218.invalidateWidget(var3); - } + if (var0.buttonType == 4) { + WorldMapSectionType.insertMenuItemNoShift(var0.buttonText, "", 28, 0, 0, var0.id); + } - return 1; - } else if (var0 == 1101) { - var3.color = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1102) { - var3.fill = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1103) { - var3.transparencyTop = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1104) { - var3.lineWid = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1105) { - var3.spriteId2 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1106) { - var3.spriteAngle = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1107) { - var3.spriteTiling = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1108) { - var3.modelType = 1; - var3.modelId = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1109) { - SoundCache.Interpreter_intStackSize -= 6; - var3.modelOffsetX = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var3.modelOffsetY = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var3.modelAngleX = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - var3.modelAngleY = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 3]; - var3.modelAngleZ = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 4]; - var3.modelZoom = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 5]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1110) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var10 != var3.sequenceId) { - var3.sequenceId = var10; - var3.modelFrame = 0; - var3.modelFrameCycle = 0; - class218.invalidateWidget(var3); - } + if (var0.buttonType == 5) { + WorldMapSectionType.insertMenuItemNoShift(var0.buttonText, "", 29, 0, 0, var0.id); + } - return 1; - } else if (var0 == 1111) { - var3.modelOrthog = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1112) { - String var14 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - if (!var14.equals(var3.text)) { - var3.text = var14; - class218.invalidateWidget(var3); - } + if (var0.buttonType == 6 && Client.meslayerContinueWidget == null) { + WorldMapSectionType.insertMenuItemNoShift(var0.buttonText, "", 30, 0, -1, var0.id); + } - return 1; - } else { - class329 var11; - if (var0 == 1113) { - var3.fontId = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - if (var3.type == 12) { - var11 = var3.method1844(); - if (var11 != null) { - var11.method1747(); - } + if (var0.isIf3) { + int var5; + String var9; + if (Client.isSpellSelected) { + var2 = class361.getWidgetFlags(var0); + boolean var8 = (var2 >> 21 & 1) != 0; + if (var8 && (UrlRequest.selectedSpellFlags & 32) == 32) { + var9 = Client.field599; + String var4 = Client.field598 + " " + "->" + " " + var0.dataText; + var5 = var0.childIndex; + int var6 = var0.id; + int var7 = var0.itemId; + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var9, var4, 58, 0, var5, var6, var7, false); } - - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1114) { - SoundCache.Interpreter_intStackSize -= 3; - if (var3.type == 12) { - var11 = var3.method1844(); - if (var11 != null) { - var11.method1741(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - var11.method1742(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]); + } else { + String var10; + for (int var13 = 9; var13 >= 5; --var13) { + if (!GraphicsObject.method428(class361.getWidgetFlags(var0), var13) && var0.onOp == null) { + var10 = null; + } else if (var0.actions != null && var0.actions.length > var13 && var0.actions[var13] != null && var0.actions[var13].trim().length() != 0) { + var10 = var0.actions[var13]; + } else { + var10 = null; } - } else { - var3.textXAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var3.textYAlignment = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - var3.textLineHeight = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 2]; - } - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1115) { - var3.textShadowed = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1116) { - var3.outline = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1117) { - var3.spriteShadow = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1118) { - var3.spriteFlipV = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1119) { - var3.spriteFlipH = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1120) { - SoundCache.Interpreter_intStackSize -= 2; - var3.scrollWidth = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - var3.scrollHeight = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]; - class218.invalidateWidget(var3); - if (var4 != -1 && var3.type == 0) { - Login.revalidateWidgetScroll(PacketBufferNode.Widget_interfaceComponents[var4 >> 16], var3, false); + if (var10 != null) { + KeyHandler.method106(var10, var0.dataText, 1007, var13 + 1, var0.childIndex, var0.id, var0.itemId); + } } - return 1; - } else if (var0 == 1121) { - class466.resumePauseWidget(var3.id, var3.childIndex); - Client.meslayerContinueWidget = var3; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1122) { - var3.spriteId = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1123) { - var3.color2 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1124) { - var3.transparencyBot = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1125) { - var10 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]; - FillMode var12 = (FillMode)KeyHandler.findEnumerated(MidiPcmStream.FillMode_values(), var10); - if (var12 != null) { - var3.fillMode = var12; - class218.invalidateWidget(var3); + var1 = class89.Widget_getSpellActionName(var0); + if (var1 != null) { + var10 = var0.dataText; + var3 = var0.childIndex; + int var11 = var0.id; + var5 = var0.itemId; + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var1, var10, 25, 0, var3, var11, var5, false); } - return 1; - } else { - boolean var5; - if (var0 == 1126) { - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - var3.field2962 = var5; - return 1; - } else if (var0 == 1127) { - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - var3.modelTransparency = var5; - return 1; - } else if (var0 == 1129) { - var3.field3091 = Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize]; - class218.invalidateWidget(var3); - return 1; - } else if (var0 == 1130) { - var3.method1828(Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize], FriendsChat.urlRequester, UrlRequester.method654()); - return 1; - } else if (var0 == 1131) { - SoundCache.Interpreter_intStackSize -= 2; - var3.method1831(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - return 1; - } else if (var0 == 1132) { - var3.method1832(Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize], Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize]); - return 1; - } else { - class324 var13; - if (var0 == 1133) { - --SoundCache.Interpreter_intStackSize; - var13 = var3.method1845(); - if (var13 != null) { - var13.field2892 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1134) { - --SoundCache.Interpreter_intStackSize; - var13 = var3.method1845(); - if (var13 != null) { - var13.field2890 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1135) { - --class137.Interpreter_stringStackSize; - var11 = var3.method1844(); - if (var11 != null) { - var3.text2 = Interpreter.Interpreter_stringStack[class137.Interpreter_stringStackSize]; - } - - return 1; - } else if (var0 == 1136) { - --SoundCache.Interpreter_intStackSize; - var13 = var3.method1845(); - if (var13 != null) { - var13.field2891 = Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]; - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1137) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null && var11.method1737(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize])) { - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1138) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null && var11.method1738(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize])) { - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1139) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null && var11.method1739(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize])) { - class218.invalidateWidget(var3); - } - - return 1; + for (var2 = 4; var2 >= 0; --var2) { + if (!GraphicsObject.method428(class361.getWidgetFlags(var0), var2) && var0.onOp == null) { + var9 = null; + } else if (var0.actions != null && var0.actions.length > var2 && var0.actions[var2] != null && var0.actions[var2].trim().length() != 0) { + var9 = var0.actions[var2]; } else { - class329 var9; - if (var0 == 1140) { - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - Client.field423.method1090(); - var9 = var3.method1844(); - if (var9 != null && var9.method1731(var5)) { - if (var5) { - Client.field423.method1088(var3); - } - - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1141) { - var5 = Interpreter.Interpreter_intStack[--SoundCache.Interpreter_intStackSize] == 1; - if (!var5 && Client.field423.method1089() == var3) { - Client.field423.method1090(); - class218.invalidateWidget(var3); - } - - var9 = var3.method1844(); - if (var9 != null) { - var9.method1732(var5); - } - - return 1; - } else if (var0 == 1142) { - SoundCache.Interpreter_intStackSize -= 2; - var11 = var3.method1844(); - if (var11 != null && var11.method1755(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1])) { - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1143) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null && var11.method1755(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize])) { - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1144) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null) { - var11.method1744(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - class218.invalidateWidget(var3); - } - - return 1; - } else if (var0 == 1145) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null) { - var11.method1743(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - } - - return 1; - } else if (var0 == 1146) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null) { - var11.method1746(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - } - - return 1; - } else if (var0 == 1147) { - --SoundCache.Interpreter_intStackSize; - var11 = var3.method1844(); - if (var11 != null) { - var11.method1745(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize]); - class218.invalidateWidget(var3); - } - - return 1; - } else { - class27 var8; - if (var0 == 1148) { - SoundCache.Interpreter_intStackSize -= 2; - var8 = var3.method1846(); - if (var8 != null) { - var8.method96(Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - } - - return 1; - } else if (var0 == 1149) { - SoundCache.Interpreter_intStackSize -= 2; - var8 = var3.method1846(); - if (var8 != null) { - var8.method97((char)Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize], Interpreter.Interpreter_intStack[SoundCache.Interpreter_intStackSize + 1]); - } + var9 = null; + } - return 1; - } else if (var0 == 1150) { - var3.method1829(Interpreter.Interpreter_stringStack[--class137.Interpreter_stringStackSize], FriendsChat.urlRequester); - return 1; - } else { - return 2; - } - } + if (var9 != null) { + GrandExchangeOfferTotalQuantityComparator.insertMenuItem(var9, var0.dataText, 57, var2 + 1, var0.childIndex, var0.id, var0.itemId, var0.prioritizeMenuEntry); } } + + var3 = class361.getWidgetFlags(var0); + boolean var12 = (var3 & 1) != 0; + if (var12) { + WorldMapSectionType.insertMenuItemNoShift("Continue", "", 30, 0, var0.childIndex, var0.id); + } } } + } } \ No newline at end of file diff --git a/osrs/src/main/java/net/runelite/rs/ObfuscatedClassMap.java b/osrs/src/main/java/net/runelite/rs/ObfuscatedClassMap.java deleted file mode 100644 index 5eec54d38..000000000 --- a/osrs/src/main/java/net/runelite/rs/ObfuscatedClassMap.java +++ /dev/null @@ -1,547 +0,0 @@ -package net.runelite.rs; - -import java.util.HashMap; - -public class ObfuscatedClassMap extends HashMap { - public static ObfuscatedClassMap INSTANCE = new ObfuscatedClassMap(); - static { - INSTANCE.put("AABB", "ip"); - INSTANCE.put("AbstractArchive", "nu"); - INSTANCE.put("AbstractByteArrayCopier", "ma"); - INSTANCE.put("AbstractFont", "pk"); - INSTANCE.put("AbstractRasterProvider", "uq"); - INSTANCE.put("AbstractSocket", "qi"); - INSTANCE.put("AbstractSound", "cp"); - INSTANCE.put("AbstractUserComparator", "qz"); - INSTANCE.put("AbstractWorldMapData", "ke"); - INSTANCE.put("AbstractWorldMapIcon", "kp"); - INSTANCE.put("AccessFile", "tu"); - INSTANCE.put("Actor", "dr"); - INSTANCE.put("AddRequestTask", "pf"); - INSTANCE.put("Animation", "ia"); - INSTANCE.put("ApproximateRouteStrategy", "cl"); - INSTANCE.put("Archive", "nk"); - INSTANCE.put("ArchiveDisk", "ru"); - INSTANCE.put("ArchiveDiskAction", "nw"); - INSTANCE.put("ArchiveDiskActionHandler", "ny"); - INSTANCE.put("ArchiveLoader", "dg"); - INSTANCE.put("AttackOption", "dc"); - INSTANCE.put("AudioFilter", "cr"); - INSTANCE.put("BoundaryObject", "jo"); - INSTANCE.put("Bounds", "rb"); - INSTANCE.put("Buddy", "qb"); - INSTANCE.put("BuddyRankComparator", "ek"); - INSTANCE.put("Buffer", "tm"); - INSTANCE.put("BufferedFile", "td"); - INSTANCE.put("BufferedNetSocket", "qy"); - INSTANCE.put("BufferedSink", "qh"); - INSTANCE.put("BufferedSource", "qa"); - INSTANCE.put("ByteArrayPool", "pb"); - INSTANCE.put("BZip2Decompressor", "tt"); - INSTANCE.put("BZip2State", "te"); - INSTANCE.put("Calendar", "mo"); - INSTANCE.put("Canvas", "av"); - INSTANCE.put("ChatChannel", "di"); - INSTANCE.put("ClanChannel", "go"); - INSTANCE.put("ClanChannelMember", "fu"); - INSTANCE.put("ClanMate", "qx"); - INSTANCE.put("ClanSettings", "fi"); - INSTANCE.put("class0", "au"); - INSTANCE.put("class1", "ae"); - INSTANCE.put("class10", "ad"); - INSTANCE.put("class101", "dq"); - INSTANCE.put("class102", "de"); - INSTANCE.put("class105", "eh"); - INSTANCE.put("class106", "ey"); - INSTANCE.put("class108", "eq"); - INSTANCE.put("class11", "aq"); - INSTANCE.put("class113", "ez"); - INSTANCE.put("class12", "al"); - INSTANCE.put("class124", "eu"); - INSTANCE.put("class125", "eg"); - INSTANCE.put("class126", "ex"); - INSTANCE.put("class127", "eo"); - INSTANCE.put("class128", "ew"); - INSTANCE.put("class129", "ep"); - INSTANCE.put("class13", "an"); - INSTANCE.put("class130", "fh"); - INSTANCE.put("class131", "ft"); - INSTANCE.put("class132", "fs"); - INSTANCE.put("class133", "fl"); - INSTANCE.put("class134", "fe"); - INSTANCE.put("class135", "fd"); - INSTANCE.put("class136", "fj"); - INSTANCE.put("class137", "fv"); - INSTANCE.put("class138", "fb"); - INSTANCE.put("class139", "fr"); - INSTANCE.put("class14", "ar"); - INSTANCE.put("class140", "fq"); - INSTANCE.put("class141", "fp"); - INSTANCE.put("class142", "fg"); - INSTANCE.put("class143", "fo"); - INSTANCE.put("class144", "fz"); - INSTANCE.put("class146", "fn"); - INSTANCE.put("class147", "fx"); - INSTANCE.put("class148", "ff"); - INSTANCE.put("class149", "fc"); - INSTANCE.put("class15", "ab"); - INSTANCE.put("class150", "fk"); - INSTANCE.put("class151", "fm"); - INSTANCE.put("class152", "fy"); - INSTANCE.put("class153", "fw"); - INSTANCE.put("class155", "fa"); - INSTANCE.put("class156", "gu"); - INSTANCE.put("class157", "gc"); - INSTANCE.put("class158", "gd"); - INSTANCE.put("class159", "gm"); - INSTANCE.put("class16", "ag"); - INSTANCE.put("class160", "gg"); - INSTANCE.put("class161", "gw"); - INSTANCE.put("class162", "gi"); - INSTANCE.put("class164", "gl"); - INSTANCE.put("class165", "gb"); - INSTANCE.put("class166", "gj"); - INSTANCE.put("class167", "ge"); - INSTANCE.put("class169", "gv"); - INSTANCE.put("class17", "am"); - INSTANCE.put("class170", "gf"); - INSTANCE.put("class172", "gy"); - INSTANCE.put("class174", "gk"); - INSTANCE.put("class176", "gx"); - INSTANCE.put("class177", "gq"); - INSTANCE.put("class178", "gt"); - INSTANCE.put("class18", "ax"); - INSTANCE.put("class181", "gn"); - INSTANCE.put("class184", "hj"); - INSTANCE.put("class19", "ah"); - INSTANCE.put("class191", "hg"); - INSTANCE.put("class197", "hp"); - INSTANCE.put("class2", "ao"); - INSTANCE.put("class20", "as"); - INSTANCE.put("class200", "hf"); - INSTANCE.put("class209", "il"); - INSTANCE.put("class210", "ig"); - INSTANCE.put("class211", "ie"); - INSTANCE.put("class212", "iz"); - INSTANCE.put("class214", "io"); - INSTANCE.put("class216", "ij"); - INSTANCE.put("class218", "ih"); - INSTANCE.put("class219", "it"); - INSTANCE.put("class227", "im"); - INSTANCE.put("class228", "id"); - INSTANCE.put("class238", "je"); - INSTANCE.put("class243", "ji"); - INSTANCE.put("class245", "jj"); - INSTANCE.put("class26", "bh"); - INSTANCE.put("class260", "kb"); - INSTANCE.put("class261", "kt"); - INSTANCE.put("class27", "bj"); - INSTANCE.put("class270", "ka"); - INSTANCE.put("class271", "kf"); - INSTANCE.put("class272", "kx"); - INSTANCE.put("class28", "bk"); - INSTANCE.put("class280", "kk"); - INSTANCE.put("class281", "kc"); - INSTANCE.put("class282", "km"); - INSTANCE.put("class283", "kz"); - INSTANCE.put("class284", "kh"); - INSTANCE.put("class29", "bv"); - INSTANCE.put("class291", "lm"); - INSTANCE.put("class292", "lp"); - INSTANCE.put("class293", "la"); - INSTANCE.put("class299", "ln"); - INSTANCE.put("class3", "at"); - INSTANCE.put("class30", "bt"); - INSTANCE.put("class300", "lc"); - INSTANCE.put("class301", "lv"); - INSTANCE.put("class302", "lr"); - INSTANCE.put("class303", "lt"); - INSTANCE.put("class305", "lz"); - INSTANCE.put("class308", "lh"); - INSTANCE.put("class309", "li"); - INSTANCE.put("class31", "bd"); - INSTANCE.put("class311", "lb"); - INSTANCE.put("class312", "md"); - INSTANCE.put("class316", "mq"); - INSTANCE.put("class318", "mk"); - INSTANCE.put("class323", "mf"); - INSTANCE.put("class324", "ml"); - INSTANCE.put("class325", "mj"); - INSTANCE.put("class326", "mw"); - INSTANCE.put("class327", "mp"); - INSTANCE.put("class329", "mb"); - INSTANCE.put("class33", "bs"); - INSTANCE.put("class330", "mm"); - INSTANCE.put("class332", "mn"); - INSTANCE.put("class334", "my"); - INSTANCE.put("class338", "nq"); - INSTANCE.put("class339", "na"); - INSTANCE.put("class342", "nd"); - INSTANCE.put("class343", "ng"); - INSTANCE.put("class344", "nt"); - INSTANCE.put("class345", "nv"); - INSTANCE.put("class348", "nz"); - INSTANCE.put("class349", "ne"); - INSTANCE.put("class350", "ni"); - INSTANCE.put("class352", "np"); - INSTANCE.put("class357", "nj"); - INSTANCE.put("class36", "bq"); - INSTANCE.put("class369", "od"); - INSTANCE.put("class370", "og"); - INSTANCE.put("class371", "ob"); - INSTANCE.put("class372", "ok"); - INSTANCE.put("class383", "oi"); - INSTANCE.put("class384", "oq"); - INSTANCE.put("class385", "ov"); - INSTANCE.put("class386", "op"); - INSTANCE.put("class387", "or"); - INSTANCE.put("class388", "oo"); - INSTANCE.put("class390", "ps"); - INSTANCE.put("class391", "pr"); - INSTANCE.put("class392", "pa"); - INSTANCE.put("class394", "pj"); - INSTANCE.put("class395", "pu"); - INSTANCE.put("class396", "pz"); - INSTANCE.put("class398", "pl"); - INSTANCE.put("class4", "ac"); - INSTANCE.put("class401", "pv"); - INSTANCE.put("class403", "pd"); - INSTANCE.put("class408", "pp"); - INSTANCE.put("class409", "pg"); - INSTANCE.put("class410", "ph"); - INSTANCE.put("class415", "pw"); - INSTANCE.put("class416", "qe"); - INSTANCE.put("class418", "qn"); - INSTANCE.put("class419", "qf"); - INSTANCE.put("class420", "qr"); - INSTANCE.put("class421", "qm"); - INSTANCE.put("class422", "qw"); - INSTANCE.put("class423", "qv"); - INSTANCE.put("class424", "qj"); - INSTANCE.put("class448", "rj"); - INSTANCE.put("class449", "ro"); - INSTANCE.put("class450", "rz"); - INSTANCE.put("class451", "rm"); - INSTANCE.put("class452", "rc"); - INSTANCE.put("class453", "rq"); - INSTANCE.put("class454", "rs"); - INSTANCE.put("class455", "rp"); - INSTANCE.put("class456", "rg"); - INSTANCE.put("class457", "rv"); - INSTANCE.put("class458", "ry"); - INSTANCE.put("class459", "rk"); - INSTANCE.put("class46", "bz"); - INSTANCE.put("class460", "re"); - INSTANCE.put("class461", "rf"); - INSTANCE.put("class462", "rl"); - INSTANCE.put("class463", "rt"); - INSTANCE.put("class464", "rx"); - INSTANCE.put("class465", "rw"); - INSTANCE.put("class466", "rn"); - INSTANCE.put("class47", "bx"); - INSTANCE.put("class475", "sv"); - INSTANCE.put("class476", "se"); - INSTANCE.put("class477", "sk"); - INSTANCE.put("class478", "sy"); - INSTANCE.put("class479", "sn"); - INSTANCE.put("class480", "sc"); - INSTANCE.put("class485", "ss"); - INSTANCE.put("class489", "su"); - INSTANCE.put("class490", "sx"); - INSTANCE.put("class493", "sg"); - INSTANCE.put("class496", "tn"); - INSTANCE.put("class497", "th"); - INSTANCE.put("class498", "tj"); - INSTANCE.put("class499", "tl"); - INSTANCE.put("class5", "ai"); - INSTANCE.put("class500", "tq"); - INSTANCE.put("class501", "tg"); - INSTANCE.put("class502", "tb"); - INSTANCE.put("class503", "tz"); - INSTANCE.put("class504", "ti"); - INSTANCE.put("class506", "tx"); - INSTANCE.put("class508", "tr"); - INSTANCE.put("class51", "bg"); - INSTANCE.put("class510", "ty"); - INSTANCE.put("class515", "tw"); - INSTANCE.put("class518", "tf"); - INSTANCE.put("class519", "tv"); - INSTANCE.put("class522", "uu"); - INSTANCE.put("class523", "ud"); - INSTANCE.put("class529", "uf"); - INSTANCE.put("class53", "cf"); - INSTANCE.put("class532", "uo"); - INSTANCE.put("class538", "uv"); - INSTANCE.put("class59", "cd"); - INSTANCE.put("class6", "az"); - INSTANCE.put("class60", "ce"); - INSTANCE.put("class7", "ap"); - INSTANCE.put("class72", "cj"); - INSTANCE.put("class74", "ct"); - INSTANCE.put("class8", "aa"); - INSTANCE.put("class85", "da"); - INSTANCE.put("class89", "dl"); - INSTANCE.put("class9", "af"); - INSTANCE.put("class90", "dk"); - INSTANCE.put("class92", "dz"); - INSTANCE.put("class93", "dw"); - INSTANCE.put("Client", "client"); - INSTANCE.put("ClientPacket", "lw"); - INSTANCE.put("ClientPreferences", "dp"); - INSTANCE.put("Clips", "jl"); - INSTANCE.put("Clock", "ht"); - INSTANCE.put("CollisionMap", "is"); - INSTANCE.put("com/jagex/oldscape/pub/OtlTokenRequester", "com/jagex/oldscape/pub/OtlTokenRequester"); - INSTANCE.put("com/jagex/oldscape/pub/RefreshAccessTokenRequester", "com/jagex/oldscape/pub/RefreshAccessTokenRequester"); - INSTANCE.put("com/jagex/oldscape/pub/RefreshAccessTokenResponse", "com/jagex/oldscape/pub/RefreshAccessTokenResponse"); - INSTANCE.put("ConcurrentMidiTask", "pe"); - INSTANCE.put("Coord", "mc"); - INSTANCE.put("DbRowType", "tc"); - INSTANCE.put("DbTableType", "tk"); - INSTANCE.put("Decimator", "cx"); - INSTANCE.put("DefaultsGroup", "rh"); - INSTANCE.put("DelayFadeTask", "pn"); - INSTANCE.put("DemotingHashTable", "kg"); - INSTANCE.put("DesktopPlatformInfoProvider", "sw"); - INSTANCE.put("DevicePcmPlayer", "aw"); - INSTANCE.put("DevicePcmPlayerProvider", "aj"); - INSTANCE.put("DirectByteArrayCopier", "ms"); - INSTANCE.put("DirectWrapper", "lu"); - INSTANCE.put("DualNode", "sq"); - INSTANCE.put("DualNodeDeque", "os"); - INSTANCE.put("DynamicObject", "dj"); - INSTANCE.put("EnumComposition", "hu"); - INSTANCE.put("EvictingDualNodeHashTable", "le"); - INSTANCE.put("FaceNormal", "iq"); - INSTANCE.put("FadeInTask", "pt"); - INSTANCE.put("FadeOutTask", "px"); - INSTANCE.put("FileSystem", "ga"); - INSTANCE.put("FillMode", "um"); - INSTANCE.put("FloorDecoration", "iy"); - INSTANCE.put("FloorOverlayDefinition", "hr"); - INSTANCE.put("FloorUnderlayDefinition", "hs"); - INSTANCE.put("Font", "pi"); - INSTANCE.put("FontName", "sp"); - INSTANCE.put("Fonts", "sr"); - INSTANCE.put("Frames", "jt"); - INSTANCE.put("Friend", "qo"); - INSTANCE.put("FriendLoginUpdate", "qg"); - INSTANCE.put("FriendsChat", "qc"); - INSTANCE.put("FriendsList", "qk"); - INSTANCE.put("FriendSystem", "ci"); - INSTANCE.put("GameBuild", "nb"); - INSTANCE.put("GameEngine", "bm"); - INSTANCE.put("GameObject", "jy"); - INSTANCE.put("GrandExchangeEvent", "oz"); - INSTANCE.put("GrandExchangeEvents", "no"); - INSTANCE.put("GrandExchangeOffer", "oh"); - INSTANCE.put("GrandExchangeOfferAgeComparator", "nc"); - INSTANCE.put("GrandExchangeOfferNameComparator", "nh"); - INSTANCE.put("GrandExchangeOfferOwnWorldComparator", "cu"); - INSTANCE.put("GrandExchangeOfferTotalQuantityComparator", "nx"); - INSTANCE.put("GrandExchangeOfferUnitPriceComparator", "oy"); - INSTANCE.put("GrandExchangeOfferWorldComparator", "om"); - INSTANCE.put("GraphicsDefaults", "rr"); - INSTANCE.put("GraphicsObject", "cg"); - INSTANCE.put("GZipDecompressor", "us"); - INSTANCE.put("HealthBar", "dm"); - INSTANCE.put("HealthBarDefinition", "hl"); - INSTANCE.put("HealthBarUpdate", "do"); - INSTANCE.put("HitSplatDefinition", "hm"); - INSTANCE.put("HorizontalAlignment", "he"); - INSTANCE.put("Huffman", "mx"); - INSTANCE.put("Ignored", "qu"); - INSTANCE.put("IgnoreList", "qq"); - INSTANCE.put("IndexedSprite", "uk"); - INSTANCE.put("Instrument", "cq"); - INSTANCE.put("IntegerNode", "sz"); - INSTANCE.put("InterfaceParent", "ds"); - INSTANCE.put("Interpreter", "cb"); - INSTANCE.put("IntHashTable", "uz"); - INSTANCE.put("InvDefinition", "hh"); - INSTANCE.put("IsaacCipher", "ux"); - INSTANCE.put("ItemComposition", "hn"); - INSTANCE.put("ItemContainer", "dd"); - INSTANCE.put("ItemLayer", "ir"); - INSTANCE.put("IterableDualNodeQueue", "ou"); - INSTANCE.put("IterableDualNodeQueueIterator", "ol"); - INSTANCE.put("IterableNodeDeque", "oc"); - INSTANCE.put("IterableNodeDequeDescendingIterator", "ot"); - INSTANCE.put("IterableNodeHashTable", "sf"); - INSTANCE.put("IterableNodeHashTableIterator", "sa"); - INSTANCE.put("JagexCache", "gp"); - INSTANCE.put("JagNetThread", "nf"); - INSTANCE.put("KeyHandler", "ak"); - INSTANCE.put("KitDefinition", "hz"); - INSTANCE.put("Language", "on"); - INSTANCE.put("Link", "ri"); - INSTANCE.put("LinkDeque", "ox"); - INSTANCE.put("Login", "cy"); - INSTANCE.put("LoginPacket", "lk"); - INSTANCE.put("LoginScreenAnimation", "db"); - INSTANCE.put("LoginType", "sl"); - INSTANCE.put("LongNode", "st"); - INSTANCE.put("MenuAction", "cz"); - INSTANCE.put("Message", "co"); - INSTANCE.put("Messages", "ea"); - INSTANCE.put("MidiFileReader", "lq"); - INSTANCE.put("MidiPcmStream", "lf"); - INSTANCE.put("MilliClock", "gr"); - INSTANCE.put("Model", "jr"); - INSTANCE.put("ModelData", "ic"); - INSTANCE.put("ModelData0", "jq"); - INSTANCE.put("ModeWhere", "oe"); - INSTANCE.put("MouseHandler", "bf"); - INSTANCE.put("MouseRecorder", "dt"); - INSTANCE.put("MouseWheelHandler", "ay"); - INSTANCE.put("MoveSpeed", "in"); - INSTANCE.put("MusicPatch", "ll"); - INSTANCE.put("MusicPatchNode", "mg"); - INSTANCE.put("MusicPatchNode2", "lj"); - INSTANCE.put("MusicPatchPcmStream", "mh"); - INSTANCE.put("MusicSong", "mu"); - INSTANCE.put("MusicTrack", "mv"); - INSTANCE.put("NanoClock", "gs"); - INSTANCE.put("NewShit", "hq"); - INSTANCE.put("Node", "sj"); - INSTANCE.put("NodeDeque", "ow"); - INSTANCE.put("NodeHashTable", "so"); - INSTANCE.put("NPC", "dx"); - INSTANCE.put("NPCComposition", "hw"); - INSTANCE.put("Null", "org/json/JSONObject$Null"); - INSTANCE.put("ObjectComposition", "hv"); - INSTANCE.put("ObjectNode", "sd"); - INSTANCE.put("ObjectSound", "ca"); - INSTANCE.put("ObjTypeCustomisation", "ho"); - INSTANCE.put("Occluder", "jn"); - INSTANCE.put("org/json/JSONArray", "org/json/JSONArray"); - INSTANCE.put("org/json/JSONException", "org/json/JSONException"); - INSTANCE.put("org/json/JSONObject", "org/json/JSONObject"); - INSTANCE.put("org/json/JSONString", "org/json/JSONString"); - INSTANCE.put("org/json/JSONTokener", "org/json/JSONTokener"); - INSTANCE.put("org/json/Null", "org/json/JSONObject$Null"); - INSTANCE.put("OtlTokenRequester", "com/jagex/oldscape/pub/OtlTokenRequester"); - INSTANCE.put("OtlTokenResponse", "com/jagex/oldscape/pub/OtlTokenResponse"); - INSTANCE.put("PacketBuffer", "to"); - INSTANCE.put("PacketBufferNode", "ly"); - INSTANCE.put("PacketWriter", "er"); - INSTANCE.put("ParamComposition", "hx"); - INSTANCE.put("PcmPlayer", "bb"); - INSTANCE.put("PcmStream", "bw"); - INSTANCE.put("PcmStreamMixer", "bl"); - INSTANCE.put("PcmStreamMixerListener", "cs"); - INSTANCE.put("PendingSpawn", "dv"); - INSTANCE.put("PlatformInfo", "sm"); - INSTANCE.put("Player", "df"); - INSTANCE.put("PlayerComposition", "mt"); - INSTANCE.put("Players", "ee"); - INSTANCE.put("PlayerType", "nn"); - INSTANCE.put("PrivateChatMode", "ub"); - INSTANCE.put("Projectile", "ck"); - INSTANCE.put("Rasterizer2D", "ut"); - INSTANCE.put("Rasterizer3D", "ix"); - INSTANCE.put("RasterProvider", "by"); - INSTANCE.put("RawPcmStream", "bn"); - INSTANCE.put("RawSound", "bu"); - INSTANCE.put("ReflectionCheck", "ba"); - INSTANCE.put("RefreshAccessTokenRequester", "com/jagex/oldscape/pub/RefreshAccessTokenRequester"); - INSTANCE.put("RefreshAccessTokenResponse", "com/jagex/oldscape/pub/RefreshAccessTokenResponse"); - INSTANCE.put("Renderable", "ik"); - INSTANCE.put("RouteStrategy", "iw"); - INSTANCE.put("RunException", "uy"); - INSTANCE.put("Scene", "iv"); - INSTANCE.put("SceneTileModel", "jv"); - INSTANCE.put("SceneTilePaint", "jg"); - INSTANCE.put("Script", "dh"); - INSTANCE.put("ScriptEvent", "dy"); - INSTANCE.put("ScriptFrame", "cv"); - INSTANCE.put("SecureRandomCallable", "dn"); - INSTANCE.put("SecureRandomFuture", "cc"); - INSTANCE.put("SequenceDefinition", "ib"); - INSTANCE.put("ServerPacket", "lg"); - INSTANCE.put("Skeleton", "iu"); - INSTANCE.put("Skills", "nl"); - INSTANCE.put("SoftWrapper", "lx"); - INSTANCE.put("SongTask", "pm"); - INSTANCE.put("SoundCache", "bi"); - INSTANCE.put("SoundEffect", "bp"); - INSTANCE.put("SoundEnvelope", "br"); - INSTANCE.put("SoundSystem", "be"); - INSTANCE.put("SpotAnimation", "un"); - INSTANCE.put("SpotAnimationDefinition", "ha"); - INSTANCE.put("SpriteMask", "me"); - INSTANCE.put("SpritePixels", "ui"); - INSTANCE.put("Strings", "nr"); - INSTANCE.put("StructComposition", "hc"); - INSTANCE.put("StudioGame", "ns"); - INSTANCE.put("SwapSongTask", "po"); - INSTANCE.put("Task", "gz"); - INSTANCE.put("TaskHandler", "gh"); - INSTANCE.put("Texture", "if"); - INSTANCE.put("TextureLoader", "js"); - INSTANCE.put("TextureProvider", "jk"); - INSTANCE.put("Tile", "ii"); - INSTANCE.put("TileItem", "ed"); - INSTANCE.put("Tiles", "du"); - INSTANCE.put("Timer", "py"); - INSTANCE.put("TriBool", "qp"); - INSTANCE.put("UrlRequest", "et"); - INSTANCE.put("UrlRequester", "ev"); - INSTANCE.put("User", "qs"); - INSTANCE.put("UserComparator1", "ua"); - INSTANCE.put("UserComparator10", "ef"); - INSTANCE.put("UserComparator2", "uj"); - INSTANCE.put("UserComparator3", "el"); - INSTANCE.put("UserComparator4", "en"); - INSTANCE.put("UserComparator5", "es"); - INSTANCE.put("UserComparator6", "ec"); - INSTANCE.put("UserComparator7", "ei"); - INSTANCE.put("UserComparator8", "eb"); - INSTANCE.put("UserComparator9", "em"); - INSTANCE.put("UserList", "qt"); - INSTANCE.put("Username", "uc"); - INSTANCE.put("Usernamed", "ql"); - INSTANCE.put("VarbitComposition", "hb"); - INSTANCE.put("VarcInt", "hk"); - INSTANCE.put("Varcs", "ej"); - INSTANCE.put("VarpDefinition", "hi"); - INSTANCE.put("Varps", "mz"); - INSTANCE.put("VertexNormal", "ja"); - INSTANCE.put("VerticalAlignment", "hy"); - INSTANCE.put("ViewportMouse", "jc"); - INSTANCE.put("VorbisCodebook", "cw"); - INSTANCE.put("VorbisFloor", "bo"); - INSTANCE.put("VorbisMapping", "bc"); - INSTANCE.put("VorbisSample", "cm"); - INSTANCE.put("WallDecoration", "jw"); - INSTANCE.put("Widget", "mi"); - INSTANCE.put("World", "ch"); - INSTANCE.put("WorldMap", "si"); - INSTANCE.put("WorldMapArchiveLoader", "sb"); - INSTANCE.put("WorldMapArea", "jf"); - INSTANCE.put("WorldMapAreaData", "kv"); - INSTANCE.put("WorldMapCacheName", "kr"); - INSTANCE.put("WorldMapData_0", "jx"); - INSTANCE.put("WorldMapData_1", "jh"); - INSTANCE.put("WorldMapDecoration", "kn"); - INSTANCE.put("WorldMapDecorationType", "nm"); - INSTANCE.put("WorldMapElement", "hd"); - INSTANCE.put("WorldMapEvent", "kl"); - INSTANCE.put("WorldMapIcon_0", "ki"); - INSTANCE.put("WorldMapIcon_1", "jz"); - INSTANCE.put("WorldMapLabel", "kq"); - INSTANCE.put("WorldMapLabelSize", "jb"); - INSTANCE.put("WorldMapManager", "jd"); - INSTANCE.put("WorldMapRectangle", "ks"); - INSTANCE.put("WorldMapRegion", "jm"); - INSTANCE.put("WorldMapScaleHandler", "ku"); - INSTANCE.put("WorldMapSection", "kw"); - INSTANCE.put("WorldMapSection0", "kj"); - INSTANCE.put("WorldMapSection1", "ky"); - INSTANCE.put("WorldMapSection2", "jp"); - INSTANCE.put("WorldMapSectionType", "ko"); - INSTANCE.put("WorldMapSprite", "kd"); - INSTANCE.put("Wrapper", "lo"); - INSTANCE.put("ZoneOperation", "ls"); - } -} \ No newline at end of file diff --git a/osrs/src/main/java/net/runelite/rs/Reflection.java b/osrs/src/main/java/net/runelite/rs/Reflection.java index 773d1b2f4..680f7065c 100644 --- a/osrs/src/main/java/net/runelite/rs/Reflection.java +++ b/osrs/src/main/java/net/runelite/rs/Reflection.java @@ -3,6 +3,7 @@ import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; +import net.runelite.rs.ObfuscatedClassMap; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; diff --git a/osrs/src/main/java/netscape/js/JSObject.java b/osrs/src/main/java/netscape/js/JSObject.java index aaca02a84..235878abc 100644 --- a/osrs/src/main/java/netscape/js/JSObject.java +++ b/osrs/src/main/java/netscape/js/JSObject.java @@ -69,7 +69,7 @@ protected JSObject() { - public abstract Object call(String methodName, Object... args) throws netscape.js.JSException; + public abstract Object call(String methodName, Object... args) throws JSException; @@ -83,7 +83,7 @@ protected JSObject() { - public abstract Object eval(String s) throws netscape.js.JSException; + public abstract Object eval(String s) throws JSException; @@ -96,7 +96,7 @@ protected JSObject() { - public abstract Object getMember(String name) throws netscape.js.JSException; + public abstract Object getMember(String name) throws JSException; @@ -110,7 +110,7 @@ protected JSObject() { - public abstract void setMember(String name, Object value) throws netscape.js.JSException; + public abstract void setMember(String name, Object value) throws JSException; @@ -122,7 +122,7 @@ protected JSObject() { - public abstract void removeMember(String name) throws netscape.js.JSException; + public abstract void removeMember(String name) throws JSException; @@ -135,7 +135,7 @@ protected JSObject() { - public abstract Object getSlot(int index) throws netscape.js.JSException; + public abstract Object getSlot(int index) throws JSException; @@ -149,7 +149,7 @@ protected JSObject() { - public abstract void setSlot(int index, Object value) throws netscape.js.JSException; + public abstract void setSlot(int index, Object value) throws JSException; diff --git a/osrs/src/main/java/org/json/JSONArray.java b/osrs/src/main/java/org/json/JSONArray.java index de0d4e2ae..8f09c906c 100644 --- a/osrs/src/main/java/org/json/JSONArray.java +++ b/osrs/src/main/java/org/json/JSONArray.java @@ -88,7 +88,7 @@ public JSONArray(Object var1) throws JSONException { int var2 = Array.getLength(var1); for (int var3 = 0; var3 < var2; ++var3) { - this.method2705(Array.get(var1, var3)); + this.method2723(Array.get(var1, var3)); } } @@ -102,7 +102,7 @@ public JSONArray(Object var1, boolean var2) throws JSONException { int var3 = Array.getLength(var1); for (int var4 = 0; var4 < var3; ++var4) { - this.method2705(new JSONObject(Array.get(var1, var4), var2)); + this.method2723(new JSONObject(Array.get(var1, var4), var2)); } } @@ -121,13 +121,13 @@ public JSONArray(Collection var1, boolean var2) { } @ObfuscatedName("opt") - public Object method2704(int var1) { + public Object method2722(int var1) { return var1 >= 0 && var1 < this.length() ? this.myArrayList.get(var1) : null; } @ObfuscatedName("get") - public Object method2703(int var1) throws JSONException { - Object var2 = this.method2704(var1); + public Object method2721(int var1) throws JSONException { + Object var2 = this.method2722(var1); if (var2 == null) { throw new JSONException("JSONArray[" + var1 + "] not found."); } else { @@ -136,7 +136,7 @@ public Object method2703(int var1) throws JSONException { } @ObfuscatedName("put") - public JSONArray method2705(Object var1) { + public JSONArray method2723(Object var1) { this.myArrayList.add(var1); return this; } @@ -144,7 +144,7 @@ public JSONArray method2705(Object var1) { @Export("getBoolean") @ObfuscatedName("getBoolean") public boolean getBoolean(int var1) throws JSONException { - Object var2 = this.method2703(var1); + Object var2 = this.method2721(var1); if (var2.equals(Boolean.FALSE) || var2 instanceof String && ((String)var2).equalsIgnoreCase("false")) { return false; } else if (var2.equals(Boolean.TRUE) || var2 instanceof String && ((String)var2).equalsIgnoreCase("true")) { @@ -157,21 +157,21 @@ public boolean getBoolean(int var1) throws JSONException { @Export("getInt") @ObfuscatedName("getInt") public int getInt(int var1) throws JSONException { - Object var2 = this.method2703(var1); + Object var2 = this.method2721(var1); return var2 instanceof Number ? ((Number)var2).intValue() : (int)this.getDouble(var1); } @Export("getLong") @ObfuscatedName("getLong") public long getLong(int var1) throws JSONException { - Object var2 = this.method2703(var1); + Object var2 = this.method2721(var1); return var2 instanceof Number ? ((Number)var2).longValue() : (long)this.getDouble(var1); } @Export("getDouble") @ObfuscatedName("getDouble") public double getDouble(int var1) throws JSONException { - Object var2 = this.method2703(var1); + Object var2 = this.method2721(var1); try { return var2 instanceof Number ? ((Number)var2).doubleValue() : Double.valueOf((String)var2); @@ -216,7 +216,7 @@ public double optDouble(int var1, double var2) { @Export("getJSONObject") @ObfuscatedName("getJSONObject") public JSONObject getJSONObject(int var1) throws JSONException { - Object var2 = this.method2703(var1); + Object var2 = this.method2721(var1); if (var2 instanceof JSONObject) { return (JSONObject)var2; } else { @@ -308,7 +308,7 @@ public String toString() { @Export("getString") @ObfuscatedName("getString") public String getString(int var1) throws JSONException { - return this.method2703(var1).toString(); + return this.method2721(var1).toString(); } @Export("optBoolean") @@ -344,7 +344,7 @@ public long optLong(int var1, long var2) { @Export("optString") @ObfuscatedName("optString") public String optString(int var1, String var2) { - Object var3 = this.method2704(var1); + Object var3 = this.method2722(var1); return var3 != null ? var3.toString() : var2; } } \ No newline at end of file diff --git a/osrs/src/main/java/org/json/JSONObject.java b/osrs/src/main/java/org/json/JSONObject.java index 54905e261..705c1272a 100644 --- a/osrs/src/main/java/org/json/JSONObject.java +++ b/osrs/src/main/java/org/json/JSONObject.java @@ -11,6 +11,7 @@ import java.util.*; import java.util.Map.Entry; + @Implements("org/json/JSONObject") @ObfuscatedName("org/json/JSONObject") public class JSONObject { @@ -18,14 +19,14 @@ public class JSONObject { @ObfuscatedName("NULL") public static final Object NULL; @ObfuscatedName("map") - Map field4293; + Map field4322; static { NULL = new Null(); } public JSONObject() { - this.field4293 = new HashMap(); + this.field4322 = new HashMap(); } public JSONObject(JSONTokener var1) throws JSONException { @@ -82,30 +83,30 @@ public JSONObject(Object var1, boolean var2) { } public JSONObject(Map var1) { - this.field4293 = (Map)(var1 == null ? new HashMap() : var1); + this.field4322 = (Map)(var1 == null ? new HashMap() : var1); } public JSONObject(Map var1, boolean var2) { - this.field4293 = new HashMap(); + this.field4322 = new HashMap(); if (var1 != null) { Iterator var3 = var1.entrySet().iterator(); while (var3.hasNext()) { Entry var4 = (Entry)var3.next(); - this.field4293.put(var4.getKey(), new JSONObject(var4.getValue(), var2)); + this.field4322.put(var4.getKey(), new JSONObject(var4.getValue(), var2)); } } } @ObfuscatedName("opt") - public Object method2708(String var1) { - return var1 == null ? null : this.field4293.get(var1); + public Object method2726(String var1) { + return var1 == null ? null : this.field4322.get(var1); } @ObfuscatedName("get") - public Object method2707(String var1) throws JSONException { - Object var2 = this.method2708(var1); + public Object method2725(String var1) throws JSONException { + Object var2 = this.method2726(var1); if (var2 == null) { throw new JSONException("JSONObject[" + quote(var1) + "] not found."); } else { @@ -114,13 +115,13 @@ public Object method2707(String var1) throws JSONException { } @ObfuscatedName("put") - public JSONObject method2709(String var1, Object var2) throws JSONException { + public JSONObject method2727(String var1, Object var2) throws JSONException { if (var1 == null) { throw new JSONException("Null key."); } else { if (var2 != null) { testValidity(var2); - this.field4293.put(var1, var2); + this.field4322.put(var1, var2); } else { this.remove(var1); } @@ -132,7 +133,7 @@ public JSONObject method2709(String var1, Object var2) throws JSONException { @Export("getBoolean") @ObfuscatedName("getBoolean") public boolean getBoolean(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); if (var2.equals(Boolean.FALSE) || var2 instanceof String && ((String)var2).equalsIgnoreCase("false")) { return false; } else if (var2.equals(Boolean.TRUE) || var2 instanceof String && ((String)var2).equalsIgnoreCase("true")) { @@ -145,33 +146,33 @@ public boolean getBoolean(String var1) throws JSONException { @Export("getLong") @ObfuscatedName("getLong") public long getLong(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); return var2 instanceof Number ? ((Number)var2).longValue() : (long)this.getDouble(var1); } @Export("keys") @ObfuscatedName("keys") public Iterator keys() { - return this.field4293.keySet().iterator(); + return this.field4322.keySet().iterator(); + } + + @Export("length") + @ObfuscatedName("length") + public int length() { + return this.field4322.size(); } @Export("getInt") @ObfuscatedName("getInt") public int getInt(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); return var2 instanceof Number ? ((Number)var2).intValue() : (int)this.getDouble(var1); } - @Export("length") - @ObfuscatedName("length") - public int length() { - return this.field4293.size(); - } - @Export("getJSONArray") @ObfuscatedName("getJSONArray") public JSONArray getJSONArray(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); if (var2 instanceof JSONArray) { return (JSONArray)var2; } else { @@ -209,19 +210,19 @@ void populateInternalMap(Object var1, boolean var2) { Object var9 = Reflection.invoke(var6, var1, (Object[])null); if (var9 == null) { - this.field4293.put(var8, NULL); + this.field4322.put(var8, NULL); } else if (var9.getClass().isArray()) { - this.field4293.put(var8, new JSONArray(var9, var2)); + this.field4322.put(var8, new JSONArray(var9, var2)); } else if (var9 instanceof Collection) { - this.field4293.put(var8, new JSONArray((Collection)var9, var2)); + this.field4322.put(var8, new JSONArray((Collection)var9, var2)); } else if (var9 instanceof Map) { - this.field4293.put(var8, new JSONObject((Map)var9, var2)); + this.field4322.put(var8, new JSONObject((Map)var9, var2)); } else if (this.isStandardProperty(var9.getClass())) { - this.field4293.put(var8, var9); + this.field4322.put(var8, var9); } else if (!var9.getClass().getPackage().getName().startsWith("java") && var9.getClass().getClassLoader() != null) { - this.field4293.put(var8, new JSONObject(var9, var2)); + this.field4322.put(var8, new JSONObject(var9, var2)); } else { - this.field4293.put(var8, var9.toString()); + this.field4322.put(var8, var9.toString()); } } } catch (Exception var10) { @@ -234,13 +235,13 @@ void populateInternalMap(Object var1, boolean var2) { @Export("remove") @ObfuscatedName("remove") public Object remove(String var1) { - return this.field4293.remove(var1); + return this.field4322.remove(var1); } @Export("getJSONObject") @ObfuscatedName("getJSONObject") public JSONObject getJSONObject(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); if (var2 instanceof JSONObject) { return (JSONObject)var2; } else { @@ -251,13 +252,13 @@ public JSONObject getJSONObject(String var1) throws JSONException { @Export("sortedKeys") @ObfuscatedName("sortedKeys") public Iterator sortedKeys() { - return (new TreeSet(this.field4293.keySet())).iterator(); + return (new TreeSet(this.field4322.keySet())).iterator(); } @Export("getDouble") @ObfuscatedName("getDouble") public double getDouble(String var1) throws JSONException { - Object var2 = this.method2707(var1); + Object var2 = this.method2725(var1); try { return var2 instanceof Number ? ((Number)var2).doubleValue() : Double.valueOf((String)var2); @@ -281,7 +282,7 @@ String toString(int var1, int var2) throws JSONException { var8 = var5.next(); var6.append(quote(var8.toString())); var6.append(": "); - var6.append(valueToString(this.field4293.get(var8), var1, var2)); + var6.append(valueToString(this.field4322.get(var8), var1, var2)); } else { while (true) { int var3; @@ -309,7 +310,7 @@ String toString(int var1, int var2) throws JSONException { var6.append(quote(var8.toString())); var6.append(": "); - var6.append(valueToString(this.field4293.get(var8), var1, var7)); + var6.append(valueToString(this.field4322.get(var8), var1, var7)); } } @@ -334,7 +335,7 @@ public Writer write(Writer var1) throws JSONException { Object var4 = var3.next(); var1.write(quote(var4.toString())); var1.write(58); - Object var5 = this.field4293.get(var4); + Object var5 = this.field4322.get(var4); if (var5 instanceof JSONObject) { ((JSONObject)var5).write(var1); } else if (var5 instanceof JSONArray) { @@ -354,7 +355,7 @@ public Writer write(Writer var1) throws JSONException { @Export("getString") @ObfuscatedName("getString") public String getString(String var1) throws JSONException { - return this.method2707(var1).toString(); + return this.method2725(var1).toString(); } @Export("toString") @@ -372,7 +373,7 @@ public String toString() { Object var3 = var1.next(); var2.append(quote(var3.toString())); var2.append(':'); - var2.append(valueToString(this.field4293.get(var3))); + var2.append(valueToString(this.field4322.get(var3))); } var2.append('}'); @@ -386,11 +387,11 @@ public String toString() { @ObfuscatedName("putOnce") public JSONObject putOnce(String var1, Object var2) throws JSONException { if (var1 != null && var2 != null) { - if (this.method2708(var1) != null) { + if (this.method2726(var1) != null) { throw new JSONException("Duplicate key \"" + var1 + "\""); } - this.method2709(var1, var2); + this.method2727(var1, var2); } return this; @@ -416,7 +417,7 @@ public boolean optBoolean(String var1, boolean var2) { @ObfuscatedName("optDouble") public double optDouble(String var1, double var2) { try { - Object var4 = this.method2708(var1); + Object var4 = this.method2726(var1); return var4 instanceof Number ? ((Number)var4).doubleValue() : new Double((String)var4); } catch (Exception var5) { return var2; @@ -446,7 +447,7 @@ public long optLong(String var1, long var2) { @Export("optString") @ObfuscatedName("optString") public String optString(String var1, String var2) { - Object var3 = this.method2708(var1); + Object var3 = this.method2726(var1); return var3 != null ? var3.toString() : var2; } @@ -454,7 +455,7 @@ public String optString(String var1, String var2) { @ObfuscatedName("putOpt") public JSONObject putOpt(String var1, Object var2) throws JSONException { if (var1 != null && var2 != null) { - this.method2709(var1, var2); + this.method2727(var1, var2); } return this; diff --git a/osrs/src/main/java/org/json/Null.java b/osrs/src/main/java/org/json/Null.java index ba4ce6693..dbfa11cde 100644 --- a/osrs/src/main/java/org/json/Null.java +++ b/osrs/src/main/java/org/json/Null.java @@ -4,10 +4,12 @@ import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; -@Implements("org/json/JSONObject$Null") + +@Implements("org/json/Null") @ObfuscatedName("org/json/JSONObject$Null") final class Null { + Null() { } diff --git a/scripts/src/main/kotlin/meteor/scripts/AssembleScripts.kt b/scripts/src/main/kotlin/meteor/scripts/AssembleScripts.kt index 4d7325bb6..016358880 100644 --- a/scripts/src/main/kotlin/meteor/scripts/AssembleScripts.kt +++ b/scripts/src/main/kotlin/meteor/scripts/AssembleScripts.kt @@ -25,20 +25,13 @@ package meteor.scripts import com.google.common.io.Files -import meteor.Logger.Companion.getLogger -import java.io.File -import net.runelite.cache.script.assembler.Assembler -import net.runelite.cache.definitions.savers.ScriptSaver -import net.runelite.cache.IndexType import com.google.common.io.MoreFiles import com.google.common.io.RecursiveDeleteOption -import java.io.IOException -import java.io.FileInputStream -import java.lang.RuntimeException -import kotlin.jvm.JvmStatic -import java.io.DataOutputStream -import java.io.FileOutputStream -import java.lang.NumberFormatException +import meteor.Logger.Companion.getLogger +import net.runelite.cache.IndexType +import net.runelite.cache.definitions.savers.ScriptSaver +import net.runelite.cache.script.assembler.Assembler +import java.io.* class AssembleScripts private constructor(private val scriptDirectory: File, private val outputDirectory: File) { private val log = getLogger(AssembleScripts::class.java) @@ -50,7 +43,7 @@ class AssembleScripts private constructor(private val scriptDirectory: File, pri var count = 0 val scriptOut = File( outputDirectory, - Integer.toString(IndexType.CLIENTSCRIPT.number) + IndexType.CLIENTSCRIPT.number.toString() ) scriptOut.mkdirs() @@ -67,7 +60,7 @@ class AssembleScripts private constructor(private val scriptDirectory: File, pri FileInputStream(scriptFile).use { fin -> val script = assembler.assemble(fin) val packedScript = saver.save(script) - val targetFile = File(scriptOut, Integer.toString(script.id)) + val targetFile = File(scriptOut, script.id.toString()) Files.write(packedScript, targetFile) // Copy hash file @@ -107,8 +100,7 @@ class AssembleScripts private constructor(private val scriptDirectory: File, pri if (indexFolder.isDirectory) { val indexId = indexFolder.name.toInt() for (archiveFile in indexFolder.listFiles()) { - var archiveId: Int - archiveId = try { + val archiveId: Int = try { archiveFile.name.toInt() } catch (ex: NumberFormatException) { continue diff --git a/scripts/src/main/scripts/CombatInterfaceSP.hash b/scripts/src/main/scripts/CombatInterfaceSP.hash index aac2533be..e4ae6b0cc 100644 --- a/scripts/src/main/scripts/CombatInterfaceSP.hash +++ b/scripts/src/main/scripts/CombatInterfaceSP.hash @@ -1 +1 @@ -2FC8550899F90C47C4B86863A8287C1381FE594088C821EF32533D1F447C2372 \ No newline at end of file +E201FF4289808D0410C8F3896365385C0254CB3F632C4CD556692EEC5B608489 \ No newline at end of file diff --git a/scripts/src/main/scripts/CombatInterfaceSP.rs2asm b/scripts/src/main/scripts/CombatInterfaceSP.rs2asm index 5601e0c12..8a8db3bef 100644 --- a/scripts/src/main/scripts/CombatInterfaceSP.rs2asm +++ b/scripts/src/main/scripts/CombatInterfaceSP.rs2asm @@ -22,6 +22,13 @@ if_setonvartransmit iconst 186 iload 0 + iconst 3 + iconst 1 + sconst "IY" + iload 0 + if_setonstattransmit + iconst 186 + iload 0 iconst 94 iconst 1 sconst "IY" diff --git a/scripts/src/main/scripts/CommandScript.hash b/scripts/src/main/scripts/CommandScript.hash deleted file mode 100644 index 95b738283..000000000 --- a/scripts/src/main/scripts/CommandScript.hash +++ /dev/null @@ -1 +0,0 @@ -2BCAAB2E9DD0FA4284107C7B73FE722A2B63F2024ADD4AD8430724078A2CC1FE \ No newline at end of file diff --git a/scripts/src/main/scripts/CommandScript.rs2asm b/scripts/src/main/scripts/CommandScript.rs2asm deleted file mode 100644 index 8430fed12..000000000 --- a/scripts/src/main/scripts/CommandScript.rs2asm +++ /dev/null @@ -1,1084 +0,0 @@ -.id 73 -.int_stack_count 2 -.string_stack_count 0 -.int_var_count 10 -.string_var_count 0 - iconst 10616885 - if_gethide - iconst 1 - if_icmpeq LABEL9 - iconst 10616886 - if_gethide - iconst 1 - if_icmpeq LABEL9 - jump LABEL10 -LABEL9: - return -LABEL10: - get_varbit 8119 - iconst 0 - if_icmpeq LABEL19 - iconst -1 - iconst 162 - invoke 1701 - iconst 0 - if_icmpeq LABEL19 - jump LABEL20 -LABEL19: - return -LABEL20: - get_varc_string 335 - string_length - istore 2 - iconst 0 - istore 3 - staffmodlevel - iconst 0 - if_icmpgt LABEL29 - jump LABEL60 -LABEL29: - iconst 1 - istore 3 - sconst "`" - iload 1 - string_indexof_char - iconst -1 - if_icmpne LABEL37 - jump LABEL42 -LABEL37: - iload 2 - iconst 0 - if_icmpeq LABEL41 - jump LABEL42 -LABEL41: - return -LABEL42: - sconst ":" - iload 1 - string_indexof_char - iconst -1 - if_icmpne LABEL48 - jump LABEL60 -LABEL48: - get_varc_string 335 - sconst "::" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL55 - jump LABEL60 -LABEL55: - iload 2 - iconst 2 - if_icmpeq LABEL59 - jump LABEL60 -LABEL59: - return -LABEL60: - iconst 0 - istore 4 - iconst -1 - istore 5 - iconst 0 - istore 6 - iconst -1 - istore 7 - iconst 0 - istore 8 - iconst -1 - istore 9 - iload 0 - iconst 84 - if_icmpeq LABEL76 - jump LABEL801 -LABEL76: - invoke 1984 - iload 2 - iconst 0 - if_icmpgt LABEL81 - jump LABEL800 -LABEL81: - iload 3 - iconst 1 - if_icmpeq LABEL85 - jump LABEL152 -LABEL85: - sconst "give" - iload 2 - invoke 4481 - iconst 1 - if_icmpeq LABEL91 - jump LABEL95 -LABEL91: - get_varc_string 335 - string_length - istore 2 - jump LABEL152 -LABEL95: - sconst "set" - iload 2 - invoke 4481 - iconst 1 - if_icmpeq LABEL101 - jump LABEL105 -LABEL101: - get_varc_string 335 - string_length - istore 2 - jump LABEL152 -LABEL105: - sconst "get" - iload 2 - invoke 4481 - iconst 1 - if_icmpeq LABEL111 - jump LABEL115 -LABEL111: - get_varc_string 335 - string_length - istore 2 - jump LABEL152 -LABEL115: - sconst "tele" - iload 2 - invoke 4481 - iconst 1 - if_icmpeq LABEL121 - jump LABEL125 -LABEL121: - get_varc_string 335 - string_length - istore 2 - jump LABEL152 -LABEL125: - sconst "~" - iload 2 - invoke 4481 - iconst 1 - if_icmpeq LABEL131 - jump LABEL135 -LABEL131: - get_varc_string 335 - string_length - istore 2 - jump LABEL152 -LABEL135: - get_varc_string 335 - sconst "::" - iconst 0 - string_indexof_string - istore 7 - iload 7 - iconst 0 - if_icmpgt LABEL144 - jump LABEL152 -LABEL144: - get_varc_string 335 - iload 7 - iload 2 - substring - set_varc_string 335 - get_varc_string 335 - string_length - istore 2 -LABEL152: - get_varc_string 335 - sconst "::" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL159 - jump LABEL162 -LABEL159: - iconst 1 - istore 4 - jump LABEL188 -LABEL162: - get_varc_int 41 - iconst 5 - if_icmpeq LABEL166 - jump LABEL169 -LABEL166: - iconst 41 - istore 5 - jump LABEL188 -LABEL169: - get_varc_int 41 - iconst 4 - if_icmpeq LABEL173 - jump LABEL176 -LABEL173: - iconst 9 - istore 5 - jump LABEL188 -LABEL176: - get_varc_int 41 - iconst 6 - if_icmpeq LABEL180 - jump LABEL188 -LABEL180: - invoke 5262 - iconst 1 - if_icmpeq LABEL184 - jump LABEL188 -LABEL184: - iconst 41 - iconst 1 - istore 8 - istore 5 -LABEL188: - get_varc_string 335 - sconst "////" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL195 - jump LABEL223 -LABEL195: - invoke 5262 - iconst 1 - if_icmpeq LABEL199 - jump LABEL223 -LABEL199: - iconst 4 - iconst 41 - iconst 1 - istore 8 - istore 5 - istore 6 - get_varc_string 335 - sconst "////@" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL212 - jump LABEL216 -LABEL212: - iconst 4 - istore 9 - iconst 5 - istore 6 -LABEL216: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL220 - jump LABEL222 -LABEL220: - iconst 4 - istore 9 -LABEL222: - jump LABEL558 -LABEL223: - get_varc_string 335 - sconst "///" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL230 - jump LABEL252 -LABEL230: - iconst 3 - iconst 44 - istore 5 - istore 6 - get_varc_string 335 - sconst "///@" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL241 - jump LABEL245 -LABEL241: - iconst 3 - istore 9 - iconst 4 - istore 6 -LABEL245: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL249 - jump LABEL251 -LABEL249: - iconst 3 - istore 9 -LABEL251: - jump LABEL558 -LABEL252: - get_varc_string 335 - sconst "//" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL259 - jump LABEL281 -LABEL259: - iconst 2 - iconst 41 - istore 5 - istore 6 - get_varc_string 335 - sconst "//@" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL270 - jump LABEL274 -LABEL270: - iconst 2 - istore 9 - iconst 3 - istore 6 -LABEL274: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL278 - jump LABEL280 -LABEL278: - iconst 2 - istore 9 -LABEL280: - jump LABEL558 -LABEL281: - get_varc_string 335 - lowercase - sconst "/gc " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL296 - get_varc_string 335 - lowercase - sconst "/@gc " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL296 - jump LABEL319 -LABEL296: - iconst 4 - iconst 44 - istore 5 - istore 6 - get_varc_string 335 - lowercase - sconst "/@gc " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL308 - jump LABEL312 -LABEL308: - iconst 3 - istore 9 - iconst 5 - istore 6 -LABEL312: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL316 - jump LABEL318 -LABEL316: - iconst 3 - istore 9 -LABEL318: - jump LABEL558 -LABEL319: - get_varc_string 335 - lowercase - sconst "/c " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL334 - get_varc_string 335 - lowercase - sconst "/@c " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL334 - jump LABEL356 -LABEL334: - iconst 3 - iconst 41 - istore 5 - istore 6 - get_varc_string 335 - sconst "/@c " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL345 - jump LABEL349 -LABEL345: - iconst 2 - istore 9 - iconst 4 - istore 6 -LABEL349: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL353 - jump LABEL355 -LABEL353: - iconst 2 - istore 9 -LABEL355: - jump LABEL558 -LABEL356: - invoke 5262 - iconst 1 - if_icmpeq LABEL360 - jump LABEL399 -LABEL360: - get_varc_string 335 - lowercase - sconst "/g " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL375 - get_varc_string 335 - lowercase - sconst "/@g " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL375 - jump LABEL399 -LABEL375: - iconst 3 - iconst 41 - iconst 1 - istore 8 - istore 5 - istore 6 - get_varc_string 335 - sconst "/@g " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL388 - jump LABEL392 -LABEL388: - iconst 4 - istore 9 - iconst 4 - istore 6 -LABEL392: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL396 - jump LABEL398 -LABEL396: - iconst 4 - istore 9 -LABEL398: - jump LABEL558 -LABEL399: - get_varc_string 335 - lowercase - sconst "/f " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL413 - get_varc_string 335 - sconst "/@f " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL413 - jump LABEL435 -LABEL413: - iconst 3 - iconst 9 - istore 5 - istore 6 - get_varc_string 335 - sconst "/@f " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL424 - jump LABEL428 -LABEL424: - iconst 1 - istore 9 - iconst 4 - istore 6 -LABEL428: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL432 - jump LABEL434 -LABEL432: - iconst 1 - istore 9 -LABEL434: - jump LABEL558 -LABEL435: - get_varc_string 335 - lowercase - sconst "/p " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL449 - get_varc_string 335 - sconst "/@p " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL449 - jump LABEL471 -LABEL449: - iconst 3 - iconst 2 - istore 5 - istore 6 - get_varc_string 335 - sconst "/@p " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL460 - jump LABEL464 -LABEL460: - iconst 0 - istore 9 - iconst 4 - istore 6 -LABEL464: - get_varbit 13120 - iconst 1 - if_icmpeq LABEL468 - jump LABEL470 -LABEL468: - iconst 0 - istore 9 -LABEL470: - jump LABEL558 -LABEL471: - get_varc_string 335 - sconst "/" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL478 - jump LABEL558 -LABEL478: - get_varc_string 335 - sconst "/@p" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL485 - jump LABEL492 -LABEL485: - iconst 0 - iconst 2 - iconst 3 - istore 6 - istore 5 - istore 9 - jump LABEL558 -LABEL492: - get_varc_string 335 - sconst "/@f" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL499 - jump LABEL506 -LABEL499: - iconst 1 - iconst 9 - iconst 3 - istore 6 - istore 5 - istore 9 - jump LABEL558 -LABEL506: - get_varc_string 335 - sconst "/@c" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL513 - jump LABEL520 -LABEL513: - iconst 2 - iconst 41 - iconst 3 - istore 6 - istore 5 - istore 9 - jump LABEL558 -LABEL520: - get_varc_string 335 - sconst "/@gc" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL527 - jump LABEL534 -LABEL527: - iconst 3 - iconst 44 - iconst 4 - istore 6 - istore 5 - istore 9 - jump LABEL558 -LABEL534: - get_varc_string 335 - sconst "/@g" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL541 - jump LABEL548 -LABEL541: - iconst 4 - iconst 41 - iconst 3 - istore 6 - istore 5 - istore 9 - jump LABEL558 -LABEL548: - iconst 1 - iconst 9 - istore 5 - istore 6 - get_varbit 13120 - iconst 1 - if_icmpeq LABEL556 - jump LABEL558 -LABEL556: - iconst 1 - istore 9 -LABEL558: - iload 5 - iconst 44 - if_icmpeq LABEL562 - jump LABEL596 -LABEL562: - activeclansettings_find_listened - iconst 1 - if_icmpeq LABEL566 - jump LABEL593 -LABEL566: - activeclanchannel_find_listened - iconst 1 - if_icmpeq LABEL570 - jump LABEL593 -LABEL570: - activeclansettings_getallowunaffined - iconst 1 - if_icmpeq LABEL574 - jump LABEL590 -LABEL574: - get_varclansetting 33 - switch - 1001: LABEL577 - 1002: LABEL577 - 1003: LABEL577 - 1004: LABEL577 - 1005: LABEL577 - 1006: LABEL577 - jump LABEL580 -LABEL577: - sconst "You are not chatting as a guest in a channel at the moment." - mes - jump LABEL589 -LABEL580: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 4 - iconst 0 - iconst 0 - iload 9 - invoke 5517 -LABEL589: - jump LABEL592 -LABEL590: - sconst "Guests are not invited to speak in this clan's channel." - mes -LABEL592: - jump LABEL595 -LABEL593: - sconst "You are not chatting as a guest in a clan channel at the moment." - mes -LABEL595: - jump LABEL796 -LABEL596: - iload 5 - iconst 41 - if_icmpeq LABEL600 - jump LABEL664 -LABEL600: - iload 8 - iconst 0 - if_icmpeq LABEL604 - jump LABEL635 -LABEL604: - iconst 0 - activeclanchannel_find_affined - iconst 1 - if_icmpeq LABEL609 - jump LABEL635 -LABEL609: - chat_playername - removetags - activeclanchannel_getuserslot - istore 7 - iload 7 - iconst -1 - if_icmpne LABEL617 - jump LABEL632 -LABEL617: - iload 7 - activeclanchannel_getuserrank - activeclanchannel_getranktalk - if_icmpge LABEL622 - jump LABEL632 -LABEL622: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 3 - iconst 0 - iconst 0 - iload 9 - invoke 5517 - jump LABEL634 -LABEL632: - sconst "You do not have the required rank to talk in the clan's channel." - mes -LABEL634: - jump LABEL663 -LABEL635: - iload 8 - iconst 1 - if_icmpeq LABEL639 - jump LABEL654 -LABEL639: - iconst 1 - activeclanchannel_find_affined - iconst 1 - if_icmpeq LABEL644 - jump LABEL654 -LABEL644: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 3 - iconst 1 - iconst 0 - iload 9 - invoke 5517 - jump LABEL663 -LABEL654: - iload 8 - iconst 1 - if_icmpeq LABEL658 - jump LABEL661 -LABEL658: - sconst "You are not chatting in the channel of your Iron Group at the moment." - mes - jump LABEL663 -LABEL661: - sconst "You are not chatting in the channel of your Clan at the moment." - mes -LABEL663: - jump LABEL796 -LABEL664: - iload 5 - iconst 9 - if_icmpeq LABEL668 - jump LABEL698 -LABEL668: - clan_getchatcount - iconst 0 - if_icmpgt LABEL672 - jump LABEL688 -LABEL672: - get_varbit 4394 - iconst 1 - if_icmpeq LABEL676 - jump LABEL678 -LABEL676: - clan_leavechat - jump LABEL687 -LABEL678: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 2 - iconst -1 - iconst 0 - iload 9 - invoke 5517 -LABEL687: - jump LABEL697 -LABEL688: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 0 - iconst -1 - iconst 0 - iconst -1 - invoke 5517 -LABEL697: - jump LABEL796 -LABEL698: - iload 5 - iconst 2 - if_icmpeq LABEL702 - jump LABEL712 -LABEL702: - get_varc_string 335 - iload 6 - iload 2 - substring - iconst 0 - iconst -1 - iconst 0 - iload 9 - invoke 5517 - jump LABEL796 -LABEL712: - iload 4 - iconst 1 - if_icmpeq LABEL716 - jump LABEL790 -LABEL716: - iload 2 - iconst 2 - if_icmpgt LABEL720 - jump LABEL783 -LABEL720: - ; move chatout_add under if ($length2 > 2) to only add for :: commands - get_varc_string 335 - invoke 77 ; chatout_add - get_varc_string 335 - sconst "::toggleroof" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL727 - jump LABEL742 -LABEL727: - iconst 1 - 3215 - iconst 1 - if_icmpeq LABEL732 - jump LABEL737 -LABEL732: - iconst 0 - invoke 4583 - sconst "Roofs will only be removed selectively. This setting will not be saved." - mes - jump LABEL741 -LABEL737: - iconst 1 - invoke 4583 - sconst "Roofs are now all hidden. This setting will not be saved." - mes -LABEL741: - jump LABEL782 -LABEL742: - get_varc_string 335 - sconst "::wiki " - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL754 - get_varc_string 335 - sconst "::wiki" - compare - iconst 0 - if_icmpeq LABEL754 - sconst "runeliteCommand" ; load callback name - runelite_callback ; invoke callback - jump LABEL757 -LABEL754: - get_varc_string 335 - invoke 3299 - jump LABEL782 -LABEL757: - get_varc_string 335 - sconst "::bank" - iconst 0 - string_indexof_string - iconst 0 - if_icmpeq LABEL764 - jump LABEL771 -LABEL764: - sconst "Hey, everyone, I just tried to do something very silly!" - iconst 0 - iconst -1 - iconst 0 - iconst -1 - invoke 5517 - jump LABEL782 -LABEL771: - get_varc_string 335 - invoke 224 - set_varc_string 335 - get_varc_string 335 - string_length - istore 2 - get_varc_string 335 - iconst 2 - iload 2 - substring - docheat -LABEL782: - jump LABEL789 -LABEL783: - get_varc_string 335 - iconst 0 - iconst -1 - iconst 0 - iconst -1 - invoke 5517 -LABEL789: - jump LABEL796 -LABEL790: - get_varc_string 335 - iconst 0 - iconst -1 - iconst 1 - iload 9 - invoke 5517 -LABEL796: - ; see comment above - jump AFTER_CHATOUT_ADD - get_varc_string 335 - invoke 77 -AFTER_CHATOUT_ADD: - sconst "" - set_varc_string 335 -LABEL800: - jump LABEL876 -LABEL801: - iload 0 - iconst 104 - if_icmpeq LABEL805 - jump LABEL811 -LABEL805: - iload 3 - sconst "devtoolsEnabled" - runelite_callback - iconst 1 - if_icmpeq LABEL809 - jump LABEL810 -LABEL809: - invoke 75 -LABEL810: - jump LABEL876 -LABEL811: - iload 0 - iconst 105 - if_icmpeq LABEL815 - jump LABEL821 -LABEL815: - iload 3 - sconst "devtoolsEnabled" - runelite_callback - iconst 1 - if_icmpeq LABEL819 - jump LABEL820 -LABEL819: - invoke 76 -LABEL820: - jump LABEL876 -LABEL821: - iload 0 - iconst 80 - if_icmpeq LABEL825 - jump LABEL870 -LABEL825: - iconst 40697936 - iconst 1 - cc_find - iconst 1 - if_icmpeq LABEL831 - jump LABEL832 -LABEL831: - return -LABEL832: - get_varc_string 356 - string_length - iconst 0 - if_icmpgt LABEL837 - jump LABEL857 -LABEL837: - get_varc_string 356 - friend_test - iconst 1 - if_icmpeq LABEL842 - jump LABEL845 -LABEL842: - get_varc_string 356 - invoke 107 - return -LABEL845: - get_varc_int 60 - clientclock - if_icmpgt LABEL849 - jump LABEL850 -LABEL849: - return -LABEL850: - clientclock - iconst 50 - add - set_varc_int 60 - sconst "That player was not found on your Friends list." - mes - return -LABEL857: - get_varc_int 60 - clientclock - if_icmpgt LABEL861 - jump LABEL862 -LABEL861: - return -LABEL862: - clientclock - iconst 50 - add - set_varc_int 60 - sconst "You haven't received any messages to which you can reply." - mes - return - jump LABEL876 -LABEL870: - get_varc_string 335 - iconst 0 - iload 0 - iload 1 - invoke 74 - iconst 1 ; check if we're ignoring input - iconst 0 ; - sconst "blockChatInput" ; - runelite_callback ; - if_icmpeq SKIPSETVARC ; skip setting varc with input - set_varc_string 335 - jump LABEL876 ; jump over SKIPSETVARC -SKIPSETVARC: - pop_string ; pop message -LABEL876: - invoke 223 - return diff --git a/scripts/src/main/scripts/ToplevelCompassOp.hash b/scripts/src/main/scripts/ToplevelCompassOp.hash deleted file mode 100644 index 2d66d7aca..000000000 --- a/scripts/src/main/scripts/ToplevelCompassOp.hash +++ /dev/null @@ -1 +0,0 @@ -9365BC83CB2365C7BC3FBFC90C01232DD242740014E14D456BBAA0622D5570F0 \ No newline at end of file diff --git a/scripts/src/main/scripts/ToplevelCompassOp.rs2asm b/scripts/src/main/scripts/ToplevelCompassOp.rs2asm deleted file mode 100644 index 437356a25..000000000 --- a/scripts/src/main/scripts/ToplevelCompassOp.rs2asm +++ /dev/null @@ -1,70 +0,0 @@ -.id 1050 -.int_stack_count 1 -.string_stack_count 0 -.int_var_count 1 -.string_var_count 0 - iload 0 - iconst 4 - if_icmpgt LABEL10 - get_varbit 542 - iconst 1 - if_icmpeq LABEL10 - get_varbit 4606 - iconst 0 - if_icmpne LABEL10 - jump LABEL11 -LABEL10: - return -LABEL11: - iconst 2266 - iconst 1 - iconst 0 - sound_synth - iload 0 - switch - 1: LABEL18 - 2: LABEL25 - 3: LABEL32 - 4: LABEL39 - jump LABEL45 -LABEL18: - iconst 225 - iconst 5 - randominc - add - sconst "lookPreservePitch" - runelite_callback - iconst 0 - cam_forceangle - jump LABEL45 -LABEL25: - iconst 225 - iconst 5 - randominc - add - sconst "lookPreservePitch" - runelite_callback - iconst 1536 - cam_forceangle - jump LABEL45 -LABEL32: - iconst 225 - iconst 5 - randominc - add - sconst "lookPreservePitch" - runelite_callback - iconst 1024 - cam_forceangle - jump LABEL45 -LABEL39: - iconst 225 - iconst 5 - randominc - add - sconst "lookPreservePitch" - runelite_callback - iconst 512 - cam_forceangle -LABEL45: - return diff --git a/settings.gradle.kts b/settings.gradle.kts index aef4ee1ec..c7cdbbdbe 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -15,7 +15,7 @@ include("api") include("api-rs") include("cache") include("client") -include("deobfuscator") +include("asm") include("eventbus") include("http") include("injector")