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

99 lines
2.7 KiB
Java

import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("eh")
@Implements("UserComparator9")
public class UserComparator9 extends AbstractUserComparator {
@ObfuscatedName("s")
@ObfuscatedSignature(
signature = "Lhy;"
)
static Widget field1941;
@ObfuscatedName("k")
public static String field1940;
@ObfuscatedName("c")
@Export("reversed")
final boolean reversed;
public UserComparator9(boolean var1) {
this.reversed = var1;
}
@ObfuscatedName("c")
@ObfuscatedSignature(
signature = "(Lje;Lje;I)I",
garbageValue = "1325435162"
)
@Export("compareBuddy")
int compareBuddy(Buddy var1, Buddy var2) {
if (Client.worldId == var1.world && var2.world == Client.worldId) {
return this.reversed ? var1.getUsername().compareToTyped(var2.getUsername()) : var2.getUsername().compareToTyped(var1.getUsername());
} else {
return this.compareUser(var1, var2);
}
}
public int compare(Object var1, Object var2) {
return this.compareBuddy((Buddy)var1, (Buddy)var2);
}
@ObfuscatedName("x")
@ObfuscatedSignature(
signature = "([Ljava/lang/String;[SIIB)V",
garbageValue = "1"
)
@Export("sortItemsByName")
static void sortItemsByName(String[] var0, short[] var1, int var2, int var3) {
if (var2 < var3) {
int var4 = (var3 + var2) / 2;
int var5 = var2;
String var6 = var0[var4];
var0[var4] = var0[var3];
var0[var3] = var6;
short var7 = var1[var4];
var1[var4] = var1[var3];
var1[var3] = var7;
for (int var8 = var2; var8 < var3; ++var8) {
if (var6 == null || var0[var8] != null && var0[var8].compareTo(var6) < (var8 & 1)) {
String var9 = var0[var8];
var0[var8] = var0[var5];
var0[var5] = var9;
short var10 = var1[var8];
var1[var8] = var1[var5];
var1[var5++] = var10;
}
}
var0[var3] = var0[var5];
var0[var5] = var6;
var1[var3] = var1[var5];
var1[var5] = var7;
sortItemsByName(var0, var1, var2, var5 - 1);
sortItemsByName(var0, var1, var5 + 1, var3);
}
}
@ObfuscatedName("t")
@ObfuscatedSignature(
signature = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V",
garbageValue = "-2074784616"
)
@Export("addChatMessage")
static void addChatMessage(int var0, String var1, String var2, String var3) {
ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0);
if (var4 == null) {
var4 = new ChatChannel();
Messages.Messages_channels.put(var0, var4);
}
Message var5 = var4.addMessage(var0, var1, var2, var3);
Messages.Messages_hashTable.put(var5, (long)var5.count);
Messages.Messages_queue.add(var5);
Client.chatCycle = Client.cycleCntr;
}
}