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

public class Class220_Sub4 extends Class220 implements Interface45
{
    int anInt10310;
    int anInt10311;
    
    public float method264() {
	return 1.0F;
    }
    
    Class220_Sub4(Class87_Sub2_Sub2 class87_sub2_sub2, int i, int i_0_,
		  boolean bool, int[] is, int i_1_, int i_2_) {
	super(class87_sub2_sub2, 3553, Class173.aClass173_2131,
	      Class90.aClass90_1040, i * i_0_, bool);
	((Class220_Sub4) this).anInt10311 = i;
	((Class220_Sub4) this).anInt10310 = i_0_;
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	if (!bool || i_2_ != 0 || i_1_ != 0) {
	    OpenGL.glPixelStorei(3314, i_2_);
	    OpenGL.glTexImage2Di(((Class220_Sub4) this).anInt2533, 0, 6408,
				 ((Class220_Sub4) this).anInt10311,
				 ((Class220_Sub4) this).anInt10310, 0, 32993,
				 ((Class87_Sub2_Sub2)
				  (((Class220_Sub4) this)
				   .aClass87_Sub2_Sub2_2531)).anInt11010,
				 is, i_1_ * 4);
	    OpenGL.glPixelStorei(3314, 0);
	} else
	    method4422(((Class220_Sub4) this).anInt2533, i, i_0_, is);
    }
    
    public void method238(int i, int i_3_, int i_4_, int i_5_, int[] is,
			  int i_6_, int i_7_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3314, i_7_);
	OpenGL.glTexSubImage2Di(((Class220_Sub4) this).anInt2533, 0, i, i_3_,
				i_4_, i_5_, 32993,
				((Class87_Sub2_Sub2)
				 (((Class220_Sub4) this)
				  .aClass87_Sub2_Sub2_2531)).anInt11010,
				is, i_6_);
	OpenGL.glPixelStorei(3314, 0);
    }
    
    Class220_Sub4(Class87_Sub2_Sub2 class87_sub2_sub2, Class173 class173,
		  int i, int i_8_, boolean bool, float[] fs, int i_9_,
		  int i_10_) {
	super(class87_sub2_sub2, 3553, class173, Class90.aClass90_1045,
	      i * i_8_, bool);
	((Class220_Sub4) this).anInt10311 = i;
	((Class220_Sub4) this).anInt10310 = i_8_;
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	if (!bool || i_10_ != 0 || i_9_ != 0) {
	    OpenGL.glPixelStorei(3314, i_10_);
	    OpenGL.glTexImage2Df
		(((Class220_Sub4) this).anInt2533, 0,
		 Class87_Sub2_Sub2.method17485((((Class220_Sub4) this)
						.aClass173_2526),
					       (((Class220_Sub4) this)
						.aClass90_2535)),
		 i, i_8_, 0,
		 Class87_Sub2_Sub2
		     .method17484(((Class220_Sub4) this).aClass173_2526),
		 5126, fs, i_9_ * 4);
	    OpenGL.glPixelStorei(3314, 0);
	} else
	    method4444(((Class220_Sub4) this).anInt2533, i, i_8_, fs);
    }
    
    public int method28() {
	return ((Class220_Sub4) this).anInt10311;
    }
    
    public float method233() {
	return 1.0F;
    }
    
    Class220_Sub4(Class87_Sub2_Sub2 class87_sub2_sub2, Class173 class173,
		  int i, int i_11_, boolean bool, byte[] is, int i_12_,
		  int i_13_) {
	super(class87_sub2_sub2, 3553, class173, Class90.aClass90_1040,
	      i * i_11_, bool);
	((Class220_Sub4) this).anInt10311 = i;
	((Class220_Sub4) this).anInt10310 = i_11_;
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3317, 1);
	if (!bool || i_13_ != 0 || i_12_ != 0) {
	    OpenGL.glPixelStorei(3314, i_13_);
	    if (((Class220_Sub4) this).aClass173_2526
		== Class173.aClass173_2135)
		OpenGL.glCompressedTexImage2Dub((((Class220_Sub4) this)
						 .anInt2533),
						0, 33777, i, i_11_, 0,
						i * i_11_ / 2, is, i_12_);
	    else if (((Class220_Sub4) this).aClass173_2526
		     == Class173.aClass173_2138)
		OpenGL.glCompressedTexImage2Dub((((Class220_Sub4) this)
						 .anInt2533),
						0, 33779, i, i_11_, 0,
						i * i_11_, is, i_12_);
	    else
		OpenGL.glTexImage2Dub
		    (((Class220_Sub4) this).anInt2533, 0,
		     Class87_Sub2_Sub2.method17485((((Class220_Sub4) this)
						    .aClass173_2526),
						   (((Class220_Sub4) this)
						    .aClass90_2535)),
		     i, i_11_, 0,
		     Class87_Sub2_Sub2
			 .method17484(((Class220_Sub4) this).aClass173_2526),
		     5121, is, i_12_);
	    OpenGL.glPixelStorei(3314, 0);
	} else
	    method4429(((Class220_Sub4) this).anInt2533, i, i_11_, is);
	OpenGL.glPixelStorei(3317, 4);
    }
    
    public void method24() {
	super.method23();
    }
    
    public float method241() {
	return 1.0F;
    }
    
    Class220_Sub4(Class87_Sub2_Sub2 class87_sub2_sub2, Class173 class173,
		  Class90 class90, int i, int i_14_) {
	super(class87_sub2_sub2, 3553, class173, class90, i * i_14_, false);
	((Class220_Sub4) this).anInt10311 = i;
	((Class220_Sub4) this).anInt10310 = i_14_;
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glTexImage2Dub
	    (((Class220_Sub4) this).anInt2533, 0,
	     Class87_Sub2_Sub2.method17485((((Class220_Sub4) this)
					    .aClass173_2526),
					   (((Class220_Sub4) this)
					    .aClass90_2535)),
	     i, i_14_, 0,
	     Class87_Sub2_Sub2
		 .method17484(((Class220_Sub4) this).aClass173_2526),
	     Class87_Sub2_Sub2
		 .method17479(((Class220_Sub4) this).aClass90_2535),
	     null, 0);
    }
    
    public boolean method236() {
	return true;
    }
    
    public void method237(boolean bool, boolean bool_15_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glTexParameteri(((Class220_Sub4) this).anInt2533, 10242,
			       bool ? 10497 : 33071);
	OpenGL.glTexParameteri(((Class220_Sub4) this).anInt2533, 10243,
			       bool_15_ ? 10497 : 33071);
    }
    
    public void method317(Class369 class369) {
	super.method318(class369);
    }
    
    public void method239(int i, int i_16_, int i_17_, int i_18_, byte[] is,
			  Class173 class173, int i_19_, int i_20_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3317, 1);
	OpenGL.glPixelStorei(3314, i_20_);
	OpenGL.glTexSubImage2Dub(((Class220_Sub4) this).anInt2533, 0, i, i_16_,
				 i_17_, i_18_,
				 Class87_Sub2_Sub2.method17484(class173), 5121,
				 is, i_19_);
	OpenGL.glPixelStorei(3314, 0);
	OpenGL.glPixelStorei(3317, 4);
    }
    
    void method16733(int i, int i_21_, int i_22_, int i_23_, float[] fs,
		     Class173 class173, int i_24_, int i_25_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3314, i_25_);
	OpenGL.glTexSubImage2Df(((Class220_Sub4) this).anInt2533, 0, i, i_21_,
				i_22_, i_23_,
				Class87_Sub2_Sub2.method17484(class173), 5121,
				fs, i_24_);
	OpenGL.glPixelStorei(3314, 0);
    }
    
    public void method247(int i, int i_26_, int i_27_, int i_28_, int[] is,
			  int i_29_) {
	int[] is_30_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_30_, 0);
	for (int i_31_ = 0; i_31_ < i_28_; i_31_++)
	    System.arraycopy(is_30_,
			     ((i_26_ + (i_28_ - 1) - i_31_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_29_ + i_31_ * i_27_, i_27_);
    }
    
    public Interface5 method328(int i) {
	return new Class237(this, i);
    }
    
    public boolean method242() {
	return super.method242();
    }
    
    public float method249() {
	return 1.0F;
    }
    
    public void method318(Class369 class369) {
	super.method318(class369);
    }
    
    public void method23() {
	super.method23();
    }
    
    public void method258(int i, int i_32_, int i_33_, int i_34_, int[] is,
			  int i_35_) {
	int[] is_36_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_36_, 0);
	for (int i_37_ = 0; i_37_ < i_34_; i_37_++)
	    System.arraycopy(is_36_,
			     ((i_32_ + (i_34_ - 1) - i_37_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_35_ + i_37_ * i_33_, i_33_);
    }
    
    public int method127() {
	return ((Class220_Sub4) this).anInt10311;
    }
    
    public int method151() {
	return ((Class220_Sub4) this).anInt10311;
    }
    
    public boolean method235() {
	return true;
    }
    
    public int method139() {
	return ((Class220_Sub4) this).anInt10310;
    }
    
    public int method245() {
	return ((Class220_Sub4) this).anInt10310;
    }
    
    public float method255(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10311;
    }
    
    public float method246(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10311;
    }
    
    public float method248(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10311;
    }
    
    public int method137() {
	return ((Class220_Sub4) this).anInt10311;
    }
    
    public float method250(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10310;
    }
    
    public void method254(int i, int i_38_, int i_39_, int i_40_, byte[] is,
			  Class173 class173, int i_41_, int i_42_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3317, 1);
	OpenGL.glPixelStorei(3314, i_42_);
	OpenGL.glTexSubImage2Dub(((Class220_Sub4) this).anInt2533, 0, i, i_38_,
				 i_39_, i_40_,
				 Class87_Sub2_Sub2.method17484(class173), 5121,
				 is, i_41_);
	OpenGL.glPixelStorei(3314, 0);
	OpenGL.glPixelStorei(3317, 4);
    }
    
    public boolean method260() {
	return true;
    }
    
    public void method252(boolean bool, boolean bool_43_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glTexParameteri(((Class220_Sub4) this).anInt2533, 10242,
			       bool ? 10497 : 33071);
	OpenGL.glTexParameteri(((Class220_Sub4) this).anInt2533, 10243,
			       bool_43_ ? 10497 : 33071);
    }
    
    public void method240(int i, int i_44_, int i_45_, int i_46_, int[] is,
			  int i_47_, int i_48_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3314, i_48_);
	OpenGL.glTexSubImage2Di(((Class220_Sub4) this).anInt2533, 0, i, i_44_,
				i_45_, i_46_, 32993,
				((Class87_Sub2_Sub2)
				 (((Class220_Sub4) this)
				  .aClass87_Sub2_Sub2_2531)).anInt11010,
				is, i_47_);
	OpenGL.glPixelStorei(3314, 0);
    }
    
    void method16734(int i, int i_49_, int i_50_, int i_51_, float[] fs,
		     Class173 class173, int i_52_, int i_53_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3314, i_53_);
	OpenGL.glTexSubImage2Df(((Class220_Sub4) this).anInt2533, 0, i, i_49_,
				i_50_, i_51_,
				Class87_Sub2_Sub2.method17484(class173), 5121,
				fs, i_52_);
	OpenGL.glPixelStorei(3314, 0);
    }
    
    public float method244(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10311;
    }
    
    public void method261(int i, int i_54_, int i_55_, int i_56_, int[] is,
			  int i_57_) {
	int[] is_58_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_58_, 0);
	for (int i_59_ = 0; i_59_ < i_56_; i_59_++)
	    System.arraycopy(is_58_,
			     ((i_54_ + (i_56_ - 1) - i_59_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_57_ + i_59_ * i_55_, i_55_);
    }
    
    public void method256(int i, int i_60_, int i_61_, int i_62_, int[] is,
			  int i_63_) {
	int[] is_64_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_64_, 0);
	for (int i_65_ = 0; i_65_ < i_62_; i_65_++)
	    System.arraycopy(is_64_,
			     ((i_60_ + (i_62_ - 1) - i_65_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_63_ + i_65_ * i_61_, i_61_);
    }
    
    public void method257(int i, int i_66_, int i_67_, int i_68_, int[] is,
			  int i_69_) {
	int[] is_70_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_70_, 0);
	for (int i_71_ = 0; i_71_ < i_68_; i_71_++)
	    System.arraycopy(is_70_,
			     ((i_66_ + (i_68_ - 1) - i_71_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_69_ + i_71_ * i_67_, i_67_);
    }
    
    public void method319() {
	super.method319();
    }
    
    public float method234(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10311;
    }
    
    public float method262() {
	return 1.0F;
    }
    
    public float method259() {
	return 1.0F;
    }
    
    public float method253() {
	return 1.0F;
    }
    
    public float method263() {
	return 1.0F;
    }
    
    public void method251(int i, int i_72_, int i_73_, int i_74_, int[] is,
			  int i_75_) {
	int[] is_76_ = new int[(((Class220_Sub4) this).anInt10311
				* ((Class220_Sub4) this).anInt10310)];
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glGetTexImagei(((Class220_Sub4) this).anInt2533, 0, 32993, 5121,
			      is_76_, 0);
	for (int i_77_ = 0; i_77_ < i_74_; i_77_++)
	    System.arraycopy(is_76_,
			     ((i_72_ + (i_74_ - 1) - i_77_)
			      * ((Class220_Sub4) this).anInt10311),
			     is, i_75_ + i_77_ * i_73_, i_73_);
    }
    
    public int method26() {
	return ((Class220_Sub4) this).anInt10310;
    }
    
    public void method321(Class369 class369) {
	super.method318(class369);
    }
    
    void method16735(int i, int i_78_, int i_79_, int i_80_, float[] fs,
		     Class173 class173, int i_81_, int i_82_) {
	((Class220_Sub4) this).aClass87_Sub2_Sub2_2531.method15448(this);
	OpenGL.glPixelStorei(3314, i_82_);
	OpenGL.glTexSubImage2Df(((Class220_Sub4) this).anInt2533, 0, i, i_78_,
				i_79_, i_80_,
				Class87_Sub2_Sub2.method17484(class173), 5121,
				fs, i_81_);
	OpenGL.glPixelStorei(3314, 0);
    }
    
    public Interface5 method323(int i) {
	return new Class237(this, i);
    }
    
    public Interface5 method322(int i) {
	return new Class237(this, i);
    }
    
    public Interface5 method325(int i) {
	return new Class237(this, i);
    }
    
    public Interface5 method326(int i) {
	return new Class237(this, i);
    }
    
    public Interface5 method327(int i) {
	return new Class237(this, i);
    }
    
    public void method320() {
	super.method319();
    }
    
    public boolean method265() {
	return super.method242();
    }
    
    public Interface5 method324(int i) {
	return new Class237(this, i);
    }
    
    public float method243(float f) {
	return f / (float) ((Class220_Sub4) this).anInt10310;
    }
}
