mirror of
https://gitlab.com/2009scape/rt4-client.git
synced 2025-12-12 01:21:23 -07:00
Refactored PathFinder class
This commit is contained in:
parent
ff0e890dcd
commit
36b0d99c42
21 changed files with 842 additions and 843 deletions
|
|
@ -171,7 +171,7 @@ public class Cheat {
|
|||
for (local18 = 0; local18 < 4; local18++) {
|
||||
for (local38 = 1; local38 < 103; local38++) {
|
||||
for (local117 = 1; local117 < 103; local117++) {
|
||||
PathFinder.collisionMaps[local18].anIntArrayArray30[local38][local117] = 0;
|
||||
PathFinder.collisionMaps[local18].flags[local38][local117] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -87,8 +87,8 @@ public class ClientProt {
|
|||
local13 = 25;
|
||||
}
|
||||
arg0--;
|
||||
@Pc(23) int local23 = Static259.anIntArray514[arg0];
|
||||
@Pc(27) int local27 = Static84.anIntArray209[arg0];
|
||||
@Pc(23) int local23 = PathFinder.queueX[arg0];
|
||||
@Pc(27) int local27 = PathFinder.queueZ[arg0];
|
||||
if (arg1 == 0) {
|
||||
Protocol.outboundBuffer.p1isaac(215);
|
||||
Protocol.outboundBuffer.p1(local13 + local13 + 3);
|
||||
|
|
@ -104,12 +104,12 @@ public class ClientProt {
|
|||
Protocol.outboundBuffer.p1a(Keyboard.pressedKeys[Keyboard.KEY_CTRL] ? 1 : 0);
|
||||
Protocol.outboundBuffer.p2(Static225.originX + local23);
|
||||
Protocol.outboundBuffer.p2add(Static142.originZ + local27);
|
||||
Static84.anInt2255 = Static84.anIntArray209[0];
|
||||
Static115.mapFlagX = Static259.anIntArray514[0];
|
||||
Static84.anInt2255 = PathFinder.queueZ[0];
|
||||
Static115.mapFlagX = PathFinder.queueX[0];
|
||||
for (@Pc(126) int local126 = 1; local126 < local13; local126++) {
|
||||
arg0--;
|
||||
Protocol.outboundBuffer.p1a(Static259.anIntArray514[arg0] - local23);
|
||||
Protocol.outboundBuffer.p1sub(Static84.anIntArray209[arg0] - local27);
|
||||
Protocol.outboundBuffer.p1a(PathFinder.queueX[arg0] - local23);
|
||||
Protocol.outboundBuffer.p1sub(PathFinder.queueZ[arg0] - local27);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -135,7 +135,7 @@ public class ClientProt {
|
|||
@Pc(28) Player local28 = PlayerList.players[PlayerList.ids[local15]];
|
||||
if (local28 != null && local28.username != null && local28.username.equalsIgnoreCase(local7)) {
|
||||
local13 = true;
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local28.movementQueueX[0], 1, 0, 2, local28.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local28.movementQueueX[0], 1, 0, 2, local28.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
if (arg0 == 1) {
|
||||
Protocol.outboundBuffer.p1isaac(68);
|
||||
Protocol.outboundBuffer.p2leadd(PlayerList.ids[local15]);
|
||||
|
|
@ -177,7 +177,7 @@ public class ClientProt {
|
|||
if (local23 == 31) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.type = 2;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -187,7 +187,7 @@ public class ClientProt {
|
|||
}
|
||||
}
|
||||
if (local23 == 46) {
|
||||
Static233.method4003(local31, local19, local15);
|
||||
PathFinder.findPathToLoc(local31, local19, local15);
|
||||
Protocol.outboundBuffer.p1isaac(247);
|
||||
Protocol.outboundBuffer.p2le(Static142.originZ + local19);
|
||||
Protocol.outboundBuffer.p2leadd(local15 + Static225.originX);
|
||||
|
|
@ -209,7 +209,7 @@ public class ClientProt {
|
|||
if (local23 == 19) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.type = 2;
|
||||
Cross.milliseconds = 0;
|
||||
|
|
@ -221,7 +221,7 @@ public class ClientProt {
|
|||
if (local23 == 17) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
|
|
@ -233,7 +233,7 @@ public class ClientProt {
|
|||
if (local23 == 44) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.type = 2;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -252,7 +252,7 @@ public class ClientProt {
|
|||
Static250.anInt5444 = local15;
|
||||
}
|
||||
if (local23 == 42) {
|
||||
Static233.method4003(local31, local19, local15);
|
||||
PathFinder.findPathToLoc(local31, local19, local15);
|
||||
Protocol.outboundBuffer.p1isaac(254);
|
||||
Protocol.outboundBuffer.p2le(local15 + Static225.originX);
|
||||
Protocol.outboundBuffer.p2add((int) (local31 >>> 32) & Integer.MAX_VALUE);
|
||||
|
|
@ -264,7 +264,7 @@ public class ClientProt {
|
|||
if (local23 == 45) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.type = 2;
|
||||
Cross.milliseconds = 0;
|
||||
|
|
@ -278,11 +278,11 @@ public class ClientProt {
|
|||
@Pc(560) boolean local560;
|
||||
if (local23 == 18) {
|
||||
if (client.game == 1) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
}
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -295,7 +295,7 @@ public class ClientProt {
|
|||
Protocol.outboundBuffer.p2leadd(local19 + Static142.originZ);
|
||||
}
|
||||
if (local23 == 1001) {
|
||||
Static233.method4003(local31, local19, local15);
|
||||
PathFinder.findPathToLoc(local31, local19, local15);
|
||||
Protocol.outboundBuffer.p1isaac(170);
|
||||
Protocol.outboundBuffer.p2leadd(Integer.MAX_VALUE & (int) (local31 >>> 32));
|
||||
Protocol.outboundBuffer.p2leadd(local15 + Static225.originX);
|
||||
|
|
@ -328,7 +328,7 @@ public class ClientProt {
|
|||
} else if (local36 == 1) {
|
||||
if (LoginManager.staffModLevel > 0 && Keyboard.pressedKeys[Keyboard.KEY_CTRL] && Keyboard.pressedKeys[Keyboard.KEY_SHIFT]) {
|
||||
Cheat.teleport(Static225.originX + local15, Static142.originZ + local19, Player.level);
|
||||
} else if (Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, true, 0, local15, 0, 0, 1, local19, PlayerList.self.movementQueueX[0])) {
|
||||
} else if (PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, true, 0, local15, 0, 0, 1, local19, PlayerList.self.movementQueueX[0])) {
|
||||
Protocol.outboundBuffer.p1(Static1.anInt5);
|
||||
Protocol.outboundBuffer.p1(Static107.anInt2878);
|
||||
Protocol.outboundBuffer.p2((int)Camera.yawTarget);
|
||||
|
|
@ -338,7 +338,7 @@ public class ClientProt {
|
|||
Protocol.outboundBuffer.p1(89);
|
||||
Protocol.outboundBuffer.p2(PlayerList.self.xFine);
|
||||
Protocol.outboundBuffer.p2(PlayerList.self.zFine);
|
||||
Protocol.outboundBuffer.p1(Static221.anInt4364);
|
||||
Protocol.outboundBuffer.p1(PathFinder.anInt4364);
|
||||
Protocol.outboundBuffer.p1(63);
|
||||
}
|
||||
}
|
||||
|
|
@ -383,7 +383,7 @@ public class ClientProt {
|
|||
if (local23 == 10) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.type = 2;
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -398,7 +398,7 @@ public class ClientProt {
|
|||
InterfaceList.redraw(Static39.aClass13_10);
|
||||
}
|
||||
if (local23 == 49) {
|
||||
Static233.method4003(local31, local19, local15);
|
||||
PathFinder.findPathToLoc(local31, local19, local15);
|
||||
Protocol.outboundBuffer.p1isaac(84);
|
||||
Protocol.outboundBuffer.p2leadd(Integer.MAX_VALUE & (int) (local31 >>> 32));
|
||||
Protocol.outboundBuffer.p2leadd(Static142.originZ + local19);
|
||||
|
|
@ -413,7 +413,7 @@ public class ClientProt {
|
|||
Static257.aClass13_7 = InterfaceList.getComponent(local19);
|
||||
Static250.anInt5444 = local15;
|
||||
}
|
||||
if (local23 == 14 && Static233.method4003(local31, local19, local15)) {
|
||||
if (local23 == 14 && PathFinder.findPathToLoc(local31, local19, local15)) {
|
||||
Protocol.outboundBuffer.p1isaac(134);
|
||||
Protocol.outboundBuffer.p2add(Static225.originX + local15);
|
||||
Protocol.outboundBuffer.p2(Static274.anInt4997);
|
||||
|
|
@ -425,7 +425,7 @@ public class ClientProt {
|
|||
if (local23 == 37) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -448,11 +448,11 @@ public class ClientProt {
|
|||
}
|
||||
if (local23 == 21) {
|
||||
if (client.game == 1) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
}
|
||||
Cross.type = 2;
|
||||
|
|
@ -467,7 +467,7 @@ public class ClientProt {
|
|||
if (local23 == 4) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.type = 2;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -498,7 +498,7 @@ public class ClientProt {
|
|||
if (local23 == 29) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
|
|
@ -519,7 +519,7 @@ public class ClientProt {
|
|||
if (local23 == 15) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -532,11 +532,11 @@ public class ClientProt {
|
|||
}
|
||||
if (local23 == 34) {
|
||||
if (client.game == 1) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
}
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -560,7 +560,7 @@ public class ClientProt {
|
|||
if (local23 == 2) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.type = 2;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -585,7 +585,7 @@ public class ClientProt {
|
|||
if (local23 == 26) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.type = 2;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -608,9 +608,9 @@ public class ClientProt {
|
|||
}
|
||||
}
|
||||
if (local23 == 33) {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.milliseconds = 0;
|
||||
|
|
@ -658,7 +658,7 @@ public class ClientProt {
|
|||
if (local23 == 1) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.milliseconds = 0;
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.type = 2;
|
||||
|
|
@ -681,11 +681,11 @@ public class ClientProt {
|
|||
}
|
||||
if (local23 == 24) {
|
||||
if (client.game == 1) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
}
|
||||
Cross.type = 2;
|
||||
|
|
@ -697,7 +697,7 @@ public class ClientProt {
|
|||
Protocol.outboundBuffer.p2leadd(local36);
|
||||
Protocol.outboundBuffer.p2le(Static142.originZ + local19);
|
||||
}
|
||||
if (local23 == 38 && Static233.method4003(local31, local19, local15)) {
|
||||
if (local23 == 38 && PathFinder.findPathToLoc(local31, local19, local15)) {
|
||||
Protocol.outboundBuffer.p1isaac(233);
|
||||
Protocol.outboundBuffer.p2leadd(local19 + Static142.originZ);
|
||||
Protocol.outboundBuffer.p2add(Static225.originX + local15);
|
||||
|
|
@ -717,7 +717,7 @@ public class ClientProt {
|
|||
if (local23 == 57) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.type = 2;
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -741,7 +741,7 @@ public class ClientProt {
|
|||
return;
|
||||
}
|
||||
if (local23 == 50) {
|
||||
Static233.method4003(local31, local19, local15);
|
||||
PathFinder.findPathToLoc(local31, local19, local15);
|
||||
Protocol.outboundBuffer.p1isaac(194);
|
||||
Protocol.outboundBuffer.p2leadd(local19 + Static142.originZ);
|
||||
Protocol.outboundBuffer.p2le(Static225.originX + local15);
|
||||
|
|
@ -759,7 +759,7 @@ public class ClientProt {
|
|||
if (local23 == 30) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.milliseconds = 0;
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -778,9 +778,9 @@ public class ClientProt {
|
|||
Static250.anInt5444 = local15;
|
||||
}
|
||||
if (local23 == 39) {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.x = Mouse.clickX;
|
||||
|
|
@ -815,7 +815,7 @@ public class ClientProt {
|
|||
if (local23 == 6) {
|
||||
local43 = PlayerList.players[local36];
|
||||
if (local43 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local43.movementQueueX[0], 1, 0, 2, local43.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
|
|
@ -826,11 +826,11 @@ public class ClientProt {
|
|||
}
|
||||
if (local23 == 20) {
|
||||
if (client.game == 1) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
local560 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
local560 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, false, 0, local15, 0, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
if (!local560) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local15, 1, 0, 2, local19, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
}
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
@ -845,7 +845,7 @@ public class ClientProt {
|
|||
if (local23 == 16) {
|
||||
local192 = NpcList.npcs[local36];
|
||||
if (local192 != null) {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 1, false, 0, local192.movementQueueX[0], 1, 0, 2, local192.movementQueueZ[0], PlayerList.self.movementQueueX[0]);
|
||||
Cross.x = Mouse.clickX;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.y = Mouse.clickY;
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ public final class CollisionMap {
|
|||
private final int anInt3899;
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "m", descriptor = "[[I")
|
||||
public final int[][] anIntArrayArray30;
|
||||
public final int[][] flags;
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "<init>", descriptor = "(II)V")
|
||||
public CollisionMap(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
||||
|
|
@ -29,7 +29,7 @@ public final class CollisionMap {
|
|||
this.anInt3907 = 0;
|
||||
this.anInt3912 = 0;
|
||||
this.anInt3899 = arg0;
|
||||
this.anIntArrayArray30 = new int[this.anInt3899][this.anInt3904];
|
||||
this.flags = new int[this.anInt3899][this.anInt3904];
|
||||
this.resetFlags();
|
||||
}
|
||||
|
||||
|
|
@ -295,7 +295,7 @@ public final class CollisionMap {
|
|||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(IIZIIIII)Z")
|
||||
public final boolean method3042(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6) {
|
||||
public final boolean isAtWall(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6) {
|
||||
if (arg5 == 1) {
|
||||
if (arg1 == arg3 && arg2 == arg0) {
|
||||
return true;
|
||||
|
|
@ -313,40 +313,40 @@ public final class CollisionMap {
|
|||
if (local64 == local54 - 1 && local49 == local59) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0120) == 0) {
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.flags[local64][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local59 - 1 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0102) == 0) {
|
||||
if (local54 == local64 && local59 - 1 == local49 && (this.flags[local64][local49] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 1) {
|
||||
if (local54 == local64 && local49 == local59 + 1) {
|
||||
return true;
|
||||
}
|
||||
if (local54 - 1 == local64 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0108) == 0) {
|
||||
if (local54 - 1 == local64 && local59 == local49 && (this.flags[local64][local49] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local49 == local59 && (this.anIntArrayArray30[local64][local49] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local49 == local59 && (this.flags[local64][local49] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 2) {
|
||||
if (local54 + 1 == local64 && local49 == local59) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local49 == local59 + 1 && (this.anIntArrayArray30[local64][local49] & 0x12C0120) == 0) {
|
||||
if (local54 == local64 && local49 == local59 + 1 && (this.flags[local64][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local59 - 1 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0102) == 0) {
|
||||
if (local54 == local64 && local59 - 1 == local49 && (this.flags[local64][local49] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 3) {
|
||||
if (local64 == local54 && local59 - 1 == local49) {
|
||||
return true;
|
||||
}
|
||||
if (local54 - 1 == local64 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0108) == 0) {
|
||||
if (local54 - 1 == local64 && local59 == local49 && (this.flags[local64][local49] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 + 1 == local64 && local49 == local59 && (this.anIntArrayArray30[local64][local49] & 0x12C0180) == 0) {
|
||||
if (local54 + 1 == local64 && local49 == local59 && (this.flags[local64][local49] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -359,14 +359,14 @@ public final class CollisionMap {
|
|||
if (local64 == local54 && local49 == local59 + 1) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local49 == local59 && (this.anIntArrayArray30[local64][local49] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local49 == local59 && (this.flags[local64][local49] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local49 == local59 - 1 && (this.anIntArrayArray30[local64][local49] & 0x12C0102) == 0) {
|
||||
if (local54 == local64 && local49 == local59 - 1 && (this.flags[local64][local49] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 1) {
|
||||
if (local64 == local54 - 1 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0108) == 0) {
|
||||
if (local64 == local54 - 1 && local59 == local49 && (this.flags[local64][local49] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local59 + 1 == local49) {
|
||||
|
|
@ -375,14 +375,14 @@ public final class CollisionMap {
|
|||
if (local64 == local54 + 1 && local59 == local49) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local49 == local59 - 1 && (this.anIntArrayArray30[local64][local49] & 0x12C0102) == 0) {
|
||||
if (local54 == local64 && local49 == local59 - 1 && (this.flags[local64][local49] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 2) {
|
||||
if (local64 == local54 - 1 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0108) == 0) {
|
||||
if (local64 == local54 - 1 && local59 == local49 && (this.flags[local64][local49] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 == local64 && local49 == local59 + 1 && (this.anIntArrayArray30[local64][local49] & 0x12C0120) == 0) {
|
||||
if (local54 == local64 && local49 == local59 + 1 && (this.flags[local64][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 + 1 == local64 && local59 == local49) {
|
||||
|
|
@ -395,10 +395,10 @@ public final class CollisionMap {
|
|||
if (local64 == local54 - 1 && local59 == local49) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0120) == 0) {
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.flags[local64][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local59 == local49 && (this.flags[local64][local49] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 && local49 == local59 - 1) {
|
||||
|
|
@ -407,16 +407,16 @@ public final class CollisionMap {
|
|||
}
|
||||
}
|
||||
if (arg4 == 9) {
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.anIntArrayArray30[local64][local49] & 0x20) == 0) {
|
||||
if (local64 == local54 && local59 + 1 == local49 && (this.flags[local64][local49] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 && local49 == local59 - 1 && (this.anIntArrayArray30[local64][local49] & 0x2) == 0) {
|
||||
if (local64 == local54 && local49 == local59 - 1 && (this.flags[local64][local49] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 - 1 && local49 == local59 && (this.anIntArrayArray30[local64][local49] & 0x8) == 0) {
|
||||
if (local64 == local54 - 1 && local49 == local59 && (this.flags[local64][local49] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 + 1 == local64 && local59 == local49 && (this.anIntArrayArray30[local64][local49] & 0x80) == 0) {
|
||||
if (local54 + 1 == local64 && local59 == local49 && (this.flags[local64][local49] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -428,40 +428,40 @@ public final class CollisionMap {
|
|||
if (local64 == local54 - arg5 && local49 <= local59 && local59 <= local792) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local785 >= local54 && local59 + 1 == local49 && (this.anIntArrayArray30[local54][local49] & 0x12C0120) == 0) {
|
||||
if (local64 <= local54 && local785 >= local54 && local59 + 1 == local49 && (this.flags[local54][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local785 >= local54 && local59 - arg5 == local49 && (this.anIntArrayArray30[local54][local792] & 0x12C0102) == 0) {
|
||||
if (local64 <= local54 && local785 >= local54 && local59 - arg5 == local49 && (this.flags[local54][local792] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 1) {
|
||||
if (local54 >= local64 && local54 <= local785 && local59 + 1 == local49) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 - arg5 && local49 <= local59 && local792 >= local59 && (this.anIntArrayArray30[local785][local59] & 0x12C0108) == 0) {
|
||||
if (local64 == local54 - arg5 && local49 <= local59 && local792 >= local59 && (this.flags[local785][local59] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local49 <= local59 && local792 >= local59 && (this.anIntArrayArray30[local64][local59] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local49 <= local59 && local792 >= local59 && (this.flags[local64][local59] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 2) {
|
||||
if (local54 + 1 == local64 && local49 <= local59 && local59 <= local792) {
|
||||
return true;
|
||||
}
|
||||
if (local54 >= local64 && local785 >= local54 && local49 == local59 + 1 && (this.anIntArrayArray30[local54][local49] & 0x12C0120) == 0) {
|
||||
if (local54 >= local64 && local785 >= local54 && local49 == local59 + 1 && (this.flags[local54][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 >= local64 && local785 >= local54 && local59 - arg5 == local49 && (this.anIntArrayArray30[local54][local792] & 0x12C0102) == 0) {
|
||||
if (local54 >= local64 && local785 >= local54 && local59 - arg5 == local49 && (this.flags[local54][local792] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 3) {
|
||||
if (local64 <= local54 && local785 >= local54 && local59 - arg5 == local49) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 - arg5 && local59 >= local49 && local792 >= local59 && (this.anIntArrayArray30[local785][local59] & 0x12C0108) == 0) {
|
||||
if (local64 == local54 - arg5 && local59 >= local49 && local792 >= local59 && (this.flags[local785][local59] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 + 1 == local64 && local49 <= local59 && local59 <= local792 && (this.anIntArrayArray30[local64][local59] & 0x12C0180) == 0) {
|
||||
if (local54 + 1 == local64 && local49 <= local59 && local59 <= local792 && (this.flags[local64][local59] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -474,14 +474,14 @@ public final class CollisionMap {
|
|||
if (local64 <= local54 && local785 >= local54 && local49 == local59 + 1) {
|
||||
return true;
|
||||
}
|
||||
if (local54 + 1 == local64 && local59 >= local49 && local59 <= local792 && (this.anIntArrayArray30[local64][local59] & 0x12C0180) == 0) {
|
||||
if (local54 + 1 == local64 && local59 >= local49 && local59 <= local792 && (this.flags[local64][local59] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 >= local64 && local785 >= local54 && local59 - arg5 == local49 && (this.anIntArrayArray30[local54][local792] & 0x12C0102) == 0) {
|
||||
if (local54 >= local64 && local785 >= local54 && local59 - arg5 == local49 && (this.flags[local54][local792] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 1) {
|
||||
if (local64 == local54 - arg5 && local59 >= local49 && local59 <= local792 && (this.anIntArrayArray30[local785][local59] & 0x12C0108) == 0) {
|
||||
if (local64 == local54 - arg5 && local59 >= local49 && local59 <= local792 && (this.flags[local785][local59] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local785 >= local54 && local49 == local59 + 1) {
|
||||
|
|
@ -490,14 +490,14 @@ public final class CollisionMap {
|
|||
if (local54 + 1 == local64 && local59 >= local49 && local59 <= local792) {
|
||||
return true;
|
||||
}
|
||||
if (local54 >= local64 && local54 <= local785 && local49 == local59 - arg5 && (this.anIntArrayArray30[local54][local792] & 0x12C0102) == 0) {
|
||||
if (local54 >= local64 && local54 <= local785 && local49 == local59 - arg5 && (this.flags[local54][local792] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg6 == 2) {
|
||||
if (local54 - arg5 == local64 && local49 <= local59 && local792 >= local59 && (this.anIntArrayArray30[local785][local59] & 0x12C0108) == 0) {
|
||||
if (local54 - arg5 == local64 && local49 <= local59 && local792 >= local59 && (this.flags[local785][local59] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local54 <= local785 && local49 == local59 + 1 && (this.anIntArrayArray30[local54][local49] & 0x12C0120) == 0) {
|
||||
if (local64 <= local54 && local54 <= local785 && local49 == local59 + 1 && (this.flags[local54][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local49 <= local59 && local59 <= local792) {
|
||||
|
|
@ -510,10 +510,10 @@ public final class CollisionMap {
|
|||
if (local54 - arg5 == local64 && local59 >= local49 && local59 <= local792) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local54 <= local785 && local59 + 1 == local49 && (this.anIntArrayArray30[local54][local49] & 0x12C0120) == 0) {
|
||||
if (local64 <= local54 && local54 <= local785 && local59 + 1 == local49 && (this.flags[local54][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local59 >= local49 && local59 <= local792 && (this.anIntArrayArray30[local64][local59] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local59 >= local49 && local59 <= local792 && (this.flags[local64][local59] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 <= local54 && local785 >= local54 && local59 - arg5 == local49) {
|
||||
|
|
@ -522,16 +522,16 @@ public final class CollisionMap {
|
|||
}
|
||||
}
|
||||
if (arg4 == 9) {
|
||||
if (local64 <= local54 && local54 <= local785 && local49 == local59 + 1 && (this.anIntArrayArray30[local54][local49] & 0x12C0120) == 0) {
|
||||
if (local64 <= local54 && local54 <= local785 && local49 == local59 + 1 && (this.flags[local54][local49] & 0x12C0120) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 >= local64 && local54 <= local785 && local49 == local59 - arg5 && (this.anIntArrayArray30[local54][local792] & 0x12C0102) == 0) {
|
||||
if (local54 >= local64 && local54 <= local785 && local49 == local59 - arg5 && (this.flags[local54][local792] & 0x12C0102) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local54 - arg5 == local64 && local59 >= local49 && local59 <= local792 && (this.anIntArrayArray30[local785][local59] & 0x12C0108) == 0) {
|
||||
if (local54 - arg5 == local64 && local59 >= local49 && local59 <= local792 && (this.flags[local785][local59] & 0x12C0108) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local64 == local54 + 1 && local59 >= local49 && local792 >= local59 && (this.anIntArrayArray30[local64][local59] & 0x12C0180) == 0) {
|
||||
if (local64 == local54 + 1 && local59 >= local49 && local792 >= local59 && (this.flags[local64][local59] & 0x12C0180) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -560,11 +560,11 @@ public final class CollisionMap {
|
|||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(IBII)V")
|
||||
private void method3044(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
||||
this.anIntArrayArray30[arg1][arg2] |= arg0;
|
||||
this.flags[arg1][arg2] |= arg0;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(IIIIIIII)Z")
|
||||
public final boolean method3046(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6) {
|
||||
public final boolean isAtWallDecor(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6) {
|
||||
if (arg4 == 1) {
|
||||
if (arg2 == arg6 && arg0 == arg3) {
|
||||
return true;
|
||||
|
|
@ -582,46 +582,46 @@ public final class CollisionMap {
|
|||
arg5 = arg5 + 2 & 0x3;
|
||||
}
|
||||
if (arg5 == 0) {
|
||||
if (local62 == local72 + 1 && local67 == local77 && (this.anIntArrayArray30[local62][local77] & 0x80) == 0) {
|
||||
if (local62 == local72 + 1 && local67 == local77 && (this.flags[local62][local77] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 == local62 && local77 == local67 - 1 && (this.anIntArrayArray30[local62][local77] & 0x2) == 0) {
|
||||
if (local72 == local62 && local77 == local67 - 1 && (this.flags[local62][local77] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 1) {
|
||||
if (local62 == local72 - 1 && local67 == local77 && (this.anIntArrayArray30[local62][local77] & 0x8) == 0) {
|
||||
if (local62 == local72 - 1 && local67 == local77 && (this.flags[local62][local77] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 == local62 && local77 == local67 - 1 && (this.anIntArrayArray30[local62][local77] & 0x2) == 0) {
|
||||
if (local72 == local62 && local77 == local67 - 1 && (this.flags[local62][local77] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 2) {
|
||||
if (local62 == local72 - 1 && local77 == local67 && (this.anIntArrayArray30[local62][local77] & 0x8) == 0) {
|
||||
if (local62 == local72 - 1 && local77 == local67 && (this.flags[local62][local77] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 == local62 && local67 + 1 == local77 && (this.anIntArrayArray30[local62][local77] & 0x20) == 0) {
|
||||
if (local72 == local62 && local67 + 1 == local77 && (this.flags[local62][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 3) {
|
||||
if (local62 == local72 + 1 && local77 == local67 && (this.anIntArrayArray30[local62][local77] & 0x80) == 0) {
|
||||
if (local62 == local72 + 1 && local77 == local67 && (this.flags[local62][local77] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 == local62 && local77 == local67 + 1 && (this.anIntArrayArray30[local62][local77] & 0x20) == 0) {
|
||||
if (local72 == local62 && local77 == local67 + 1 && (this.flags[local62][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (arg1 == 8) {
|
||||
if (local62 == local72 && local67 + 1 == local77 && (this.anIntArrayArray30[local62][local77] & 0x20) == 0) {
|
||||
if (local62 == local72 && local67 + 1 == local77 && (this.flags[local62][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local62 == local72 && local67 - 1 == local77 && (this.anIntArrayArray30[local62][local77] & 0x2) == 0) {
|
||||
if (local62 == local72 && local67 - 1 == local77 && (this.flags[local62][local77] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 - 1 == local62 && local77 == local67 && (this.anIntArrayArray30[local62][local77] & 0x8) == 0) {
|
||||
if (local72 - 1 == local62 && local77 == local67 && (this.flags[local62][local77] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local62 == local72 + 1 && local67 == local77 && (this.anIntArrayArray30[local62][local77] & 0x80) == 0) {
|
||||
if (local62 == local72 + 1 && local67 == local77 && (this.flags[local62][local77] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -633,46 +633,46 @@ public final class CollisionMap {
|
|||
arg5 = arg5 + 2 & 0x3;
|
||||
}
|
||||
if (arg5 == 0) {
|
||||
if (local72 + 1 == local62 && local77 <= local67 && local67 <= local420 && (this.anIntArrayArray30[local62][local67] & 0x80) == 0) {
|
||||
if (local72 + 1 == local62 && local77 <= local67 && local67 <= local420 && (this.flags[local62][local67] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 >= local62 && local414 >= local72 && local67 - arg4 == local77 && (this.anIntArrayArray30[local72][local420] & 0x2) == 0) {
|
||||
if (local72 >= local62 && local414 >= local72 && local67 - arg4 == local77 && (this.flags[local72][local420] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 1) {
|
||||
if (local72 - arg4 == local62 && local67 >= local77 && local420 >= local67 && (this.anIntArrayArray30[local414][local67] & 0x8) == 0) {
|
||||
if (local72 - arg4 == local62 && local67 >= local77 && local420 >= local67 && (this.flags[local414][local67] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 >= local62 && local414 >= local72 && local67 - arg4 == local77 && (this.anIntArrayArray30[local72][local420] & 0x2) == 0) {
|
||||
if (local72 >= local62 && local414 >= local72 && local67 - arg4 == local77 && (this.flags[local72][local420] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 2) {
|
||||
if (local62 == local72 - arg4 && local67 >= local77 && local67 <= local420 && (this.anIntArrayArray30[local414][local67] & 0x8) == 0) {
|
||||
if (local62 == local72 - arg4 && local67 >= local77 && local67 <= local420 && (this.flags[local414][local67] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local62 <= local72 && local72 <= local414 && local77 == local67 + 1 && (this.anIntArrayArray30[local72][local77] & 0x20) == 0) {
|
||||
if (local62 <= local72 && local72 <= local414 && local77 == local67 + 1 && (this.flags[local72][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
} else if (arg5 == 3) {
|
||||
if (local72 + 1 == local62 && local77 <= local67 && local67 <= local420 && (this.anIntArrayArray30[local62][local67] & 0x80) == 0) {
|
||||
if (local72 + 1 == local62 && local77 <= local67 && local67 <= local420 && (this.flags[local62][local67] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 >= local62 && local72 <= local414 && local77 == local67 + 1 && (this.anIntArrayArray30[local72][local77] & 0x20) == 0) {
|
||||
if (local72 >= local62 && local72 <= local414 && local77 == local67 + 1 && (this.flags[local72][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (arg1 == 8) {
|
||||
if (local62 <= local72 && local414 >= local72 && local77 == local67 + 1 && (this.anIntArrayArray30[local72][local77] & 0x20) == 0) {
|
||||
if (local62 <= local72 && local414 >= local72 && local77 == local67 + 1 && (this.flags[local72][local77] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local72 >= local62 && local414 >= local72 && local77 == local67 - arg4 && (this.anIntArrayArray30[local72][local420] & 0x2) == 0) {
|
||||
if (local72 >= local62 && local414 >= local72 && local77 == local67 - arg4 && (this.flags[local72][local420] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local62 == local72 - arg4 && local77 <= local67 && local420 >= local67 && (this.anIntArrayArray30[local414][local67] & 0x8) == 0) {
|
||||
if (local62 == local72 - arg4 && local77 <= local67 && local420 >= local67 && (this.flags[local414][local67] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
if (local62 == local72 + 1 && local67 >= local77 && local67 <= local420 && (this.anIntArrayArray30[local62][local67] & 0x80) == 0) {
|
||||
if (local62 == local72 + 1 && local67 >= local77 && local67 <= local420 && (this.flags[local62][local67] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -693,7 +693,7 @@ public final class CollisionMap {
|
|||
local45 = arg5;
|
||||
local52 = local22 >= local9 ? local9 : local22;
|
||||
while (local52 > local45) {
|
||||
if ((this.anIntArrayArray30[local45 - this.anInt3912][local13 - this.anInt3907 - 1] & 0x2) == 0) {
|
||||
if ((this.flags[local45 - this.anInt3912][local13 - this.anInt3907 - 1] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
local45++;
|
||||
|
|
@ -702,7 +702,7 @@ public final class CollisionMap {
|
|||
local45 = arg5;
|
||||
local52 = local9 > local22 ? local22 : local9;
|
||||
while (local52 > local45) {
|
||||
if ((this.anIntArrayArray30[local45 - this.anInt3912][arg6 - this.anInt3907] & 0x20) == 0) {
|
||||
if ((this.flags[local45 - this.anInt3912][arg6 - this.anInt3907] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
local45++;
|
||||
|
|
@ -711,13 +711,13 @@ public final class CollisionMap {
|
|||
} else if (local9 > arg0 && local9 <= local22) {
|
||||
if (arg1 == local13 && (arg3 & 0x4) == 0) {
|
||||
for (local45 = arg0; local45 < local9; local45++) {
|
||||
if ((this.anIntArrayArray30[local45 - this.anInt3912][local13 - this.anInt3907 - 1] & 0x2) == 0) {
|
||||
if ((this.flags[local45 - this.anInt3912][local13 - this.anInt3907 - 1] & 0x2) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} else if (arg6 == local27 && (arg3 & 0x1) == 0) {
|
||||
for (local45 = arg0; local45 < local9; local45++) {
|
||||
if ((this.anIntArrayArray30[local45 - this.anInt3912][arg6 - this.anInt3907] & 0x20) == 0) {
|
||||
if ((this.flags[local45 - this.anInt3912][arg6 - this.anInt3907] & 0x20) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -727,7 +727,7 @@ public final class CollisionMap {
|
|||
local45 = arg6;
|
||||
local52 = local27 >= local13 ? local13 : local27;
|
||||
while (local45 < local52) {
|
||||
if ((this.anIntArrayArray30[local9 - this.anInt3912 - 1][local45 - this.anInt3907] & 0x8) == 0) {
|
||||
if ((this.flags[local9 - this.anInt3912 - 1][local45 - this.anInt3907] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
local45++;
|
||||
|
|
@ -736,7 +736,7 @@ public final class CollisionMap {
|
|||
local45 = arg6;
|
||||
local52 = local27 < local13 ? local27 : local13;
|
||||
while (local45 < local52) {
|
||||
if ((this.anIntArrayArray30[arg5 - this.anInt3912][local45 - this.anInt3907] & 0x80) == 0) {
|
||||
if ((this.flags[arg5 - this.anInt3912][local45 - this.anInt3907] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
local45++;
|
||||
|
|
@ -745,13 +745,13 @@ public final class CollisionMap {
|
|||
} else if (arg1 < local13 && local27 >= local13) {
|
||||
if (local9 == arg0 && (arg3 & 0x8) == 0) {
|
||||
for (local45 = arg1; local45 < local13; local45++) {
|
||||
if ((this.anIntArrayArray30[local9 - this.anInt3912 - 1][local45 - this.anInt3907] & 0x8) == 0) {
|
||||
if ((this.flags[local9 - this.anInt3912 - 1][local45 - this.anInt3907] & 0x8) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} else if (local22 == arg5 && (arg3 & 0x2) == 0) {
|
||||
for (local45 = arg1; local45 < local13; local45++) {
|
||||
if ((this.anIntArrayArray30[arg5 - this.anInt3912][local45 - this.anInt3907] & 0x80) == 0) {
|
||||
if ((this.flags[arg5 - this.anInt3912][local45 - this.anInt3907] & 0x80) == 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -765,9 +765,9 @@ public final class CollisionMap {
|
|||
for (@Pc(3) int local3 = 0; local3 < this.anInt3899; local3++) {
|
||||
for (@Pc(13) int local13 = 0; local13 < this.anInt3904; local13++) {
|
||||
if (local3 == 0 || local13 == 0 || local3 >= this.anInt3899 - 5 || this.anInt3904 - 5 <= local13) {
|
||||
this.anIntArrayArray30[local3][local13] = 16777215;
|
||||
this.flags[local3][local13] = 16777215;
|
||||
} else {
|
||||
this.anIntArrayArray30[local3][local13] = 16777216;
|
||||
this.flags[local3][local13] = 16777216;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -777,11 +777,11 @@ public final class CollisionMap {
|
|||
public final void addRangeableFlag(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
|
||||
@Pc(12) int local12 = arg0 - this.anInt3907;
|
||||
@Pc(17) int local17 = arg1 - this.anInt3912;
|
||||
this.anIntArrayArray30[local17][local12] |= 0x200000;
|
||||
this.flags[local17][local12] |= 0x200000;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(ZIIIIIIII)Z")
|
||||
public final boolean method3052(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7) {
|
||||
public final boolean isInsideOrOutsideRect(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7) {
|
||||
if (arg3 > 1) {
|
||||
return this.method3041(arg3, arg4, arg0, arg7, arg1, arg6, arg3, arg2) ? true : this.method3048(arg0, arg6, arg4, arg5, arg7, arg2, arg1, arg3, arg3);
|
||||
}
|
||||
|
|
@ -789,14 +789,14 @@ public final class CollisionMap {
|
|||
@Pc(47) int local47 = arg6 + arg7 - 1;
|
||||
if (arg0 <= arg2 && local41 >= arg2 && arg6 <= arg1 && arg1 <= local47) {
|
||||
return true;
|
||||
} else if (arg0 - 1 == arg2 && arg1 >= arg6 && arg1 <= local47 && (this.anIntArrayArray30[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x8) == 0 && (arg5 & 0x8) == 0) {
|
||||
} else if (arg0 - 1 == arg2 && arg1 >= arg6 && arg1 <= local47 && (this.flags[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x8) == 0 && (arg5 & 0x8) == 0) {
|
||||
return true;
|
||||
} else if (arg2 == local41 + 1 && arg6 <= arg1 && local47 >= arg1 && (this.anIntArrayArray30[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x80) == 0 && (arg5 & 0x2) == 0) {
|
||||
} else if (arg2 == local41 + 1 && arg6 <= arg1 && local47 >= arg1 && (this.flags[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x80) == 0 && (arg5 & 0x2) == 0) {
|
||||
return true;
|
||||
} else if (arg1 == arg6 - 1 && arg0 <= arg2 && local41 >= arg2 && (this.anIntArrayArray30[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x2) == 0 && (arg5 & 0x4) == 0) {
|
||||
} else if (arg1 == arg6 - 1 && arg0 <= arg2 && local41 >= arg2 && (this.flags[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x2) == 0 && (arg5 & 0x4) == 0) {
|
||||
return true;
|
||||
} else {
|
||||
return arg1 == local47 + 1 && arg2 >= arg0 && local41 >= arg2 && (this.anIntArrayArray30[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x20) == 0 && (arg5 & 0x1) == 0;
|
||||
return arg1 == local47 + 1 && arg2 >= arg0 && local41 >= arg2 && (this.flags[arg2 - this.anInt3912][arg1 - this.anInt3907] & 0x20) == 0 && (arg5 & 0x1) == 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -804,7 +804,7 @@ public final class CollisionMap {
|
|||
public final void method3053(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
|
||||
@Pc(4) int local4 = arg1 - this.anInt3912;
|
||||
@Pc(9) int local9 = arg0 - this.anInt3907;
|
||||
this.anIntArrayArray30[local4][local9] &= 0xFFFBFFFF;
|
||||
this.flags[local4][local9] &= 0xFFFBFFFF;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "b", descriptor = "(IIIII)Z")
|
||||
|
|
@ -838,12 +838,12 @@ public final class CollisionMap {
|
|||
local117 = local77 * 65536 / local96;
|
||||
while (local61 != local22) {
|
||||
if (local22 > local61) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0102) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0102) != 0) {
|
||||
return false;
|
||||
}
|
||||
local61++;
|
||||
} else if (local22 < local61) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0120) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0120) != 0) {
|
||||
return false;
|
||||
}
|
||||
local61--;
|
||||
|
|
@ -852,12 +852,12 @@ public final class CollisionMap {
|
|||
if (local111 >= 65536) {
|
||||
local111 -= 65536;
|
||||
if (local66 < local33) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0108) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0108) != 0) {
|
||||
return false;
|
||||
}
|
||||
local66++;
|
||||
} else if (local66 > local33) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0180) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0180) != 0) {
|
||||
return false;
|
||||
}
|
||||
local66--;
|
||||
|
|
@ -869,12 +869,12 @@ public final class CollisionMap {
|
|||
local111 = 32768;
|
||||
while (local33 != local66) {
|
||||
if (local66 < local33) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0108) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0108) != 0) {
|
||||
return false;
|
||||
}
|
||||
local66++;
|
||||
} else if (local33 < local66) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0180) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0180) != 0) {
|
||||
return false;
|
||||
}
|
||||
local66--;
|
||||
|
|
@ -883,12 +883,12 @@ public final class CollisionMap {
|
|||
if (local111 >= 65536) {
|
||||
local111 -= 65536;
|
||||
if (local61 < local22) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0102) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0102) != 0) {
|
||||
return false;
|
||||
}
|
||||
local61++;
|
||||
} else if (local22 < local61) {
|
||||
if ((this.anIntArrayArray30[local66][local61] & 0x12C0120) != 0) {
|
||||
if ((this.flags[local66][local61] & 0x12C0120) != 0) {
|
||||
return false;
|
||||
}
|
||||
local61--;
|
||||
|
|
@ -896,12 +896,12 @@ public final class CollisionMap {
|
|||
}
|
||||
}
|
||||
}
|
||||
return (this.anIntArrayArray30[local33][local22] & 0x1240100) == 0;
|
||||
return (this.flags[local33][local22] & 0x1240100) == 0;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(BIII)V")
|
||||
private void method3055(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
||||
this.anIntArrayArray30[arg1][arg0] &= ~arg2;
|
||||
this.flags[arg1][arg0] &= ~arg2;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!mj", name = "a", descriptor = "(IIIZIII)V")
|
||||
|
|
@ -933,6 +933,6 @@ public final class CollisionMap {
|
|||
public final void method3057(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
||||
@Pc(4) int local4 = arg1 - this.anInt3907;
|
||||
@Pc(17) int local17 = arg0 - this.anInt3912;
|
||||
this.anIntArrayArray30[local17][local4] |= 0x40000;
|
||||
this.flags[local17][local4] |= 0x40000;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -296,8 +296,11 @@ public final class Component {
|
|||
@OriginalMember(owner = "client!be", name = "Hb", descriptor = "Z")
|
||||
public boolean usingScripts = false;
|
||||
|
||||
@OriginalMember(owner = "client!di", name = "F", descriptor = "Lclient!bf;")
|
||||
public static final ServerActiveProperties DEFAULT_SERVER_ACTIVE_PROPERTIES = new ServerActiveProperties(0, -1);
|
||||
|
||||
@OriginalMember(owner = "client!be", name = "gc", descriptor = "Lclient!bf;")
|
||||
public ServerActiveProperties properties = Static45.aClass3_Sub4_2;
|
||||
public ServerActiveProperties properties = DEFAULT_SERVER_ACTIVE_PROPERTIES;
|
||||
|
||||
@OriginalMember(owner = "client!be", name = "cc", descriptor = "I")
|
||||
public int anInt492 = 0;
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ public class MiniMap {
|
|||
@Pc(237) int local237 = local76;
|
||||
local194 = local37;
|
||||
if (local187 != 22 && local187 != 29 && local187 != 34 && local187 != 36 && local187 != 46 && local187 != 47 && local187 != 48) {
|
||||
@Pc(269) int[][] local269 = PathFinder.collisionMaps[Player.level].anIntArrayArray30;
|
||||
@Pc(269) int[][] local269 = PathFinder.collisionMaps[Player.level].flags;
|
||||
for (@Pc(271) int local271 = 0; local271 < 10; local271++) {
|
||||
@Pc(281) int local281 = (int) (Math.random() * 4.0D);
|
||||
if (local281 == 0 && local194 > 0 && local37 - 3 < local194 && (local269[local194 - 1][local237] & 0x12C0108) == 0) {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,665 @@
|
|||
package rt4;
|
||||
|
||||
import org.openrs2.deob.annotation.OriginalArg;
|
||||
import org.openrs2.deob.annotation.OriginalMember;
|
||||
import org.openrs2.deob.annotation.Pc;
|
||||
|
||||
public class PathFinder {
|
||||
@OriginalMember(owner = "client!li", name = "h", descriptor = "[Lclient!mj;")
|
||||
public static final CollisionMap[] collisionMaps = new CollisionMap[4];
|
||||
@OriginalMember(owner = "client!lf", name = "a", descriptor = "[[I")
|
||||
public static final int[][] parents = new int[104][104];
|
||||
@OriginalMember(owner = "client!nd", name = "q", descriptor = "[[I")
|
||||
public static final int[][] costs = new int[104][104];
|
||||
@OriginalMember(owner = "client!vc", name = "eb", descriptor = "[I")
|
||||
public static final int[] queueX = new int[4096];
|
||||
@OriginalMember(owner = "client!gk", name = "c", descriptor = "[I")
|
||||
public static final int[] queueZ = new int[4096];
|
||||
@OriginalMember(owner = "client!s", name = "d", descriptor = "I")
|
||||
public static int anInt4364 = 0;
|
||||
|
||||
@OriginalMember(owner = "client!hn", name = "a", descriptor = "(IIIZIIIIIIII)Z")
|
||||
public static boolean findPath(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) boolean arg3, @OriginalArg(4) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) int arg10) {
|
||||
if (PlayerList.self.getSize() == 2) {
|
||||
return findPath2(arg6, arg7, arg4, arg0, arg9, arg3, arg2, arg1, arg5, arg8, arg10);
|
||||
} else if (PlayerList.self.getSize() <= 2) {
|
||||
return findPathN(arg5, arg4, arg10, arg9, arg8, arg2, arg1, arg3, arg7, arg0, arg6);
|
||||
} else {
|
||||
return findPath1(arg9, arg6, arg8, arg1, PlayerList.self.getSize(), arg5, arg7, arg4, arg10, arg2, arg3, arg0);
|
||||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!aa", name = "a", descriptor = "(IIIIIZIIIIII)Z")
|
||||
public static boolean findPath2(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) boolean arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int arg7, @OriginalArg(8) int arg8, @OriginalArg(9) int arg9, @OriginalArg(11) int arg10) {
|
||||
@Pc(3) int x;
|
||||
@Pc(8) int z;
|
||||
for (x = 0; x < 104; x++) {
|
||||
for (z = 0; z < 104; z++) {
|
||||
parents[x][z] = 0;
|
||||
costs[x][z] = 99999999;
|
||||
}
|
||||
}
|
||||
parents[arg10][arg3] = 99;
|
||||
costs[arg10][arg3] = 0;
|
||||
z = arg3;
|
||||
x = arg10;
|
||||
@Pc(53) byte local53 = 0;
|
||||
queueX[0] = arg10;
|
||||
@Pc(59) boolean local59 = false;
|
||||
@Pc(61) int local61 = 0;
|
||||
@Pc(64) int queueWriterIndex = local53 + 1;
|
||||
queueZ[0] = arg3;
|
||||
@Pc(71) int[][] flags = collisionMaps[Player.level].flags;
|
||||
@Pc(193) int cost;
|
||||
while (local61 != queueWriterIndex) {
|
||||
x = queueX[local61];
|
||||
z = queueZ[local61];
|
||||
local61 = local61 + 1 & 0xFFF;
|
||||
if (arg8 == x && arg4 == z) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
if (arg1 != 0) {
|
||||
if ((arg1 < 5 || arg1 == 10) && collisionMaps[Player.level].isAtWall(arg4, x, z, arg8, arg1 - 1, 2, arg7)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
if (arg1 < 10 && collisionMaps[Player.level].isAtWallDecor(arg4, arg1 - 1, arg8, z, 2, arg7, x)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg0 != 0 && arg6 != 0 && collisionMaps[Player.level].isInsideOrOutsideRect(arg8, z, x, 2, arg0, arg2, arg4, arg6)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
cost = costs[x][z] + 1;
|
||||
if (x > 0 && parents[x - 1][z] == 0 && (flags[x - 1][z] & 0x12C010E) == 0 && (flags[x - 1][z + 1] & 0x12C0138) == 0) {
|
||||
queueX[queueWriterIndex] = x - 1;
|
||||
queueZ[queueWriterIndex] = z;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
parents[x - 1][z] = 2;
|
||||
costs[x - 1][z] = cost;
|
||||
}
|
||||
if (x < 102 && parents[x + 1][z] == 0 && (flags[x + 2][z] & 0x12C0183) == 0 && (flags[x + 2][z + 1] & 0x12C01E0) == 0) {
|
||||
queueX[queueWriterIndex] = x + 1;
|
||||
queueZ[queueWriterIndex] = z;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
parents[x + 1][z] = 8;
|
||||
costs[x + 1][z] = cost;
|
||||
}
|
||||
if (z > 0 && parents[x][z - 1] == 0 && (flags[x][z - 1] & 0x12C010E) == 0 && (flags[x + 1][z - 1] & 0x12C0183) == 0) {
|
||||
queueX[queueWriterIndex] = x;
|
||||
queueZ[queueWriterIndex] = z - 1;
|
||||
parents[x][z - 1] = 1;
|
||||
costs[x][z - 1] = cost;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
}
|
||||
if (z < 102 && parents[x][z + 1] == 0 && (flags[x][z + 2] & 0x12C0138) == 0 && (flags[x + 1][z + 2] & 0x12C01E0) == 0) {
|
||||
queueX[queueWriterIndex] = x;
|
||||
queueZ[queueWriterIndex] = z + 1;
|
||||
parents[x][z + 1] = 4;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
costs[x][z + 1] = cost;
|
||||
}
|
||||
if (x > 0 && z > 0 && parents[x - 1][z - 1] == 0 && (flags[x - 1][z] & 0x12C0138) == 0 && (flags[x - 1][z - 1] & 0x12C010E) == 0 && (flags[x][z - 1] & 0x12C0183) == 0) {
|
||||
queueX[queueWriterIndex] = x - 1;
|
||||
queueZ[queueWriterIndex] = z - 1;
|
||||
parents[x - 1][z - 1] = 3;
|
||||
costs[x - 1][z - 1] = cost;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
}
|
||||
if (x < 102 && z > 0 && parents[x + 1][z - 1] == 0 && (flags[x + 1][z - 1] & 0x12C010E) == 0 && (flags[x + 2][z - 1] & 0x12C0183) == 0 && (flags[x + 2][z] & 0x12C01E0) == 0) {
|
||||
queueX[queueWriterIndex] = x + 1;
|
||||
queueZ[queueWriterIndex] = z - 1;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
parents[x + 1][z - 1] = 9;
|
||||
costs[x + 1][z - 1] = cost;
|
||||
}
|
||||
if (x > 0 && z < 102 && parents[x - 1][z + 1] == 0 && (flags[x - 1][z + 1] & 0x12C010E) == 0 && (flags[x - 1][z + 2] & 0x12C0138) == 0 && (flags[x][z + 2] & 0x12C01E0) == 0) {
|
||||
queueX[queueWriterIndex] = x - 1;
|
||||
queueZ[queueWriterIndex] = z + 1;
|
||||
parents[x - 1][z + 1] = 6;
|
||||
costs[x - 1][z + 1] = cost;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
}
|
||||
if (x < 102 && z < 102 && parents[x + 1][z + 1] == 0 && (flags[x + 1][z + 2] & 0x12C0138) == 0 && (flags[x + 2][z + 2] & 0x12C01E0) == 0 && (flags[x + 2][z + 1] & 0x12C0183) == 0) {
|
||||
queueX[queueWriterIndex] = x + 1;
|
||||
queueZ[queueWriterIndex] = z + 1;
|
||||
queueWriterIndex = queueWriterIndex + 1 & 0xFFF;
|
||||
parents[x + 1][z + 1] = 12;
|
||||
costs[x + 1][z + 1] = cost;
|
||||
}
|
||||
}
|
||||
anInt4364 = 0;
|
||||
@Pc(921) int local921;
|
||||
if (!local59) {
|
||||
if (!arg5) {
|
||||
return false;
|
||||
}
|
||||
cost = 1000;
|
||||
local921 = 100;
|
||||
for (@Pc(928) int local928 = arg8 - 10; local928 <= arg8 + 10; local928++) {
|
||||
for (@Pc(942) int local942 = arg4 - 10; local942 <= arg4 + 10; local942++) {
|
||||
if (local928 >= 0 && local942 >= 0 && local928 < 104 && local942 < 104 && costs[local928][local942] < 100) {
|
||||
@Pc(978) int local978 = 0;
|
||||
@Pc(980) int local980 = 0;
|
||||
if (local928 < arg8) {
|
||||
local978 = arg8 - local928;
|
||||
} else if (local928 > arg0 + arg8 - 1) {
|
||||
local978 = local928 + 1 - arg0 - arg8;
|
||||
}
|
||||
if (arg4 > local942) {
|
||||
local980 = arg4 - local942;
|
||||
} else if (local942 > arg4 + arg6 - 1) {
|
||||
local980 = local942 + 1 - arg4 - arg6;
|
||||
}
|
||||
@Pc(1057) int local1057 = local978 * local978 + local980 * local980;
|
||||
if (local1057 < cost || cost == local1057 && costs[local928][local942] < local921) {
|
||||
z = local942;
|
||||
local921 = costs[local928][local942];
|
||||
cost = local1057;
|
||||
x = local928;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cost == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (arg10 == x && z == arg3) {
|
||||
return false;
|
||||
}
|
||||
anInt4364 = 1;
|
||||
}
|
||||
@Pc(1121) byte local1121 = 0;
|
||||
queueX[0] = x;
|
||||
local61 = local1121 + 1;
|
||||
queueZ[0] = z;
|
||||
cost = local921 = parents[x][z];
|
||||
while (arg10 != x || arg3 != z) {
|
||||
if (local921 != cost) {
|
||||
queueX[local61] = x;
|
||||
queueZ[local61++] = z;
|
||||
local921 = cost;
|
||||
}
|
||||
if ((cost & 0x2) != 0) {
|
||||
x++;
|
||||
} else if ((cost & 0x8) != 0) {
|
||||
x--;
|
||||
}
|
||||
if ((cost & 0x1) != 0) {
|
||||
z++;
|
||||
} else if ((cost & 0x4) != 0) {
|
||||
z--;
|
||||
}
|
||||
cost = parents[x][z];
|
||||
}
|
||||
if (local61 > 0) {
|
||||
ClientProt.method3502(local61, arg9);
|
||||
return true;
|
||||
} else if (arg9 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!di", name = "a", descriptor = "(IIIIIIIIZIII)Z")
|
||||
public static boolean findPathN(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) boolean arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) int arg10) {
|
||||
@Pc(3) int local3;
|
||||
@Pc(10) int local10;
|
||||
for (local3 = 0; local3 < 104; local3++) {
|
||||
for (local10 = 0; local10 < 104; local10++) {
|
||||
parents[local3][local10] = 0;
|
||||
costs[local3][local10] = 99999999;
|
||||
}
|
||||
}
|
||||
local3 = arg2;
|
||||
parents[arg2][arg9] = 99;
|
||||
local10 = arg9;
|
||||
costs[arg2][arg9] = 0;
|
||||
@Pc(51) byte local51 = 0;
|
||||
@Pc(53) boolean local53 = false;
|
||||
@Pc(64) int local64 = 0;
|
||||
queueX[0] = arg2;
|
||||
@Pc(71) int local71 = local51 + 1;
|
||||
queueZ[0] = arg9;
|
||||
@Pc(78) int[][] local78 = collisionMaps[Player.level].flags;
|
||||
@Pc(198) int local198;
|
||||
while (local71 != local64) {
|
||||
local10 = queueZ[local64];
|
||||
local3 = queueX[local64];
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
if (local3 == arg0 && local10 == arg3) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
if (arg8 != 0) {
|
||||
if ((arg8 < 5 || arg8 == 10) && collisionMaps[Player.level].isAtWall(arg3, local3, local10, arg0, arg8 - 1, 1, arg6)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
if (arg8 < 10 && collisionMaps[Player.level].isAtWallDecor(arg3, arg8 - 1, arg0, local10, 1, arg6, local3)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg10 != 0 && arg5 != 0 && collisionMaps[Player.level].isInsideOrOutsideRect(arg0, local10, local3, 1, arg10, arg1, arg3, arg5)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
local198 = costs[local3][local10] + 1;
|
||||
if (local3 > 0 && parents[local3 - 1][local10] == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0) {
|
||||
queueX[local71] = local3 - 1;
|
||||
queueZ[local71] = local10;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
parents[local3 - 1][local10] = 2;
|
||||
costs[local3 - 1][local10] = local198;
|
||||
}
|
||||
if (local3 < 103 && parents[local3 + 1][local10] == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0) {
|
||||
queueX[local71] = local3 + 1;
|
||||
queueZ[local71] = local10;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
parents[local3 + 1][local10] = 8;
|
||||
costs[local3 + 1][local10] = local198;
|
||||
}
|
||||
if (local10 > 0 && parents[local3][local10 - 1] == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
queueX[local71] = local3;
|
||||
queueZ[local71] = local10 - 1;
|
||||
parents[local3][local10 - 1] = 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
costs[local3][local10 - 1] = local198;
|
||||
}
|
||||
if (local10 < 103 && parents[local3][local10 + 1] == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
queueX[local71] = local3;
|
||||
queueZ[local71] = local10 + 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
parents[local3][local10 + 1] = 4;
|
||||
costs[local3][local10 + 1] = local198;
|
||||
}
|
||||
if (local3 > 0 && local10 > 0 && parents[local3 - 1][local10 - 1] == 0 && (local78[local3 - 1][local10 - 1] & 0x12C010E) == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
queueX[local71] = local3 - 1;
|
||||
queueZ[local71] = local10 - 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
parents[local3 - 1][local10 - 1] = 3;
|
||||
costs[local3 - 1][local10 - 1] = local198;
|
||||
}
|
||||
if (local3 < 103 && local10 > 0 && parents[local3 + 1][local10 - 1] == 0 && (local78[local3 + 1][local10 - 1] & 0x12C0183) == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
queueX[local71] = local3 + 1;
|
||||
queueZ[local71] = local10 - 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
parents[local3 + 1][local10 - 1] = 9;
|
||||
costs[local3 + 1][local10 - 1] = local198;
|
||||
}
|
||||
if (local3 > 0 && local10 < 103 && parents[local3 - 1][local10 + 1] == 0 && (local78[local3 - 1][local10 + 1] & 0x12C0138) == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
queueX[local71] = local3 - 1;
|
||||
queueZ[local71] = local10 + 1;
|
||||
parents[local3 - 1][local10 + 1] = 6;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
costs[local3 - 1][local10 + 1] = local198;
|
||||
}
|
||||
if (local3 < 103 && local10 < 103 && parents[local3 + 1][local10 + 1] == 0 && (local78[local3 + 1][local10 + 1] & 0x12C01E0) == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
queueX[local71] = local3 + 1;
|
||||
queueZ[local71] = local10 + 1;
|
||||
parents[local3 + 1][local10 + 1] = 12;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
costs[local3 + 1][local10 + 1] = local198;
|
||||
}
|
||||
}
|
||||
anInt4364 = 0;
|
||||
@Pc(839) int local839;
|
||||
if (!local53) {
|
||||
if (!arg7) {
|
||||
return false;
|
||||
}
|
||||
local198 = 1000;
|
||||
local839 = 100;
|
||||
for (@Pc(846) int local846 = arg0 - 10; local846 <= arg0 + 10; local846++) {
|
||||
for (@Pc(856) int local856 = arg3 - 10; local856 <= arg3 + 10; local856++) {
|
||||
if (local846 >= 0 && local856 >= 0 && local846 < 104 && local856 < 104 && costs[local846][local856] < 100) {
|
||||
@Pc(894) int local894 = 0;
|
||||
if (local856 < arg3) {
|
||||
local894 = arg3 - local856;
|
||||
} else if (arg5 + arg3 - 1 < local856) {
|
||||
local894 = local856 + 1 - arg3 - arg5;
|
||||
}
|
||||
@Pc(927) int local927 = 0;
|
||||
if (local846 < arg0) {
|
||||
local927 = arg0 - local846;
|
||||
} else if (local846 > arg10 + arg0 - 1) {
|
||||
local927 = local846 + 1 - arg10 - arg0;
|
||||
}
|
||||
@Pc(968) int local968 = local894 * local894 + local927 * local927;
|
||||
if (local968 < local198 || local968 == local198 && costs[local846][local856] < local839) {
|
||||
local10 = local856;
|
||||
local198 = local968;
|
||||
local3 = local846;
|
||||
local839 = costs[local846][local856];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (local198 == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (arg2 == local3 && local10 == arg9) {
|
||||
return false;
|
||||
}
|
||||
anInt4364 = 1;
|
||||
}
|
||||
@Pc(1032) byte local1032 = 0;
|
||||
queueX[0] = local3;
|
||||
local64 = local1032 + 1;
|
||||
queueZ[0] = local10;
|
||||
local198 = local839 = parents[local3][local10];
|
||||
while (arg2 != local3 || local10 != arg9) {
|
||||
if (local839 != local198) {
|
||||
local839 = local198;
|
||||
queueX[local64] = local3;
|
||||
queueZ[local64++] = local10;
|
||||
}
|
||||
if ((local198 & 0x2) != 0) {
|
||||
local3++;
|
||||
} else if ((local198 & 0x8) != 0) {
|
||||
local3--;
|
||||
}
|
||||
if ((local198 & 0x1) != 0) {
|
||||
local10++;
|
||||
} else if ((local198 & 0x4) != 0) {
|
||||
local10--;
|
||||
}
|
||||
local198 = parents[local3][local10];
|
||||
}
|
||||
if (local64 > 0) {
|
||||
ClientProt.method3502(local64, arg4);
|
||||
return true;
|
||||
} else if (arg4 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!hh", name = "a", descriptor = "(IBIIIIIIIIIZI)Z")
|
||||
public static boolean findPath1(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) boolean arg10, @OriginalArg(12) int arg11) {
|
||||
@Pc(3) int local3;
|
||||
@Pc(10) int local10;
|
||||
for (local3 = 0; local3 < 104; local3++) {
|
||||
for (local10 = 0; local10 < 104; local10++) {
|
||||
parents[local3][local10] = 0;
|
||||
costs[local3][local10] = 99999999;
|
||||
}
|
||||
}
|
||||
local3 = arg8;
|
||||
local10 = arg11;
|
||||
parents[arg8][arg11] = 99;
|
||||
costs[arg8][arg11] = 0;
|
||||
@Pc(53) byte local53 = 0;
|
||||
queueX[0] = arg8;
|
||||
@Pc(65) int local65 = local53 + 1;
|
||||
queueZ[0] = arg11;
|
||||
@Pc(69) int local69 = 0;
|
||||
@Pc(71) boolean local71 = false;
|
||||
@Pc(76) int[][] local76 = collisionMaps[Player.level].flags;
|
||||
@Pc(201) int local201;
|
||||
@Pc(242) int local242;
|
||||
label397: while (local69 != local65) {
|
||||
local3 = queueX[local69];
|
||||
local10 = queueZ[local69];
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
if (arg5 == local3 && local10 == arg0) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
if (arg6 != 0) {
|
||||
if ((arg6 < 5 || arg6 == 10) && collisionMaps[Player.level].isAtWall(arg0, local3, local10, arg5, arg6 - 1, arg4, arg3)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
if (arg6 < 10 && collisionMaps[Player.level].isAtWallDecor(arg0, arg6 - 1, arg5, local10, arg4, arg3, local3)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg1 != 0 && arg9 != 0 && collisionMaps[Player.level].isInsideOrOutsideRect(arg5, local10, local3, arg4, arg1, arg7, arg0, arg9)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
local201 = costs[local3][local10] + 1;
|
||||
if (local3 > 0 && parents[local3 - 1][local10] == 0 && (local76[local3 - 1][local10] & 0x12C010E) == 0 && (local76[local3 - 1][arg4 + local10 - 1] & 0x12C0138) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
queueX[local65] = local3 - 1;
|
||||
queueZ[local65] = local10;
|
||||
parents[local3 - 1][local10] = 2;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
costs[local3 - 1][local10] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242] & 0x12C013E) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && parents[local3 + 1][local10] == 0 && (local76[local3 + arg4][local10] & 0x12C0183) == 0 && (local76[arg4 + local3][local10 + arg4 - 1] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
queueX[local65] = local3 + 1;
|
||||
queueZ[local65] = local10;
|
||||
parents[local3 + 1][local10] = 8;
|
||||
costs[local3 + 1][local10] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
break;
|
||||
}
|
||||
if ((local76[arg4 + local3][local10 + local242] & 0x12C01E3) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local10 > 0 && parents[local3][local10 - 1] == 0 && (local76[local3][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3 - 1][local10 - 1] & 0x12C0183) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
queueX[local65] = local3;
|
||||
queueZ[local65] = local10 - 1;
|
||||
parents[local3][local10 - 1] = 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
costs[local3][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + local242][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local10 < 102 && parents[local3][local10 + 1] == 0 && (local76[local3][local10 + arg4] & 0x12C0138) == 0 && (local76[local3 + arg4 - 1][arg4 + local10] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
queueX[local65] = local3;
|
||||
queueZ[local65] = local10 + 1;
|
||||
parents[local3][local10 + 1] = 4;
|
||||
costs[local3][local10 + 1] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + local242][arg4 + local10] & 0x12C01F8) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 > 0 && local10 > 0 && parents[local3 - 1][local10 - 1] == 0 && (local76[local3 - 1][arg4 + local10 - 1 - 1] & 0x12C0138) == 0 && (local76[local3 - 1][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3 - 1 - 1][local10 - 1] & 0x12C0183) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
queueX[local65] = local3 - 1;
|
||||
queueZ[local65] = local10 - 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
parents[local3 - 1][local10 - 1] = 3;
|
||||
costs[local3 - 1][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242 - 1] & 0x12C013E) != 0 || (local76[local242 + local3 - 1][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && local10 > 0 && parents[local3 + 1][local10 - 1] == 0 && (local76[local3 + 1][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3][local10 - 1] & 0x12C0183) == 0 && (local76[local3 + arg4][local10 + arg4 - 1 - 1] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
queueX[local65] = local3 + 1;
|
||||
queueZ[local65] = local10 - 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
parents[local3 + 1][local10 - 1] = 9;
|
||||
costs[local3 + 1][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + arg4][local10 + local242 - 1] & 0x12C01E3) != 0 || (local76[local242 + local3 + 1][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 > 0 && local10 < 102 && parents[local3 - 1][local10 + 1] == 0 && (local76[local3 - 1][local10 + 1] & 0x12C010E) == 0 && (local76[local3 - 1][local10 + arg4] & 0x12C0138) == 0 && (local76[local3][local10 + arg4] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
queueX[local65] = local3 - 1;
|
||||
queueZ[local65] = local10 + 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
parents[local3 - 1][local10 + 1] = 6;
|
||||
costs[local3 - 1][local10 + 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242 + 1] & 0x12C013E) != 0 || (local76[local242 + local3 - 1][arg4 + local10] & 0x12C01F8) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && local10 < 102 && parents[local3 + 1][local10 + 1] == 0 && (local76[local3 + 1][local10 + arg4] & 0x12C0138) == 0 && (local76[local3 + arg4][local10 + arg4] & 0x12C01E0) == 0 && (local76[arg4 + local3][local10 + 1] & 0x12C0183) == 0) {
|
||||
for (local242 = 1; local242 < arg4 - 1; local242++) {
|
||||
if ((local76[local242 + local3 + 1][local10 + arg4] & 0x12C01F8) != 0 || (local76[arg4 + local3][local242 + local10 + 1] & 0x12C01E3) != 0) {
|
||||
continue label397;
|
||||
}
|
||||
}
|
||||
queueX[local65] = local3 + 1;
|
||||
queueZ[local65] = local10 + 1;
|
||||
parents[local3 + 1][local10 + 1] = 12;
|
||||
costs[local3 + 1][local10 + 1] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
}
|
||||
}
|
||||
anInt4364 = 0;
|
||||
if (!local71) {
|
||||
if (!arg10) {
|
||||
return false;
|
||||
}
|
||||
local201 = 1000;
|
||||
local242 = 100;
|
||||
for (@Pc(1247) int local1247 = arg5 - 10; local1247 <= arg5 + 10; local1247++) {
|
||||
for (@Pc(1257) int local1257 = arg0 - 10; local1257 <= arg0 + 10; local1257++) {
|
||||
if (local1247 >= 0 && local1257 >= 0 && local1247 < 104 && local1257 < 104 && costs[local1247][local1257] < 100) {
|
||||
@Pc(1295) int local1295 = 0;
|
||||
if (arg5 > local1247) {
|
||||
local1295 = arg5 - local1247;
|
||||
} else if (arg5 + arg1 - 1 < local1247) {
|
||||
local1295 = local1247 + 1 - arg1 - arg5;
|
||||
}
|
||||
@Pc(1334) int local1334 = 0;
|
||||
if (local1257 < arg0) {
|
||||
local1334 = arg0 - local1257;
|
||||
} else if (arg0 + arg9 - 1 < local1257) {
|
||||
local1334 = local1257 + 1 - arg0 - arg9;
|
||||
}
|
||||
@Pc(1377) int local1377 = local1295 * local1295 + local1334 * local1334;
|
||||
if (local1377 < local201 || local1377 == local201 && local242 > costs[local1247][local1257]) {
|
||||
local242 = costs[local1247][local1257];
|
||||
local3 = local1247;
|
||||
local201 = local1377;
|
||||
local10 = local1257;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (local201 == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (local3 == arg8 && arg11 == local10) {
|
||||
return false;
|
||||
}
|
||||
anInt4364 = 1;
|
||||
}
|
||||
@Pc(1438) byte local1438 = 0;
|
||||
queueX[0] = local3;
|
||||
local69 = local1438 + 1;
|
||||
queueZ[0] = local10;
|
||||
local201 = local242 = parents[local3][local10];
|
||||
while (local3 != arg8 || arg11 != local10) {
|
||||
if (local242 != local201) {
|
||||
queueX[local69] = local3;
|
||||
local242 = local201;
|
||||
queueZ[local69++] = local10;
|
||||
}
|
||||
if ((local201 & 0x2) != 0) {
|
||||
local3++;
|
||||
} else if ((local201 & 0x8) != 0) {
|
||||
local3--;
|
||||
}
|
||||
if ((local201 & 0x1) != 0) {
|
||||
local10++;
|
||||
} else if ((local201 & 0x4) != 0) {
|
||||
local10--;
|
||||
}
|
||||
local201 = parents[local3][local10];
|
||||
}
|
||||
if (local69 > 0) {
|
||||
ClientProt.method3502(local69, arg2);
|
||||
return true;
|
||||
} else if (arg2 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!t", name = "a", descriptor = "(BJII)Z")
|
||||
public static boolean findPathToLoc(@OriginalArg(1) long key, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
||||
@Pc(12) int shape = (int) key >> 14 & 0x1F;
|
||||
@Pc(24) int angle = (int) key >> 20 & 0x3;
|
||||
@Pc(31) int id = (int) (key >>> 32) & Integer.MAX_VALUE;
|
||||
if (shape == 10 || shape == 11 || shape == 22) {
|
||||
@Pc(46) LocType local46 = LocTypeList.get(id);
|
||||
@Pc(62) int local62;
|
||||
@Pc(59) int local59;
|
||||
if (angle == 0 || angle == 2) {
|
||||
local59 = local46.length;
|
||||
local62 = local46.width;
|
||||
} else {
|
||||
local59 = local46.width;
|
||||
local62 = local46.length;
|
||||
}
|
||||
@Pc(73) int local73 = local46.blockedSides;
|
||||
if (angle != 0) {
|
||||
local73 = (local73 << angle & 0xF) + (local73 >> 4 - angle);
|
||||
}
|
||||
findPath(PlayerList.self.movementQueueZ[0], 0, local59, true, local73, arg2, local62, 0, 2, arg1, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
findPath(PlayerList.self.movementQueueZ[0], angle, 0, true, 0, arg2, 0, shape + 1, 2, arg1, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
Cross.x = Mouse.clickX;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2765,7 +2765,7 @@ public class Protocol {
|
|||
}
|
||||
Static187.anInt4422 = 0;
|
||||
} else if (Static56.anInt1742 != -1 && Static125.anInt3096 == 0 && Static187.anInt4422 == 0) {
|
||||
@Pc(1871) boolean local1871 = Static102.method2075(PlayerList.self.movementQueueZ[0], 0, 0, true, 0, Static56.anInt1742, 0, 0, 0, Static116.anInt2954, PlayerList.self.movementQueueX[0]);
|
||||
@Pc(1871) boolean local1871 = PathFinder.findPath(PlayerList.self.movementQueueZ[0], 0, 0, true, 0, Static56.anInt1742, 0, 0, 0, Static116.anInt2954, PlayerList.self.movementQueueX[0]);
|
||||
if (local1871) {
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.milliseconds = 0;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
package rt4;
|
||||
|
||||
import java.util.Calendar;
|
||||
import org.openrs2.deob.annotation.OriginalArg;
|
||||
|
||||
import org.openrs2.deob.annotation.OriginalMember;
|
||||
import org.openrs2.deob.annotation.Pc;
|
||||
|
||||
|
|
@ -44,14 +44,4 @@ public final class Static102 {
|
|||
Static20.objectContainerCache = new HashTable(32);
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!hn", name = "a", descriptor = "(IIIZIIIIIIII)Z")
|
||||
public static boolean method2075(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) boolean arg3, @OriginalArg(4) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) int arg10) {
|
||||
if (PlayerList.self.getSize() == 2) {
|
||||
return Static2.method8(arg6, arg7, arg4, arg0, arg9, arg3, arg2, arg1, arg5, arg8, arg10);
|
||||
} else if (PlayerList.self.getSize() <= 2) {
|
||||
return Static45.method1171(arg5, arg4, arg10, arg9, arg8, arg2, arg1, arg3, arg7, arg0, arg6);
|
||||
} else {
|
||||
return Static96.method1955(arg9, arg6, arg8, arg1, PlayerList.self.getSize(), arg5, arg7, arg4, arg10, arg2, arg3, arg0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,9 +6,6 @@ import org.openrs2.deob.annotation.Pc;
|
|||
|
||||
public final class Static145 {
|
||||
|
||||
@OriginalMember(owner = "client!lf", name = "a", descriptor = "[[I")
|
||||
public static final int[][] anIntArrayArray25 = new int[104][104];
|
||||
|
||||
@OriginalMember(owner = "client!lf", name = "k", descriptor = "I")
|
||||
public static int anInt3502 = -1;
|
||||
|
||||
|
|
|
|||
|
|
@ -15,9 +15,6 @@ public final class Static167 {
|
|||
@OriginalMember(owner = "client!nd", name = "b", descriptor = "Lclient!na;")
|
||||
public static final JagString aClass100_780 = JagString.parse("Clientscript error in: ");
|
||||
|
||||
@OriginalMember(owner = "client!nd", name = "q", descriptor = "[[I")
|
||||
public static final int[][] anIntArrayArray31 = new int[104][104];
|
||||
|
||||
@OriginalMember(owner = "client!nd", name = "x", descriptor = "Lclient!na;")
|
||||
public static final JagString aClass100_783 = JagString.parse(")4p=");
|
||||
|
||||
|
|
|
|||
|
|
@ -62,182 +62,6 @@ public final class Static2 {
|
|||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!aa", name = "a", descriptor = "(IIIIIZIIIIII)Z")
|
||||
public static boolean method8(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) boolean arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int arg7, @OriginalArg(8) int arg8, @OriginalArg(9) int arg9, @OriginalArg(11) int arg10) {
|
||||
@Pc(3) int local3;
|
||||
@Pc(8) int local8;
|
||||
for (local3 = 0; local3 < 104; local3++) {
|
||||
for (local8 = 0; local8 < 104; local8++) {
|
||||
Static145.anIntArrayArray25[local3][local8] = 0;
|
||||
Static167.anIntArrayArray31[local3][local8] = 99999999;
|
||||
}
|
||||
}
|
||||
Static145.anIntArrayArray25[arg10][arg3] = 99;
|
||||
Static167.anIntArrayArray31[arg10][arg3] = 0;
|
||||
local8 = arg3;
|
||||
local3 = arg10;
|
||||
@Pc(53) byte local53 = 0;
|
||||
Static259.anIntArray514[0] = arg10;
|
||||
@Pc(59) boolean local59 = false;
|
||||
@Pc(61) int local61 = 0;
|
||||
@Pc(64) int local64 = local53 + 1;
|
||||
Static84.anIntArray209[0] = arg3;
|
||||
@Pc(71) int[][] local71 = PathFinder.collisionMaps[Player.level].anIntArrayArray30;
|
||||
@Pc(193) int local193;
|
||||
while (local61 != local64) {
|
||||
local3 = Static259.anIntArray514[local61];
|
||||
local8 = Static84.anIntArray209[local61];
|
||||
local61 = local61 + 1 & 0xFFF;
|
||||
if (arg8 == local3 && arg4 == local8) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
if (arg1 != 0) {
|
||||
if ((arg1 < 5 || arg1 == 10) && PathFinder.collisionMaps[Player.level].method3042(arg4, local3, local8, arg8, arg1 - 1, 2, arg7)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
if (arg1 < 10 && PathFinder.collisionMaps[Player.level].method3046(arg4, arg1 - 1, arg8, local8, 2, arg7, local3)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg0 != 0 && arg6 != 0 && PathFinder.collisionMaps[Player.level].method3052(arg8, local8, local3, 2, arg0, arg2, arg4, arg6)) {
|
||||
local59 = true;
|
||||
break;
|
||||
}
|
||||
local193 = Static167.anIntArrayArray31[local3][local8] + 1;
|
||||
if (local3 > 0 && Static145.anIntArrayArray25[local3 - 1][local8] == 0 && (local71[local3 - 1][local8] & 0x12C010E) == 0 && (local71[local3 - 1][local8 + 1] & 0x12C0138) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 - 1;
|
||||
Static84.anIntArray209[local64] = local8;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 - 1][local8] = 2;
|
||||
Static167.anIntArrayArray31[local3 - 1][local8] = local193;
|
||||
}
|
||||
if (local3 < 102 && Static145.anIntArrayArray25[local3 + 1][local8] == 0 && (local71[local3 + 2][local8] & 0x12C0183) == 0 && (local71[local3 + 2][local8 + 1] & 0x12C01E0) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 + 1;
|
||||
Static84.anIntArray209[local64] = local8;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local8] = 8;
|
||||
Static167.anIntArrayArray31[local3 + 1][local8] = local193;
|
||||
}
|
||||
if (local8 > 0 && Static145.anIntArrayArray25[local3][local8 - 1] == 0 && (local71[local3][local8 - 1] & 0x12C010E) == 0 && (local71[local3 + 1][local8 - 1] & 0x12C0183) == 0) {
|
||||
Static259.anIntArray514[local64] = local3;
|
||||
Static84.anIntArray209[local64] = local8 - 1;
|
||||
Static145.anIntArrayArray25[local3][local8 - 1] = 1;
|
||||
Static167.anIntArrayArray31[local3][local8 - 1] = local193;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
}
|
||||
if (local8 < 102 && Static145.anIntArrayArray25[local3][local8 + 1] == 0 && (local71[local3][local8 + 2] & 0x12C0138) == 0 && (local71[local3 + 1][local8 + 2] & 0x12C01E0) == 0) {
|
||||
Static259.anIntArray514[local64] = local3;
|
||||
Static84.anIntArray209[local64] = local8 + 1;
|
||||
Static145.anIntArrayArray25[local3][local8 + 1] = 4;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3][local8 + 1] = local193;
|
||||
}
|
||||
if (local3 > 0 && local8 > 0 && Static145.anIntArrayArray25[local3 - 1][local8 - 1] == 0 && (local71[local3 - 1][local8] & 0x12C0138) == 0 && (local71[local3 - 1][local8 - 1] & 0x12C010E) == 0 && (local71[local3][local8 - 1] & 0x12C0183) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 - 1;
|
||||
Static84.anIntArray209[local64] = local8 - 1;
|
||||
Static145.anIntArrayArray25[local3 - 1][local8 - 1] = 3;
|
||||
Static167.anIntArrayArray31[local3 - 1][local8 - 1] = local193;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
}
|
||||
if (local3 < 102 && local8 > 0 && Static145.anIntArrayArray25[local3 + 1][local8 - 1] == 0 && (local71[local3 + 1][local8 - 1] & 0x12C010E) == 0 && (local71[local3 + 2][local8 - 1] & 0x12C0183) == 0 && (local71[local3 + 2][local8] & 0x12C01E0) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 + 1;
|
||||
Static84.anIntArray209[local64] = local8 - 1;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local8 - 1] = 9;
|
||||
Static167.anIntArrayArray31[local3 + 1][local8 - 1] = local193;
|
||||
}
|
||||
if (local3 > 0 && local8 < 102 && Static145.anIntArrayArray25[local3 - 1][local8 + 1] == 0 && (local71[local3 - 1][local8 + 1] & 0x12C010E) == 0 && (local71[local3 - 1][local8 + 2] & 0x12C0138) == 0 && (local71[local3][local8 + 2] & 0x12C01E0) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 - 1;
|
||||
Static84.anIntArray209[local64] = local8 + 1;
|
||||
Static145.anIntArrayArray25[local3 - 1][local8 + 1] = 6;
|
||||
Static167.anIntArrayArray31[local3 - 1][local8 + 1] = local193;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
}
|
||||
if (local3 < 102 && local8 < 102 && Static145.anIntArrayArray25[local3 + 1][local8 + 1] == 0 && (local71[local3 + 1][local8 + 2] & 0x12C0138) == 0 && (local71[local3 + 2][local8 + 2] & 0x12C01E0) == 0 && (local71[local3 + 2][local8 + 1] & 0x12C0183) == 0) {
|
||||
Static259.anIntArray514[local64] = local3 + 1;
|
||||
Static84.anIntArray209[local64] = local8 + 1;
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local8 + 1] = 12;
|
||||
Static167.anIntArrayArray31[local3 + 1][local8 + 1] = local193;
|
||||
}
|
||||
}
|
||||
Static221.anInt4364 = 0;
|
||||
@Pc(921) int local921;
|
||||
if (!local59) {
|
||||
if (!arg5) {
|
||||
return false;
|
||||
}
|
||||
local193 = 1000;
|
||||
local921 = 100;
|
||||
for (@Pc(928) int local928 = arg8 - 10; local928 <= arg8 + 10; local928++) {
|
||||
for (@Pc(942) int local942 = arg4 - 10; local942 <= arg4 + 10; local942++) {
|
||||
if (local928 >= 0 && local942 >= 0 && local928 < 104 && local942 < 104 && Static167.anIntArrayArray31[local928][local942] < 100) {
|
||||
@Pc(978) int local978 = 0;
|
||||
@Pc(980) int local980 = 0;
|
||||
if (local928 < arg8) {
|
||||
local978 = arg8 - local928;
|
||||
} else if (local928 > arg0 + arg8 - 1) {
|
||||
local978 = local928 + 1 - arg0 - arg8;
|
||||
}
|
||||
if (arg4 > local942) {
|
||||
local980 = arg4 - local942;
|
||||
} else if (local942 > arg4 + arg6 - 1) {
|
||||
local980 = local942 + 1 - arg4 - arg6;
|
||||
}
|
||||
@Pc(1057) int local1057 = local978 * local978 + local980 * local980;
|
||||
if (local1057 < local193 || local193 == local1057 && Static167.anIntArrayArray31[local928][local942] < local921) {
|
||||
local8 = local942;
|
||||
local921 = Static167.anIntArrayArray31[local928][local942];
|
||||
local193 = local1057;
|
||||
local3 = local928;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (local193 == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (arg10 == local3 && local8 == arg3) {
|
||||
return false;
|
||||
}
|
||||
Static221.anInt4364 = 1;
|
||||
}
|
||||
@Pc(1121) byte local1121 = 0;
|
||||
Static259.anIntArray514[0] = local3;
|
||||
local61 = local1121 + 1;
|
||||
Static84.anIntArray209[0] = local8;
|
||||
local193 = local921 = Static145.anIntArrayArray25[local3][local8];
|
||||
while (arg10 != local3 || arg3 != local8) {
|
||||
if (local921 != local193) {
|
||||
Static259.anIntArray514[local61] = local3;
|
||||
Static84.anIntArray209[local61++] = local8;
|
||||
local921 = local193;
|
||||
}
|
||||
if ((local193 & 0x2) != 0) {
|
||||
local3++;
|
||||
} else if ((local193 & 0x8) != 0) {
|
||||
local3--;
|
||||
}
|
||||
if ((local193 & 0x1) != 0) {
|
||||
local8++;
|
||||
} else if ((local193 & 0x4) != 0) {
|
||||
local8--;
|
||||
}
|
||||
local193 = Static145.anIntArrayArray25[local3][local8];
|
||||
}
|
||||
if (local61 > 0) {
|
||||
ClientProt.method3502(local61, arg9);
|
||||
return true;
|
||||
} else if (arg9 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!aa", name = "a", descriptor = "(BLclient!be;)V")
|
||||
public static void method13(@OriginalArg(1) Component arg0) {
|
||||
@Pc(16) int local16 = arg0.anInt453;
|
||||
|
|
|
|||
|
|
@ -12,9 +12,6 @@ public final class Static221 {
|
|||
@OriginalMember(owner = "client!s", name = "i", descriptor = "[I")
|
||||
public static int[] anIntArray376;
|
||||
|
||||
@OriginalMember(owner = "client!s", name = "d", descriptor = "I")
|
||||
public static int anInt4364 = 0;
|
||||
|
||||
@OriginalMember(owner = "client!s", name = "b", descriptor = "(III)V")
|
||||
public static void method3392(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
|
||||
if (Static250.anInt5434 > 0) {
|
||||
|
|
|
|||
|
|
@ -82,35 +82,4 @@ public final class Static233 {
|
|||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!t", name = "a", descriptor = "(BJII)Z")
|
||||
public static boolean method4003(@OriginalArg(1) long arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
||||
@Pc(12) int local12 = (int) arg0 >> 14 & 0x1F;
|
||||
@Pc(24) int local24 = (int) arg0 >> 20 & 0x3;
|
||||
@Pc(31) int local31 = (int) (arg0 >>> 32) & Integer.MAX_VALUE;
|
||||
if (local12 == 10 || local12 == 11 || local12 == 22) {
|
||||
@Pc(46) LocType local46 = LocTypeList.get(local31);
|
||||
@Pc(62) int local62;
|
||||
@Pc(59) int local59;
|
||||
if (local24 == 0 || local24 == 2) {
|
||||
local59 = local46.length;
|
||||
local62 = local46.width;
|
||||
} else {
|
||||
local59 = local46.width;
|
||||
local62 = local46.length;
|
||||
}
|
||||
@Pc(73) int local73 = local46.blockedSides;
|
||||
if (local24 != 0) {
|
||||
local73 = (local73 << local24 & 0xF) + (local73 >> 4 - local24);
|
||||
}
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], 0, local59, true, local73, arg2, local62, 0, 2, arg1, PlayerList.self.movementQueueX[0]);
|
||||
} else {
|
||||
Static102.method2075(PlayerList.self.movementQueueZ[0], local24, 0, true, 0, arg2, 0, local12 + 1, 2, arg1, PlayerList.self.movementQueueX[0]);
|
||||
}
|
||||
Cross.y = Mouse.clickY;
|
||||
Cross.milliseconds = 0;
|
||||
Cross.type = 2;
|
||||
Cross.x = Mouse.clickX;
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ public final class Static245 {
|
|||
for (@Pc(10) int local10 = 0; local10 < 8; local10++) {
|
||||
for (local17 = 0; local17 < 8; local17++) {
|
||||
if (arg1 + local10 > 0 && local10 + arg1 < 103 && local17 + arg4 > 0 && arg4 + local17 < 103) {
|
||||
arg3[arg2].anIntArrayArray30[local10 + arg1][local17 + arg4] &= 0xFEFFFFFF;
|
||||
arg3[arg2].flags[local10 + arg1][local17 + arg4] &= 0xFEFFFFFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,16 +31,16 @@ public final class Static254 {
|
|||
} else {
|
||||
@Pc(47) int local47 = 0;
|
||||
@Pc(49) byte local49 = 0;
|
||||
Static259.anIntArray514[0] = arg1;
|
||||
PathFinder.queueX[0] = arg1;
|
||||
@Pc(69) int local69 = local49 + 1;
|
||||
Static84.anIntArray209[0] = arg2;
|
||||
PathFinder.queueZ[0] = arg2;
|
||||
Static266.aByteArrayArrayArray15[Player.level][arg1][arg2] = local14;
|
||||
while (local47 != local69) {
|
||||
@Pc(94) int local94 = Static259.anIntArray514[local47] >> 16 & 0xFF;
|
||||
@Pc(102) int local102 = Static259.anIntArray514[local47] >> 24 & 0xFF;
|
||||
@Pc(108) int local108 = Static259.anIntArray514[local47] & 0xFFFF;
|
||||
@Pc(116) int local116 = Static84.anIntArray209[local47] >> 16 & 0xFF;
|
||||
@Pc(122) int local122 = Static84.anIntArray209[local47] & 0xFFFF;
|
||||
@Pc(94) int local94 = PathFinder.queueX[local47] >> 16 & 0xFF;
|
||||
@Pc(102) int local102 = PathFinder.queueX[local47] >> 24 & 0xFF;
|
||||
@Pc(108) int local108 = PathFinder.queueX[local47] & 0xFFFF;
|
||||
@Pc(116) int local116 = PathFinder.queueZ[local47] >> 16 & 0xFF;
|
||||
@Pc(122) int local122 = PathFinder.queueZ[local47] & 0xFFFF;
|
||||
local47 = local47 + 1 & 0xFFF;
|
||||
@Pc(130) boolean local130 = false;
|
||||
@Pc(132) boolean local132 = false;
|
||||
|
|
@ -122,56 +122,56 @@ public final class Static254 {
|
|||
}
|
||||
if (!local130) {
|
||||
if (local108 >= 1 && Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] != local14) {
|
||||
Static259.anIntArray514[local69] = local108 - 1 | 0x120000 | 0xD3000000;
|
||||
Static84.anIntArray209[local69] = local122 | 0x130000;
|
||||
PathFinder.queueX[local69] = local108 - 1 | 0x120000 | 0xD3000000;
|
||||
PathFinder.queueZ[local69] = local122 | 0x130000;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] = local14;
|
||||
}
|
||||
local122++;
|
||||
if (local122 < 104) {
|
||||
if (local108 - 1 >= 0 && local14 != Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] && (SceneGraph.tileFlags[Player.level][local108][local122] & 0x4) == 0 && (SceneGraph.tileFlags[Player.level][local108 - 1][local122 - 1] & 0x4) == 0) {
|
||||
Static259.anIntArray514[local69] = 0x52000000 | 0x120000 | local108 - 1;
|
||||
Static84.anIntArray209[local69] = local122 | 0x130000;
|
||||
PathFinder.queueX[local69] = 0x52000000 | 0x120000 | local108 - 1;
|
||||
PathFinder.queueZ[local69] = local122 | 0x130000;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] = local14;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
}
|
||||
if (local14 != Static266.aByteArrayArrayArray15[Player.level][local108][local122]) {
|
||||
Static259.anIntArray514[local69] = local108 | 0x13000000 | 0x520000;
|
||||
Static84.anIntArray209[local69] = local122 | 0x530000;
|
||||
PathFinder.queueX[local69] = local108 | 0x13000000 | 0x520000;
|
||||
PathFinder.queueZ[local69] = local122 | 0x530000;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108][local122] = local14;
|
||||
}
|
||||
if (local108 + 1 < 104 && Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122] != local14 && (SceneGraph.tileFlags[Player.level][local108][local122] & 0x4) == 0 && (SceneGraph.tileFlags[Player.level][local108 + 1][local122 - 1] & 0x4) == 0) {
|
||||
Static259.anIntArray514[local69] = 0x92000000 | 0x520000 | local108 + 1;
|
||||
Static84.anIntArray209[local69] = local122 | 0x530000;
|
||||
PathFinder.queueX[local69] = 0x92000000 | 0x520000 | local108 + 1;
|
||||
PathFinder.queueZ[local69] = local122 | 0x530000;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122] = local14;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
}
|
||||
}
|
||||
local122--;
|
||||
if (local108 + 1 < 104 && local14 != Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122]) {
|
||||
Static259.anIntArray514[local69] = local108 + 1 | 0x920000 | 0x53000000;
|
||||
Static84.anIntArray209[local69] = local122 | 0x930000;
|
||||
PathFinder.queueX[local69] = local108 + 1 | 0x920000 | 0x53000000;
|
||||
PathFinder.queueZ[local69] = local122 | 0x930000;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122] = local14;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
}
|
||||
local122--;
|
||||
if (local122 >= 0) {
|
||||
if (local108 - 1 >= 0 && Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] != local14 && (SceneGraph.tileFlags[Player.level][local108][local122] & 0x4) == 0 && (SceneGraph.tileFlags[Player.level][local108 - 1][local122 + 1] & 0x4) == 0) {
|
||||
Static259.anIntArray514[local69] = local108 - 1 | 0xD20000 | 0x12000000;
|
||||
Static84.anIntArray209[local69] = local122 | 0xD30000;
|
||||
PathFinder.queueX[local69] = local108 - 1 | 0xD20000 | 0x12000000;
|
||||
PathFinder.queueZ[local69] = local122 | 0xD30000;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 - 1][local122] = local14;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
}
|
||||
if (local14 != Static266.aByteArrayArrayArray15[Player.level][local108][local122]) {
|
||||
Static259.anIntArray514[local69] = local108 | 0xD20000 | 0x93000000;
|
||||
Static84.anIntArray209[local69] = local122 | 0xD30000;
|
||||
PathFinder.queueX[local69] = local108 | 0xD20000 | 0x93000000;
|
||||
PathFinder.queueZ[local69] = local122 | 0xD30000;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108][local122] = local14;
|
||||
}
|
||||
if (local108 + 1 < 104 && Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122] != local14 && (SceneGraph.tileFlags[Player.level][local108][local122] & 0x4) == 0 && (SceneGraph.tileFlags[Player.level][local108 + 1][local122 + 1] & 0x4) == 0) {
|
||||
Static259.anIntArray514[local69] = local108 + 1 | 0xD2000000 | 0x920000;
|
||||
Static84.anIntArray209[local69] = local122 | 0x930000;
|
||||
PathFinder.queueX[local69] = local108 + 1 | 0xD2000000 | 0x920000;
|
||||
PathFinder.queueZ[local69] = local122 | 0x930000;
|
||||
Static266.aByteArrayArrayArray15[Player.level][local108 + 1][local122] = local14;
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,4 @@ public final class Static259 {
|
|||
@OriginalMember(owner = "client!vc", name = "V", descriptor = "[J")
|
||||
public static final long[] aLongArray11 = new long[1000];
|
||||
|
||||
@OriginalMember(owner = "client!vc", name = "eb", descriptor = "[I")
|
||||
public static final int[] anIntArray514 = new int[4096];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ public final class Static269 {
|
|||
for (local14 = 0; local14 < 64; local14++) {
|
||||
for (local21 = 0; local21 < 64; local21++) {
|
||||
if (arg4 + local14 > 0 && local14 + arg4 < 103 && arg3 + local21 > 0 && local21 + arg3 < 103) {
|
||||
arg0[local9].anIntArrayArray30[local14 + arg4][arg3 + local21] &= 0xFEFFFFFF;
|
||||
arg0[local9].flags[local14 + arg4][arg3 + local21] &= 0xFEFFFFFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,9 +9,6 @@ public final class Static45 {
|
|||
@OriginalMember(owner = "client!di", name = "q", descriptor = "[Lclient!na;")
|
||||
public static final JagString[] aClass100Array53 = new JagString[5];
|
||||
|
||||
@OriginalMember(owner = "client!di", name = "F", descriptor = "Lclient!bf;")
|
||||
public static final ServerActiveProperties aClass3_Sub4_2 = new ServerActiveProperties(0, -1);
|
||||
|
||||
@OriginalMember(owner = "client!di", name = "H", descriptor = "Z")
|
||||
public static boolean aBoolean84 = false;
|
||||
|
||||
|
|
@ -486,180 +483,4 @@ public final class Static45 {
|
|||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!di", name = "a", descriptor = "(IIIIIIIIZIII)Z")
|
||||
public static boolean method1171(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) boolean arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) int arg10) {
|
||||
@Pc(3) int local3;
|
||||
@Pc(10) int local10;
|
||||
for (local3 = 0; local3 < 104; local3++) {
|
||||
for (local10 = 0; local10 < 104; local10++) {
|
||||
Static145.anIntArrayArray25[local3][local10] = 0;
|
||||
Static167.anIntArrayArray31[local3][local10] = 99999999;
|
||||
}
|
||||
}
|
||||
local3 = arg2;
|
||||
Static145.anIntArrayArray25[arg2][arg9] = 99;
|
||||
local10 = arg9;
|
||||
Static167.anIntArrayArray31[arg2][arg9] = 0;
|
||||
@Pc(51) byte local51 = 0;
|
||||
@Pc(53) boolean local53 = false;
|
||||
@Pc(64) int local64 = 0;
|
||||
Static259.anIntArray514[0] = arg2;
|
||||
@Pc(71) int local71 = local51 + 1;
|
||||
Static84.anIntArray209[0] = arg9;
|
||||
@Pc(78) int[][] local78 = PathFinder.collisionMaps[Player.level].anIntArrayArray30;
|
||||
@Pc(198) int local198;
|
||||
while (local71 != local64) {
|
||||
local10 = Static84.anIntArray209[local64];
|
||||
local3 = Static259.anIntArray514[local64];
|
||||
local64 = local64 + 1 & 0xFFF;
|
||||
if (local3 == arg0 && local10 == arg3) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
if (arg8 != 0) {
|
||||
if ((arg8 < 5 || arg8 == 10) && PathFinder.collisionMaps[Player.level].method3042(arg3, local3, local10, arg0, arg8 - 1, 1, arg6)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
if (arg8 < 10 && PathFinder.collisionMaps[Player.level].method3046(arg3, arg8 - 1, arg0, local10, 1, arg6, local3)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg10 != 0 && arg5 != 0 && PathFinder.collisionMaps[Player.level].method3052(arg0, local10, local3, 1, arg10, arg1, arg3, arg5)) {
|
||||
local53 = true;
|
||||
break;
|
||||
}
|
||||
local198 = Static167.anIntArrayArray31[local3][local10] + 1;
|
||||
if (local3 > 0 && Static145.anIntArrayArray25[local3 - 1][local10] == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 - 1;
|
||||
Static84.anIntArray209[local71] = local10;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10] = 2;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10] = local198;
|
||||
}
|
||||
if (local3 < 103 && Static145.anIntArrayArray25[local3 + 1][local10] == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 + 1;
|
||||
Static84.anIntArray209[local71] = local10;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10] = 8;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10] = local198;
|
||||
}
|
||||
if (local10 > 0 && Static145.anIntArrayArray25[local3][local10 - 1] == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
Static259.anIntArray514[local71] = local3;
|
||||
Static84.anIntArray209[local71] = local10 - 1;
|
||||
Static145.anIntArrayArray25[local3][local10 - 1] = 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3][local10 - 1] = local198;
|
||||
}
|
||||
if (local10 < 103 && Static145.anIntArrayArray25[local3][local10 + 1] == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
Static259.anIntArray514[local71] = local3;
|
||||
Static84.anIntArray209[local71] = local10 + 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3][local10 + 1] = 4;
|
||||
Static167.anIntArrayArray31[local3][local10 + 1] = local198;
|
||||
}
|
||||
if (local3 > 0 && local10 > 0 && Static145.anIntArrayArray25[local3 - 1][local10 - 1] == 0 && (local78[local3 - 1][local10 - 1] & 0x12C010E) == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 - 1;
|
||||
Static84.anIntArray209[local71] = local10 - 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10 - 1] = 3;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10 - 1] = local198;
|
||||
}
|
||||
if (local3 < 103 && local10 > 0 && Static145.anIntArrayArray25[local3 + 1][local10 - 1] == 0 && (local78[local3 + 1][local10 - 1] & 0x12C0183) == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0 && (local78[local3][local10 - 1] & 0x12C0102) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 + 1;
|
||||
Static84.anIntArray209[local71] = local10 - 1;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10 - 1] = 9;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10 - 1] = local198;
|
||||
}
|
||||
if (local3 > 0 && local10 < 103 && Static145.anIntArrayArray25[local3 - 1][local10 + 1] == 0 && (local78[local3 - 1][local10 + 1] & 0x12C0138) == 0 && (local78[local3 - 1][local10] & 0x12C0108) == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 - 1;
|
||||
Static84.anIntArray209[local71] = local10 + 1;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10 + 1] = 6;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10 + 1] = local198;
|
||||
}
|
||||
if (local3 < 103 && local10 < 103 && Static145.anIntArrayArray25[local3 + 1][local10 + 1] == 0 && (local78[local3 + 1][local10 + 1] & 0x12C01E0) == 0 && (local78[local3 + 1][local10] & 0x12C0180) == 0 && (local78[local3][local10 + 1] & 0x12C0120) == 0) {
|
||||
Static259.anIntArray514[local71] = local3 + 1;
|
||||
Static84.anIntArray209[local71] = local10 + 1;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10 + 1] = 12;
|
||||
local71 = local71 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10 + 1] = local198;
|
||||
}
|
||||
}
|
||||
Static221.anInt4364 = 0;
|
||||
@Pc(839) int local839;
|
||||
if (!local53) {
|
||||
if (!arg7) {
|
||||
return false;
|
||||
}
|
||||
local198 = 1000;
|
||||
local839 = 100;
|
||||
for (@Pc(846) int local846 = arg0 - 10; local846 <= arg0 + 10; local846++) {
|
||||
for (@Pc(856) int local856 = arg3 - 10; local856 <= arg3 + 10; local856++) {
|
||||
if (local846 >= 0 && local856 >= 0 && local846 < 104 && local856 < 104 && Static167.anIntArrayArray31[local846][local856] < 100) {
|
||||
@Pc(894) int local894 = 0;
|
||||
if (local856 < arg3) {
|
||||
local894 = arg3 - local856;
|
||||
} else if (arg5 + arg3 - 1 < local856) {
|
||||
local894 = local856 + 1 - arg3 - arg5;
|
||||
}
|
||||
@Pc(927) int local927 = 0;
|
||||
if (local846 < arg0) {
|
||||
local927 = arg0 - local846;
|
||||
} else if (local846 > arg10 + arg0 - 1) {
|
||||
local927 = local846 + 1 - arg10 - arg0;
|
||||
}
|
||||
@Pc(968) int local968 = local894 * local894 + local927 * local927;
|
||||
if (local968 < local198 || local968 == local198 && Static167.anIntArrayArray31[local846][local856] < local839) {
|
||||
local10 = local856;
|
||||
local198 = local968;
|
||||
local3 = local846;
|
||||
local839 = Static167.anIntArrayArray31[local846][local856];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (local198 == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (arg2 == local3 && local10 == arg9) {
|
||||
return false;
|
||||
}
|
||||
Static221.anInt4364 = 1;
|
||||
}
|
||||
@Pc(1032) byte local1032 = 0;
|
||||
Static259.anIntArray514[0] = local3;
|
||||
local64 = local1032 + 1;
|
||||
Static84.anIntArray209[0] = local10;
|
||||
local198 = local839 = Static145.anIntArrayArray25[local3][local10];
|
||||
while (arg2 != local3 || local10 != arg9) {
|
||||
if (local839 != local198) {
|
||||
local839 = local198;
|
||||
Static259.anIntArray514[local64] = local3;
|
||||
Static84.anIntArray209[local64++] = local10;
|
||||
}
|
||||
if ((local198 & 0x2) != 0) {
|
||||
local3++;
|
||||
} else if ((local198 & 0x8) != 0) {
|
||||
local3--;
|
||||
}
|
||||
if ((local198 & 0x1) != 0) {
|
||||
local10++;
|
||||
} else if ((local198 & 0x4) != 0) {
|
||||
local10--;
|
||||
}
|
||||
local198 = Static145.anIntArrayArray25[local3][local10];
|
||||
}
|
||||
if (local64 > 0) {
|
||||
ClientProt.method3502(local64, arg4);
|
||||
return true;
|
||||
} else if (arg4 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,9 +8,6 @@ public final class Static84 {
|
|||
@OriginalMember(owner = "client!gk", name = "d", descriptor = "F")
|
||||
public static float aFloat10;
|
||||
|
||||
@OriginalMember(owner = "client!gk", name = "c", descriptor = "[I")
|
||||
public static final int[] anIntArray209 = new int[4096];
|
||||
|
||||
@OriginalMember(owner = "client!gk", name = "g", descriptor = "Z")
|
||||
public static boolean aBoolean127 = false;
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package rt4;
|
|||
|
||||
import org.openrs2.deob.annotation.OriginalArg;
|
||||
import org.openrs2.deob.annotation.OriginalMember;
|
||||
import org.openrs2.deob.annotation.Pc;
|
||||
|
||||
public final class Static96 {
|
||||
|
||||
|
|
@ -22,254 +21,4 @@ public final class Static96 {
|
|||
}
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!hh", name = "a", descriptor = "(IBIIIIIIIIIZI)Z")
|
||||
public static boolean method1955(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) int arg9, @OriginalArg(11) boolean arg10, @OriginalArg(12) int arg11) {
|
||||
@Pc(3) int local3;
|
||||
@Pc(10) int local10;
|
||||
for (local3 = 0; local3 < 104; local3++) {
|
||||
for (local10 = 0; local10 < 104; local10++) {
|
||||
Static145.anIntArrayArray25[local3][local10] = 0;
|
||||
Static167.anIntArrayArray31[local3][local10] = 99999999;
|
||||
}
|
||||
}
|
||||
local3 = arg8;
|
||||
local10 = arg11;
|
||||
Static145.anIntArrayArray25[arg8][arg11] = 99;
|
||||
Static167.anIntArrayArray31[arg8][arg11] = 0;
|
||||
@Pc(53) byte local53 = 0;
|
||||
Static259.anIntArray514[0] = arg8;
|
||||
@Pc(65) int local65 = local53 + 1;
|
||||
Static84.anIntArray209[0] = arg11;
|
||||
@Pc(69) int local69 = 0;
|
||||
@Pc(71) boolean local71 = false;
|
||||
@Pc(76) int[][] local76 = PathFinder.collisionMaps[Player.level].anIntArrayArray30;
|
||||
@Pc(201) int local201;
|
||||
@Pc(242) int local242;
|
||||
label397: while (local69 != local65) {
|
||||
local3 = Static259.anIntArray514[local69];
|
||||
local10 = Static84.anIntArray209[local69];
|
||||
local69 = local69 + 1 & 0xFFF;
|
||||
if (arg5 == local3 && local10 == arg0) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
if (arg6 != 0) {
|
||||
if ((arg6 < 5 || arg6 == 10) && PathFinder.collisionMaps[Player.level].method3042(arg0, local3, local10, arg5, arg6 - 1, arg4, arg3)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
if (arg6 < 10 && PathFinder.collisionMaps[Player.level].method3046(arg0, arg6 - 1, arg5, local10, arg4, arg3, local3)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (arg1 != 0 && arg9 != 0 && PathFinder.collisionMaps[Player.level].method3052(arg5, local10, local3, arg4, arg1, arg7, arg0, arg9)) {
|
||||
local71 = true;
|
||||
break;
|
||||
}
|
||||
local201 = Static167.anIntArrayArray31[local3][local10] + 1;
|
||||
if (local3 > 0 && Static145.anIntArrayArray25[local3 - 1][local10] == 0 && (local76[local3 - 1][local10] & 0x12C010E) == 0 && (local76[local3 - 1][arg4 + local10 - 1] & 0x12C0138) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
Static259.anIntArray514[local65] = local3 - 1;
|
||||
Static84.anIntArray209[local65] = local10;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10] = 2;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242] & 0x12C013E) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && Static145.anIntArrayArray25[local3 + 1][local10] == 0 && (local76[local3 + arg4][local10] & 0x12C0183) == 0 && (local76[arg4 + local3][local10 + arg4 - 1] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
Static259.anIntArray514[local65] = local3 + 1;
|
||||
Static84.anIntArray209[local65] = local10;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10] = 8;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
break;
|
||||
}
|
||||
if ((local76[arg4 + local3][local10 + local242] & 0x12C01E3) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local10 > 0 && Static145.anIntArrayArray25[local3][local10 - 1] == 0 && (local76[local3][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3 - 1][local10 - 1] & 0x12C0183) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
Static259.anIntArray514[local65] = local3;
|
||||
Static84.anIntArray209[local65] = local10 - 1;
|
||||
Static145.anIntArrayArray25[local3][local10 - 1] = 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
Static167.anIntArrayArray31[local3][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + local242][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local10 < 102 && Static145.anIntArrayArray25[local3][local10 + 1] == 0 && (local76[local3][local10 + arg4] & 0x12C0138) == 0 && (local76[local3 + arg4 - 1][arg4 + local10] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
Static259.anIntArray514[local65] = local3;
|
||||
Static84.anIntArray209[local65] = local10 + 1;
|
||||
Static145.anIntArrayArray25[local3][local10 + 1] = 4;
|
||||
Static167.anIntArrayArray31[local3][local10 + 1] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + local242][arg4 + local10] & 0x12C01F8) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 > 0 && local10 > 0 && Static145.anIntArrayArray25[local3 - 1][local10 - 1] == 0 && (local76[local3 - 1][arg4 + local10 - 1 - 1] & 0x12C0138) == 0 && (local76[local3 - 1][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3 - 1 - 1][local10 - 1] & 0x12C0183) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
Static259.anIntArray514[local65] = local3 - 1;
|
||||
Static84.anIntArray209[local65] = local10 - 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10 - 1] = 3;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242 - 1] & 0x12C013E) != 0 || (local76[local242 + local3 - 1][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && local10 > 0 && Static145.anIntArrayArray25[local3 + 1][local10 - 1] == 0 && (local76[local3 + 1][local10 - 1] & 0x12C010E) == 0 && (local76[arg4 + local3][local10 - 1] & 0x12C0183) == 0 && (local76[local3 + arg4][local10 + arg4 - 1 - 1] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (local242 >= arg4 - 1) {
|
||||
Static259.anIntArray514[local65] = local3 + 1;
|
||||
Static84.anIntArray209[local65] = local10 - 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10 - 1] = 9;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10 - 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 + arg4][local10 + local242 - 1] & 0x12C01E3) != 0 || (local76[local242 + local3 + 1][local10 - 1] & 0x12C018F) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 > 0 && local10 < 102 && Static145.anIntArrayArray25[local3 - 1][local10 + 1] == 0 && (local76[local3 - 1][local10 + 1] & 0x12C010E) == 0 && (local76[local3 - 1][local10 + arg4] & 0x12C0138) == 0 && (local76[local3][local10 + arg4] & 0x12C01E0) == 0) {
|
||||
local242 = 1;
|
||||
while (true) {
|
||||
if (arg4 - 1 <= local242) {
|
||||
Static259.anIntArray514[local65] = local3 - 1;
|
||||
Static84.anIntArray209[local65] = local10 + 1;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
Static145.anIntArrayArray25[local3 - 1][local10 + 1] = 6;
|
||||
Static167.anIntArrayArray31[local3 - 1][local10 + 1] = local201;
|
||||
break;
|
||||
}
|
||||
if ((local76[local3 - 1][local10 + local242 + 1] & 0x12C013E) != 0 || (local76[local242 + local3 - 1][arg4 + local10] & 0x12C01F8) != 0) {
|
||||
break;
|
||||
}
|
||||
local242++;
|
||||
}
|
||||
}
|
||||
if (local3 < 102 && local10 < 102 && Static145.anIntArrayArray25[local3 + 1][local10 + 1] == 0 && (local76[local3 + 1][local10 + arg4] & 0x12C0138) == 0 && (local76[local3 + arg4][local10 + arg4] & 0x12C01E0) == 0 && (local76[arg4 + local3][local10 + 1] & 0x12C0183) == 0) {
|
||||
for (local242 = 1; local242 < arg4 - 1; local242++) {
|
||||
if ((local76[local242 + local3 + 1][local10 + arg4] & 0x12C01F8) != 0 || (local76[arg4 + local3][local242 + local10 + 1] & 0x12C01E3) != 0) {
|
||||
continue label397;
|
||||
}
|
||||
}
|
||||
Static259.anIntArray514[local65] = local3 + 1;
|
||||
Static84.anIntArray209[local65] = local10 + 1;
|
||||
Static145.anIntArrayArray25[local3 + 1][local10 + 1] = 12;
|
||||
Static167.anIntArrayArray31[local3 + 1][local10 + 1] = local201;
|
||||
local65 = local65 + 1 & 0xFFF;
|
||||
}
|
||||
}
|
||||
Static221.anInt4364 = 0;
|
||||
if (!local71) {
|
||||
if (!arg10) {
|
||||
return false;
|
||||
}
|
||||
local201 = 1000;
|
||||
local242 = 100;
|
||||
for (@Pc(1247) int local1247 = arg5 - 10; local1247 <= arg5 + 10; local1247++) {
|
||||
for (@Pc(1257) int local1257 = arg0 - 10; local1257 <= arg0 + 10; local1257++) {
|
||||
if (local1247 >= 0 && local1257 >= 0 && local1247 < 104 && local1257 < 104 && Static167.anIntArrayArray31[local1247][local1257] < 100) {
|
||||
@Pc(1295) int local1295 = 0;
|
||||
if (arg5 > local1247) {
|
||||
local1295 = arg5 - local1247;
|
||||
} else if (arg5 + arg1 - 1 < local1247) {
|
||||
local1295 = local1247 + 1 - arg1 - arg5;
|
||||
}
|
||||
@Pc(1334) int local1334 = 0;
|
||||
if (local1257 < arg0) {
|
||||
local1334 = arg0 - local1257;
|
||||
} else if (arg0 + arg9 - 1 < local1257) {
|
||||
local1334 = local1257 + 1 - arg0 - arg9;
|
||||
}
|
||||
@Pc(1377) int local1377 = local1295 * local1295 + local1334 * local1334;
|
||||
if (local1377 < local201 || local1377 == local201 && local242 > Static167.anIntArrayArray31[local1247][local1257]) {
|
||||
local242 = Static167.anIntArrayArray31[local1247][local1257];
|
||||
local3 = local1247;
|
||||
local201 = local1377;
|
||||
local10 = local1257;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (local201 == 1000) {
|
||||
return false;
|
||||
}
|
||||
if (local3 == arg8 && arg11 == local10) {
|
||||
return false;
|
||||
}
|
||||
Static221.anInt4364 = 1;
|
||||
}
|
||||
@Pc(1438) byte local1438 = 0;
|
||||
Static259.anIntArray514[0] = local3;
|
||||
local69 = local1438 + 1;
|
||||
Static84.anIntArray209[0] = local10;
|
||||
local201 = local242 = Static145.anIntArrayArray25[local3][local10];
|
||||
while (local3 != arg8 || arg11 != local10) {
|
||||
if (local242 != local201) {
|
||||
Static259.anIntArray514[local69] = local3;
|
||||
local242 = local201;
|
||||
Static84.anIntArray209[local69++] = local10;
|
||||
}
|
||||
if ((local201 & 0x2) != 0) {
|
||||
local3++;
|
||||
} else if ((local201 & 0x8) != 0) {
|
||||
local3--;
|
||||
}
|
||||
if ((local201 & 0x1) != 0) {
|
||||
local10++;
|
||||
} else if ((local201 & 0x4) != 0) {
|
||||
local10--;
|
||||
}
|
||||
local201 = Static145.anIntArrayArray25[local3][local10];
|
||||
}
|
||||
if (local69 > 0) {
|
||||
ClientProt.method3502(local69, arg2);
|
||||
return true;
|
||||
} else if (arg2 == 1) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -989,7 +989,7 @@ public final class client extends GameShell {
|
|||
if (local66.getSize() > 1) {
|
||||
for (@Pc(226) int local226 = local66.movementQueueX[0]; local66.movementQueueX[0] + local66.getSize() > local226; local226++) {
|
||||
for (@Pc(246) int local246 = local66.movementQueueZ[0]; local66.movementQueueZ[0] + local66.getSize() > local246; local246++) {
|
||||
if ((PathFinder.collisionMaps[Player.level].anIntArrayArray30[local226][local246] & 0x12401FF) != 0) {
|
||||
if ((PathFinder.collisionMaps[Player.level].flags[local226][local246] & 0x12401FF) != 0) {
|
||||
continue nextNpc;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue