Files
runelite/runescape-client/src/main/java/AbstractWorldMapData.java
2022-02-09 13:21:03 +01:00

322 lines
8.9 KiB
Java

import java.util.LinkedList;
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("hx")
@Implements("AbstractWorldMapData")
public abstract class AbstractWorldMapData {
@ObfuscatedName("r")
@ObfuscatedGetter(
intValue = -728209617
)
@Export("regionXLow")
int regionXLow;
@ObfuscatedName("o")
@ObfuscatedGetter(
intValue = -2099381307
)
@Export("regionYLow")
int regionYLow;
@ObfuscatedName("i")
@ObfuscatedGetter(
intValue = -1944778357
)
@Export("regionX")
int regionX;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = 92457965
)
@Export("regionY")
int regionY;
@ObfuscatedName("v")
@ObfuscatedGetter(
intValue = -699365889
)
@Export("minPlane")
int minPlane;
@ObfuscatedName("a")
@ObfuscatedGetter(
intValue = 719517601
)
@Export("planes")
int planes;
@ObfuscatedName("y")
@ObfuscatedGetter(
intValue = 1019583287
)
@Export("groupId")
int groupId;
@ObfuscatedName("u")
@ObfuscatedGetter(
intValue = 582438051
)
@Export("fileId")
int fileId;
@ObfuscatedName("h")
@Export("floorUnderlayIds")
short[][][] floorUnderlayIds;
@ObfuscatedName("q")
@Export("floorOverlayIds")
short[][][] floorOverlayIds;
@ObfuscatedName("x")
byte[][][] field2736;
@ObfuscatedName("p")
byte[][][] field2731;
@ObfuscatedName("n")
@ObfuscatedSignature(
descriptor = "[[[[Lhj;"
)
@Export("decorations")
WorldMapDecoration[][][][] decorations;
@ObfuscatedName("m")
boolean field2728;
@ObfuscatedName("d")
boolean field2740;
AbstractWorldMapData() {
this.groupId = -1; // L: 14
this.fileId = -1; // L: 15
new LinkedList();
this.field2728 = false;
this.field2740 = false;
}
@ObfuscatedName("l")
@ObfuscatedSignature(
descriptor = "(Lpi;B)V",
garbageValue = "-12"
)
@Export("readGeography")
abstract void readGeography(Buffer var1);
@ObfuscatedName("m")
@ObfuscatedSignature(
descriptor = "(I)Z",
garbageValue = "-1366006737"
)
@Export("isFullyLoaded")
boolean isFullyLoaded() {
return this.field2728 && this.field2740; // L: 32
}
@ObfuscatedName("d")
@ObfuscatedSignature(
descriptor = "(Lkq;B)V",
garbageValue = "1"
)
@Export("loadGeography")
void loadGeography(AbstractArchive var1) {
if (!this.isFullyLoaded()) { // L: 36
byte[] var2 = var1.takeFile(this.groupId, this.fileId); // L: 37
if (var2 != null) { // L: 38
this.readGeography(new Buffer(var2)); // L: 39
this.field2728 = true; // L: 40
this.field2740 = true; // L: 41
}
}
} // L: 43
@ObfuscatedName("j")
@ObfuscatedSignature(
descriptor = "(I)V",
garbageValue = "1928141224"
)
@Export("reset")
void reset() {
this.floorUnderlayIds = null; // L: 46
this.floorOverlayIds = null; // L: 47
this.field2736 = null; // L: 48
this.field2731 = null; // L: 49
this.decorations = null; // L: 50
this.field2728 = false; // L: 51
this.field2740 = false; // L: 52
} // L: 53
@ObfuscatedName("f")
@ObfuscatedSignature(
descriptor = "(IILpi;I)V",
garbageValue = "-1017475721"
)
@Export("readTile")
void readTile(int var1, int var2, Buffer var3) {
int var4 = var3.readUnsignedByte(); // L: 56
if (var4 != 0) { // L: 57
if ((var4 & 1) != 0) { // L: 60
this.method4727(var1, var2, var3, var4); // L: 61
} else {
this.method4752(var1, var2, var3, var4); // L: 64
}
}
} // L: 58 66
@ObfuscatedName("g")
@ObfuscatedSignature(
descriptor = "(IILpi;II)V",
garbageValue = "891523991"
)
void method4727(int var1, int var2, Buffer var3, int var4) {
boolean var5 = (var4 & 2) != 0; // L: 69
if (var5) { // L: 70
this.floorOverlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 71
}
this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 73
} // L: 74
@ObfuscatedName("t")
@ObfuscatedSignature(
descriptor = "(IILpi;IB)V",
garbageValue = "-103"
)
void method4752(int var1, int var2, Buffer var3, int var4) {
int var5 = ((var4 & 24) >> 3) + 1; // L: 77
boolean var6 = (var4 & 2) != 0; // L: 78
boolean var7 = (var4 & 4) != 0; // L: 79
this.floorUnderlayIds[0][var1][var2] = (short)var3.readUnsignedByte(); // L: 80
int var8;
int var9;
int var11;
if (var6) { // L: 81
var8 = var3.readUnsignedByte(); // L: 82
for (var9 = 0; var9 < var8; ++var9) { // L: 83
int var14 = var3.readUnsignedByte(); // L: 84
if (var14 != 0) { // L: 85
this.floorOverlayIds[var9][var1][var2] = (short)var14; // L: 86
var11 = var3.readUnsignedByte(); // L: 87
this.field2736[var9][var1][var2] = (byte)(var11 >> 2); // L: 88
this.field2731[var9][var1][var2] = (byte)(var11 & 3); // L: 89
}
}
}
if (var7) { // L: 93
for (var8 = 0; var8 < var5; ++var8) { // L: 94
var9 = var3.readUnsignedByte(); // L: 95
if (var9 != 0) { // L: 96
WorldMapDecoration[] var10 = this.decorations[var8][var1][var2] = new WorldMapDecoration[var9]; // L: 99
for (var11 = 0; var11 < var9; ++var11) { // L: 100
int var12 = var3.method7352(); // L: 101
int var13 = var3.readUnsignedByte(); // L: 102
var10[var11] = new WorldMapDecoration(var12, var13 >> 2, var13 & 3); // L: 103
}
}
}
}
} // L: 107
@ObfuscatedName("k")
@ObfuscatedSignature(
descriptor = "(I)I",
garbageValue = "-1413227060"
)
@Export("getRegionX")
int getRegionX() {
return this.regionX; // L: 112
}
@ObfuscatedName("b")
@ObfuscatedSignature(
descriptor = "(B)I",
garbageValue = "123"
)
@Export("getRegionY")
int getRegionY() {
return this.regionY; // L: 116
}
@ObfuscatedName("c")
@ObfuscatedSignature(
descriptor = "(Lkq;Lkq;Lkq;Ljb;B)Z",
garbageValue = "106"
)
public static boolean method4753(AbstractArchive var0, AbstractArchive var1, AbstractArchive var2, MidiPcmStream var3) {
class265.musicPatchesArchive = var0; // L: 26
class265.musicSamplesArchive = var1; // L: 27
UserComparator8.soundEffectsArchive = var2; // L: 28
class265.midiPcmStream = var3; // L: 29
return true; // L: 30
}
@ObfuscatedName("gu")
@ObfuscatedSignature(
descriptor = "(Lcw;ZI)V",
garbageValue = "-912053648"
)
@Export("addPlayerToScene")
static void addPlayerToScene(Player var0, boolean var1) {
if (var0 != null && var0.isVisible() && !var0.isHidden) { // L: 4658
var0.isUnanimated = false; // L: 4659
if ((Client.isLowDetail && Players.Players_count > 50 || Players.Players_count > 200) && var1 && var0.movementSequence == var0.idleSequence) { // L: 4660 4661
var0.isUnanimated = true;
}
int var2 = var0.x >> 7; // L: 4663
int var3 = var0.y >> 7; // L: 4664
if (var2 >= 0 && var2 < 104 && var3 >= 0 && var3 < 104) { // L: 4665
long var4 = ScriptEvent.calculateTag(0, 0, 0, false, var0.index); // L: 4666
if (var0.model0 != null && Client.cycle >= var0.animationCycleStart && Client.cycle < var0.animationCycleEnd) { // L: 4667
var0.isUnanimated = false; // L: 4668
var0.tileHeight = class92.getTileHeight(var0.x, var0.y, SoundSystem.Client_plane); // L: 4669
var0.playerCycle = Client.cycle; // L: 4670
Decimator.scene.addNullableObject(SoundSystem.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.minX, var0.minY, var0.maxX, var0.maxY); // L: 4671
} else {
if ((var0.x & 127) == 64 && (var0.y & 127) == 64) { // L: 4674
if (Client.tileLastDrawnActor[var2][var3] == Client.viewportDrawCount) { // L: 4675
return;
}
Client.tileLastDrawnActor[var2][var3] = Client.viewportDrawCount; // L: 4676
}
var0.tileHeight = class92.getTileHeight(var0.x, var0.y, SoundSystem.Client_plane); // L: 4678
var0.playerCycle = Client.cycle; // L: 4679
Decimator.scene.drawEntity(SoundSystem.Client_plane, var0.x, var0.y, var0.tileHeight, 60, var0, var0.rotation, var4, var0.isWalking); // L: 4680
}
}
}
} // L: 4684
@ObfuscatedName("hk")
@ObfuscatedSignature(
descriptor = "(IIIIIIIIII)V",
garbageValue = "-1897942000"
)
@Export("updatePendingSpawn")
static final void updatePendingSpawn(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) {
PendingSpawn var9 = null; // L: 7258
for (PendingSpawn var10 = (PendingSpawn)Client.pendingSpawns.last(); var10 != null; var10 = (PendingSpawn)Client.pendingSpawns.previous()) { // L: 7259 7260 7265
if (var0 == var10.plane && var10.x == var1 && var2 == var10.y && var3 == var10.type) { // L: 7261
var9 = var10; // L: 7262
break;
}
}
if (var9 == null) { // L: 7267
var9 = new PendingSpawn(); // L: 7268
var9.plane = var0; // L: 7269
var9.type = var3; // L: 7270
var9.x = var1; // L: 7271
var9.y = var2; // L: 7272
class296.method5489(var9); // L: 7273
Client.pendingSpawns.addFirst(var9); // L: 7274
}
var9.id = var4; // L: 7276
var9.field1103 = var5; // L: 7277
var9.orientation = var6; // L: 7278
var9.delay = var7; // L: 7279
var9.hitpoints = var8; // L: 7280
} // L: 7281
}