Files
runelite/runescape-client/src/main/java/HealthBar.java
Owain van Brakel e6be88fbeb project: rev 199
2021-08-25 13:49:53 +02:00

121 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("cv")
@Implements("HealthBar")
public class HealthBar extends Node {
@ObfuscatedName("dz")
@ObfuscatedSignature(
descriptor = "Led;"
)
@Export("js5SocketTask")
static Task js5SocketTask;
@ObfuscatedName("m")
@ObfuscatedSignature(
descriptor = "Lft;"
)
@Export("definition")
HealthBarDefinition definition;
@ObfuscatedName("k")
@ObfuscatedSignature(
descriptor = "Lkz;"
)
@Export("updates")
IterableNodeDeque updates;
@ObfuscatedSignature(
descriptor = "(Lft;)V"
)
HealthBar(HealthBarDefinition var1) {
this.updates = new IterableNodeDeque();
this.definition = var1;
}
@ObfuscatedName("n")
@ObfuscatedSignature(
descriptor = "(IIIII)V",
garbageValue = "-1738206630"
)
@Export("put")
void put(int var1, int var2, int var3, int var4) {
HealthBarUpdate var5 = null;
int var6 = 0;
for (HealthBarUpdate var7 = (HealthBarUpdate)this.updates.last(); var7 != null; var7 = (HealthBarUpdate)this.updates.previous()) {
++var6;
if (var7.cycle == var1) {
var7.set(var1, var2, var3, var4);
return;
}
if (var7.cycle <= var1) {
var5 = var7;
}
}
if (var5 == null) {
if (var6 < 4) {
this.updates.addLast(new HealthBarUpdate(var1, var2, var3, var4));
}
} else {
IterableNodeDeque.IterableNodeDeque_addBefore(new HealthBarUpdate(var1, var2, var3, var4), var5);
if (var6 >= 4) {
this.updates.last().remove();
}
}
}
@ObfuscatedName("c")
@ObfuscatedSignature(
descriptor = "(II)Lcc;",
garbageValue = "1300102488"
)
@Export("get")
HealthBarUpdate get(int var1) {
HealthBarUpdate var2 = (HealthBarUpdate)this.updates.last();
if (var2 != null && var2.cycle <= var1) {
for (HealthBarUpdate var3 = (HealthBarUpdate)this.updates.previous(); var3 != null && var3.cycle <= var1; var3 = (HealthBarUpdate)this.updates.previous()) {
var2.remove();
var2 = var3;
}
if (this.definition.int5 + var2.cycleOffset + var2.cycle > var1) {
return var2;
} else {
var2.remove();
return null;
}
} else {
return null;
}
}
@ObfuscatedName("m")
@ObfuscatedSignature(
descriptor = "(I)Z",
garbageValue = "-1972373384"
)
@Export("isEmpty")
boolean isEmpty() {
return this.updates.method5517();
}
@ObfuscatedName("m")
@ObfuscatedSignature(
descriptor = "(II)I",
garbageValue = "-952267390"
)
public static int method2205(int var0) {
var0 = (var0 & 1431655765) + (var0 >>> 1 & 1431655765);
var0 = (var0 >>> 2 & 858993459) + (var0 & 858993459);
var0 = var0 + (var0 >>> 4) & 252645135;
var0 += var0 >>> 8;
var0 += var0 >>> 16;
return var0 & 255;
}
}