319 lines
9.1 KiB
Java
319 lines
9.1 KiB
Java
import net.runelite.mapping.Export;
|
|
import net.runelite.mapping.Implements;
|
|
import net.runelite.mapping.ObfuscatedGetter;
|
|
import net.runelite.mapping.ObfuscatedName;
|
|
import net.runelite.mapping.ObfuscatedSignature;
|
|
|
|
@ObfuscatedName("cm")
|
|
@Implements("FriendSystem")
|
|
public class FriendSystem {
|
|
@ObfuscatedName("u")
|
|
@ObfuscatedGetter(
|
|
intValue = -831766123
|
|
)
|
|
static int field1065;
|
|
@ObfuscatedName("ay")
|
|
@ObfuscatedGetter(
|
|
intValue = 1062926745
|
|
)
|
|
static int field1071;
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lmu;"
|
|
)
|
|
@Export("loginType")
|
|
final LoginType loginType;
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lko;"
|
|
)
|
|
@Export("friendsList")
|
|
public final FriendsList friendsList;
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lkf;"
|
|
)
|
|
@Export("ignoreList")
|
|
public final IgnoreList ignoreList;
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedGetter(
|
|
intValue = 584921379
|
|
)
|
|
int field1069;
|
|
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lmu;)V"
|
|
)
|
|
FriendSystem(LoginType var1) {
|
|
this.field1069 = 0; // L: 23
|
|
this.loginType = var1; // L: 26
|
|
this.friendsList = new FriendsList(var1); // L: 27
|
|
this.ignoreList = new IgnoreList(var1); // L: 28
|
|
} // L: 29
|
|
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "-413073532"
|
|
)
|
|
boolean method1939() {
|
|
return this.field1069 == 2; // L: 32
|
|
}
|
|
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "321244010"
|
|
)
|
|
final void method1919() {
|
|
this.field1069 = 1; // L: 36
|
|
} // L: 37
|
|
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lkj;II)V",
|
|
garbageValue = "-1406977446"
|
|
)
|
|
@Export("readUpdate")
|
|
final void readUpdate(Buffer var1, int var2) {
|
|
this.friendsList.read(var1, var2); // L: 40
|
|
this.field1069 = 2; // L: 41
|
|
|
|
for (int var3 = 0; var3 < Players.Players_count; ++var3) { // L: 43
|
|
Player var4 = Client.players[Players.Players_indices[var3]]; // L: 44
|
|
var4.clearIsFriend(); // L: 45
|
|
}
|
|
|
|
TileItem.method2189(); // L: 47
|
|
if (WorldMapArea.clanChat != null) {
|
|
WorldMapArea.clanChat.clearFriends(); // L: 49
|
|
}
|
|
|
|
} // L: 52
|
|
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "502952777"
|
|
)
|
|
@Export("processFriendUpdates")
|
|
final void processFriendUpdates() {
|
|
for (FriendLoginUpdate var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.last(); var1 != null; var1 = (FriendLoginUpdate)this.friendsList.friendLoginUpdates.previous()) { // L: 55
|
|
if ((long)var1.field3680 < class298.currentTimeMillis() / 1000L - 5L) { // L: 56
|
|
if (var1.world > 0) {
|
|
class234.addGameMessage(5, "", var1.username + " has logged in."); // L: 57
|
|
}
|
|
|
|
if (var1.world == 0) { // L: 58
|
|
class234.addGameMessage(5, "", var1.username + " has logged out.");
|
|
}
|
|
|
|
var1.remove(); // L: 59
|
|
}
|
|
}
|
|
|
|
} // L: 62
|
|
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "-2051278822"
|
|
)
|
|
@Export("clear")
|
|
final void clear() {
|
|
this.field1069 = 0; // L: 65
|
|
this.friendsList.clear(); // L: 66
|
|
this.ignoreList.clear(); // L: 67
|
|
} // L: 68
|
|
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lki;ZB)Z",
|
|
garbageValue = "66"
|
|
)
|
|
@Export("isFriended")
|
|
final boolean isFriended(Username var1, boolean var2) {
|
|
if (var1 == null) { // L: 71
|
|
return false;
|
|
} else if (var1.equals(PlayerAppearance.localPlayer.username)) { // L: 72
|
|
return true;
|
|
} else {
|
|
return this.friendsList.isFriended(var1, var2); // L: 73
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lki;I)Z",
|
|
garbageValue = "-1147819947"
|
|
)
|
|
@Export("isIgnored")
|
|
final boolean isIgnored(Username var1) {
|
|
if (var1 == null) { // L: 78
|
|
return false;
|
|
} else {
|
|
return this.ignoreList.contains(var1); // L: 79
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Ljava/lang/String;I)V",
|
|
garbageValue = "-262000374"
|
|
)
|
|
@Export("addFriend")
|
|
final void addFriend(String var1) {
|
|
if (var1 != null) { // L: 84
|
|
Username var2 = new Username(var1, this.loginType); // L: 85
|
|
if (var2.hasCleanName()) { // L: 86
|
|
if (this.friendsListIsFull()) { // L: 87
|
|
Calendar.method3985(); // L: 88
|
|
} else if (PlayerAppearance.localPlayer.username.equals(var2)) { // L: 91
|
|
ServerPacket.method3668(); // L: 92
|
|
} else if (this.isFriended(var2, false)) { // L: 95
|
|
class219.method4003(var1); // L: 96
|
|
} else if (this.isIgnored(var2)) { // L: 99
|
|
StringBuilder var10000 = new StringBuilder();
|
|
Object var10001 = null; // L: 101
|
|
var10000 = var10000.append("Please remove ").append(var1);
|
|
var10001 = null;
|
|
String var3 = var10000.append(" from your ignore list first").toString();
|
|
class234.addGameMessage(30, "", var3); // L: 103
|
|
} else {
|
|
FloorDecoration.method2932(var1); // L: 108
|
|
}
|
|
}
|
|
}
|
|
} // L: 89 93 97 106 109
|
|
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "1820755315"
|
|
)
|
|
@Export("friendsListIsFull")
|
|
final boolean friendsListIsFull() {
|
|
return this.friendsList.isFull() || this.friendsList.getSize() >= 200 && Client.field766 != 1; // L: 141
|
|
}
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Ljava/lang/String;I)V",
|
|
garbageValue = "-1480172940"
|
|
)
|
|
@Export("addIgnore")
|
|
final void addIgnore(String var1) {
|
|
if (var1 != null) { // L: 148
|
|
Username var2 = new Username(var1, this.loginType); // L: 149
|
|
if (var2.hasCleanName()) { // L: 150
|
|
StringBuilder var10000;
|
|
String var3;
|
|
if (this.canAddIgnore()) { // L: 151
|
|
var10000 = null; // L: 153
|
|
var3 = "Your ignore list is full. Max of 100 for free users, and 400 for members";
|
|
class234.addGameMessage(30, "", var3); // L: 155
|
|
} else if (PlayerAppearance.localPlayer.username.equals(var2)) { // L: 160
|
|
var10000 = null; // L: 162
|
|
var3 = "You can't add yourself to your own ignore list";
|
|
class234.addGameMessage(30, "", var3); // L: 164
|
|
} else if (this.isIgnored(var2)) { // L: 169
|
|
var10000 = (new StringBuilder()).append(var1); // L: 171
|
|
Object var10001 = null;
|
|
var3 = var10000.append(" is already on your ignore list").toString();
|
|
class234.addGameMessage(30, "", var3); // L: 173
|
|
} else if (this.isFriended(var2, false)) { // L: 178
|
|
GrandExchangeOfferTotalQuantityComparator.method165(var1); // L: 179
|
|
} else {
|
|
Skeleton.method3155(var1); // L: 182
|
|
}
|
|
}
|
|
}
|
|
} // L: 158 167 176 180 183
|
|
|
|
@ObfuscatedName("y")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)Z",
|
|
garbageValue = "-1353584964"
|
|
)
|
|
@Export("canAddIgnore")
|
|
final boolean canAddIgnore() {
|
|
return this.ignoreList.isFull() || this.ignoreList.getSize() >= 100 && Client.field766 != 1; // L: 201
|
|
}
|
|
|
|
@ObfuscatedName("r")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Ljava/lang/String;I)V",
|
|
garbageValue = "92133268"
|
|
)
|
|
@Export("removeFriend")
|
|
final void removeFriend(String var1) {
|
|
if (var1 != null) { // L: 208
|
|
Username var2 = new Username(var1, this.loginType); // L: 209
|
|
if (var2.hasCleanName()) { // L: 210
|
|
if (this.friendsList.removeByUsername(var2)) { // L: 211
|
|
Client.field879 = Client.cycleCntr; // L: 213
|
|
PacketBufferNode var3 = ItemContainer.getPacketBufferNode(ClientPacket.field2290, Client.packetWriter.isaacCipher); // L: 216
|
|
var3.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var1)); // L: 217
|
|
var3.packetBuffer.writeStringCp1252NullTerminated(var1); // L: 218
|
|
Client.packetWriter.addNode(var3); // L: 219
|
|
}
|
|
|
|
for (int var5 = 0; var5 < Players.Players_count; ++var5) { // L: 222
|
|
Player var4 = Client.players[Players.Players_indices[var5]]; // L: 223
|
|
var4.clearIsFriend(); // L: 224
|
|
}
|
|
|
|
TileItem.method2189(); // L: 226
|
|
if (WorldMapArea.clanChat != null) { // L: 227
|
|
WorldMapArea.clanChat.clearFriends(); // L: 228
|
|
}
|
|
|
|
}
|
|
}
|
|
} // L: 231
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Ljava/lang/String;B)V",
|
|
garbageValue = "40"
|
|
)
|
|
@Export("removeIgnore")
|
|
final void removeIgnore(String var1) {
|
|
if (var1 != null) { // L: 234
|
|
Username var2 = new Username(var1, this.loginType); // L: 235
|
|
if (var2.hasCleanName()) { // L: 236
|
|
if (this.ignoreList.removeByUsername(var2)) { // L: 237
|
|
Client.field879 = Client.cycleCntr; // L: 239
|
|
PacketBufferNode var3 = ItemContainer.getPacketBufferNode(ClientPacket.field2318, Client.packetWriter.isaacCipher); // L: 242
|
|
var3.packetBuffer.writeByte(FloorDecoration.stringCp1252NullTerminatedByteSize(var1)); // L: 243
|
|
var3.packetBuffer.writeStringCp1252NullTerminated(var1); // L: 244
|
|
Client.packetWriter.addNode(var3); // L: 245
|
|
}
|
|
|
|
class9.FriendSystem_invalidateIgnoreds(); // L: 247
|
|
}
|
|
}
|
|
} // L: 248
|
|
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lki;I)Z",
|
|
garbageValue = "-1294359433"
|
|
)
|
|
@Export("isFriendAndHasWorld")
|
|
final boolean isFriendAndHasWorld(Username var1) {
|
|
Friend var2 = (Friend)this.friendsList.getByUsername(var1); // L: 260
|
|
return var2 != null && var2.hasWorld(); // L: 261
|
|
}
|
|
|
|
@ObfuscatedName("h")
|
|
static double method1972(double var0) {
|
|
return Math.exp(var0 * -var0 / 2.0D) / Math.sqrt(6.283185307179586D); // L: 9
|
|
}
|
|
|
|
@ObfuscatedName("v")
|
|
public static boolean method1943(long var0) {
|
|
return 0L != var0 && !AbstractWorldMapIcon.method657(var0); // L: 48
|
|
}
|
|
}
|