Files
runelite/runescape-client/src/main/java/KitDefinition.java
Lucwousin 11f3b74687 RS-Client: Refactoring (also gradle compiler args) (#1236)
* gradle: compiler args for mixins/rs-client

* rs-client: yes

* rs-client: no
2019-08-02 21:01:00 +01:00

336 lines
8.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("im")
@Implements("KitDefinition")
public class KitDefinition extends DualNode {
@ObfuscatedName("q")
@ObfuscatedSignature(
signature = "Lhp;"
)
@Export("KitDefinition_archive")
static AbstractArchive KitDefinition_archive;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = -2099754999
)
@Export("KitDefinition_fileCount")
public static int KitDefinition_fileCount;
@ObfuscatedName("p")
@ObfuscatedSignature(
signature = "Lel;"
)
@Export("KitDefinition_cached")
public static EvictingDualNodeHashTable KitDefinition_cached;
@ObfuscatedName("k")
@ObfuscatedGetter(
intValue = 603181695
)
@Export("bodypartID")
public int bodypartID;
@ObfuscatedName("l")
@Export("models2")
int[] models2;
@ObfuscatedName("b")
@Export("recolorFrom")
short[] recolorFrom;
@ObfuscatedName("i")
@Export("recolorTo")
short[] recolorTo;
@ObfuscatedName("c")
@Export("retextureFrom")
short[] retextureFrom;
@ObfuscatedName("f")
@Export("retextureTo")
short[] retextureTo;
@ObfuscatedName("m")
@Export("models")
int[] models;
@ObfuscatedName("u")
@Export("nonSelectable")
public boolean nonSelectable;
static {
KitDefinition_cached = new EvictingDualNodeHashTable(64);
}
KitDefinition() {
this.bodypartID = -1;
this.models = new int[]{-1, -1, -1, -1, -1};
this.nonSelectable = false;
}
@ObfuscatedName("e")
@ObfuscatedSignature(
signature = "(Lkf;I)V",
garbageValue = "517161236"
)
@Export("decode")
void decode(Buffer var1) {
while (true) {
int var2 = var1.readUnsignedByte();
if (var2 == 0) {
return;
}
this.decodeNext(var1, var2);
}
}
@ObfuscatedName("p")
@ObfuscatedSignature(
signature = "(Lkf;II)V",
garbageValue = "-1946344058"
)
@Export("decodeNext")
void decodeNext(Buffer var1, int var2) {
if (var2 == 1) {
this.bodypartID = var1.readUnsignedByte();
} else {
int var3;
int var4;
if (var2 == 2) {
var3 = var1.readUnsignedByte();
this.models2 = new int[var3];
for (var4 = 0; var4 < var3; ++var4) {
this.models2[var4] = var1.readUnsignedShort();
}
} else if (var2 == 3) {
this.nonSelectable = true;
} else if (var2 == 40) {
var3 = var1.readUnsignedByte();
this.recolorFrom = new short[var3];
this.recolorTo = new short[var3];
for (var4 = 0; var4 < var3; ++var4) {
this.recolorFrom[var4] = (short)var1.readUnsignedShort();
this.recolorTo[var4] = (short)var1.readUnsignedShort();
}
} else if (var2 == 41) {
var3 = var1.readUnsignedByte();
this.retextureFrom = new short[var3];
this.retextureTo = new short[var3];
for (var4 = 0; var4 < var3; ++var4) {
this.retextureFrom[var4] = (short)var1.readUnsignedShort();
this.retextureTo[var4] = (short)var1.readUnsignedShort();
}
} else if (var2 >= 60 && var2 < 70) {
this.models[var2 - 60] = var1.readUnsignedShort();
}
}
}
@ObfuscatedName("k")
@ObfuscatedSignature(
signature = "(I)Z",
garbageValue = "-1807295410"
)
@Export("ready")
public boolean ready() {
if (this.models2 == null) {
return true;
}
boolean var1 = true;
for (int var2 = 0; var2 < this.models2.length; ++var2) {
if (!class288.KitDefinition_modelsArchive.tryLoadFile(this.models2[var2], 0)) {
var1 = false;
}
}
return var1;
}
@ObfuscatedName("l")
@ObfuscatedSignature(
signature = "(I)Lds;",
garbageValue = "-1043358409"
)
@Export("getModelData")
public ModelData getModelData() {
if (this.models2 == null) {
return null;
}
ModelData[] var1 = new ModelData[this.models2.length];
for (int var2 = 0; var2 < this.models2.length; ++var2) {
var1[var2] = ModelData.method2769(class288.KitDefinition_modelsArchive, this.models2[var2], 0);
}
ModelData var4;
if (var1.length == 1) {
var4 = var1[0];
} else {
var4 = new ModelData(var1, var1.length);
}
int var3;
if (this.recolorFrom != null) {
for (var3 = 0; var3 < this.recolorFrom.length; ++var3) {
var4.recolor(this.recolorFrom[var3], this.recolorTo[var3]);
}
}
if (this.retextureFrom != null) {
for (var3 = 0; var3 < this.retextureFrom.length; ++var3) {
var4.retexture(this.retextureFrom[var3], this.retextureTo[var3]);
}
}
return var4;
}
@ObfuscatedName("b")
@ObfuscatedSignature(
signature = "(I)Z",
garbageValue = "1439364369"
)
public boolean method4445() {
boolean var1 = true;
for (int var2 = 0; var2 < 5; ++var2) {
if (this.models[var2] != -1 && !class288.KitDefinition_modelsArchive.tryLoadFile(this.models[var2], 0)) {
var1 = false;
}
}
return var1;
}
@ObfuscatedName("i")
@ObfuscatedSignature(
signature = "(B)Lds;",
garbageValue = "-27"
)
public ModelData method4441() {
ModelData[] var1 = new ModelData[5];
int var2 = 0;
for (int var3 = 0; var3 < 5; ++var3) {
if (this.models[var3] != -1) {
var1[var2++] = ModelData.method2769(class288.KitDefinition_modelsArchive, this.models[var3], 0);
}
}
ModelData var5 = new ModelData(var1, var2);
int var4;
if (this.recolorFrom != null) {
for (var4 = 0; var4 < this.recolorFrom.length; ++var4) {
var5.recolor(this.recolorFrom[var4], this.recolorTo[var4]);
}
}
if (this.retextureFrom != null) {
for (var4 = 0; var4 < this.retextureFrom.length; ++var4) {
var5.retexture(this.retextureFrom[var4], this.retextureTo[var4]);
}
}
return var5;
}
@ObfuscatedName("fn")
@ObfuscatedSignature(
signature = "(I)V",
garbageValue = "1752614077"
)
static final void method4461() {
for (int var0 = 0; var0 < Client.soundEffectCount; ++var0) {
int var10002 = Client.queuedSoundEffectDelays[var0]--;
if (Client.queuedSoundEffectDelays[var0] >= -10) {
SoundEffect var9 = Client.soundEffects[var0];
if (var9 == null) {
Object var10000 = null;
var9 = SoundEffect.readSoundEffect(class13.archive4, Client.soundEffectIds[var0], 0);
if (var9 == null) {
continue;
}
int[] var13 = Client.queuedSoundEffectDelays;
var13[var0] += var9.calculateDelay();
Client.soundEffects[var0] = var9;
}
if (Client.queuedSoundEffectDelays[var0] >= 0) {
continue;
}
int var2;
if (Client.soundLocations[var0] != 0) {
int var3 = (Client.soundLocations[var0] & 255) * 128;
int var4 = Client.soundLocations[var0] >> 16 & 255;
int var5 = var4 * 128 + 64 - Client.localPlayer.x;
if (var5 < 0) {
var5 = -var5;
}
int var6 = Client.soundLocations[var0] >> 8 & 255;
int var7 = var6 * 128 + 64 - Client.localPlayer.y;
if (var7 < 0) {
var7 = -var7;
}
int var8 = var5 + var7 - 128;
if (var8 > var3) {
Client.queuedSoundEffectDelays[var0] = -100;
continue;
}
if (var8 < 0) {
var8 = 0;
}
var2 = (var3 - var8) * Client.field892 / var3;
} else {
var2 = Client.soundEffectVolume;
}
if (var2 > 0) {
RawSound var10 = var9.toRawSound().resample(AttackOption.decimator);
RawPcmStream var11 = RawPcmStream.createRawPcmStream(var10, 100, var2);
var11.setNumLoops(Client.queuedSoundEffectLoops[var0] - 1);
SecureRandomCallable.pcmStreamMixer.addSubStream(var11);
}
Client.queuedSoundEffectDelays[var0] = -100;
} else {
--Client.soundEffectCount;
for (int var1 = var0; var1 < Client.soundEffectCount; ++var1) {
Client.soundEffectIds[var1] = Client.soundEffectIds[var1 + 1];
Client.soundEffects[var1] = Client.soundEffects[var1 + 1];
Client.queuedSoundEffectLoops[var1] = Client.queuedSoundEffectLoops[var1 + 1];
Client.queuedSoundEffectDelays[var1] = Client.queuedSoundEffectDelays[var1 + 1];
Client.soundLocations[var1] = Client.soundLocations[var1 + 1];
}
--var0;
}
}
if (!Client.field699) {
return;
}
boolean var12;
if (class197.field2402 != 0) {
var12 = true;
} else {
var12 = Interpreter.midiPcmStream.isReady();
}
if (!var12) {
if (Client.field911 != 0 && Client.field889 != -1) {
class169.method3503(WorldMapRegion.archive6, Client.field889, 0, Client.field911, false);
}
Client.field699 = false;
}
}
}