417 lines
9.6 KiB
Java
417 lines
9.6 KiB
Java
import java.util.Iterator;
|
|
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("fb")
|
|
@Implements("WorldMapArea")
|
|
public class WorldMapArea {
|
|
@ObfuscatedName("tr")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lmr;"
|
|
)
|
|
@Export("masterDisk")
|
|
static ArchiveDisk masterDisk;
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedGetter(
|
|
intValue = -808178711
|
|
)
|
|
@Export("id")
|
|
int id;
|
|
@ObfuscatedName("w")
|
|
@Export("internalName")
|
|
String internalName;
|
|
@ObfuscatedName("s")
|
|
@Export("externalName")
|
|
String externalName;
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedGetter(
|
|
intValue = 819237223
|
|
)
|
|
@Export("backGroundColor")
|
|
int backGroundColor;
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedGetter(
|
|
intValue = -755296395
|
|
)
|
|
@Export("zoom")
|
|
int zoom;
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lie;"
|
|
)
|
|
@Export("origin")
|
|
Coord origin;
|
|
@ObfuscatedName("e")
|
|
@ObfuscatedGetter(
|
|
intValue = -1548910029
|
|
)
|
|
@Export("regionLowX")
|
|
int regionLowX;
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedGetter(
|
|
intValue = -79899971
|
|
)
|
|
@Export("regionHighX")
|
|
int regionHighX;
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedGetter(
|
|
intValue = -619522771
|
|
)
|
|
@Export("regionLowY")
|
|
int regionLowY;
|
|
@ObfuscatedName("b")
|
|
@ObfuscatedGetter(
|
|
intValue = 156762923
|
|
)
|
|
@Export("regionHighY")
|
|
int regionHighY;
|
|
@ObfuscatedName("x")
|
|
@Export("isMain")
|
|
boolean isMain;
|
|
@ObfuscatedName("y")
|
|
@Export("sections")
|
|
LinkedList sections;
|
|
|
|
public WorldMapArea() {
|
|
this.id = -1; // L: 9
|
|
this.backGroundColor = -1; // L: 12
|
|
this.zoom = -1; // L: 13
|
|
this.origin = null; // L: 14
|
|
this.regionLowX = Integer.MAX_VALUE; // L: 15
|
|
this.regionHighX = 0; // L: 16
|
|
this.regionLowY = Integer.MAX_VALUE; // L: 17
|
|
this.regionHighY = 0; // L: 18
|
|
this.isMain = false; // L: 19
|
|
}
|
|
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lop;IB)V",
|
|
garbageValue = "-41"
|
|
)
|
|
@Export("read")
|
|
public void read(Buffer var1, int var2) {
|
|
this.id = var2; // L: 23
|
|
this.internalName = var1.readStringCp1252NullTerminated(); // L: 24
|
|
this.externalName = var1.readStringCp1252NullTerminated(); // L: 25
|
|
this.origin = new Coord(var1.readInt()); // L: 26
|
|
this.backGroundColor = var1.readInt(); // L: 27
|
|
var1.readUnsignedByte(); // L: 28
|
|
this.isMain = var1.readUnsignedByte() == 1; // L: 29
|
|
this.zoom = var1.readUnsignedByte(); // L: 30
|
|
int var3 = var1.readUnsignedByte(); // L: 31
|
|
this.sections = new LinkedList(); // L: 32
|
|
|
|
for (int var4 = 0; var4 < var3; ++var4) { // L: 33
|
|
this.sections.add(this.readWorldMapSection(var1)); // L: 34
|
|
}
|
|
|
|
this.setBounds(); // L: 36
|
|
} // L: 37
|
|
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lop;I)Lgx;",
|
|
garbageValue = "1722623204"
|
|
)
|
|
@Export("readWorldMapSection")
|
|
WorldMapSection readWorldMapSection(Buffer var1) {
|
|
int var2 = var1.readUnsignedByte(); // L: 40
|
|
WorldMapSectionType[] var3 = new WorldMapSectionType[]{WorldMapSectionType.WORLDMAPSECTIONTYPE1, WorldMapSectionType.WORLDMAPSECTIONTYPE0, WorldMapSectionType.WORLDMAPSECTIONTYPE3, WorldMapSectionType.WORLDMAPSECTIONTYPE2}; // L: 43
|
|
WorldMapSectionType var4 = (WorldMapSectionType)UserComparator4.findEnumerated(var3, var2); // L: 45
|
|
Object var5 = null; // L: 46
|
|
switch(var4.type) { // L: 47
|
|
case 0:
|
|
var5 = new class184(); // L: 60
|
|
break;
|
|
case 1:
|
|
var5 = new WorldMapSection1(); // L: 49
|
|
break;
|
|
case 2:
|
|
var5 = new WorldMapSection2(); // L: 57
|
|
break; // L: 58
|
|
case 3:
|
|
var5 = new WorldMapSection0(); // L: 54
|
|
break; // L: 55
|
|
default:
|
|
throw new IllegalStateException(""); // L: 52
|
|
}
|
|
|
|
((WorldMapSection)var5).read(var1); // L: 63
|
|
return (WorldMapSection)var5; // L: 64
|
|
}
|
|
|
|
@ObfuscatedName("s")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIII)Z",
|
|
garbageValue = "-2062291574"
|
|
)
|
|
@Export("containsCoord")
|
|
public boolean containsCoord(int var1, int var2, int var3) {
|
|
Iterator var4 = this.sections.iterator(); // L: 68
|
|
|
|
WorldMapSection var5;
|
|
do {
|
|
if (!var4.hasNext()) {
|
|
return false; // L: 76
|
|
}
|
|
|
|
var5 = (WorldMapSection)var4.next(); // L: 69
|
|
} while(!var5.containsCoord(var1, var2, var3)); // L: 71
|
|
|
|
return true; // L: 72
|
|
}
|
|
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIB)Z",
|
|
garbageValue = "-25"
|
|
)
|
|
@Export("containsPosition")
|
|
public boolean containsPosition(int var1, int var2) {
|
|
int var3 = var1 / 64; // L: 80
|
|
int var4 = var2 / 64; // L: 81
|
|
if (var3 >= this.regionLowX && var3 <= this.regionHighX) { // L: 82
|
|
if (var4 >= this.regionLowY && var4 <= this.regionHighY) { // L: 83
|
|
Iterator var5 = this.sections.iterator(); // L: 84
|
|
|
|
WorldMapSection var6;
|
|
do {
|
|
if (!var5.hasNext()) {
|
|
return false; // L: 92
|
|
}
|
|
|
|
var6 = (WorldMapSection)var5.next(); // L: 85
|
|
} while(!var6.containsPosition(var1, var2)); // L: 87
|
|
|
|
return true; // L: 88
|
|
} else {
|
|
return false;
|
|
}
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIIB)[I",
|
|
garbageValue = "35"
|
|
)
|
|
@Export("position")
|
|
public int[] position(int var1, int var2, int var3) {
|
|
Iterator var4 = this.sections.iterator(); // L: 96
|
|
|
|
WorldMapSection var5;
|
|
do {
|
|
if (!var4.hasNext()) {
|
|
return null; // L: 104
|
|
}
|
|
|
|
var5 = (WorldMapSection)var4.next(); // L: 97
|
|
} while(!var5.containsCoord(var1, var2, var3)); // L: 99
|
|
|
|
return var5.getBorderTileLengths(var1, var2, var3); // L: 100
|
|
}
|
|
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIB)Lie;",
|
|
garbageValue = "58"
|
|
)
|
|
@Export("coord")
|
|
public Coord coord(int var1, int var2) {
|
|
Iterator var3 = this.sections.iterator(); // L: 108
|
|
|
|
WorldMapSection var4;
|
|
do {
|
|
if (!var3.hasNext()) {
|
|
return null; // L: 116
|
|
}
|
|
|
|
var4 = (WorldMapSection)var3.next(); // L: 109
|
|
} while(!var4.containsPosition(var1, var2)); // L: 111
|
|
|
|
return var4.coord(var1, var2); // L: 112
|
|
}
|
|
|
|
@ObfuscatedName("e")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "1982690372"
|
|
)
|
|
@Export("setBounds")
|
|
void setBounds() {
|
|
Iterator var1 = this.sections.iterator(); // L: 120
|
|
|
|
while (var1.hasNext()) {
|
|
WorldMapSection var2 = (WorldMapSection)var1.next(); // L: 121
|
|
var2.expandBounds(this); // L: 123
|
|
}
|
|
|
|
} // L: 126
|
|
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "2147380047"
|
|
)
|
|
@Export("getId")
|
|
public int getId() {
|
|
return this.id; // L: 129
|
|
}
|
|
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)Z",
|
|
garbageValue = "-60"
|
|
)
|
|
@Export("getIsMain")
|
|
public boolean getIsMain() {
|
|
return this.isMain; // L: 133
|
|
}
|
|
|
|
@ObfuscatedName("b")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)Ljava/lang/String;",
|
|
garbageValue = "0"
|
|
)
|
|
@Export("getInternalName")
|
|
public String getInternalName() {
|
|
return this.internalName; // L: 137
|
|
}
|
|
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Ljava/lang/String;",
|
|
garbageValue = "-1017230656"
|
|
)
|
|
@Export("getExternalName")
|
|
public String getExternalName() {
|
|
return this.externalName; // L: 141
|
|
}
|
|
|
|
@ObfuscatedName("y")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-1217738287"
|
|
)
|
|
@Export("getBackGroundColor")
|
|
int getBackGroundColor() {
|
|
return this.backGroundColor; // L: 145
|
|
}
|
|
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-438706152"
|
|
)
|
|
@Export("getZoom")
|
|
public int getZoom() {
|
|
return this.zoom; // L: 149
|
|
}
|
|
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-2116545091"
|
|
)
|
|
@Export("getRegionLowX")
|
|
public int getRegionLowX() {
|
|
return this.regionLowX; // L: 153
|
|
}
|
|
|
|
@ObfuscatedName("l")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)I",
|
|
garbageValue = "-12"
|
|
)
|
|
@Export("getRegionHighX")
|
|
public int getRegionHighX() {
|
|
return this.regionHighX; // L: 157
|
|
}
|
|
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-1073343926"
|
|
)
|
|
@Export("getRegionLowY")
|
|
public int getRegionLowY() {
|
|
return this.regionLowY;
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-1503026192"
|
|
)
|
|
@Export("getRegionHighY")
|
|
public int getRegionHighY() {
|
|
return this.regionHighY;
|
|
}
|
|
|
|
@ObfuscatedName("z")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(S)I",
|
|
garbageValue = "-6358"
|
|
)
|
|
@Export("getOriginX")
|
|
public int getOriginX() {
|
|
return this.origin.x;
|
|
}
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)I",
|
|
garbageValue = "43"
|
|
)
|
|
@Export("getOriginPlane")
|
|
public int getOriginPlane() {
|
|
return this.origin.plane; // L: 173
|
|
}
|
|
|
|
@ObfuscatedName("d")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "1994315244"
|
|
)
|
|
@Export("getOriginY")
|
|
public int getOriginY() {
|
|
return this.origin.y; // L: 177
|
|
}
|
|
|
|
@ObfuscatedName("r")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)Lie;",
|
|
garbageValue = "90"
|
|
)
|
|
@Export("getOrigin")
|
|
public Coord getOrigin() {
|
|
return new Coord(this.origin); // L: 181
|
|
}
|
|
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(S)Loe;",
|
|
garbageValue = "-22529"
|
|
)
|
|
static IndexedSprite method3654() {
|
|
IndexedSprite var0 = new IndexedSprite(); // L: 159
|
|
var0.width = class414.SpriteBuffer_spriteWidth; // L: 160
|
|
var0.height = class414.SpriteBuffer_spriteHeight; // L: 161
|
|
var0.xOffset = class414.SpriteBuffer_xOffsets[0]; // L: 162
|
|
var0.yOffset = class414.SpriteBuffer_yOffsets[0]; // L: 163
|
|
var0.subWidth = UrlRequester.SpriteBuffer_spriteWidths[0]; // L: 164
|
|
var0.subHeight = class414.SpriteBuffer_spriteHeights[0]; // L: 165
|
|
var0.palette = HitSplatDefinition.SpriteBuffer_spritePalette; // L: 166
|
|
var0.pixels = class295.SpriteBuffer_pixels[0]; // L: 167
|
|
PacketBuffer.method6913(); // L: 168
|
|
return var0; // L: 169
|
|
}
|
|
}
|