Files
2011-06-26 21:20:49 +00:00

2805 lines
91 KiB
Java

public class Class27
{
private int anInt365 = 8;
private boolean aBoolean366 = false;
private boolean aBoolean367 = false;
private byte aByte368 = 2;
private static int anInt369;
private byte aByte370 = 6;
public static boolean aBoolean371 = true;
int anInt372;
int anInt373;
int anInt374;
int[][][] anIntArrayArrayArray375;
Class33_Sub1[][][] aClass33_Sub1ArrayArrayArray376;
int anInt377;
int anInt378;
Class23[] aClass23Array379 = new Class23[5000];
int[][][] anIntArrayArrayArray380;
static int anInt381;
static int anInt382;
static int anInt383;
static int anInt384;
static int anInt385;
static int anInt386;
static int anInt387;
static int anInt388;
static int anInt389;
static int anInt390;
static int anInt391;
static int anInt392;
static int anInt393;
static int anInt394;
static int anInt395;
static int anInt396;
static Class23[] aClass23Array397 = new Class23[100];
static final int[] anIntArray398 = { 53, -53, -53, 53 };
static final int[] anIntArray399 = { -53, -53, 53, 53 };
static final int[] anIntArray400 = { -45, 45, 45, -45 };
static final int[] anIntArray401 = { 45, 45, -45, -45 };
static boolean aBoolean402;
static int anInt403;
static int anInt404;
public static int anInt405 = -1;
public static int anInt406 = -1;
static int anInt407 = 4;
static int[] anIntArray408 = new int[anInt407];
static Class19[][] aClass19ArrayArray409 = new Class19[anInt407][500];
public static int anInt410;
static Class19[] aClass19Array411 = new Class19[500];
static Class22 aClass22_412 = new Class22(845);
static final int[] anIntArray413
= { 19, 55, 38, 155, 255, 110, 137, 205, 76 };
static final int[] anIntArray414
= { 160, 192, 80, 96, 0, 144, 80, 48, 160 };
static final int[] anIntArray415 = { 76, 8, 137, 4, 0, 1, 38, 2, 19 };
static final int[] anIntArray416 = { 0, 0, 2, 0, 0, 2, 1, 1, 0 };
static final int[] anIntArray417 = { 2, 0, 0, 2, 0, 0, 0, 4, 4 };
static final int[] anIntArray418 = { 0, 4, 4, 8, 0, 0, 8, 0, 0 };
static final int[] anIntArray419 = { 1, 1, 0, 0, 0, 8, 0, 0, 8 };
static final int[] anIntArray420
= { 41, 39248, 41, 4643, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
43086, 41, 41, 41, 41, 41, 41, 41, 8602, 41, 28992, 41, 41, 41, 41,
41, 5056, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
3131, 41, 41, 41 };
int[] anIntArray421 = new int[10000];
int[] anIntArray422 = new int[10000];
int anInt423;
int[][] anIntArrayArray424
= { new int[16], { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1 },
{ 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 },
{ 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1 },
{ 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1 } };
int[][] anIntArrayArray425
= { { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 },
{ 12, 8, 4, 0, 13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3 },
{ 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 },
{ 3, 7, 11, 15, 2, 6, 10, 14, 1, 5, 9, 13, 0, 4, 8, 12 } };
static boolean[][][][] aBooleanArrayArrayArrayArray426
= new boolean[8][32][51][51];
static boolean[][] aBooleanArrayArray427;
static int anInt428;
static int anInt429;
static int anInt430;
static int anInt431;
static int anInt432;
static int anInt433;
public Class27(int arg0, int[][][] arg1, int arg2, byte arg3, int arg4) {
((Class27) this).anInt372 = arg0;
((Class27) this).anInt373 = arg4;
if (arg3 == 4) {
boolean flag = false;
} else
throw new NullPointerException();
((Class27) this).anInt374 = arg2;
((Class27) this).aClass33_Sub1ArrayArrayArray376
= new Class33_Sub1[arg0][arg4][arg2];
((Class27) this).anIntArrayArrayArray380
= new int[arg0][arg4 + 1][arg2 + 1];
((Class27) this).anIntArrayArrayArray375 = arg1;
method194(false);
}
public static void method193(int arg0) {
aClass23Array397 = null;
arg0 = 42 / arg0;
anIntArray408 = null;
aClass19ArrayArray409 = null;
aClass22_412 = null;
aBooleanArrayArrayArrayArray426 = null;
aBooleanArrayArray427 = null;
}
public void method194(boolean arg0) {
if (!arg0) {
for (int i = 0; i < ((Class27) this).anInt372; i++) {
for (int i1 = 0; i1 < ((Class27) this).anInt373; i1++) {
for (int i2 = 0; i2 < ((Class27) this).anInt374; i2++)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[i1][i2]
= null;
}
}
for (int i = 0; i < anInt407; i++) {
for (int i3 = 0; i3 < anIntArray408[i]; i3++)
aClass19ArrayArray409[i][i3] = null;
anIntArray408[i] = 0;
}
for (int i = 0; i < ((Class27) this).anInt378; i++)
((Class27) this).aClass23Array379[i] = null;
((Class27) this).anInt378 = 0;
for (int i = 0; i < aClass23Array397.length; i++)
aClass23Array397[i] = null;
}
}
public void method195(int arg0, int arg1) {
((Class27) this).anInt377 = arg0;
if (arg1 < 0) {
for (int i = 0; i < ((Class27) this).anInt373; i++) {
for (int i1 = 0; i1 < ((Class27) this).anInt374; i1++)
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0]
[i][i1]
= new Class33_Sub1(arg0, i, i1);
}
}
}
public void method196(int arg0, int arg1, int arg2) {
Class33_Sub1 class33_sub1
= ((Class27) this).aClass33_Sub1ArrayArrayArray376[0][arg0][arg2];
arg1 = 45 / arg1;
for (int i = 0; i < 3; i++) {
((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg0][arg2]
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[i + 1]
[arg0][arg2]);
if (((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg0][arg2]
!= null)
((Class33_Sub1) (((Class27) this)
.aClass33_Sub1ArrayArrayArray376[i][arg0]
[arg2])).anInt947--;
}
if (((Class27) this).aClass33_Sub1ArrayArrayArray376[0][arg0][arg2]
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[0][arg0][arg2]
= new Class33_Sub1(0, arg0, arg2);
((Class33_Sub1) (((Class27) this).aClass33_Sub1ArrayArrayArray376[0]
[arg0][arg2])).aClass33_Sub1_969
= class33_sub1;
((Class27) this).aClass33_Sub1ArrayArrayArray376[3][arg0][arg2] = null;
}
public static void method197(int arg0, int arg1, int arg2, int arg3,
int arg4, int arg5, int arg6, int arg7,
int arg8) {
Class19 class19 = new Class19();
((Class19) class19).anInt296 = arg0 / 128;
((Class19) class19).anInt297 = arg6 / 128;
((Class19) class19).anInt298 = arg3 / 128;
((Class19) class19).anInt299 = arg1 / 128;
((Class19) class19).anInt300 = arg5;
((Class19) class19).anInt301 = arg0;
((Class19) class19).anInt302 = arg6;
((Class19) class19).anInt303 = arg3;
((Class19) class19).anInt304 = arg1;
arg4 = 0 / arg4;
((Class19) class19).anInt305 = arg2;
((Class19) class19).anInt306 = arg7;
aClass19ArrayArray409[arg8][anIntArray408[arg8]++] = class19;
}
public void method198(int arg0, int arg1, int arg2, int arg3) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 != null)
((Class33_Sub1) (((Class27) this).aClass33_Sub1ArrayArrayArray376
[arg0][arg1][arg2])).anInt961
= arg3;
}
public void method199(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5, int arg6, int arg7, int arg8, int arg9,
int arg10, int arg11, int arg12, int arg13,
int arg14, int arg15, int arg16, int arg17,
int arg18, int arg19) {
if (arg3 == 0) {
Class21 class21
= new Class21(arg10, arg11, arg12, arg13, -1, arg18, false);
for (int i = arg0; i >= 0; i--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg1]
[arg2])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg1][arg2]
= new Class33_Sub1(i, arg1, arg2);
}
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2].aClass21_951
= class21;
} else if (arg3 == 1) {
Class21 class21
= new Class21(arg14, arg15, arg16, arg17, arg5, arg19,
arg6 == arg7 && arg6 == arg8 && arg6 == arg9);
for (int i = arg0; i >= 0; i--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg1]
[arg2])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg1][arg2]
= new Class33_Sub1(i, arg1, arg2);
}
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2].aClass21_951
= class21;
} else {
Class13 class13
= new Class13(arg9, arg2, arg8, arg6, arg1, arg5, arg10, arg15,
arg4, arg12, arg16, arg14, arg13, arg7, arg11,
arg3, arg17, (byte) -119, arg18, arg19);
for (int i = arg0; i >= 0; i--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg1]
[arg2])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg1][arg2]
= new Class33_Sub1(i, arg1, arg2);
}
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2].aClass13_952
= class13;
}
}
public void method200(Class33_Sub2_Sub1 arg0, int arg1, byte arg2,
int arg3, int arg4, int arg5, int arg6, int arg7) {
Class15 class15 = new Class15();
((Class15) class15).aClass33_Sub2_Sub1_255 = arg0;
((Class15) class15).anInt253 = arg1 * 128 + 64;
((Class15) class15).anInt254 = arg6 * 128 + 64;
((Class15) class15).anInt252 = arg4;
((Class15) class15).anInt256 = arg7;
((Class15) class15).aByte257 = arg2;
if (arg3 != 0) {
for (int i = 1; i > 0; i++) {
}
}
if (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg5][arg1][arg6]
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg5][arg1][arg6]
= new Class33_Sub1(arg5, arg1, arg6);
((Class33_Sub1) (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg5]
[arg1][arg6])).aClass15_955
= class15;
}
public void method201(int arg0, int arg1, int arg2, Class33_Sub2_Sub1 arg3,
int arg4, byte arg5, int arg6) {
Class17 class17 = new Class17();
((Class17) class17).aClass33_Sub2_Sub1_277 = arg3;
((Class17) class17).anInt275 = arg4 * 128 + 64;
((Class17) class17).anInt276 = arg6 * 128 + 64;
((Class17) class17).anInt274 = arg0;
((Class17) class17).anInt278 = arg2;
int i = 0;
if (arg5 == 0) {
boolean flag = false;
} else
aBoolean366 = !aBoolean366;
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg1][arg4]
[arg6]);
if (class33_sub1 != null) {
for (int i1 = 0; i1 < ((Class33_Sub1) class33_sub1).anInt957;
i1++) {
int i2 = (((Class23)
((Class33_Sub1) class33_sub1).aClass23Array958[i1])
.aClass33_Sub2_Sub1_334.anInt1034);
if (i2 > i)
i = i2;
}
}
((Class17) class17).anInt279 = i;
if (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg1][arg4][arg6]
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[arg1][arg4][arg6]
= new Class33_Sub1(arg1, arg4, arg6);
((Class33_Sub1) (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg1]
[arg4][arg6])).aClass17_956
= class17;
}
public void method202(int arg0, int arg1, byte arg2, int arg3, int arg4,
byte arg5, int arg6, int arg7,
Class33_Sub2_Sub1 arg8, int arg9,
Class33_Sub2_Sub1 arg10) {
if (arg10 != null || arg8 != null) {
Class25 class25 = new Class25();
((Class25) class25).anInt355 = arg4;
if (arg5 == -120) {
((Class25) class25).aByte356 = arg2;
((Class25) class25).anInt349 = arg7 * 128 + 64;
((Class25) class25).anInt350 = arg6 * 128 + 64;
((Class25) class25).anInt348 = arg0;
((Class25) class25).aClass33_Sub2_Sub1_353 = arg10;
((Class25) class25).aClass33_Sub2_Sub1_354 = arg8;
((Class25) class25).anInt351 = arg1;
((Class25) class25).anInt352 = arg3;
for (int i = arg9; i >= 0; i--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg7][arg6])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg7][arg6]
= new Class33_Sub1(i, arg7, arg6);
}
((Class33_Sub1) (((Class27) this)
.aClass33_Sub1ArrayArrayArray376[arg9][arg7]
[arg6])).aClass25_953
= class25;
}
}
}
public void method203(byte arg0, int arg1, Class33_Sub2_Sub1 arg2,
int arg3, int arg4, boolean arg5, int arg6, int arg7,
int arg8, int arg9, int arg10, int arg11) {
if (arg2 != null) {
Class11 class11 = new Class11();
((Class11) class11).anInt202 = arg1;
((Class11) class11).aByte203 = arg0;
((Class11) class11).anInt197 = arg4 * 128 + 64 + arg11;
((Class11) class11).anInt198 = arg9 * 128 + 64 + arg3;
((Class11) class11).anInt196 = arg8;
if (arg5)
anInt365 = 186;
((Class11) class11).aClass33_Sub2_Sub1_201 = arg2;
((Class11) class11).anInt199 = arg6;
((Class11) class11).anInt200 = arg10;
for (int i = arg7; i >= 0; i--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i][arg4]
[arg9])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376[i]
[arg4][arg9]
= new Class33_Sub1(i, arg4, arg9);
}
((Class33_Sub1) (((Class27) this).aClass33_Sub1ArrayArrayArray376
[arg7][arg4][arg9])).aClass11_954
= class11;
}
}
public boolean method204(int arg0, int arg1, Class33_Sub2_Sub1 arg2,
int arg3, byte arg4, int arg5, int arg6, int arg7,
int arg8, byte arg9, Class33_Sub7 arg10,
int arg11) {
if (arg2 == null && arg10 == null)
return true;
int i = arg7 * 128 + arg11 * 64;
int i1 = arg1 * 128 + arg3 * 64;
if (arg4 != -14)
throw new NullPointerException();
return method207(arg6, arg7, arg1, arg11, arg3, i, i1, arg8, arg2,
arg10, arg5, false, arg0, arg9);
}
public boolean method205(int arg0, Class33_Sub7 arg1, int arg2, int arg3,
int arg4, int arg5, int arg6, int arg7, int arg8,
boolean arg9, Class33_Sub2_Sub1 arg10) {
if (arg10 == null && arg1 == null)
return true;
int i = arg4 - arg7;
int i1 = arg8 - arg7;
int i2 = arg4 + arg7;
int i3 = arg8 + arg7;
if (arg6 > 0) {
if (arg0 > 768 && arg0 < 1280)
i3 += arg6;
if (arg0 > 1280 && arg0 < 1792)
i2 += arg6;
if (arg0 > 1792 || arg0 < 256)
i1 -= arg6;
if (arg0 > 256 && arg0 < 768)
i2 -= arg6;
}
i /= 128;
i1 /= 128;
if (!arg9) {
for (int i4 = 1; i4 > 0; i4++) {
}
}
i2 /= 128;
i3 /= 128;
return method207(arg5, i, i1, i2 - i + 1, i3 - i1 + 1, arg4, arg8,
arg3, arg10, arg1, arg0, true, arg2, (byte) 0);
}
public boolean method206(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5, int arg6, Class33_Sub2_Sub1 arg7,
int arg8, int arg9, int arg10, int arg11,
int arg12, Class33_Sub7 arg13) {
if (arg1 <= 0)
throw new NullPointerException();
if (arg7 == null && arg13 == null)
return true;
return method207(arg5, arg0, arg2, arg10 - arg0 + 1, arg4 - arg2 + 1,
arg6, arg8, arg3, arg7, arg13, arg9, true, arg11,
(byte) 0);
}
public boolean method207(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5, int arg6, int arg7,
Class33_Sub2_Sub1 arg8, Class33_Sub7 arg9,
int arg10, boolean arg11, int arg12, byte arg13) {
if (arg8 == null && arg9 == null)
return false;
for (int i = arg1; i < arg1 + arg3; i++) {
for (int i1 = arg2; i1 < arg2 + arg4; i1++) {
if (i < 0 || i1 < 0 || i >= ((Class27) this).anInt373
|| i1 >= ((Class27) this).anInt374)
return false;
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0]
[i][i1]);
if (class33_sub1 != null
&& ((Class33_Sub1) class33_sub1).anInt957 >= 5)
return false;
}
}
Class23 class23 = new Class23();
((Class23) class23).anInt343 = arg12;
((Class23) class23).aByte344 = arg13;
((Class23) class23).anInt330 = arg0;
((Class23) class23).anInt332 = arg5;
((Class23) class23).anInt333 = arg6;
((Class23) class23).anInt331 = arg7;
((Class23) class23).aClass33_Sub2_Sub1_334 = arg8;
((Class23) class23).aClass33_Sub7_335 = arg9;
class23.anInt336 = arg10;
((Class23) class23).anInt337 = arg1;
((Class23) class23).anInt339 = arg2;
((Class23) class23).anInt338 = arg1 + arg3 - 1;
((Class23) class23).anInt340 = arg2 + arg4 - 1;
for (int i = arg1; i < arg1 + arg3; i++) {
for (int i2 = arg2; i2 < arg2 + arg4; i2++) {
int i3 = 0;
if (i > arg1)
i3++;
if (i < arg1 + arg3 - 1)
i3 += 4;
if (i2 > arg2)
i3 += 8;
if (i2 < arg2 + arg4 - 1)
i3 += 2;
for (int i4 = arg0; i4 >= 0; i4--) {
if ((((Class27) this).aClass33_Sub1ArrayArrayArray376[i4]
[i][i2])
== null)
((Class27) this).aClass33_Sub1ArrayArrayArray376
[i4][i][i2]
= new Class33_Sub1(i4, i, i2);
}
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0]
[i][i2]);
((Class33_Sub1) class33_sub1).aClass23Array958
[((Class33_Sub1) class33_sub1).anInt957]
= class23;
((Class33_Sub1) class33_sub1).anIntArray959
[((Class33_Sub1) class33_sub1).anInt957]
= i3;
((Class33_Sub1) class33_sub1).anInt960 |= i3;
((Class33_Sub1) class33_sub1).anInt957++;
}
}
if (arg11)
((Class27) this).aClass23Array379[((Class27) this).anInt378++]
= class23;
return true;
}
public void method208(boolean arg0) {
if (arg0)
aBoolean366 = !aBoolean366;
for (int i = 0; i < ((Class27) this).anInt378; i++) {
Class23 class23 = ((Class27) this).aClass23Array379[i];
method209(false, class23);
((Class27) this).aClass23Array379[i] = null;
}
((Class27) this).anInt378 = 0;
}
private void method209(boolean arg0, Class23 arg1) {
if (arg0)
aBoolean366 = !aBoolean366;
for (int i = ((Class23) arg1).anInt337; i <= ((Class23) arg1).anInt338;
i++) {
for (int i1 = ((Class23) arg1).anInt339;
i1 <= ((Class23) arg1).anInt340; i1++) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376
[((Class23) arg1).anInt330][i][i1]);
if (class33_sub1 != null) {
for (int i2 = 0;
i2 < ((Class33_Sub1) class33_sub1).anInt957; i2++) {
if (((Class33_Sub1) class33_sub1).aClass23Array958[i2]
== arg1) {
((Class33_Sub1) class33_sub1).anInt957--;
for (int i3 = i2;
i3 < ((Class33_Sub1) class33_sub1).anInt957;
i3++) {
((Class33_Sub1) class33_sub1)
.aClass23Array958[i3]
= (((Class33_Sub1) class33_sub1)
.aClass23Array958[i3 + 1]);
((Class33_Sub1) class33_sub1).anIntArray959[i3]
= (((Class33_Sub1) class33_sub1)
.anIntArray959[i3 + 1]);
}
((Class33_Sub1) class33_sub1).aClass23Array958
[((Class33_Sub1) class33_sub1).anInt957]
= null;
break;
}
}
((Class33_Sub1) class33_sub1).anInt960 = 0;
for (int i4 = 0;
i4 < ((Class33_Sub1) class33_sub1).anInt957; i4++)
((Class33_Sub1) class33_sub1).anInt960
|= ((Class33_Sub1) class33_sub1).anIntArray959[i4];
}
}
}
}
public void method210(int arg0, int arg1, int arg2, Class33_Sub2_Sub1 arg3,
boolean arg4) {
if (arg3 != null) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 != null) {
for (int i = 0; i < ((Class33_Sub1) class33_sub1).anInt957;
i++) {
Class23 class23
= ((Class33_Sub1) class33_sub1).aClass23Array958[i];
if ((((Class23) class23).anInt343 >> 29 & 0x3) == 2) {
((Class23) class23).aClass33_Sub2_Sub1_334 = arg3;
return;
}
}
if (!arg4) {
for (int i = 1; i > 0; i++) {
}
}
}
}
}
public void method211(Class33_Sub2_Sub1 arg0, int arg1, int arg2,
boolean arg3, int arg4) {
if (arg3 && arg0 != null) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg2][arg1]
[arg4]);
if (class33_sub1 != null) {
Class11 class11 = ((Class33_Sub1) class33_sub1).aClass11_954;
if (class11 != null)
((Class11) class11).aClass33_Sub2_Sub1_201 = arg0;
}
}
}
public void method212(int arg0, int arg1, int arg2, int arg3) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 != null) {
((Class33_Sub1) class33_sub1).aClass25_953 = null;
while (arg3 >= 0)
aBoolean366 = !aBoolean366;
}
}
public void method213(int arg0, int arg1, int arg2, int arg3) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg2]
[arg3]);
if (class33_sub1 != null) {
((Class33_Sub1) class33_sub1).aClass11_954 = null;
if (arg1 >= 0) {
}
}
}
public void method214(int arg0, int arg1, int arg2, int arg3) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg3]
[arg2]);
if (class33_sub1 != null) {
for (int i = 0; i < ((Class33_Sub1) class33_sub1).anInt957; i++) {
Class23 class23
= ((Class33_Sub1) class33_sub1).aClass23Array958[i];
if (((Class23) class23).anInt343 >> 29 == 2
&& ((Class23) class23).anInt337 == arg3
&& ((Class23) class23).anInt339 == arg2) {
method209(false, class23);
return;
}
}
if (arg1 <= 0) {
}
}
}
public void method215(int arg0, int arg1, int arg2, byte arg3) {
if (arg3 == 7) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg2]
[arg1]);
if (class33_sub1 != null)
((Class33_Sub1) class33_sub1).aClass15_955 = null;
}
}
public void method216(int arg0, int arg1, int arg2) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 != null)
((Class33_Sub1) class33_sub1).aClass17_956 = null;
}
public int method217(int arg0, int arg1, int arg2) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 == null
|| ((Class33_Sub1) class33_sub1).aClass25_953 == null)
return 0;
return ((Class25) ((Class33_Sub1) class33_sub1).aClass25_953).anInt355;
}
public int method218(int arg0, int arg1, byte arg2, int arg3) {
if (arg2 != -73)
return 3;
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg3]
[arg1]);
if (class33_sub1 == null
|| ((Class33_Sub1) class33_sub1).aClass11_954 == null)
return 0;
return ((Class11) ((Class33_Sub1) class33_sub1).aClass11_954).anInt202;
}
public int method219(int arg0, int arg1, int arg2) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 == null)
return 0;
for (int i = 0; i < ((Class33_Sub1) class33_sub1).anInt957; i++) {
Class23 class23
= ((Class33_Sub1) class33_sub1).aClass23Array958[i];
if ((((Class23) class23).anInt343 >> 29 & 0x3) == 2
&& ((Class23) class23).anInt337 == arg1
&& ((Class23) class23).anInt339 == arg2)
return ((Class23) class23).anInt343;
}
return 0;
}
public int method220(int arg0, int arg1, int arg2) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 == null
|| ((Class33_Sub1) class33_sub1).aClass15_955 == null)
return 0;
return ((Class15) ((Class33_Sub1) class33_sub1).aClass15_955).anInt256;
}
public int method221(int arg0, int arg1, int arg2, int arg3) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg0][arg1]
[arg2]);
if (class33_sub1 == null)
return -1;
if (((Class33_Sub1) class33_sub1).aClass25_953 != null
&& (((Class25) ((Class33_Sub1) class33_sub1).aClass25_953).anInt355
== arg3))
return ((((Class25) ((Class33_Sub1) class33_sub1).aClass25_953)
.aByte356)
& 0xff);
if (((Class33_Sub1) class33_sub1).aClass11_954 != null
&& (((Class11) ((Class33_Sub1) class33_sub1).aClass11_954).anInt202
== arg3))
return ((((Class11) ((Class33_Sub1) class33_sub1).aClass11_954)
.aByte203)
& 0xff);
if (((Class33_Sub1) class33_sub1).aClass15_955 != null
&& (((Class15) ((Class33_Sub1) class33_sub1).aClass15_955).anInt256
== arg3))
return ((((Class15) ((Class33_Sub1) class33_sub1).aClass15_955)
.aByte257)
& 0xff);
for (int i = 0; i < ((Class33_Sub1) class33_sub1).anInt957; i++) {
if ((((Class23) ((Class33_Sub1) class33_sub1).aClass23Array958[i])
.anInt343)
== arg3)
return (((Class23) (((Class33_Sub1) class33_sub1)
.aClass23Array958[i])).aByte344
& 0xff);
}
return -1;
}
public void method222(int arg0, int arg1, byte arg2, int arg3, int arg4,
int arg5) {
int i = (int) Math.sqrt((double) (arg5 * arg5 + arg4 * arg4
+ arg0 * arg0));
int i1 = arg3 * i >> 8;
for (int i2 = 0; i2 < ((Class27) this).anInt372; i2++) {
for (int i3 = 0; i3 < ((Class27) this).anInt373; i3++) {
for (int i4 = 0; i4 < ((Class27) this).anInt374; i4++) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[i2]
[i3][i4]);
if (class33_sub1 != null) {
Class25 class25
= ((Class33_Sub1) class33_sub1).aClass25_953;
if (class25 != null
&& (((Class25) class25).aClass33_Sub2_Sub1_353
!= null)
&& (((Class33_Sub2_Sub1)
((Class25) class25).aClass33_Sub2_Sub1_353)
.aClass20Array1039) != null) {
method224(i2, 1, i3, 1, true,
(((Class25) class25)
.aClass33_Sub2_Sub1_353),
i4);
if ((((Class25) class25).aClass33_Sub2_Sub1_354
!= null)
&& (((Class33_Sub2_Sub1)
(((Class25) class25)
.aClass33_Sub2_Sub1_354))
.aClass20Array1039) != null) {
method224(i2, 1, i3, 1, true,
(((Class25) class25)
.aClass33_Sub2_Sub1_354),
i4);
method225((((Class25) class25)
.aClass33_Sub2_Sub1_353),
(((Class25) class25)
.aClass33_Sub2_Sub1_354),
0, 0, 0, false);
((Class25) class25).aClass33_Sub2_Sub1_354
.method276(arg1, i1, arg5, arg4, arg0);
}
((Class25) class25).aClass33_Sub2_Sub1_353
.method276(arg1, i1, arg5, arg4, arg0);
}
for (int i5 = 0;
i5 < ((Class33_Sub1) class33_sub1).anInt957;
i5++) {
Class23 class23 = (((Class33_Sub1) class33_sub1)
.aClass23Array958[i5]);
if (class23 != null
&& (((Class23) class23).aClass33_Sub2_Sub1_334
!= null)
&& (((Class33_Sub2_Sub1)
(((Class23) class23)
.aClass33_Sub2_Sub1_334))
.aClass20Array1039) != null) {
method224(i2,
(((Class23) class23).anInt340
- ((Class23) class23).anInt339 + 1),
i3,
(((Class23) class23).anInt338
- ((Class23) class23).anInt337 + 1),
true,
(((Class23) class23)
.aClass33_Sub2_Sub1_334),
i4);
((Class23) class23).aClass33_Sub2_Sub1_334
.method276(arg1, i1, arg5, arg4, arg0);
}
}
Class15 class15
= ((Class33_Sub1) class33_sub1).aClass15_955;
if (class15 != null
&& (((Class33_Sub2_Sub1)
((Class15) class15).aClass33_Sub2_Sub1_255)
.aClass20Array1039) != null) {
method223(i4, 305,
(((Class15) class15)
.aClass33_Sub2_Sub1_255),
i3, i2);
((Class15) class15).aClass33_Sub2_Sub1_255
.method276(arg1, i1, arg5, arg4, arg0);
}
}
}
}
}
if (arg2 != aByte368)
anInt365 = 230;
}
private void method223(int arg0, int arg1, Class33_Sub2_Sub1 arg2,
int arg3, int arg4) {
if (arg1 <= 0) {
for (int i = 1; i > 0; i++) {
}
}
if (arg3 < ((Class27) this).anInt373) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg4]
[arg3 + 1][arg0]);
if (class33_sub1 != null
&& ((Class33_Sub1) class33_sub1).aClass15_955 != null
&& ((Class33_Sub2_Sub1)
(((Class15) ((Class33_Sub1) class33_sub1).aClass15_955)
.aClass33_Sub2_Sub1_255)).aClass20Array1039 != null)
method225(arg2,
((Class15) (((Class33_Sub1) class33_sub1)
.aClass15_955)).aClass33_Sub2_Sub1_255,
128, 0, 0, true);
}
if (arg0 < ((Class27) this).anInt373) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg4][arg3]
[arg0 + 1]);
if (class33_sub1 != null
&& ((Class33_Sub1) class33_sub1).aClass15_955 != null
&& ((Class33_Sub2_Sub1)
(((Class15) ((Class33_Sub1) class33_sub1).aClass15_955)
.aClass33_Sub2_Sub1_255)).aClass20Array1039 != null)
method225(arg2,
((Class15) (((Class33_Sub1) class33_sub1)
.aClass15_955)).aClass33_Sub2_Sub1_255,
0, 0, 128, true);
}
if (arg3 < ((Class27) this).anInt373
&& arg0 < ((Class27) this).anInt374) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg4]
[arg3 + 1][arg0 + 1]);
if (class33_sub1 != null
&& ((Class33_Sub1) class33_sub1).aClass15_955 != null
&& ((Class33_Sub2_Sub1)
(((Class15) ((Class33_Sub1) class33_sub1).aClass15_955)
.aClass33_Sub2_Sub1_255)).aClass20Array1039 != null)
method225(arg2,
((Class15) (((Class33_Sub1) class33_sub1)
.aClass15_955)).aClass33_Sub2_Sub1_255,
128, 0, 128, true);
}
if (arg3 < ((Class27) this).anInt373 && arg0 > 0) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg4]
[arg3 + 1][arg0 - 1]);
if (class33_sub1 != null
&& ((Class33_Sub1) class33_sub1).aClass15_955 != null
&& ((Class33_Sub2_Sub1)
(((Class15) ((Class33_Sub1) class33_sub1).aClass15_955)
.aClass33_Sub2_Sub1_255)).aClass20Array1039 != null)
method225(arg2,
((Class15) (((Class33_Sub1) class33_sub1)
.aClass15_955)).aClass33_Sub2_Sub1_255,
128, 0, -128, true);
}
}
private void method224(int arg0, int arg1, int arg2, int arg3,
boolean arg4, Class33_Sub2_Sub1 arg5, int arg6) {
boolean flag = true;
if (!arg4)
aBoolean366 = !aBoolean366;
int i = arg2;
int i1 = arg2 + arg3;
int i2 = arg6 - 1;
int i3 = arg6 + arg1;
for (int i4 = arg0; i4 <= arg0 + 1; i4++) {
if (i4 != ((Class27) this).anInt372) {
for (int i5 = i; i5 <= i1; i5++) {
if (i5 >= 0 && i5 < ((Class27) this).anInt373) {
for (int i6 = i2; i6 <= i3; i6++) {
if (i6 >= 0 && i6 < ((Class27) this).anInt374
&& (!flag || i5 >= i1 || i6 >= i3
|| i6 < arg6 && i5 != arg2)) {
Class33_Sub1 class33_sub1
= (((Class27) this)
.aClass33_Sub1ArrayArrayArray376[i4][i5]
[i6]);
if (class33_sub1 != null) {
int i7
= (((((Class27) this)
.anIntArrayArrayArray375[i4][i5]
[i6])
+ (((Class27) this)
.anIntArrayArrayArray375[i4]
[i5 + 1][i6])
+ (((Class27) this)
.anIntArrayArrayArray375[i4][i5]
[i6 + 1])
+ (((Class27) this)
.anIntArrayArrayArray375[i4]
[i5 + 1][i6 + 1])) / 4
- ((((Class27) this)
.anIntArrayArrayArray375[arg0]
[arg2][arg6])
+ (((Class27) this)
.anIntArrayArrayArray375[arg0]
[arg2 + 1][arg6])
+ (((Class27) this)
.anIntArrayArrayArray375[arg0]
[arg2][arg6 + 1])
+ (((Class27) this)
.anIntArrayArrayArray375[arg0]
[arg2 + 1][arg6 + 1])) / 4);
Class25 class25
= (((Class33_Sub1) class33_sub1)
.aClass25_953);
if (class25 != null
&& (((Class25) class25)
.aClass33_Sub2_Sub1_353) != null
&& (((Class33_Sub2_Sub1)
(((Class25) class25)
.aClass33_Sub2_Sub1_353))
.aClass20Array1039) != null)
method225(arg5,
(((Class25) class25)
.aClass33_Sub2_Sub1_353),
((i5 - arg2) * 128
+ (1 - arg3) * 64),
i7,
((i6 - arg6) * 128
+ (1 - arg1) * 64),
flag);
if (class25 != null
&& (((Class25) class25)
.aClass33_Sub2_Sub1_354) != null
&& (((Class33_Sub2_Sub1)
(((Class25) class25)
.aClass33_Sub2_Sub1_354))
.aClass20Array1039) != null)
method225(arg5,
(((Class25) class25)
.aClass33_Sub2_Sub1_354),
((i5 - arg2) * 128
+ (1 - arg3) * 64),
i7,
((i6 - arg6) * 128
+ (1 - arg1) * 64),
flag);
for (int i8 = 0;
i8 < (((Class33_Sub1) class33_sub1)
.anInt957);
i8++) {
Class23 class23
= (((Class33_Sub1) class33_sub1)
.aClass23Array958[i8]);
if (class23 != null
&& ((((Class23) class23)
.aClass33_Sub2_Sub1_334)
!= null)
&& (((Class33_Sub2_Sub1)
(((Class23) class23)
.aClass33_Sub2_Sub1_334))
.aClass20Array1039) != null) {
int i9
= (((Class23) class23).anInt338
- (((Class23) class23)
.anInt337)
+ 1);
int i10
= (((Class23) class23).anInt340
- (((Class23) class23)
.anInt339)
+ 1);
method225
(arg5,
(((Class23) class23)
.aClass33_Sub2_Sub1_334),
((((Class23) class23).anInt337
- arg2) * 128
+ (i9 - arg3) * 64),
i7,
((((Class23) class23).anInt339
- arg6) * 128
+ (i10 - arg1) * 64),
flag);
}
}
}
}
}
}
}
i--;
flag = false;
}
}
}
private void method225(Class33_Sub2_Sub1 arg0, Class33_Sub2_Sub1 arg1,
int arg2, int arg3, int arg4, boolean arg5) {
((Class27) this).anInt423++;
int i = 0;
int[] ints = arg1.anIntArray1006;
int i1 = arg1.anInt1005;
for (int i2 = 0; i2 < arg0.anInt1005; i2++) {
Class20 class20 = ((Class33_Sub2_Sub1) arg0).aClass20Array1039[i2];
Class20 class20_3
= ((Class33_Sub2_Sub1) arg0).aClass20Array1040[i2];
if (((Class20) class20_3).anInt317 != 0) {
int i4 = arg0.anIntArray1007[i2] - arg3;
if (i4 <= arg1.anInt1031) {
int i5 = arg0.anIntArray1006[i2] - arg2;
if (i5 >= arg1.anInt1025 && i5 <= arg1.anInt1026) {
int i6 = arg0.anIntArray1008[i2] - arg4;
if (i6 >= arg1.anInt1028 && i6 <= arg1.anInt1027) {
for (int i7 = 0; i7 < i1; i7++) {
Class20 class20_8 = (((Class33_Sub2_Sub1) arg1)
.aClass20Array1039[i7]);
Class20 class20_9 = (((Class33_Sub2_Sub1) arg1)
.aClass20Array1040[i7]);
if (i5 == ints[i7]
&& i6 == arg1.anIntArray1008[i7]
&& i4 == arg1.anIntArray1007[i7]
&& ((Class20) class20_9).anInt317 != 0) {
((Class20) class20).anInt314
+= ((Class20) class20_9).anInt314;
((Class20) class20).anInt315
+= ((Class20) class20_9).anInt315;
((Class20) class20).anInt316
+= ((Class20) class20_9).anInt316;
((Class20) class20).anInt317
+= ((Class20) class20_9).anInt317;
((Class20) class20_8).anInt314
+= ((Class20) class20_3).anInt314;
((Class20) class20_8).anInt315
+= ((Class20) class20_3).anInt315;
((Class20) class20_8).anInt316
+= ((Class20) class20_3).anInt316;
((Class20) class20_8).anInt317
+= ((Class20) class20_3).anInt317;
i++;
((Class27) this).anIntArray421[i2]
= ((Class27) this).anInt423;
((Class27) this).anIntArray422[i7]
= ((Class27) this).anInt423;
}
}
}
}
}
}
}
if (i >= 3 && arg5) {
for (int i10 = 0; i10 < arg0.anInt1009; i10++) {
if ((((Class27) this).anIntArray421[arg0.anIntArray1010[i10]]
== ((Class27) this).anInt423)
&& ((((Class27) this).anIntArray421
[arg0.anIntArray1011[i10]])
== ((Class27) this).anInt423)
&& ((((Class27) this).anIntArray421
[arg0.anIntArray1012[i10]])
== ((Class27) this).anInt423))
arg0.anIntArray1016[i10] = -1;
}
for (int i11 = 0; i11 < arg1.anInt1009; i11++) {
if ((((Class27) this).anIntArray422[arg1.anIntArray1010[i11]]
== ((Class27) this).anInt423)
&& ((((Class27) this).anIntArray422
[arg1.anIntArray1011[i11]])
== ((Class27) this).anInt423)
&& ((((Class27) this).anIntArray422
[arg1.anIntArray1012[i11]])
== ((Class27) this).anInt423))
arg1.anIntArray1016[i11] = -1;
}
}
}
public void method226(int[] arg0, int arg1, int arg2, int arg3, int arg4,
int arg5) {
Class33_Sub1 class33_sub1
= (((Class27) this).aClass33_Sub1ArrayArrayArray376[arg3][arg4]
[arg5]);
if (class33_sub1 != null) {
Class21 class21 = class33_sub1.aClass21_951;
if (class21 != null) {
int i = ((Class21) class21).anInt324;
if (i != 0) {
for (int i1 = 0; i1 < 4; i1++) {
arg0[arg1] = i;
arg0[arg1 + 1] = i;
arg0[arg1 + 2] = i;
arg0[arg1 + 3] = i;
arg1 += arg2;
}
}
} else {
Class13 class13 = class33_sub1.aClass13_952;
if (class13 != null) {
int i = ((Class13) class13).anInt228;
int i2 = ((Class13) class13).anInt229;
int i3 = ((Class13) class13).anInt230;
int i4 = ((Class13) class13).anInt231;
int[] ints = ((Class27) this).anIntArrayArray424[i];
int[] ints5 = ((Class27) this).anIntArrayArray425[i2];
int i6 = 0;
if (i3 != 0) {
for (int i7 = 0; i7 < 4; i7++) {
arg0[arg1] = ints[ints5[i6++]] == 0 ? i3 : i4;
arg0[arg1 + 1] = ints[ints5[i6++]] == 0 ? i3 : i4;
arg0[arg1 + 2] = ints[ints5[i6++]] == 0 ? i3 : i4;
arg0[arg1 + 3] = ints[ints5[i6++]] == 0 ? i3 : i4;
arg1 += arg2;
}
} else {
for (int i8 = 0; i8 < 4; i8++) {
if (ints[ints5[i6++]] != 0)
arg0[arg1] = i4;
if (ints[ints5[i6++]] != 0)
arg0[arg1 + 1] = i4;
if (ints[ints5[i6++]] != 0)
arg0[arg1 + 2] = i4;
if (ints[ints5[i6++]] != 0)
arg0[arg1 + 3] = i4;
arg1 += arg2;
}
}
}
}
}
}
public static void method227(int arg0, int arg1, int arg2, int arg3,
int[] arg4, int arg5) {
anInt430 = 0;
anInt431 = 0;
anInt432 = arg2;
anInt433 = arg1;
anInt428 = arg2 / 2;
anInt429 = arg1 / 2;
boolean[][][][] bools = new boolean[9][32][53][53];
if (arg0 != 0)
anInt369 = -204;
for (int i = 128; i <= 384; i += 32) {
for (int i1 = 0; i1 < 2048; i1 += 64) {
anInt393 = Class33_Sub2_Sub1.anIntArray1082[i];
anInt394 = Class33_Sub2_Sub1.anIntArray1083[i];
anInt395 = Class33_Sub2_Sub1.anIntArray1082[i1];
anInt396 = Class33_Sub2_Sub1.anIntArray1083[i1];
int i2 = (i - 128) / 32;
int i3 = i1 / 64;
for (int i4 = -26; i4 <= 26; i4++) {
for (int i5 = -26; i5 <= 26; i5++) {
int i6 = i4 * 128;
int i7 = i5 * 128;
boolean flag = false;
for (int i8 = -arg5; i8 <= arg3; i8 += 128) {
if (method228(31017, i7, i6, arg4[i2] + i8)) {
flag = true;
break;
}
}
bools[i2][i3][i4 + 25 + 1][i5 + 25 + 1] = flag;
}
}
}
}
for (int i = 0; i < 8; i++) {
for (int i9 = 0; i9 < 32; i9++) {
for (int i10 = -25; i10 < 25; i10++) {
for (int i11 = -25; i11 < 25; i11++) {
boolean flag = false;
while6:
for (int i12 = -1; i12 <= 1; i12++) {
for (int i13 = -1; i13 <= 1; i13++) {
if (bools[i][i9][i10 + i12 + 25 + 1]
[i11 + i13 + 25 + 1]) {
flag = true;
break while6;
}
if (bools[i][(i9 + 1) % 31][i10 + i12 + 25 + 1]
[i11 + i13 + 25 + 1]) {
flag = true;
break while6;
}
if (bools[i + 1][i9][i10 + i12 + 25 + 1]
[i11 + i13 + 25 + 1]) {
flag = true;
break while6;
}
if (bools[i + 1][(i9 + 1) % 31]
[i10 + i12 + 25 + 1][i11 + i13 + 25 + 1]) {
flag = true;
break while6;
}
}
}
aBooleanArrayArrayArrayArray426[i][i9][i10 + 25]
[i11 + 25]
= flag;
}
}
}
}
}
public static boolean method228(int arg0, int arg1, int arg2, int arg3) {
int i = arg1 * anInt395 + arg2 * anInt396 >> 16;
int i1 = arg1 * anInt396 - arg2 * anInt395 >> 16;
int i2 = arg3 * anInt393 + i1 * anInt394 >> 16;
int i3 = arg3 * anInt394 - i1 * anInt393 >> 16;
if (arg0 != 31017)
throw new NullPointerException();
if (i2 < 50 || i2 > 3500)
return false;
int i4 = anInt428 + (i << 9) / i2;
int i5 = anInt429 + (i3 << 9) / i2;
if (i4 < anInt430 || i4 > anInt432 || i5 < anInt431 || i5 > anInt433)
return false;
return true;
}
public void method229(int arg0, int arg1, byte arg2) {
aBoolean402 = true;
anInt403 = arg1;
anInt404 = arg0;
anInt405 = -1;
anInt406 = -1;
if (arg2 != aByte370) {
}
}
public void method230(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5) {
if (arg0 < 0)
arg0 = 0;
else if (arg0 >= ((Class27) this).anInt373 * 128)
arg0 = ((Class27) this).anInt373 * 128 - 1;
if (arg2 < 0)
arg2 = 0;
else if (arg2 >= ((Class27) this).anInt374 * 128)
arg2 = ((Class27) this).anInt374 * 128 - 1;
anInt383++;
anInt393 = Class33_Sub2_Sub1.anIntArray1082[arg3];
anInt394 = Class33_Sub2_Sub1.anIntArray1083[arg3];
anInt395 = Class33_Sub2_Sub1.anIntArray1082[arg4];
anInt396 = Class33_Sub2_Sub1.anIntArray1083[arg4];
aBooleanArrayArray427
= aBooleanArrayArrayArrayArray426[(arg3 - 128) / 32][arg4 / 64];
anInt390 = arg0;
anInt391 = arg1;
anInt392 = arg2;
anInt388 = arg0 / 128;
anInt389 = arg2 / 128;
anInt382 = arg5;
anInt384 = anInt388 - 25;
if (anInt384 < 0)
anInt384 = 0;
anInt386 = anInt389 - 25;
if (anInt386 < 0)
anInt386 = 0;
anInt385 = anInt388 + 25;
if (anInt385 > ((Class27) this).anInt373)
anInt385 = ((Class27) this).anInt373;
anInt387 = anInt389 + 25;
if (anInt387 > ((Class27) this).anInt374)
anInt387 = ((Class27) this).anInt374;
method236(0);
anInt381 = 0;
for (int i = ((Class27) this).anInt377; i < ((Class27) this).anInt372;
i++) {
Class33_Sub1[][] class33_sub1s
= ((Class27) this).aClass33_Sub1ArrayArrayArray376[i];
for (int i1 = anInt384; i1 < anInt385; i1++) {
for (int i2 = anInt386; i2 < anInt387; i2++) {
Class33_Sub1 class33_sub1 = class33_sub1s[i1][i2];
if (class33_sub1 != null) {
if (((Class33_Sub1) class33_sub1).anInt961 > arg5
|| (!(aBooleanArrayArray427[i1 - anInt388 + 25]
[i2 - anInt389 + 25])
&& (((Class27) this).anIntArrayArrayArray375[i]
[i1][i2]) - arg1 < 2000)) {
((Class33_Sub1) class33_sub1).aBoolean962 = false;
((Class33_Sub1) class33_sub1).aBoolean963 = false;
((Class33_Sub1) class33_sub1).anInt965 = 0;
} else {
((Class33_Sub1) class33_sub1).aBoolean962 = true;
((Class33_Sub1) class33_sub1).aBoolean963 = true;
if (((Class33_Sub1) class33_sub1).anInt957 > 0)
((Class33_Sub1) class33_sub1).aBoolean964
= true;
else
((Class33_Sub1) class33_sub1).aBoolean964
= false;
anInt381++;
}
}
}
}
}
for (int i = ((Class27) this).anInt377; i < ((Class27) this).anInt372;
i++) {
Class33_Sub1[][] class33_sub1s
= ((Class27) this).aClass33_Sub1ArrayArrayArray376[i];
for (int i3 = -25; i3 <= 0; i3++) {
int i4 = anInt388 + i3;
int i5 = anInt388 - i3;
if (i4 >= anInt384 || i5 < anInt385) {
for (int i6 = -25; i6 <= 0; i6++) {
int i7 = anInt389 + i6;
int i8 = anInt389 - i6;
if (i4 >= anInt384) {
if (i7 >= anInt386) {
Class33_Sub1 class33_sub1
= class33_sub1s[i4][i7];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, true);
}
if (i8 < anInt387) {
Class33_Sub1 class33_sub1
= class33_sub1s[i4][i8];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, true);
}
}
if (i5 < anInt385) {
if (i7 >= anInt386) {
Class33_Sub1 class33_sub1
= class33_sub1s[i5][i7];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, true);
}
if (i8 < anInt387) {
Class33_Sub1 class33_sub1
= class33_sub1s[i5][i8];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, true);
}
}
if (anInt381 == 0) {
aBoolean402 = false;
return;
}
}
}
}
}
for (int i = ((Class27) this).anInt377; i < ((Class27) this).anInt372;
i++) {
Class33_Sub1[][] class33_sub1s
= ((Class27) this).aClass33_Sub1ArrayArrayArray376[i];
for (int i9 = -25; i9 <= 0; i9++) {
int i10 = anInt388 + i9;
int i11 = anInt388 - i9;
if (i10 >= anInt384 || i11 < anInt385) {
for (int i12 = -25; i12 <= 0; i12++) {
int i13 = anInt389 + i12;
int i14 = anInt389 - i12;
if (i10 >= anInt384) {
if (i13 >= anInt386) {
Class33_Sub1 class33_sub1
= class33_sub1s[i10][i13];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, false);
}
if (i14 < anInt387) {
Class33_Sub1 class33_sub1
= class33_sub1s[i10][i14];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, false);
}
}
if (i11 < anInt385) {
if (i13 >= anInt386) {
Class33_Sub1 class33_sub1
= class33_sub1s[i11][i13];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, false);
}
if (i14 < anInt387) {
Class33_Sub1 class33_sub1
= class33_sub1s[i11][i14];
if (class33_sub1 != null
&& (((Class33_Sub1) class33_sub1)
.aBoolean962))
method231(class33_sub1, false);
}
}
if (anInt381 == 0) {
aBoolean402 = false;
return;
}
}
}
}
}
}
public void method231(Class33_Sub1 arg0, boolean arg1) {
aClass22_412.method181(arg0);
for (;;) {
Class33_Sub1 class33_sub1
= (Class33_Sub1) aClass22_412.method182();
if (class33_sub1 == null)
break;
if (((Class33_Sub1) class33_sub1).aBoolean963) {
int i = ((Class33_Sub1) class33_sub1).anInt948;
int i1 = ((Class33_Sub1) class33_sub1).anInt949;
int i2 = ((Class33_Sub1) class33_sub1).anInt947;
int i3 = ((Class33_Sub1) class33_sub1).anInt950;
Class33_Sub1[][] class33_sub1s
= ((Class27) this).aClass33_Sub1ArrayArrayArray376[i2];
if (((Class33_Sub1) class33_sub1).aBoolean962) {
if (arg1) {
if (i2 > 0) {
Class33_Sub1 class33_sub1_4
= (((Class27) this)
.aClass33_Sub1ArrayArrayArray376[i2 - 1][i]
[i1]);
if (class33_sub1_4 != null
&& ((Class33_Sub1) class33_sub1_4).aBoolean963)
continue;
}
if (i <= anInt388 && i > anInt384) {
Class33_Sub1 class33_sub1_5
= class33_sub1s[i - 1][i1];
if (class33_sub1_5 != null
&& ((Class33_Sub1) class33_sub1_5).aBoolean963
&& (((Class33_Sub1) class33_sub1_5).aBoolean962
|| (((Class33_Sub1) class33_sub1).anInt960
& 0x1) == 0))
continue;
}
if (i >= anInt388 && i < anInt385 - 1) {
Class33_Sub1 class33_sub1_6
= class33_sub1s[i + 1][i1];
if (class33_sub1_6 != null
&& ((Class33_Sub1) class33_sub1_6).aBoolean963
&& (((Class33_Sub1) class33_sub1_6).aBoolean962
|| (((Class33_Sub1) class33_sub1).anInt960
& 0x4) == 0))
continue;
}
if (i1 <= anInt389 && i1 > anInt386) {
Class33_Sub1 class33_sub1_7
= class33_sub1s[i][i1 - 1];
if (class33_sub1_7 != null
&& ((Class33_Sub1) class33_sub1_7).aBoolean963
&& (((Class33_Sub1) class33_sub1_7).aBoolean962
|| (((Class33_Sub1) class33_sub1).anInt960
& 0x8) == 0))
continue;
}
if (i1 >= anInt389 && i1 < anInt387 - 1) {
Class33_Sub1 class33_sub1_8
= class33_sub1s[i][i1 + 1];
if (class33_sub1_8 != null
&& ((Class33_Sub1) class33_sub1_8).aBoolean963
&& (((Class33_Sub1) class33_sub1_8).aBoolean962
|| (((Class33_Sub1) class33_sub1).anInt960
& 0x2) == 0))
continue;
}
} else
arg1 = true;
((Class33_Sub1) class33_sub1).aBoolean962 = false;
if (((Class33_Sub1) class33_sub1).aClass33_Sub1_969
!= null) {
Class33_Sub1 class33_sub1_9
= ((Class33_Sub1) class33_sub1).aClass33_Sub1_969;
if (class33_sub1_9.aClass21_951 != null)
method232(class33_sub1_9.aClass21_951, 0, anInt393,
anInt394, anInt395, anInt396, i, i1);
else if (class33_sub1_9.aClass13_952 != null)
method233(i, i1, anInt394, 0, anInt395,
class33_sub1_9.aClass13_952, anInt393,
anInt396);
Class25 class25
= ((Class33_Sub1) class33_sub1_9).aClass25_953;
if (class25 != null)
((Class25) class25).aClass33_Sub2_Sub1_353
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
for (int i10 = 0;
i10 < ((Class33_Sub1) class33_sub1_9).anInt957;
i10++) {
Class23 class23 = (((Class33_Sub1) class33_sub1_9)
.aClass23Array958[i10]);
if (class23 != null) {
Class33_Sub2_Sub1 class33_sub2_sub1
= (((Class23) class23)
.aClass33_Sub2_Sub1_334);
if (class33_sub2_sub1 == null)
class33_sub2_sub1
= ((Class23) class23)
.aClass33_Sub7_335.method358(0);
class33_sub2_sub1.method279
(class23.anInt336, anInt393, anInt394,
anInt395, anInt396,
((Class23) class23).anInt332 - anInt390,
((Class23) class23).anInt331 - anInt391,
((Class23) class23).anInt333 - anInt392,
((Class23) class23).anInt343);
}
}
}
boolean flag = false;
if (class33_sub1.aClass21_951 != null) {
if (!method237(i3, i, i1)) {
flag = true;
method232(class33_sub1.aClass21_951, i3, anInt393,
anInt394, anInt395, anInt396, i, i1);
}
} else if (class33_sub1.aClass13_952 != null
&& !method237(i3, i, i1)) {
flag = true;
method233(i, i1, anInt394, 0, anInt395,
class33_sub1.aClass13_952, anInt393,
anInt396);
}
int i11 = 0;
int i12 = 0;
Class25 class25
= ((Class33_Sub1) class33_sub1).aClass25_953;
Class11 class11
= ((Class33_Sub1) class33_sub1).aClass11_954;
if (class25 != null || class11 != null) {
if (anInt388 == i)
i11++;
else if (anInt388 < i)
i11 += 2;
if (anInt389 == i1)
i11 += 3;
else if (anInt389 > i1)
i11 += 6;
i12 = anIntArray413[i11];
((Class33_Sub1) class33_sub1).anInt968
= anIntArray415[i11];
}
if (class25 != null) {
if ((((Class25) class25).anInt351 & anIntArray414[i11])
!= 0) {
if (((Class25) class25).anInt351 == 16) {
((Class33_Sub1) class33_sub1).anInt965 = 3;
((Class33_Sub1) class33_sub1).anInt966
= anIntArray416[i11];
((Class33_Sub1) class33_sub1).anInt967
= 3 - (((Class33_Sub1) class33_sub1)
.anInt966);
} else if (((Class25) class25).anInt351 == 32) {
((Class33_Sub1) class33_sub1).anInt965 = 6;
((Class33_Sub1) class33_sub1).anInt966
= anIntArray417[i11];
((Class33_Sub1) class33_sub1).anInt967
= 6 - (((Class33_Sub1) class33_sub1)
.anInt966);
} else if (((Class25) class25).anInt351 == 64) {
((Class33_Sub1) class33_sub1).anInt965 = 12;
((Class33_Sub1) class33_sub1).anInt966
= anIntArray418[i11];
((Class33_Sub1) class33_sub1).anInt967
= 12 - (((Class33_Sub1) class33_sub1)
.anInt966);
} else {
((Class33_Sub1) class33_sub1).anInt965 = 9;
((Class33_Sub1) class33_sub1).anInt966
= anIntArray419[i11];
((Class33_Sub1) class33_sub1).anInt967
= 9 - (((Class33_Sub1) class33_sub1)
.anInt966);
}
} else
((Class33_Sub1) class33_sub1).anInt965 = 0;
if ((((Class25) class25).anInt351 & i12) != 0
&& !method238(i3, i, i1,
((Class25) class25).anInt351))
((Class25) class25).aClass33_Sub2_Sub1_353
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
if ((((Class25) class25).anInt352 & i12) != 0
&& !method238(i3, i, i1,
((Class25) class25).anInt352))
((Class25) class25).aClass33_Sub2_Sub1_354
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
}
if (class11 != null
&& !method239(i3, i, i1,
(((Class11) class11)
.aClass33_Sub2_Sub1_201.anInt1030))) {
if ((((Class11) class11).anInt199 & i12) != 0)
((Class11) class11).aClass33_Sub2_Sub1_201
.method279
(((Class11) class11).anInt200, anInt393,
anInt394, anInt395, anInt396,
((Class11) class11).anInt197 - anInt390,
((Class11) class11).anInt196 - anInt391,
((Class11) class11).anInt198 - anInt392,
((Class11) class11).anInt202);
else if ((((Class11) class11).anInt199 & 0x300) != 0) {
int i13 = ((Class11) class11).anInt197 - anInt390;
int i14 = ((Class11) class11).anInt196 - anInt391;
int i15 = ((Class11) class11).anInt198 - anInt392;
int i16 = ((Class11) class11).anInt200;
int i17;
if (i16 == 1 || i16 == 2)
i17 = -i13;
else
i17 = i13;
int i18;
if (i16 == 2 || i16 == 3)
i18 = -i15;
else
i18 = i15;
if ((((Class11) class11).anInt199 & 0x100) != 0
&& i18 < i17) {
int i19 = i13 + anIntArray398[i16];
int i20 = i15 + anIntArray399[i16];
((Class11) class11).aClass33_Sub2_Sub1_201
.method279
(i16 * 512 + 256, anInt393, anInt394,
anInt395, anInt396, i19, i14, i20,
((Class11) class11).anInt202);
}
if ((((Class11) class11).anInt199 & 0x200) != 0
&& i18 > i17) {
int i21 = i13 + anIntArray400[i16];
int i22 = i15 + anIntArray401[i16];
((Class11) class11).aClass33_Sub2_Sub1_201
.method279
(i16 * 512 + 1280 & 0x7ff, anInt393,
anInt394, anInt395, anInt396, i21, i14,
i22, ((Class11) class11).anInt202);
}
}
}
if (flag) {
Class15 class15
= ((Class33_Sub1) class33_sub1).aClass15_955;
if (class15 != null)
((Class15) class15).aClass33_Sub2_Sub1_255
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class15) class15).anInt253 - anInt390,
((Class15) class15).anInt252 - anInt391,
((Class15) class15).anInt254 - anInt392,
((Class15) class15).anInt256);
Class17 class17
= ((Class33_Sub1) class33_sub1).aClass17_956;
if (class17 != null
&& ((Class17) class17).anInt279 == 0)
((Class17) class17).aClass33_Sub2_Sub1_277
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class17) class17).anInt275 - anInt390,
((Class17) class17).anInt274 - anInt391,
((Class17) class17).anInt276 - anInt392,
((Class17) class17).anInt278);
}
int i23 = ((Class33_Sub1) class33_sub1).anInt960;
if (i23 != 0) {
if (i < anInt388 && (i23 & 0x4) != 0) {
Class33_Sub1 class33_sub1_24
= class33_sub1s[i + 1][i1];
if (class33_sub1_24 != null
&& (((Class33_Sub1) class33_sub1_24)
.aBoolean963))
aClass22_412.method181(class33_sub1_24);
}
if (i1 < anInt389 && (i23 & 0x2) != 0) {
Class33_Sub1 class33_sub1_25
= class33_sub1s[i][i1 + 1];
if (class33_sub1_25 != null
&& (((Class33_Sub1) class33_sub1_25)
.aBoolean963))
aClass22_412.method181(class33_sub1_25);
}
if (i > anInt388 && (i23 & 0x1) != 0) {
Class33_Sub1 class33_sub1_26
= class33_sub1s[i - 1][i1];
if (class33_sub1_26 != null
&& (((Class33_Sub1) class33_sub1_26)
.aBoolean963))
aClass22_412.method181(class33_sub1_26);
}
if (i1 > anInt389 && (i23 & 0x8) != 0) {
Class33_Sub1 class33_sub1_27
= class33_sub1s[i][i1 - 1];
if (class33_sub1_27 != null
&& (((Class33_Sub1) class33_sub1_27)
.aBoolean963))
aClass22_412.method181(class33_sub1_27);
}
}
}
if (((Class33_Sub1) class33_sub1).anInt965 != 0) {
boolean flag = true;
for (int i28 = 0;
i28 < ((Class33_Sub1) class33_sub1).anInt957; i28++) {
if ((((Class23) (((Class33_Sub1) class33_sub1)
.aClass23Array958[i28])).anInt342
!= anInt383)
&& (((((Class33_Sub1) class33_sub1).anIntArray959
[i28])
& ((Class33_Sub1) class33_sub1).anInt965)
== ((Class33_Sub1) class33_sub1).anInt966)) {
flag = false;
break;
}
}
if (flag) {
Class25 class25
= ((Class33_Sub1) class33_sub1).aClass25_953;
if (!method238(i3, i, i1,
((Class25) class25).anInt351))
((Class25) class25).aClass33_Sub2_Sub1_353
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
((Class33_Sub1) class33_sub1).anInt965 = 0;
}
}
if (((Class33_Sub1) class33_sub1).aBoolean964) {
int i29 = ((Class33_Sub1) class33_sub1).anInt957;
((Class33_Sub1) class33_sub1).aBoolean964 = false;
int i30 = 0;
while8:
for (int i31 = 0; i31 < i29; i31++) {
Class23 class23 = (((Class33_Sub1) class33_sub1)
.aClass23Array958[i31]);
if (((Class23) class23).anInt342 != anInt383) {
for (int i32 = ((Class23) class23).anInt337;
i32 <= ((Class23) class23).anInt338; i32++) {
for (int i33 = ((Class23) class23).anInt339;
i33 <= ((Class23) class23).anInt340;
i33++) {
Class33_Sub1 class33_sub1_34
= class33_sub1s[i32][i33];
if (((Class33_Sub1) class33_sub1_34)
.aBoolean962) {
((Class33_Sub1) class33_sub1)
.aBoolean964
= true;
continue while8;
}
if ((((Class33_Sub1) class33_sub1_34)
.anInt965)
!= 0) {
int i35 = 0;
if (i32 > ((Class23) class23).anInt337)
i35++;
if (i32 < ((Class23) class23).anInt338)
i35 += 4;
if (i33 > ((Class23) class23).anInt339)
i35 += 8;
if (i33 < ((Class23) class23).anInt340)
i35 += 2;
if ((i35 & ((Class33_Sub1)
class33_sub1_34).anInt965)
== (((Class33_Sub1) class33_sub1)
.anInt967)) {
((Class33_Sub1) class33_sub1)
.aBoolean964
= true;
continue while8;
}
}
}
}
aClass23Array397[i30++] = class23;
int i36 = anInt388 - ((Class23) class23).anInt337;
int i37 = ((Class23) class23).anInt338 - anInt388;
if (i37 > i36)
i36 = i37;
int i38 = anInt389 - ((Class23) class23).anInt339;
int i39 = ((Class23) class23).anInt340 - anInt389;
if (i39 > i38)
((Class23) class23).anInt341 = i36 + i39;
else
((Class23) class23).anInt341 = i36 + i38;
}
}
while (i30 > 0) {
int i40 = -50;
int i41 = -1;
for (int i42 = 0; i42 < i30; i42++) {
Class23 class23 = aClass23Array397[i42];
if (((Class23) class23).anInt341 > i40
&& ((Class23) class23).anInt342 != anInt383) {
i40 = ((Class23) class23).anInt341;
i41 = i42;
}
}
if (i41 == -1)
break;
Class23 class23 = aClass23Array397[i41];
((Class23) class23).anInt342 = anInt383;
Class33_Sub2_Sub1 class33_sub2_sub1
= ((Class23) class23).aClass33_Sub2_Sub1_334;
if (class33_sub2_sub1 == null)
class33_sub2_sub1
= ((Class23) class23).aClass33_Sub7_335
.method358(0);
if (!method240(i3, ((Class23) class23).anInt337,
((Class23) class23).anInt338,
((Class23) class23).anInt339,
((Class23) class23).anInt340,
class33_sub2_sub1.anInt1030))
class33_sub2_sub1.method279
(class23.anInt336, anInt393, anInt394,
anInt395, anInt396,
((Class23) class23).anInt332 - anInt390,
((Class23) class23).anInt331 - anInt391,
((Class23) class23).anInt333 - anInt392,
((Class23) class23).anInt343);
for (int i43 = ((Class23) class23).anInt337;
i43 <= ((Class23) class23).anInt338; i43++) {
for (int i44 = ((Class23) class23).anInt339;
i44 <= ((Class23) class23).anInt340; i44++) {
Class33_Sub1 class33_sub1_45
= class33_sub1s[i43][i44];
if (((Class33_Sub1) class33_sub1_45).anInt965
!= 0)
aClass22_412.method181(class33_sub1_45);
else if ((i43 != i || i44 != i1)
&& (((Class33_Sub1) class33_sub1_45)
.aBoolean963))
aClass22_412.method181(class33_sub1_45);
}
}
}
if (((Class33_Sub1) class33_sub1).aBoolean964)
continue;
}
if (((Class33_Sub1) class33_sub1).aBoolean963
&& ((Class33_Sub1) class33_sub1).anInt965 == 0) {
if (i <= anInt388 && i > anInt384) {
Class33_Sub1 class33_sub1_46
= class33_sub1s[i - 1][i1];
if (class33_sub1_46 != null
&& ((Class33_Sub1) class33_sub1_46).aBoolean963)
continue;
}
if (i >= anInt388 && i < anInt385 - 1) {
Class33_Sub1 class33_sub1_47
= class33_sub1s[i + 1][i1];
if (class33_sub1_47 != null
&& ((Class33_Sub1) class33_sub1_47).aBoolean963)
continue;
}
if (i1 <= anInt389 && i1 > anInt386) {
Class33_Sub1 class33_sub1_48
= class33_sub1s[i][i1 - 1];
if (class33_sub1_48 != null
&& ((Class33_Sub1) class33_sub1_48).aBoolean963)
continue;
}
if (i1 >= anInt389 && i1 < anInt387 - 1) {
Class33_Sub1 class33_sub1_49
= class33_sub1s[i][i1 + 1];
if (class33_sub1_49 != null
&& ((Class33_Sub1) class33_sub1_49).aBoolean963)
continue;
}
((Class33_Sub1) class33_sub1).aBoolean963 = false;
anInt381--;
Class17 class17
= ((Class33_Sub1) class33_sub1).aClass17_956;
if (class17 != null && ((Class17) class17).anInt279 != 0)
((Class17) class17).aClass33_Sub2_Sub1_277.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class17) class17).anInt275 - anInt390,
(((Class17) class17).anInt274 - anInt391
- ((Class17) class17).anInt279),
((Class17) class17).anInt276 - anInt392,
((Class17) class17).anInt278);
if (((Class33_Sub1) class33_sub1).anInt968 != 0) {
Class11 class11
= ((Class33_Sub1) class33_sub1).aClass11_954;
if (class11 != null
&& !method239(i3, i, i1, (((Class11) class11)
.aClass33_Sub2_Sub1_201
.anInt1030))) {
if ((((Class11) class11).anInt199
& ((Class33_Sub1) class33_sub1).anInt968)
!= 0)
((Class11) class11).aClass33_Sub2_Sub1_201
.method279
(((Class11) class11).anInt200, anInt393,
anInt394, anInt395, anInt396,
((Class11) class11).anInt197 - anInt390,
((Class11) class11).anInt196 - anInt391,
((Class11) class11).anInt198 - anInt392,
((Class11) class11).anInt202);
else if ((((Class11) class11).anInt199 & 0x300)
!= 0) {
int i50
= ((Class11) class11).anInt197 - anInt390;
int i51
= ((Class11) class11).anInt196 - anInt391;
int i52
= ((Class11) class11).anInt198 - anInt392;
int i53 = ((Class11) class11).anInt200;
int i54;
if (i53 == 1 || i53 == 2)
i54 = -i50;
else
i54 = i50;
int i55;
if (i53 == 2 || i53 == 3)
i55 = -i52;
else
i55 = i52;
if ((((Class11) class11).anInt199 & 0x100) != 0
&& i55 >= i54) {
int i56 = i50 + anIntArray398[i53];
int i57 = i52 + anIntArray399[i53];
((Class11) class11)
.aClass33_Sub2_Sub1_201.method279
(i53 * 512 + 256, anInt393, anInt394,
anInt395, anInt396, i56, i51, i57,
((Class11) class11).anInt202);
}
if ((((Class11) class11).anInt199 & 0x200) != 0
&& i55 <= i54) {
int i58 = i50 + anIntArray400[i53];
int i59 = i52 + anIntArray401[i53];
((Class11) class11)
.aClass33_Sub2_Sub1_201.method279
(i53 * 512 + 1280 & 0x7ff, anInt393,
anInt394, anInt395, anInt396, i58,
i51, i59,
((Class11) class11).anInt202);
}
}
}
Class25 class25
= ((Class33_Sub1) class33_sub1).aClass25_953;
if (class25 != null) {
if ((((Class25) class25).anInt352
& ((Class33_Sub1) class33_sub1).anInt968) != 0
&& !method238(i3, i, i1,
((Class25) class25).anInt352))
((Class25) class25).aClass33_Sub2_Sub1_354
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
if ((((Class25) class25).anInt351
& ((Class33_Sub1) class33_sub1).anInt968) != 0
&& !method238(i3, i, i1,
((Class25) class25).anInt351))
((Class25) class25).aClass33_Sub2_Sub1_353
.method279
(0, anInt393, anInt394, anInt395, anInt396,
((Class25) class25).anInt349 - anInt390,
((Class25) class25).anInt348 - anInt391,
((Class25) class25).anInt350 - anInt392,
((Class25) class25).anInt355);
}
}
if (i2 < ((Class27) this).anInt372 - 1) {
Class33_Sub1 class33_sub1_60
= (((Class27) this).aClass33_Sub1ArrayArrayArray376
[i2 + 1][i][i1]);
if (class33_sub1_60 != null
&& ((Class33_Sub1) class33_sub1_60).aBoolean963)
aClass22_412.method181(class33_sub1_60);
}
if (i < anInt388) {
Class33_Sub1 class33_sub1_61
= class33_sub1s[i + 1][i1];
if (class33_sub1_61 != null
&& ((Class33_Sub1) class33_sub1_61).aBoolean963)
aClass22_412.method181(class33_sub1_61);
}
if (i1 < anInt389) {
Class33_Sub1 class33_sub1_62
= class33_sub1s[i][i1 + 1];
if (class33_sub1_62 != null
&& ((Class33_Sub1) class33_sub1_62).aBoolean963)
aClass22_412.method181(class33_sub1_62);
}
if (i > anInt388) {
Class33_Sub1 class33_sub1_63
= class33_sub1s[i - 1][i1];
if (class33_sub1_63 != null
&& ((Class33_Sub1) class33_sub1_63).aBoolean963)
aClass22_412.method181(class33_sub1_63);
}
if (i1 > anInt389) {
Class33_Sub1 class33_sub1_64
= class33_sub1s[i][i1 - 1];
if (class33_sub1_64 != null
&& ((Class33_Sub1) class33_sub1_64).aBoolean963)
aClass22_412.method181(class33_sub1_64);
}
}
}
}
}
public void method232(Class21 arg0, int arg1, int arg2, int arg3, int arg4,
int arg5, int arg6, int arg7) {
int i1;
int i = i1 = (arg6 << 7) - anInt390;
int i3;
int i2 = i3 = (arg7 << 7) - anInt392;
int i5;
int i4 = i5 = i + 128;
int i7;
int i6 = i7 = i2 + 128;
int i8 = (((Class27) this).anIntArrayArrayArray375[arg1][arg6][arg7]
- anInt391);
int i9
= (((Class27) this).anIntArrayArrayArray375[arg1][arg6 + 1][arg7]
- anInt391);
int i10 = ((((Class27) this).anIntArrayArrayArray375[arg1][arg6 + 1]
[arg7 + 1])
- anInt391);
int i11
= (((Class27) this).anIntArrayArrayArray375[arg1][arg6][arg7 + 1]
- anInt391);
int i12 = i2 * arg4 + i * arg5 >> 16;
i2 = i2 * arg5 - i * arg4 >> 16;
i = i12;
i12 = i8 * arg3 - i2 * arg2 >> 16;
i2 = i8 * arg2 + i2 * arg3 >> 16;
i8 = i12;
if (i2 >= 50) {
i12 = i3 * arg4 + i4 * arg5 >> 16;
i3 = i3 * arg5 - i4 * arg4 >> 16;
i4 = i12;
i12 = i9 * arg3 - i3 * arg2 >> 16;
i3 = i9 * arg2 + i3 * arg3 >> 16;
i9 = i12;
if (i3 >= 50) {
i12 = i6 * arg4 + i5 * arg5 >> 16;
i6 = i6 * arg5 - i5 * arg4 >> 16;
i5 = i12;
i12 = i10 * arg3 - i6 * arg2 >> 16;
i6 = i10 * arg2 + i6 * arg3 >> 16;
i10 = i12;
if (i6 >= 50) {
i12 = i7 * arg4 + i1 * arg5 >> 16;
i7 = i7 * arg5 - i1 * arg4 >> 16;
i1 = i12;
i12 = i11 * arg3 - i7 * arg2 >> 16;
i7 = i11 * arg2 + i7 * arg3 >> 16;
i11 = i12;
if (i7 >= 50) {
int i13
= Class33_Sub2_Sub2_Sub1.anInt1214 + (i << 9) / i2;
int i14 = (Class33_Sub2_Sub2_Sub1.anInt1215
+ (i8 << 9) / i2);
int i15 = (Class33_Sub2_Sub2_Sub1.anInt1214
+ (i4 << 9) / i3);
int i16 = (Class33_Sub2_Sub2_Sub1.anInt1215
+ (i9 << 9) / i3);
int i17 = (Class33_Sub2_Sub2_Sub1.anInt1214
+ (i5 << 9) / i6);
int i18 = (Class33_Sub2_Sub2_Sub1.anInt1215
+ (i10 << 9) / i6);
int i19 = (Class33_Sub2_Sub2_Sub1.anInt1214
+ (i1 << 9) / i7);
int i20 = (Class33_Sub2_Sub2_Sub1.anInt1215
+ (i11 << 9) / i7);
Class33_Sub2_Sub2_Sub1.anInt1213 = 0;
if ((i17 - i19) * (i16 - i20) - (i18 - i20) * (i15
- i19)
> 0) {
Class33_Sub2_Sub2_Sub1.aBoolean1210 = false;
if (i17 < 0 || i19 < 0 || i15 < 0
|| i17 > Class33_Sub2_Sub2.anInt1096
|| i19 > Class33_Sub2_Sub2.anInt1096
|| i15 > Class33_Sub2_Sub2.anInt1096)
Class33_Sub2_Sub2_Sub1.aBoolean1210 = true;
if (aBoolean402
&& method235(anInt403, anInt404, i18, i20, i16,
i17, i19, i15)) {
anInt405 = arg6;
anInt406 = arg7;
}
if (((Class21) arg0).anInt322 == -1) {
if (((Class21) arg0).anInt320 != 12345678)
Class33_Sub2_Sub2_Sub1.method303
(i18, i20, i16, i17, i19, i15,
((Class21) arg0).anInt320,
((Class21) arg0).anInt321,
((Class21) arg0).anInt319);
} else if (!aBoolean371) {
if (((Class21) arg0).aBoolean323)
Class33_Sub2_Sub2_Sub1.method307
(i18, i20, i16, i17, i19, i15,
((Class21) arg0).anInt320,
((Class21) arg0).anInt321,
((Class21) arg0).anInt319, i, i4, i1,
i8, i9, i11, i2, i3, i7,
((Class21) arg0).anInt322);
else
Class33_Sub2_Sub2_Sub1.method307
(i18, i20, i16, i17, i19, i15,
((Class21) arg0).anInt320,
((Class21) arg0).anInt321,
((Class21) arg0).anInt319, i5, i1, i4,
i10, i11, i9, i6, i7, i3,
((Class21) arg0).anInt322);
} else {
int i21
= anIntArray420[((Class21) arg0).anInt322];
Class33_Sub2_Sub2_Sub1.method303
(i18, i20, i16, i17, i19, i15,
method234(6, ((Class21) arg0).anInt320,
i21),
method234(6, ((Class21) arg0).anInt321,
i21),
method234(6, ((Class21) arg0).anInt319,
i21));
}
}
if ((i13 - i15) * (i20 - i16) - (i14 - i16) * (i19
- i15)
> 0) {
Class33_Sub2_Sub2_Sub1.aBoolean1210 = false;
if (i13 < 0 || i15 < 0 || i19 < 0
|| i13 > Class33_Sub2_Sub2.anInt1096
|| i15 > Class33_Sub2_Sub2.anInt1096
|| i19 > Class33_Sub2_Sub2.anInt1096)
Class33_Sub2_Sub2_Sub1.aBoolean1210 = true;
if (aBoolean402
&& method235(anInt403, anInt404, i14, i16, i20,
i13, i15, i19)) {
anInt405 = arg6;
anInt406 = arg7;
}
if (((Class21) arg0).anInt322 == -1) {
if (((Class21) arg0).anInt318 != 12345678)
Class33_Sub2_Sub2_Sub1.method303
(i14, i16, i20, i13, i15, i19,
((Class21) arg0).anInt318,
((Class21) arg0).anInt319,
((Class21) arg0).anInt321);
} else if (!aBoolean371)
Class33_Sub2_Sub2_Sub1.method307
(i14, i16, i20, i13, i15, i19,
((Class21) arg0).anInt318,
((Class21) arg0).anInt319,
((Class21) arg0).anInt321, i, i4, i1, i8,
i9, i11, i2, i3, i7,
((Class21) arg0).anInt322);
else {
int i22
= anIntArray420[((Class21) arg0).anInt322];
Class33_Sub2_Sub2_Sub1.method303
(i14, i16, i20, i13, i15, i19,
method234(6, ((Class21) arg0).anInt318,
i22),
method234(6, ((Class21) arg0).anInt319,
i22),
method234(6, ((Class21) arg0).anInt321,
i22));
}
}
}
}
}
}
}
public void method233(int arg0, int arg1, int arg2, int arg3, int arg4,
Class13 arg5, int arg6, int arg7) {
int i = ((Class13) arg5).anIntArray217.length;
if (arg3 != 0)
aBoolean367 = !aBoolean367;
for (int i1 = 0; i1 < i; i1++) {
int i2 = ((Class13) arg5).anIntArray217[i1] - anInt390;
int i3 = ((Class13) arg5).anIntArray218[i1] - anInt391;
int i4 = ((Class13) arg5).anIntArray219[i1] - anInt392;
int i5 = i4 * arg4 + i2 * arg7 >> 16;
i4 = i4 * arg7 - i2 * arg4 >> 16;
i2 = i5;
i5 = i3 * arg2 - i4 * arg6 >> 16;
i4 = i3 * arg6 + i4 * arg2 >> 16;
i3 = i5;
if (i4 < 50)
return;
if (((Class13) arg5).anIntArray226 != null) {
Class13.anIntArray234[i1] = i2;
Class13.anIntArray235[i1] = i3;
Class13.anIntArray236[i1] = i4;
}
Class13.anIntArray232[i1]
= Class33_Sub2_Sub2_Sub1.anInt1214 + (i2 << 9) / i4;
Class13.anIntArray233[i1]
= Class33_Sub2_Sub2_Sub1.anInt1215 + (i3 << 9) / i4;
}
Class33_Sub2_Sub2_Sub1.anInt1213 = 0;
i = ((Class13) arg5).anIntArray223.length;
for (int i6 = 0; i6 < i; i6++) {
int i7 = ((Class13) arg5).anIntArray223[i6];
int i8 = ((Class13) arg5).anIntArray224[i6];
int i9 = ((Class13) arg5).anIntArray225[i6];
int i10 = Class13.anIntArray232[i7];
int i11 = Class13.anIntArray232[i8];
int i12 = Class13.anIntArray232[i9];
int i13 = Class13.anIntArray233[i7];
int i14 = Class13.anIntArray233[i8];
int i15 = Class13.anIntArray233[i9];
if ((i10 - i11) * (i15 - i14) - (i13 - i14) * (i12 - i11) > 0) {
Class33_Sub2_Sub2_Sub1.aBoolean1210 = false;
if (i10 < 0 || i11 < 0 || i12 < 0
|| i10 > Class33_Sub2_Sub2.anInt1096
|| i11 > Class33_Sub2_Sub2.anInt1096
|| i12 > Class33_Sub2_Sub2.anInt1096)
Class33_Sub2_Sub2_Sub1.aBoolean1210 = true;
if (aBoolean402 && method235(anInt403, anInt404, i13, i14, i15,
i10, i11, i12)) {
anInt405 = arg0;
anInt406 = arg1;
}
if (((Class13) arg5).anIntArray226 == null
|| ((Class13) arg5).anIntArray226[i6] == -1) {
if (((Class13) arg5).anIntArray220[i6] != 12345678)
Class33_Sub2_Sub2_Sub1.method303
(i13, i14, i15, i10, i11, i12,
((Class13) arg5).anIntArray220[i6],
((Class13) arg5).anIntArray221[i6],
((Class13) arg5).anIntArray222[i6]);
} else if (!aBoolean371) {
if (((Class13) arg5).aBoolean227)
Class33_Sub2_Sub2_Sub1.method307
(i13, i14, i15, i10, i11, i12,
((Class13) arg5).anIntArray220[i6],
((Class13) arg5).anIntArray221[i6],
((Class13) arg5).anIntArray222[i6],
Class13.anIntArray234[0],
Class13.anIntArray234[1],
Class13.anIntArray234[3],
Class13.anIntArray235[0],
Class13.anIntArray235[1],
Class13.anIntArray235[3],
Class13.anIntArray236[0],
Class13.anIntArray236[1],
Class13.anIntArray236[3],
((Class13) arg5).anIntArray226[i6]);
else
Class33_Sub2_Sub2_Sub1.method307
(i13, i14, i15, i10, i11, i12,
((Class13) arg5).anIntArray220[i6],
((Class13) arg5).anIntArray221[i6],
((Class13) arg5).anIntArray222[i6],
Class13.anIntArray234[i7],
Class13.anIntArray234[i8],
Class13.anIntArray234[i9],
Class13.anIntArray235[i7],
Class13.anIntArray235[i8],
Class13.anIntArray235[i9],
Class13.anIntArray236[i7],
Class13.anIntArray236[i8],
Class13.anIntArray236[i9],
((Class13) arg5).anIntArray226[i6]);
} else {
int i16
= anIntArray420[((Class13) arg5).anIntArray226[i6]];
Class33_Sub2_Sub2_Sub1.method303
(i13, i14, i15, i10, i11, i12,
method234(6, ((Class13) arg5).anIntArray220[i6], i16),
method234(6, ((Class13) arg5).anIntArray221[i6], i16),
method234(6, ((Class13) arg5).anIntArray222[i6],
i16));
}
}
}
}
public int method234(int arg0, int arg1, int arg2) {
arg1 = 127 - arg1;
if (arg0 < 6 || arg0 > 6) {
for (int i = 1; i > 0; i++) {
}
}
arg1 = arg1 * (arg2 & 0x7f) / 160;
if (arg1 < 2)
arg1 = 2;
else if (arg1 > 126)
arg1 = 126;
return (arg2 & 0xff80) + arg1;
}
public boolean method235(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5, int arg6, int arg7) {
if (arg1 < arg2 && arg1 < arg3 && arg1 < arg4)
return false;
if (arg1 > arg2 && arg1 > arg3 && arg1 > arg4)
return false;
if (arg0 < arg5 && arg0 < arg6 && arg0 < arg7)
return false;
if (arg0 > arg5 && arg0 > arg6 && arg0 > arg7)
return false;
int i = (arg1 - arg2) * (arg6 - arg5) - (arg0 - arg5) * (arg3 - arg2);
int i1 = (arg1 - arg4) * (arg5 - arg7) - (arg0 - arg7) * (arg2 - arg4);
int i2 = (arg1 - arg3) * (arg7 - arg6) - (arg0 - arg6) * (arg4 - arg3);
if (i * i2 > 0 && i2 * i1 > 0)
return true;
return false;
}
private void method236(int arg0) {
int i = anIntArray408[anInt382];
Class19[] class19s = aClass19ArrayArray409[anInt382];
if (arg0 != 0)
anInt369 = 164;
anInt410 = 0;
for (int i1 = 0; i1 < i; i1++) {
Class19 class19 = class19s[i1];
if (((Class19) class19).anInt300 == 1) {
int i2 = ((Class19) class19).anInt296 - anInt388 + 25;
if (i2 >= 0 && i2 <= 50) {
int i3 = ((Class19) class19).anInt298 - anInt389 + 25;
if (i3 < 0)
i3 = 0;
int i4 = ((Class19) class19).anInt299 - anInt389 + 25;
if (i4 > 50)
i4 = 50;
boolean flag = false;
while (i3 <= i4) {
if (aBooleanArrayArray427[i2][i3++]) {
flag = true;
break;
}
}
if (flag) {
int i5 = anInt390 - ((Class19) class19).anInt301;
if (i5 > 32)
((Class19) class19).anInt307 = 1;
else {
if (i5 >= -32)
continue;
((Class19) class19).anInt307 = 2;
i5 = -i5;
}
((Class19) class19).anInt310
= ((((Class19) class19).anInt303 - anInt392 << 8)
/ i5);
((Class19) class19).anInt311
= ((((Class19) class19).anInt304 - anInt392 << 8)
/ i5);
((Class19) class19).anInt312
= ((((Class19) class19).anInt305 - anInt391 << 8)
/ i5);
((Class19) class19).anInt313
= ((((Class19) class19).anInt306 - anInt391 << 8)
/ i5);
aClass19Array411[anInt410++] = class19;
}
}
} else if (((Class19) class19).anInt300 == 2) {
int i6 = ((Class19) class19).anInt298 - anInt389 + 25;
if (i6 >= 0 && i6 <= 50) {
int i7 = ((Class19) class19).anInt296 - anInt388 + 25;
if (i7 < 0)
i7 = 0;
int i8 = ((Class19) class19).anInt297 - anInt388 + 25;
if (i8 > 50)
i8 = 50;
boolean flag = false;
while (i7 <= i8) {
if (aBooleanArrayArray427[i7++][i6]) {
flag = true;
break;
}
}
if (flag) {
int i9 = anInt392 - ((Class19) class19).anInt303;
if (i9 > 32)
((Class19) class19).anInt307 = 3;
else {
if (i9 >= -32)
continue;
((Class19) class19).anInt307 = 4;
i9 = -i9;
}
((Class19) class19).anInt308
= ((((Class19) class19).anInt301 - anInt390 << 8)
/ i9);
((Class19) class19).anInt309
= ((((Class19) class19).anInt302 - anInt390 << 8)
/ i9);
((Class19) class19).anInt312
= ((((Class19) class19).anInt305 - anInt391 << 8)
/ i9);
((Class19) class19).anInt313
= ((((Class19) class19).anInt306 - anInt391 << 8)
/ i9);
aClass19Array411[anInt410++] = class19;
}
}
} else if (((Class19) class19).anInt300 == 4) {
int i10 = ((Class19) class19).anInt305 - anInt391;
if (i10 > 128) {
int i11 = ((Class19) class19).anInt298 - anInt389 + 25;
if (i11 < 0)
i11 = 0;
int i12 = ((Class19) class19).anInt299 - anInt389 + 25;
if (i12 > 50)
i12 = 50;
if (i11 <= i12) {
int i13 = ((Class19) class19).anInt296 - anInt388 + 25;
if (i13 < 0)
i13 = 0;
int i14 = ((Class19) class19).anInt297 - anInt388 + 25;
if (i14 > 50)
i14 = 50;
boolean flag = false;
while9:
for (int i15 = i13; i15 <= i14; i15++) {
for (int i16 = i11; i16 <= i12; i16++) {
if (aBooleanArrayArray427[i15][i16]) {
flag = true;
break while9;
}
}
}
if (flag) {
((Class19) class19).anInt307 = 5;
((Class19) class19).anInt308
= (((Class19) class19).anInt301 - anInt390
<< 8) / i10;
((Class19) class19).anInt309
= (((Class19) class19).anInt302 - anInt390
<< 8) / i10;
((Class19) class19).anInt310
= (((Class19) class19).anInt303 - anInt392
<< 8) / i10;
((Class19) class19).anInt311
= (((Class19) class19).anInt304 - anInt392
<< 8) / i10;
aClass19Array411[anInt410++] = class19;
}
}
}
}
}
}
private boolean method237(int arg0, int arg1, int arg2) {
int i = ((Class27) this).anIntArrayArrayArray380[arg0][arg1][arg2];
if (i == -anInt383)
return false;
if (i == anInt383)
return true;
int i1 = arg1 << 7;
int i2 = arg2 << 7;
if (method241(i1 + 1, (((Class27) this).anIntArrayArrayArray375[arg0]
[arg1][arg2]), i2 + 1)
&& method241(i1 + 128 - 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1 + 1][arg2]),
i2 + 1)
&& method241(i1 + 128 - 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1 + 1][arg2 + 1]),
i2 + 128 - 1)
&& method241(i1 + 1, (((Class27) this).anIntArrayArrayArray375
[arg0][arg1][arg2 + 1]), i2 + 128 - 1)) {
((Class27) this).anIntArrayArrayArray380[arg0][arg1][arg2]
= anInt383;
return true;
}
((Class27) this).anIntArrayArrayArray380[arg0][arg1][arg2] = -anInt383;
return false;
}
private boolean method238(int arg0, int arg1, int arg2, int arg3) {
if (!method237(arg0, arg1, arg2))
return false;
int i = arg1 << 7;
int i1 = arg2 << 7;
int i2
= ((Class27) this).anIntArrayArrayArray375[arg0][arg1][arg2] - 1;
int i3 = i2 - 120;
int i4 = i2 - 230;
int i5 = i2 - 238;
if (arg3 < 16) {
if (arg3 == 1) {
if (i > anInt390) {
if (!method241(i, i2, i1))
return false;
if (!method241(i, i2, i1 + 128))
return false;
}
if (arg0 > 0) {
if (!method241(i, i3, i1))
return false;
if (!method241(i, i3, i1 + 128))
return false;
}
if (!method241(i, i4, i1))
return false;
if (!method241(i, i4, i1 + 128))
return false;
return true;
}
if (arg3 == 2) {
if (i1 < anInt392) {
if (!method241(i, i2, i1 + 128))
return false;
if (!method241(i + 128, i2, i1 + 128))
return false;
}
if (arg0 > 0) {
if (!method241(i, i3, i1 + 128))
return false;
if (!method241(i + 128, i3, i1 + 128))
return false;
}
if (!method241(i, i4, i1 + 128))
return false;
if (!method241(i + 128, i4, i1 + 128))
return false;
return true;
}
if (arg3 == 4) {
if (i < anInt392) {
if (!method241(i + 128, i2, i1))
return false;
if (!method241(i + 128, i2, i1 + 128))
return false;
}
if (arg0 > 0) {
if (!method241(i + 128, i3, i1))
return false;
if (!method241(i + 128, i3, i1 + 128))
return false;
}
if (!method241(i + 128, i4, i1))
return false;
if (!method241(i + 128, i4, i1 + 128))
return false;
return true;
}
if (arg3 == 8) {
if (i1 > anInt392) {
if (!method241(i, i2, i1))
return false;
if (!method241(i + 128, i2, i1))
return false;
}
if (arg0 > 0) {
if (!method241(i, i3, i1))
return false;
if (!method241(i + 128, i3, i1))
return false;
}
if (!method241(i, i4, i1))
return false;
if (!method241(i + 128, i4, i1))
return false;
return true;
}
}
if (!method241(i + 64, i5, i1 + 64))
return false;
if (arg3 == 16) {
if (!method241(i, i4, i1 + 128))
return false;
return true;
}
if (arg3 == 32) {
if (!method241(i + 128, i4, i1 + 128))
return false;
return true;
}
if (arg3 == 64) {
if (!method241(i + 128, i4, i1))
return false;
return true;
}
if (arg3 == 128) {
if (!method241(i, i4, i1))
return false;
return true;
}
System.out.println("Warning unsupported wall type");
return true;
}
private boolean method239(int arg0, int arg1, int arg2, int arg3) {
if (!method237(arg0, arg1, arg2))
return false;
int i = arg1 << 7;
int i1 = arg2 << 7;
if (method241(i + 1, (((Class27) this).anIntArrayArrayArray375[arg0]
[arg1][arg2]) - arg3, i1 + 1)
&& method241(i + 128 - 1, (((Class27) this).anIntArrayArrayArray375
[arg0][arg1 + 1][arg2]) - arg3, i1 + 1)
&& method241(i + 128 - 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1 + 1][arg2 + 1]) - arg3,
i1 + 128 - 1)
&& method241(i + 1, (((Class27) this).anIntArrayArrayArray375[arg0]
[arg1][arg2 + 1]) - arg3, i1 + 128 - 1))
return true;
return false;
}
private boolean method240(int arg0, int arg1, int arg2, int arg3, int arg4,
int arg5) {
if (arg1 == arg2 && arg3 == arg4) {
if (!method237(arg0, arg1, arg3))
return false;
int i = arg1 << 7;
int i1 = arg3 << 7;
if (method241(i + 1, (((Class27) this).anIntArrayArrayArray375
[arg0][arg1][arg3]) - arg5, i1 + 1)
&& method241(i + 128 - 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1 + 1][arg3]) - arg5,
i1 + 1)
&& method241(i + 128 - 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1 + 1][arg3 + 1]) - arg5,
i1 + 128 - 1)
&& method241(i + 1,
(((Class27) this).anIntArrayArrayArray375[arg0]
[arg1][arg3 + 1]) - arg5,
i1 + 128 - 1))
return true;
return false;
}
for (int i = arg1; i <= arg2; i++) {
for (int i2 = arg3; i2 <= arg4; i2++) {
if (((Class27) this).anIntArrayArrayArray380[arg0][i][i2]
== -anInt383)
return false;
}
}
int i = (arg1 << 7) + 1;
int i3 = (arg3 << 7) + 2;
int i4 = (((Class27) this).anIntArrayArrayArray375[arg0][arg1][arg3]
- arg5);
if (!method241(i, i4, i3))
return false;
int i5 = (arg2 << 7) - 1;
if (!method241(i5, i4, i3))
return false;
int i6 = (arg4 << 7) - 1;
if (!method241(i, i4, i6))
return false;
if (!method241(i5, i4, i6))
return false;
return true;
}
private boolean method241(int arg0, int arg1, int arg2) {
for (int i = 0; i < anInt410; i++) {
Class19 class19 = aClass19Array411[i];
if (((Class19) class19).anInt307 == 1) {
int i1 = ((Class19) class19).anInt301 - arg0;
if (i1 > 0) {
int i2 = (((Class19) class19).anInt303
+ (((Class19) class19).anInt310 * i1 >> 8));
int i3 = (((Class19) class19).anInt304
+ (((Class19) class19).anInt311 * i1 >> 8));
int i4 = (((Class19) class19).anInt305
+ (((Class19) class19).anInt312 * i1 >> 8));
int i5 = (((Class19) class19).anInt306
+ (((Class19) class19).anInt313 * i1 >> 8));
if (arg2 >= i2 && arg2 <= i3 && arg1 >= i4 && arg1 <= i5)
return true;
}
} else if (((Class19) class19).anInt307 == 2) {
int i6 = arg0 - ((Class19) class19).anInt301;
if (i6 > 0) {
int i7 = (((Class19) class19).anInt303
+ (((Class19) class19).anInt310 * i6 >> 8));
int i8 = (((Class19) class19).anInt304
+ (((Class19) class19).anInt311 * i6 >> 8));
int i9 = (((Class19) class19).anInt305
+ (((Class19) class19).anInt312 * i6 >> 8));
int i10 = (((Class19) class19).anInt306
+ (((Class19) class19).anInt313 * i6 >> 8));
if (arg2 >= i7 && arg2 <= i8 && arg1 >= i9 && arg1 <= i10)
return true;
}
} else if (((Class19) class19).anInt307 == 3) {
int i11 = ((Class19) class19).anInt303 - arg2;
if (i11 > 0) {
int i12 = (((Class19) class19).anInt301
+ (((Class19) class19).anInt308 * i11 >> 8));
int i13 = (((Class19) class19).anInt302
+ (((Class19) class19).anInt309 * i11 >> 8));
int i14 = (((Class19) class19).anInt305
+ (((Class19) class19).anInt312 * i11 >> 8));
int i15 = (((Class19) class19).anInt306
+ (((Class19) class19).anInt313 * i11 >> 8));
if (arg0 >= i12 && arg0 <= i13 && arg1 >= i14
&& arg1 <= i15)
return true;
}
} else if (((Class19) class19).anInt307 == 4) {
int i16 = arg2 - ((Class19) class19).anInt303;
if (i16 > 0) {
int i17 = (((Class19) class19).anInt301
+ (((Class19) class19).anInt308 * i16 >> 8));
int i18 = (((Class19) class19).anInt302
+ (((Class19) class19).anInt309 * i16 >> 8));
int i19 = (((Class19) class19).anInt305
+ (((Class19) class19).anInt312 * i16 >> 8));
int i20 = (((Class19) class19).anInt306
+ (((Class19) class19).anInt313 * i16 >> 8));
if (arg0 >= i17 && arg0 <= i18 && arg1 >= i19
&& arg1 <= i20)
return true;
}
} else if (((Class19) class19).anInt307 == 5) {
int i21 = arg1 - ((Class19) class19).anInt305;
if (i21 > 0) {
int i22 = (((Class19) class19).anInt301
+ (((Class19) class19).anInt308 * i21 >> 8));
int i23 = (((Class19) class19).anInt302
+ (((Class19) class19).anInt309 * i21 >> 8));
int i24 = (((Class19) class19).anInt303
+ (((Class19) class19).anInt310 * i21 >> 8));
int i25 = (((Class19) class19).anInt304
+ (((Class19) class19).anInt311 * i21 >> 8));
if (arg0 >= i22 && arg0 <= i23 && arg2 >= i24
&& arg2 <= i25)
return true;
}
}
}
return false;
}
}