rt4-client/client/src/main/java/rt4/Model.java

386 lines
16 KiB
Java

package rt4;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalClass;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
@OriginalClass("client!ak")
public abstract class Model extends Entity {
@OriginalMember(owner = "client!vc", name = "V", descriptor = "[J")
public static final long[] aLongArray11 = new long[1000];
@OriginalMember(owner = "client!ak", name = "s", descriptor = "Z")
public boolean aBoolean303 = false;
@OriginalMember(owner = "client!ak", name = "a", descriptor = "([[III)I")
public static int method4556(@OriginalArg(0) int[][] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) {
@Pc(3) int local3 = arg1 >> 7;
@Pc(7) int local7 = arg2 >> 7;
if (local3 < 0 || local7 < 0 || local3 >= arg0.length || local7 >= arg0[0].length) {
return 0;
}
@Pc(27) int local27 = arg1 & 0x7F;
@Pc(31) int local31 = arg2 & 0x7F;
@Pc(53) int local53 = arg0[local3][local7] * (128 - local27) + arg0[local3 + 1][local7] * local27 >> 7;
@Pc(79) int local79 = arg0[local3][local7 + 1] * (128 - local27) + arg0[local3 + 1][local7 + 1] * local27 >> 7;
return local53 * (128 - local31) + local79 * local31 >> 7;
}
@OriginalMember(owner = "client!ak", name = "c", descriptor = "()I")
public abstract int method4550();
@OriginalMember(owner = "client!ak", name = "b", descriptor = "()I")
public abstract int getMinY();
@OriginalMember(owner = "client!ak", name = "d", descriptor = "()Z")
protected abstract boolean method4551();
@OriginalMember(owner = "client!ak", name = "e", descriptor = "()V")
public abstract void method4552();
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(Lclient!jm;Lclient!ne;Lclient!ne;II[ZZZI[I)V")
private void method4553(@OriginalArg(0) AnimBase arg0, @OriginalArg(1) AnimFrame arg1, @OriginalArg(2) AnimFrame arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) boolean[] arg5, @OriginalArg(6) boolean arg6, @OriginalArg(7) boolean arg7, @OriginalArg(8) int arg8, @OriginalArg(9) int[] arg9) {
@Pc(5) int local5;
if (arg2 == null || arg3 == 0) {
for (local5 = 0; local5 < arg1.length; local5++) {
@Pc(14) short local14 = arg1.indices[local5];
if (arg5 == null || arg5[local14] == arg6 || arg0.types[local14] == 0) {
@Pc(32) short local32 = arg1.prevOriginIndices[local5];
@Pc(42) int local42;
if (local32 != -1) {
local42 = arg8 & arg0.parts[local32];
if (local42 == 65535) {
this.method4569(0, arg0.bones[local32], 0, 0, 0, arg7);
} else {
this.method4577(0, arg0.bones[local32], 0, 0, 0, arg7, local42, arg9);
}
}
local42 = arg8 & arg0.parts[local14];
if (local42 == 65535) {
this.method4569(arg0.types[local14], arg0.bones[local14], arg1.x[local5], arg1.y[local5], arg1.z[local5], arg7);
} else {
this.method4577(arg0.types[local14], arg0.bones[local14], arg1.x[local5], arg1.y[local5], arg1.z[local5], arg7, local42, arg9);
}
}
}
return;
}
local5 = 0;
@Pc(136) int local136 = 0;
for (@Pc(138) int local138 = 0; local138 < arg0.transforms; local138++) {
@Pc(144) boolean local144 = false;
if (local5 < arg1.length && arg1.indices[local5] == local138) {
local144 = true;
}
@Pc(158) boolean local158 = false;
if (local136 < arg2.length && arg2.indices[local136] == local138) {
local158 = true;
}
if (local144 || local158) {
if (arg5 == null || arg5[local138] == arg6 || arg0.types[local138] == 0) {
@Pc(196) short local196 = 0;
@Pc(201) int local201 = arg0.types[local138];
if (local201 == 3) {
local196 = 128;
}
@Pc(213) short local213;
@Pc(218) short local218;
@Pc(223) short local223;
@Pc(228) short local228;
@Pc(233) byte local233;
if (local144) {
local213 = arg1.x[local5];
local218 = arg1.y[local5];
local223 = arg1.z[local5];
local228 = arg1.prevOriginIndices[local5];
local233 = arg1.flags[local5];
local5++;
} else {
local213 = local196;
local218 = local196;
local223 = local196;
local228 = -1;
local233 = 0;
}
@Pc(252) short local252;
@Pc(257) short local257;
@Pc(262) short local262;
@Pc(267) short local267;
@Pc(272) byte local272;
if (local158) {
local252 = arg2.x[local136];
local257 = arg2.y[local136];
local262 = arg2.z[local136];
local267 = arg2.prevOriginIndices[local136];
local272 = arg2.flags[local136];
local136++;
} else {
local252 = local196;
local257 = local196;
local262 = local196;
local267 = -1;
local272 = 0;
}
@Pc(294) int local294;
@Pc(296) int local296;
@Pc(298) int local298;
@Pc(308) int local308;
if ((local233 & 0x2) != 0 || (local272 & 0x1) != 0) {
local294 = local213;
local296 = local218;
local298 = local223;
} else if (local201 == 2) {
local308 = local252 - local213 & 0x7FF;
@Pc(314) int local314 = local257 - local218 & 0x7FF;
@Pc(320) int local320 = local262 - local223 & 0x7FF;
if (local308 >= 1024) {
local308 -= 2048;
}
if (local314 >= 1024) {
local314 -= 2048;
}
if (local320 >= 1024) {
local320 -= 2048;
}
local294 = local213 + local308 * arg3 / arg4 & 0x7FF;
local296 = local218 + local314 * arg3 / arg4 & 0x7FF;
local298 = local223 + local320 * arg3 / arg4 & 0x7FF;
} else if (local201 == 7) {
local308 = local252 - local213 & 0x3F;
if (local308 >= 32) {
local308 -= 64;
}
local294 = local213 + local308 * arg3 / arg4 & 0x3F;
local296 = local218 + (local257 - local218) * arg3 / arg4;
local298 = local223 + (local262 - local223) * arg3 / arg4;
} else {
local294 = local213 + (local252 - local213) * arg3 / arg4;
local296 = local218 + (local257 - local218) * arg3 / arg4;
local298 = local223 + (local262 - local223) * arg3 / arg4;
}
if (local228 != -1) {
local308 = arg8 & arg0.parts[local228];
if (local308 == 65535) {
this.method4569(0, arg0.bones[local228], 0, 0, 0, arg7);
} else {
this.method4577(0, arg0.bones[local228], 0, 0, 0, arg7, local308, arg9);
}
} else if (local267 != -1) {
local308 = arg8 & arg0.parts[local267];
if (local308 == 65535) {
this.method4569(0, arg0.bones[local267], 0, 0, 0, arg7);
} else {
this.method4577(0, arg0.bones[local267], 0, 0, 0, arg7, local308, arg9);
}
}
local308 = arg8 & arg0.parts[local138];
if (local308 == 65535) {
this.method4569(local201, arg0.bones[local138], local294, local296, local298, arg7);
} else {
this.method4577(local201, arg0.bones[local138], local294, local296, local298, arg7, local308, arg9);
}
} else {
if (local144) {
local5++;
}
if (local158) {
local136++;
}
}
}
}
}
@OriginalMember(owner = "client!ak", name = "b", descriptor = "(I)V")
public abstract void method4554(@OriginalArg(0) int arg0);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(Lclient!cl;I)V")
public final void method4555(@OriginalArg(0) AnimFrameset arg0, @OriginalArg(1) int arg1) {
if (arg1 == -1 || !this.method4551()) {
return;
}
@Pc(12) AnimFrame local12 = arg0.frames[arg1];
@Pc(15) AnimBase local15 = local12.base;
for (@Pc(17) int local17 = 0; local17 < local12.length; local17++) {
@Pc(26) short local26 = local12.indices[local17];
if (local15.shadow[local26]) {
if (local12.prevOriginIndices[local17] != -1) {
this.method4567(0, 0, 0, 0);
}
this.method4567(local15.types[local26], local12.x[local17], local12.y[local17], local12.z[local17]);
}
}
this.method4557();
}
@OriginalMember(owner = "client!ak", name = "f", descriptor = "()V")
protected abstract void method4557();
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(Lclient!cl;ILclient!cl;IIIZ)V")
public final void method4558(@OriginalArg(0) AnimFrameset arg0, @OriginalArg(1) int arg1, @OriginalArg(2) AnimFrameset arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) boolean arg6) {
if (arg1 == -1 || !this.method4551()) {
return;
}
@Pc(12) AnimFrame local12 = arg0.frames[arg1];
@Pc(15) AnimBase local15 = local12.base;
@Pc(17) AnimFrame local17 = null;
if (arg2 != null) {
local17 = arg2.frames[arg3];
if (local17.base != local15) {
local17 = null;
}
}
this.method4553(local15, local12, local17, arg4, arg5, null, false, arg6, 65535, null);
this.method4557();
}
@OriginalMember(owner = "client!ak", name = "b", descriptor = "(III)V")
public abstract void resize(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(ZZZ)Lclient!ak;")
public abstract Model method4560(@OriginalArg(0) boolean arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) boolean arg2);
@OriginalMember(owner = "client!ak", name = "g", descriptor = "()I")
public abstract int method4561();
@OriginalMember(owner = "client!ak", name = "h", descriptor = "()I")
public abstract int method4562();
@OriginalMember(owner = "client!ak", name = "i", descriptor = "()V")
public abstract void method4563();
@OriginalMember(owner = "client!ak", name = "c", descriptor = "(I)V")
public abstract void rotateZ(@OriginalArg(0) int arg0);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(Lclient!cl;ILclient!cl;IIIIZ[I)V")
public final void method4565(@OriginalArg(0) AnimFrameset arg0, @OriginalArg(1) int arg1, @OriginalArg(2) AnimFrameset arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6, @OriginalArg(7) boolean arg7, @OriginalArg(8) int[] arg8) {
if (arg1 == -1 || !this.method4551()) {
return;
}
@Pc(12) AnimFrame local12 = arg0.frames[arg1];
@Pc(15) AnimBase local15 = local12.base;
@Pc(17) AnimFrame local17 = null;
if (arg2 != null) {
local17 = arg2.frames[arg3];
if (local17.base != local15) {
local17 = null;
}
}
this.method4553(local15, local12, local17, arg4, arg5, null, false, arg7, arg6, arg8);
this.method4557();
}
@OriginalMember(owner = "client!ak", name = "j", descriptor = "()I")
public abstract int method4566();
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(IIII)V")
protected abstract void method4567(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3);
@OriginalMember(owner = "client!ak", name = "b", descriptor = "(ZZZ)Lclient!ak;")
public abstract Model method4568(@OriginalArg(0) boolean arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) boolean arg2);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(I[IIIIZ)V")
protected abstract void method4569(@OriginalArg(0) int arg0, @OriginalArg(1) int[] arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) boolean arg5);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(Lclient!cl;ILclient!cl;IIILclient!cl;ILclient!cl;III[ZZ)V")
public final void method4570(@OriginalArg(0) AnimFrameset arg0, @OriginalArg(1) int arg1, @OriginalArg(2) AnimFrameset arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) AnimFrameset arg6, @OriginalArg(7) int arg7, @OriginalArg(8) AnimFrameset arg8, @OriginalArg(9) int arg9, @OriginalArg(10) int arg10, @OriginalArg(11) int arg11, @OriginalArg(12) boolean[] arg12, @OriginalArg(13) boolean arg13) {
if (arg1 == -1) {
return;
}
if (arg12 == null || arg7 == -1) {
this.method4558(arg0, arg1, arg2, arg3, arg4, arg5, arg13);
} else if (this.method4551()) {
@Pc(27) AnimFrame local27 = arg0.frames[arg1];
@Pc(30) AnimBase local30 = local27.base;
@Pc(32) AnimFrame local32 = null;
if (arg2 != null) {
local32 = arg2.frames[arg3];
if (local32.base != local30) {
local32 = null;
}
}
@Pc(50) AnimFrame local50 = arg6.frames[arg7];
@Pc(52) AnimFrame local52 = null;
if (arg8 != null) {
local52 = arg8.frames[arg9];
if (local52.base != local30) {
local52 = null;
}
}
this.method4553(local30, local27, local32, arg4, arg5, arg12, false, arg13, 65535, null);
this.method4569(0, new int[0], 0, 0, 0, arg13);
this.method4553(local30, local50, local52, arg10, arg11, arg12, true, arg13, 65535, null);
this.method4557();
}
}
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(IIIIIIIJ)V")
public abstract void setCamera(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) long arg6);
@OriginalMember(owner = "client!ak", name = "c", descriptor = "(ZZZ)Lclient!ak;")
public abstract Model method4572(@OriginalArg(0) boolean arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) boolean arg2);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "([[IIIIII)V")
protected final void method4573(@OriginalArg(0) int[][] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5) {
@Pc(10) int local10 = -arg4 / 2;
@Pc(15) int local15 = -arg5 / 2;
@Pc(24) int local24 = method4556(arg0, arg1 + local10, arg3 + local15);
@Pc(28) int local28 = arg4 / 2;
@Pc(33) int local33 = -arg5 / 2;
@Pc(42) int local42 = method4556(arg0, arg1 + local28, arg3 + local33);
@Pc(47) int local47 = -arg4 / 2;
@Pc(51) int local51 = arg5 / 2;
@Pc(60) int local60 = method4556(arg0, arg1 + local47, arg3 + local51);
@Pc(64) int local64 = arg4 / 2;
@Pc(68) int local68 = arg5 / 2;
@Pc(77) int local77 = method4556(arg0, arg1 + local64, arg3 + local68);
@Pc(84) int local84 = local24 < local42 ? local24 : local42;
@Pc(91) int local91 = local60 < local77 ? local60 : local77;
@Pc(98) int local98 = local42 < local77 ? local42 : local77;
@Pc(105) int local105 = local24 < local60 ? local24 : local60;
if (arg5 != 0) {
@Pc(120) int local120 = (int) (Math.atan2((double) (local84 - local91), (double) arg5) * 325.95D) & 0x7FF;
if (local120 != 0) {
this.rotateX(local120);
}
}
if (arg4 != 0) {
@Pc(140) int local140 = (int) (Math.atan2((double) (local105 - local98), (double) arg4) * 325.95D) & 0x7FF;
if (local140 != 0) {
this.rotateZ(local140);
}
}
@Pc(149) int local149 = local24 + local77;
if (local42 + local60 < local149) {
local149 = local42 + local60;
}
local149 = (local149 >> 1) - arg2;
if (local149 != 0) {
this.translate(0, local149, 0);
}
}
@OriginalMember(owner = "client!ak", name = "d", descriptor = "(I)V")
public abstract void rotateX(@OriginalArg(0) int arg0);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(IIIII)V")
@Override
public final void method4545(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
}
@OriginalMember(owner = "client!ak", name = "c", descriptor = "(III)V")
public abstract void translate(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2);
@OriginalMember(owner = "client!ak", name = "k", descriptor = "()I")
public abstract int method4576();
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(IIIIIIIIJILclient!ga;)V")
public abstract void render(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) int arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int arg7, @OriginalArg(8) long arg8, @OriginalArg(9) int arg9, @OriginalArg(10) ParticleSystem arg10);
@OriginalMember(owner = "client!ak", name = "a", descriptor = "(I[IIIIZI[I)V")
protected abstract void method4577(@OriginalArg(0) int arg0, @OriginalArg(1) int[] arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4, @OriginalArg(5) boolean arg5, @OriginalArg(6) int arg6, @OriginalArg(7) int[] arg7);
@OriginalMember(owner = "client!ak", name = "l", descriptor = "()V")
public abstract void method4578();
}