Files
runelite/runescape-client/src/main/java/AbstractByteArrayCopier.java
Owain van Brakel 6485eb9bed project: Rev 182
2019-08-29 16:17:19 +02:00

226 lines
4.7 KiB
Java

import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("gl")
@Implements("AbstractByteArrayCopier")
public abstract class AbstractByteArrayCopier {
AbstractByteArrayCopier() {
}
@ObfuscatedName("i")
@ObfuscatedSignature(
signature = "(I)[B",
garbageValue = "-1040345200"
)
@Export("get")
abstract byte[] get();
@ObfuscatedName("k")
@ObfuscatedSignature(
signature = "([BI)V",
garbageValue = "38240743"
)
@Export("set")
abstract void set(byte[] var1);
@ObfuscatedName("gq")
@ObfuscatedSignature(
signature = "(B)V",
garbageValue = "53"
)
static void method3878() {
if (Client.combatTargetPlayerIndex >= 0 && Client.players[Client.combatTargetPlayerIndex] != null) {
class80.addPlayerToScene(Client.players[Client.combatTargetPlayerIndex], false);
}
}
@ObfuscatedName("jf")
@ObfuscatedSignature(
signature = "(Lhp;II)I",
garbageValue = "-706781687"
)
static final int method3868(Widget var0, int var1) {
if (var0.cs1Instructions != null && var1 < var0.cs1Instructions.length) {
try {
int[] var2 = var0.cs1Instructions[var1];
int var3 = 0;
int var4 = 0;
byte var5 = 0;
while (true) {
int var6 = var2[var4++];
int var7 = 0;
byte var8 = 0;
if (var6 == 0) {
return var3;
}
if (var6 == 1) {
var7 = Client.currentLevels[var2[var4++]];
}
if (var6 == 2) {
var7 = Client.levels[var2[var4++]];
}
if (var6 == 3) {
var7 = Client.experience[var2[var4++]];
}
int var9;
Widget var10;
int var11;
int var12;
if (var6 == 4) {
var9 = var2[var4++] << 16;
var9 += var2[var4++];
var10 = WorldMapElement.getWidget(var9);
var11 = var2[var4++];
if (var11 != -1 && (!WorldMapData_0.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) {
for (var12 = 0; var12 < var10.itemIds.length; ++var12) {
if (var11 + 1 == var10.itemIds[var12]) {
var7 += var10.itemQuantities[var12];
}
}
}
}
if (var6 == 5) {
var7 = Varps.Varps_main[var2[var4++]];
}
if (var6 == 6) {
var7 = Skills.Skills_experienceTable[Client.levels[var2[var4++]] - 1];
}
if (var6 == 7) {
var7 = Varps.Varps_main[var2[var4++]] * 100 / 46875;
}
if (var6 == 8) {
var7 = WorldMapIcon_1.localPlayer.combatLevel;
}
if (var6 == 9) {
for (var9 = 0; var9 < 25; ++var9) {
if (Skills.Skills_enabled[var9]) {
var7 += Client.levels[var9];
}
}
}
if (var6 == 10) {
var9 = var2[var4++] << 16;
var9 += var2[var4++];
var10 = WorldMapElement.getWidget(var9);
var11 = var2[var4++];
if (var11 != -1 && (!WorldMapData_0.ItemDefinition_get(var11).isMembersOnly || Client.isMembersWorld)) {
for (var12 = 0; var12 < var10.itemIds.length; ++var12) {
if (var11 + 1 == var10.itemIds[var12]) {
var7 = 999999999;
break;
}
}
}
}
if (var6 == 11) {
var7 = Client.runEnergy;
}
if (var6 == 12) {
var7 = Client.weight;
}
if (var6 == 13) {
var9 = Varps.Varps_main[var2[var4++]];
int var13 = var2[var4++];
var7 = (var9 & 1 << var13) != 0 ? 1 : 0;
}
if (var6 == 14) {
var9 = var2[var4++];
var7 = class208.getVarbit(var9);
}
if (var6 == 15) {
var8 = 1;
}
if (var6 == 16) {
var8 = 2;
}
if (var6 == 17) {
var8 = 3;
}
if (var6 == 18) {
var7 = PacketWriter.baseX * 64 + (WorldMapIcon_1.localPlayer.x >> 7);
}
if (var6 == 19) {
var7 = RouteStrategy.baseY * 64 + (WorldMapIcon_1.localPlayer.y >> 7);
}
if (var6 == 20) {
var7 = var2[var4++];
}
if (var8 == 0) {
if (var5 == 0) {
var3 += var7;
}
if (var5 == 1) {
var3 -= var7;
}
if (var5 == 2 && var7 != 0) {
var3 /= var7;
}
if (var5 == 3) {
var3 *= var7;
}
var5 = 0;
} else {
var5 = var8;
}
}
} catch (Exception var14) {
return -1;
}
} else {
return -2;
}
}
@ObfuscatedName("ky")
@ObfuscatedSignature(
signature = "(Lhp;I)Lhp;",
garbageValue = "-1890509802"
)
static Widget method3871(Widget var0) {
int var2 = ParamDefinition.getWidgetClickMask(var0);
int var1 = var2 >> 17 & 7;
int var3 = var1;
if (var1 == 0) {
return null;
} else {
for (int var4 = 0; var4 < var3; ++var4) {
var0 = WorldMapElement.getWidget(var0.parentId);
if (var0 == null) {
return null;
}
}
return var0;
}
}
}