/* Class150_Sub8 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import jaggl.OpenGL;

public class Class150_Sub8 extends Class150
{
    static float[] aFloatArray10434 = { 0.0F, 0.0F, 0.0F, 0.0F };
    Class146 aClass146_10435;
    static final char aChar10436 = '\001';
    Class147 aClass147_10437;
    Class141_Sub1 aClass141_Sub1_10438;
    static final char aChar10439 = '\0';
    
    void method3554(boolean bool) {
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(260, 8448);
    }
    
    void method3551(int i, int i_0_) {
	if ((i & 0x1) == 1) {
	    if (((Class146) ((Class150_Sub8) this).aClass146_10435)
		.aBool1725) {
		((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		    (((Class146) ((Class150_Sub8) this).aClass146_10435)
		     .aClass141_Sub2_1728);
		aFloatArray10434[0] = 0.0F;
		aFloatArray10434[1] = 0.0F;
		aFloatArray10434[2] = 0.0F;
		aFloatArray10434[3]
		    = (float) (((Class87_Sub1) (((Class150_Sub8) this)
						.aClass87_Sub1_1742)).anInt8871
			       % 4000) / 4000.0F;
		OpenGL.glTexGenfv(8194, 9473, aFloatArray10434, 0);
	    } else {
		int i_1_ = (((Class87_Sub1) (((Class150_Sub8) this)
					     .aClass87_Sub1_1742)).anInt8871
			    % 4000 * 16 / 4000);
		((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		    (((Class146) ((Class150_Sub8) this).aClass146_10435)
		     .aClass141_Sub3Array1726[i_1_]);
	    }
	} else if (((Class146) ((Class150_Sub8) this).aClass146_10435)
		   .aBool1725) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		(((Class146) ((Class150_Sub8) this).aClass146_10435)
		 .aClass141_Sub2_1728);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = 0.0F;
	    aFloatArray10434[3] = 0.0F;
	    OpenGL.glTexGenfv(8194, 9473, aFloatArray10434, 0);
	} else
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		(((Class146) ((Class150_Sub8) this).aClass146_10435)
		 .aClass141_Sub3Array1726[0]);
    }
    
    void method3539(boolean bool) {
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    float f = -0.5F / (float) (((Class87_Sub1) (((Class150_Sub8) this)
							.aClass87_Sub1_1742))
				       .anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = f;
	    aFloatArray10434[3]
		= (((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
		   .aFloat8951) * f + 0.25F;
	    OpenGL.glPushMatrix();
	    OpenGL.glLoadIdentity();
	    OpenGL.glTexGenfv(8192, 9474, aFloatArray10434, 0);
	    OpenGL.glPopMatrix();
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999
		(0.5F,
		 (float) ((Class87_Sub1) (((Class150_Sub8) this)
					  .aClass87_Sub1_1742)).anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742
		.method15019(((Class150_Sub8) this).aClass141_Sub1_10438);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass147_10437.method3529('\0');
	OpenGL.glMatrixMode(5890);
	OpenGL.glPushMatrix();
	OpenGL.glScalef(0.25F, 0.25F, 1.0F);
	OpenGL.glMatrixMode(5888);
    }
    
    void method3541(boolean bool) {
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(260, 8448);
    }
    
    void method3538() {
	((Class150_Sub8) this).aClass147_10437.method3529('\001');
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019(null);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999(1.0F, 0.0F);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	OpenGL.glMatrixMode(5890);
	OpenGL.glPopMatrix();
	OpenGL.glMatrixMode(5888);
    }
    
    void method3557(boolean bool) {
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(260, 8448);
    }
    
    void method3543(Class141 class141, int i) {
	/* empty */
    }
    
    void method3537() {
	((Class150_Sub8) this).aClass147_10437.method3529('\001');
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019(null);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999(1.0F, 0.0F);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	OpenGL.glMatrixMode(5890);
	OpenGL.glPopMatrix();
	OpenGL.glMatrixMode(5888);
    }
    
    Class150_Sub8(Class87_Sub1 class87_sub1, Class146 class146) {
	super(class87_sub1);
	((Class150_Sub8) this).aClass146_10435 = class146;
	method16826();
	((Class150_Sub8) this).aClass141_Sub1_10438
	    = new Class141_Sub1(((Class150_Sub8) this).aClass87_Sub1_1742,
				Class173.aClass173_2127, Class90.aClass90_1040,
				2, new byte[] { 0, -1 },
				Class173.aClass173_2127);
	((Class150_Sub8) this).aClass141_Sub1_10438.method16781(false);
    }
    
    boolean method3545() {
	return true;
    }
    
    void method16826() {
	((Class150_Sub8) this).aClass147_10437
	    = new Class147(((Class150_Sub8) this).aClass87_Sub1_1742, 2);
	((Class150_Sub8) this).aClass147_10437.method3527(0);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(7681, 260);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15023(0, 34168, 768);
	OpenGL.glTexGeni(8192, 9472, 9216);
	OpenGL.glEnable(3168);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	OpenGL.glTexEnvf(8960, 34163, 2.0F);
	if (((Class146) ((Class150_Sub8) this).aClass146_10435).aBool1725) {
	    OpenGL.glTexGeni(8194, 9472, 9217);
	    OpenGL.glTexGeni(8195, 9472, 9217);
	    OpenGL.glTexGenfv(8195, 9473,
			      new float[] { 0.0F, 0.0F, 0.0F, 1.0F }, 0);
	    OpenGL.glEnable(3170);
	    OpenGL.glEnable(3171);
	}
	((Class150_Sub8) this).aClass147_10437.method3528();
	((Class150_Sub8) this).aClass147_10437.method3527(1);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15023(0, 5890, 768);
	OpenGL.glDisable(3168);
	((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	OpenGL.glTexEnvf(8960, 34163, 1.0F);
	if (((Class146) ((Class150_Sub8) this).aClass146_10435).aBool1725) {
	    OpenGL.glDisable(3170);
	    OpenGL.glDisable(3171);
	}
	((Class150_Sub8) this).aClass147_10437.method3528();
    }
    
    void method3547() {
	((Class150_Sub8) this).aClass147_10437.method3529('\001');
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019(null);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999(1.0F, 0.0F);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	OpenGL.glMatrixMode(5890);
	OpenGL.glPopMatrix();
	OpenGL.glMatrixMode(5888);
    }
    
    void method3548() {
	((Class150_Sub8) this).aClass147_10437.method3529('\001');
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019(null);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999(1.0F, 0.0F);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	OpenGL.glMatrixMode(5890);
	OpenGL.glPopMatrix();
	OpenGL.glMatrixMode(5888);
    }
    
    boolean method3544() {
	return true;
    }
    
    boolean method3553() {
	return true;
    }
    
    void method3540(boolean bool) {
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    float f = -0.5F / (float) (((Class87_Sub1) (((Class150_Sub8) this)
							.aClass87_Sub1_1742))
				       .anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = f;
	    aFloatArray10434[3]
		= (((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
		   .aFloat8951) * f + 0.25F;
	    OpenGL.glPushMatrix();
	    OpenGL.glLoadIdentity();
	    OpenGL.glTexGenfv(8192, 9474, aFloatArray10434, 0);
	    OpenGL.glPopMatrix();
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999
		(0.5F,
		 (float) ((Class87_Sub1) (((Class150_Sub8) this)
					  .aClass87_Sub1_1742)).anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742
		.method15019(((Class150_Sub8) this).aClass141_Sub1_10438);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass147_10437.method3529('\0');
	OpenGL.glMatrixMode(5890);
	OpenGL.glPushMatrix();
	OpenGL.glScalef(0.25F, 0.25F, 1.0F);
	OpenGL.glMatrixMode(5888);
    }
    
    void method3552(Class141 class141, int i) {
	/* empty */
    }
    
    boolean method3546() {
	return true;
    }
    
    void method3550(boolean bool) {
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    float f = -0.5F / (float) (((Class87_Sub1) (((Class150_Sub8) this)
							.aClass87_Sub1_1742))
				       .anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = f;
	    aFloatArray10434[3]
		= (((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
		   .aFloat8951) * f + 0.25F;
	    OpenGL.glPushMatrix();
	    OpenGL.glLoadIdentity();
	    OpenGL.glTexGenfv(8192, 9474, aFloatArray10434, 0);
	    OpenGL.glPopMatrix();
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999
		(0.5F,
		 (float) ((Class87_Sub1) (((Class150_Sub8) this)
					  .aClass87_Sub1_1742)).anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742
		.method15019(((Class150_Sub8) this).aClass141_Sub1_10438);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass147_10437.method3529('\0');
	OpenGL.glMatrixMode(5890);
	OpenGL.glPushMatrix();
	OpenGL.glScalef(0.25F, 0.25F, 1.0F);
	OpenGL.glMatrixMode(5888);
    }
    
    void method3555(boolean bool) {
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    float f = -0.5F / (float) (((Class87_Sub1) (((Class150_Sub8) this)
							.aClass87_Sub1_1742))
				       .anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = f;
	    aFloatArray10434[3]
		= (((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
		   .aFloat8951) * f + 0.25F;
	    OpenGL.glPushMatrix();
	    OpenGL.glLoadIdentity();
	    OpenGL.glTexGenfv(8192, 9474, aFloatArray10434, 0);
	    OpenGL.glPopMatrix();
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999
		(0.5F,
		 (float) ((Class87_Sub1) (((Class150_Sub8) this)
					  .aClass87_Sub1_1742)).anInt8949);
	    ((Class150_Sub8) this).aClass87_Sub1_1742
		.method15019(((Class150_Sub8) this).aClass141_Sub1_10438);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass147_10437.method3529('\0');
	OpenGL.glMatrixMode(5890);
	OpenGL.glPushMatrix();
	OpenGL.glScalef(0.25F, 0.25F, 1.0F);
	OpenGL.glMatrixMode(5888);
    }
    
    void method3556(boolean bool) {
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(260, 8448);
    }
    
    void method3549() {
	((Class150_Sub8) this).aClass147_10437.method3529('\001');
	if ((((Class87_Sub1) ((Class150_Sub8) this).aClass87_Sub1_1742)
	     .anInt8949)
	    > 0) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(1);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019(null);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method14999(1.0F, 0.0F);
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15018(0);
	}
	((Class150_Sub8) this).aClass87_Sub1_1742.method15022(8448, 8448);
	OpenGL.glMatrixMode(5890);
	OpenGL.glPopMatrix();
	OpenGL.glMatrixMode(5888);
    }
    
    void method3542(int i, int i_2_) {
	if ((i & 0x1) == 1) {
	    if (((Class146) ((Class150_Sub8) this).aClass146_10435)
		.aBool1725) {
		((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		    (((Class146) ((Class150_Sub8) this).aClass146_10435)
		     .aClass141_Sub2_1728);
		aFloatArray10434[0] = 0.0F;
		aFloatArray10434[1] = 0.0F;
		aFloatArray10434[2] = 0.0F;
		aFloatArray10434[3]
		    = (float) (((Class87_Sub1) (((Class150_Sub8) this)
						.aClass87_Sub1_1742)).anInt8871
			       % 4000) / 4000.0F;
		OpenGL.glTexGenfv(8194, 9473, aFloatArray10434, 0);
	    } else {
		int i_3_ = (((Class87_Sub1) (((Class150_Sub8) this)
					     .aClass87_Sub1_1742)).anInt8871
			    % 4000 * 16 / 4000);
		((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		    (((Class146) ((Class150_Sub8) this).aClass146_10435)
		     .aClass141_Sub3Array1726[i_3_]);
	    }
	} else if (((Class146) ((Class150_Sub8) this).aClass146_10435)
		   .aBool1725) {
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		(((Class146) ((Class150_Sub8) this).aClass146_10435)
		 .aClass141_Sub2_1728);
	    aFloatArray10434[0] = 0.0F;
	    aFloatArray10434[1] = 0.0F;
	    aFloatArray10434[2] = 0.0F;
	    aFloatArray10434[3] = 0.0F;
	    OpenGL.glTexGenfv(8194, 9473, aFloatArray10434, 0);
	} else
	    ((Class150_Sub8) this).aClass87_Sub1_1742.method15019
		(((Class146) ((Class150_Sub8) this).aClass146_10435)
		 .aClass141_Sub3Array1726[0]);
    }
}
