1364 lines
53 KiB
Java
1364 lines
53 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("cg")
|
|
@Implements("Player")
|
|
public final class Player extends Actor {
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lla;"
|
|
)
|
|
@Export("username")
|
|
Username username;
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lii;"
|
|
)
|
|
@Export("appearance")
|
|
PlayerComposition appearance;
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedGetter(
|
|
intValue = 972215407
|
|
)
|
|
@Export("headIconPk")
|
|
int headIconPk;
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedGetter(
|
|
intValue = 786520397
|
|
)
|
|
@Export("headIconPrayer")
|
|
int headIconPrayer;
|
|
@ObfuscatedName("z")
|
|
@Export("actions")
|
|
String[] actions;
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedGetter(
|
|
intValue = 177544021
|
|
)
|
|
@Export("combatLevel")
|
|
int combatLevel;
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedGetter(
|
|
intValue = 439955349
|
|
)
|
|
@Export("skillLevel")
|
|
int skillLevel;
|
|
@ObfuscatedName("b")
|
|
@ObfuscatedGetter(
|
|
intValue = 1996153449
|
|
)
|
|
@Export("tileHeight")
|
|
int tileHeight;
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedGetter(
|
|
intValue = -470171859
|
|
)
|
|
@Export("animationCycleStart")
|
|
int animationCycleStart;
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedGetter(
|
|
intValue = -2092287543
|
|
)
|
|
@Export("animationCycleEnd")
|
|
int animationCycleEnd;
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedGetter(
|
|
intValue = -1153336923
|
|
)
|
|
int field1174;
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedGetter(
|
|
intValue = 607445449
|
|
)
|
|
@Export("tileHeight2")
|
|
int tileHeight2;
|
|
@ObfuscatedName("r")
|
|
@ObfuscatedGetter(
|
|
intValue = -705770457
|
|
)
|
|
int field1172;
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lgj;"
|
|
)
|
|
@Export("model0")
|
|
Model model0;
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedGetter(
|
|
intValue = 1470022945
|
|
)
|
|
@Export("minX")
|
|
int minX;
|
|
@ObfuscatedName("e")
|
|
@ObfuscatedGetter(
|
|
intValue = 1450627593
|
|
)
|
|
@Export("minY")
|
|
int minY;
|
|
@ObfuscatedName("d")
|
|
@ObfuscatedGetter(
|
|
intValue = 410410317
|
|
)
|
|
@Export("maxX")
|
|
int maxX;
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedGetter(
|
|
intValue = -662783103
|
|
)
|
|
@Export("maxY")
|
|
int maxY;
|
|
@ObfuscatedName("m")
|
|
@Export("isUnanimated")
|
|
boolean isUnanimated;
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedGetter(
|
|
intValue = 515461967
|
|
)
|
|
@Export("team")
|
|
int team;
|
|
@ObfuscatedName("f")
|
|
@Export("isHidden")
|
|
boolean isHidden;
|
|
@ObfuscatedName("s")
|
|
@ObfuscatedGetter(
|
|
intValue = -276233463
|
|
)
|
|
@Export("plane")
|
|
int plane;
|
|
@ObfuscatedName("y")
|
|
@ObfuscatedGetter(
|
|
intValue = -319055031
|
|
)
|
|
@Export("index")
|
|
int index;
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lls;"
|
|
)
|
|
@Export("isFriendTriBool")
|
|
TriBool isFriendTriBool;
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lls;"
|
|
)
|
|
@Export("isInClanChat")
|
|
TriBool isInClanChat;
|
|
@ObfuscatedName("ag")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lls;"
|
|
)
|
|
TriBool field1170;
|
|
@ObfuscatedName("ae")
|
|
boolean field1186;
|
|
@ObfuscatedName("ao")
|
|
@ObfuscatedGetter(
|
|
intValue = 139064121
|
|
)
|
|
@Export("tileX")
|
|
int tileX;
|
|
@ObfuscatedName("aj")
|
|
@ObfuscatedGetter(
|
|
intValue = -1808848513
|
|
)
|
|
@Export("tileY")
|
|
int tileY;
|
|
|
|
Player() {
|
|
this.headIconPk = -1; // L: 19
|
|
this.headIconPrayer = -1; // L: 20
|
|
this.actions = new String[3]; // L: 22
|
|
|
|
for (int var1 = 0; var1 < 3; ++var1) { // L: 25
|
|
this.actions[var1] = "";
|
|
}
|
|
|
|
this.combatLevel = 0; // L: 28
|
|
this.skillLevel = 0; // L: 29
|
|
this.animationCycleStart = 0; // L: 31
|
|
this.animationCycleEnd = 0; // L: 32
|
|
this.isUnanimated = false;
|
|
this.team = 0;
|
|
this.isHidden = false; // L: 43
|
|
this.isFriendTriBool = TriBool.TriBool_unknown; // L: 46
|
|
this.isInClanChat = TriBool.TriBool_unknown; // L: 47
|
|
this.field1170 = TriBool.TriBool_unknown; // L: 48
|
|
this.field1186 = false; // L: 49
|
|
} // L: 53
|
|
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lnk;B)V",
|
|
garbageValue = "100"
|
|
)
|
|
@Export("read")
|
|
final void read(Buffer var1) {
|
|
var1.offset = 0; // L: 56
|
|
int var2 = var1.readUnsignedByte(); // L: 57
|
|
this.headIconPk = var1.readByte(); // L: 58
|
|
this.headIconPrayer = var1.readByte(); // L: 59
|
|
int var3 = -1; // L: 60
|
|
this.team = 0; // L: 61
|
|
int[] var4 = new int[12]; // L: 62
|
|
|
|
int var6;
|
|
int var7;
|
|
int var8;
|
|
for (int var5 = 0; var5 < 12; ++var5) { // L: 63
|
|
var6 = var1.readUnsignedByte(); // L: 64
|
|
if (var6 == 0) { // L: 65
|
|
var4[var5] = 0; // L: 66
|
|
} else {
|
|
var7 = var1.readUnsignedByte(); // L: 69
|
|
var4[var5] = var7 + (var6 << 8); // L: 70
|
|
if (var5 == 0 && var4[0] == 65535) { // L: 71
|
|
var3 = var1.readUnsignedShort(); // L: 72
|
|
break;
|
|
}
|
|
|
|
if (var4[var5] >= 512) { // L: 75
|
|
var8 = Strings.ItemDefinition_get(var4[var5] - 512).team; // L: 76
|
|
if (var8 != 0) { // L: 77
|
|
this.team = var8;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
int[] var11 = new int[5]; // L: 80
|
|
|
|
for (var6 = 0; var6 < 5; ++var6) { // L: 81
|
|
var7 = var1.readUnsignedByte(); // L: 82
|
|
if (var7 < 0 || var7 >= Canvas.field295[var6].length) { // L: 83
|
|
var7 = 0;
|
|
}
|
|
|
|
var11[var6] = var7; // L: 84
|
|
}
|
|
|
|
super.idleSequence = var1.readUnsignedShort(); // L: 86
|
|
if (super.idleSequence == 65535) { // L: 87
|
|
super.idleSequence = -1;
|
|
}
|
|
|
|
super.turnLeftSequence = var1.readUnsignedShort(); // L: 88
|
|
if (super.turnLeftSequence == 65535) { // L: 89
|
|
super.turnLeftSequence = -1;
|
|
}
|
|
|
|
super.turnRightSequence = super.turnLeftSequence; // L: 90
|
|
super.walkSequence = var1.readUnsignedShort(); // L: 91
|
|
if (super.walkSequence == 65535) { // L: 92
|
|
super.walkSequence = -1;
|
|
}
|
|
|
|
super.walkBackSequence = var1.readUnsignedShort(); // L: 93
|
|
if (super.walkBackSequence == 65535) { // L: 94
|
|
super.walkBackSequence = -1;
|
|
}
|
|
|
|
super.walkLeftSequence = var1.readUnsignedShort(); // L: 95
|
|
if (super.walkLeftSequence == 65535) {
|
|
super.walkLeftSequence = -1; // L: 96
|
|
}
|
|
|
|
super.walkRightSequence = var1.readUnsignedShort(); // L: 97
|
|
if (super.walkRightSequence == 65535) { // L: 98
|
|
super.walkRightSequence = -1;
|
|
}
|
|
|
|
super.runSequence = var1.readUnsignedShort(); // L: 99
|
|
if (super.runSequence == 65535) { // L: 100
|
|
super.runSequence = -1;
|
|
}
|
|
|
|
this.username = new Username(var1.readStringCp1252NullTerminated(), ModeWhere.loginType); // L: 101
|
|
this.clearIsFriend(); // L: 102
|
|
this.clearIsInClanChat(); // L: 103
|
|
this.method2130(); // L: 104
|
|
if (this == class35.localPlayer) { // L: 105
|
|
RunException.localPlayerName = this.username.getName();
|
|
}
|
|
|
|
this.combatLevel = var1.readUnsignedByte(); // L: 106
|
|
this.skillLevel = var1.readUnsignedShort(); // L: 107
|
|
this.isHidden = var1.readUnsignedByte() == 1; // L: 108
|
|
if (Client.gameBuild == 0 && Client.staffModLevel >= 2) { // L: 109
|
|
this.isHidden = false;
|
|
}
|
|
|
|
class135[] var12 = null; // L: 110
|
|
boolean var13 = false; // L: 111
|
|
if (var1.offset < var1.array.length) { // L: 112
|
|
var8 = var1.readUnsignedShort(); // L: 113
|
|
var13 = (var8 >> 15 & 1) == 1; // L: 114
|
|
if (var8 > 0 && var8 != 32768) { // L: 115
|
|
var12 = new class135[12]; // L: 116
|
|
|
|
for (int var9 = 0; var9 < 12; ++var9) { // L: 117
|
|
int var10 = var8 >> 12 - var9 & 1; // L: 118
|
|
if (var10 == 1) { // L: 119
|
|
var12[var9] = class23.method310(var4[var9] - 512, var1); // L: 120
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (this.appearance == null) { // L: 125
|
|
this.appearance = new PlayerComposition();
|
|
}
|
|
|
|
this.appearance.method4614(var4, var12, var13, var11, var2 == 1, var3); // L: 126
|
|
} // L: 127
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Lgj;",
|
|
garbageValue = "-220627570"
|
|
)
|
|
@Export("getModel")
|
|
protected final Model getModel() {
|
|
if (this.appearance == null) { // L: 182
|
|
return null;
|
|
} else {
|
|
SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? SequenceDefinition_get(super.sequence) : null; // L: 183
|
|
SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.idleSequence == super.movementSequence && var1 != null ? null : SequenceDefinition_get(super.movementSequence); // L: 184
|
|
Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame); // L: 185
|
|
if (var3 == null) { // L: 186
|
|
return null;
|
|
} else {
|
|
var3.calculateBoundsCylinder(); // L: 187
|
|
super.defaultHeight = var3.height; // L: 188
|
|
Model var4;
|
|
Model[] var5;
|
|
if (!this.isUnanimated && super.spotAnimation != -1 && super.spotAnimationFrame != -1) { // L: 189
|
|
var4 = Friend.SpotAnimationDefinition_get(super.spotAnimation).getModel(super.spotAnimationFrame); // L: 190
|
|
if (var4 != null) { // L: 191
|
|
var4.offsetBy(0, -super.field1224, 0); // L: 192
|
|
var5 = new Model[]{var3, var4}; // L: 193
|
|
var3 = new Model(var5, 2); // L: 194
|
|
}
|
|
}
|
|
|
|
if (!this.isUnanimated && this.model0 != null) { // L: 197
|
|
if (Client.cycle >= this.animationCycleEnd) { // L: 198
|
|
this.model0 = null;
|
|
}
|
|
|
|
if (Client.cycle >= this.animationCycleStart && Client.cycle < this.animationCycleEnd) { // L: 199
|
|
var4 = this.model0; // L: 200
|
|
var4.offsetBy(this.field1174 - super.x, this.tileHeight2 - this.tileHeight, this.field1172 - super.y); // L: 201
|
|
if (super.orientation == 512) { // L: 202
|
|
var4.rotateY90Ccw(); // L: 203
|
|
var4.rotateY90Ccw(); // L: 204
|
|
var4.rotateY90Ccw(); // L: 205
|
|
} else if (super.orientation == 1024) { // L: 207
|
|
var4.rotateY90Ccw(); // L: 208
|
|
var4.rotateY90Ccw(); // L: 209
|
|
} else if (super.orientation == 1536) { // L: 211
|
|
var4.rotateY90Ccw();
|
|
}
|
|
|
|
var5 = new Model[]{var3, var4}; // L: 212
|
|
var3 = new Model(var5, 2); // L: 213
|
|
if (super.orientation == 512) { // L: 214
|
|
var4.rotateY90Ccw();
|
|
} else if (super.orientation == 1024) { // L: 215
|
|
var4.rotateY90Ccw(); // L: 216
|
|
var4.rotateY90Ccw(); // L: 217
|
|
} else if (super.orientation == 1536) { // L: 219
|
|
var4.rotateY90Ccw(); // L: 220
|
|
var4.rotateY90Ccw(); // L: 221
|
|
var4.rotateY90Ccw(); // L: 222
|
|
}
|
|
|
|
var4.offsetBy(super.x - this.field1174, this.tileHeight - this.tileHeight2, super.y - this.field1172); // L: 224
|
|
}
|
|
}
|
|
|
|
var3.isSingleTile = true; // L: 227
|
|
return var3; // L: 228
|
|
}
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "-1577174246"
|
|
)
|
|
@Export("isFriend")
|
|
boolean isFriend() {
|
|
if (this.isFriendTriBool == TriBool.TriBool_unknown) { // L: 130
|
|
this.checkIsFriend(); // L: 131
|
|
}
|
|
|
|
return this.isFriendTriBool == TriBool.TriBool_true; // L: 133
|
|
}
|
|
|
|
@ObfuscatedName("g")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)V",
|
|
garbageValue = "63"
|
|
)
|
|
@Export("clearIsFriend")
|
|
void clearIsFriend() {
|
|
this.isFriendTriBool = TriBool.TriBool_unknown; // L: 137
|
|
} // L: 138
|
|
|
|
@ObfuscatedName("l")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "-2054012929"
|
|
)
|
|
@Export("checkIsFriend")
|
|
void checkIsFriend() {
|
|
this.isFriendTriBool = GrandExchangeOfferUnitPriceComparator.friendSystem.isFriendAndHasWorld(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 141
|
|
} // L: 142
|
|
|
|
@ObfuscatedName("z")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "1144773320"
|
|
)
|
|
@Export("isClanMember")
|
|
boolean isClanMember() {
|
|
if (this.isInClanChat == TriBool.TriBool_unknown) { // L: 145
|
|
this.updateIsInClanChat(); // L: 146
|
|
}
|
|
|
|
return this.isInClanChat == TriBool.TriBool_true; // L: 148
|
|
}
|
|
|
|
@ObfuscatedName("b")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "-1529344254"
|
|
)
|
|
@Export("clearIsInClanChat")
|
|
void clearIsInClanChat() {
|
|
this.isInClanChat = TriBool.TriBool_unknown; // L: 152
|
|
} // L: 153
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(S)V",
|
|
garbageValue = "28293"
|
|
)
|
|
@Export("updateIsInClanChat")
|
|
void updateIsInClanChat() {
|
|
this.isInClanChat = class25.clanChat != null && class25.clanChat.contains(this.username) ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 156
|
|
} // L: 157
|
|
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "-925189639"
|
|
)
|
|
void method2177() {
|
|
this.field1170 = Client.field678[0] != null && Client.field678[0].method113(this.username.getName()) != -1 ? TriBool.TriBool_true : TriBool.TriBool_false; // L: 160
|
|
} // L: 161
|
|
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(S)V",
|
|
garbageValue = "31443"
|
|
)
|
|
void method2130() {
|
|
this.field1170 = TriBool.TriBool_unknown; // L: 164
|
|
} // L: 165
|
|
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(B)Z",
|
|
garbageValue = "22"
|
|
)
|
|
boolean method2137() {
|
|
if (this.field1170 == TriBool.TriBool_unknown) { // L: 168
|
|
this.method2177(); // L: 169
|
|
}
|
|
|
|
return this.field1170 == TriBool.TriBool_true; // L: 171
|
|
}
|
|
|
|
@ObfuscatedName("r")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-796021521"
|
|
)
|
|
@Export("transformedSize")
|
|
int transformedSize() {
|
|
return this.appearance != null && this.appearance.npcTransformId != -1 ? class8.getNpcDefinition(this.appearance.npcTransformId).size : 1; // L: 175 176 178
|
|
}
|
|
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIBI)V",
|
|
garbageValue = "166145793"
|
|
)
|
|
final void method2140(int var1, int var2, byte var3) {
|
|
if (super.sequence != -1 && SequenceDefinition_get(super.sequence).field1882 == 1) { // L: 232
|
|
super.sequence = -1;
|
|
}
|
|
|
|
super.field1247 = -1; // L: 233
|
|
if (var1 >= 0 && var1 < 104 && var2 >= 0 && var2 < 104) { // L: 234
|
|
if (super.pathX[0] >= 0 && super.pathX[0] < 104 && super.pathY[0] >= 0 && super.pathY[0] < 104) { // L: 235
|
|
if (var3 == 2) { // L: 237
|
|
Player var4 = this; // L: 238
|
|
int var5 = super.pathX[0]; // L: 240
|
|
int var6 = super.pathY[0]; // L: 241
|
|
int var7 = this.transformedSize(); // L: 242
|
|
if (var5 >= var7 && var5 < 104 - var7 && var6 >= var7 && var6 < 104 - var7 && var1 >= var7 && var1 < 104 - var7 && var2 >= var7 && var2 < 104 - var7) { // L: 243 244
|
|
int var9 = this.transformedSize(); // L: 246
|
|
Client.field894.approxDestinationX = var1; // L: 249
|
|
Client.field894.approxDestinationY = var2; // L: 250
|
|
Client.field894.approxDestinationSizeX = 1; // L: 251
|
|
Client.field894.approxDestinationSizeY = 1; // L: 252
|
|
ApproximateRouteStrategy var10 = Client.field894; // L: 253
|
|
ApproximateRouteStrategy var11 = var10; // L: 255
|
|
CollisionMap var12 = Client.collisionMaps[this.plane]; // L: 256
|
|
int[] var13 = Client.field828; // L: 257
|
|
int[] var14 = Client.field896; // L: 258
|
|
int var15 = 0;
|
|
|
|
label853:
|
|
while (true) {
|
|
int var16;
|
|
if (var15 >= 128) {
|
|
int var17;
|
|
int var18;
|
|
byte var19;
|
|
byte var20;
|
|
int var21;
|
|
int var22;
|
|
byte var23;
|
|
int var24;
|
|
int[][] var25;
|
|
int var26;
|
|
int var27;
|
|
int var28;
|
|
int var29;
|
|
boolean var35;
|
|
boolean var36;
|
|
int var37;
|
|
int var38;
|
|
int var40;
|
|
if (var9 == 1) { // L: 267
|
|
var17 = var5; // L: 270
|
|
var18 = var6; // L: 271
|
|
var19 = 64; // L: 272
|
|
var20 = 64; // L: 273
|
|
var21 = var5 - var19; // L: 274
|
|
var22 = var6 - var20; // L: 275
|
|
class159.directions[var19][var20] = 99; // L: 276
|
|
class159.distances[var19][var20] = 0; // L: 277
|
|
var23 = 0; // L: 278
|
|
var24 = 0; // L: 279
|
|
class159.bufferX[var23] = var5; // L: 280
|
|
var40 = var23 + 1;
|
|
class159.bufferY[var23] = var6; // L: 281
|
|
var25 = var12.flags; // L: 282
|
|
|
|
while (true) {
|
|
if (var24 == var40) { // L: 285
|
|
class159.field1920 = var17; // L: 357
|
|
class159.field1924 = var18; // L: 358
|
|
var36 = false; // L: 359
|
|
break;
|
|
}
|
|
|
|
var17 = class159.bufferX[var24]; // L: 286
|
|
var18 = class159.bufferY[var24]; // L: 287
|
|
var24 = var24 + 1 & 4095; // L: 288
|
|
var37 = var17 - var21; // L: 289
|
|
var38 = var18 - var22; // L: 290
|
|
var26 = var17 - var12.xInset; // L: 291
|
|
var27 = var18 - var12.yInset; // L: 292
|
|
if (var11.hasArrived(1, var17, var18, var12)) { // L: 293
|
|
class159.field1920 = var17; // L: 294
|
|
class159.field1924 = var18; // L: 295
|
|
var36 = true; // L: 296
|
|
break;
|
|
}
|
|
|
|
var28 = class159.distances[var37][var38] + 1; // L: 299
|
|
if (var37 > 0 && class159.directions[var37 - 1][var38] == 0 && (var25[var26 - 1][var27] & 19136776) == 0) { // L: 300
|
|
class159.bufferX[var40] = var17 - 1; // L: 301
|
|
class159.bufferY[var40] = var18; // L: 302
|
|
var40 = var40 + 1 & 4095; // L: 303
|
|
class159.directions[var37 - 1][var38] = 2; // L: 304
|
|
class159.distances[var37 - 1][var38] = var28; // L: 305
|
|
}
|
|
|
|
if (var37 < 127 && class159.directions[var37 + 1][var38] == 0 && (var25[var26 + 1][var27] & 19136896) == 0) { // L: 307
|
|
class159.bufferX[var40] = var17 + 1; // L: 308
|
|
class159.bufferY[var40] = var18; // L: 309
|
|
var40 = var40 + 1 & 4095; // L: 310
|
|
class159.directions[var37 + 1][var38] = 8; // L: 311
|
|
class159.distances[var37 + 1][var38] = var28; // L: 312
|
|
}
|
|
|
|
if (var38 > 0 && class159.directions[var37][var38 - 1] == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { // L: 314
|
|
class159.bufferX[var40] = var17; // L: 315
|
|
class159.bufferY[var40] = var18 - 1; // L: 316
|
|
var40 = var40 + 1 & 4095; // L: 317
|
|
class159.directions[var37][var38 - 1] = 1; // L: 318
|
|
class159.distances[var37][var38 - 1] = var28; // L: 319
|
|
}
|
|
|
|
if (var38 < 127 && class159.directions[var37][var38 + 1] == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { // L: 321
|
|
class159.bufferX[var40] = var17; // L: 322
|
|
class159.bufferY[var40] = var18 + 1; // L: 323
|
|
var40 = var40 + 1 & 4095; // L: 324
|
|
class159.directions[var37][var38 + 1] = 4; // L: 325
|
|
class159.distances[var37][var38 + 1] = var28; // L: 326
|
|
}
|
|
|
|
if (var37 > 0 && var38 > 0 && class159.directions[var37 - 1][var38 - 1] == 0 && (var25[var26 - 1][var27 - 1] & 19136782) == 0 && (var25[var26 - 1][var27] & 19136776) == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { // L: 328
|
|
class159.bufferX[var40] = var17 - 1; // L: 329
|
|
class159.bufferY[var40] = var18 - 1; // L: 330
|
|
var40 = var40 + 1 & 4095; // L: 331
|
|
class159.directions[var37 - 1][var38 - 1] = 3; // L: 332
|
|
class159.distances[var37 - 1][var38 - 1] = var28; // L: 333
|
|
}
|
|
|
|
if (var37 < 127 && var38 > 0 && class159.directions[var37 + 1][var38 - 1] == 0 && (var25[var26 + 1][var27 - 1] & 19136899) == 0 && (var25[var26 + 1][var27] & 19136896) == 0 && (var25[var26][var27 - 1] & 19136770) == 0) { // L: 335
|
|
class159.bufferX[var40] = var17 + 1; // L: 336
|
|
class159.bufferY[var40] = var18 - 1; // L: 337
|
|
var40 = var40 + 1 & 4095; // L: 338
|
|
class159.directions[var37 + 1][var38 - 1] = 9; // L: 339
|
|
class159.distances[var37 + 1][var38 - 1] = var28; // L: 340
|
|
}
|
|
|
|
if (var37 > 0 && var38 < 127 && class159.directions[var37 - 1][var38 + 1] == 0 && (var25[var26 - 1][var27 + 1] & 19136824) == 0 && (var25[var26 - 1][var27] & 19136776) == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { // L: 342
|
|
class159.bufferX[var40] = var17 - 1; // L: 343
|
|
class159.bufferY[var40] = var18 + 1; // L: 344
|
|
var40 = var40 + 1 & 4095; // L: 345
|
|
class159.directions[var37 - 1][var38 + 1] = 6; // L: 346
|
|
class159.distances[var37 - 1][var38 + 1] = var28; // L: 347
|
|
}
|
|
|
|
if (var37 < 127 && var38 < 127 && class159.directions[var37 + 1][var38 + 1] == 0 && (var25[var26 + 1][var27 + 1] & 19136992) == 0 && (var25[var26 + 1][var27] & 19136896) == 0 && (var25[var26][var27 + 1] & 19136800) == 0) { // L: 349
|
|
class159.bufferX[var40] = var17 + 1; // L: 350
|
|
class159.bufferY[var40] = var18 + 1; // L: 351
|
|
var40 = var40 + 1 & 4095; // L: 352
|
|
class159.directions[var37 + 1][var38 + 1] = 12; // L: 353
|
|
class159.distances[var37 + 1][var38 + 1] = var28; // L: 354
|
|
}
|
|
}
|
|
|
|
var35 = var36; // L: 361
|
|
} else if (var9 == 2) { // L: 363
|
|
var17 = var5; // L: 366
|
|
var18 = var6; // L: 367
|
|
var19 = 64; // L: 368
|
|
var20 = 64; // L: 369
|
|
var21 = var5 - var19; // L: 370
|
|
var22 = var6 - var20; // L: 371
|
|
class159.directions[var19][var20] = 99; // L: 372
|
|
class159.distances[var19][var20] = 0; // L: 373
|
|
var23 = 0; // L: 374
|
|
var24 = 0; // L: 375
|
|
class159.bufferX[var23] = var5; // L: 376
|
|
var40 = var23 + 1;
|
|
class159.bufferY[var23] = var6; // L: 377
|
|
var25 = var12.flags; // L: 378
|
|
|
|
while (true) {
|
|
if (var40 == var24) { // L: 379
|
|
class159.field1920 = var17; // L: 479
|
|
class159.field1924 = var18; // L: 480
|
|
var36 = false; // L: 481
|
|
break;
|
|
}
|
|
|
|
var17 = class159.bufferX[var24]; // L: 380
|
|
var18 = class159.bufferY[var24]; // L: 381
|
|
var24 = var24 + 1 & 4095; // L: 382
|
|
var37 = var17 - var21; // L: 383
|
|
var38 = var18 - var22; // L: 384
|
|
var26 = var17 - var12.xInset; // L: 385
|
|
var27 = var18 - var12.yInset; // L: 386
|
|
if (var11.hasArrived(2, var17, var18, var12)) { // L: 387
|
|
class159.field1920 = var17; // L: 388
|
|
class159.field1924 = var18; // L: 389
|
|
var36 = true; // L: 390
|
|
break;
|
|
}
|
|
|
|
var28 = class159.distances[var37][var38] + 1; // L: 393
|
|
if (var37 > 0 && class159.directions[var37 - 1][var38] == 0 && (var25[var26 - 1][var27] & 19136782) == 0 && (var25[var26 - 1][var27 + 1] & 19136824) == 0) { // L: 394 395 396 397
|
|
class159.bufferX[var40] = var17 - 1; // L: 398
|
|
class159.bufferY[var40] = var18; // L: 399
|
|
var40 = var40 + 1 & 4095; // L: 400
|
|
class159.directions[var37 - 1][var38] = 2; // L: 401
|
|
class159.distances[var37 - 1][var38] = var28; // L: 402
|
|
}
|
|
|
|
if (var37 < 126 && class159.directions[var37 + 1][var38] == 0 && (var25[var26 + 2][var27] & 19136899) == 0 && (var25[var26 + 2][var27 + 1] & 19136992) == 0) { // L: 404 405 406 407
|
|
class159.bufferX[var40] = var17 + 1; // L: 408
|
|
class159.bufferY[var40] = var18; // L: 409
|
|
var40 = var40 + 1 & 4095; // L: 410
|
|
class159.directions[var37 + 1][var38] = 8; // L: 411
|
|
class159.distances[var37 + 1][var38] = var28; // L: 412
|
|
}
|
|
|
|
if (var38 > 0 && class159.directions[var37][var38 - 1] == 0 && (var25[var26][var27 - 1] & 19136782) == 0 && (var25[var26 + 1][var27 - 1] & 19136899) == 0) { // L: 414 415 416 417
|
|
class159.bufferX[var40] = var17; // L: 418
|
|
class159.bufferY[var40] = var18 - 1; // L: 419
|
|
var40 = var40 + 1 & 4095; // L: 420
|
|
class159.directions[var37][var38 - 1] = 1; // L: 421
|
|
class159.distances[var37][var38 - 1] = var28; // L: 422
|
|
}
|
|
|
|
if (var38 < 126 && class159.directions[var37][var38 + 1] == 0 && (var25[var26][var27 + 2] & 19136824) == 0 && (var25[var26 + 1][var27 + 2] & 19136992) == 0) { // L: 424 425 426 427
|
|
class159.bufferX[var40] = var17; // L: 428
|
|
class159.bufferY[var40] = var18 + 1; // L: 429
|
|
var40 = var40 + 1 & 4095; // L: 430
|
|
class159.directions[var37][var38 + 1] = 4; // L: 431
|
|
class159.distances[var37][var38 + 1] = var28; // L: 432
|
|
}
|
|
|
|
if (var37 > 0 && var38 > 0 && class159.directions[var37 - 1][var38 - 1] == 0 && (var25[var26 - 1][var27] & 19136830) == 0 && (var25[var26 - 1][var27 - 1] & 19136782) == 0 && (var25[var26][var27 - 1] & 19136911) == 0) { // L: 434 435 436 437 438
|
|
class159.bufferX[var40] = var17 - 1; // L: 439
|
|
class159.bufferY[var40] = var18 - 1; // L: 440
|
|
var40 = var40 + 1 & 4095; // L: 441
|
|
class159.directions[var37 - 1][var38 - 1] = 3; // L: 442
|
|
class159.distances[var37 - 1][var38 - 1] = var28; // L: 443
|
|
}
|
|
|
|
if (var37 < 126 && var38 > 0 && class159.directions[var37 + 1][var38 - 1] == 0 && (var25[var26 + 1][var27 - 1] & 19136911) == 0 && (var25[var26 + 2][var27 - 1] & 19136899) == 0 && (var25[var26 + 2][var27] & 19136995) == 0) { // L: 445 446 447 448 449
|
|
class159.bufferX[var40] = var17 + 1; // L: 450
|
|
class159.bufferY[var40] = var18 - 1; // L: 451
|
|
var40 = var40 + 1 & 4095; // L: 452
|
|
class159.directions[var37 + 1][var38 - 1] = 9; // L: 453
|
|
class159.distances[var37 + 1][var38 - 1] = var28; // L: 454
|
|
}
|
|
|
|
if (var37 > 0 && var38 < 126 && class159.directions[var37 - 1][var38 + 1] == 0 && (var25[var26 - 1][var27 + 1] & 19136830) == 0 && (var25[var26 - 1][var27 + 2] & 19136824) == 0 && (var25[var26][var27 + 2] & 19137016) == 0) { // L: 456 457 458 459 460
|
|
class159.bufferX[var40] = var17 - 1; // L: 461
|
|
class159.bufferY[var40] = var18 + 1; // L: 462
|
|
var40 = var40 + 1 & 4095; // L: 463
|
|
class159.directions[var37 - 1][var38 + 1] = 6; // L: 464
|
|
class159.distances[var37 - 1][var38 + 1] = var28; // L: 465
|
|
}
|
|
|
|
if (var37 < 126 && var38 < 126 && class159.directions[var37 + 1][var38 + 1] == 0 && (var25[var26 + 1][var27 + 2] & 19137016) == 0 && (var25[var26 + 2][var27 + 2] & 19136992) == 0 && (var25[var26 + 2][var27 + 1] & 19136995) == 0) { // L: 467 468 469 470 471
|
|
class159.bufferX[var40] = var17 + 1; // L: 472
|
|
class159.bufferY[var40] = var18 + 1; // L: 473
|
|
var40 = var40 + 1 & 4095; // L: 474
|
|
class159.directions[var37 + 1][var38 + 1] = 12; // L: 475
|
|
class159.distances[var37 + 1][var38 + 1] = var28; // L: 476
|
|
}
|
|
}
|
|
|
|
var35 = var36; // L: 483
|
|
} else {
|
|
var17 = var5; // L: 488
|
|
var18 = var6; // L: 489
|
|
var19 = 64; // L: 490
|
|
var20 = 64; // L: 491
|
|
var21 = var5 - var19; // L: 492
|
|
var22 = var6 - var20; // L: 493
|
|
class159.directions[var19][var20] = 99; // L: 494
|
|
class159.distances[var19][var20] = 0; // L: 495
|
|
var23 = 0; // L: 496
|
|
var24 = 0; // L: 497
|
|
class159.bufferX[var23] = var5; // L: 498
|
|
var40 = var23 + 1;
|
|
class159.bufferY[var23] = var6; // L: 499
|
|
var25 = var12.flags; // L: 500
|
|
|
|
label839:
|
|
while (true) {
|
|
label837:
|
|
while (true) {
|
|
do {
|
|
do {
|
|
do {
|
|
label814:
|
|
do {
|
|
if (var40 == var24) { // L: 501
|
|
class159.field1920 = var17; // L: 621
|
|
class159.field1924 = var18; // L: 622
|
|
var36 = false; // L: 623
|
|
break label839;
|
|
}
|
|
|
|
var17 = class159.bufferX[var24]; // L: 502
|
|
var18 = class159.bufferY[var24]; // L: 503
|
|
var24 = var24 + 1 & 4095; // L: 504
|
|
var37 = var17 - var21; // L: 505
|
|
var38 = var18 - var22; // L: 506
|
|
var26 = var17 - var12.xInset; // L: 507
|
|
var27 = var18 - var12.yInset; // L: 508
|
|
if (var11.hasArrived(var9, var17, var18, var12)) { // L: 509
|
|
class159.field1920 = var17; // L: 510
|
|
class159.field1924 = var18; // L: 511
|
|
var36 = true; // L: 512
|
|
break label839;
|
|
}
|
|
|
|
var28 = class159.distances[var37][var38] + 1; // L: 515
|
|
if (var37 > 0 && class159.directions[var37 - 1][var38] == 0 && (var25[var26 - 1][var27] & 19136782) == 0 && (var25[var26 - 1][var27 + var9 - 1] & 19136824) == 0) { // L: 516 517 518 519
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9 - 1) {
|
|
class159.bufferX[var40] = var17 - 1; // L: 523
|
|
class159.bufferY[var40] = var18; // L: 524
|
|
var40 = var40 + 1 & 4095; // L: 525
|
|
class159.directions[var37 - 1][var38] = 2; // L: 526
|
|
class159.distances[var37 - 1][var38] = var28; // L: 527
|
|
break;
|
|
}
|
|
|
|
if ((var25[var26 - 1][var29 + var27] & 19136830) != 0) { // L: 521
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 520
|
|
}
|
|
}
|
|
|
|
if (var37 < 128 - var9 && class159.directions[var37 + 1][var38] == 0 && (var25[var9 + var26][var27] & 19136899) == 0 && (var25[var9 + var26][var27 + var9 - 1] & 19136992) == 0) { // L: 529 530 531 532
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9 - 1) {
|
|
class159.bufferX[var40] = var17 + 1; // L: 536
|
|
class159.bufferY[var40] = var18; // L: 537
|
|
var40 = var40 + 1 & 4095; // L: 538
|
|
class159.directions[var37 + 1][var38] = 8; // L: 539
|
|
class159.distances[var37 + 1][var38] = var28; // L: 540
|
|
break;
|
|
}
|
|
|
|
if ((var25[var26 + var9][var29 + var27] & 19136995) != 0) { // L: 534
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 533
|
|
}
|
|
}
|
|
|
|
if (var38 > 0 && class159.directions[var37][var38 - 1] == 0 && (var25[var26][var27 - 1] & 19136782) == 0 && (var25[var26 + var9 - 1][var27 - 1] & 19136899) == 0) { // L: 542 543 544 545
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9 - 1) {
|
|
class159.bufferX[var40] = var17; // L: 549
|
|
class159.bufferY[var40] = var18 - 1; // L: 550
|
|
var40 = var40 + 1 & 4095; // L: 551
|
|
class159.directions[var37][var38 - 1] = 1; // L: 552
|
|
class159.distances[var37][var38 - 1] = var28; // L: 553
|
|
break;
|
|
}
|
|
|
|
if ((var25[var26 + var29][var27 - 1] & 19136911) != 0) { // L: 547
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 546
|
|
}
|
|
}
|
|
|
|
if (var38 < 128 - var9 && class159.directions[var37][var38 + 1] == 0 && (var25[var26][var9 + var27] & 19136824) == 0 && (var25[var26 + var9 - 1][var9 + var27] & 19136992) == 0) { // L: 555 556 557 558
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9 - 1) {
|
|
class159.bufferX[var40] = var17; // L: 562
|
|
class159.bufferY[var40] = var18 + 1; // L: 563
|
|
var40 = var40 + 1 & 4095; // L: 564
|
|
class159.directions[var37][var38 + 1] = 4; // L: 565
|
|
class159.distances[var37][var38 + 1] = var28; // L: 566
|
|
break;
|
|
}
|
|
|
|
if ((var25[var29 + var26][var27 + var9] & 19137016) != 0) { // L: 560
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 559
|
|
}
|
|
}
|
|
|
|
if (var37 > 0 && var38 > 0 && class159.directions[var37 - 1][var38 - 1] == 0 && (var25[var26 - 1][var27 - 1] & 19136782) == 0) { // L: 568 569 570
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9) {
|
|
class159.bufferX[var40] = var17 - 1; // L: 575
|
|
class159.bufferY[var40] = var18 - 1; // L: 576
|
|
var40 = var40 + 1 & 4095; // L: 577
|
|
class159.directions[var37 - 1][var38 - 1] = 3; // L: 578
|
|
class159.distances[var37 - 1][var38 - 1] = var28; // L: 579
|
|
break;
|
|
}
|
|
|
|
if ((var25[var26 - 1][var29 + (var27 - 1)] & 19136830) != 0 || (var25[var29 + (var26 - 1)][var27 - 1] & 19136911) != 0) { // L: 572 573
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 571
|
|
}
|
|
}
|
|
|
|
if (var37 < 128 - var9 && var38 > 0 && class159.directions[var37 + 1][var38 - 1] == 0 && (var25[var9 + var26][var27 - 1] & 19136899) == 0) { // L: 581 582 583
|
|
var29 = 1;
|
|
|
|
while (true) {
|
|
if (var29 >= var9) {
|
|
class159.bufferX[var40] = var17 + 1; // L: 588
|
|
class159.bufferY[var40] = var18 - 1; // L: 589
|
|
var40 = var40 + 1 & 4095; // L: 590
|
|
class159.directions[var37 + 1][var38 - 1] = 9; // L: 591
|
|
class159.distances[var37 + 1][var38 - 1] = var28; // L: 592
|
|
break;
|
|
}
|
|
|
|
if ((var25[var26 + var9][var29 + (var27 - 1)] & 19136995) != 0 || (var25[var29 + var26][var27 - 1] & 19136911) != 0) { // L: 585 586
|
|
break;
|
|
}
|
|
|
|
++var29; // L: 584
|
|
}
|
|
}
|
|
|
|
if (var37 > 0 && var38 < 128 - var9 && class159.directions[var37 - 1][var38 + 1] == 0 && (var25[var26 - 1][var27 + var9] & 19136824) == 0) { // L: 594 595 596
|
|
for (var29 = 1; var29 < var9; ++var29) { // L: 597
|
|
if ((var25[var26 - 1][var27 + var29] & 19136830) != 0 || (var25[var29 + (var26 - 1)][var9 + var27] & 19137016) != 0) { // L: 598 599
|
|
continue label814;
|
|
}
|
|
}
|
|
|
|
class159.bufferX[var40] = var17 - 1; // L: 601
|
|
class159.bufferY[var40] = var18 + 1; // L: 602
|
|
var40 = var40 + 1 & 4095; // L: 603
|
|
class159.directions[var37 - 1][var38 + 1] = 6; // L: 604
|
|
class159.distances[var37 - 1][var38 + 1] = var28; // L: 605
|
|
}
|
|
} while(var37 >= 128 - var9); // L: 607
|
|
} while(var38 >= 128 - var9);
|
|
} while(class159.directions[var37 + 1][var38 + 1] != 0); // L: 608
|
|
} while((var25[var26 + var9][var27 + var9] & 19136992) != 0); // L: 609
|
|
|
|
for (var29 = 1; var29 < var9; ++var29) { // L: 610
|
|
if ((var25[var29 + var26][var9 + var27] & 19137016) != 0 || (var25[var26 + var9][var29 + var27] & 19136995) != 0) { // L: 611 612
|
|
continue label837;
|
|
}
|
|
}
|
|
|
|
class159.bufferX[var40] = var17 + 1; // L: 614
|
|
class159.bufferY[var40] = var18 + 1; // L: 615
|
|
var40 = var40 + 1 & 4095; // L: 616
|
|
class159.directions[var37 + 1][var38 + 1] = 12; // L: 617
|
|
class159.distances[var37 + 1][var38 + 1] = var28; // L: 618
|
|
}
|
|
}
|
|
|
|
var35 = var36; // L: 625
|
|
}
|
|
|
|
int var8;
|
|
label896: {
|
|
var16 = var5 - 64; // L: 627
|
|
var17 = var6 - 64; // L: 628
|
|
var18 = class159.field1920; // L: 629
|
|
var37 = class159.field1924; // L: 630
|
|
if (!var35) { // L: 631
|
|
var38 = Integer.MAX_VALUE; // L: 633
|
|
var21 = Integer.MAX_VALUE; // L: 634
|
|
byte var39 = 10; // L: 635
|
|
var40 = var11.approxDestinationX; // L: 636
|
|
var24 = var11.approxDestinationY; // L: 637
|
|
int var34 = var11.approxDestinationSizeX; // L: 638
|
|
var26 = var11.approxDestinationSizeY; // L: 639
|
|
|
|
for (var27 = var40 - var39; var27 <= var39 + var40; ++var27) { // L: 640
|
|
for (var28 = var24 - var39; var28 <= var39 + var24; ++var28) { // L: 641
|
|
var29 = var27 - var16; // L: 642
|
|
int var30 = var28 - var17; // L: 643
|
|
if (var29 >= 0 && var30 >= 0 && var29 < 128 && var30 < 128 && class159.distances[var29][var30] < 100) { // L: 644 645
|
|
int var31 = 0; // L: 646
|
|
if (var27 < var40) { // L: 647
|
|
var31 = var40 - var27;
|
|
} else if (var27 > var40 + var34 - 1) { // L: 648
|
|
var31 = var27 - (var34 + var40 - 1);
|
|
}
|
|
|
|
int var32 = 0; // L: 649
|
|
if (var28 < var24) { // L: 650
|
|
var32 = var24 - var28;
|
|
} else if (var28 > var26 + var24 - 1) { // L: 651
|
|
var32 = var28 - (var26 + var24 - 1);
|
|
}
|
|
|
|
int var33 = var31 * var31 + var32 * var32; // L: 652
|
|
if (var33 < var38 || var38 == var33 && class159.distances[var29][var30] < var21) { // L: 653
|
|
var38 = var33; // L: 654
|
|
var21 = class159.distances[var29][var30]; // L: 655
|
|
var18 = var27; // L: 656
|
|
var37 = var28; // L: 657
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (var38 == Integer.MAX_VALUE) { // L: 663
|
|
var8 = -1; // L: 664
|
|
break label896;
|
|
}
|
|
}
|
|
|
|
if (var18 == var5 && var6 == var37) { // L: 673
|
|
var8 = 0; // L: 674
|
|
} else {
|
|
var20 = 0; // L: 677
|
|
class159.bufferX[var20] = var18; // L: 680
|
|
var38 = var20 + 1;
|
|
class159.bufferY[var20] = var37; // L: 681
|
|
|
|
for (var21 = var22 = class159.directions[var18 - var16][var37 - var17]; var18 != var5 || var37 != var6; var21 = class159.directions[var18 - var16][var37 - var17]) { // L: 682 683 693
|
|
if (var21 != var22) { // L: 684
|
|
var22 = var21; // L: 685
|
|
class159.bufferX[var38] = var18; // L: 686
|
|
class159.bufferY[var38++] = var37; // L: 687
|
|
}
|
|
|
|
if ((var21 & 2) != 0) { // L: 689
|
|
++var18;
|
|
} else if ((var21 & 8) != 0) { // L: 690
|
|
--var18;
|
|
}
|
|
|
|
if ((var21 & 1) != 0) { // L: 691
|
|
++var37;
|
|
} else if ((var21 & 4) != 0) { // L: 692
|
|
--var37;
|
|
}
|
|
}
|
|
|
|
var40 = 0; // L: 695
|
|
|
|
while (var38-- > 0) { // L: 696
|
|
var13[var40] = class159.bufferX[var38]; // L: 697
|
|
var14[var40++] = class159.bufferY[var38]; // L: 698
|
|
if (var40 >= var13.length) { // L: 699
|
|
break;
|
|
}
|
|
}
|
|
|
|
var8 = var40; // L: 701
|
|
}
|
|
}
|
|
|
|
var15 = var8; // L: 703
|
|
if (var8 < 1) { // L: 704
|
|
break;
|
|
}
|
|
|
|
var16 = 0; // L: 705
|
|
|
|
while (true) {
|
|
if (var16 >= var15 - 1) {
|
|
break label853;
|
|
}
|
|
|
|
var4.method2163(Client.field828[var16], Client.field896[var16], (byte)2);
|
|
++var16;
|
|
}
|
|
}
|
|
|
|
for (var16 = 0; var16 < 128; ++var16) { // L: 261
|
|
class159.directions[var15][var16] = 0; // L: 262
|
|
class159.distances[var15][var16] = 99999999; // L: 263
|
|
}
|
|
|
|
++var15; // L: 260
|
|
}
|
|
}
|
|
}
|
|
|
|
this.method2163(var1, var2, var3); // L: 708
|
|
} else {
|
|
this.resetPath(var1, var2);
|
|
}
|
|
} else {
|
|
this.resetPath(var1, var2);
|
|
}
|
|
|
|
} // L: 710
|
|
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(III)V",
|
|
garbageValue = "-381441568"
|
|
)
|
|
@Export("resetPath")
|
|
void resetPath(int var1, int var2) {
|
|
super.pathLength = 0; // L: 713
|
|
super.field1215 = 0; // L: 714
|
|
super.field1250 = 0; // L: 715
|
|
super.pathX[0] = var1; // L: 716
|
|
super.pathY[0] = var2; // L: 717
|
|
int var3 = this.transformedSize(); // L: 718
|
|
super.x = var3 * 64 + super.pathX[0] * 128; // L: 719
|
|
super.y = var3 * 64 + super.pathY[0] * 128; // L: 720
|
|
} // L: 721
|
|
|
|
@ObfuscatedName("e")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(IIBI)V",
|
|
garbageValue = "364759226"
|
|
)
|
|
final void method2163(int var1, int var2, byte var3) {
|
|
if (super.pathLength < 9) { // L: 724
|
|
++super.pathLength;
|
|
}
|
|
|
|
for (int var4 = super.pathLength; var4 > 0; --var4) { // L: 725
|
|
super.pathX[var4] = super.pathX[var4 - 1]; // L: 726
|
|
super.pathY[var4] = super.pathY[var4 - 1]; // L: 727
|
|
super.pathTraversed[var4] = super.pathTraversed[var4 - 1]; // L: 728
|
|
}
|
|
|
|
super.pathX[0] = var1; // L: 730
|
|
super.pathY[0] = var2; // L: 731
|
|
super.pathTraversed[0] = var3; // L: 732
|
|
} // L: 733
|
|
|
|
@ObfuscatedName("d")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "-1701330496"
|
|
)
|
|
@Export("isVisible")
|
|
final boolean isVisible() {
|
|
return this.appearance != null; // L: 736
|
|
}
|
|
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(II)Lfb;",
|
|
garbageValue = "-595055331"
|
|
)
|
|
@Export("SequenceDefinition_get")
|
|
public static SequenceDefinition SequenceDefinition_get(int var0) {
|
|
SequenceDefinition var1 = (SequenceDefinition)SequenceDefinition.SequenceDefinition_cached.get((long)var0); // L: 35
|
|
if (var1 != null) { // L: 36
|
|
return var1;
|
|
} else {
|
|
byte[] var2 = SequenceDefinition.SequenceDefinition_archive.takeFile(12, var0); // L: 37
|
|
var1 = new SequenceDefinition(); // L: 38
|
|
if (var2 != null) { // L: 39
|
|
var1.decode(new Buffer(var2));
|
|
}
|
|
|
|
var1.postDecode(); // L: 40
|
|
SequenceDefinition.SequenceDefinition_cached.put(var1, (long)var0); // L: 41
|
|
return var1; // L: 42
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("aj")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(ILci;ZI)I",
|
|
garbageValue = "1209787772"
|
|
)
|
|
static int method2179(int var0, Script var1, boolean var2) {
|
|
int var3;
|
|
int var4;
|
|
if (var0 == ScriptOpcodes.ADD) { // L: 2751
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2752
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2753
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2754
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var4 + var3; // L: 2755
|
|
return 1; // L: 2756
|
|
} else if (var0 == ScriptOpcodes.SUB) { // L: 2758
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2759
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2760
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2761
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 - var4; // L: 2762
|
|
return 1; // L: 2763
|
|
} else if (var0 == ScriptOpcodes.MULTIPLY) { // L: 2765
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2766
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2767
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2768
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var4 * var3; // L: 2769
|
|
return 1; // L: 2770
|
|
} else if (var0 == ScriptOpcodes.DIV) { // L: 2772
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2773
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2774
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2775
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 / var4; // L: 2776
|
|
return 1; // L: 2777
|
|
} else if (var0 == ScriptOpcodes.RANDOM) { // L: 2779
|
|
var3 = Interpreter.Interpreter_intStack[--WorldMapCacheName.Interpreter_intStackSize]; // L: 2780
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)var3); // L: 2781
|
|
return 1; // L: 2782
|
|
} else if (var0 == ScriptOpcodes.RANDOMINC) { // L: 2784
|
|
var3 = Interpreter.Interpreter_intStack[--WorldMapCacheName.Interpreter_intStackSize]; // L: 2785
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)(Math.random() * (double)(var3 + 1)); // L: 2786
|
|
return 1; // L: 2787
|
|
} else {
|
|
int var5;
|
|
int var6;
|
|
int var7;
|
|
if (var0 == ScriptOpcodes.INTERPOLATE) { // L: 2789
|
|
WorldMapCacheName.Interpreter_intStackSize -= 5; // L: 2790
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2791
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2792
|
|
var5 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2793
|
|
var6 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 3]; // L: 2794
|
|
var7 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 4]; // L: 2795
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 + (var4 - var3) * (var7 - var5) / (var6 - var5); // L: 2796
|
|
return 1; // L: 2797
|
|
} else if (var0 == ScriptOpcodes.ADDPERCENT) { // L: 2799
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2800
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2801
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2802
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 + var3 * var4 / 100; // L: 2803
|
|
return 1; // L: 2804
|
|
} else if (var0 == ScriptOpcodes.SETBIT) { // L: 2806
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2807
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2808
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2809
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 | 1 << var4; // L: 2810
|
|
return 1; // L: 2811
|
|
} else if (var0 == ScriptOpcodes.CLEARBIT) { // L: 2813
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2814
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2815
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2816
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 & -1 - (1 << var4); // L: 2817
|
|
return 1; // L: 2818
|
|
} else if (var0 == ScriptOpcodes.TESTBIT) { // L: 2820
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2821
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2822
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2823
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (var3 & 1 << var4) != 0 ? 1 : 0; // L: 2824
|
|
return 1; // L: 2825
|
|
} else if (var0 == ScriptOpcodes.MOD) { // L: 2827
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2828
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2829
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2830
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 % var4; // L: 2831
|
|
return 1; // L: 2832
|
|
} else if (var0 == ScriptOpcodes.POW) { // L: 2834
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2835
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2836
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2837
|
|
if (var3 == 0) { // L: 2838
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = 0;
|
|
} else {
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, (double)var4); // L: 2839
|
|
}
|
|
|
|
return 1; // L: 2840
|
|
} else if (var0 == ScriptOpcodes.INVPOW) { // L: 2842
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2843
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2844
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2845
|
|
if (var3 == 0) { // L: 2846
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = 0; // L: 2847
|
|
return 1; // L: 2848
|
|
} else {
|
|
switch(var4) { // L: 2850
|
|
case 0:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = Integer.MAX_VALUE; // L: 2858
|
|
break; // L: 2859
|
|
case 1:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3; // L: 2878
|
|
break;
|
|
case 2:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)Math.sqrt((double)var3); // L: 2863
|
|
break; // L: 2864
|
|
case 3:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)Math.cbrt((double)var3); // L: 2853
|
|
break;
|
|
case 4:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)Math.sqrt(Math.sqrt((double)var3)); // L: 2873
|
|
break; // L: 2874
|
|
default:
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)Math.pow((double)var3, 1.0D / (double)var4); // L: 2868
|
|
}
|
|
|
|
return 1; // L: 2882
|
|
}
|
|
} else if (var0 == ScriptOpcodes.AND) { // L: 2884
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2885
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2886
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2887
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 & var4; // L: 2888
|
|
return 1; // L: 2889
|
|
} else if (var0 == ScriptOpcodes.OR) { // L: 2891
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2892
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2893
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2894
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 | var4; // L: 2895
|
|
return 1; // L: 2896
|
|
} else if (var0 == ScriptOpcodes.SCALE) { // L: 2898
|
|
WorldMapCacheName.Interpreter_intStackSize -= 3; // L: 2899
|
|
long var9 = (long)Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2900
|
|
long var11 = (long)Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2901
|
|
long var13 = (long)Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2902
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = (int)(var13 * var9 / var11); // L: 2903
|
|
return 1; // L: 2904
|
|
} else if (var0 == 4025) { // L: 2906
|
|
var3 = ItemContainer.method2104(Interpreter.Interpreter_intStack[--WorldMapCacheName.Interpreter_intStackSize]); // L: 2907
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3; // L: 2908
|
|
return 1; // L: 2909
|
|
} else if (var0 == 4026) { // L: 2911
|
|
WorldMapCacheName.Interpreter_intStackSize -= 2; // L: 2912
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2913
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2914
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 ^ 1 << var4; // L: 2915
|
|
return 1; // L: 2916
|
|
} else if (var0 == 4027) { // L: 2918
|
|
WorldMapCacheName.Interpreter_intStackSize -= 3; // L: 2919
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2920
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2921
|
|
var5 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2922
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = WorldMapElement.method2628(var3, var4, var5); // L: 2923
|
|
return 1; // L: 2924
|
|
} else if (var0 == 4028) { // L: 2926
|
|
WorldMapCacheName.Interpreter_intStackSize -= 3; // L: 2927
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2928
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2929
|
|
var5 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2930
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = GrandExchangeEvents.method4968(var3, var4, var5); // L: 2931
|
|
return 1; // L: 2932
|
|
} else if (var0 == 4029) { // L: 2934
|
|
WorldMapCacheName.Interpreter_intStackSize -= 3; // L: 2935
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2936
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2937
|
|
var5 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2938
|
|
var6 = 31 - var5; // L: 2939
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 << var6 >>> var4 + var6; // L: 2940
|
|
return 1; // L: 2941
|
|
} else if (var0 == 4030) { // L: 2943
|
|
WorldMapCacheName.Interpreter_intStackSize -= 4; // L: 2944
|
|
var3 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize]; // L: 2945
|
|
var4 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 1]; // L: 2946
|
|
var5 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 2]; // L: 2947
|
|
var6 = Interpreter.Interpreter_intStack[WorldMapCacheName.Interpreter_intStackSize + 3]; // L: 2948
|
|
var3 = GrandExchangeEvents.method4968(var3, var5, var6); // L: 2949
|
|
var7 = WorldMapLabel.method3582(var6 - var5 + 1); // L: 2950
|
|
if (var4 > var7) { // L: 2951
|
|
var4 = var7;
|
|
}
|
|
|
|
Interpreter.Interpreter_intStack[++WorldMapCacheName.Interpreter_intStackSize - 1] = var3 | var4 << var5; // L: 2952
|
|
return 1; // L: 2953
|
|
} else {
|
|
return 2; // L: 2955
|
|
}
|
|
}
|
|
}
|
|
}
|