Files
runelite/runescape-client/src/main/java/WorldMapData_0.java
Ganom cb57ab26b3 project: update from 184 to 184 (#1675)
* 184

* checkstyle

* project: fix exports.
2019-09-28 18:37:36 +01:00

467 lines
17 KiB
Java

import java.util.Date;
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
import net.runelite.rs.ScriptOpcodes;
@ObfuscatedName("w")
@Implements("WorldMapData_0")
public class WorldMapData_0 extends AbstractWorldMapData {
@ObfuscatedName("sz")
@ObfuscatedSignature(
signature = "Lkg;"
)
@Export("masterDisk")
static ArchiveDisk masterDisk;
@ObfuscatedName("ex")
@ObfuscatedSignature(
signature = "Lkw;"
)
@Export("spriteIds")
static GraphicsDefaults spriteIds;
@ObfuscatedName("gz")
@ObfuscatedSignature(
signature = "[Llp;"
)
@Export("modIconSprites")
static IndexedSprite[] modIconSprites;
WorldMapData_0() {
}
@ObfuscatedName("z")
@ObfuscatedSignature(
signature = "(Lkl;I)V",
garbageValue = "-443857335"
)
@Export("init")
void init(Buffer var1) {
int var2 = var1.readUnsignedByte();
if (var2 != WorldMapID.field256.value) {
throw new IllegalStateException("");
} else {
super.minPlane = var1.readUnsignedByte();
super.planes = var1.readUnsignedByte();
super.regionXLow = var1.readUnsignedShort() * 4096;
super.regionYLow = var1.readUnsignedShort() * 4096;
super.regionX = var1.readUnsignedShort();
super.regionY = var1.readUnsignedShort();
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.field253.value) {
throw new IllegalStateException("");
} else {
int var3 = var1.readUnsignedByte();
int var4 = var1.readUnsignedByte();
if (var3 == super.regionX && var4 == super.regionY) {
for (int var5 = 0; var5 < 64; ++var5) {
for (int var6 = 0; var6 < 64; ++var6) {
this.readTile(var5, var6, var1);
}
}
} else {
throw new IllegalStateException("");
}
}
}
public boolean equals(Object var1) {
if (!(var1 instanceof WorldMapData_0)) {
return false;
} else {
WorldMapData_0 var2 = (WorldMapData_0)var1;
return var2.regionX == super.regionX && var2.regionY == super.regionY;
}
}
public int hashCode() {
return super.regionX | super.regionY << 8;
}
@ObfuscatedName("v")
@ObfuscatedSignature(
signature = "([Lbo;II[I[IB)V",
garbageValue = "59"
)
@Export("sortWorlds")
static void sortWorlds(World[] var0, int var1, int var2, int[] var3, int[] var4) {
if (var1 < var2) {
int var5 = var1 - 1;
int var6 = var2 + 1;
int var7 = (var2 + var1) / 2;
World var8 = var0[var7];
var0[var7] = var0[var1];
var0[var1] = var8;
while (var5 < var6) {
boolean var9 = true;
int var10;
int var11;
int var12;
do {
--var6;
for (var10 = 0; var10 < 4; ++var10) {
if (var3[var10] == 2) {
var11 = var0[var6].index;
var12 = var8.index;
} else if (var3[var10] == 1) {
var11 = var0[var6].population;
var12 = var8.population;
if (var11 == -1 && var4[var10] == 1) {
var11 = 2001;
}
if (var12 == -1 && var4[var10] == 1) {
var12 = 2001;
}
} else if (var3[var10] == 3) {
var11 = var0[var6].isMembersOnly() ? 1 : 0;
var12 = var8.isMembersOnly() ? 1 : 0;
} else {
var11 = var0[var6].id;
var12 = var8.id;
}
if (var11 != var12) {
if ((var4[var10] != 1 || var11 <= var12) && (var4[var10] != 0 || var11 >= var12)) {
var9 = false;
}
break;
}
if (var10 == 3) {
var9 = false;
}
}
} while(var9);
var9 = true;
do {
++var5;
for (var10 = 0; var10 < 4; ++var10) {
if (var3[var10] == 2) {
var11 = var0[var5].index;
var12 = var8.index;
} else if (var3[var10] == 1) {
var11 = var0[var5].population;
var12 = var8.population;
if (var11 == -1 && var4[var10] == 1) {
var11 = 2001;
}
if (var12 == -1 && var4[var10] == 1) {
var12 = 2001;
}
} else if (var3[var10] == 3) {
var11 = var0[var5].isMembersOnly() ? 1 : 0;
var12 = var8.isMembersOnly() ? 1 : 0;
} else {
var11 = var0[var5].id;
var12 = var8.id;
}
if (var12 != var11) {
if ((var4[var10] != 1 || var11 >= var12) && (var4[var10] != 0 || var11 <= var12)) {
var9 = false;
}
break;
}
if (var10 == 3) {
var9 = false;
}
}
} while(var9);
if (var5 < var6) {
World var13 = var0[var5];
var0[var5] = var0[var6];
var0[var6] = var13;
}
}
sortWorlds(var0, var1, var6, var3, var4);
sortWorlds(var0, var6 + 1, var2, var3, var4);
}
}
@ObfuscatedName("u")
@ObfuscatedSignature(
signature = "(II)Z",
garbageValue = "387088123"
)
@Export("loadInterface")
public static boolean loadInterface(int var0) {
if (ViewportMouse.Widget_loadedInterfaces[var0]) {
return true;
} else if (!Widget.Widget_archive.tryLoadGroup(var0)) {
return false;
} else {
int var1 = Widget.Widget_archive.getGroupFileCount(var0);
if (var1 == 0) {
ViewportMouse.Widget_loadedInterfaces[var0] = true;
return true;
} else {
if (UserComparator5.Widget_interfaceComponents[var0] == null) {
UserComparator5.Widget_interfaceComponents[var0] = new Widget[var1];
}
for (int var2 = 0; var2 < var1; ++var2) {
if (UserComparator5.Widget_interfaceComponents[var0][var2] == null) {
byte[] var3 = Widget.Widget_archive.takeFile(var0, var2);
if (var3 != null) {
UserComparator5.Widget_interfaceComponents[var0][var2] = new Widget();
UserComparator5.Widget_interfaceComponents[var0][var2].id = var2 + (var0 << 16);
if (var3[0] == -1) {
UserComparator5.Widget_interfaceComponents[var0][var2].decode(new Buffer(var3));
} else {
UserComparator5.Widget_interfaceComponents[var0][var2].decodeLegacy(new Buffer(var3));
}
}
}
}
ViewportMouse.Widget_loadedInterfaces[var0] = true;
return true;
}
}
}
@ObfuscatedName("u")
@ObfuscatedSignature(
signature = "(ILhp;Ljava/lang/String;Ljava/lang/String;IZS)V",
garbageValue = "6590"
)
public static void method194(int var0, AbstractArchive var1, String var2, String var3, int var4, boolean var5) {
int var6 = var1.getGroupId(var2);
int var7 = var1.getFileId(var6, var3);
class197.field2386 = 1;
class197.musicTrackArchive = var1;
class188.musicTrackGroupId = var6;
class49.musicTrackFileId = var7;
TileItem.field1223 = var4;
WorldMapSectionType.musicTrackBoolean = var5;
MusicPatchNode2.field2382 = var0;
}
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "(Ljava/lang/CharSequence;B)I",
garbageValue = "71"
)
@Export("hashString")
public static int hashString(CharSequence var0) {
int var1 = var0.length();
int var2 = 0;
for (int var3 = 0; var3 < var1; ++var3) {
var2 = (var2 << 5) - var2 + Entity.charToByteCp1252(var0.charAt(var3));
}
return var2;
}
@ObfuscatedName("ax")
@ObfuscatedSignature(
signature = "(ILcu;ZI)I",
garbageValue = "-1153827827"
)
static int method177(int var0, Script var1, boolean var2) {
String var3;
int var4;
if (var0 == ScriptOpcodes.APPEND_NUM) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + var4;
return 1;
} else {
String var9;
if (var0 == ScriptOpcodes.APPEND) {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var9 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + var9;
return 1;
} else if (var0 == ScriptOpcodes.APPEND_SIGNNUM) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + HealthBar.intToString(var4, true);
return 1;
} else if (var0 == ScriptOpcodes.LOWERCASE) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.toLowerCase();
return 1;
} else {
int var6;
int var10;
if (var0 == ScriptOpcodes.FROMDATE) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
long var11 = 86400000L * (11745L + (long)var10);
Interpreter.Interpreter_calendar.setTime(new Date(var11));
var6 = Interpreter.Interpreter_calendar.get(5);
int var16 = Interpreter.Interpreter_calendar.get(2);
int var8 = Interpreter.Interpreter_calendar.get(1);
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6 + "-" + Interpreter.Interpreter_MONTHS[var16] + "-" + var8;
return 1;
} else if (var0 != ScriptOpcodes.TEXT_GENDER) {
if (var0 == ScriptOpcodes.TOSTRING) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = Integer.toString(var10);
return 1;
} else if (var0 == ScriptOpcodes.COMPARE) {
Interpreter.Interpreter_stringStackSize -= 2;
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = class189.method3615(Interpreter.compareStrings(Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize], Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1], WorldMapLabelSize.clientLanguage));
return 1;
} else {
int var5;
byte[] var13;
Font var14;
if (var0 == ScriptOpcodes.PARAHEIGHT) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_intStackSize -= 2;
var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize];
var5 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1];
var13 = Tile.archive13.takeFile(var5, 0);
var14 = new Font(var13);
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var14.lineCount(var3, var4);
return 1;
} else if (var0 == ScriptOpcodes.PARAWIDTH) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_intStackSize -= 2;
var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize];
var5 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1];
var13 = Tile.archive13.takeFile(var5, 0);
var14 = new Font(var13);
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var14.lineWidth(var3, var4);
return 1;
} else if (var0 == ScriptOpcodes.TEXT_SWITCH) {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var9 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
if (Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize] == 1) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3;
} else {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9;
}
return 1;
} else if (var0 == ScriptOpcodes.ESCAPE) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = AbstractFont.escapeBrackets(var3);
return 1;
} else if (var0 == ScriptOpcodes.APPEND_CHAR) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3 + (char)var4;
return 1;
} else if (var0 == ScriptOpcodes.CHAR_ISPRINTABLE) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = TileItem.isCharPrintable((char)var10) ? 1 : 0;
return 1;
} else if (var0 == ScriptOpcodes.CHAR_ISALPHANUMERIC) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = AbstractArchive.isAlphaNumeric((char)var10) ? 1 : 0;
return 1;
} else if (var0 == ScriptOpcodes.CHAR_ISALPHA) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = UserComparator7.isCharAlphabetic((char)var10) ? 1 : 0;
return 1;
} else if (var0 == ScriptOpcodes.CHAR_ISNUMERIC) {
var10 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = AbstractWorldMapIcon.isDigit((char)var10) ? 1 : 0;
return 1;
} else if (var0 == ScriptOpcodes.STRING_LENGTH) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
if (var3 != null) {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3.length();
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = 0;
}
return 1;
} else if (var0 == ScriptOpcodes.SUBSTRING) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_intStackSize -= 2;
var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize];
var5 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.substring(var4, var5);
return 1;
} else if (var0 == ScriptOpcodes.REMOVETAGS) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
StringBuilder var17 = new StringBuilder(var3.length());
boolean var15 = false;
for (var6 = 0; var6 < var3.length(); ++var6) {
char var7 = var3.charAt(var6);
if (var7 == '<') {
var15 = true;
} else if (var7 == '>') {
var15 = false;
} else if (!var15) {
var17.append(var7);
}
}
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var17.toString();
return 1;
} else if (var0 == ScriptOpcodes.STRING_INDEXOF_CHAR) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3.indexOf(var4);
return 1;
} else if (var0 == ScriptOpcodes.STRING_INDEXOF_STRING) {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var9 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
var5 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize];
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3.indexOf(var9, var5);
return 1;
} else if (var0 == ScriptOpcodes.UPPERCASE) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3.toUpperCase();
return 1;
} else {
return 2;
}
}
} else {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var9 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
if (class223.localPlayer.appearance != null && class223.localPlayer.appearance.isFemale) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9;
} else {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var3;
}
return 1;
}
}
}
}
}