mirror of
https://gitlab.com/2009scape/rt4-client.git
synced 2025-12-18 04:20:21 -07:00
Moved some more methods to utility classes
This commit is contained in:
parent
ad45cb829b
commit
4c73508f1f
25 changed files with 817 additions and 805 deletions
|
|
@ -233,58 +233,58 @@ public final class ArrayUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([III)V")
|
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([III)V")
|
||||||
public static void clear(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2) {
|
public static void clear(@OriginalArg(0) int[] dest, @OriginalArg(1) int off, @OriginalArg(2) int length) {
|
||||||
@Pc(5) int local5 = arg2 - 7;
|
@Pc(5) int len = length - 7;
|
||||||
while (arg1 < local5) {
|
while (off < len) {
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
}
|
}
|
||||||
local5 += 7;
|
len += 7;
|
||||||
while (arg1 < local5) {
|
while (off < len) {
|
||||||
arg0[arg1++] = 0;
|
dest[off++] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!nk", name = "a", descriptor = "(Z[J[I)V")
|
@OriginalMember(owner = "client!nk", name = "a", descriptor = "(Z[J[I)V")
|
||||||
public static void sort(@OriginalArg(1) long[] arg0, @OriginalArg(2) int[] arg1) {
|
public static void sort(@OriginalArg(1) long[] arg0, @OriginalArg(2) int[] arg1) {
|
||||||
method436(arg0, 0, arg0.length - 1, arg1);
|
sort(arg0, 0, arg0.length - 1, arg1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!gj", name = "a", descriptor = "([JII[II)V")
|
@OriginalMember(owner = "client!gj", name = "a", descriptor = "([JII[II)V")
|
||||||
public static void method436(@OriginalArg(0) long[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int[] arg3) {
|
public static void sort(@OriginalArg(0) long[] keys, @OriginalArg(1) int lo, @OriginalArg(2) int hi, @OriginalArg(3) int[] values) {
|
||||||
if (arg1 >= arg2) {
|
if (lo >= hi) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@Pc(20) int local20 = arg1;
|
@Pc(20) int i = lo;
|
||||||
@Pc(26) int local26 = (arg2 + arg1) / 2;
|
@Pc(26) int mid = (hi + lo) / 2;
|
||||||
@Pc(30) long local30 = arg0[local26];
|
@Pc(30) long pivotKey = keys[mid];
|
||||||
arg0[local26] = arg0[arg2];
|
keys[mid] = keys[hi];
|
||||||
arg0[arg2] = local30;
|
keys[hi] = pivotKey;
|
||||||
@Pc(44) int local44 = arg3[local26];
|
@Pc(44) int pivotValue = values[mid];
|
||||||
arg3[local26] = arg3[arg2];
|
values[mid] = values[hi];
|
||||||
arg3[arg2] = local44;
|
values[hi] = pivotValue;
|
||||||
for (@Pc(56) int local56 = arg1; local56 < arg2; local56++) {
|
for (@Pc(56) int j = lo; j < hi; j++) {
|
||||||
if (arg0[local56] < local30 + (long) (local56 & 0x1)) {
|
if (keys[j] < pivotKey + (long) (j & 0x1)) {
|
||||||
@Pc(76) long local76 = arg0[local56];
|
@Pc(76) long key = keys[j];
|
||||||
arg0[local56] = arg0[local20];
|
keys[j] = keys[i];
|
||||||
arg0[local20] = local76;
|
keys[i] = key;
|
||||||
@Pc(90) int local90 = arg3[local56];
|
@Pc(90) int value = values[j];
|
||||||
arg3[local56] = arg3[local20];
|
values[j] = values[i];
|
||||||
arg3[local20++] = local90;
|
values[i++] = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
arg0[arg2] = arg0[local20];
|
keys[hi] = keys[i];
|
||||||
arg0[local20] = local30;
|
keys[i] = pivotKey;
|
||||||
arg3[arg2] = arg3[local20];
|
values[hi] = values[i];
|
||||||
arg3[local20] = local44;
|
values[i] = pivotValue;
|
||||||
method436(arg0, arg1, local20 - 1, arg3);
|
sort(keys, lo, i - 1, values);
|
||||||
method436(arg0, local20 + 1, arg2, arg3);
|
sort(keys, i + 1, hi, values);
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ja", name = "a", descriptor = "([II)[I")
|
@OriginalMember(owner = "client!ja", name = "a", descriptor = "([II)[I")
|
||||||
|
|
@ -351,4 +351,107 @@ public final class ArrayUtils {
|
||||||
arg0[arg1] = arg3;
|
arg0[arg1] = arg3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ec", name = "a", descriptor = "([Ljava/lang/Object;I[III)V")
|
||||||
|
public static void sort(@OriginalArg(0) Object[] values, @OriginalArg(1) int hi, @OriginalArg(2) int[] keys, @OriginalArg(4) int lo) {
|
||||||
|
if (lo >= hi) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@Pc(11) int mid = (lo + hi) / 2;
|
||||||
|
@Pc(15) int pivotKey = keys[mid];
|
||||||
|
@Pc(17) int i = lo;
|
||||||
|
keys[mid] = keys[hi];
|
||||||
|
keys[hi] = pivotKey;
|
||||||
|
@Pc(31) Object pivotValue = values[mid];
|
||||||
|
values[mid] = values[hi];
|
||||||
|
values[hi] = pivotValue;
|
||||||
|
for (@Pc(43) int j = lo; j < hi; j++) {
|
||||||
|
if ((j & 0x1) + pivotKey > keys[j]) {
|
||||||
|
@Pc(67) int key = keys[j];
|
||||||
|
keys[j] = keys[i];
|
||||||
|
keys[i] = key;
|
||||||
|
@Pc(81) Object value = values[j];
|
||||||
|
values[j] = values[i];
|
||||||
|
values[i++] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
keys[hi] = keys[i];
|
||||||
|
keys[i] = pivotKey;
|
||||||
|
values[hi] = values[i];
|
||||||
|
values[i] = pivotValue;
|
||||||
|
sort(values, i - 1, keys, lo);
|
||||||
|
sort(values, hi, keys, i + 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!oi", name = "a", descriptor = "(I[I[Ljava/lang/Object;)V")
|
||||||
|
public static void sort(@OriginalArg(1) int[] arg0, @OriginalArg(2) Object[] arg1) {
|
||||||
|
sort(arg1, arg0.length - 1, arg0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!nj", name = "a", descriptor = "(IIZ[I[I)V")
|
||||||
|
public static void sort(@OriginalArg(0) int lo, @OriginalArg(1) int hi, @OriginalArg(3) int[] keys, @OriginalArg(4) int[] values) {
|
||||||
|
if (lo >= hi) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@Pc(22) int mid = (hi + lo) / 2;
|
||||||
|
@Pc(24) int i = lo;
|
||||||
|
@Pc(28) int pivotKey = keys[mid];
|
||||||
|
keys[mid] = keys[hi];
|
||||||
|
keys[hi] = pivotKey;
|
||||||
|
@Pc(42) int pivotValue = values[mid];
|
||||||
|
values[mid] = values[hi];
|
||||||
|
values[hi] = pivotValue;
|
||||||
|
for (@Pc(54) int j = lo; j < hi; j++) {
|
||||||
|
if (keys[j] > (j & 0x1) + pivotKey) {
|
||||||
|
@Pc(79) int key = keys[j];
|
||||||
|
keys[j] = keys[i];
|
||||||
|
keys[i] = key;
|
||||||
|
@Pc(93) int value = values[j];
|
||||||
|
values[j] = values[i];
|
||||||
|
values[i++] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
keys[hi] = keys[i];
|
||||||
|
keys[i] = pivotKey;
|
||||||
|
values[hi] = values[i];
|
||||||
|
values[i] = pivotValue;
|
||||||
|
sort(lo, i - 1, keys, values);
|
||||||
|
sort(i + 1, hi, keys, values);
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!sh", name = "a", descriptor = "(I[JII[Ljava/lang/Object;)V")
|
||||||
|
public static void sort(@OriginalArg(0) int hi, @OriginalArg(1) long[] keys, @OriginalArg(3) int lo, @OriginalArg(4) Object[] values) {
|
||||||
|
if (lo >= hi) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@Pc(16) int i = lo;
|
||||||
|
@Pc(23) int mid = (lo + hi) / 2;
|
||||||
|
@Pc(27) long pivotKey = keys[mid];
|
||||||
|
keys[mid] = keys[hi];
|
||||||
|
keys[hi] = pivotKey;
|
||||||
|
@Pc(41) Object pivotValue = values[mid];
|
||||||
|
values[mid] = values[hi];
|
||||||
|
values[hi] = pivotValue;
|
||||||
|
for (@Pc(53) int j = lo; j < hi; j++) {
|
||||||
|
if (pivotKey + (long) (j & 0x1) > keys[j]) {
|
||||||
|
@Pc(72) long key = keys[j];
|
||||||
|
keys[j] = keys[i];
|
||||||
|
keys[i] = key;
|
||||||
|
@Pc(86) Object value = values[j];
|
||||||
|
values[j] = values[i];
|
||||||
|
values[i++] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
keys[hi] = keys[i];
|
||||||
|
keys[i] = pivotKey;
|
||||||
|
values[hi] = values[i];
|
||||||
|
values[i] = pivotValue;
|
||||||
|
sort(i - 1, keys, lo, values);
|
||||||
|
sort(hi, keys, i + 1, values);
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ac", name = "a", descriptor = "([J[Ljava/lang/Object;I)V")
|
||||||
|
public static void sort(@OriginalArg(0) long[] arg0, @OriginalArg(1) Object[] arg1) {
|
||||||
|
sort(arg0.length - 1, arg0, 0, arg1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -121,4 +121,61 @@ public class ColorUtils {
|
||||||
return (arg0 & 0xFF80) + arg1;
|
return (arg0 & 0xFF80) + arg1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!w", name = "f", descriptor = "(I)I")
|
||||||
|
public static int method4582(@OriginalArg(0) int arg0) {
|
||||||
|
if (arg0 < 2) {
|
||||||
|
arg0 = 2;
|
||||||
|
} else if (arg0 > 126) {
|
||||||
|
arg0 = 126;
|
||||||
|
}
|
||||||
|
return arg0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!hf", name = "a", descriptor = "(II)I")
|
||||||
|
public static int multiplyLightness(@OriginalArg(0) int a, @OriginalArg(1) int b) {
|
||||||
|
b = b * (a & 0x7F) >> 7;
|
||||||
|
if (b < 2) {
|
||||||
|
b = 2;
|
||||||
|
} else if (b > 126) {
|
||||||
|
b = 126;
|
||||||
|
}
|
||||||
|
return (a & 0xFF80) + b;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!w", name = "a", descriptor = "(II)I")
|
||||||
|
public static int multiplyLightness2(@OriginalArg(0) int a, @OriginalArg(1) int b) {
|
||||||
|
b = b * (a & 0x7F) >> 7;
|
||||||
|
if (b < 2) {
|
||||||
|
b = 2;
|
||||||
|
} else if (b > 126) {
|
||||||
|
b = 126;
|
||||||
|
}
|
||||||
|
return (a & 0xFF80) + b;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ri", name = "a", descriptor = "(II)I")
|
||||||
|
public static int multiplyLightness3(@OriginalArg(0) int a, @OriginalArg(1) int b) {
|
||||||
|
b = b * (a & 0x7F) >> 7;
|
||||||
|
if (b < 2) {
|
||||||
|
b = 2;
|
||||||
|
} else if (b > 126) {
|
||||||
|
b = 126;
|
||||||
|
}
|
||||||
|
return (a & 0xFF80) + b;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ed", name = "a", descriptor = "(IIII)I")
|
||||||
|
public static int method1309(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
||||||
|
if (arg0 > 243) {
|
||||||
|
arg1 >>= 0x4;
|
||||||
|
} else if (arg0 > 217) {
|
||||||
|
arg1 >>= 0x3;
|
||||||
|
} else if (arg0 > 192) {
|
||||||
|
arg1 >>= 0x2;
|
||||||
|
} else if (arg0 > 179) {
|
||||||
|
arg1 >>= 0x1;
|
||||||
|
}
|
||||||
|
return (arg0 >> 1) + (arg1 >> 5 << 7) + (arg2 >> 2 << 10);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -806,8 +806,8 @@ public class Cs1ScriptRunner {
|
||||||
if (GlRenderer.enabled) {
|
if (GlRenderer.enabled) {
|
||||||
GlRaster.method1183(local123, local114, component.width + local123, component.height + local114);
|
GlRaster.method1183(local123, local114, component.width + local123, component.height + local114);
|
||||||
|
|
||||||
@Pc(2274) boolean local2274 = Texture.method3702(sprite.width);
|
@Pc(2274) boolean local2274 = IntUtils.isPowerOfTwo(sprite.width);
|
||||||
@Pc(2279) boolean local2279 = Texture.method3702(sprite.height);
|
@Pc(2279) boolean local2279 = IntUtils.isPowerOfTwo(sprite.height);
|
||||||
@Pc(2282) GlSprite local2282 = (GlSprite) sprite;
|
@Pc(2282) GlSprite local2282 = (GlSprite) sprite;
|
||||||
if (local2274 && local2279) {
|
if (local2274 && local2279) {
|
||||||
if (alpha == 0) {
|
if (alpha == 0) {
|
||||||
|
|
|
||||||
|
|
@ -267,7 +267,7 @@ public final class DisplayMode {
|
||||||
@Pc(122) DisplayMode local122 = aClass114Array1[local114];
|
@Pc(122) DisplayMode local122 = aClass114Array1[local114];
|
||||||
local112[local114] = local122.height * local122.width;
|
local112[local114] = local122.height * local122.width;
|
||||||
}
|
}
|
||||||
method3346(local112, aClass114Array1);
|
ArrayUtils.sort(local112, aClass114Array1);
|
||||||
}
|
}
|
||||||
return aClass114Array1;
|
return aClass114Array1;
|
||||||
}
|
}
|
||||||
|
|
@ -331,39 +331,4 @@ public final class DisplayMode {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!oi", name = "a", descriptor = "(I[I[Ljava/lang/Object;)V")
|
|
||||||
public static void method3346(@OriginalArg(1) int[] arg0, @OriginalArg(2) Object[] arg1) {
|
|
||||||
method1292(arg1, arg0.length - 1, arg0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ec", name = "a", descriptor = "([Ljava/lang/Object;I[III)V")
|
|
||||||
public static void method1292(@OriginalArg(0) Object[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int[] arg2, @OriginalArg(4) int arg3) {
|
|
||||||
if (arg3 >= arg1) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@Pc(11) int local11 = (arg3 + arg1) / 2;
|
|
||||||
@Pc(15) int local15 = arg2[local11];
|
|
||||||
@Pc(17) int local17 = arg3;
|
|
||||||
arg2[local11] = arg2[arg1];
|
|
||||||
arg2[arg1] = local15;
|
|
||||||
@Pc(31) Object local31 = arg0[local11];
|
|
||||||
arg0[local11] = arg0[arg1];
|
|
||||||
arg0[arg1] = local31;
|
|
||||||
for (@Pc(43) int local43 = arg3; local43 < arg1; local43++) {
|
|
||||||
if ((local43 & 0x1) + local15 > arg2[local43]) {
|
|
||||||
@Pc(67) int local67 = arg2[local43];
|
|
||||||
arg2[local43] = arg2[local17];
|
|
||||||
arg2[local17] = local67;
|
|
||||||
@Pc(81) Object local81 = arg0[local43];
|
|
||||||
arg0[local43] = arg0[local17];
|
|
||||||
arg0[local17++] = local81;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
arg2[arg1] = arg2[local17];
|
|
||||||
arg2[local17] = local15;
|
|
||||||
arg0[arg1] = arg0[local17];
|
|
||||||
arg0[local17] = local31;
|
|
||||||
method1292(arg0, local17 - 1, arg2, arg3);
|
|
||||||
method1292(arg0, arg1, arg2, local17 + 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -713,7 +713,7 @@ public final class GlModel extends Model {
|
||||||
|
|
||||||
@OriginalMember(owner = "client!td", name = "a", descriptor = "(ISIB)I")
|
@OriginalMember(owner = "client!td", name = "a", descriptor = "(ISIB)I")
|
||||||
public static int method4096(@OriginalArg(0) int arg0, @OriginalArg(1) short arg1, @OriginalArg(2) int arg2, @OriginalArg(3) byte arg3) {
|
public static int method4096(@OriginalArg(0) int arg0, @OriginalArg(1) short arg1, @OriginalArg(2) int arg2, @OriginalArg(3) byte arg3) {
|
||||||
@Pc(5) int local5 = Rasteriser.palette[SoftwareModel.method4585(arg0, arg2)];
|
@Pc(5) int local5 = Rasteriser.palette[ColorUtils.multiplyLightness2(arg0, arg2)];
|
||||||
if (arg1 != -1) {
|
if (arg1 != -1) {
|
||||||
@Pc(15) int local15 = Rasteriser.textureProvider.method3238(arg1 & 0xFFFF);
|
@Pc(15) int local15 = Rasteriser.textureProvider.method3238(arg1 & 0xFFFF);
|
||||||
@Pc(21) int local21;
|
@Pc(21) int local21;
|
||||||
|
|
|
||||||
|
|
@ -63,4 +63,30 @@ public class IntUtils {
|
||||||
public static int clamp(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
public static int clamp(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
||||||
return arg2 > arg1 ? arg2 : arg1 > arg0 ? arg0 : arg1;
|
return arg2 > arg1 ? arg2 : arg1 > arg0 ? arg0 : arg1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!bn", name = "a", descriptor = "(III)I")
|
||||||
|
public static int bitReverse(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
|
||||||
|
@Pc(8) int local8 = 0;
|
||||||
|
while (arg0 > 0) {
|
||||||
|
local8 = local8 << 1 | arg1 & 0x1;
|
||||||
|
arg1 >>>= 0x1;
|
||||||
|
arg0--;
|
||||||
|
}
|
||||||
|
return local8;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!uc", name = "a", descriptor = "(II)I")
|
||||||
|
public static int bitCountFast(@OriginalArg(0) int v) {
|
||||||
|
@Pc(9) int a = (v >>> 1 & 0xD5555555) + (v & 0x55555555);
|
||||||
|
@Pc(19) int b = (a >>> 2 & 0x33333333) + (a & 0x33333333);
|
||||||
|
@Pc(31) int c = (b >>> 4) + b & 0xF0F0F0F;
|
||||||
|
@Pc(37) int d = c + (c >>> 8);
|
||||||
|
@Pc(43) int e = d + (d >>> 16);
|
||||||
|
return e & 0xFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ra", name = "a", descriptor = "(BI)Z")
|
||||||
|
public static boolean isPowerOfTwo(@OriginalArg(1) int v) {
|
||||||
|
return v == (-v & v);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -369,7 +369,7 @@ public final class JagString implements StringInterface {
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!na", name = "a", descriptor = "(IILjava/awt/Graphics;B)V")
|
@OriginalMember(owner = "client!na", name = "a", descriptor = "(IILjava/awt/Graphics;B)V")
|
||||||
public final void method3112(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Graphics arg2) {
|
public final void drawString(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Graphics arg2) {
|
||||||
@Pc(17) String local17 = new String(this.chars, 0, this.length, StandardCharsets.ISO_8859_1);
|
@Pc(17) String local17 = new String(this.chars, 0, this.length, StandardCharsets.ISO_8859_1);
|
||||||
arg2.drawString(local17, arg1, arg0);
|
arg2.drawString(local17, arg1, arg0);
|
||||||
}
|
}
|
||||||
|
|
@ -996,7 +996,7 @@ public final class JagString implements StringInterface {
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ILjava/awt/FontMetrics;)I")
|
@OriginalMember(owner = "client!na", name = "a", descriptor = "(ILjava/awt/FontMetrics;)I")
|
||||||
public final int method3155(@OriginalArg(1) FontMetrics arg0) {
|
public final int stringWidth(@OriginalArg(1) FontMetrics arg0) {
|
||||||
@Pc(14) String local14 = new String(this.chars, 0, this.length, StandardCharsets.ISO_8859_1);
|
@Pc(14) String local14 = new String(this.chars, 0, this.length, StandardCharsets.ISO_8859_1);
|
||||||
return arg0.stringWidth(local14);
|
return arg0.stringWidth(local14);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,16 +30,6 @@ public final class JavaAudioChannel extends AudioChannel {
|
||||||
@OriginalMember(owner = "client!qa", name = "N", descriptor = "Z")
|
@OriginalMember(owner = "client!qa", name = "N", descriptor = "Z")
|
||||||
private boolean aBoolean230 = false;
|
private boolean aBoolean230 = false;
|
||||||
|
|
||||||
@OriginalMember(owner = "client!uc", name = "a", descriptor = "(II)I")
|
|
||||||
public static int method3289(@OriginalArg(0) int arg0) {
|
|
||||||
@Pc(9) int local9 = (arg0 >>> 1 & 0xD5555555) + (arg0 & 0x55555555);
|
|
||||||
@Pc(19) int local19 = (local9 >>> 2 & 0x33333333) + (local9 & 0x33333333);
|
|
||||||
@Pc(31) int local31 = (local19 >>> 4) + local19 & 0xF0F0F0F;
|
|
||||||
@Pc(37) int local37 = local31 + (local31 >>> 8);
|
|
||||||
@Pc(43) int local43 = local37 + (local37 >>> 16);
|
|
||||||
return local43 & 0xFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!qa", name = "d", descriptor = "()V")
|
@OriginalMember(owner = "client!qa", name = "d", descriptor = "()V")
|
||||||
@Override
|
@Override
|
||||||
protected final void flush() {
|
protected final void flush() {
|
||||||
|
|
@ -78,7 +68,7 @@ public final class JavaAudioChannel extends AudioChannel {
|
||||||
this.aSourceDataLine1.start();
|
this.aSourceDataLine1.start();
|
||||||
this.anInt4645 = arg0;
|
this.anInt4645 = arg0;
|
||||||
} catch (@Pc(36) LineUnavailableException local36) {
|
} catch (@Pc(36) LineUnavailableException local36) {
|
||||||
if (method3289(arg0) == 1) {
|
if (IntUtils.bitCountFast(arg0) == 1) {
|
||||||
this.aSourceDataLine1 = null;
|
this.aSourceDataLine1 = null;
|
||||||
throw local36;
|
throw local36;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -9,69 +9,71 @@ import java.awt.*;
|
||||||
|
|
||||||
public class LoadingBarAwt {
|
public class LoadingBarAwt {
|
||||||
@OriginalMember(owner = "client!tg", name = "a", descriptor = "Ljava/awt/FontMetrics;")
|
@OriginalMember(owner = "client!tg", name = "a", descriptor = "Ljava/awt/FontMetrics;")
|
||||||
public static FontMetrics aFontMetrics1;
|
public static FontMetrics fontMetrics;
|
||||||
|
|
||||||
@OriginalMember(owner = "client!lj", name = "y", descriptor = "Ljava/awt/Image;")
|
@OriginalMember(owner = "client!lj", name = "y", descriptor = "Ljava/awt/Image;")
|
||||||
public static Image anImage3;
|
public static Image loadingBar;
|
||||||
|
|
||||||
@OriginalMember(owner = "client!sa", name = "R", descriptor = "Ljava/awt/Font;")
|
@OriginalMember(owner = "client!sa", name = "R", descriptor = "Ljava/awt/Font;")
|
||||||
public static Font aFont1;
|
public static Font font;
|
||||||
|
|
||||||
@OriginalMember(owner = "client!bc", name = "a", descriptor = "(Ljava/awt/Color;ZZLclient!na;I)V")
|
@OriginalMember(owner = "client!bc", name = "a", descriptor = "(Ljava/awt/Color;ZZLclient!na;I)V")
|
||||||
public static void render(@OriginalArg(0) Color arg0, @OriginalArg(2) boolean arg1, @OriginalArg(3) JagString arg2, @OriginalArg(4) int arg3) {
|
public static void render(@OriginalArg(0) Color color, @OriginalArg(2) boolean redraw, @OriginalArg(3) JagString text, @OriginalArg(4) int arg3) {
|
||||||
try {
|
try {
|
||||||
@Pc(6) Graphics local6 = GameShell.canvas.getGraphics();
|
@Pc(6) Graphics g = GameShell.canvas.getGraphics();
|
||||||
if (aFont1 == null) {
|
if (font == null) {
|
||||||
aFont1 = new Font("Helvetica", 1, 13);
|
font = new Font("Helvetica", 1, 13);
|
||||||
aFontMetrics1 = GameShell.canvas.getFontMetrics(aFont1);
|
fontMetrics = GameShell.canvas.getFontMetrics(font);
|
||||||
}
|
}
|
||||||
if (arg1) {
|
if (redraw) {
|
||||||
local6.setColor(Color.black);
|
g.setColor(Color.black);
|
||||||
local6.fillRect(0, 0, GameShell.canvasWidth, GameShell.canvasHeight);
|
g.fillRect(0, 0, GameShell.canvasWidth, GameShell.canvasHeight);
|
||||||
}
|
}
|
||||||
if (arg0 == null) {
|
if (color == null) {
|
||||||
arg0 = new Color(140, 17, 17);
|
color = new Color(140, 17, 17);
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
if (anImage3 == null) {
|
if (loadingBar == null) {
|
||||||
anImage3 = GameShell.canvas.createImage(304, 34);
|
loadingBar = GameShell.canvas.createImage(304, 34);
|
||||||
}
|
}
|
||||||
@Pc(56) Graphics local56 = anImage3.getGraphics();
|
@Pc(56) Graphics loadingBarGraphics = loadingBar.getGraphics();
|
||||||
local56.setColor(arg0);
|
loadingBarGraphics.setColor(color);
|
||||||
local56.drawRect(0, 0, 303, 33);
|
loadingBarGraphics.drawRect(0, 0, 303, 33);
|
||||||
local56.fillRect(2, 2, arg3 * 3, 30);
|
loadingBarGraphics.fillRect(2, 2, arg3 * 3, 30);
|
||||||
local56.setColor(Color.black);
|
loadingBarGraphics.setColor(Color.black);
|
||||||
local56.drawRect(1, 1, 301, 31);
|
loadingBarGraphics.drawRect(1, 1, 301, 31);
|
||||||
local56.fillRect(arg3 * 3 + 2, 2, 300 - arg3 * 3, 30);
|
loadingBarGraphics.fillRect(arg3 * 3 + 2, 2, 300 - arg3 * 3, 30);
|
||||||
local56.setFont(aFont1);
|
loadingBarGraphics.setFont(font);
|
||||||
local56.setColor(Color.white);
|
loadingBarGraphics.setColor(Color.white);
|
||||||
arg2.method3112(22, (304 - arg2.method3155(aFontMetrics1)) / 2, local56);
|
text.drawString(22, (304 - text.stringWidth(fontMetrics)) / 2, loadingBarGraphics);
|
||||||
local6.drawImage(anImage3, GameShell.canvasWidth / 2 - 152, GameShell.canvasHeight / 2 + -18, null);
|
g.drawImage(loadingBar, GameShell.canvasWidth / 2 - 152, GameShell.canvasHeight / 2 + -18, null);
|
||||||
} catch (@Pc(134) Exception local134) {
|
} catch (@Pc(134) Exception ignored) {
|
||||||
@Pc(140) int local140 = GameShell.canvasWidth / 2 - 152;
|
@Pc(140) int x = GameShell.canvasWidth / 2 - 152;
|
||||||
@Pc(146) int local146 = GameShell.canvasHeight / 2 - 18;
|
@Pc(146) int y = GameShell.canvasHeight / 2 - 18;
|
||||||
local6.setColor(arg0);
|
g.setColor(color);
|
||||||
local6.drawRect(local140, local146, 303, 33);
|
g.drawRect(x, y, 303, 33);
|
||||||
local6.fillRect(local140 + 2, local146 + 2, arg3 * 3, 30);
|
g.fillRect(x + 2, y + 2, arg3 * 3, 30);
|
||||||
local6.setColor(Color.black);
|
g.setColor(Color.black);
|
||||||
local6.drawRect(local140 + 1, local146 - -1, 301, 31);
|
g.drawRect(x + 1, y - -1, 301, 31);
|
||||||
local6.fillRect(arg3 * 3 + local140 + 2, local146 + 2, 300 - arg3 * 3, 30);
|
g.fillRect(arg3 * 3 + x + 2, y + 2, 300 - arg3 * 3, 30);
|
||||||
local6.setFont(aFont1);
|
g.setFont(font);
|
||||||
local6.setColor(Color.white);
|
g.setColor(Color.white);
|
||||||
arg2.method3112(local146 + 22, local140 + (-arg2.method3155(aFontMetrics1) + 304) / 2, local6);
|
text.drawString(y + 22, x + (-text.stringWidth(fontMetrics) + 304) / 2, g);
|
||||||
}
|
}
|
||||||
if (client.mainLoadPrimaryText != null) {
|
if (client.mainLoadPrimaryText != null) {
|
||||||
local6.setFont(aFont1);
|
g.setFont(font);
|
||||||
local6.setColor(Color.white);
|
g.setColor(Color.white);
|
||||||
client.mainLoadPrimaryText.method3112(GameShell.canvasHeight / 2 - 26, GameShell.canvasWidth / 2 - client.mainLoadPrimaryText.method3155(aFontMetrics1) / 2, local6);
|
client.mainLoadPrimaryText.drawString(GameShell.canvasHeight / 2 - 26, GameShell.canvasWidth / 2 - client.mainLoadPrimaryText.stringWidth(fontMetrics) / 2, g);
|
||||||
}
|
}
|
||||||
} catch (@Pc(252) Exception local252) {
|
} catch (@Pc(252) Exception ignored) {
|
||||||
GameShell.canvas.repaint();
|
GameShell.canvas.repaint();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!n", name = "a", descriptor = "(B)V")
|
@OriginalMember(owner = "client!n", name = "a", descriptor = "(B)V")
|
||||||
public static void clear() {
|
public static void clear() {
|
||||||
aFontMetrics1 = null;
|
fontMetrics = null;
|
||||||
aFont1 = null;
|
font = null;
|
||||||
anImage3 = null;
|
loadingBar = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,10 @@ public final class Loc extends Entity {
|
||||||
|
|
||||||
@OriginalMember(owner = "client!kf", name = "h", descriptor = "[I")
|
@OriginalMember(owner = "client!kf", name = "h", descriptor = "[I")
|
||||||
public static final int[] LAYERS = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3};
|
public static final int[] LAYERS = new int[]{0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3};
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ci", name = "q", descriptor = "Lclient!ek;")
|
@OriginalMember(owner = "client!ci", name = "q", descriptor = "Lclient!ek;")
|
||||||
public static SoftwareIndexedSprite aClass36_Sub1_1 = null;
|
public static SoftwareIndexedSprite aClass36_Sub1_1 = null;
|
||||||
|
|
||||||
@OriginalMember(owner = "client!dc", name = "U", descriptor = "Lclient!ga;")
|
@OriginalMember(owner = "client!dc", name = "U", descriptor = "Lclient!ga;")
|
||||||
private ParticleSystem aClass47_Sub1_2;
|
private ParticleSystem aClass47_Sub1_2;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1383,7 +1383,7 @@ public class LoginManager {
|
||||||
@Pc(98) int local98 = (local88 / 8 << 8) + local76 / 8;
|
@Pc(98) int local98 = (local88 / 8 << 8) + local76 / 8;
|
||||||
for (@Pc(100) int local100 = 0; local100 < regionBitPacked.length; local100++) {
|
for (@Pc(100) int local100 = 0; local100 < regionBitPacked.length; local100++) {
|
||||||
if (regionBitPacked[local100] == local98 && local13[local100] != null) {
|
if (regionBitPacked[local100] == local98 && local13[local100] != null) {
|
||||||
method4228(local82, local32 * 8, local21, PathFinder.collisionMaps, local39 * 8, local13[local100], local65, (local76 & 0x7) * 8, (local88 & 0x7) * 8, arg0);
|
SceneGraph.method4228(local82, local32 * 8, local21, PathFinder.collisionMaps, local39 * 8, local13[local100], local65, (local76 & 0x7) * 8, (local88 & 0x7) * 8, arg0);
|
||||||
local54 = true;
|
local54 = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -1391,7 +1391,7 @@ public class LoginManager {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!local54) {
|
if (!local54) {
|
||||||
method645(local21, local39 * 8, local32 * 8, 8, 8);
|
SceneGraph.method645(local21, local39 * 8, local32 * 8, 8, 8);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1489,227 +1489,11 @@ public class LoginManager {
|
||||||
Protocol.anInt4247 = 0;
|
Protocol.anInt4247 = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!tm", name = "a", descriptor = "(III[Lclient!mj;IB[BIIIZ)V")
|
|
||||||
public static void method4228(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) CollisionMap[] arg3, @OriginalArg(4) int arg4, @OriginalArg(6) byte[] arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) boolean arg9) {
|
|
||||||
@Pc(17) int local17;
|
|
||||||
if (!arg9) {
|
|
||||||
for (@Pc(10) int local10 = 0; local10 < 8; local10++) {
|
|
||||||
for (local17 = 0; local17 < 8; local17++) {
|
|
||||||
if (arg1 + local10 > 0 && local10 + arg1 < 103 && local17 + arg4 > 0 && arg4 + local17 < 103) {
|
|
||||||
arg3[arg2].flags[local10 + arg1][local17 + arg4] &= 0xFEFFFFFF;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Pc(87) byte local87;
|
|
||||||
if (arg9) {
|
|
||||||
local87 = 1;
|
|
||||||
} else {
|
|
||||||
local87 = 4;
|
|
||||||
}
|
|
||||||
@Pc(96) Buffer local96 = new Buffer(arg5);
|
|
||||||
@Pc(103) int local103;
|
|
||||||
@Pc(108) int local108;
|
|
||||||
for (local17 = 0; local17 < local87; local17++) {
|
|
||||||
for (local103 = 0; local103 < 64; local103++) {
|
|
||||||
for (local108 = 0; local108 < 64; local108++) {
|
|
||||||
if (arg6 == local17 && arg8 <= local103 && arg8 + 8 > local103 && arg7 <= local108 && local108 < arg7 + 8) {
|
|
||||||
SceneGraph.readTile(0, 0, arg9, local96, method3659(arg0, local103 & 0x7, local108 & 0x7) + arg4, method4360(arg0, local108 & 0x7, local103 & 0x7) + arg1, arg0, arg2);
|
|
||||||
} else {
|
|
||||||
SceneGraph.readTile(0, 0, arg9, local96, -1, -1, 0, 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Pc(232) int local232;
|
|
||||||
@Pc(417) int local417;
|
|
||||||
@Pc(255) int local255;
|
|
||||||
@Pc(266) int local266;
|
|
||||||
@Pc(316) int local316;
|
|
||||||
while (local96.data.length > local96.offset) {
|
|
||||||
local103 = local96.g1();
|
|
||||||
if (local103 != 129) {
|
|
||||||
local96.offset--;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
for (local108 = 0; local108 < 4; local108++) {
|
|
||||||
@Pc(223) byte local223 = local96.g1b();
|
|
||||||
@Pc(237) int local237;
|
|
||||||
if (local223 == 0) {
|
|
||||||
if (local108 <= arg6) {
|
|
||||||
local237 = arg1 + 7;
|
|
||||||
local232 = arg1;
|
|
||||||
local255 = arg4 + 7;
|
|
||||||
if (local255 < 0) {
|
|
||||||
local255 = 0;
|
|
||||||
} else if (local255 >= 104) {
|
|
||||||
local255 = 104;
|
|
||||||
}
|
|
||||||
if (local237 < 0) {
|
|
||||||
local237 = 0;
|
|
||||||
} else if (local237 >= 104) {
|
|
||||||
local237 = 104;
|
|
||||||
}
|
|
||||||
local417 = arg4;
|
|
||||||
if (arg4 < 0) {
|
|
||||||
local417 = 0;
|
|
||||||
} else if (arg4 >= 104) {
|
|
||||||
local417 = 104;
|
|
||||||
}
|
|
||||||
if (arg1 < 0) {
|
|
||||||
local232 = 0;
|
|
||||||
} else if (arg1 >= 104) {
|
|
||||||
local232 = 104;
|
|
||||||
}
|
|
||||||
while (local237 > local232) {
|
|
||||||
while (local417 < local255) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[arg2][local232][local417] = 0;
|
|
||||||
local417++;
|
|
||||||
}
|
|
||||||
local232++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (local223 == 1) {
|
|
||||||
for (local232 = 0; local232 < 64; local232 += 4) {
|
|
||||||
for (local237 = 0; local237 < 64; local237 += 4) {
|
|
||||||
@Pc(246) byte local246 = local96.g1b();
|
|
||||||
if (local108 <= arg6) {
|
|
||||||
for (local255 = local232; local255 < local232 + 4; local255++) {
|
|
||||||
for (local266 = local237; local266 < local237 + 4; local266++) {
|
|
||||||
if (local255 >= arg8 && local255 < arg8 + 8 && local266 >= arg7 && arg7 + 8 > arg7) {
|
|
||||||
local316 = arg1 + method4360(arg0, local266 & 0x7, local255 & 0x7);
|
|
||||||
@Pc(328) int local328 = method3659(arg0, local255 & 0x7, local266 & 0x7) + arg4;
|
|
||||||
if (local316 >= 0 && local316 < 104 && local328 >= 0 && local328 < 104) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[arg2][local316][local328] = local246;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (local223 == 2) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Pc(497) int local497;
|
|
||||||
if (GlRenderer.enabled && !arg9) {
|
|
||||||
@Pc(472) Environment local472 = null;
|
|
||||||
label207:
|
|
||||||
while (true) {
|
|
||||||
label200:
|
|
||||||
do {
|
|
||||||
while (local96.data.length > local96.offset) {
|
|
||||||
local108 = local96.g1();
|
|
||||||
if (local108 != 0) {
|
|
||||||
if (local108 != 1) {
|
|
||||||
throw new IllegalStateException();
|
|
||||||
}
|
|
||||||
local497 = local96.g1();
|
|
||||||
continue label200;
|
|
||||||
}
|
|
||||||
local472 = new Environment(local96);
|
|
||||||
}
|
|
||||||
if (local472 == null) {
|
|
||||||
local472 = new Environment();
|
|
||||||
}
|
|
||||||
FogManager.chunksAtmosphere[arg1 >> 3][arg4 >> 3] = local472;
|
|
||||||
break label207;
|
|
||||||
} while (local497 <= 0);
|
|
||||||
for (local232 = 0; local232 < local497; local232++) {
|
|
||||||
@Pc(517) Light local517 = new Light(local96);
|
|
||||||
if (local517.anInt2243 == 31) {
|
|
||||||
@Pc(529) LightType local529 = LightTypeList.get(local96.g2());
|
|
||||||
local517.method1762(local529.anInt2865, local529.anInt2873, local529.anInt2867, local529.anInt2872);
|
|
||||||
}
|
|
||||||
local417 = local517.x >> 7;
|
|
||||||
local255 = local517.z >> 7;
|
|
||||||
if (arg6 == local517.level && local417 >= arg8 && arg8 + 8 > local417 && arg7 <= local255 && arg7 + 8 > local255) {
|
|
||||||
local266 = method3675(arg0, local517.x & 0x3FF, local517.z & 0x3FF) + (arg1 << 7);
|
|
||||||
local316 = method3388(local517.x & 0x3FF, arg0, local517.z & 0x3FF) + (arg4 << 7);
|
|
||||||
local517.x = local266;
|
|
||||||
local517.z = local316;
|
|
||||||
local417 = local517.x >> 7;
|
|
||||||
local255 = local517.z >> 7;
|
|
||||||
if (local417 >= 0 && local255 >= 0 && local417 < 104 && local255 < 104) {
|
|
||||||
local517.aBoolean125 = (SceneGraph.tileFlags[1][local417][local255] & 0x2) != 0;
|
|
||||||
local517.y = SceneGraph.tileHeights[local517.level][local417][local255] - local517.y;
|
|
||||||
LightingManager.method2389(local517);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
local103 = arg1 + 7;
|
|
||||||
local108 = arg4 + 7;
|
|
||||||
for (local497 = arg1; local497 < local103; local497++) {
|
|
||||||
for (local232 = arg4; local232 < local108; local232++) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[arg2][local497][local232] = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!tb", name = "h", descriptor = "(I)I")
|
@OriginalMember(owner = "client!tb", name = "h", descriptor = "(I)I")
|
||||||
public static int method4044() {
|
public static int method4044() {
|
||||||
return Cheat.shiftClick && Keyboard.pressedKeys[Keyboard.KEY_SHIFT] && MiniMenu.size > 2 ? MiniMenu.cursors[MiniMenu.size - 2] : MiniMenu.cursors[MiniMenu.size - 1];
|
return Cheat.shiftClick && Keyboard.pressedKeys[Keyboard.KEY_SHIFT] && MiniMenu.size > 2 ? MiniMenu.cursors[MiniMenu.size - 2] : MiniMenu.cursors[MiniMenu.size - 1];
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!rg", name = "a", descriptor = "(IZII)I")
|
|
||||||
public static int method4360(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
|
||||||
@Pc(3) int local3 = arg0 & 0x3;
|
|
||||||
if (local3 == 0) {
|
|
||||||
return arg2;
|
|
||||||
} else if (local3 == 1) {
|
|
||||||
return arg1;
|
|
||||||
} else if (local3 == 2) {
|
|
||||||
return 7 - arg2;
|
|
||||||
} else {
|
|
||||||
return 7 - arg1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!qg", name = "a", descriptor = "(IBII)I")
|
|
||||||
public static int method3659(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
|
||||||
@Pc(3) int local3 = arg0 & 0x3;
|
|
||||||
if (local3 == 0) {
|
|
||||||
return arg2;
|
|
||||||
} else if (local3 == 1) {
|
|
||||||
return 7 - arg1;
|
|
||||||
} else if (local3 == 2) {
|
|
||||||
return 7 - arg2;
|
|
||||||
} else {
|
|
||||||
return arg1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!qi", name = "a", descriptor = "(IIBI)I")
|
|
||||||
public static int method3675(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
|
||||||
@Pc(3) int local3 = arg0 & 0x3;
|
|
||||||
if (local3 == 0) {
|
|
||||||
return arg1;
|
|
||||||
} else if (local3 == 1) {
|
|
||||||
return arg2;
|
|
||||||
} else if (local3 == 2) {
|
|
||||||
return 1023 - arg1;
|
|
||||||
} else {
|
|
||||||
return 1023 - arg2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ol", name = "a", descriptor = "(IIZI)I")
|
|
||||||
public static int method3388(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
|
||||||
@Pc(3) int local3 = arg1 & 0x3;
|
|
||||||
if (local3 == 0) {
|
|
||||||
return arg2;
|
|
||||||
} else if (local3 == 1) {
|
|
||||||
return 1023 - arg0;
|
|
||||||
} else if (local3 == 2) {
|
|
||||||
return 1023 - arg2;
|
|
||||||
} else {
|
|
||||||
return arg0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ij", name = "a", descriptor = "(B)V")
|
@OriginalMember(owner = "client!ij", name = "a", descriptor = "(B)V")
|
||||||
public static void method2297() {
|
public static void method2297() {
|
||||||
@Pc(3) int local3 = InterfaceList.anInt4271;
|
@Pc(3) int local3 = InterfaceList.anInt4271;
|
||||||
|
|
@ -1866,7 +1650,7 @@ public class LoginManager {
|
||||||
local53 = local9[local20];
|
local53 = local9[local20];
|
||||||
if (local53 != null) {
|
if (local53 != null) {
|
||||||
client.audioLoop();
|
client.audioLoop();
|
||||||
method2203(PathFinder.collisionMaps, arg0, SceneGraph.centralZoneX * 8 - 48, local49, local38, (SceneGraph.centralZoneZ - 6) * 8, local53);
|
SceneGraph.method2203(PathFinder.collisionMaps, arg0, SceneGraph.centralZoneX * 8 - 48, local49, local38, (SceneGraph.centralZoneZ - 6) * 8, local53);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (local20 = 0; local20 < local18; local20++) {
|
for (local20 = 0; local20 < local18; local20++) {
|
||||||
|
|
@ -1876,254 +1660,12 @@ public class LoginManager {
|
||||||
if (local53 == null && SceneGraph.centralZoneZ < 800) {
|
if (local53 == null && SceneGraph.centralZoneZ < 800) {
|
||||||
client.audioLoop();
|
client.audioLoop();
|
||||||
for (@Pc(130) int local130 = 0; local130 < local7; local130++) {
|
for (@Pc(130) int local130 = 0; local130 < local7; local130++) {
|
||||||
method645(local130, local49, local38, 64, 64);
|
SceneGraph.method645(local130, local49, local38, 64, 64);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!wa", name = "a", descriptor = "([Lclient!mj;ZIIIII[B)V")
|
|
||||||
public static void method2203(@OriginalArg(0) CollisionMap[] arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) byte[] arg6) {
|
|
||||||
@Pc(14) int local14;
|
|
||||||
@Pc(21) int local21;
|
|
||||||
if (!arg1) {
|
|
||||||
for (@Pc(9) int local9 = 0; local9 < 4; local9++) {
|
|
||||||
for (local14 = 0; local14 < 64; local14++) {
|
|
||||||
for (local21 = 0; local21 < 64; local21++) {
|
|
||||||
if (arg4 + local14 > 0 && local14 + arg4 < 103 && arg3 + local21 > 0 && local21 + arg3 < 103) {
|
|
||||||
arg0[local9].flags[local14 + arg4][arg3 + local21] &= 0xFEFFFFFF;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Pc(95) Buffer local95 = new Buffer(arg6);
|
|
||||||
@Pc(99) byte local99;
|
|
||||||
if (arg1) {
|
|
||||||
local99 = 1;
|
|
||||||
} else {
|
|
||||||
local99 = 4;
|
|
||||||
}
|
|
||||||
@Pc(117) int local117;
|
|
||||||
for (local14 = 0; local14 < local99; local14++) {
|
|
||||||
for (local21 = 0; local21 < 64; local21++) {
|
|
||||||
for (local117 = 0; local117 < 64; local117++) {
|
|
||||||
SceneGraph.readTile(arg2, arg5, arg1, local95, local117 + arg3, arg4 + local21, 0, local14);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@Pc(146) boolean local146 = false;
|
|
||||||
@Pc(243) int local243;
|
|
||||||
@Pc(188) int local188;
|
|
||||||
@Pc(190) int local190;
|
|
||||||
@Pc(194) int local194;
|
|
||||||
while (local95.offset < local95.data.length) {
|
|
||||||
local21 = local95.g1();
|
|
||||||
if (local21 != 129) {
|
|
||||||
local95.offset--;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
for (local117 = 0; local117 < 4; local117++) {
|
|
||||||
@Pc(168) byte local168 = local95.g1b();
|
|
||||||
if (local168 == 0) {
|
|
||||||
local243 = arg4;
|
|
||||||
if (arg4 < 0) {
|
|
||||||
local243 = 0;
|
|
||||||
} else if (arg4 >= 104) {
|
|
||||||
local243 = 104;
|
|
||||||
}
|
|
||||||
local190 = arg3;
|
|
||||||
if (arg3 < 0) {
|
|
||||||
local190 = 0;
|
|
||||||
} else if (arg3 >= 104) {
|
|
||||||
local190 = 104;
|
|
||||||
}
|
|
||||||
local188 = arg4 + 64;
|
|
||||||
local194 = arg3 + 64;
|
|
||||||
if (local194 < 0) {
|
|
||||||
local194 = 0;
|
|
||||||
} else if (local194 >= 104) {
|
|
||||||
local194 = 104;
|
|
||||||
}
|
|
||||||
if (local188 < 0) {
|
|
||||||
local188 = 0;
|
|
||||||
} else if (local188 >= 104) {
|
|
||||||
local188 = 104;
|
|
||||||
}
|
|
||||||
while (local243 < local188) {
|
|
||||||
while (local190 < local194) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[local117][local243][local190] = 0;
|
|
||||||
local190++;
|
|
||||||
}
|
|
||||||
local243++;
|
|
||||||
}
|
|
||||||
} else if (local168 == 1) {
|
|
||||||
for (local243 = 0; local243 < 64; local243 += 4) {
|
|
||||||
for (local188 = 0; local188 < 64; local188 += 4) {
|
|
||||||
@Pc(305) byte local305 = local95.g1b();
|
|
||||||
for (local194 = local243 + arg4; local194 < arg4 + local243 + 4; local194++) {
|
|
||||||
for (@Pc(320) int local320 = arg3 + local188; local320 < arg3 + local188 + 4; local320++) {
|
|
||||||
if (local194 >= 0 && local194 < 104 && local320 >= 0 && local320 < 104) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[local117][local194][local320] = local305;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (local168 == 2 && local117 > 0) {
|
|
||||||
local188 = arg4 + 64;
|
|
||||||
local190 = arg3;
|
|
||||||
local194 = arg3 + 64;
|
|
||||||
if (local188 < 0) {
|
|
||||||
local188 = 0;
|
|
||||||
} else if (local188 >= 104) {
|
|
||||||
local188 = 104;
|
|
||||||
}
|
|
||||||
if (arg3 < 0) {
|
|
||||||
local190 = 0;
|
|
||||||
} else if (arg3 >= 104) {
|
|
||||||
local190 = 104;
|
|
||||||
}
|
|
||||||
if (local194 < 0) {
|
|
||||||
local194 = 0;
|
|
||||||
} else if (local194 >= 104) {
|
|
||||||
local194 = 104;
|
|
||||||
}
|
|
||||||
local243 = arg4;
|
|
||||||
if (arg4 < 0) {
|
|
||||||
local243 = 0;
|
|
||||||
} else if (arg4 >= 104) {
|
|
||||||
local243 = 104;
|
|
||||||
}
|
|
||||||
while (local188 > local243) {
|
|
||||||
while (local190 < local194) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[local117][local243][local190] = SceneGraph.aByteArrayArrayArray13[local117 - 1][local243][local190];
|
|
||||||
local190++;
|
|
||||||
}
|
|
||||||
local243++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
local146 = true;
|
|
||||||
}
|
|
||||||
@Pc(515) int local515;
|
|
||||||
if (GlRenderer.enabled && !arg1) {
|
|
||||||
@Pc(490) Environment local490 = null;
|
|
||||||
label270:
|
|
||||||
while (true) {
|
|
||||||
label263:
|
|
||||||
do {
|
|
||||||
while (local95.offset < local95.data.length) {
|
|
||||||
local117 = local95.g1();
|
|
||||||
if (local117 != 0) {
|
|
||||||
if (local117 != 1) {
|
|
||||||
throw new IllegalStateException();
|
|
||||||
}
|
|
||||||
local515 = local95.g1();
|
|
||||||
continue label263;
|
|
||||||
}
|
|
||||||
local490 = new Environment(local95);
|
|
||||||
}
|
|
||||||
if (local490 == null) {
|
|
||||||
local490 = new Environment();
|
|
||||||
}
|
|
||||||
for (local117 = 0; local117 < 8; local117++) {
|
|
||||||
for (local515 = 0; local515 < 8; local515++) {
|
|
||||||
local243 = local117 + (arg4 >> 3);
|
|
||||||
local188 = (arg3 >> 3) + local515;
|
|
||||||
if (local243 >= 0 && local243 < 13 && local188 >= 0 && local188 < 13) {
|
|
||||||
FogManager.chunksAtmosphere[local243][local188] = local490;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break label270;
|
|
||||||
} while (local515 <= 0);
|
|
||||||
for (local243 = 0; local243 < local515; local243++) {
|
|
||||||
@Pc(529) Light local529 = new Light(local95);
|
|
||||||
if (local529.anInt2243 == 31) {
|
|
||||||
@Pc(541) LightType local541 = LightTypeList.get(local95.g2());
|
|
||||||
local529.method1762(local541.anInt2865, local541.anInt2873, local541.anInt2867, local541.anInt2872);
|
|
||||||
}
|
|
||||||
local529.z += arg3 << 7;
|
|
||||||
local529.x += arg4 << 7;
|
|
||||||
local194 = local529.z >> 7;
|
|
||||||
local190 = local529.x >> 7;
|
|
||||||
if (local190 >= 0 && local194 >= 0 && local190 < 104 && local194 < 104) {
|
|
||||||
local529.aBoolean125 = (SceneGraph.tileFlags[1][local190][local194] & 0x2) != 0;
|
|
||||||
local529.y = SceneGraph.tileHeights[local529.level][local190][local194] - local529.y;
|
|
||||||
LightingManager.method2389(local529);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (local146) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (local21 = 0; local21 < 4; local21++) {
|
|
||||||
for (local117 = 0; local117 < 16; local117++) {
|
|
||||||
for (local515 = 0; local515 < 16; local515++) {
|
|
||||||
local243 = (arg4 >> 2) + local117;
|
|
||||||
local188 = local515 + (arg3 >> 2);
|
|
||||||
if (local243 >= 0 && local243 < 26 && local188 >= 0 && local188 < 26) {
|
|
||||||
SceneGraph.aByteArrayArrayArray13[local21][local243][local188] = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!bm", name = "a", descriptor = "(IBIIII)V")
|
|
||||||
public static void method645(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4) {
|
|
||||||
@Pc(3) int local3;
|
|
||||||
@Pc(10) int local10;
|
|
||||||
for (local3 = arg1; local3 <= arg3 + arg1; local3++) {
|
|
||||||
for (local10 = arg2; local10 <= arg4 + arg2; local10++) {
|
|
||||||
if (local10 >= 0 && local10 < 104 && local3 >= 0 && local3 < 104) {
|
|
||||||
SceneGraph.aByteArrayArrayArray9[arg0][local10][local3] = 127;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (local3 = arg1; local3 < arg3 + arg1; local3++) {
|
|
||||||
for (local10 = arg2; local10 < arg2 + arg4; local10++) {
|
|
||||||
if (local10 >= 0 && local10 < 104 && local3 >= 0 && local3 < 104) {
|
|
||||||
SceneGraph.tileHeights[arg0][local10][local3] = arg0 <= 0 ? 0 : SceneGraph.tileHeights[arg0 - 1][local10][local3];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (arg2 > 0 && arg2 < 104) {
|
|
||||||
for (local3 = arg1 + 1; local3 < arg1 + arg3; local3++) {
|
|
||||||
if (local3 >= 0 && local3 < 104) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][local3] = SceneGraph.tileHeights[arg0][arg2 - 1][local3];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (arg1 > 0 && arg1 < 104) {
|
|
||||||
for (local3 = arg2 + 1; local3 < arg2 + arg4; local3++) {
|
|
||||||
if (local3 >= 0 && local3 < 104) {
|
|
||||||
SceneGraph.tileHeights[arg0][local3][arg1] = SceneGraph.tileHeights[arg0][local3][arg1 - 1];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (arg2 < 0 || arg1 < 0 || arg2 >= 104 || arg1 >= 104) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (arg0 == 0) {
|
|
||||||
if (arg2 > 0 && SceneGraph.tileHeights[arg0][arg2 - 1][arg1] != 0) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2 - 1][arg1];
|
|
||||||
} else if (arg1 > 0 && SceneGraph.tileHeights[arg0][arg2][arg1 - 1] != 0) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2][arg1 - 1];
|
|
||||||
} else if (arg2 > 0 && arg1 > 0 && SceneGraph.tileHeights[arg0][arg2 - 1][arg1 - 1] != 0) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2 - 1][arg1 - 1];
|
|
||||||
}
|
|
||||||
} else if (arg2 > 0 && SceneGraph.tileHeights[arg0 - 1][arg2 - 1][arg1] != SceneGraph.tileHeights[arg0][arg2 - 1][arg1]) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2 - 1][arg1];
|
|
||||||
} else if (arg1 > 0 && SceneGraph.tileHeights[arg0][arg2][arg1 - 1] != SceneGraph.tileHeights[arg0 - 1][arg2][arg1 - 1]) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2][arg1 - 1];
|
|
||||||
} else if (arg2 > 0 && arg1 > 0 && SceneGraph.tileHeights[arg0][arg2 - 1][arg1 - 1] != SceneGraph.tileHeights[arg0 - 1][arg2 - 1][arg1 - 1]) {
|
|
||||||
SceneGraph.tileHeights[arg0][arg2][arg1] = SceneGraph.tileHeights[arg0][arg2 - 1][arg1 - 1];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!j", name = "g", descriptor = "(I)V")
|
@OriginalMember(owner = "client!j", name = "g", descriptor = "(I)V")
|
||||||
public static void method4637() {
|
public static void method4637() {
|
||||||
aClass3_Sub2_Sub1_8 = null;
|
aClass3_Sub2_Sub1_8 = null;
|
||||||
|
|
|
||||||
|
|
@ -164,7 +164,7 @@ public abstract class MaterialManager_Class106 {
|
||||||
}
|
}
|
||||||
for (local14 = 0; local14 < 255; local14++) {
|
for (local14 = 0; local14 < 255; local14++) {
|
||||||
@Pc(41) int local41 = 255 - local14;
|
@Pc(41) int local41 = 255 - local14;
|
||||||
@Pc(46) int local46 = Texture.method3219(local41, local12);
|
@Pc(46) int local46 = RandomUtils.nextInt(local41, local12);
|
||||||
@Pc(51) short local51 = this.aShortArray69[local46];
|
@Pc(51) short local51 = this.aShortArray69[local46];
|
||||||
this.aShortArray69[local46] = this.aShortArray69[local41];
|
this.aShortArray69[local46] = this.aShortArray69[local41];
|
||||||
this.aShortArray69[local41] = this.aShortArray69[local41 + 256] = local51;
|
this.aShortArray69[local41] = this.aShortArray69[local41 + 256] = local51;
|
||||||
|
|
|
||||||
31
client/src/main/java/rt4/RandomUtils.java
Normal file
31
client/src/main/java/rt4/RandomUtils.java
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
package rt4;
|
||||||
|
|
||||||
|
import org.openrs2.deob.annotation.OriginalArg;
|
||||||
|
import org.openrs2.deob.annotation.OriginalMember;
|
||||||
|
import org.openrs2.deob.annotation.Pc;
|
||||||
|
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
public class RandomUtils {
|
||||||
|
@OriginalMember(owner = "client!d", name = "c", descriptor = "(III)I")
|
||||||
|
public static int shuffle(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
||||||
|
@Pc(11) int local11 = arg1 - 1 & arg0 >> 31;
|
||||||
|
return local11 + (arg0 + (arg0 >>> 31)) % arg1;
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ni", name = "a", descriptor = "(BILjava/util/Random;)I")
|
||||||
|
public static int nextInt(@OriginalArg(1) int arg0, @OriginalArg(2) Random arg1) {
|
||||||
|
if (arg0 <= 0) {
|
||||||
|
throw new IllegalArgumentException();
|
||||||
|
} else if (IntUtils.isPowerOfTwo(arg0)) {
|
||||||
|
return (int) (((long) arg1.nextInt() & 0xFFFFFFFFL) * (long) arg0 >> 32);
|
||||||
|
} else {
|
||||||
|
@Pc(38) int local38 = Integer.MIN_VALUE - (int) (0x100000000L % (long) arg0);
|
||||||
|
@Pc(41) int local41;
|
||||||
|
do {
|
||||||
|
local41 = arg1.nextInt();
|
||||||
|
} while (local38 <= local41);
|
||||||
|
return shuffle(local41, arg0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -70,7 +70,7 @@ public final class Rasteriser {
|
||||||
@Pc(5) int[] texels = textureProvider.method3232(textureId, brightness);
|
@Pc(5) int[] texels = textureProvider.method3232(textureId, brightness);
|
||||||
if (texels == null) {
|
if (texels == null) {
|
||||||
int averageColor = textureProvider.getAverageColor(textureId);
|
int averageColor = textureProvider.getAverageColor(textureId);
|
||||||
fillGouraudTriangle(yA, yB, yC, xA, xB, xC, multiplyLightness(averageColor, colorA), multiplyLightness(averageColor, colorB), multiplyLightness(averageColor, colorC));
|
fillGouraudTriangle(yA, yB, yC, xA, xB, xC, ColorUtils.multiplyLightness(averageColor, colorA), ColorUtils.multiplyLightness(averageColor, colorB), ColorUtils.multiplyLightness(averageColor, colorC));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -682,17 +682,6 @@ public final class Rasteriser {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!hf", name = "a", descriptor = "(II)I")
|
|
||||||
private static int multiplyLightness(@OriginalArg(0) int a, @OriginalArg(1) int b) {
|
|
||||||
b = b * (a & 0x7F) >> 7;
|
|
||||||
if (b < 2) {
|
|
||||||
b = 2;
|
|
||||||
} else if (b > 126) {
|
|
||||||
b = 126;
|
|
||||||
}
|
|
||||||
return (a & 0xFF80) + b;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!hf", name = "a", descriptor = "(F)V")
|
@OriginalMember(owner = "client!hf", name = "a", descriptor = "(F)V")
|
||||||
public static void setBrightness(@OriginalArg(0) float brightness) {
|
public static void setBrightness(@OriginalArg(0) float brightness) {
|
||||||
randBrightness(brightness);
|
randBrightness(brightness);
|
||||||
|
|
@ -705,7 +694,7 @@ public final class Rasteriser {
|
||||||
if (texels == null || alpha > 10) {
|
if (texels == null || alpha > 10) {
|
||||||
int average = textureProvider.getAverageColor(textureId);
|
int average = textureProvider.getAverageColor(textureId);
|
||||||
textureHasTransparency = true;
|
textureHasTransparency = true;
|
||||||
fillGouraudTriangle(yA, yB, yC, xA, xB, xC, multiplyLightness(average, colorA), multiplyLightness(average, colorB), multiplyLightness(average, colorC));
|
fillGouraudTriangle(yA, yB, yC, xA, xB, xC, ColorUtils.multiplyLightness(average, colorA), ColorUtils.multiplyLightness(average, colorB), ColorUtils.multiplyLightness(average, colorC));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -937,7 +937,7 @@ public class SceneGraph {
|
||||||
overlay -= rowLightness[local234];
|
overlay -= rowLightness[local234];
|
||||||
}
|
}
|
||||||
if (local209 >= 0 && local202 > 0) {
|
if (local209 >= 0 && local202 > 0) {
|
||||||
local142[local168][local209] = method1309(overlay / local202, local178 / local202, local173 * 256 / local200);
|
local142[local168][local209] = ColorUtils.method1309(overlay / local202, local178 / local202, local173 * 256 / local200);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1535,20 +1535,6 @@ public class SceneGraph {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ed", name = "a", descriptor = "(IIII)I")
|
|
||||||
public static int method1309(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2) {
|
|
||||||
if (arg0 > 243) {
|
|
||||||
arg1 >>= 0x4;
|
|
||||||
} else if (arg0 > 217) {
|
|
||||||
arg1 >>= 0x3;
|
|
||||||
} else if (arg0 > 192) {
|
|
||||||
arg1 >>= 0x2;
|
|
||||||
} else if (arg0 > 179) {
|
|
||||||
arg1 >>= 0x1;
|
|
||||||
}
|
|
||||||
return (arg0 >> 1) + (arg1 >> 5 << 7) + (arg2 >> 2 << 10);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!sd", name = "c", descriptor = "(II)V")
|
@OriginalMember(owner = "client!sd", name = "c", descriptor = "(II)V")
|
||||||
public static void method3884(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
public static void method3884(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
||||||
@Pc(7) Tile local7 = tiles[0][arg0][arg1];
|
@Pc(7) Tile local7 = tiles[0][arg0][arg1];
|
||||||
|
|
@ -2452,7 +2438,7 @@ public class SceneGraph {
|
||||||
local201 = local199 - (local213[local112][local133] + local213[local112][local129] + local213[local103][local129] + local213[local103][local133] >> 2);
|
local201 = local199 - (local213[local112][local133] + local213[local112][local129] + local213[local103][local129] + local213[local103][local133] >> 2);
|
||||||
}
|
}
|
||||||
local213 = null;
|
local213 = null;
|
||||||
@Pc(261) long local261 = arg7 | 0x40000000 | arg8 << 7 | arg6 << 14 | arg9 << 20;
|
@Pc(261) long local261 = arg7 | 0x40000000 | (long) arg8 << 7 | (long) arg6 << 14 | (long) arg9 << 20;
|
||||||
if (arg3) {
|
if (arg3) {
|
||||||
local213 = surfaceTileHeights[0];
|
local213 = surfaceTileHeights[0];
|
||||||
} else if (arg0 < 3) {
|
} else if (arg0 < 3) {
|
||||||
|
|
@ -3763,7 +3749,7 @@ public class SceneGraph {
|
||||||
for (local155 = 0; local155 < local16; local155++) {
|
for (local155 = 0; local155 < local16; local155++) {
|
||||||
local1358[local155] = local1348[local155].key;
|
local1358[local155] = local1348[local155].key;
|
||||||
}
|
}
|
||||||
method23(local1358, local1348);
|
ArrayUtils.sort(local1358, local1348);
|
||||||
return local1348;
|
return local1348;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -3831,42 +3817,6 @@ public class SceneGraph {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ac", name = "a", descriptor = "([J[Ljava/lang/Object;I)V")
|
|
||||||
public static void method23(@OriginalArg(0) long[] arg0, @OriginalArg(1) Object[] arg1) {
|
|
||||||
method3909(arg0.length - 1, arg0, 0, arg1);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!sh", name = "a", descriptor = "(I[JII[Ljava/lang/Object;)V")
|
|
||||||
public static void method3909(@OriginalArg(0) int arg0, @OriginalArg(1) long[] arg1, @OriginalArg(3) int arg2, @OriginalArg(4) Object[] arg3) {
|
|
||||||
if (arg2 >= arg0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@Pc(16) int local16 = arg2;
|
|
||||||
@Pc(23) int local23 = (arg2 + arg0) / 2;
|
|
||||||
@Pc(27) long local27 = arg1[local23];
|
|
||||||
arg1[local23] = arg1[arg0];
|
|
||||||
arg1[arg0] = local27;
|
|
||||||
@Pc(41) Object local41 = arg3[local23];
|
|
||||||
arg3[local23] = arg3[arg0];
|
|
||||||
arg3[arg0] = local41;
|
|
||||||
for (@Pc(53) int local53 = arg2; local53 < arg0; local53++) {
|
|
||||||
if (local27 + (long) (local53 & 0x1) > arg1[local53]) {
|
|
||||||
@Pc(72) long local72 = arg1[local53];
|
|
||||||
arg1[local53] = arg1[local16];
|
|
||||||
arg1[local16] = local72;
|
|
||||||
@Pc(86) Object local86 = arg3[local53];
|
|
||||||
arg3[local53] = arg3[local16];
|
|
||||||
arg3[local16++] = local86;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
arg1[arg0] = arg1[local16];
|
|
||||||
arg1[local16] = local27;
|
|
||||||
arg3[arg0] = arg3[local16];
|
|
||||||
arg3[local16] = local41;
|
|
||||||
method3909(local16 - 1, arg1, arg2, arg3);
|
|
||||||
method3909(arg0, arg1, local16 + 1, arg3);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ke", name = "a", descriptor = "(Lclient!rh;IIIIIIIZ)V")
|
@OriginalMember(owner = "client!ke", name = "a", descriptor = "(Lclient!rh;IIIIIIIZ)V")
|
||||||
public static void method2610(@OriginalArg(0) PlainTile 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) boolean arg8) {
|
public static void method2610(@OriginalArg(0) PlainTile 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) boolean arg8) {
|
||||||
@Pc(6) int local6;
|
@Pc(6) int local6;
|
||||||
|
|
@ -3939,7 +3889,7 @@ public class SceneGraph {
|
||||||
}
|
}
|
||||||
} else if (!Preferences.manyGroundTextures) {
|
} else if (!Preferences.manyGroundTextures) {
|
||||||
local475 = Rasteriser.textureProvider.getAverageColor(arg0.anInt4869);
|
local475 = Rasteriser.textureProvider.getAverageColor(arg0.anInt4869);
|
||||||
Rasteriser.fillGouraudTriangle(local315, local331, local299, local307, local323, local291, method1640(local475, arg0.anInt4865), method1640(local475, arg0.anInt4864), method1640(local475, arg0.anInt4867));
|
Rasteriser.fillGouraudTriangle(local315, local331, local299, local307, local323, local291, ColorUtils.multiplyLightness3(local475, arg0.anInt4865), ColorUtils.multiplyLightness3(local475, arg0.anInt4864), ColorUtils.multiplyLightness3(local475, arg0.anInt4867));
|
||||||
} else if (arg0.aBoolean241) {
|
} else if (arg0.aBoolean241) {
|
||||||
Rasteriser.fillTexturedTriangle(local315, local331, local299, local307, local323, local291, arg0.anInt4865, arg0.anInt4864, arg0.anInt4867, local97, local21, local241, local119, local49, local85, local117, local165, local261, arg0.anInt4869);
|
Rasteriser.fillTexturedTriangle(local315, local331, local299, local307, local323, local291, arg0.anInt4865, arg0.anInt4864, arg0.anInt4867, local97, local21, local241, local119, local49, local85, local117, local165, local261, arg0.anInt4869);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -3966,7 +3916,7 @@ public class SceneGraph {
|
||||||
Rasteriser.fillTexturedTriangle(local283, local299, local331, local275, local291, local323, arg0.anInt4872, arg0.anInt4867, arg0.anInt4864, local97, local21, local241, local119, local49, local85, local117, local165, local261, arg0.anInt4869);
|
Rasteriser.fillTexturedTriangle(local283, local299, local331, local275, local291, local323, arg0.anInt4872, arg0.anInt4867, arg0.anInt4864, local97, local21, local241, local119, local49, local85, local117, local165, local261, arg0.anInt4869);
|
||||||
} else {
|
} else {
|
||||||
local475 = Rasteriser.textureProvider.getAverageColor(arg0.anInt4869);
|
local475 = Rasteriser.textureProvider.getAverageColor(arg0.anInt4869);
|
||||||
Rasteriser.fillGouraudTriangle(local283, local299, local331, local275, local291, local323, method1640(local475, arg0.anInt4872), method1640(local475, arg0.anInt4867), method1640(local475, arg0.anInt4864));
|
Rasteriser.fillGouraudTriangle(local283, local299, local331, local275, local291, local323, ColorUtils.multiplyLightness3(local475, arg0.anInt4872), ColorUtils.multiplyLightness3(local475, arg0.anInt4867), ColorUtils.multiplyLightness3(local475, arg0.anInt4864));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4240,17 +4190,6 @@ public class SceneGraph {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ri", name = "a", descriptor = "(II)I")
|
|
||||||
public static int method1640(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
|
||||||
arg1 = arg1 * (arg0 & 0x7F) >> 7;
|
|
||||||
if (arg1 < 2) {
|
|
||||||
arg1 = 2;
|
|
||||||
} else if (arg1 > 126) {
|
|
||||||
arg1 = 126;
|
|
||||||
}
|
|
||||||
return (arg0 & 0xFF80) + arg1;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!lh", name = "a", descriptor = "(Lclient!fg;IIIIIIZ)V")
|
@OriginalMember(owner = "client!lh", name = "a", descriptor = "(Lclient!fg;IIIIIIZ)V")
|
||||||
public static void method2762(@OriginalArg(0) ShapedTile 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) boolean arg7) {
|
public static void method2762(@OriginalArg(0) ShapedTile 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) boolean arg7) {
|
||||||
@Pc(3) int local3 = arg0.anIntArray168.length;
|
@Pc(3) int local3 = arg0.anIntArray168.length;
|
||||||
|
|
@ -4303,7 +4242,7 @@ public class SceneGraph {
|
||||||
}
|
}
|
||||||
} else if (!Preferences.manyGroundTextures) {
|
} else if (!Preferences.manyGroundTextures) {
|
||||||
@Pc(373) int local373 = Rasteriser.textureProvider.getAverageColor(arg0.anIntArray161[local5]);
|
@Pc(373) int local373 = Rasteriser.textureProvider.getAverageColor(arg0.anIntArray161[local5]);
|
||||||
Rasteriser.fillGouraudTriangle(local156, local160, local164, local39, local148, local152, method1640(local373, arg0.anIntArray167[local5]), method1640(local373, arg0.anIntArray172[local5]), method1640(local373, arg0.anIntArray171[local5]));
|
Rasteriser.fillGouraudTriangle(local156, local160, local164, local39, local148, local152, ColorUtils.multiplyLightness3(local373, arg0.anIntArray167[local5]), ColorUtils.multiplyLightness3(local373, arg0.anIntArray172[local5]), ColorUtils.multiplyLightness3(local373, arg0.anIntArray171[local5]));
|
||||||
} else if (arg0.aBoolean113) {
|
} else if (arg0.aBoolean113) {
|
||||||
Rasteriser.fillTexturedTriangle(local156, local160, local164, local39, local148, local152, arg0.anIntArray167[local5], arg0.anIntArray172[local5], arg0.anIntArray171[local5], anIntArray159[0], anIntArray159[1], anIntArray159[3], anIntArray170[0], anIntArray170[1], anIntArray170[3], anIntArray169[0], anIntArray169[1], anIntArray169[3], arg0.anIntArray161[local5]);
|
Rasteriser.fillTexturedTriangle(local156, local160, local164, local39, local148, local152, arg0.anIntArray167[local5], arg0.anIntArray172[local5], arg0.anIntArray171[local5], anIntArray159[0], anIntArray159[1], anIntArray159[3], anIntArray170[0], anIntArray170[1], anIntArray170[3], anIntArray169[0], anIntArray169[1], anIntArray169[3], arg0.anIntArray161[local5]);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -4816,7 +4755,7 @@ public class SceneGraph {
|
||||||
for (local38 = 0; local38 < local12; local38++) {
|
for (local38 = 0; local38 < local12; local38++) {
|
||||||
local2826[local38] = local2823[local38].key;
|
local2826[local38] = local2823[local38].key;
|
||||||
}
|
}
|
||||||
method23(local2826, local2823);
|
ArrayUtils.sort(local2826, local2823);
|
||||||
return local2823;
|
return local2823;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4833,7 +4772,7 @@ public class SceneGraph {
|
||||||
|
|
||||||
@OriginalMember(owner = "client!bi", name = "a", descriptor = "(IIBI)I")
|
@OriginalMember(owner = "client!bi", name = "a", descriptor = "(IIBI)I")
|
||||||
public static int method588(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
public static int method588(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2) {
|
||||||
@Pc(19) int local19 = Rasteriser.palette[SoftwareModel.method4585(arg1, arg2)];
|
@Pc(19) int local19 = Rasteriser.palette[ColorUtils.multiplyLightness2(arg1, arg2)];
|
||||||
if (arg0 > 0) {
|
if (arg0 > 0) {
|
||||||
@Pc(31) int local31 = Rasteriser.textureProvider.method3238(arg0 & 0xFFFF);
|
@Pc(31) int local31 = Rasteriser.textureProvider.method3238(arg0 & 0xFFFF);
|
||||||
@Pc(49) int local49;
|
@Pc(49) int local49;
|
||||||
|
|
@ -5074,4 +5013,462 @@ public class SceneGraph {
|
||||||
return local50 + (local65 >> 7);
|
return local50 + (local65 >> 7);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!bm", name = "a", descriptor = "(IBIIII)V")
|
||||||
|
public static void method645(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3, @OriginalArg(5) int arg4) {
|
||||||
|
@Pc(3) int local3;
|
||||||
|
@Pc(10) int local10;
|
||||||
|
for (local3 = arg1; local3 <= arg3 + arg1; local3++) {
|
||||||
|
for (local10 = arg2; local10 <= arg4 + arg2; local10++) {
|
||||||
|
if (local10 >= 0 && local10 < 104 && local3 >= 0 && local3 < 104) {
|
||||||
|
aByteArrayArrayArray9[arg0][local10][local3] = 127;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (local3 = arg1; local3 < arg3 + arg1; local3++) {
|
||||||
|
for (local10 = arg2; local10 < arg2 + arg4; local10++) {
|
||||||
|
if (local10 >= 0 && local10 < 104 && local3 >= 0 && local3 < 104) {
|
||||||
|
tileHeights[arg0][local10][local3] = arg0 <= 0 ? 0 : tileHeights[arg0 - 1][local10][local3];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (arg2 > 0 && arg2 < 104) {
|
||||||
|
for (local3 = arg1 + 1; local3 < arg1 + arg3; local3++) {
|
||||||
|
if (local3 >= 0 && local3 < 104) {
|
||||||
|
tileHeights[arg0][arg2][local3] = tileHeights[arg0][arg2 - 1][local3];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (arg1 > 0 && arg1 < 104) {
|
||||||
|
for (local3 = arg2 + 1; local3 < arg2 + arg4; local3++) {
|
||||||
|
if (local3 >= 0 && local3 < 104) {
|
||||||
|
tileHeights[arg0][local3][arg1] = tileHeights[arg0][local3][arg1 - 1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (arg2 < 0 || arg1 < 0 || arg2 >= 104 || arg1 >= 104) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (arg0 == 0) {
|
||||||
|
if (arg2 > 0 && tileHeights[arg0][arg2 - 1][arg1] != 0) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2 - 1][arg1];
|
||||||
|
} else if (arg1 > 0 && tileHeights[arg0][arg2][arg1 - 1] != 0) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2][arg1 - 1];
|
||||||
|
} else if (arg2 > 0 && arg1 > 0 && tileHeights[arg0][arg2 - 1][arg1 - 1] != 0) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2 - 1][arg1 - 1];
|
||||||
|
}
|
||||||
|
} else if (arg2 > 0 && tileHeights[arg0 - 1][arg2 - 1][arg1] != tileHeights[arg0][arg2 - 1][arg1]) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2 - 1][arg1];
|
||||||
|
} else if (arg1 > 0 && tileHeights[arg0][arg2][arg1 - 1] != tileHeights[arg0 - 1][arg2][arg1 - 1]) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2][arg1 - 1];
|
||||||
|
} else if (arg2 > 0 && arg1 > 0 && tileHeights[arg0][arg2 - 1][arg1 - 1] != tileHeights[arg0 - 1][arg2 - 1][arg1 - 1]) {
|
||||||
|
tileHeights[arg0][arg2][arg1] = tileHeights[arg0][arg2 - 1][arg1 - 1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!wa", name = "a", descriptor = "([Lclient!mj;ZIIIII[B)V")
|
||||||
|
public static void method2203(@OriginalArg(0) CollisionMap[] arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int arg5, @OriginalArg(7) byte[] arg6) {
|
||||||
|
@Pc(14) int local14;
|
||||||
|
@Pc(21) int local21;
|
||||||
|
if (!arg1) {
|
||||||
|
for (@Pc(9) int local9 = 0; local9 < 4; local9++) {
|
||||||
|
for (local14 = 0; local14 < 64; local14++) {
|
||||||
|
for (local21 = 0; local21 < 64; local21++) {
|
||||||
|
if (arg4 + local14 > 0 && local14 + arg4 < 103 && arg3 + local21 > 0 && local21 + arg3 < 103) {
|
||||||
|
arg0[local9].flags[local14 + arg4][arg3 + local21] &= 0xFEFFFFFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Pc(95) Buffer local95 = new Buffer(arg6);
|
||||||
|
@Pc(99) byte local99;
|
||||||
|
if (arg1) {
|
||||||
|
local99 = 1;
|
||||||
|
} else {
|
||||||
|
local99 = 4;
|
||||||
|
}
|
||||||
|
@Pc(117) int local117;
|
||||||
|
for (local14 = 0; local14 < local99; local14++) {
|
||||||
|
for (local21 = 0; local21 < 64; local21++) {
|
||||||
|
for (local117 = 0; local117 < 64; local117++) {
|
||||||
|
readTile(arg2, arg5, arg1, local95, local117 + arg3, arg4 + local21, 0, local14);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Pc(146) boolean local146 = false;
|
||||||
|
@Pc(243) int local243;
|
||||||
|
@Pc(188) int local188;
|
||||||
|
@Pc(190) int local190;
|
||||||
|
@Pc(194) int local194;
|
||||||
|
while (local95.offset < local95.data.length) {
|
||||||
|
local21 = local95.g1();
|
||||||
|
if (local21 != 129) {
|
||||||
|
local95.offset--;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
for (local117 = 0; local117 < 4; local117++) {
|
||||||
|
@Pc(168) byte local168 = local95.g1b();
|
||||||
|
if (local168 == 0) {
|
||||||
|
local243 = arg4;
|
||||||
|
if (arg4 < 0) {
|
||||||
|
local243 = 0;
|
||||||
|
} else if (arg4 >= 104) {
|
||||||
|
local243 = 104;
|
||||||
|
}
|
||||||
|
local190 = arg3;
|
||||||
|
if (arg3 < 0) {
|
||||||
|
local190 = 0;
|
||||||
|
} else if (arg3 >= 104) {
|
||||||
|
local190 = 104;
|
||||||
|
}
|
||||||
|
local188 = arg4 + 64;
|
||||||
|
local194 = arg3 + 64;
|
||||||
|
if (local194 < 0) {
|
||||||
|
local194 = 0;
|
||||||
|
} else if (local194 >= 104) {
|
||||||
|
local194 = 104;
|
||||||
|
}
|
||||||
|
if (local188 < 0) {
|
||||||
|
local188 = 0;
|
||||||
|
} else if (local188 >= 104) {
|
||||||
|
local188 = 104;
|
||||||
|
}
|
||||||
|
while (local243 < local188) {
|
||||||
|
while (local190 < local194) {
|
||||||
|
aByteArrayArrayArray13[local117][local243][local190] = 0;
|
||||||
|
local190++;
|
||||||
|
}
|
||||||
|
local243++;
|
||||||
|
}
|
||||||
|
} else if (local168 == 1) {
|
||||||
|
for (local243 = 0; local243 < 64; local243 += 4) {
|
||||||
|
for (local188 = 0; local188 < 64; local188 += 4) {
|
||||||
|
@Pc(305) byte local305 = local95.g1b();
|
||||||
|
for (local194 = local243 + arg4; local194 < arg4 + local243 + 4; local194++) {
|
||||||
|
for (@Pc(320) int local320 = arg3 + local188; local320 < arg3 + local188 + 4; local320++) {
|
||||||
|
if (local194 >= 0 && local194 < 104 && local320 >= 0 && local320 < 104) {
|
||||||
|
aByteArrayArrayArray13[local117][local194][local320] = local305;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (local168 == 2 && local117 > 0) {
|
||||||
|
local188 = arg4 + 64;
|
||||||
|
local190 = arg3;
|
||||||
|
local194 = arg3 + 64;
|
||||||
|
if (local188 < 0) {
|
||||||
|
local188 = 0;
|
||||||
|
} else if (local188 >= 104) {
|
||||||
|
local188 = 104;
|
||||||
|
}
|
||||||
|
if (arg3 < 0) {
|
||||||
|
local190 = 0;
|
||||||
|
} else if (arg3 >= 104) {
|
||||||
|
local190 = 104;
|
||||||
|
}
|
||||||
|
if (local194 < 0) {
|
||||||
|
local194 = 0;
|
||||||
|
} else if (local194 >= 104) {
|
||||||
|
local194 = 104;
|
||||||
|
}
|
||||||
|
local243 = arg4;
|
||||||
|
if (arg4 < 0) {
|
||||||
|
local243 = 0;
|
||||||
|
} else if (arg4 >= 104) {
|
||||||
|
local243 = 104;
|
||||||
|
}
|
||||||
|
while (local188 > local243) {
|
||||||
|
while (local190 < local194) {
|
||||||
|
aByteArrayArrayArray13[local117][local243][local190] = aByteArrayArrayArray13[local117 - 1][local243][local190];
|
||||||
|
local190++;
|
||||||
|
}
|
||||||
|
local243++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
local146 = true;
|
||||||
|
}
|
||||||
|
@Pc(515) int local515;
|
||||||
|
if (GlRenderer.enabled && !arg1) {
|
||||||
|
@Pc(490) Environment local490 = null;
|
||||||
|
label270:
|
||||||
|
while (true) {
|
||||||
|
label263:
|
||||||
|
do {
|
||||||
|
while (local95.offset < local95.data.length) {
|
||||||
|
local117 = local95.g1();
|
||||||
|
if (local117 != 0) {
|
||||||
|
if (local117 != 1) {
|
||||||
|
throw new IllegalStateException();
|
||||||
|
}
|
||||||
|
local515 = local95.g1();
|
||||||
|
continue label263;
|
||||||
|
}
|
||||||
|
local490 = new Environment(local95);
|
||||||
|
}
|
||||||
|
if (local490 == null) {
|
||||||
|
local490 = new Environment();
|
||||||
|
}
|
||||||
|
for (local117 = 0; local117 < 8; local117++) {
|
||||||
|
for (local515 = 0; local515 < 8; local515++) {
|
||||||
|
local243 = local117 + (arg4 >> 3);
|
||||||
|
local188 = (arg3 >> 3) + local515;
|
||||||
|
if (local243 >= 0 && local243 < 13 && local188 >= 0 && local188 < 13) {
|
||||||
|
FogManager.chunksAtmosphere[local243][local188] = local490;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break label270;
|
||||||
|
} while (local515 <= 0);
|
||||||
|
for (local243 = 0; local243 < local515; local243++) {
|
||||||
|
@Pc(529) Light local529 = new Light(local95);
|
||||||
|
if (local529.anInt2243 == 31) {
|
||||||
|
@Pc(541) LightType local541 = LightTypeList.get(local95.g2());
|
||||||
|
local529.method1762(local541.anInt2865, local541.anInt2873, local541.anInt2867, local541.anInt2872);
|
||||||
|
}
|
||||||
|
local529.z += arg3 << 7;
|
||||||
|
local529.x += arg4 << 7;
|
||||||
|
local194 = local529.z >> 7;
|
||||||
|
local190 = local529.x >> 7;
|
||||||
|
if (local190 >= 0 && local194 >= 0 && local190 < 104 && local194 < 104) {
|
||||||
|
local529.aBoolean125 = (tileFlags[1][local190][local194] & 0x2) != 0;
|
||||||
|
local529.y = tileHeights[local529.level][local190][local194] - local529.y;
|
||||||
|
LightingManager.method2389(local529);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (local146) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (local21 = 0; local21 < 4; local21++) {
|
||||||
|
for (local117 = 0; local117 < 16; local117++) {
|
||||||
|
for (local515 = 0; local515 < 16; local515++) {
|
||||||
|
local243 = (arg4 >> 2) + local117;
|
||||||
|
local188 = local515 + (arg3 >> 2);
|
||||||
|
if (local243 >= 0 && local243 < 26 && local188 >= 0 && local188 < 26) {
|
||||||
|
aByteArrayArrayArray13[local21][local243][local188] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!tm", name = "a", descriptor = "(III[Lclient!mj;IB[BIIIZ)V")
|
||||||
|
public static void method4228(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) CollisionMap[] arg3, @OriginalArg(4) int arg4, @OriginalArg(6) byte[] arg5, @OriginalArg(7) int arg6, @OriginalArg(8) int arg7, @OriginalArg(9) int arg8, @OriginalArg(10) boolean arg9) {
|
||||||
|
@Pc(17) int local17;
|
||||||
|
if (!arg9) {
|
||||||
|
for (@Pc(10) int local10 = 0; local10 < 8; local10++) {
|
||||||
|
for (local17 = 0; local17 < 8; local17++) {
|
||||||
|
if (arg1 + local10 > 0 && local10 + arg1 < 103 && local17 + arg4 > 0 && arg4 + local17 < 103) {
|
||||||
|
arg3[arg2].flags[local10 + arg1][local17 + arg4] &= 0xFEFFFFFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Pc(87) byte local87;
|
||||||
|
if (arg9) {
|
||||||
|
local87 = 1;
|
||||||
|
} else {
|
||||||
|
local87 = 4;
|
||||||
|
}
|
||||||
|
@Pc(96) Buffer local96 = new Buffer(arg5);
|
||||||
|
@Pc(103) int local103;
|
||||||
|
@Pc(108) int local108;
|
||||||
|
for (local17 = 0; local17 < local87; local17++) {
|
||||||
|
for (local103 = 0; local103 < 64; local103++) {
|
||||||
|
for (local108 = 0; local108 < 64; local108++) {
|
||||||
|
if (arg6 == local17 && arg8 <= local103 && arg8 + 8 > local103 && arg7 <= local108 && local108 < arg7 + 8) {
|
||||||
|
readTile(0, 0, arg9, local96, rotateZ(arg0, local103 & 0x7, local108 & 0x7) + arg4, rotateX(arg0, local108 & 0x7, local103 & 0x7) + arg1, arg0, arg2);
|
||||||
|
} else {
|
||||||
|
readTile(0, 0, arg9, local96, -1, -1, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Pc(232) int local232;
|
||||||
|
@Pc(417) int local417;
|
||||||
|
@Pc(255) int local255;
|
||||||
|
@Pc(266) int local266;
|
||||||
|
@Pc(316) int local316;
|
||||||
|
while (local96.data.length > local96.offset) {
|
||||||
|
local103 = local96.g1();
|
||||||
|
if (local103 != 129) {
|
||||||
|
local96.offset--;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
for (local108 = 0; local108 < 4; local108++) {
|
||||||
|
@Pc(223) byte local223 = local96.g1b();
|
||||||
|
@Pc(237) int local237;
|
||||||
|
if (local223 == 0) {
|
||||||
|
if (local108 <= arg6) {
|
||||||
|
local237 = arg1 + 7;
|
||||||
|
local232 = arg1;
|
||||||
|
local255 = arg4 + 7;
|
||||||
|
if (local255 < 0) {
|
||||||
|
local255 = 0;
|
||||||
|
} else if (local255 >= 104) {
|
||||||
|
local255 = 104;
|
||||||
|
}
|
||||||
|
if (local237 < 0) {
|
||||||
|
local237 = 0;
|
||||||
|
} else if (local237 >= 104) {
|
||||||
|
local237 = 104;
|
||||||
|
}
|
||||||
|
local417 = arg4;
|
||||||
|
if (arg4 < 0) {
|
||||||
|
local417 = 0;
|
||||||
|
} else if (arg4 >= 104) {
|
||||||
|
local417 = 104;
|
||||||
|
}
|
||||||
|
if (arg1 < 0) {
|
||||||
|
local232 = 0;
|
||||||
|
} else if (arg1 >= 104) {
|
||||||
|
local232 = 104;
|
||||||
|
}
|
||||||
|
while (local237 > local232) {
|
||||||
|
while (local417 < local255) {
|
||||||
|
aByteArrayArrayArray13[arg2][local232][local417] = 0;
|
||||||
|
local417++;
|
||||||
|
}
|
||||||
|
local232++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (local223 == 1) {
|
||||||
|
for (local232 = 0; local232 < 64; local232 += 4) {
|
||||||
|
for (local237 = 0; local237 < 64; local237 += 4) {
|
||||||
|
@Pc(246) byte local246 = local96.g1b();
|
||||||
|
if (local108 <= arg6) {
|
||||||
|
for (local255 = local232; local255 < local232 + 4; local255++) {
|
||||||
|
for (local266 = local237; local266 < local237 + 4; local266++) {
|
||||||
|
if (local255 >= arg8 && local255 < arg8 + 8 && local266 >= arg7 && arg7 + 8 > arg7) {
|
||||||
|
local316 = arg1 + rotateX(arg0, local266 & 0x7, local255 & 0x7);
|
||||||
|
@Pc(328) int local328 = rotateZ(arg0, local255 & 0x7, local266 & 0x7) + arg4;
|
||||||
|
if (local316 >= 0 && local316 < 104 && local328 >= 0 && local328 < 104) {
|
||||||
|
aByteArrayArrayArray13[arg2][local316][local328] = local246;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (local223 == 2) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Pc(497) int local497;
|
||||||
|
if (GlRenderer.enabled && !arg9) {
|
||||||
|
@Pc(472) Environment local472 = null;
|
||||||
|
label207:
|
||||||
|
while (true) {
|
||||||
|
label200:
|
||||||
|
do {
|
||||||
|
while (local96.data.length > local96.offset) {
|
||||||
|
local108 = local96.g1();
|
||||||
|
if (local108 != 0) {
|
||||||
|
if (local108 != 1) {
|
||||||
|
throw new IllegalStateException();
|
||||||
|
}
|
||||||
|
local497 = local96.g1();
|
||||||
|
continue label200;
|
||||||
|
}
|
||||||
|
local472 = new Environment(local96);
|
||||||
|
}
|
||||||
|
if (local472 == null) {
|
||||||
|
local472 = new Environment();
|
||||||
|
}
|
||||||
|
FogManager.chunksAtmosphere[arg1 >> 3][arg4 >> 3] = local472;
|
||||||
|
break label207;
|
||||||
|
} while (local497 <= 0);
|
||||||
|
for (local232 = 0; local232 < local497; local232++) {
|
||||||
|
@Pc(517) Light local517 = new Light(local96);
|
||||||
|
if (local517.anInt2243 == 31) {
|
||||||
|
@Pc(529) LightType local529 = LightTypeList.get(local96.g2());
|
||||||
|
local517.method1762(local529.anInt2865, local529.anInt2873, local529.anInt2867, local529.anInt2872);
|
||||||
|
}
|
||||||
|
local417 = local517.x >> 7;
|
||||||
|
local255 = local517.z >> 7;
|
||||||
|
if (arg6 == local517.level && local417 >= arg8 && arg8 + 8 > local417 && arg7 <= local255 && arg7 + 8 > local255) {
|
||||||
|
local266 = rotateXFine(arg0, local517.x & 0x3FF, local517.z & 0x3FF) + (arg1 << 7);
|
||||||
|
local316 = rotateZFine(local517.x & 0x3FF, arg0, local517.z & 0x3FF) + (arg4 << 7);
|
||||||
|
local517.x = local266;
|
||||||
|
local517.z = local316;
|
||||||
|
local417 = local517.x >> 7;
|
||||||
|
local255 = local517.z >> 7;
|
||||||
|
if (local417 >= 0 && local255 >= 0 && local417 < 104 && local255 < 104) {
|
||||||
|
local517.aBoolean125 = (tileFlags[1][local417][local255] & 0x2) != 0;
|
||||||
|
local517.y = tileHeights[local517.level][local417][local255] - local517.y;
|
||||||
|
LightingManager.method2389(local517);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
local103 = arg1 + 7;
|
||||||
|
local108 = arg4 + 7;
|
||||||
|
for (local497 = arg1; local497 < local103; local497++) {
|
||||||
|
for (local232 = arg4; local232 < local108; local232++) {
|
||||||
|
aByteArrayArrayArray13[arg2][local497][local232] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!rg", name = "a", descriptor = "(IZII)I")
|
||||||
|
public static int rotateX(@OriginalArg(0) int arg0, @OriginalArg(2) int z, @OriginalArg(3) int x) {
|
||||||
|
@Pc(3) int angle = arg0 & 0x3;
|
||||||
|
if (angle == 0) {
|
||||||
|
return x;
|
||||||
|
} else if (angle == 1) {
|
||||||
|
return z;
|
||||||
|
} else if (angle == 2) {
|
||||||
|
return 7 - x;
|
||||||
|
} else {
|
||||||
|
return 7 - z;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!qg", name = "a", descriptor = "(IBII)I")
|
||||||
|
public static int rotateZ(@OriginalArg(0) int arg0, @OriginalArg(2) int x, @OriginalArg(3) int z) {
|
||||||
|
@Pc(3) int angle = arg0 & 0x3;
|
||||||
|
if (angle == 0) {
|
||||||
|
return z;
|
||||||
|
} else if (angle == 1) {
|
||||||
|
return 7 - x;
|
||||||
|
} else if (angle == 2) {
|
||||||
|
return 7 - z;
|
||||||
|
} else {
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!qi", name = "a", descriptor = "(IIBI)I")
|
||||||
|
public static int rotateXFine(@OriginalArg(0) int arg0, @OriginalArg(1) int x, @OriginalArg(3) int z) {
|
||||||
|
@Pc(3) int angle = arg0 & 0x3;
|
||||||
|
if (angle == 0) {
|
||||||
|
return x;
|
||||||
|
} else if (angle == 1) {
|
||||||
|
return z;
|
||||||
|
} else if (angle == 2) {
|
||||||
|
return 1023 - x;
|
||||||
|
} else {
|
||||||
|
return 1023 - z;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@OriginalMember(owner = "client!ol", name = "a", descriptor = "(IIZI)I")
|
||||||
|
public static int rotateZFine(@OriginalArg(0) int x, @OriginalArg(1) int arg1, @OriginalArg(3) int z) {
|
||||||
|
@Pc(3) int angle = arg1 & 0x3;
|
||||||
|
if (angle == 0) {
|
||||||
|
return z;
|
||||||
|
} else if (angle == 1) {
|
||||||
|
return 1023 - x;
|
||||||
|
} else if (angle == 2) {
|
||||||
|
return 1023 - z;
|
||||||
|
} else {
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -340,25 +340,25 @@ public final class SoftwareModel extends Model {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray534[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray534[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
||||||
this.anIntArray533[local133] = local468 | method4585(local416, local468 >> 17);
|
this.anIntArray533[local133] = local468 | ColorUtils.multiplyLightness2(local416, local468 >> 17);
|
||||||
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray524[local133]] == null) {
|
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray524[local133]] == null) {
|
||||||
local435 = arg0.vertexNormals[this.anIntArray524[local133]];
|
local435 = arg0.vertexNormals[this.anIntArray524[local133]];
|
||||||
} else {
|
} else {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray524[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray524[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
||||||
this.anIntArray523[local133] = local468 | method4585(local416, local468 >> 17);
|
this.anIntArray523[local133] = local468 | ColorUtils.multiplyLightness2(local416, local468 >> 17);
|
||||||
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray529[local133]] == null) {
|
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray529[local133]] == null) {
|
||||||
local435 = arg0.vertexNormals[this.anIntArray529[local133]];
|
local435 = arg0.vertexNormals[this.anIntArray529[local133]];
|
||||||
} else {
|
} else {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray529[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray529[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles) << 17;
|
||||||
this.anIntArray532[local133] = local468 | method4585(local416, local468 >> 17);
|
this.anIntArray532[local133] = local468 | ColorUtils.multiplyLightness2(local416, local468 >> 17);
|
||||||
} else if (local366 == 1) {
|
} else if (local366 == 1) {
|
||||||
local614 = arg0.triangleNormals[local133];
|
local614 = arg0.triangleNormals[local133];
|
||||||
local468 = arg1 + (arg3 * local614.anInt4769 + arg4 * local614.anInt4770 + arg5 * local614.anInt4767) / (local108 + local108 / 2) << 17;
|
local468 = arg1 + (arg3 * local614.anInt4769 + arg4 * local614.anInt4770 + arg5 * local614.anInt4767) / (local108 + local108 / 2) << 17;
|
||||||
this.anIntArray533[local133] = local468 | method4585(arg0.triangleColors[local133] & 0xFFFF, local468 >> 17);
|
this.anIntArray533[local133] = local468 | ColorUtils.multiplyLightness2(arg0.triangleColors[local133] & 0xFFFF, local468 >> 17);
|
||||||
this.anIntArray532[local133] = -1;
|
this.anIntArray532[local133] = -1;
|
||||||
} else if (local366 == 3) {
|
} else if (local366 == 3) {
|
||||||
this.anIntArray533[local133] = 128;
|
this.anIntArray533[local133] = 128;
|
||||||
|
|
@ -373,25 +373,25 @@ public final class SoftwareModel extends Model {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray534[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray534[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
||||||
this.anIntArray533[local133] = method4582(local468);
|
this.anIntArray533[local133] = ColorUtils.method4582(local468);
|
||||||
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray524[local133]] == null) {
|
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray524[local133]] == null) {
|
||||||
local435 = arg0.vertexNormals[this.anIntArray524[local133]];
|
local435 = arg0.vertexNormals[this.anIntArray524[local133]];
|
||||||
} else {
|
} else {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray524[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray524[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
||||||
this.anIntArray523[local133] = method4582(local468);
|
this.anIntArray523[local133] = ColorUtils.method4582(local468);
|
||||||
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray529[local133]] == null) {
|
if (arg0.aClass57Array2 == null || arg0.aClass57Array2[this.anIntArray529[local133]] == null) {
|
||||||
local435 = arg0.vertexNormals[this.anIntArray529[local133]];
|
local435 = arg0.vertexNormals[this.anIntArray529[local133]];
|
||||||
} else {
|
} else {
|
||||||
local435 = arg0.aClass57Array2[this.anIntArray529[local133]];
|
local435 = arg0.aClass57Array2[this.anIntArray529[local133]];
|
||||||
}
|
}
|
||||||
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
local468 = arg1 + (arg3 * local435.x + arg4 * local435.y + arg5 * local435.z) / (local108 * local435.triangles);
|
||||||
this.anIntArray532[local133] = method4582(local468);
|
this.anIntArray532[local133] = ColorUtils.method4582(local468);
|
||||||
} else if (local366 == 1) {
|
} else if (local366 == 1) {
|
||||||
local614 = arg0.triangleNormals[local133];
|
local614 = arg0.triangleNormals[local133];
|
||||||
local468 = arg1 + (arg3 * local614.anInt4769 + arg4 * local614.anInt4770 + arg5 * local614.anInt4767) / (local108 + local108 / 2);
|
local468 = arg1 + (arg3 * local614.anInt4769 + arg4 * local614.anInt4770 + arg5 * local614.anInt4767) / (local108 + local108 / 2);
|
||||||
this.anIntArray533[local133] = method4582(local468);
|
this.anIntArray533[local133] = ColorUtils.method4582(local468);
|
||||||
this.anIntArray532[local133] = -1;
|
this.anIntArray532[local133] = -1;
|
||||||
} else {
|
} else {
|
||||||
this.anIntArray532[local133] = -2;
|
this.anIntArray532[local133] = -2;
|
||||||
|
|
@ -538,58 +538,6 @@ public final class SoftwareModel extends Model {
|
||||||
anIntArrayArray43 = new int[32][512];
|
anIntArrayArray43 = new int[32][512];
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!w", name = "f", descriptor = "(I)I")
|
|
||||||
public static int method4582(@OriginalArg(0) int arg0) {
|
|
||||||
if (arg0 < 2) {
|
|
||||||
arg0 = 2;
|
|
||||||
} else if (arg0 > 126) {
|
|
||||||
arg0 = 126;
|
|
||||||
}
|
|
||||||
return arg0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!w", name = "a", descriptor = "(II)I")
|
|
||||||
public static int method4585(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
|
||||||
arg1 = arg1 * (arg0 & 0x7F) >> 7;
|
|
||||||
if (arg1 < 2) {
|
|
||||||
arg1 = 2;
|
|
||||||
} else if (arg1 > 126) {
|
|
||||||
arg1 = 126;
|
|
||||||
}
|
|
||||||
return (arg0 & 0xFF80) + arg1;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!nj", name = "a", descriptor = "(IIZ[I[I)V")
|
|
||||||
public static void method3223(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int[] arg2, @OriginalArg(4) int[] arg3) {
|
|
||||||
if (arg0 >= arg1) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@Pc(22) int local22 = (arg1 + arg0) / 2;
|
|
||||||
@Pc(24) int local24 = arg0;
|
|
||||||
@Pc(28) int local28 = arg2[local22];
|
|
||||||
arg2[local22] = arg2[arg1];
|
|
||||||
arg2[arg1] = local28;
|
|
||||||
@Pc(42) int local42 = arg3[local22];
|
|
||||||
arg3[local22] = arg3[arg1];
|
|
||||||
arg3[arg1] = local42;
|
|
||||||
for (@Pc(54) int local54 = arg0; local54 < arg1; local54++) {
|
|
||||||
if (arg2[local54] > (local54 & 0x1) + local28) {
|
|
||||||
@Pc(79) int local79 = arg2[local54];
|
|
||||||
arg2[local54] = arg2[local24];
|
|
||||||
arg2[local24] = local79;
|
|
||||||
@Pc(93) int local93 = arg3[local54];
|
|
||||||
arg3[local54] = arg3[local24];
|
|
||||||
arg3[local24++] = local93;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
arg2[arg1] = arg2[local24];
|
|
||||||
arg2[local24] = local28;
|
|
||||||
arg3[arg1] = arg3[local24];
|
|
||||||
arg3[local24] = local42;
|
|
||||||
method3223(arg0, local24 - 1, arg2, arg3);
|
|
||||||
method3223(local24 + 1, arg1, arg2, arg3);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!w", name = "e", descriptor = "(I)V")
|
@OriginalMember(owner = "client!w", name = "e", descriptor = "(I)V")
|
||||||
private void method4579(@OriginalArg(0) int arg0) {
|
private void method4579(@OriginalArg(0) int arg0) {
|
||||||
if (aBooleanArray132[arg0]) {
|
if (aBooleanArray132[arg0]) {
|
||||||
|
|
@ -650,14 +598,14 @@ public final class SoftwareModel extends Model {
|
||||||
@Pc(38) int local38;
|
@Pc(38) int local38;
|
||||||
if (this.anIntArray532[local1] == -1) {
|
if (this.anIntArray532[local1] == -1) {
|
||||||
local38 = this.anIntArray533[local1] & 0xFFFE0000;
|
local38 = this.anIntArray533[local1] & 0xFFFE0000;
|
||||||
this.anIntArray533[local1] = local38 | method4585(local25, local38 >> 17);
|
this.anIntArray533[local1] = local38 | ColorUtils.multiplyLightness2(local25, local38 >> 17);
|
||||||
} else if (this.anIntArray532[local1] != -2) {
|
} else if (this.anIntArray532[local1] != -2) {
|
||||||
local38 = this.anIntArray533[local1] & 0xFFFE0000;
|
local38 = this.anIntArray533[local1] & 0xFFFE0000;
|
||||||
this.anIntArray533[local1] = local38 | method4585(local25, local38 >> 17);
|
this.anIntArray533[local1] = local38 | ColorUtils.multiplyLightness2(local25, local38 >> 17);
|
||||||
local38 = this.anIntArray523[local1] & 0xFFFE0000;
|
local38 = this.anIntArray523[local1] & 0xFFFE0000;
|
||||||
this.anIntArray523[local1] = local38 | method4585(local25, local38 >> 17);
|
this.anIntArray523[local1] = local38 | ColorUtils.multiplyLightness2(local25, local38 >> 17);
|
||||||
local38 = this.anIntArray532[local1] & 0xFFFE0000;
|
local38 = this.anIntArray532[local1] & 0xFFFE0000;
|
||||||
this.anIntArray532[local1] = local38 | method4585(local25, local38 >> 17);
|
this.anIntArray532[local1] = local38 | ColorUtils.multiplyLightness2(local25, local38 >> 17);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1689,7 +1637,7 @@ public final class SoftwareModel extends Model {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (aBoolean307) {
|
if (aBoolean307) {
|
||||||
method3223(0, local5 - 1, anIntArray550, anIntArray549);
|
ArrayUtils.sort(0, local5 - 1, anIntArray550, anIntArray549);
|
||||||
if (this.aByteArray73 == null) {
|
if (this.aByteArray73 == null) {
|
||||||
for (local11 = 0; local11 < local5; local11++) {
|
for (local11 = 0; local11 < local5; local11++) {
|
||||||
this.method4579(anIntArray549[local11]);
|
this.method4579(anIntArray549[local11]);
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,6 @@ import org.openrs2.deob.annotation.OriginalClass;
|
||||||
import org.openrs2.deob.annotation.OriginalMember;
|
import org.openrs2.deob.annotation.OriginalMember;
|
||||||
import org.openrs2.deob.annotation.Pc;
|
import org.openrs2.deob.annotation.Pc;
|
||||||
|
|
||||||
import java.util.Random;
|
|
||||||
|
|
||||||
@OriginalClass("client!lc")
|
@OriginalClass("client!lc")
|
||||||
public final class Texture {
|
public final class Texture {
|
||||||
|
|
||||||
|
|
@ -240,33 +238,6 @@ public final class Texture {
|
||||||
heightMask = height - 1;
|
heightMask = height - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ni", name = "a", descriptor = "(BILjava/util/Random;)I")
|
|
||||||
public static int method3219(@OriginalArg(1) int arg0, @OriginalArg(2) Random arg1) {
|
|
||||||
if (arg0 <= 0) {
|
|
||||||
throw new IllegalArgumentException();
|
|
||||||
} else if (method3702(arg0)) {
|
|
||||||
return (int) (((long) arg1.nextInt() & 0xFFFFFFFFL) * (long) arg0 >> 32);
|
|
||||||
} else {
|
|
||||||
@Pc(38) int local38 = Integer.MIN_VALUE - (int) (0x100000000L % (long) arg0);
|
|
||||||
@Pc(41) int local41;
|
|
||||||
do {
|
|
||||||
local41 = arg1.nextInt();
|
|
||||||
} while (local38 <= local41);
|
|
||||||
return method990(local41, arg0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!d", name = "c", descriptor = "(III)I")
|
|
||||||
public static int method990(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1) {
|
|
||||||
@Pc(11) int local11 = arg1 - 1 & arg0 >> 31;
|
|
||||||
return local11 + (arg0 + (arg0 >>> 31)) % arg1;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ra", name = "a", descriptor = "(BI)Z")
|
|
||||||
public static boolean method3702(@OriginalArg(1) int arg0) {
|
|
||||||
return arg0 == (-arg0 & arg0);
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!lc", name = "a", descriptor = "(IZIDILclient!ve;Lclient!m;Z)[I")
|
@OriginalMember(owner = "client!lc", name = "a", descriptor = "(IZIDILclient!ve;Lclient!m;Z)[I")
|
||||||
public final int[] method2725(@OriginalArg(0) int arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) int arg2, @OriginalArg(3) double arg3, @OriginalArg(5) Js5 arg4, @OriginalArg(6) TextureProvider arg5, @OriginalArg(7) boolean arg6) {
|
public final int[] method2725(@OriginalArg(0) int arg0, @OriginalArg(1) boolean arg1, @OriginalArg(2) int arg2, @OriginalArg(3) double arg3, @OriginalArg(5) Js5 arg4, @OriginalArg(6) TextureProvider arg5, @OriginalArg(7) boolean arg6) {
|
||||||
setBrightness(arg3);
|
setBrightness(arg3);
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ public final class TextureOp15 extends TextureOp {
|
||||||
}
|
}
|
||||||
for (local29 = 0; local29 < 255; local29++) {
|
for (local29 = 0; local29 < 255; local29++) {
|
||||||
@Pc(53) int local53 = 255 - local29;
|
@Pc(53) int local53 = 255 - local29;
|
||||||
@Pc(58) int local58 = Texture.method3219(local53, local24);
|
@Pc(58) int local58 = RandomUtils.nextInt(local53, local24);
|
||||||
@Pc(62) byte local62 = local27[local58];
|
@Pc(62) byte local62 = local27[local58];
|
||||||
local27[local58] = local27[local53];
|
local27[local58] = local27[local53];
|
||||||
local27[local53] = local27[511 - local29] = local62;
|
local27[local53] = local27[511 - local29] = local62;
|
||||||
|
|
@ -78,7 +78,7 @@ public final class TextureOp15 extends TextureOp {
|
||||||
this.aShortArray35 = new short[512];
|
this.aShortArray35 = new short[512];
|
||||||
if (this.anInt2636 > 0) {
|
if (this.anInt2636 > 0) {
|
||||||
for (@Pc(26) int local26 = 0; local26 < 512; local26++) {
|
for (@Pc(26) int local26 = 0; local26 < 512; local26++) {
|
||||||
this.aShortArray35[local26] = (short) Texture.method3219(this.anInt2636, local12);
|
this.aShortArray35[local26] = (short) RandomUtils.nextInt(this.anInt2636, local12);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -81,8 +81,8 @@ public final class TextureOp28 extends TextureOp {
|
||||||
@Pc(113) Random local113 = new Random(this.anInt4354);
|
@Pc(113) Random local113 = new Random(this.anInt4354);
|
||||||
while (true) {
|
while (true) {
|
||||||
while (true) {
|
while (true) {
|
||||||
@Pc(123) int local123 = local54 + Texture.method3219(local61 - local54, local113);
|
@Pc(123) int local123 = local54 + RandomUtils.nextInt(local61 - local54, local113);
|
||||||
@Pc(133) int local133 = Texture.method3219(local68 - local75, local113) + local75;
|
@Pc(133) int local133 = RandomUtils.nextInt(local68 - local75, local113) + local75;
|
||||||
@Pc(137) int local137 = local31 + local123;
|
@Pc(137) int local137 = local31 + local123;
|
||||||
if (Texture.width < local137) {
|
if (Texture.width < local137) {
|
||||||
local137 = Texture.width;
|
local137 = Texture.width;
|
||||||
|
|
@ -174,7 +174,7 @@ public final class TextureOp28 extends TextureOp {
|
||||||
local47 = 0;
|
local47 = 0;
|
||||||
local407[2] = local133 + local158;
|
local407[2] = local133 + local158;
|
||||||
local407[1] = local137;
|
local407[1] = local137;
|
||||||
local37 = Texture.method3219(Texture.width, local113);
|
local37 = RandomUtils.nextInt(Texture.width, local113);
|
||||||
local35 = local37 - local33;
|
local35 = local37 - local33;
|
||||||
@Pc(439) int[][] local439 = local102;
|
@Pc(439) int[][] local439 = local102;
|
||||||
local31 = 0;
|
local31 = 0;
|
||||||
|
|
@ -211,9 +211,9 @@ public final class TextureOp28 extends TextureOp {
|
||||||
|
|
||||||
@OriginalMember(owner = "client!ol", name = "a", descriptor = "(ILjava/util/Random;IIBI[[I)V")
|
@OriginalMember(owner = "client!ol", name = "a", descriptor = "(ILjava/util/Random;IIBI[[I)V")
|
||||||
private void method3386(@OriginalArg(0) int arg0, @OriginalArg(1) Random arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int[][] arg5) {
|
private void method3386(@OriginalArg(0) int arg0, @OriginalArg(1) Random arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3, @OriginalArg(5) int arg4, @OriginalArg(6) int[][] arg5) {
|
||||||
@Pc(26) int local26 = this.anInt4360 > 0 ? 4096 - Texture.method3219(this.anInt4360, arg1) : 4096;
|
@Pc(26) int local26 = this.anInt4360 > 0 ? 4096 - RandomUtils.nextInt(this.anInt4360, arg1) : 4096;
|
||||||
@Pc(34) int local34 = this.anInt4344 * this.anInt4356 >> 12;
|
@Pc(34) int local34 = this.anInt4344 * this.anInt4356 >> 12;
|
||||||
@Pc(47) int local47 = this.anInt4356 - (local34 > 0 ? Texture.method3219(local34, arg1) : 0);
|
@Pc(47) int local47 = this.anInt4356 - (local34 > 0 ? RandomUtils.nextInt(local34, arg1) : 0);
|
||||||
if (Texture.width <= arg2) {
|
if (Texture.width <= arg2) {
|
||||||
arg2 -= Texture.width;
|
arg2 -= Texture.width;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ public final class TextureOp29 extends TextureOp {
|
||||||
if (arg3 >= anInt5773 && arg3 <= anInt2869) {
|
if (arg3 >= anInt5773 && arg3 <= anInt2869) {
|
||||||
@Pc(15) int local15 = IntUtils.clamp(anInt5063, arg0, anInt4164);
|
@Pc(15) int local15 = IntUtils.clamp(anInt5063, arg0, anInt4164);
|
||||||
@Pc(21) int local21 = IntUtils.clamp(anInt5063, arg2, anInt4164);
|
@Pc(21) int local21 = IntUtils.clamp(anInt5063, arg2, anInt4164);
|
||||||
TextureOp29SubOp4.method3826(arg1, arg3, local21, local15);
|
TextureOp29SubOp4.fillRange(arg1, arg3, local21, local15);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -150,7 +150,7 @@ public final class TextureOp29SubOp4 extends TextureOp29SubOp {
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!sa", name = "a", descriptor = "(IIIBI)V")
|
@OriginalMember(owner = "client!sa", name = "a", descriptor = "(IIIBI)V")
|
||||||
public static void method3826(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3) {
|
public static void fillRange(@OriginalArg(0) int arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(4) int arg3) {
|
||||||
if (arg3 <= arg2) {
|
if (arg3 <= arg2) {
|
||||||
ArrayUtils.fillRange(anIntArrayArray10[arg1], arg3, arg2, arg0);
|
ArrayUtils.fillRange(anIntArrayArray10[arg1], arg3, arg2, arg0);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -181,7 +181,7 @@ public final class TextureOp29SubOp4 extends TextureOp29SubOp {
|
||||||
method2054(arg2, arg4, arg1, arg0);
|
method2054(arg2, arg4, arg1, arg0);
|
||||||
}
|
}
|
||||||
} else if (local9 == 0) {
|
} else if (local9 == 0) {
|
||||||
method3826(arg0, arg2, arg3, arg4);
|
fillRange(arg0, arg2, arg3, arg4);
|
||||||
} else {
|
} else {
|
||||||
if (local9 < 0) {
|
if (local9 < 0) {
|
||||||
local9 = -local9;
|
local9 = -local9;
|
||||||
|
|
|
||||||
|
|
@ -61,10 +61,10 @@ public final class TextureOp38 extends TextureOp {
|
||||||
@Pc(33) int[][] local33 = this.monochromeImageCache.method3446();
|
@Pc(33) int[][] local33 = this.monochromeImageCache.method3446();
|
||||||
@Pc(40) Random local40 = new Random(this.anInt5716);
|
@Pc(40) Random local40 = new Random(this.anInt5716);
|
||||||
for (@Pc(42) int local42 = 0; local42 < this.anInt5712; local42++) {
|
for (@Pc(42) int local42 = 0; local42 < this.anInt5712; local42++) {
|
||||||
@Pc(64) int local64 = this.anInt5714 > 0 ? this.anInt5709 + Texture.method3219(this.anInt5714, local40) - local28 : this.anInt5709;
|
@Pc(64) int local64 = this.anInt5714 > 0 ? this.anInt5709 + RandomUtils.nextInt(this.anInt5714, local40) - local28 : this.anInt5709;
|
||||||
@Pc(69) int local69 = Texture.method3219(Texture.width, local40);
|
@Pc(69) int local69 = RandomUtils.nextInt(Texture.width, local40);
|
||||||
@Pc(75) int local75 = local64 >> 4 & 0xFF;
|
@Pc(75) int local75 = local64 >> 4 & 0xFF;
|
||||||
@Pc(80) int local80 = Texture.method3219(Texture.height, local40);
|
@Pc(80) int local80 = RandomUtils.nextInt(Texture.height, local40);
|
||||||
@Pc(92) int local92 = local69 + (this.anInt5715 * TextureOp.COSINE[local75] >> 12);
|
@Pc(92) int local92 = local69 + (this.anInt5715 * TextureOp.COSINE[local75] >> 12);
|
||||||
@Pc(103) int local103 = local80 + (TextureOp.SINE[local75] * this.anInt5715 >> 12);
|
@Pc(103) int local103 = local80 + (TextureOp.SINE[local75] * this.anInt5715 >> 12);
|
||||||
@Pc(107) int local107 = local92 - local69;
|
@Pc(107) int local107 = local92 - local69;
|
||||||
|
|
@ -102,7 +102,7 @@ public final class TextureOp38 extends TextureOp {
|
||||||
local190 = -local190;
|
local190 = -local190;
|
||||||
}
|
}
|
||||||
@Pc(206) int local206 = -local152 / 2;
|
@Pc(206) int local206 = -local152 / 2;
|
||||||
@Pc(216) int local216 = 1024 - (Texture.method3219(4096, local40) >> 2);
|
@Pc(216) int local216 = 1024 - (RandomUtils.nextInt(4096, local40) >> 2);
|
||||||
@Pc(227) int local227 = local103 <= local80 ? -1 : 1;
|
@Pc(227) int local227 = local103 <= local80 ? -1 : 1;
|
||||||
@Pc(231) int local231 = 2048 / local152;
|
@Pc(231) int local231 = 2048 / local152;
|
||||||
for (@Pc(233) int local233 = local69; local233 < local92; local233++) {
|
for (@Pc(233) int local233 = local69; local233 < local92; local233++) {
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ public final class TextureOp4 extends TextureOp {
|
||||||
@Pc(94) int local94;
|
@Pc(94) int local94;
|
||||||
if (local66 > 0) {
|
if (local66 > 0) {
|
||||||
local82 = this.anInt3670;
|
local82 = this.anInt3670;
|
||||||
local94 = (Texture.method3219(4096, local8) - 2048) * this.anInt3667 >> 12;
|
local94 = (RandomUtils.nextInt(4096, local8) - 2048) * this.anInt3667 >> 12;
|
||||||
@Pc(102) int local102 = local82 + (local94 * local34 >> 12);
|
@Pc(102) int local102 = local82 + (local94 * local34 >> 12);
|
||||||
this.anIntArray352[local66] = this.anIntArray352[local66 - 1] + local102;
|
this.anIntArray352[local66] = this.anIntArray352[local66 - 1] + local102;
|
||||||
}
|
}
|
||||||
|
|
@ -110,11 +110,11 @@ public final class TextureOp4 extends TextureOp {
|
||||||
for (local82 = 0; local82 < this.anInt3685; local82++) {
|
for (local82 = 0; local82 < this.anInt3685; local82++) {
|
||||||
if (local82 > 0) {
|
if (local82 > 0) {
|
||||||
local94 = this.anInt3679;
|
local94 = this.anInt3679;
|
||||||
@Pc(150) int local150 = (Texture.method3219(4096, local8) - 2048) * this.anInt3681 >> 12;
|
@Pc(150) int local150 = (RandomUtils.nextInt(4096, local8) - 2048) * this.anInt3681 >> 12;
|
||||||
local94 += local64 * local150 >> 12;
|
local94 += local64 * local150 >> 12;
|
||||||
this.anIntArrayArray26[local66][local82] = this.anIntArrayArray26[local66][local82 - 1] + local94;
|
this.anIntArrayArray26[local66][local82] = this.anIntArrayArray26[local66][local82 - 1] + local94;
|
||||||
}
|
}
|
||||||
this.anIntArrayArray27[local66][local82] = this.anInt3673 <= 0 ? 4096 : 4096 - Texture.method3219(this.anInt3673, local8);
|
this.anIntArrayArray27[local66][local82] = this.anInt3673 <= 0 ? 4096 : 4096 - RandomUtils.nextInt(this.anInt3673, local8);
|
||||||
}
|
}
|
||||||
this.anIntArrayArray26[local66][this.anInt3685] = 4096;
|
this.anIntArrayArray26[local66][this.anInt3685] = 4096;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -179,7 +179,7 @@ public final class VorbisSound extends Node {
|
||||||
@Pc(187) int[] local187 = new int[local38];
|
@Pc(187) int[] local187 = new int[local38];
|
||||||
@Pc(193) int local193 = IntUtils.bitCount(local38 - 1);
|
@Pc(193) int local193 = IntUtils.bitCount(local38 - 1);
|
||||||
for (@Pc(195) int local195 = 0; local195 < local38; local195++) {
|
for (@Pc(195) int local195 = 0; local195 < local38; local195++) {
|
||||||
local187[local195] = method667(local193, local195);
|
local187[local195] = IntUtils.bitReverse(local193, local195);
|
||||||
}
|
}
|
||||||
if (local17 == 0) {
|
if (local17 == 0) {
|
||||||
trigA0 = local41;
|
trigA0 = local41;
|
||||||
|
|
@ -250,17 +250,6 @@ public final class VorbisSound extends Node {
|
||||||
return local1;
|
return local1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@OriginalMember(owner = "client!bn", name = "a", descriptor = "(III)I")
|
|
||||||
public static int method667(@OriginalArg(0) int arg0, @OriginalArg(2) int arg1) {
|
|
||||||
@Pc(8) int local8 = 0;
|
|
||||||
while (arg0 > 0) {
|
|
||||||
local8 = local8 << 1 | arg1 & 0x1;
|
|
||||||
arg1 >>>= 0x1;
|
|
||||||
arg0--;
|
|
||||||
}
|
|
||||||
return local8;
|
|
||||||
}
|
|
||||||
|
|
||||||
@OriginalMember(owner = "client!jc", name = "a", descriptor = "([I)Lclient!kj;")
|
@OriginalMember(owner = "client!jc", name = "a", descriptor = "([I)Lclient!kj;")
|
||||||
public final PcmSound toPcmSound(@OriginalArg(0) int[] arg0) {
|
public final PcmSound toPcmSound(@OriginalArg(0) int[] arg0) {
|
||||||
if (arg0 != null && arg0[0] <= 0) {
|
if (arg0 != null && arg0[0] <= 0) {
|
||||||
|
|
|
||||||
|
|
@ -375,7 +375,7 @@ public class WorldMap {
|
||||||
}
|
}
|
||||||
if (local367 >= 0 && local363 > 0) {
|
if (local367 >= 0 && local363 > 0) {
|
||||||
@Pc(462) int[] local462 = local355[local367 >> 6];
|
@Pc(462) int[] local462 = local355[local367 >> 6];
|
||||||
@Pc(480) int local480 = local361 == 0 ? 0 : SceneGraph.method1309(local293 / local363, local225 / local363, local114 * 256 / local361);
|
@Pc(480) int local480 = local361 == 0 ? 0 : ColorUtils.method1309(local293 / local363, local225 / local363, local114 * 256 / local361);
|
||||||
if (underlays[local102][local367] != 0) {
|
if (underlays[local102][local367] != 0) {
|
||||||
if (local462 == null) {
|
if (local462 == null) {
|
||||||
local462 = local355[local367 >> 6] = new int[4096];
|
local462 = local355[local367 >> 6] = new int[4096];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue