218 lines
4.9 KiB
Java
218 lines
4.9 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;
|
|
import net.runelite.rs.ScriptOpcodes;
|
|
|
|
@ObfuscatedName("iw")
|
|
@Implements("FloorUnderlayDefinition")
|
|
public class FloorUnderlayDefinition extends DualNode {
|
|
@ObfuscatedName("h")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lib;"
|
|
)
|
|
@Export("FloorUnderlayDefinition_archive")
|
|
public static AbstractArchive FloorUnderlayDefinition_archive;
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
descriptor = "Lez;"
|
|
)
|
|
@Export("FloorUnderlayDefinition_cached")
|
|
static EvictingDualNodeHashTable FloorUnderlayDefinition_cached;
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedGetter(
|
|
intValue = -1640099513
|
|
)
|
|
@Export("rgb")
|
|
int rgb;
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedGetter(
|
|
intValue = 772769107
|
|
)
|
|
@Export("hue")
|
|
public int hue;
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedGetter(
|
|
intValue = 1277008429
|
|
)
|
|
@Export("saturation")
|
|
public int saturation;
|
|
@ObfuscatedName("j")
|
|
@ObfuscatedGetter(
|
|
intValue = 1129854273
|
|
)
|
|
@Export("lightness")
|
|
public int lightness;
|
|
@ObfuscatedName("n")
|
|
@ObfuscatedGetter(
|
|
intValue = 2072275111
|
|
)
|
|
@Export("hueMultiplier")
|
|
public int hueMultiplier;
|
|
|
|
static {
|
|
FloorUnderlayDefinition_cached = new EvictingDualNodeHashTable(64);
|
|
}
|
|
|
|
FloorUnderlayDefinition() {
|
|
this.rgb = 0;
|
|
}
|
|
|
|
@ObfuscatedName("v")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "1848989672"
|
|
)
|
|
@Export("postDecode")
|
|
void postDecode() {
|
|
this.setHsl(this.rgb);
|
|
}
|
|
|
|
@ObfuscatedName("x")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lkj;II)V",
|
|
garbageValue = "731438667"
|
|
)
|
|
@Export("decode")
|
|
void decode(Buffer var1, int var2) {
|
|
while (true) {
|
|
int var3 = var1.readUnsignedByte();
|
|
if (var3 == 0) {
|
|
return;
|
|
}
|
|
|
|
this.decodeNext(var1, var3, var2);
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(Lkj;IIB)V",
|
|
garbageValue = "5"
|
|
)
|
|
@Export("decodeNext")
|
|
void decodeNext(Buffer var1, int var2, int var3) {
|
|
if (var2 == 1) {
|
|
this.rgb = var1.readMedium();
|
|
}
|
|
|
|
}
|
|
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(II)V",
|
|
garbageValue = "1248052268"
|
|
)
|
|
@Export("setHsl")
|
|
void setHsl(int var1) {
|
|
double var2 = (double)(var1 >> 16 & 255) / 256.0D;
|
|
double var4 = (double)(var1 >> 8 & 255) / 256.0D;
|
|
double var6 = (double)(var1 & 255) / 256.0D;
|
|
double var8 = var2;
|
|
if (var4 < var2) {
|
|
var8 = var4;
|
|
}
|
|
|
|
if (var6 < var8) {
|
|
var8 = var6;
|
|
}
|
|
|
|
double var10 = var2;
|
|
if (var4 > var2) {
|
|
var10 = var4;
|
|
}
|
|
|
|
if (var6 > var10) {
|
|
var10 = var6;
|
|
}
|
|
|
|
double var12 = 0.0D;
|
|
double var14 = 0.0D;
|
|
double var16 = (var8 + var10) / 2.0D;
|
|
if (var8 != var10) {
|
|
if (var16 < 0.5D) {
|
|
var14 = (var10 - var8) / (var8 + var10);
|
|
}
|
|
|
|
if (var16 >= 0.5D) {
|
|
var14 = (var10 - var8) / (2.0D - var10 - var8);
|
|
}
|
|
|
|
if (var2 == var10) {
|
|
var12 = (var4 - var6) / (var10 - var8);
|
|
} else if (var10 == var4) {
|
|
var12 = 2.0D + (var6 - var2) / (var10 - var8);
|
|
} else if (var6 == var10) {
|
|
var12 = 4.0D + (var2 - var4) / (var10 - var8);
|
|
}
|
|
}
|
|
|
|
var12 /= 6.0D;
|
|
this.saturation = (int)(var14 * 256.0D);
|
|
this.lightness = (int)(256.0D * var16);
|
|
if (this.saturation < 0) {
|
|
this.saturation = 0;
|
|
} else if (this.saturation > 255) {
|
|
this.saturation = 255;
|
|
}
|
|
|
|
if (this.lightness < 0) {
|
|
this.lightness = 0;
|
|
} else if (this.lightness > 255) {
|
|
this.lightness = 255;
|
|
}
|
|
|
|
if (var16 > 0.5D) {
|
|
this.hueMultiplier = (int)(var14 * (1.0D - var16) * 512.0D);
|
|
} else {
|
|
this.hueMultiplier = (int)(var16 * var14 * 512.0D);
|
|
}
|
|
|
|
if (this.hueMultiplier < 1) {
|
|
this.hueMultiplier = 1;
|
|
}
|
|
|
|
this.hue = (int)((double)this.hueMultiplier * var12);
|
|
}
|
|
|
|
@ObfuscatedName("ah")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(ILcs;ZI)I",
|
|
garbageValue = "-170727251"
|
|
)
|
|
static int method4460(int var0, Script var1, boolean var2) {
|
|
int var3;
|
|
if (var0 == ScriptOpcodes.CAM_FORCEANGLE) {
|
|
VarcInt.Interpreter_intStackSize -= 2;
|
|
var3 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize];
|
|
int var4 = Interpreter.Interpreter_intStack[VarcInt.Interpreter_intStackSize + 1];
|
|
if (!Client.isCameraLocked) {
|
|
Client.camAngleX = var3;
|
|
Client.camAngleY = var4;
|
|
}
|
|
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETANGLE_XA) {
|
|
Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camAngleX;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETANGLE_YA) {
|
|
Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camAngleY;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_SETFOLLOWHEIGHT) {
|
|
var3 = Interpreter.Interpreter_intStack[--VarcInt.Interpreter_intStackSize];
|
|
if (var3 < 0) {
|
|
var3 = 0;
|
|
}
|
|
|
|
Client.camFollowHeight = var3;
|
|
return 1;
|
|
} else if (var0 == ScriptOpcodes.CAM_GETFOLLOWHEIGHT) {
|
|
Interpreter.Interpreter_intStack[++VarcInt.Interpreter_intStackSize - 1] = Client.camFollowHeight;
|
|
return 1;
|
|
} else {
|
|
return 2;
|
|
}
|
|
}
|
|
}
|