Files
runelite/runescape-client/src/main/java/Message.java
2019-09-12 14:00:01 +01:00

584 lines
18 KiB
Java

import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("bj")
@Implements("Message")
public class Message extends DualNode {
@ObfuscatedName("m")
@Export("userHomeDirectory")
static String userHomeDirectory;
@ObfuscatedName("du")
@ObfuscatedSignature(
signature = "Lio;"
)
@Export("archive12")
static Archive archive12;
@ObfuscatedName("c")
@ObfuscatedGetter(
intValue = 849621615
)
@Export("count")
int count;
@ObfuscatedName("x")
@ObfuscatedGetter(
intValue = 416570399
)
@Export("cycle")
int cycle;
@ObfuscatedName("t")
@ObfuscatedGetter(
intValue = -1614999863
)
@Export("type")
int type;
@ObfuscatedName("g")
@Export("sender")
String sender;
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "Ljt;"
)
@Export("senderUsername")
Username senderUsername;
@ObfuscatedName("u")
@ObfuscatedSignature(
signature = "Ljb;"
)
@Export("isFromFriend0")
TriBool isFromFriend0;
@ObfuscatedName("j")
@ObfuscatedSignature(
signature = "Ljb;"
)
@Export("isFromIgnored0")
TriBool isFromIgnored0;
@ObfuscatedName("v")
@Export("prefix")
String prefix;
@ObfuscatedName("d")
@Export("text")
String text;
Message(int var1, String var2, String var3, String var4) {
this.isFromFriend0 = TriBool.TriBool_unknown;
this.isFromIgnored0 = TriBool.TriBool_unknown;
this.set(var1, var2, var3, var4);
}
@ObfuscatedName("c")
@ObfuscatedSignature(
signature = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V",
garbageValue = "1266691950"
)
@Export("set")
void set(int var1, String var2, String var3, String var4) {
this.count = WorldMapCacheName.method594();
this.cycle = Client.cycle;
this.type = var1;
this.sender = var2;
this.fillSenderUsername();
this.prefix = var3;
this.text = var4;
this.clearIsFromFriend();
this.clearIsFromIgnored();
}
@ObfuscatedName("x")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "-886481837"
)
@Export("clearIsFromFriend")
void clearIsFromFriend() {
this.isFromFriend0 = TriBool.TriBool_unknown;
}
@ObfuscatedName("t")
@ObfuscatedSignature(
signature = "(I)Z",
garbageValue = "-475593576"
)
@Export("isFromFriend")
final boolean isFromFriend() {
if (this.isFromFriend0 == TriBool.TriBool_unknown) {
this.fillIsFromFriend();
}
return this.isFromFriend0 == TriBool.TriBool_true;
}
@ObfuscatedName("g")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "-2097510211"
)
@Export("fillIsFromFriend")
void fillIsFromFriend() {
this.isFromFriend0 = class218.friendSystem.friendsList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false;
}
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "(B)V",
garbageValue = "-116"
)
@Export("clearIsFromIgnored")
void clearIsFromIgnored() {
this.isFromIgnored0 = TriBool.TriBool_unknown;
}
@ObfuscatedName("u")
@ObfuscatedSignature(
signature = "(I)Z",
garbageValue = "471055582"
)
@Export("isFromIgnored")
final boolean isFromIgnored() {
if (this.isFromIgnored0 == TriBool.TriBool_unknown) {
this.fillIsFromIgnored();
}
return this.isFromIgnored0 == TriBool.TriBool_true;
}
@ObfuscatedName("j")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "206412484"
)
@Export("fillIsFromIgnored")
void fillIsFromIgnored() {
this.isFromIgnored0 = class218.friendSystem.ignoreList.contains(this.senderUsername) ? TriBool.TriBool_true : TriBool.TriBool_false;
}
@ObfuscatedName("v")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "361058639"
)
@Export("fillSenderUsername")
final void fillSenderUsername() {
if (this.sender != null) {
this.senderUsername = new Username(GrandExchangeEvents.method68(this.sender), class4.loginType);
} else {
this.senderUsername = null;
}
}
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "(Lkt;II)Z",
garbageValue = "-693352027"
)
@Export("updateExternalPlayer")
static boolean updateExternalPlayer(PacketBuffer var0, int var1) {
int var2 = var0.readBits(2);
int var3;
int var4;
int var7;
int var8;
int var9;
int var10;
if (var2 == 0) {
if (var0.readBits(1) != 0) {
updateExternalPlayer(var0, var1);
}
var3 = var0.readBits(13);
var4 = var0.readBits(13);
boolean var12 = var0.readBits(1) == 1;
if (var12) {
Players.Players_pendingUpdateIndices[++Players.Players_pendingUpdateCount - 1] = var1;
}
if (Client.players[var1] != null) {
throw new RuntimeException();
} else {
Player var6 = Client.players[var1] = new Player();
var6.index = var1;
if (Players.field1221[var1] != null) {
var6.read(Players.field1221[var1]);
}
var6.orientation = Players.Players_orientations[var1];
var6.targetIndex = Players.Players_targetIndices[var1];
var7 = Players.Players_regions[var1];
var8 = var7 >> 28;
var9 = var7 >> 14 & 255;
var10 = var7 & 255;
var6.pathTraversed[0] = Players.field1220[var1];
var6.plane = (byte)var8;
var6.resetPath((var9 << 13) + var3 - class4.baseX * 64, (var10 << 13) + var4 - ScriptEvent.baseY);
var6.field607 = false;
return true;
}
} else if (var2 == 1) {
var3 = var0.readBits(2);
var4 = Players.Players_regions[var1];
Players.Players_regions[var1] = (((var4 >> 28) + var3 & 3) << 28) + (var4 & 268435455);
return false;
} else {
int var5;
int var11;
if (var2 == 2) {
var3 = var0.readBits(5);
var4 = var3 >> 3;
var5 = var3 & 7;
var11 = Players.Players_regions[var1];
var7 = (var11 >> 28) + var4 & 3;
var8 = var11 >> 14 & 255;
var9 = var11 & 255;
if (var5 == 0) {
--var8;
--var9;
}
if (var5 == 1) {
--var9;
}
if (var5 == 2) {
++var8;
--var9;
}
if (var5 == 3) {
--var8;
}
if (var5 == 4) {
++var8;
}
if (var5 == 5) {
--var8;
++var9;
}
if (var5 == 6) {
++var9;
}
if (var5 == 7) {
++var8;
++var9;
}
Players.Players_regions[var1] = (var8 << 14) + var9 + (var7 << 28);
return false;
} else {
var3 = var0.readBits(18);
var4 = var3 >> 16;
var5 = var3 >> 8 & 255;
var11 = var3 & 255;
var7 = Players.Players_regions[var1];
var8 = (var7 >> 28) + var4 & 3;
var9 = var5 + (var7 >> 14) & 255;
var10 = var7 + var11 & 255;
Players.Players_regions[var1] = (var9 << 14) + var10 + (var8 << 28);
return false;
}
}
}
@ObfuscatedName("hq")
@ObfuscatedSignature(
signature = "(IIIIIIII)V",
garbageValue = "1478792847"
)
@Export("addPendingSpawnToScene")
static final void addPendingSpawnToScene(int var0, int var1, int var2, int var3, int var4, int var5, int var6) {
if (var2 >= 1 && var3 >= 1 && var2 <= 102 && var3 <= 102) {
if (Client.isLowDetail && var0 != MouseRecorder.plane) {
return;
}
long var7 = 0L;
boolean var9 = true;
boolean var10 = false;
boolean var11 = false;
if (var1 == 0) {
var7 = WorldMapIcon_1.scene.getBoundaryObjectTag(var0, var2, var3);
}
if (var1 == 1) {
var7 = WorldMapIcon_1.scene.getWallDecorationTag(var0, var2, var3);
}
if (var1 == 2) {
var7 = WorldMapIcon_1.scene.getGameObjectTag(var0, var2, var3);
}
if (var1 == 3) {
var7 = WorldMapIcon_1.scene.getFloorDecorationTag(var0, var2, var3);
}
int var12;
if (0L != var7) {
var12 = WorldMapIcon_1.scene.getObjectFlags(var0, var2, var3, var7);
int var39 = SecureRandomFuture.Entity_unpackID(var7);
int var40 = var12 & 31;
int var41 = var12 >> 6 & 3;
ObjectDefinition var13;
if (var1 == 0) {
WorldMapIcon_1.scene.removeBoundaryObject(var0, var2, var3);
var13 = WallDecoration.getObjectDefinition(var39);
if (var13.interactType != 0) {
Client.collisionMaps[var0].method3536(var2, var3, var40, var41, var13.boolean1);
}
}
if (var1 == 1) {
WorldMapIcon_1.scene.removeWallDecoration(var0, var2, var3);
}
if (var1 == 2) {
WorldMapIcon_1.scene.removeGameObject(var0, var2, var3);
var13 = WallDecoration.getObjectDefinition(var39);
if (var2 + var13.sizeX > 103 || var3 + var13.sizeX > 103 || var2 + var13.sizeY > 103 || var3 + var13.sizeY > 103) {
return;
}
if (var13.interactType != 0) {
Client.collisionMaps[var0].setFlagOffNonSquare(var2, var3, var13.sizeX, var13.sizeY, var41, var13.boolean1);
}
}
if (var1 == 3) {
WorldMapIcon_1.scene.removeFloorDecoration(var0, var2, var3);
var13 = WallDecoration.getObjectDefinition(var39);
if (var13.interactType == 1) {
Client.collisionMaps[var0].method3541(var2, var3);
}
}
}
if (var4 >= 0) {
var12 = var0;
if (var0 < 3 && (Tiles.Tiles_renderFlags[1][var2][var3] & 2) == 2) {
var12 = var0 + 1;
}
Scene var42 = WorldMapIcon_1.scene;
CollisionMap var14 = Client.collisionMaps[var0];
ObjectDefinition var15 = WallDecoration.getObjectDefinition(var4);
int var16;
int var17;
if (var5 != 1 && var5 != 3) {
var16 = var15.sizeX;
var17 = var15.sizeY;
} else {
var16 = var15.sizeY;
var17 = var15.sizeX;
}
int var18;
int var19;
if (var16 + var2 <= 104) {
var18 = (var16 >> 1) + var2;
var19 = var2 + (var16 + 1 >> 1);
} else {
var18 = var2;
var19 = var2 + 1;
}
int var20;
int var21;
if (var3 + var17 <= 104) {
var20 = var3 + (var17 >> 1);
var21 = var3 + (var17 + 1 >> 1);
} else {
var20 = var3;
var21 = var3 + 1;
}
int[][] var22 = Tiles.Tiles_heights[var12];
int var23 = var22[var18][var21] + var22[var18][var20] + var22[var19][var20] + var22[var19][var21] >> 2;
int var24 = (var2 << 7) + (var16 << 6);
int var25 = (var3 << 7) + (var17 << 6);
long var26 = WorldMapIcon_1.calculateTag(var2, var3, 2, var15.int1 == 0, var4);
int var28 = (var5 << 6) + var6;
if (var15.int3 == 1) {
var28 += 256;
}
Object var29;
if (var6 == 22) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(22, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 22, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newFloorDecoration(var0, var2, var3, var23, (Entity)var29, var26, var28);
if (var15.interactType == 1) {
var14.setBlockedByFloorDec(var2, var3);
}
} else if (var6 != 10 && var6 != 11) {
if (var6 >= 12) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(var6, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, var6, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.method3051(var0, var2, var3, var23, 1, 1, (Entity)var29, 0, var26, var28);
if (var15.interactType != 0) {
var14.addGameObject(var2, var3, var16, var17, var15.boolean1);
}
} else if (var6 == 0) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(0, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 0, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newBoundaryObject(var0, var2, var3, var23, (Entity)var29, (Entity)null, Tiles.field480[var5], 0, var26, var28);
if (var15.interactType != 0) {
var14.method3534(var2, var3, var6, var5, var15.boolean1);
}
} else if (var6 == 1) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(1, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 1, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newBoundaryObject(var0, var2, var3, var23, (Entity)var29, (Entity)null, Tiles.field481[var5], 0, var26, var28);
if (var15.interactType != 0) {
var14.method3534(var2, var3, var6, var5, var15.boolean1);
}
} else {
int var35;
if (var6 == 2) {
var35 = var5 + 1 & 3;
Object var30;
Object var31;
if (var15.animationId == -1 && var15.transforms == null) {
var30 = var15.getModel(2, var5 + 4, var22, var24, var23, var25);
var31 = var15.getModel(2, var35, var22, var24, var23, var25);
} else {
var30 = new DynamicObject(var4, 2, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null);
var31 = new DynamicObject(var4, 2, var35, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newBoundaryObject(var0, var2, var3, var23, (Entity)var30, (Entity)var31, Tiles.field480[var5], Tiles.field480[var35], var26, var28);
if (var15.interactType != 0) {
var14.method3534(var2, var3, var6, var5, var15.boolean1);
}
} else if (var6 == 3) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(3, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 3, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newBoundaryObject(var0, var2, var3, var23, (Entity)var29, (Entity)null, Tiles.field481[var5], 0, var26, var28);
if (var15.interactType != 0) {
var14.method3534(var2, var3, var6, var5, var15.boolean1);
}
} else if (var6 == 9) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(var6, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, var6, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.method3051(var0, var2, var3, var23, 1, 1, (Entity)var29, 0, var26, var28);
if (var15.interactType != 0) {
var14.addGameObject(var2, var3, var16, var17, var15.boolean1);
}
} else if (var6 == 4) {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(4, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 4, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newWallDecoration(var0, var2, var3, var23, (Entity)var29, (Entity)null, Tiles.field480[var5], 0, 0, 0, var26, var28);
} else {
Object var32;
long var36;
if (var6 == 5) {
var35 = 16;
var36 = var42.getBoundaryObjectTag(var0, var2, var3);
if (0L != var36) {
var35 = WallDecoration.getObjectDefinition(SecureRandomFuture.Entity_unpackID(var36)).int2;
}
if (var15.animationId == -1 && var15.transforms == null) {
var32 = var15.getModel(4, var5, var22, var24, var23, var25);
} else {
var32 = new DynamicObject(var4, 4, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)null, Tiles.field480[var5], 0, var35 * Tiles.field482[var5], var35 * Tiles.field487[var5], var26, var28);
} else if (var6 == 6) {
var35 = 8;
var36 = var42.getBoundaryObjectTag(var0, var2, var3);
if (var36 != 0L) {
var35 = WallDecoration.getObjectDefinition(SecureRandomFuture.Entity_unpackID(var36)).int2 / 2;
}
if (var15.animationId == -1 && var15.transforms == null) {
var32 = var15.getModel(4, var5 + 4, var22, var24, var23, var25);
} else {
var32 = new DynamicObject(var4, 4, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)null, 256, var5, var35 * Tiles.field484[var5], var35 * Tiles.field485[var5], var26, var28);
} else if (var6 == 7) {
int var38 = var5 + 2 & 3;
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(4, var38 + 4, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 4, var38 + 4, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newWallDecoration(var0, var2, var3, var23, (Entity)var29, (Entity)null, 256, var38, 0, 0, var26, var28);
} else if (var6 == 8) {
var35 = 8;
var36 = var42.getBoundaryObjectTag(var0, var2, var3);
if (0L != var36) {
var35 = WallDecoration.getObjectDefinition(SecureRandomFuture.Entity_unpackID(var36)).int2 / 2;
}
int var34 = var5 + 2 & 3;
Object var33;
if (var15.animationId == -1 && var15.transforms == null) {
var32 = var15.getModel(4, var5 + 4, var22, var24, var23, var25);
var33 = var15.getModel(4, var34 + 4, var22, var24, var23, var25);
} else {
var32 = new DynamicObject(var4, 4, var5 + 4, var12, var2, var3, var15.animationId, true, (Entity)null);
var33 = new DynamicObject(var4, 4, var34 + 4, var12, var2, var3, var15.animationId, true, (Entity)null);
}
var42.newWallDecoration(var0, var2, var3, var23, (Entity)var32, (Entity)var33, 256, var5, var35 * Tiles.field484[var5], var35 * Tiles.field485[var5], var26, var28);
}
}
}
} else {
if (var15.animationId == -1 && var15.transforms == null) {
var29 = var15.getModel(10, var5, var22, var24, var23, var25);
} else {
var29 = new DynamicObject(var4, 10, var5, var12, var2, var3, var15.animationId, true, (Entity)null);
}
if (var29 != null) {
var42.method3051(var0, var2, var3, var23, var16, var17, (Entity)var29, var6 == 11 ? 256 : 0, var26, var28);
}
if (var15.interactType != 0) {
var14.addGameObject(var2, var3, var16, var17, var15.boolean1);
}
}
}
}
}
}