230 lines
6.2 KiB
Java
230 lines
6.2 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("ai")
|
|
@Implements("WorldMapData_1")
|
|
public class WorldMapData_1 extends AbstractWorldMapData {
|
|
@ObfuscatedName("dl")
|
|
@ObfuscatedSignature(
|
|
signature = "Lie;"
|
|
)
|
|
@Export("archive14")
|
|
static Archive archive14;
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedGetter(
|
|
intValue = -537501083
|
|
)
|
|
@Export("chunkXLow")
|
|
int chunkXLow;
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedGetter(
|
|
intValue = 948345097
|
|
)
|
|
@Export("chunkYLow")
|
|
int chunkYLow;
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedGetter(
|
|
intValue = 2091889323
|
|
)
|
|
@Export("chunkX")
|
|
int chunkX;
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedGetter(
|
|
intValue = 494582433
|
|
)
|
|
@Export("chunkY")
|
|
int chunkY;
|
|
|
|
WorldMapData_1() {
|
|
}
|
|
|
|
@ObfuscatedName("z")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkl;I)V",
|
|
garbageValue = "-1114535893"
|
|
)
|
|
@Export("init")
|
|
void init(Buffer var1) {
|
|
int var2 = var1.readUnsignedByte();
|
|
if (var2 != WorldMapID.field257.value) {
|
|
throw new IllegalStateException("");
|
|
} else {
|
|
super.minPlane = var1.readUnsignedByte();
|
|
super.planes = var1.readUnsignedByte();
|
|
super.regionXLow = var1.readUnsignedShort() * 4096;
|
|
super.regionYLow = var1.readUnsignedShort() * 4096;
|
|
this.chunkXLow = var1.readUnsignedByte();
|
|
this.chunkYLow = var1.readUnsignedByte();
|
|
super.regionX = var1.readUnsignedShort();
|
|
super.regionY = var1.readUnsignedShort();
|
|
this.chunkX = var1.readUnsignedByte();
|
|
this.chunkY = var1.readUnsignedByte();
|
|
super.groupId = var1.method5453();
|
|
super.fileId = var1.method5453();
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkl;I)V",
|
|
garbageValue = "1549979331"
|
|
)
|
|
@Export("readGeography")
|
|
void readGeography(Buffer var1) {
|
|
super.planes = Math.min(super.planes, 4);
|
|
super.floorUnderlayIds = new short[1][64][64];
|
|
super.floorOverlayIds = new short[super.planes][64][64];
|
|
super.field164 = new byte[super.planes][64][64];
|
|
super.field152 = new byte[super.planes][64][64];
|
|
super.decorations = new WorldMapDecoration[super.planes][64][64][];
|
|
int var2 = var1.readUnsignedByte();
|
|
if (var2 != class30.field250.value) {
|
|
throw new IllegalStateException("");
|
|
} else {
|
|
int var3 = var1.readUnsignedByte();
|
|
int var4 = var1.readUnsignedByte();
|
|
int var5 = var1.readUnsignedByte();
|
|
int var6 = var1.readUnsignedByte();
|
|
if (var3 == super.regionX && var4 == super.regionY && var5 == this.chunkX && var6 == this.chunkY) {
|
|
for (int var7 = 0; var7 < 8; ++var7) {
|
|
for (int var8 = 0; var8 < 8; ++var8) {
|
|
this.readTile(var7 + this.chunkX * 8, var8 + this.chunkY * 8, var1);
|
|
}
|
|
}
|
|
|
|
} else {
|
|
throw new IllegalStateException("");
|
|
}
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
signature = "(B)I",
|
|
garbageValue = "-57"
|
|
)
|
|
@Export("getChunkXLow")
|
|
int getChunkXLow() {
|
|
return this.chunkXLow;
|
|
}
|
|
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)I",
|
|
garbageValue = "-1398345797"
|
|
)
|
|
@Export("getChunkYLow")
|
|
int getChunkYLow() {
|
|
return this.chunkYLow;
|
|
}
|
|
|
|
@ObfuscatedName("an")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)I",
|
|
garbageValue = "-273717009"
|
|
)
|
|
@Export("getChunkX")
|
|
int getChunkX() {
|
|
return this.chunkX;
|
|
}
|
|
|
|
@ObfuscatedName("ai")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)I",
|
|
garbageValue = "2022346742"
|
|
)
|
|
@Export("getChunkY")
|
|
int getChunkY() {
|
|
return this.chunkY;
|
|
}
|
|
|
|
public boolean equals(Object var1) {
|
|
if (!(var1 instanceof WorldMapData_1)) {
|
|
return false;
|
|
} else {
|
|
WorldMapData_1 var2 = (WorldMapData_1)var1;
|
|
if (var2.regionX == super.regionX && super.regionY == var2.regionY) {
|
|
return var2.chunkX == this.chunkX && this.chunkY == var2.chunkY;
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
|
|
public int hashCode() {
|
|
return super.regionX | super.regionY << 8 | this.chunkX << 16 | this.chunkY << 24;
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
signature = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V",
|
|
garbageValue = "-1530516741"
|
|
)
|
|
@Export("addChatMessage")
|
|
static void addChatMessage(int var0, String var1, String var2, String var3) {
|
|
ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0);
|
|
if (var4 == null) {
|
|
var4 = new ChatChannel();
|
|
Messages.Messages_channels.put(var0, var4);
|
|
}
|
|
|
|
Message var5 = var4.addMessage(var0, var1, var2, var3);
|
|
Messages.Messages_hashTable.put(var5, (long)var5.count);
|
|
Messages.Messages_queue.add(var5);
|
|
Client.chatCycle = Client.cycleCntr;
|
|
}
|
|
|
|
@ObfuscatedName("ad")
|
|
@ObfuscatedSignature(
|
|
signature = "(ILcu;ZB)I",
|
|
garbageValue = "43"
|
|
)
|
|
static int method749(int var0, Script var1, boolean var2) {
|
|
int var3;
|
|
if (var0 == ScriptOpcodes.CAM_FORCEANGLE) {
|
|
Interpreter.Interpreter_intStackSize -= 2;
|
|
var3 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize];
|
|
int var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1];
|
|
if (!Client.isCameraLocked) {
|
|
Client.camAngleX = var3;
|
|
Client.camAngleY = var4;
|
|
}
|
|
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETANGLE_XA) {
|
|
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.camAngleX;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETANGLE_YA) {
|
|
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.camAngleY;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_SETFOLLOWHEIGHT) {
|
|
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
|
|
if (var3 < 0) {
|
|
var3 = 0;
|
|
}
|
|
|
|
Client.camFollowHeight = var3;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETFOLLOWHEIGHT) {
|
|
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.camFollowHeight;
|
|
return 1;
|
|
} else {
|
|
return 2;
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("hw")
|
|
@ObfuscatedSignature(
|
|
signature = "(Ljava/lang/String;Ljava/lang/String;IIIII)V",
|
|
garbageValue = "108879926"
|
|
)
|
|
@Export("insertMenuItemNoShift")
|
|
public static final void insertMenuItemNoShift(String var0, String var1, int var2, int var3, int var4, int var5) {
|
|
AttackOption.insertMenuItem(var0, var1, var2, var3, var4, var5, false);
|
|
}
|
|
}
|