import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("lq") @Implements("ClanMate") public class ClanMate extends Buddy { @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "Lmq;" ) @Export("friend") TriBool friend; @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "Lmq;" ) @Export("ignored") TriBool ignored; ClanMate() { this.friend = TriBool.TriBool_unknown; this.ignored = TriBool.TriBool_unknown; } @ObfuscatedName("n") @ObfuscatedSignature( descriptor = "(I)V", garbageValue = "1897016674" ) @Export("clearIsFriend") void clearIsFriend() { this.friend = TriBool.TriBool_unknown; } @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(I)Z", garbageValue = "-336350427" ) @Export("isFriend") public final boolean isFriend() { if (this.friend == TriBool.TriBool_unknown) { this.fillIsFriend(); } return this.friend == TriBool.TriBool_true; } @ObfuscatedName("k") @ObfuscatedSignature( descriptor = "(I)V", garbageValue = "-398895759" ) @Export("fillIsFriend") void fillIsFriend() { this.friend = class20.friendSystem.friendsList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } @ObfuscatedName("o") @ObfuscatedSignature( descriptor = "(I)V", garbageValue = "1635891604" ) @Export("clearIsIgnored") void clearIsIgnored() { this.ignored = TriBool.TriBool_unknown; } @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(B)Z", garbageValue = "-1" ) @Export("isIgnored") public final boolean isIgnored() { if (this.ignored == TriBool.TriBool_unknown) { this.fillIsIgnored(); } return this.ignored == TriBool.TriBool_true; } @ObfuscatedName("y") @ObfuscatedSignature( descriptor = "(I)V", garbageValue = "2025540605" ) @Export("fillIsIgnored") void fillIsIgnored() { this.ignored = class20.friendSystem.ignoreList.contains(super.username) ? TriBool.TriBool_true : TriBool.TriBool_false; } @ObfuscatedName("gr") @ObfuscatedSignature( descriptor = "(ZB)V", garbageValue = "118" ) @Export("addNpcsToScene") static final void addNpcsToScene(boolean var0) { for (int var1 = 0; var1 < Client.npcCount; ++var1) { NPC var2 = Client.npcs[Client.npcIndices[var1]]; if (var2 != null && var2.isVisible() && var2.definition.isVisible == var0 && var2.definition.transformIsVisible()) { int var3 = var2.x >> 7; int var4 = var2.y >> 7; if (var3 >= 0 && var3 < 104 && var4 >= 0 && var4 < 104) { if (var2.field1137 == 1 && (var2.x & 127) == 64 && (var2.y & 127) == 64) { if (Client.tileLastDrawnActor[var3][var4] == Client.viewportDrawCount) { continue; } Client.tileLastDrawnActor[var3][var4] = Client.viewportDrawCount; } long var5 = ClanSettings.calculateTag(0, 0, 1, !var2.definition.isInteractable, Client.npcIndices[var1]); var2.playerCycle = Client.cycle; CollisionMap.scene.drawEntity(class391.Client_plane, var2.x, var2.y, GraphicsObject.getTileHeight(var2.field1137 * 64 - 64 + var2.x, var2.field1137 * 64 - 64 + var2.y, class391.Client_plane), var2.field1137 * 64 - 64 + 60, var2, var2.rotation, var5, var2.isWalking); } } } } }