* Rename some things to be more consistent everywhere * rs-client: refactoring * MenuAction -> MenuOpcode merge
239 lines
5.1 KiB
Java
239 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("bw")
|
|
@Implements("World")
|
|
public class World {
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedSignature(
|
|
signature = "[Lbw;"
|
|
)
|
|
@Export("World_worlds")
|
|
static World[] World_worlds;
|
|
@ObfuscatedName("l")
|
|
@ObfuscatedGetter(
|
|
intValue = 774267173
|
|
)
|
|
@Export("World_count")
|
|
static int World_count;
|
|
@ObfuscatedName("b")
|
|
@ObfuscatedGetter(
|
|
intValue = -2084454035
|
|
)
|
|
@Export("World_listCount")
|
|
static int World_listCount;
|
|
@ObfuscatedName("i")
|
|
@Export("World_sortOption2")
|
|
static int[] World_sortOption2;
|
|
@ObfuscatedName("c")
|
|
@Export("World_sortOption1")
|
|
static int[] World_sortOption1;
|
|
@ObfuscatedName("f")
|
|
@ObfuscatedSignature(
|
|
signature = "Lex;"
|
|
)
|
|
@Export("World_request")
|
|
static UrlRequest World_request;
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedGetter(
|
|
intValue = 790181133
|
|
)
|
|
@Export("id")
|
|
int id;
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedGetter(
|
|
intValue = 630491985
|
|
)
|
|
@Export("properties")
|
|
int properties;
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedGetter(
|
|
intValue = -432731733
|
|
)
|
|
@Export("population")
|
|
int population;
|
|
@ObfuscatedName("r")
|
|
@Export("host")
|
|
String host;
|
|
@ObfuscatedName("v")
|
|
@Export("activity")
|
|
String activity;
|
|
@ObfuscatedName("y")
|
|
@ObfuscatedGetter(
|
|
intValue = 657222747
|
|
)
|
|
@Export("location")
|
|
int location;
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedGetter(
|
|
intValue = -1014616139
|
|
)
|
|
@Export("index")
|
|
int index;
|
|
|
|
static {
|
|
World_count = 0;
|
|
World_listCount = 0;
|
|
World_sortOption2 = new int[]{1, 1, 1, 1};
|
|
World_sortOption1 = new int[]{0, 1, 2, 3};
|
|
}
|
|
|
|
World() {
|
|
}
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
signature = "(B)Z",
|
|
garbageValue = "0"
|
|
)
|
|
@Export("isMembersOnly")
|
|
boolean isMembersOnly() {
|
|
return (1 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Z",
|
|
garbageValue = "2029214211"
|
|
)
|
|
boolean method1682() {
|
|
return (2 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Z",
|
|
garbageValue = "-1353649797"
|
|
)
|
|
@Export("isPvp")
|
|
boolean isPvp() {
|
|
return (0x4 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("r")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Z",
|
|
garbageValue = "1749102436"
|
|
)
|
|
boolean method1698() {
|
|
return (0x8 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Z",
|
|
garbageValue = "-2068007512"
|
|
)
|
|
@Export("isDeadman")
|
|
boolean isDeadman() {
|
|
return (0x20000000 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("y")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Z",
|
|
garbageValue = "1648546006"
|
|
)
|
|
@Export("isBeta")
|
|
boolean isBeta() {
|
|
return (0x2000000 & this.properties) != 0;
|
|
}
|
|
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkx;B)I",
|
|
garbageValue = "80"
|
|
)
|
|
@Export("decode")
|
|
static int decode(PacketBuffer var0) {
|
|
int var1 = var0.readBits(2);
|
|
int var2;
|
|
if (var1 == 0) {
|
|
var2 = 0;
|
|
} else if (var1 == 1) {
|
|
var2 = var0.readBits(5);
|
|
} else if (var1 == 2) {
|
|
var2 = var0.readBits(8);
|
|
} else {
|
|
var2 = var0.readBits(11);
|
|
}
|
|
|
|
return var2;
|
|
}
|
|
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
signature = "([BI)Lcx;",
|
|
garbageValue = "-75241458"
|
|
)
|
|
@Export("newScript")
|
|
static Script newScript(byte[] var0) {
|
|
Script var1 = new Script();
|
|
Buffer var2 = new Buffer(var0);
|
|
var2.offset = var2.array.length - 2;
|
|
int var3 = var2.readUnsignedShort();
|
|
int var4 = var2.array.length - 2 - var3 - 12;
|
|
var2.offset = var4;
|
|
int var5 = var2.readInt();
|
|
var1.localIntCount = var2.readUnsignedShort();
|
|
var1.localStringCount = var2.readUnsignedShort();
|
|
var1.intArgumentCount = var2.readUnsignedShort();
|
|
var1.stringArgumentCount = var2.readUnsignedShort();
|
|
int var6 = var2.readUnsignedByte();
|
|
int var7;
|
|
int var8;
|
|
if (var6 > 0) {
|
|
var1.switches = var1.newIterableNodeHashTable(var6);
|
|
|
|
for (var7 = 0; var7 < var6; ++var7) {
|
|
var8 = var2.readUnsignedShort();
|
|
int var9;
|
|
int var11;
|
|
if (var8 > 0) {
|
|
var11 = var8 - 1;
|
|
var11 |= var11 >>> 1;
|
|
var11 |= var11 >>> 2;
|
|
var11 |= var11 >>> 4;
|
|
var11 |= var11 >>> 8;
|
|
var11 |= var11 >>> 16;
|
|
int var10 = var11 + 1;
|
|
var9 = var10;
|
|
} else {
|
|
var9 = 1;
|
|
}
|
|
|
|
IterableNodeHashTable var13 = new IterableNodeHashTable(var9);
|
|
var1.switches[var7] = var13;
|
|
|
|
while (var8-- > 0) {
|
|
var11 = var2.readInt();
|
|
int var12 = var2.readInt();
|
|
var13.put(new IntegerNode(var12), (long)var11);
|
|
}
|
|
}
|
|
}
|
|
|
|
var2.offset = 0;
|
|
var2.readStringCp1252NullTerminatedOrNull();
|
|
var1.opcodes = new int[var5];
|
|
var1.intOperands = new int[var5];
|
|
var1.stringOperands = new String[var5];
|
|
|
|
for (var7 = 0; var2.offset < var4; var1.opcodes[var7++] = var8) {
|
|
var8 = var2.readUnsignedShort();
|
|
if (var8 == 3) {
|
|
var1.stringOperands[var7] = var2.readStringCp1252NullTerminated();
|
|
} else if (var8 < 100 && var8 != 21 && var8 != 38 && var8 != 39) {
|
|
var1.intOperands[var7] = var2.readInt();
|
|
} else {
|
|
var1.intOperands[var7] = var2.readUnsignedByte();
|
|
}
|
|
}
|
|
|
|
return var1;
|
|
}
|
|
}
|