82 lines
1.7 KiB
Java
82 lines
1.7 KiB
Java
import java.security.SecureRandom;
|
|
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("cl")
|
|
@Implements("ChatChannel")
|
|
public class ChatChannel {
|
|
@ObfuscatedName("eh")
|
|
@Export("secureRandom")
|
|
static SecureRandom secureRandom;
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "[Lbr;"
|
|
)
|
|
@Export("messages")
|
|
Message[] messages;
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedGetter(
|
|
intValue = 1880348079
|
|
)
|
|
@Export("count")
|
|
int count;
|
|
|
|
ChatChannel() {
|
|
this.messages = new Message[100];
|
|
}
|
|
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;B)Lbr;",
|
|
garbageValue = "-1"
|
|
)
|
|
@Export("addMessage")
|
|
Message addMessage(int var1, String var2, String var3, String var4) {
|
|
Message var5 = this.messages[99];
|
|
|
|
for (int var6 = this.count; var6 > 0; --var6) {
|
|
if (var6 != 100) {
|
|
this.messages[var6] = this.messages[var6 - 1];
|
|
}
|
|
}
|
|
|
|
if (var5 == null) {
|
|
var5 = new Message(var1, var2, var4, var3);
|
|
} else {
|
|
var5.remove();
|
|
var5.removeDual();
|
|
var5.set(var1, var2, var4, var3);
|
|
}
|
|
|
|
this.messages[0] = var5;
|
|
if (this.count < 100) {
|
|
++this.count;
|
|
}
|
|
|
|
return var5;
|
|
}
|
|
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(II)Lbr;",
|
|
garbageValue = "-317582349"
|
|
)
|
|
@Export("getMessage")
|
|
Message getMessage(int var1) {
|
|
return var1 >= 0 && var1 < this.count ? this.messages[var1] : null;
|
|
}
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)I",
|
|
garbageValue = "-1472365930"
|
|
)
|
|
@Export("size")
|
|
int size() {
|
|
return this.count;
|
|
}
|
|
}
|