import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; import net.runelite.rs.ScriptOpcodes; @ObfuscatedName("ba") @Implements("GraphicsObject") public final class GraphicsObject extends Entity { @ObfuscatedName("q") @ObfuscatedGetter( intValue = -1729585911 ) @Export("id") int id; @ObfuscatedName("w") @ObfuscatedGetter( intValue = 1383922821 ) @Export("cycleStart") int cycleStart; @ObfuscatedName("e") @ObfuscatedGetter( intValue = -973375147 ) @Export("plane") int plane; @ObfuscatedName("p") @ObfuscatedGetter( intValue = 1889549973 ) @Export("x") int x; @ObfuscatedName("k") @ObfuscatedGetter( intValue = -938790661 ) @Export("y") int y; @ObfuscatedName("l") @ObfuscatedGetter( intValue = -955418477 ) @Export("height") int height; @ObfuscatedName("b") @ObfuscatedSignature( signature = "Lis;" ) @Export("sequenceDefinition") SequenceDefinition sequenceDefinition; @ObfuscatedName("i") @ObfuscatedGetter( intValue = -1315114867 ) @Export("frame") int frame; @ObfuscatedName("c") @ObfuscatedGetter( intValue = -1432178363 ) @Export("frameCycle") int frameCycle; @ObfuscatedName("f") @Export("isFinished") boolean isFinished; GraphicsObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7) { this.frame = 0; this.frameCycle = 0; this.isFinished = false; this.id = var1; this.plane = var2; this.x = var3; this.y = var4; this.height = var5; this.cycleStart = var7 + var6; int var8 = MusicPatch.getSpotAnimationDefinition(this.id).sequence; if (var8 != -1) { this.isFinished = false; this.sequenceDefinition = GrandExchangeEvent.getSequenceDefinition(var8); } else { this.isFinished = true; } } @ObfuscatedName("q") @ObfuscatedSignature( signature = "(IB)V", garbageValue = "4" ) @Export("advance") final void advance(int var1) { if (!this.isFinished) { this.frameCycle += var1; while (this.frameCycle > this.sequenceDefinition.frameLengths[this.frame]) { this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame]; ++this.frame; if (this.frame >= this.sequenceDefinition.frameIds.length) { this.isFinished = true; break; } } } } @ObfuscatedName("c") @ObfuscatedSignature( signature = "(I)Ldm;", garbageValue = "759381421" ) @Export("getModel") protected final Model getModel() { SpotAnimationDefinition var1 = MusicPatch.getSpotAnimationDefinition(this.id); Model var2; if (!this.isFinished) { var2 = var1.getModel(this.frame); } else { var2 = var1.getModel(-1); } return var2 == null ? null : var2; } @ObfuscatedName("r") @ObfuscatedSignature( signature = "(ILcx;ZS)I", garbageValue = "-11723" ) static int method1943(int var0, Script var1, boolean var2) { Widget var3; if (var0 >= 2000) { var0 -= 1000; var3 = class80.getWidget(Interpreter.Interpreter_intStack[--HealthBarUpdate.Interpreter_intStackSize]); } else { var3 = var2 ? Interpreter.field1111 : Calendar.field2507; } String var4 = Interpreter.Interpreter_stringStack[--Skills.Interpreter_stringStackSize]; int[] var5 = null; if (var4.length() > 0 && var4.charAt(var4.length() - 1) == 'Y') { int var6 = Interpreter.Interpreter_intStack[--HealthBarUpdate.Interpreter_intStackSize]; if (var6 > 0) { for (var5 = new int[var6]; var6-- > 0; var5[var6] = Interpreter.Interpreter_intStack[--HealthBarUpdate.Interpreter_intStackSize]) { } } var4 = var4.substring(0, var4.length() - 1); } Object[] var8 = new Object[var4.length() + 1]; int var7; for (var7 = var8.length - 1; var7 >= 1; --var7) { if (var4.charAt(var7 - 1) == 's') { var8[var7] = Interpreter.Interpreter_stringStack[--Skills.Interpreter_stringStackSize]; } else { var8[var7] = new Integer(Interpreter.Interpreter_intStack[--HealthBarUpdate.Interpreter_intStackSize]); } } var7 = Interpreter.Interpreter_intStack[--HealthBarUpdate.Interpreter_intStackSize]; if (var7 != -1) { var8[0] = new Integer(var7); } else { var8 = null; } if (var0 == ScriptOpcodes.CC_SETONCLICK) { var3.onClick = var8; } else if (var0 == ScriptOpcodes.CC_SETONHOLD) { var3.onHold = var8; } else if (var0 == ScriptOpcodes.CC_SETONRELEASE) { var3.onRelease = var8; } else if (var0 == ScriptOpcodes.CC_SETONMOUSEOVER) { var3.onMouseOver = var8; } else if (var0 == ScriptOpcodes.CC_SETONMOUSELEAVE) { var3.onMouseLeave = var8; } else if (var0 == ScriptOpcodes.CC_SETONDRAG) { var3.onDrag = var8; } else if (var0 == ScriptOpcodes.CC_SETONTARGETLEAVE) { var3.onTargetLeave = var8; } else if (var0 == ScriptOpcodes.CC_SETONVARTRANSMIT) { var3.onVarTransmit = var8; var3.varTransmitTriggers = var5; } else if (var0 == ScriptOpcodes.CC_SETONTIMER) { var3.onTimer = var8; } else if (var0 == ScriptOpcodes.CC_SETONOP) { var3.onOp = var8; } else if (var0 == ScriptOpcodes.CC_SETONDRAGCOMPLETE) { var3.onDragComplete = var8; } else if (var0 == ScriptOpcodes.CC_SETONCLICKREPEAT) { var3.onClickRepeat = var8; } else if (var0 == ScriptOpcodes.CC_SETONMOUSEREPEAT) { var3.onMouseRepeat = var8; } else if (var0 == ScriptOpcodes.CC_SETONINVTRANSMIT) { var3.onInvTransmit = var8; var3.invTransmitTriggers = var5; } else if (var0 == ScriptOpcodes.CC_SETONSTATTRANSMIT) { var3.onStatTransmit = var8; var3.statTransmitTriggers = var5; } else if (var0 == ScriptOpcodes.CC_SETONTARGETENTER) { var3.onTargetEnter = var8; } else if (var0 == ScriptOpcodes.CC_SETONSCROLLWHEEL) { var3.onScroll = var8; } else if (var0 == ScriptOpcodes.CC_SETONCHATTRANSMIT) { var3.onChatTransmit = var8; } else if (var0 == ScriptOpcodes.CC_SETONKEY) { var3.onKey = var8; } else if (var0 == ScriptOpcodes.CC_SETONFRIENDTRANSMIT) { var3.onFriendTransmit = var8; } else if (var0 == ScriptOpcodes.CC_SETONCLANTRANSMIT) { var3.onClanTransmit = var8; } else if (var0 == ScriptOpcodes.CC_SETONMISCTRANSMIT) { var3.onMiscTransmit = var8; } else if (var0 == ScriptOpcodes.CC_SETONDIALOGABORT) { var3.onDialogAbort = var8; } else if (var0 == ScriptOpcodes.CC_SETONSUBCHANGE) { var3.onSubChange = var8; } else if (var0 == ScriptOpcodes.CC_SETONSTOCKTRANSMIT) { var3.onStockTransmit = var8; } else if (var0 == 1426) { var3.field2681 = var8; } else { if (var0 != ScriptOpcodes.CC_SETONRESIZE) { return 2; } var3.onResize = var8; } var3.hasListener = true; return 1; } @ObfuscatedName("g") @ObfuscatedSignature( signature = "(III)I", garbageValue = "1550273173" ) static final int method1948(int var0, int var1) { if (var0 == -1) { return 12345678; } else { var1 = (var0 & 127) * var1 / 128; if (var1 < 2) { var1 = 2; } else if (var1 > 126) { var1 = 126; } return (var0 & 65408) + var1; } } @ObfuscatedName("az") @ObfuscatedSignature( signature = "(Ldx;I)V", garbageValue = "-1064292468" ) @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); } } @ObfuscatedName("he") @ObfuscatedSignature( signature = "(I)V", garbageValue = "-1819884546" ) @Export("resetMenuEntries") static void resetMenuEntries() { Strings.method4121(); Client.menuActions[0] = "Cancel"; Client.menuTargetNames[0] = ""; Client.menuOpcodes[0] = 1006; Client.menuShiftClick[0] = false; Client.menuOptionsCount = 1; } }