117 lines
3.1 KiB
Java
117 lines
3.1 KiB
Java
import java.util.Comparator;
|
|
import net.runelite.mapping.Export;
|
|
import net.runelite.mapping.Implements;
|
|
import net.runelite.mapping.ObfuscatedName;
|
|
import net.runelite.mapping.ObfuscatedSignature;
|
|
|
|
@ObfuscatedName("bu")
|
|
@Implements("GrandExchangeOfferOwnWorldComparator")
|
|
public class GrandExchangeOfferOwnWorldComparator implements Comparator {
|
|
@ObfuscatedName("l")
|
|
@Export("filterWorlds")
|
|
boolean filterWorlds;
|
|
|
|
GrandExchangeOfferOwnWorldComparator() {
|
|
}
|
|
|
|
@ObfuscatedName("l")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lkd;Lkd;B)I",
|
|
garbageValue = "-39"
|
|
)
|
|
@Export("compare_bridged")
|
|
int compare_bridged(GrandExchangeEvent var1, GrandExchangeEvent var2) {
|
|
if (var2.world == var1.world) {
|
|
return 0;
|
|
} else {
|
|
if (this.filterWorlds) {
|
|
if (Client.worldId == var1.world) {
|
|
return -1;
|
|
}
|
|
|
|
if (var2.world == Client.worldId) {
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
return var1.world < var2.world ? -1 : 1;
|
|
}
|
|
}
|
|
|
|
public int compare(Object var1, Object var2) {
|
|
return this.compare_bridged((GrandExchangeEvent)var1, (GrandExchangeEvent)var2);
|
|
}
|
|
|
|
public boolean equals(Object var1) {
|
|
return super.equals(var1);
|
|
}
|
|
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "([BI)Lbe;",
|
|
garbageValue = "1110991115"
|
|
)
|
|
@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 ? InvDefinition.method2881(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.field956 = 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("jh")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IB)V",
|
|
garbageValue = "20"
|
|
)
|
|
static final void method1104(int var0) {
|
|
var0 = Math.min(Math.max(var0, 0), 127);
|
|
WorldMapDecorationType.clientPreferences.areaSoundEffectsVolume = var0;
|
|
ScriptFrame.savePreferences();
|
|
}
|
|
}
|