project: rev 199
This commit is contained in:
@@ -1,22 +1,26 @@
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.Method;
|
||||
import net.runelite.mapping.Export;
|
||||
import net.runelite.mapping.Implements;
|
||||
import net.runelite.mapping.ObfuscatedName;
|
||||
import net.runelite.mapping.ObfuscatedSignature;
|
||||
import net.runelite.rs.Reflection;
|
||||
|
||||
@ObfuscatedName("ga")
|
||||
@ObfuscatedName("hd")
|
||||
@Implements("Frames")
|
||||
public class Frames extends DualNode {
|
||||
@ObfuscatedName("s")
|
||||
@ObfuscatedName("n")
|
||||
@ObfuscatedSignature(
|
||||
descriptor = "[Lgp;"
|
||||
descriptor = "[Lht;"
|
||||
)
|
||||
@Export("frames")
|
||||
Animation[] frames;
|
||||
|
||||
@ObfuscatedSignature(
|
||||
descriptor = "(Ljy;Ljy;IZ)V"
|
||||
descriptor = "(Lkk;Lkk;IZ)V",
|
||||
garbageValue = "0"
|
||||
)
|
||||
Frames(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) {
|
||||
public Frames(AbstractArchive var1, AbstractArchive var2, int var3, boolean var4) {
|
||||
NodeDeque var5 = new NodeDeque();
|
||||
int var6 = var1.getGroupFileCount(var3);
|
||||
this.frames = new Animation[var6];
|
||||
@@ -35,13 +39,7 @@ public class Frames extends DualNode {
|
||||
}
|
||||
|
||||
if (var10 == null) {
|
||||
byte[] var13;
|
||||
if (var4) {
|
||||
var13 = var2.getFile(0, var11);
|
||||
} else {
|
||||
var13 = var2.getFile(var11, 0);
|
||||
}
|
||||
|
||||
byte[] var13 = var2.getFile(var11, 0);
|
||||
var10 = new Skeleton(var11, var13);
|
||||
var5.addFirst(var10);
|
||||
}
|
||||
@@ -51,30 +49,137 @@ public class Frames extends DualNode {
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("t")
|
||||
@ObfuscatedName("n")
|
||||
@ObfuscatedSignature(
|
||||
descriptor = "(IB)Z",
|
||||
garbageValue = "-13"
|
||||
descriptor = "(II)Z",
|
||||
garbageValue = "1867948304"
|
||||
)
|
||||
@Export("hasAlphaTransform")
|
||||
public boolean hasAlphaTransform(int var1) {
|
||||
return this.frames[var1].hasAlphaTransform;
|
||||
}
|
||||
|
||||
@ObfuscatedName("t")
|
||||
static boolean method4174(long var0) {
|
||||
return class266.method4916(var0) == 2;
|
||||
@ObfuscatedName("c")
|
||||
@ObfuscatedSignature(
|
||||
descriptor = "(I)V",
|
||||
garbageValue = "-1581825393"
|
||||
)
|
||||
public static void method4334() {
|
||||
WorldMapRegion.WorldMapRegion_cachedSprites.demote(5);
|
||||
}
|
||||
|
||||
@ObfuscatedName("n")
|
||||
@ObfuscatedName("m")
|
||||
@ObfuscatedSignature(
|
||||
descriptor = "(II)V",
|
||||
garbageValue = "1644626137"
|
||||
descriptor = "(Lot;II)V",
|
||||
garbageValue = "1326986168"
|
||||
)
|
||||
static void method4169(int var0) {
|
||||
ItemContainer var1 = (ItemContainer)ItemContainer.itemContainers.get((long)var0);
|
||||
if (var1 != null) {
|
||||
var1.remove();
|
||||
@Export("readReflectionCheck")
|
||||
public static void readReflectionCheck(Buffer var0, int var1) {
|
||||
ReflectionCheck var2 = new ReflectionCheck();
|
||||
var2.size = var0.readUnsignedByte();
|
||||
var2.id = var0.readInt();
|
||||
var2.operations = new int[var2.size];
|
||||
var2.creationErrors = new int[var2.size];
|
||||
var2.fields = new Field[var2.size];
|
||||
var2.intReplaceValues = new int[var2.size];
|
||||
var2.methods = new Method[var2.size];
|
||||
var2.arguments = new byte[var2.size][][];
|
||||
|
||||
for (int var3 = 0; var3 < var2.size; ++var3) {
|
||||
try {
|
||||
int var4 = var0.readUnsignedByte();
|
||||
String var5;
|
||||
String var6;
|
||||
int var7;
|
||||
if (var4 != 0 && var4 != 1 && var4 != 2) {
|
||||
if (var4 == 3 || var4 == 4) {
|
||||
var5 = var0.readStringCp1252NullTerminated();
|
||||
var6 = var0.readStringCp1252NullTerminated();
|
||||
var7 = var0.readUnsignedByte();
|
||||
String[] var8 = new String[var7];
|
||||
|
||||
for (int var9 = 0; var9 < var7; ++var9) {
|
||||
var8[var9] = var0.readStringCp1252NullTerminated();
|
||||
}
|
||||
|
||||
String var20 = var0.readStringCp1252NullTerminated();
|
||||
byte[][] var10 = new byte[var7][];
|
||||
int var12;
|
||||
if (var4 == 3) {
|
||||
for (int var11 = 0; var11 < var7; ++var11) {
|
||||
var12 = var0.readInt();
|
||||
var10[var11] = new byte[var12];
|
||||
var0.readBytes(var10[var11], 0, var12);
|
||||
}
|
||||
}
|
||||
|
||||
var2.operations[var3] = var4;
|
||||
Class[] var21 = new Class[var7];
|
||||
|
||||
for (var12 = 0; var12 < var7; ++var12) {
|
||||
var21[var12] = World.loadClassFromDescriptor(var8[var12]);
|
||||
}
|
||||
|
||||
Class var22 = World.loadClassFromDescriptor(var20);
|
||||
if (World.loadClassFromDescriptor(var5).getClassLoader() == null) {
|
||||
throw new SecurityException();
|
||||
}
|
||||
|
||||
Method[] var13 = World.loadClassFromDescriptor(var5).getDeclaredMethods();
|
||||
Method[] var14 = var13;
|
||||
|
||||
for (int var15 = 0; var15 < var14.length; ++var15) {
|
||||
Method var16 = var14[var15];
|
||||
if (Reflection.getMethodName(var16).equals(var6)) {
|
||||
Class[] var17 = Reflection.getParameterTypes(var16);
|
||||
if (var21.length == var17.length) {
|
||||
boolean var18 = true;
|
||||
|
||||
for (int var19 = 0; var19 < var21.length; ++var19) {
|
||||
if (var21[var19] != var17[var19]) {
|
||||
var18 = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (var18 && var22 == var16.getReturnType()) {
|
||||
var2.methods[var3] = var16;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var2.arguments[var3] = var10;
|
||||
}
|
||||
} else {
|
||||
var5 = var0.readStringCp1252NullTerminated();
|
||||
var6 = var0.readStringCp1252NullTerminated();
|
||||
var7 = 0;
|
||||
if (var4 == 1) {
|
||||
var7 = var0.readInt();
|
||||
}
|
||||
|
||||
var2.operations[var3] = var4;
|
||||
var2.intReplaceValues[var3] = var7;
|
||||
if (World.loadClassFromDescriptor(var5).getClassLoader() == null) {
|
||||
throw new SecurityException();
|
||||
}
|
||||
|
||||
var2.fields[var3] = Reflection.findField(World.loadClassFromDescriptor(var5), var6);
|
||||
}
|
||||
} catch (ClassNotFoundException var24) {
|
||||
var2.creationErrors[var3] = -1;
|
||||
} catch (SecurityException var25) {
|
||||
var2.creationErrors[var3] = -2;
|
||||
} catch (NullPointerException var26) {
|
||||
var2.creationErrors[var3] = -3;
|
||||
} catch (Exception var27) {
|
||||
var2.creationErrors[var3] = -4;
|
||||
} catch (Throwable var28) {
|
||||
var2.creationErrors[var3] = -5;
|
||||
}
|
||||
}
|
||||
|
||||
class54.reflectionChecks.addFirst(var2);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user