276 lines
6.8 KiB
Java
276 lines
6.8 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("il")
|
|
@Implements("HealthBarDefinition")
|
|
public class HealthBarDefinition extends DualNode {
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedSignature(
|
|
signature = "Lhq;"
|
|
)
|
|
@Export("HealthBarDefinition_archive")
|
|
public static AbstractArchive HealthBarDefinition_archive;
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
signature = "Lhq;"
|
|
)
|
|
@Export("HitSplatDefinition_spritesArchive")
|
|
public static AbstractArchive HitSplatDefinition_spritesArchive;
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
signature = "Leb;"
|
|
)
|
|
@Export("HealthBarDefinition_cached")
|
|
public static EvictingDualNodeHashTable HealthBarDefinition_cached;
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
signature = "Leb;"
|
|
)
|
|
@Export("HealthBarDefinition_cachedSprites")
|
|
public static EvictingDualNodeHashTable HealthBarDefinition_cachedSprites;
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedGetter(
|
|
intValue = 1067342333
|
|
)
|
|
public int field3265;
|
|
@ObfuscatedName("o")
|
|
@ObfuscatedGetter(
|
|
intValue = 2032079417
|
|
)
|
|
@Export("int1")
|
|
public int int1;
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedGetter(
|
|
intValue = -1420994465
|
|
)
|
|
@Export("int2")
|
|
public int int2;
|
|
@ObfuscatedName("d")
|
|
@ObfuscatedGetter(
|
|
intValue = -601170319
|
|
)
|
|
@Export("int3")
|
|
public int int3;
|
|
@ObfuscatedName("m")
|
|
@ObfuscatedGetter(
|
|
intValue = 1370340653
|
|
)
|
|
@Export("int4")
|
|
public int int4;
|
|
@ObfuscatedName("p")
|
|
@ObfuscatedGetter(
|
|
intValue = -197026089
|
|
)
|
|
@Export("int5")
|
|
public int int5;
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedGetter(
|
|
intValue = -376766097
|
|
)
|
|
@Export("frontSpriteID")
|
|
int frontSpriteID;
|
|
@ObfuscatedName("k")
|
|
@ObfuscatedGetter(
|
|
intValue = 1409027365
|
|
)
|
|
@Export("backSpriteID")
|
|
int backSpriteID;
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedGetter(
|
|
intValue = 1180776485
|
|
)
|
|
@Export("width")
|
|
public int width;
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedGetter(
|
|
intValue = -975829671
|
|
)
|
|
@Export("widthPadding")
|
|
public int widthPadding;
|
|
|
|
static {
|
|
HealthBarDefinition_cached = new EvictingDualNodeHashTable(64);
|
|
HealthBarDefinition_cachedSprites = new EvictingDualNodeHashTable(64);
|
|
}
|
|
|
|
public HealthBarDefinition() {
|
|
this.int1 = 255;
|
|
this.int2 = 255;
|
|
this.int3 = -1;
|
|
this.int4 = 1;
|
|
this.int5 = 70;
|
|
this.frontSpriteID = -1;
|
|
this.backSpriteID = -1;
|
|
this.width = 30;
|
|
this.widthPadding = 0;
|
|
}
|
|
|
|
@ObfuscatedName("a")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkc;I)V",
|
|
garbageValue = "-276948452"
|
|
)
|
|
@Export("decode")
|
|
public void decode(Buffer var1) {
|
|
while (true) {
|
|
int var2 = var1.readUnsignedByte();
|
|
if (var2 == 0) {
|
|
return;
|
|
}
|
|
|
|
this.decodeNext(var1, var2);
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkc;II)V",
|
|
garbageValue = "431816555"
|
|
)
|
|
@Export("decodeNext")
|
|
void decodeNext(Buffer var1, int var2) {
|
|
if (var2 == 1) {
|
|
var1.readUnsignedShort();
|
|
} else if (var2 == 2) {
|
|
this.int1 = var1.readUnsignedByte();
|
|
} else if (var2 == 3) {
|
|
this.int2 = var1.readUnsignedByte();
|
|
} else if (var2 == 4) {
|
|
this.int3 = 0;
|
|
} else if (var2 == 5) {
|
|
this.int5 = var1.readUnsignedShort();
|
|
} else if (var2 == 6) {
|
|
var1.readUnsignedByte();
|
|
} else if (var2 == 7) {
|
|
this.frontSpriteID = var1.method5638();
|
|
} else if (var2 == 8) {
|
|
this.backSpriteID = var1.method5638();
|
|
} else if (var2 == 11) {
|
|
this.int3 = var1.readUnsignedShort();
|
|
} else if (var2 == 14) {
|
|
this.width = var1.readUnsignedByte();
|
|
} else if (var2 == 15) {
|
|
this.widthPadding = var1.readUnsignedByte();
|
|
}
|
|
|
|
}
|
|
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Llx;",
|
|
garbageValue = "-907904185"
|
|
)
|
|
@Export("getFrontSprite")
|
|
public Sprite getFrontSprite() {
|
|
if (this.frontSpriteID < 0) {
|
|
return null;
|
|
} else {
|
|
Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.frontSpriteID);
|
|
if (var1 != null) {
|
|
return var1;
|
|
} else {
|
|
var1 = MenuAction.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.frontSpriteID, 0);
|
|
if (var1 != null) {
|
|
HealthBarDefinition_cachedSprites.put(var1, (long)this.frontSpriteID);
|
|
}
|
|
|
|
return var1;
|
|
}
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("q")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)Llx;",
|
|
garbageValue = "1192801770"
|
|
)
|
|
@Export("getBackSprite")
|
|
public Sprite getBackSprite() {
|
|
if (this.backSpriteID < 0) {
|
|
return null;
|
|
} else {
|
|
Sprite var1 = (Sprite)HealthBarDefinition_cachedSprites.get((long)this.backSpriteID);
|
|
if (var1 != null) {
|
|
return var1;
|
|
} else {
|
|
var1 = MenuAction.SpriteBuffer_getSprite(HitSplatDefinition_spritesArchive, this.backSpriteID, 0);
|
|
if (var1 != null) {
|
|
HealthBarDefinition_cachedSprites.put(var1, (long)this.backSpriteID);
|
|
}
|
|
|
|
return var1;
|
|
}
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("ka")
|
|
@ObfuscatedSignature(
|
|
signature = "([Lhi;IB)V",
|
|
garbageValue = "-5"
|
|
)
|
|
@Export("drawModelComponents")
|
|
static final void drawModelComponents(Widget[] var0, int var1) {
|
|
for (int var2 = 0; var2 < var0.length; ++var2) {
|
|
Widget var3 = var0[var2];
|
|
if (var3 != null && var3.parentId == var1 && (!var3.isIf3 || !WorldMapManager.isComponentHidden(var3))) {
|
|
if (var3.type == 0) {
|
|
if (!var3.isIf3 && WorldMapManager.isComponentHidden(var3) && var3 != ChatChannel.mousedOverWidgetIf1) {
|
|
continue;
|
|
}
|
|
|
|
drawModelComponents(var0, var3.id);
|
|
if (var3.children != null) {
|
|
drawModelComponents(var3.children, var3.id);
|
|
}
|
|
|
|
InterfaceParent var4 = (InterfaceParent)Client.interfaceParents.get((long)var3.id);
|
|
if (var4 != null) {
|
|
AbstractWorldMapData.method326(var4.group);
|
|
}
|
|
}
|
|
|
|
if (var3.type == 6) {
|
|
int var5;
|
|
if (var3.sequenceId != -1 || var3.sequenceId2 != -1) {
|
|
boolean var7 = SecureRandomCallable.runCs1(var3);
|
|
if (var7) {
|
|
var5 = var3.sequenceId2;
|
|
} else {
|
|
var5 = var3.sequenceId;
|
|
}
|
|
|
|
if (var5 != -1) {
|
|
SequenceDefinition var6 = PlayerType.SequenceDefinition_get(var5);
|
|
|
|
for (var3.modelFrameCycle += Client.field693; var3.modelFrameCycle > var6.frameLengths[var3.modelFrame]; GrandExchangeOfferAgeComparator.invalidateWidget(var3)) {
|
|
var3.modelFrameCycle -= var6.frameLengths[var3.modelFrame];
|
|
++var3.modelFrame;
|
|
if (var3.modelFrame >= var6.frameIds.length) {
|
|
var3.modelFrame -= var6.frameCount;
|
|
if (var3.modelFrame < 0 || var3.modelFrame >= var6.frameIds.length) {
|
|
var3.modelFrame = 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (var3.field2604 != 0 && !var3.isIf3) {
|
|
int var8 = var3.field2604 >> 16;
|
|
var5 = var3.field2604 << 16 >> 16;
|
|
var8 *= Client.field693;
|
|
var5 *= Client.field693;
|
|
var3.modelAngleX = var8 + var3.modelAngleX & 2047;
|
|
var3.modelAngleY = var5 + var3.modelAngleY & 2047;
|
|
GrandExchangeOfferAgeComparator.invalidateWidget(var3);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|