183 lines
5.1 KiB
Java
183 lines
5.1 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("gg")
|
|
@Implements("WorldMapData_1")
|
|
public class WorldMapData_1 extends AbstractWorldMapData {
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedGetter(
|
|
intValue = -1189550107
|
|
)
|
|
@Export("chunkXLow")
|
|
int chunkXLow;
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedGetter(
|
|
intValue = 1085074515
|
|
)
|
|
@Export("chunkYLow")
|
|
int chunkYLow;
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedGetter(
|
|
intValue = 1863655397
|
|
)
|
|
@Export("chunkX")
|
|
int chunkX;
|
|
@ObfuscatedName("f")
|
|
@ObfuscatedGetter(
|
|
intValue = -1631671287
|
|
)
|
|
@Export("chunkY")
|
|
int chunkY;
|
|
|
|
WorldMapData_1() {
|
|
} // L: 11
|
|
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lpi;I)V",
|
|
garbageValue = "1916863393"
|
|
)
|
|
@Export("init")
|
|
void init(Buffer var1) {
|
|
int var2 = var1.readUnsignedByte(); // L: 14
|
|
if (var2 != WorldMapID.field2387.value) { // L: 15
|
|
throw new IllegalStateException(""); // L: 16
|
|
} else {
|
|
super.minPlane = var1.readUnsignedByte(); // L: 18
|
|
super.planes = var1.readUnsignedByte(); // L: 19
|
|
super.regionXLow = var1.readUnsignedShort(); // L: 20
|
|
super.regionYLow = var1.readUnsignedShort(); // L: 21
|
|
this.chunkXLow = var1.readUnsignedByte(); // L: 22
|
|
this.chunkYLow = var1.readUnsignedByte(); // L: 23
|
|
super.regionX = var1.readUnsignedShort(); // L: 24
|
|
super.regionY = var1.readUnsignedShort(); // L: 25
|
|
this.chunkX = var1.readUnsignedByte(); // L: 26
|
|
this.chunkY = var1.readUnsignedByte(); // L: 27
|
|
super.groupId = var1.method7692(); // L: 28
|
|
super.fileId = var1.method7692(); // L: 29
|
|
}
|
|
} // L: 30
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lpi;I)V",
|
|
garbageValue = "169222990"
|
|
)
|
|
@Export("readGeography")
|
|
void readGeography(Buffer var1) {
|
|
super.planes = Math.min(super.planes, 4); // L: 33
|
|
super.floorUnderlayIds = new short[1][64][64]; // L: 34
|
|
super.floorOverlayIds = new short[super.planes][64][64]; // L: 35
|
|
super.field2334 = new byte[super.planes][64][64]; // L: 36
|
|
super.field2342 = new byte[super.planes][64][64]; // L: 37
|
|
super.decorations = new WorldMapDecoration[super.planes][64][64][]; // L: 38
|
|
int var2 = var1.readUnsignedByte(); // L: 39
|
|
if (var2 != class214.field2378.value) { // L: 40
|
|
throw new IllegalStateException(""); // L: 41
|
|
} else {
|
|
int var3 = var1.readUnsignedByte(); // L: 43
|
|
int var4 = var1.readUnsignedByte(); // L: 44
|
|
int var5 = var1.readUnsignedByte(); // L: 45
|
|
int var6 = var1.readUnsignedByte(); // L: 46
|
|
if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) { // L: 47
|
|
for (int var7 = 0; var7 < 8; ++var7) { // L: 50
|
|
for (int var8 = 0; var8 < 8; ++var8) { // L: 51
|
|
this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1); // L: 52
|
|
}
|
|
}
|
|
|
|
} else {
|
|
throw new IllegalStateException(""); // L: 48
|
|
}
|
|
}
|
|
} // L: 55
|
|
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)I",
|
|
garbageValue = "-8"
|
|
)
|
|
@Export("getChunkXLow")
|
|
int getChunkXLow() {
|
|
return this.chunkXLow;
|
|
}
|
|
|
|
@ObfuscatedName("f")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "16777215"
|
|
)
|
|
@Export("getChunkYLow")
|
|
int getChunkYLow() {
|
|
return this.chunkYLow;
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "2037619431"
|
|
)
|
|
@Export("getChunkX")
|
|
int getChunkX() {
|
|
return this.chunkX; // L: 81
|
|
}
|
|
|
|
@ObfuscatedName("s")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "93025886"
|
|
)
|
|
@Export("getChunkY")
|
|
int getChunkY() {
|
|
return this.chunkY; // L: 85
|
|
}
|
|
|
|
public boolean equals(Object var1) {
|
|
if (!(var1 instanceof WorldMapData_1)) { // L: 58
|
|
return false; // L: 59
|
|
} else {
|
|
WorldMapData_1 var2 = (WorldMapData_1)var1; // L: 61
|
|
if (super.regionX == var2.regionX && var2.regionY == super.regionY) {
|
|
return this.chunkX == var2.chunkX && this.chunkY == var2.chunkY;
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
|
|
public int hashCode() {
|
|
return super.regionX | super.regionY << 8 | this.chunkX << 16 | this.chunkY << 24;
|
|
}
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "([BIII)Ljava/lang/String;",
|
|
garbageValue = "-264358279"
|
|
)
|
|
static String method4226(byte[] var0, int var1, int var2) {
|
|
StringBuilder var3 = new StringBuilder(); // L: 62
|
|
|
|
for (int var4 = var1; var4 < var2 + var1; var4 += 3) { // L: 63
|
|
int var5 = var0[var4] & 255; // L: 64
|
|
var3.append(class346.field4136[var5 >>> 2]); // L: 65
|
|
if (var4 < var2 - 1) { // L: 66
|
|
int var6 = var0[var4 + 1] & 255; // L: 67
|
|
var3.append(class346.field4136[(var5 & 3) << 4 | var6 >>> 4]); // L: 68
|
|
if (var4 < var2 - 2) { // L: 69
|
|
int var7 = var0[var4 + 2] & 255; // L: 70
|
|
var3.append(class346.field4136[(var6 & 15) << 2 | var7 >>> 6]).append(class346.field4136[var7 & 63]); // L: 71
|
|
} else {
|
|
var3.append(class346.field4136[(var6 & 15) << 2]).append("="); // L: 73
|
|
}
|
|
} else {
|
|
var3.append(class346.field4136[(var5 & 3) << 4]).append("=="); // L: 75
|
|
}
|
|
}
|
|
|
|
return var3.toString(); // L: 77
|
|
}
|
|
}
|