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

public class Class108_Sub3 extends Class108
{
    boolean aBool8660;
    static final String aString8661
	= "varying vec3 wvVertex;\nvarying float waterDepth;\nuniform vec3 sunDir;\nuniform vec4 sunColour;\nuniform float sunExponent;\nuniform vec2 waveIntensity;\nuniform float waveExponent;\nuniform float breakWaterDepth;\nuniform float breakWaterOffset;\nuniform sampler3D normalSampler;\nuniform samplerCube envMapSampler;\nvoid main() {\nvec4 wnNormal = texture3D(normalSampler, gl_TexCoord[0].xyz).rbga;\nwnNormal.xyz = 2.0*wnNormal.xyz-1.0;\nvec3 wnVector = normalize(wvVertex);\nvec3 wnReflection = reflect(wnVector, wnNormal.xyz);\nvec3 envColour = textureCube(envMapSampler, wnReflection).rgb;\nvec4 specularColour = sunColour*pow(clamp(-dot(sunDir, wnReflection), 0.0, 1.0), sunExponent);\nfloat shoreFactor = clamp(waterDepth/breakWaterDepth-breakWaterOffset*wnNormal.w, 0.0, 1.0);\nfloat waveFactor = pow(1.0-shoreFactor, waveExponent)-0.5;\nwaveFactor = -4.0*waveFactor*waveFactor+1.0;\nfloat ndote = dot(wnVector, wnNormal.xyz);\nfloat fresnel = pow(1.0-abs(ndote), 1.0);\nvec4 surfaceColour = mix(vec4(envColour, fresnel*shoreFactor), (waveIntensity.x*wnNormal.wwww)+waveIntensity.y, waveFactor)+specularColour*shoreFactor;\ngl_FragColor = vec4(mix(surfaceColour.rgb, gl_Fog.color.rgb, gl_FogFragCoord), surfaceColour.a);\n}\n";
    static final String aString8662
	= "uniform float time;\nuniform float scale;\nvarying vec3 wvVertex;\nvarying float waterDepth;\nvoid main() {\nwaterDepth = gl_MultiTexCoord0.z;\nvec4 ecVertex = gl_ModelViewMatrix*gl_Vertex;\nwvVertex.x = dot(gl_NormalMatrix[0], ecVertex.xyz);\nwvVertex.y = dot(gl_NormalMatrix[1], ecVertex.xyz);\nwvVertex.z = dot(gl_NormalMatrix[2], ecVertex.xyz);\ngl_TexCoord[0].x = dot(gl_TextureMatrix[0][0], gl_MultiTexCoord0)*scale;\ngl_TexCoord[0].y = dot(gl_TextureMatrix[0][1], gl_MultiTexCoord0)*scale;\ngl_TexCoord[0].z = time;\ngl_TexCoord[0].w = 1.0;\ngl_FogFragCoord = clamp((ecVertex.z-gl_Fog.start)*gl_Fog.scale, 0.0, 1.0);\ngl_Position = ftransform();\n}\n";
    boolean aBool8663 = false;
    Class90 aClass90_8664;
    Class99 aClass99_8665;
    
    void method1468(Class100 class100, int i) {
	if (!((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(class100);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8592(i);
	}
    }
    
    void method1452(int i, int i_0_) {
	if (((Class108_Sub3) this).aBool8663) {
	    int i_1_ = 1 << (i & 0x3);
	    float f = (float) (1 << (i >> 3 & 0x7)) / 32.0F;
	    int i_2_ = i_0_ & 0xffff;
	    float f_3_ = (float) (i_0_ >> 16 & 0x3) / 8.0F;
	    float f_4_ = (float) (i_0_ >> 19 & 0xf) / 16.0F;
	    float f_5_ = (float) (i_0_ >> 23 & 0xf) / 16.0F;
	    int i_6_ = i_0_ >> 27 & 0xf;
	    int i_7_
		= ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_7_, "time"),
			       (float) (i_1_
					* ((Class151_Sub3)
					   (((Class108_Sub3) this)
					    .aClass151_Sub3_1429)).anInt9253
					% 40000) / 40000.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_7_, "scale"), f);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_7_,
							   "breakWaterDepth"),
			       (float) i_2_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_7_,
							   "breakWaterOffset"),
			       f_3_);
	    OpenGL.glUniform2f(OpenGL.glGetUniformLocation(i_7_,
							   "waveIntensity"),
			       f_5_, f_4_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_7_,
							   "waveExponent"),
			       (float) i_6_);
	}
    }
    
    Class108_Sub3(Class151_Sub3 class151_sub3, Class99 class99) {
	super(class151_sub3);
	((Class108_Sub3) this).aBool8660 = false;
	((Class108_Sub3) this).aClass99_8665 = class99;
	if ((((Class99) ((Class108_Sub3) this).aClass99_8665)
	     .aClass100_Sub4_1326) != null
	    && (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		.aBool9379)
	    && (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		.aBool9381)) {
	    Class102 class102
		= (Class102.method1407
		   (((Class108_Sub3) this).aClass151_Sub3_1429, 35633,
		    "uniform float time;\nuniform float scale;\nvarying vec3 wvVertex;\nvarying float waterDepth;\nvoid main() {\nwaterDepth = gl_MultiTexCoord0.z;\nvec4 ecVertex = gl_ModelViewMatrix*gl_Vertex;\nwvVertex.x = dot(gl_NormalMatrix[0], ecVertex.xyz);\nwvVertex.y = dot(gl_NormalMatrix[1], ecVertex.xyz);\nwvVertex.z = dot(gl_NormalMatrix[2], ecVertex.xyz);\ngl_TexCoord[0].x = dot(gl_TextureMatrix[0][0], gl_MultiTexCoord0)*scale;\ngl_TexCoord[0].y = dot(gl_TextureMatrix[0][1], gl_MultiTexCoord0)*scale;\ngl_TexCoord[0].z = time;\ngl_TexCoord[0].w = 1.0;\ngl_FogFragCoord = clamp((ecVertex.z-gl_Fog.start)*gl_Fog.scale, 0.0, 1.0);\ngl_Position = ftransform();\n}\n"));
	    Class102 class102_8_
		= (Class102.method1407
		   (((Class108_Sub3) this).aClass151_Sub3_1429, 35632,
		    "varying vec3 wvVertex;\nvarying float waterDepth;\nuniform vec3 sunDir;\nuniform vec4 sunColour;\nuniform float sunExponent;\nuniform vec2 waveIntensity;\nuniform float waveExponent;\nuniform float breakWaterDepth;\nuniform float breakWaterOffset;\nuniform sampler3D normalSampler;\nuniform samplerCube envMapSampler;\nvoid main() {\nvec4 wnNormal = texture3D(normalSampler, gl_TexCoord[0].xyz).rbga;\nwnNormal.xyz = 2.0*wnNormal.xyz-1.0;\nvec3 wnVector = normalize(wvVertex);\nvec3 wnReflection = reflect(wnVector, wnNormal.xyz);\nvec3 envColour = textureCube(envMapSampler, wnReflection).rgb;\nvec4 specularColour = sunColour*pow(clamp(-dot(sunDir, wnReflection), 0.0, 1.0), sunExponent);\nfloat shoreFactor = clamp(waterDepth/breakWaterDepth-breakWaterOffset*wnNormal.w, 0.0, 1.0);\nfloat waveFactor = pow(1.0-shoreFactor, waveExponent)-0.5;\nwaveFactor = -4.0*waveFactor*waveFactor+1.0;\nfloat ndote = dot(wnVector, wnNormal.xyz);\nfloat fresnel = pow(1.0-abs(ndote), 1.0);\nvec4 surfaceColour = mix(vec4(envColour, fresnel*shoreFactor), (waveIntensity.x*wnNormal.wwww)+waveIntensity.y, waveFactor)+specularColour*shoreFactor;\ngl_FragColor = vec4(mix(surfaceColour.rgb, gl_Fog.color.rgb, gl_FogFragCoord), surfaceColour.a);\n}\n"));
	    ((Class108_Sub3) this).aClass90_8664
		= Class90.method1246((((Class108_Sub3) this)
				      .aClass151_Sub3_1429),
				     new Class102[] { class102, class102_8_ });
	    ((Class108_Sub3) this).aBool8660
		= ((Class108_Sub3) this).aClass90_8664 != null;
	}
    }
    
    void method1450(boolean bool) {
	Class100_Sub2 class100_sub2
	    = ((Class108_Sub3) this).aClass151_Sub3_1429.method8669();
	if (((Class108_Sub3) this).aBool8660 && class100_sub2 != null) {
	    float f
		= (1.0F
		   + (1.0F - Math.abs(((Class151_Sub3) (((Class108_Sub3) this)
							.aClass151_Sub3_1429))
				      .aFloatArray9323[1])) * 2.0F);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429
		.method8591(class100_sub2);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591
		(((Class99) ((Class108_Sub3) this).aClass99_8665)
		 .aClass100_Sub4_1326);
	    int i = ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUseProgram(i);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "normalSampler"),
			       0);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "envMapSampler"),
			       1);
	    OpenGL.glUniform3f
		(OpenGL.glGetUniformLocation(i, "sunDir"),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[0]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[1]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[2]));
	    OpenGL.glUniform4f
		(OpenGL.glGetUniformLocation(i, "sunColour"),
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9322) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9249) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9272) * f,
		 1.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i, "sunExponent"),
			       64.0F + Math.abs(((Class151_Sub3)
						 (((Class108_Sub3) this)
						  .aClass151_Sub3_1429))
						.aFloatArray9323[1]) * 928.0F);
	    ((Class108_Sub3) this).aBool8663 = true;
	}
    }
    
    void method1451() {
	if (((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    OpenGL.glUseProgram(0);
	    ((Class108_Sub3) this).aBool8663 = false;
	}
    }
    
    void method1456(Class100 class100, int i) {
	if (!((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(class100);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8592(i);
	}
    }
    
    void method1467(boolean bool) {
	/* empty */
    }
    
    boolean method1454() {
	return ((Class108_Sub3) this).aBool8660;
    }
    
    boolean method1455() {
	return ((Class108_Sub3) this).aBool8660;
    }
    
    void method1457(boolean bool) {
	Class100_Sub2 class100_sub2
	    = ((Class108_Sub3) this).aClass151_Sub3_1429.method8669();
	if (((Class108_Sub3) this).aBool8660 && class100_sub2 != null) {
	    float f
		= (1.0F
		   + (1.0F - Math.abs(((Class151_Sub3) (((Class108_Sub3) this)
							.aClass151_Sub3_1429))
				      .aFloatArray9323[1])) * 2.0F);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429
		.method8591(class100_sub2);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591
		(((Class99) ((Class108_Sub3) this).aClass99_8665)
		 .aClass100_Sub4_1326);
	    int i = ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUseProgram(i);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "normalSampler"),
			       0);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "envMapSampler"),
			       1);
	    OpenGL.glUniform3f
		(OpenGL.glGetUniformLocation(i, "sunDir"),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[0]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[1]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[2]));
	    OpenGL.glUniform4f
		(OpenGL.glGetUniformLocation(i, "sunColour"),
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9322) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9249) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9272) * f,
		 1.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i, "sunExponent"),
			       64.0F + Math.abs(((Class151_Sub3)
						 (((Class108_Sub3) this)
						  .aClass151_Sub3_1429))
						.aFloatArray9323[1]) * 928.0F);
	    ((Class108_Sub3) this).aBool8663 = true;
	}
    }
    
    void method1469(boolean bool) {
	Class100_Sub2 class100_sub2
	    = ((Class108_Sub3) this).aClass151_Sub3_1429.method8669();
	if (((Class108_Sub3) this).aBool8660 && class100_sub2 != null) {
	    float f
		= (1.0F
		   + (1.0F - Math.abs(((Class151_Sub3) (((Class108_Sub3) this)
							.aClass151_Sub3_1429))
				      .aFloatArray9323[1])) * 2.0F);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429
		.method8591(class100_sub2);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591
		(((Class99) ((Class108_Sub3) this).aClass99_8665)
		 .aClass100_Sub4_1326);
	    int i = ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUseProgram(i);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "normalSampler"),
			       0);
	    OpenGL.glUniform1i(OpenGL.glGetUniformLocation(i, "envMapSampler"),
			       1);
	    OpenGL.glUniform3f
		(OpenGL.glGetUniformLocation(i, "sunDir"),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[0]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[1]),
		 -(((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		   .aFloatArray9323[2]));
	    OpenGL.glUniform4f
		(OpenGL.glGetUniformLocation(i, "sunColour"),
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9322) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9249) * f,
		 (((Class151_Sub3) ((Class108_Sub3) this).aClass151_Sub3_1429)
		  .aFloat9272) * f,
		 1.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i, "sunExponent"),
			       64.0F + Math.abs(((Class151_Sub3)
						 (((Class108_Sub3) this)
						  .aClass151_Sub3_1429))
						.aFloatArray9323[1]) * 928.0F);
	    ((Class108_Sub3) this).aBool8663 = true;
	}
    }
    
    void method1464(boolean bool) {
	/* empty */
    }
    
    void method1453(boolean bool) {
	/* empty */
    }
    
    void method1460(boolean bool) {
	/* empty */
    }
    
    void method1461() {
	if (((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    OpenGL.glUseProgram(0);
	    ((Class108_Sub3) this).aBool8663 = false;
	}
    }
    
    void method1462() {
	if (((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    OpenGL.glUseProgram(0);
	    ((Class108_Sub3) this).aBool8663 = false;
	}
    }
    
    void method1463() {
	if (((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    OpenGL.glUseProgram(0);
	    ((Class108_Sub3) this).aBool8663 = false;
	}
    }
    
    void method1459() {
	if (((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(1);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8590(0);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(null);
	    OpenGL.glUseProgram(0);
	    ((Class108_Sub3) this).aBool8663 = false;
	}
    }
    
    void method1465(int i, int i_9_) {
	if (((Class108_Sub3) this).aBool8663) {
	    int i_10_ = 1 << (i & 0x3);
	    float f = (float) (1 << (i >> 3 & 0x7)) / 32.0F;
	    int i_11_ = i_9_ & 0xffff;
	    float f_12_ = (float) (i_9_ >> 16 & 0x3) / 8.0F;
	    float f_13_ = (float) (i_9_ >> 19 & 0xf) / 16.0F;
	    float f_14_ = (float) (i_9_ >> 23 & 0xf) / 16.0F;
	    int i_15_ = i_9_ >> 27 & 0xf;
	    int i_16_
		= ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_16_, "time"),
			       (float) (i_10_
					* ((Class151_Sub3)
					   (((Class108_Sub3) this)
					    .aClass151_Sub3_1429)).anInt9253
					% 40000) / 40000.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_16_, "scale"), f);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_16_,
							   "breakWaterDepth"),
			       (float) i_11_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_16_,
							   "breakWaterOffset"),
			       f_12_);
	    OpenGL.glUniform2f(OpenGL.glGetUniformLocation(i_16_,
							   "waveIntensity"),
			       f_14_, f_13_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_16_,
							   "waveExponent"),
			       (float) i_15_);
	}
    }
    
    void method1466(int i, int i_17_) {
	if (((Class108_Sub3) this).aBool8663) {
	    int i_18_ = 1 << (i & 0x3);
	    float f = (float) (1 << (i >> 3 & 0x7)) / 32.0F;
	    int i_19_ = i_17_ & 0xffff;
	    float f_20_ = (float) (i_17_ >> 16 & 0x3) / 8.0F;
	    float f_21_ = (float) (i_17_ >> 19 & 0xf) / 16.0F;
	    float f_22_ = (float) (i_17_ >> 23 & 0xf) / 16.0F;
	    int i_23_ = i_17_ >> 27 & 0xf;
	    int i_24_
		= ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_24_, "time"),
			       (float) (i_18_
					* ((Class151_Sub3)
					   (((Class108_Sub3) this)
					    .aClass151_Sub3_1429)).anInt9253
					% 40000) / 40000.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_24_, "scale"), f);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_24_,
							   "breakWaterDepth"),
			       (float) i_19_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_24_,
							   "breakWaterOffset"),
			       f_20_);
	    OpenGL.glUniform2f(OpenGL.glGetUniformLocation(i_24_,
							   "waveIntensity"),
			       f_22_, f_21_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_24_,
							   "waveExponent"),
			       (float) i_23_);
	}
    }
    
    boolean method1449() {
	return ((Class108_Sub3) this).aBool8660;
    }
    
    void method1458(int i, int i_25_) {
	if (((Class108_Sub3) this).aBool8663) {
	    int i_26_ = 1 << (i & 0x3);
	    float f = (float) (1 << (i >> 3 & 0x7)) / 32.0F;
	    int i_27_ = i_25_ & 0xffff;
	    float f_28_ = (float) (i_25_ >> 16 & 0x3) / 8.0F;
	    float f_29_ = (float) (i_25_ >> 19 & 0xf) / 16.0F;
	    float f_30_ = (float) (i_25_ >> 23 & 0xf) / 16.0F;
	    int i_31_ = i_25_ >> 27 & 0xf;
	    int i_32_
		= ((Class90) ((Class108_Sub3) this).aClass90_8664).anInt1234;
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_32_, "time"),
			       (float) (i_26_
					* ((Class151_Sub3)
					   (((Class108_Sub3) this)
					    .aClass151_Sub3_1429)).anInt9253
					% 40000) / 40000.0F);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_32_, "scale"), f);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_32_,
							   "breakWaterDepth"),
			       (float) i_27_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_32_,
							   "breakWaterOffset"),
			       f_28_);
	    OpenGL.glUniform2f(OpenGL.glGetUniformLocation(i_32_,
							   "waveIntensity"),
			       f_30_, f_29_);
	    OpenGL.glUniform1f(OpenGL.glGetUniformLocation(i_32_,
							   "waveExponent"),
			       (float) i_31_);
	}
    }
    
    void method1448(Class100 class100, int i) {
	if (!((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(class100);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8592(i);
	}
    }
    
    void method1470(Class100 class100, int i) {
	if (!((Class108_Sub3) this).aBool8663) {
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8591(class100);
	    ((Class108_Sub3) this).aClass151_Sub3_1429.method8592(i);
	}
    }
}
