225 lines
5.4 KiB
Java
225 lines
5.4 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;
|
|
|
|
@ObfuscatedName("gm")
|
|
@Implements("AbstractWorldMapIcon")
|
|
public abstract class AbstractWorldMapIcon {
|
|
@ObfuscatedName("bn")
|
|
@Export("otp")
|
|
static String otp;
|
|
@ObfuscatedName("fg")
|
|
@ObfuscatedGetter(
|
|
intValue = -1470370987
|
|
)
|
|
@Export("js5Port")
|
|
static int js5Port;
|
|
@ObfuscatedName("z")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Liy;"
|
|
)
|
|
@Export("coord2")
|
|
public final Coord coord2;
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Liy;"
|
|
)
|
|
@Export("coord1")
|
|
public final Coord coord1;
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedGetter(
|
|
intValue = 644228695
|
|
)
|
|
@Export("screenX")
|
|
int screenX;
|
|
@ObfuscatedName("e")
|
|
@ObfuscatedGetter(
|
|
intValue = -1315860779
|
|
)
|
|
@Export("screenY")
|
|
int screenY;
|
|
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Liy;Liy;)V"
|
|
)
|
|
AbstractWorldMapIcon(Coord var1, Coord var2) {
|
|
this.coord1 = var1;
|
|
this.coord2 = var2;
|
|
}
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)I",
|
|
garbageValue = "120"
|
|
)
|
|
@Export("getElement")
|
|
public abstract int getElement();
|
|
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(S)Lgz;",
|
|
garbageValue = "3118"
|
|
)
|
|
@Export("getLabel")
|
|
abstract WorldMapLabel getLabel();
|
|
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)I",
|
|
garbageValue = "-50"
|
|
)
|
|
@Export("getSubWidth")
|
|
abstract int getSubWidth();
|
|
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-967271066"
|
|
)
|
|
@Export("getSubHeight")
|
|
abstract int getSubHeight();
|
|
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(III)Z",
|
|
garbageValue = "-545927785"
|
|
)
|
|
@Export("fitsScreen")
|
|
boolean fitsScreen(int var1, int var2) {
|
|
if (this.elementFitsScreen(var1, var2)) {
|
|
return true;
|
|
} else {
|
|
return this.labelFitsScreen(var1, var2);
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("d")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "-1733831086"
|
|
)
|
|
@Export("hasValidElement")
|
|
boolean hasValidElement() {
|
|
return this.getElement() >= 0;
|
|
}
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(III)Z",
|
|
garbageValue = "-1675703397"
|
|
)
|
|
@Export("elementFitsScreen")
|
|
boolean elementFitsScreen(int var1, int var2) {
|
|
if (!this.hasValidElement()) {
|
|
return false;
|
|
} else {
|
|
WorldMapElement var3 = class54.WorldMapElement_get(this.getElement());
|
|
int var4 = this.getSubWidth();
|
|
int var5 = this.getSubHeight();
|
|
switch(var3.horizontalAlignment.value) {
|
|
case 0:
|
|
if (var1 > this.screenX - var4 && var1 <= this.screenX) {
|
|
break;
|
|
}
|
|
|
|
return false;
|
|
case 1:
|
|
if (var1 < this.screenX - var4 / 2 || var1 > var4 / 2 + this.screenX) {
|
|
return false;
|
|
}
|
|
break;
|
|
case 2:
|
|
if (var1 < this.screenX || var1 >= var4 + this.screenX) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
switch(var3.verticalAlignment.value) {
|
|
case 0:
|
|
if (var2 < this.screenY - var5 / 2 || var2 > var5 / 2 + this.screenY) {
|
|
return false;
|
|
}
|
|
break;
|
|
case 1:
|
|
if (var2 < this.screenY || var2 >= var5 + this.screenY) {
|
|
return false;
|
|
}
|
|
break;
|
|
case 2:
|
|
if (var2 <= this.screenY - var5 || var2 > this.screenY) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(III)Z",
|
|
garbageValue = "859563161"
|
|
)
|
|
@Export("labelFitsScreen")
|
|
boolean labelFitsScreen(int var1, int var2) {
|
|
WorldMapLabel var3 = this.getLabel();
|
|
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;
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedSignature(
|
|
descriptor = "([BI)V",
|
|
garbageValue = "-417531857"
|
|
)
|
|
@Export("ByteArrayPool_release")
|
|
public static synchronized void ByteArrayPool_release(byte[] var0) {
|
|
if (var0.length == 100 && ByteArrayPool.ByteArrayPool_smallCount < 1000) {
|
|
ByteArrayPool.ByteArrayPool_small[++ByteArrayPool.ByteArrayPool_smallCount - 1] = var0;
|
|
} else if (var0.length == 5000 && ByteArrayPool.ByteArrayPool_mediumCount < 250) {
|
|
ByteArrayPool.ByteArrayPool_medium[++ByteArrayPool.ByteArrayPool_mediumCount - 1] = var0;
|
|
} else if (var0.length == 30000 && ByteArrayPool.ByteArrayPool_largeCount < 50) {
|
|
ByteArrayPool.ByteArrayPool_large[++ByteArrayPool.ByteArrayPool_largeCount - 1] = var0;
|
|
} else {
|
|
if (ByteArrayPool.ByteArrayPool_arrays != null) {
|
|
for (int var1 = 0; var1 < ByteArrayPool.ByteArrayPool_alternativeSizes.length; ++var1) {
|
|
if (var0.length == ByteArrayPool.ByteArrayPool_alternativeSizes[var1] && TileItem.ByteArrayPool_altSizeArrayCounts[var1] < ByteArrayPool.ByteArrayPool_arrays[var1].length) {
|
|
ByteArrayPool.ByteArrayPool_arrays[var1][TileItem.ByteArrayPool_altSizeArrayCounts[var1]++] = var0;
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IZIZI)V",
|
|
garbageValue = "2006423596"
|
|
)
|
|
@Export("sortWorldList")
|
|
static void sortWorldList(int var0, boolean var1, int var2, boolean var3) {
|
|
if (class393.World_worlds != null) {
|
|
MusicPatchNode2.doWorldSorting(0, class393.World_worlds.length - 1, var0, var1, var2, var3);
|
|
}
|
|
|
|
}
|
|
|
|
@ObfuscatedName("l")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "237623973"
|
|
)
|
|
public static void method3871() {
|
|
PlayerComposition.PlayerAppearance_cachedModels.clear();
|
|
}
|
|
}
|