293 lines
7.6 KiB
Java
293 lines
7.6 KiB
Java
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;
|
|
}
|
|
}
|