private final void method3990
	(int i, int i_105_, boolean bool, Class167 class167, Class109 class109,
	 int[] is, int[] is_106_, int[] is_107_, int[] is_108_, int i_109_) {
	Class266 class266 = aClass266ArrayArray8230[i][i_105_];
	if (class266 != null) {
	    if ((((Class266) class266).aByte3386 & 0x2) == 0) {
		if (i_109_ != 0) {
		    if ((((Class266) class266).aByte3386 & 0x4) != 0) {
			if ((i_109_ & 0x1) != 0)
			    return;
		    } else if ((i_109_ & 0x2) != 0)
			return;
		}
		int i_110_ = i * ((s) this).anInt4592;
		int i_111_ = i_110_ + ((s) this).anInt4592;
		int i_112_ = i_105_ * ((s) this).anInt4592;
		int i_113_ = i_112_ + ((s) this).anInt4592;
		int i_114_ = 0;
		int i_115_ = 0;
		int i_116_ = 0;
		int i_117_ = 0;
		float f;
		float f_118_;
		float f_119_;
		float f_120_;
		int i_121_;
		int i_122_;
		int i_123_;
		int i_124_;
		int i_125_;
		int i_126_;
		int i_127_;
		int i_128_;
		if ((((Class266) class266).aByte3386 & 0x1) != 0 && !bool) {
		    int i_129_ = ((s) this).anIntArrayArray4584[i][i_105_];
		    float f_130_ = aFloat8227 * (float) i_129_;
		    if (anInt8228 == -1) {
			f = aFloat8218 + (aFloat8233 * (float) i_110_ + f_130_
					  + aFloat8231 * (float) i_112_);
			if (f <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_118_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + f_130_
					       + aFloat8231 * (float) i_112_);
			if (f_118_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_119_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + f_130_
					       + aFloat8231 * (float) i_113_);
			if (f_119_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_120_ = aFloat8218 + (aFloat8233 * (float) i_110_
					       + f_130_
					       + aFloat8231 * (float) i_113_);
			if (f_120_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
		    } else {
			f = aFloat8218 + (aFloat8233 * (float) i_110_ + f_130_
					  + aFloat8231 * (float) i_112_);
			f_118_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + f_130_
					       + aFloat8231 * (float) i_112_);
			f_119_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + f_130_
					       + aFloat8231 * (float) i_113_);
			f_120_ = aFloat8218 + (aFloat8233 * (float) i_110_
					       + f_130_
					       + aFloat8231 * (float) i_113_);
		    }
		    if (((Class167) class167).aBoolean2201) {
			int i_131_ = (int) (f - (float) (((Class167) class167)
							 .anInt2210));
			if (i_131_ > 0) {
			    i_114_ = i_131_;
			    if (i_114_ > 255)
				i_114_ = 255;
			}
			i_131_ = (int) (f_118_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_131_ > 0) {
			    i_115_ = i_131_;
			    if (i_115_ > 255)
				i_115_ = 255;
			}
			i_131_ = (int) (f_119_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_131_ > 0) {
			    i_116_ = i_131_;
			    if (i_116_ > 255)
				i_116_ = 255;
			}
			i_131_ = (int) (f_120_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_131_ > 0) {
			    i_117_ = i_131_;
			    if (i_117_ > 255)
				i_117_ = 255;
			}
		    }
		    float f_132_ = aFloat8216 * (float) i_129_;
		    float f_133_ = aFloat8221 * (float) i_129_;
		    if (anInt8228 == -1) {
			float f_134_ = (aFloat8213
					+ (aFloat8212 * (float) i_110_ + f_132_
					   + aFloat8224 * (float) i_112_));
			i_121_ = (((Class109) class109).anInt1665
				  + (int) (f_134_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f));
			float f_135_ = (aFloat8226
					+ (aFloat8214 * (float) i_110_ + f_133_
					   + aFloat8229 * (float) i_112_));
			i_122_ = (((Class109) class109).anInt1668
				  + (int) (f_135_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f));
			float f_136_ = (aFloat8213
					+ (aFloat8212 * (float) i_111_ + f_132_
					   + aFloat8224 * (float) i_112_));
			i_123_ = (((Class109) class109).anInt1665
				  + (int) (f_136_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_118_));
			float f_137_ = (aFloat8226
					+ (aFloat8214 * (float) i_111_ + f_133_
					   + aFloat8229 * (float) i_112_));
			i_124_ = (((Class109) class109).anInt1668
				  + (int) (f_137_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_118_));
			float f_138_ = (aFloat8213
					+ (aFloat8212 * (float) i_111_ + f_132_
					   + aFloat8224 * (float) i_113_));
			i_125_ = (((Class109) class109).anInt1665
				  + (int) (f_138_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_119_));
			float f_139_ = (aFloat8226
					+ (aFloat8214 * (float) i_111_ + f_133_
					   + aFloat8229 * (float) i_113_));
			i_126_ = (((Class109) class109).anInt1668
				  + (int) (f_139_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_119_));
			float f_140_ = (aFloat8213
					+ (aFloat8212 * (float) i_110_ + f_132_
					   + aFloat8224 * (float) i_113_));
			i_127_ = (((Class109) class109).anInt1665
				  + (int) (f_140_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_120_));
			float f_141_ = (aFloat8226
					+ (aFloat8214 * (float) i_110_ + f_133_
					   + aFloat8229 * (float) i_113_));
			i_128_ = (((Class109) class109).anInt1668
				  + (int) (f_141_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_120_));
		    } else {
			float f_142_ = (aFloat8213
					+ (aFloat8212 * (float) i_110_ + f_132_
					   + aFloat8224 * (float) i_112_));
			i_121_ = (((Class109) class109).anInt1665
				  + (int) (f_142_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_143_ = (aFloat8226
					+ (aFloat8214 * (float) i_110_ + f_133_
					   + aFloat8229 * (float) i_112_));
			i_122_ = (((Class109) class109).anInt1668
				  + (int) (f_143_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_144_ = (aFloat8213
					+ (aFloat8212 * (float) i_111_ + f_132_
					   + aFloat8224 * (float) i_112_));
			i_123_ = (((Class109) class109).anInt1665
				  + (int) (f_144_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_145_ = (aFloat8226
					+ (aFloat8214 * (float) i_111_ + f_133_
					   + aFloat8229 * (float) i_112_));
			i_124_ = (((Class109) class109).anInt1668
				  + (int) (f_145_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_146_ = (aFloat8213
					+ (aFloat8212 * (float) i_111_ + f_132_
					   + aFloat8224 * (float) i_113_));
			i_125_ = (((Class109) class109).anInt1665
				  + (int) (f_146_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_147_ = (aFloat8226
					+ (aFloat8214 * (float) i_111_ + f_133_
					   + aFloat8229 * (float) i_113_));
			i_126_ = (((Class109) class109).anInt1668
				  + (int) (f_147_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_148_ = (aFloat8213
					+ (aFloat8212 * (float) i_110_ + f_132_
					   + aFloat8224 * (float) i_113_));
			i_127_ = (((Class109) class109).anInt1665
				  + (int) (f_148_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_149_ = (aFloat8226
					+ (aFloat8214 * (float) i_110_ + f_133_
					   + aFloat8229 * (float) i_113_));
			i_128_ = (((Class109) class109).anInt1668
				  + (int) (f_149_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
		    }
		} else {
		    int i_150_ = ((s) this).anIntArrayArray4584[i][i_105_];
		    int i_151_ = ((s) this).anIntArrayArray4584[i + 1][i_105_];
		    int i_152_
			= ((s) this).anIntArrayArray4584[i + 1][i_105_ + 1];
		    int i_153_ = ((s) this).anIntArrayArray4584[i][i_105_ + 1];
		    if (anInt8228 == -1) {
			f = aFloat8218 + (aFloat8233 * (float) i_110_
					  + aFloat8227 * (float) i_150_
					  + aFloat8231 * (float) i_112_);
			if (f <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_118_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + aFloat8227 * (float) i_151_
					       + aFloat8231 * (float) i_112_);
			if (f_118_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_119_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + aFloat8227 * (float) i_152_
					       + aFloat8231 * (float) i_113_);
			if (f_119_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			f_120_ = aFloat8218 + (aFloat8233 * (float) i_110_
					       + aFloat8227 * (float) i_153_
					       + aFloat8231 * (float) i_113_);
			if (f_120_
			    <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
		    } else {
			f = aFloat8218 + (aFloat8233 * (float) i_110_
					  + aFloat8227 * (float) i_150_
					  + aFloat8231 * (float) i_112_);
			f_118_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + aFloat8227 * (float) i_151_
					       + aFloat8231 * (float) i_112_);
			f_119_ = aFloat8218 + (aFloat8233 * (float) i_111_
					       + aFloat8227 * (float) i_152_
					       + aFloat8231 * (float) i_113_);
			f_120_ = aFloat8218 + (aFloat8233 * (float) i_110_
					       + aFloat8227 * (float) i_153_
					       + aFloat8231 * (float) i_113_);
		    }
		    if (bool) {
			int i_154_ = (int) (f - (float) (((Class167) class167)
							 .anInt2210));
			if (i_154_ > 255)
			    i_154_ = 255;
			if (i_154_ > 0) {
			    i_114_ = i_154_;
			    int i_155_ = (((Class266) class266).aShort3382
					  * i_154_ / 255);
			    if (i_155_ > 0)
				i_150_ -= i_155_;
			}
			i_154_ = (int) (f_118_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_154_ > 255)
			    i_154_ = 255;
			if (i_154_ > 0) {
			    i_115_ = i_154_;
			    int i_156_ = (((Class266) class266).aShort3383
					  * i_154_ / 255);
			    if (i_156_ > 0)
				i_151_ -= i_156_;
			}
			i_154_ = (int) (f_119_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_154_ > 255)
			    i_154_ = 255;
			if (i_154_ > 0) {
			    i_116_ = i_154_;
			    int i_157_ = (((Class266) class266).aShort3384
					  * i_154_ / 255);
			    if (i_157_ > 0)
				i_152_ -= i_157_;
			}
			i_154_ = (int) (f_120_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_154_ > 255)
			    i_154_ = 255;
			if (i_154_ > 0) {
			    i_117_ = i_154_;
			    int i_158_ = (((Class266) class266).aShort3385
					  * i_154_ / 255);
			    if (i_158_ > 0)
				i_153_ -= i_158_;
			}
		    } else if (((Class167) class167).aBoolean2201) {
			int i_159_ = (int) (f - (float) (((Class167) class167)
							 .anInt2210));
			if (i_159_ > 0) {
			    i_114_ = i_159_;
			    if (i_114_ > 255)
				i_114_ = 255;
			}
			i_159_ = (int) (f_118_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_159_ > 0) {
			    i_115_ = i_159_;
			    if (i_115_ > 255)
				i_115_ = 255;
			}
			i_159_ = (int) (f_119_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_159_ > 0) {
			    i_116_ = i_159_;
			    if (i_116_ > 255)
				i_116_ = 255;
			}
			i_159_ = (int) (f_120_ - (float) (((Class167) class167)
							  .anInt2210));
			if (i_159_ > 0) {
			    i_117_ = i_159_;
			    if (i_117_ > 255)
				i_117_ = 255;
			}
		    }
		    if (anInt8228 == -1) {
			float f_160_
			    = aFloat8213 + (aFloat8212 * (float) i_110_
					    + aFloat8216 * (float) i_150_
					    + aFloat8224 * (float) i_112_);
			i_121_ = (((Class109) class109).anInt1665
				  + (int) (f_160_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f));
			float f_161_
			    = aFloat8226 + (aFloat8214 * (float) i_110_
					    + aFloat8221 * (float) i_150_
					    + aFloat8229 * (float) i_112_);
			i_122_ = (((Class109) class109).anInt1668
				  + (int) (f_161_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f));
			float f_162_
			    = aFloat8213 + (aFloat8212 * (float) i_111_
					    + aFloat8216 * (float) i_151_
					    + aFloat8224 * (float) i_112_);
			i_123_ = (((Class109) class109).anInt1665
				  + (int) (f_162_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_118_));
			float f_163_
			    = aFloat8226 + (aFloat8214 * (float) i_111_
					    + aFloat8221 * (float) i_151_
					    + aFloat8229 * (float) i_112_);
			i_124_ = (((Class109) class109).anInt1668
				  + (int) (f_163_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_118_));
			float f_164_
			    = aFloat8213 + (aFloat8212 * (float) i_111_
					    + aFloat8216 * (float) i_152_
					    + aFloat8224 * (float) i_113_);
			i_125_ = (((Class109) class109).anInt1665
				  + (int) (f_164_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_119_));
			float f_165_
			    = aFloat8226 + (aFloat8214 * (float) i_111_
					    + aFloat8221 * (float) i_152_
					    + aFloat8229 * (float) i_113_);
			i_126_ = (((Class109) class109).anInt1668
				  + (int) (f_165_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_119_));
			float f_166_
			    = aFloat8213 + (aFloat8212 * (float) i_110_
					    + aFloat8216 * (float) i_153_
					    + aFloat8224 * (float) i_113_);
			i_127_ = (((Class109) class109).anInt1665
				  + (int) (f_166_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / f_120_));
			float f_167_
			    = aFloat8226 + (aFloat8214 * (float) i_110_
					    + aFloat8221 * (float) i_153_
					    + aFloat8229 * (float) i_113_);
			i_128_ = (((Class109) class109).anInt1668
				  + (int) (f_167_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / f_120_));
		    } else {
			float f_168_
			    = aFloat8213 + (aFloat8212 * (float) i_110_
					    + aFloat8216 * (float) i_150_
					    + aFloat8224 * (float) i_112_);
			i_121_ = (((Class109) class109).anInt1665
				  + (int) (f_168_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_169_
			    = aFloat8226 + (aFloat8214 * (float) i_110_
					    + aFloat8221 * (float) i_150_
					    + aFloat8229 * (float) i_112_);
			i_122_ = (((Class109) class109).anInt1668
				  + (int) (f_169_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_170_
			    = aFloat8213 + (aFloat8212 * (float) i_111_
					    + aFloat8216 * (float) i_151_
					    + aFloat8224 * (float) i_112_);
			i_123_ = (((Class109) class109).anInt1665
				  + (int) (f_170_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_171_
			    = aFloat8226 + (aFloat8214 * (float) i_111_
					    + aFloat8221 * (float) i_151_
					    + aFloat8229 * (float) i_112_);
			i_124_ = (((Class109) class109).anInt1668
				  + (int) (f_171_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_172_
			    = aFloat8213 + (aFloat8212 * (float) i_111_
					    + aFloat8216 * (float) i_152_
					    + aFloat8224 * (float) i_113_);
			i_125_ = (((Class109) class109).anInt1665
				  + (int) (f_172_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_173_
			    = aFloat8226 + (aFloat8214 * (float) i_111_
					    + aFloat8221 * (float) i_152_
					    + aFloat8229 * (float) i_113_);
			i_126_ = (((Class109) class109).anInt1668
				  + (int) (f_173_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
			float f_174_
			    = aFloat8213 + (aFloat8212 * (float) i_110_
					    + aFloat8216 * (float) i_153_
					    + aFloat8224 * (float) i_113_);
			i_127_ = (((Class109) class109).anInt1665
				  + (int) (f_174_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7491)
					   / (float) anInt8228));
			float f_175_
			    = aFloat8226 + (aFloat8214 * (float) i_110_
					    + aFloat8221 * (float) i_153_
					    + aFloat8229 * (float) i_113_);
			i_128_ = (((Class109) class109).anInt1668
				  + (int) (f_175_
					   * (float) (((SoftwareToolkit) aHa_Sub1_8217)
						      .anInt7497)
					   / (float) anInt8228));
		    }
		}
		boolean bool_176_
		    = (((Class266) class266).aShort3379 != -1
		       && method3997(((TextureDefinition)
				      (((AbstractToolkit) aHa_Sub1_8217).aD4579.getTexture
				       (((Class266) class266).aShort3379,
					-6662))).aByte213));
		if (anInt8228 == -1) {
		    int i_177_ = i_115_ + i_116_ + i_117_;
		    if (((i_125_ - i_127_) * (i_124_ - i_128_)
			 - (i_126_ - i_128_) * (i_123_ - i_127_))
			> 0) {
			((Class109) class109).aBoolean1671
			    = (i_125_ < 0 || i_127_ < 0 || i_123_ < 0
			       || i_125_ > ((Class109) class109).anInt1679
			       || i_127_ > ((Class109) class109).anInt1679
			       || i_123_ > ((Class109) class109).anInt1679);
			if (i_177_ < 765) {
			    if (i_177_ > 0) {
				if (((Class266) class266).aShort3379 >= 0) {
				    int i_178_ = -16777216;
				    if (bool_176_)
					i_178_ = -1694498816;
				    class109.method1024
					((float) i_126_, (float) i_128_,
					 (float) i_124_, (float) i_125_,
					 (float) i_127_, (float) i_123_,
					 f_119_, f_120_, f_118_, 1.0F, 0.0F,
					 1.0F, 1.0F, 1.0F, 0.0F,
					 i_178_ | (((Class266) class266)
						   .anInt3380) & 0xffffff,
					 i_178_ | (((Class266) class266)
						   .anInt3381) & 0xffffff,
					 i_178_ | (((Class266) class266)
						   .anInt3387) & 0xffffff,
					 ((Class167) class167).anInt2192,
					 i_116_, i_117_, i_115_,
					 ((Class266) class266).aShort3379);
				} else {
				    if (bool_176_)
					((Class109) class109).anInt1674 = 100;
				    class109.method1027
					((float) i_126_, (float) i_128_,
					 (float) i_124_, (float) i_125_,
					 (float) i_127_, (float) i_123_,
					 (float) (int) f_119_,
					 (float) (int) f_120_,
					 (float) (int) f_118_,
					 (Class6.method206
					  (((Class266) class266).anInt3380,
					   (i_116_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3381,
					   (i_117_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3387,
					   (i_115_ << 24
					    | ((Class167) class167).anInt2192),
					   255)));
				    ((Class109) class109).anInt1674 = 0;
				}
			    } else if (((Class266) class266).aShort3379 >= 0) {
				int i_179_ = -16777216;
				if (bool_176_)
				    i_179_ = -1694498816;
				class109.method1024
				    ((float) i_126_, (float) i_128_,
				     (float) i_124_, (float) i_125_,
				     (float) i_127_, (float) i_123_, f_119_,
				     f_120_, f_118_, 1.0F, 0.0F, 1.0F, 1.0F,
				     1.0F, 0.0F,
				     i_179_ | (((Class266) class266).anInt3380
					       & 0xffffff),
				     i_179_ | (((Class266) class266).anInt3381
					       & 0xffffff),
				     i_179_ | (((Class266) class266).anInt3387
					       & 0xffffff),
				     0, 0, 0, 0,
				     ((Class266) class266).aShort3379);
			    } else {
				if (bool_176_)
				    ((Class109) class109).anInt1674 = 100;
				class109.method1027
				    ((float) i_126_, (float) i_128_,
				     (float) i_124_, (float) i_125_,
				     (float) i_127_, (float) i_123_,
				     (float) (int) f_119_,
				     (float) (int) f_120_,
				     (float) (int) f_118_,
				     ((Class266) class266).anInt3380,
				     ((Class266) class266).anInt3381,
				     ((Class266) class266).anInt3387);
				((Class109) class109).anInt1674 = 0;
			    }
			} else
			    class109.method1018((float) i_126_, (float) i_128_,
						(float) i_124_, (float) i_125_,
						(float) i_127_, (float) i_123_,
						(float) (int) f_119_,
						(float) (int) f_120_,
						(float) (int) f_118_,
						(((Class167) class167)
						 .anInt2192));
		    }
		    i_177_ = i_114_ + i_115_ + i_117_;
		    if (((i_121_ - i_123_) * (i_128_ - i_124_)
			 - (i_122_ - i_124_) * (i_127_ - i_123_))
			> 0) {
			((Class109) class109).aBoolean1671
			    = (i_121_ < 0 || i_123_ < 0 || i_127_ < 0
			       || i_121_ > ((Class109) class109).anInt1679
			       || i_123_ > ((Class109) class109).anInt1679
			       || i_127_ > ((Class109) class109).anInt1679);
			if (i_177_ < 765) {
			    if (bool_176_)
				((Class109) class109).anInt1674 = -1694498816;
			    if (i_177_ > 0) {
				if (((Class266) class266).aShort3379 >= 0) {
				    int i_180_ = -16777216;
				    if (bool_176_)
					i_180_ = -1694498816;
				    class109.method1024
					((float) i_122_, (float) i_124_,
					 (float) i_128_, (float) i_121_,
					 (float) i_123_, (float) i_127_, f,
					 f_118_, f_120_, 0.0F, 1.0F, 1.0F,
					 0.0F, 0.0F, 1.0F,
					 i_180_ | (((Class266) class266)
						   .anInt3389) & 0xffffff,
					 i_180_ | (((Class266) class266)
						   .anInt3387) & 0xffffff,
					 i_180_ | (((Class266) class266)
						   .anInt3381) & 0xffffff,
					 ((Class167) class167).anInt2192,
					 i_114_, i_115_, i_117_,
					 ((Class266) class266).aShort3379);
				} else {
				    if (bool_176_)
					((Class109) class109).anInt1674 = 100;
				    class109.method1027
					((float) i_122_, (float) i_124_,
					 (float) i_128_, (float) i_121_,
					 (float) i_123_, (float) i_127_,
					 (float) (int) f, (float) (int) f_118_,
					 (float) (int) f_120_,
					 (Class6.method206
					  (((Class266) class266).anInt3389,
					   (i_114_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3387,
					   (i_115_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3381,
					   (i_117_ << 24
					    | ((Class167) class167).anInt2192),
					   255)));
				    ((Class109) class109).anInt1674 = 0;
				}
			    } else if (((Class266) class266).aShort3379 >= 0) {
				int i_181_ = -16777216;
				if (bool_176_)
				    i_181_ = -1694498816;
				class109.method1024
				    ((float) i_122_, (float) i_124_,
				     (float) i_128_, (float) i_121_,
				     (float) i_123_, (float) i_127_, f, f_118_,
				     f_120_, 0.0F, 1.0F, 1.0F, 0.0F, 0.0F,
				     1.0F,
				     i_181_ | (((Class266) class266).anInt3389
					       & 0xffffff),
				     i_181_ | (((Class266) class266).anInt3387
					       & 0xffffff),
				     i_181_ | (((Class266) class266).anInt3381
					       & 0xffffff),
				     0, 0, 0, 0,
				     ((Class266) class266).aShort3379);
			    } else {
				if (bool_176_)
				    ((Class109) class109).anInt1674 = 100;
				class109.method1027
				    ((float) i_122_, (float) i_124_,
				     (float) i_128_, (float) i_121_,
				     (float) i_123_, (float) i_127_,
				     (float) (int) f, (float) (int) f_118_,
				     (float) (int) f_120_,
				     ((Class266) class266).anInt3389,
				     ((Class266) class266).anInt3387,
				     ((Class266) class266).anInt3381);
				((Class109) class109).anInt1674 = 0;
			    }
			} else
			    class109.method1018((float) i_122_, (float) i_124_,
						(float) i_128_, (float) i_121_,
						(float) i_123_, (float) i_127_,
						(float) (int) f,
						(float) (int) f_118_,
						(float) (int) f_120_,
						(((Class167) class167)
						 .anInt2192));
		    }
		} else {
		    int i_182_ = i_115_ + i_116_ + i_117_;
		    if (((i_125_ - i_127_) * (i_124_ - i_128_)
			 - (i_126_ - i_128_) * (i_123_ - i_127_))
			> 0) {
			((Class109) class109).aBoolean1671
			    = (i_125_ < 0 || i_127_ < 0 || i_123_ < 0
			       || i_125_ > ((Class109) class109).anInt1679
			       || i_127_ > ((Class109) class109).anInt1679
			       || i_123_ > ((Class109) class109).anInt1679);
			if (i_182_ < 765) {
			    if (bool_176_)
				((Class109) class109).anInt1674 = -1694498816;
			    if (i_182_ > 0) {
				if (((Class266) class266).aShort3379 >= 0) {
				    int i_183_ = -16777216;
				    if (bool_176_)
					i_183_ = -1694498816;
				    class109.method1024
					((float) i_126_, (float) i_128_,
					 (float) i_124_, (float) i_125_,
					 (float) i_127_, (float) i_123_,
					 f_119_, f_120_, f_118_, 1.0F, 0.0F,
					 1.0F, 1.0F, 1.0F, 0.0F,
					 i_183_ | (((Class266) class266)
						   .anInt3380) & 0xffffff,
					 i_183_ | (((Class266) class266)
						   .anInt3381) & 0xffffff,
					 i_183_ | (((Class266) class266)
						   .anInt3387) & 0xffffff,
					 ((Class167) class167).anInt2192,
					 i_116_, i_117_, i_115_,
					 ((Class266) class266).aShort3379);
				} else {
				    if (bool_176_)
					((Class109) class109).anInt1674 = 100;
				    class109.method1027
					((float) i_126_, (float) i_128_,
					 (float) i_124_, (float) i_125_,
					 (float) i_127_, (float) i_123_,
					 (float) (int) f_119_,
					 (float) (int) f_120_,
					 (float) (int) f_118_,
					 (Class6.method206
					  (((Class266) class266).anInt3380,
					   (i_116_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3381,
					   (i_117_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3387,
					   (i_115_ << 24
					    | ((Class167) class167).anInt2192),
					   255)));
				    ((Class109) class109).anInt1674 = 0;
				}
			    } else if (((Class266) class266).aShort3379 >= 0) {
				int i_184_ = -16777216;
				if (bool_176_)
				    i_184_ = -1694498816;
				class109.method1024
				    ((float) i_126_, (float) i_128_,
				     (float) i_124_, (float) i_125_,
				     (float) i_127_, (float) i_123_, f_119_,
				     f_120_, f_118_, 1.0F, 0.0F, 1.0F, 1.0F,
				     1.0F, 0.0F,
				     i_184_ | (((Class266) class266).anInt3380
					       & 0xffffff),
				     i_184_ | (((Class266) class266).anInt3381
					       & 0xffffff),
				     i_184_ | (((Class266) class266).anInt3387
					       & 0xffffff),
				     0, 0, 0, 0,
				     ((Class266) class266).aShort3379);
			    } else {
				if (bool_176_)
				    ((Class109) class109).anInt1674 = 100;
				class109.method1027
				    ((float) i_126_, (float) i_128_,
				     (float) i_124_, (float) i_125_,
				     (float) i_127_, (float) i_123_,
				     (float) (int) f_119_,
				     (float) (int) f_120_,
				     (float) (int) f_118_,
				     ((Class266) class266).anInt3380,
				     ((Class266) class266).anInt3381,
				     ((Class266) class266).anInt3387);
				((Class109) class109).anInt1674 = 0;
			    }
			} else
			    class109.method1018((float) i_126_, (float) i_128_,
						(float) i_124_, (float) i_125_,
						(float) i_127_, (float) i_123_,
						(float) (int) f_119_,
						(float) (int) f_120_,
						(float) (int) f_118_,
						(((Class167) class167)
						 .anInt2192));
		    }
		    i_182_ = i_114_ + i_115_ + i_117_;
		    if (((i_121_ - i_123_) * (i_128_ - i_124_)
			 - (i_122_ - i_124_) * (i_127_ - i_123_))
			> 0) {
			((Class109) class109).aBoolean1671
			    = (i_121_ < 0 || i_123_ < 0 || i_127_ < 0
			       || i_121_ > ((Class109) class109).anInt1679
			       || i_123_ > ((Class109) class109).anInt1679
			       || i_127_ > ((Class109) class109).anInt1679);
			if (i_182_ < 765) {
			    if (bool_176_)
				((Class109) class109).anInt1674 = -1694498816;
			    if (i_182_ > 0) {
				if (((Class266) class266).aShort3379 >= 0) {
				    int i_185_ = -16777216;
				    if (bool_176_)
					i_185_ = -1694498816;
				    class109.method1024
					((float) i_122_, (float) i_124_,
					 (float) i_128_, (float) i_121_,
					 (float) i_123_, (float) i_127_, f,
					 f_118_, f_120_, 0.0F, 1.0F, 1.0F,
					 0.0F, 0.0F, 1.0F,
					 i_185_ | (((Class266) class266)
						   .anInt3389) & 0xffffff,
					 i_185_ | (((Class266) class266)
						   .anInt3387) & 0xffffff,
					 i_185_ | (((Class266) class266)
						   .anInt3381) & 0xffffff,
					 ((Class167) class167).anInt2192,
					 i_114_, i_115_, i_117_,
					 ((Class266) class266).aShort3379);
				} else {
				    if (bool_176_)
					((Class109) class109).anInt1674 = 100;
				    class109.method1027
					((float) i_122_, (float) i_124_,
					 (float) i_128_, (float) i_121_,
					 (float) i_123_, (float) i_127_,
					 (float) (int) f, (float) (int) f_118_,
					 (float) (int) f_120_,
					 (Class6.method206
					  (((Class266) class266).anInt3389,
					   (i_114_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3387,
					   (i_115_ << 24
					    | ((Class167) class167).anInt2192),
					   255)),
					 (Class6.method206
					  (((Class266) class266).anInt3381,
					   (i_117_ << 24
					    | ((Class167) class167).anInt2192),
					   255)));
				    ((Class109) class109).anInt1674 = 0;
				}
			    } else if (((Class266) class266).aShort3379 >= 0) {
				int i_186_ = -16777216;
				if (bool_176_)
				    i_186_ = -1694498816;
				class109.method1024
				    ((float) i_122_, (float) i_124_,
				     (float) i_128_, (float) i_121_,
				     (float) i_123_, (float) i_127_, f, f_118_,
				     f_120_, 0.0F, 1.0F, 1.0F, 0.0F, 0.0F,
				     1.0F,
				     i_186_ | (((Class266) class266).anInt3389
					       & 0xffffff),
				     i_186_ | (((Class266) class266).anInt3387
					       & 0xffffff),
				     i_186_ | (((Class266) class266).anInt3381
					       & 0xffffff),
				     0, 0, 0, 0,
				     ((Class266) class266).aShort3379);
			    } else {
				if (bool_176_)
				    ((Class109) class109).anInt1674 = 100;
				class109.method1027
				    ((float) i_122_, (float) i_124_,
				     (float) i_128_, (float) i_121_,
				     (float) i_123_, (float) i_127_,
				     (float) (int) f, (float) (int) f_118_,
				     (float) (int) f_120_,
				     ((Class266) class266).anInt3389,
				     ((Class266) class266).anInt3387,
				     ((Class266) class266).anInt3381);
				((Class109) class109).anInt1674 = 0;
			    }
			} else
			    class109.method1018((float) i_122_, (float) i_124_,
						(float) i_128_, (float) i_121_,
						(float) i_123_, (float) i_127_,
						(float) (int) f,
						(float) (int) f_118_,
						(float) (int) f_120_,
						(((Class167) class167)
						 .anInt2192));
		    }
		}
	    }
	} else {
	    Class145 class145 = aClass145ArrayArray8225[i][i_105_];
	    if (class145 != null) {
		if (i_109_ != 0) {
		    if ((((Class145) class145).aByte2004 & 0x4) != 0) {
			if ((i_109_ & 0x1) != 0)
			    return;
		    } else if ((i_109_ & 0x2) != 0)
			return;
		}
		if (anInt8228 == -1) {
		    for (int i_187_ = 0;
			 i_187_ < ((Class145) class145).aShort2003; i_187_++) {
			int i_188_
			    = (((Class145) class145).aShortArray2009[i_187_]
			       + (i << ((s) this).anInt4588));
			int i_189_
			    = ((Class145) class145).aShortArray2007[i_187_];
			int i_190_
			    = (((Class145) class145).aShortArray2002[i_187_]
			       + (i_105_ << ((s) this).anInt4588));
			float f = aFloat8218 + (aFloat8233 * (float) i_188_
						+ aFloat8227 * (float) i_189_
						+ aFloat8231 * (float) i_190_);
			if (f <= (float) ((SoftwareToolkit) aHa_Sub1_8217).anInt7482)
			    return;
			is_108_[i_187_] = 0;
			if (bool) {
			    int i_191_
				= (int) (f - (float) (((Class167) class167)
						      .anInt2210));
			    if (i_191_ > 255)
				i_191_ = 255;
			    if (i_191_ > 0) {
				is_108_[i_187_] = i_191_;
				int i_192_ = ((((Class145) class145)
					       .aShortArray2006[i_187_])
					      * i_191_ / 255);
				if (i_192_ > 0)
				    i_189_ -= i_192_;
			    }
			} else if (((Class167) class167).aBoolean2201) {
			    int i_193_
				= (int) (f - (float) (((Class167) class167)
						      .anInt2210));
			    if (i_193_ > 0) {
				is_108_[i_187_] = i_193_;
				if (is_108_[i_187_] > 255)
				    is_108_[i_187_] = 255;
			    }
			}
			float f_194_
			    = aFloat8213 + (aFloat8212 * (float) i_188_
					    + aFloat8216 * (float) i_189_
					    + aFloat8224 * (float) i_190_);
			float f_195_
			    = aFloat8226 + (aFloat8214 * (float) i_188_
					    + aFloat8221 * (float) i_189_
					    + aFloat8229 * (float) i_190_);
			is[i_187_]
			    = (((Class109) class109).anInt1665
			       + (int) (f_194_
					* (float) (((SoftwareToolkit) aHa_Sub1_8217)
						   .anInt7491)
					/ f));
			is_106_[i_187_]
			    = (((Class109) class109).anInt1668
			       + (int) (f_195_
					* (float) (((SoftwareToolkit) aHa_Sub1_8217)
						   .anInt7497)
					/ f));
			is_107_[i_187_] = (int) f;
		    }
		} else {
		    for (int i_196_ = 0;
			 i_196_ < ((Class145) class145).aShort2003; i_196_++) {
			int i_197_
			    = (((Class145) class145).aShortArray2009[i_196_]
			       + (i << ((s) this).anInt4588));
			int i_198_
			    = ((Class145) class145).aShortArray2007[i_196_];
			int i_199_
			    = (((Class145) class145).aShortArray2002[i_196_]
			       + (i_105_ << ((s) this).anInt4588));
			float f = aFloat8218 + (aFloat8233 * (float) i_197_
						+ aFloat8227 * (float) i_198_
						+ aFloat8231 * (float) i_199_);
			is_108_[i_196_] = 0;
			if (bool) {
			    int i_200_
				= anInt8228 - ((Class167) class167).anInt2210;
			    if (i_200_ > 255)
				i_200_ = 255;
			    if (i_200_ > 0) {
				is_108_[i_196_] = i_200_;
				int i_201_ = ((((Class145) class145)
					       .aShortArray2006[i_196_])
					      * i_200_ / 255);
				if (i_201_ > 0)
				    i_198_ -= i_201_;
			    }
			} else if (((Class167) class167).aBoolean2201) {
			    int i_202_
				= anInt8228 - ((Class167) class167).anInt2210;
			    if (i_202_ > 0) {
				is_108_[i_196_] = i_202_;
				if (is_108_[i_196_] > 255)
				    is_108_[i_196_] = 255;
			    }
			}
			float f_203_
			    = aFloat8213 + (aFloat8212 * (float) i_197_
					    + aFloat8216 * (float) i_198_
					    + aFloat8224 * (float) i_199_);
			float f_204_
			    = aFloat8226 + (aFloat8214 * (float) i_197_
					    + aFloat8221 * (float) i_198_
					    + aFloat8229 * (float) i_199_);
			is[i_196_]
			    = (((Class109) class109).anInt1665
			       + (int) (f_203_
					* (float) (((SoftwareToolkit) aHa_Sub1_8217)
						   .anInt7491)
					/ (float) anInt8228));
			is_106_[i_196_]
			    = (((Class109) class109).anInt1668
			       + (int) (f_204_
					* (float) (((SoftwareToolkit) aHa_Sub1_8217)
						   .anInt7497)
					/ (float) anInt8228));
			is_107_[i_196_] = (int) f;
		    }
		}
		if (((Class145) class145).aShortArray2008 != null) {
		    if (anInt8228 == -1) {
			for (int i_205_ = 0;
			     i_205_ < ((Class145) class145).aShort2010;
			     i_205_++) {
			    int i_206_ = i_205_ * 3;
			    int i_207_ = i_206_ + 1;
			    int i_208_ = i_207_ + 1;
			    int i_209_ = is[i_206_];
			    int i_210_ = is[i_207_];
			    int i_211_ = is[i_208_];
			    int i_212_ = is_106_[i_206_];
			    int i_213_ = is_106_[i_207_];
			    int i_214_ = is_106_[i_208_];
			    int i_215_ = (is_108_[i_206_] + is_108_[i_207_]
					  + is_108_[i_208_]);
			    if (((i_209_ - i_210_) * (i_214_ - i_213_)
				 - (i_212_ - i_213_) * (i_211_ - i_210_))
				> 0) {
				((Class109) class109).aBoolean1671
				    = (i_209_ < 0 || i_210_ < 0 || i_211_ < 0
				       || (i_209_
					   > ((Class109) class109).anInt1679)
				       || (i_210_
					   > ((Class109) class109).anInt1679)
				       || (i_211_
					   > ((Class109) class109).anInt1679));
				short i_216_ = (((Class145) class145)
						.aShortArray2008[i_205_]);
				if (i_215_ < 765) {
				    if (i_215_ > 0) {
					if (i_216_ != -1) {
					    int i_217_ = -16777216;
					    if (i_216_ != -1
						&& method3997(((TextureDefinition)
							       (((AbstractToolkit)
								 aHa_Sub1_8217)
								    .aD4579
								    .getTexture
								(i_216_,
								 -6662)))
							      .aByte213))
						i_217_ = -1694498816;
					    class109.method1024
						((float) i_212_,
						 (float) i_213_,
						 (float) i_214_,
						 (float) i_209_,
						 (float) i_210_,
						 (float) i_211_,
						 (float) is_107_[i_206_],
						 (float) is_107_[i_207_],
						 (float) is_107_[i_208_],
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_206_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_207_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_208_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_206_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_207_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_208_])
						  / (float) (((s) this)
							     .anInt4592)),
						 (i_217_
						  | ((((Class145) class145)
						      .anIntArray2001[i_206_])
						     & 0xffffff)),
						 (i_217_
						  | ((((Class145) class145)
						      .anIntArray2001[i_207_])
						     & 0xffffff)),
						 (i_217_
						  | ((((Class145) class145)
						      .anIntArray2001[i_208_])
						     & 0xffffff)),
						 (((Class167) class167)
						  .anInt2192),
						 is_108_[i_206_],
						 is_108_[i_207_],
						 is_108_[i_208_], i_216_);
					} else if (((((Class145) class145)
						     .anIntArray2001[i_206_])
						    & 0xffffff)
						   != 0) {
					    if (i_216_ != -1
						&& method3997(((TextureDefinition)
							       (((AbstractToolkit)
								 aHa_Sub1_8217)
								    .aD4579
								    .getTexture
								(i_216_,
								 -6662)))
							      .aByte213))
						((Class109) class109).anInt1674
						    = -1694498816;
					    class109.method1027
						((float) i_212_,
						 (float) i_213_,
						 (float) i_214_,
						 (float) i_209_,
						 (float) i_210_,
						 (float) i_211_,
						 (float) is_107_[i_206_],
						 (float) is_107_[i_207_],
						 (float) is_107_[i_208_],
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_206_]),
						   (is_108_[i_206_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)),
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_207_]),
						   (is_108_[i_207_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)),
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_208_]),
						   (is_108_[i_208_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)));
					    ((Class109) class109).anInt1674
						= 0;
					}
				    } else if (i_216_ != -1) {
					int i_218_ = -16777216;
					if (i_216_ != -1
					    && (method3997
						(((TextureDefinition)
						  ((AbstractToolkit) aHa_Sub1_8217)
						      .aD4579
						      .getTexture(i_216_, -6662))
						 .aByte213)))
					    i_218_ = -1694498816;
					class109.method1024
					    ((float) i_212_, (float) i_213_,
					     (float) i_214_, (float) i_209_,
					     (float) i_210_, (float) i_211_,
					     (float) is_107_[i_206_],
					     (float) is_107_[i_207_],
					     (float) is_107_[i_208_],
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_206_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_207_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_208_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_206_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_207_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_208_])
					      / (float) ((s) this).anInt4592),
					     i_218_ | (((Class145) class145)
						       .anIntArray2001
						       [i_206_]) & 0xffffff,
					     i_218_ | (((Class145) class145)
						       .anIntArray2001
						       [i_207_]) & 0xffffff,
					     i_218_ | (((Class145) class145)
						       .anIntArray2001
						       [i_208_]) & 0xffffff,
					     0, 0, 0, 0, i_216_);
				    } else if (((((Class145) class145)
						 .anIntArray2001[i_206_])
						& 0xffffff)
					       != 0) {
					if (i_216_ != -1
					    && (method3997
						(((TextureDefinition)
						  ((AbstractToolkit) aHa_Sub1_8217)
						      .aD4579
						      .getTexture(i_216_, -6662))
						 .aByte213)))
					    ((Class109) class109).anInt1674
						= -1694498816;
					class109.method1027
					    ((float) i_212_, (float) i_213_,
					     (float) i_214_, (float) i_209_,
					     (float) i_210_, (float) i_211_,
					     (float) is_107_[i_206_],
					     (float) is_107_[i_207_],
					     (float) is_107_[i_208_],
					     (((Class145) class145)
					      .anIntArray2001[i_206_]),
					     (((Class145) class145)
					      .anIntArray2001[i_207_]),
					     (((Class145) class145)
					      .anIntArray2001[i_208_]));
					((Class109) class109).anInt1674 = 0;
				    }
				} else
				    class109.method1018
					((float) i_212_, (float) i_213_,
					 (float) i_214_, (float) i_209_,
					 (float) i_210_, (float) i_211_,
					 (float) is_107_[i_206_],
					 (float) is_107_[i_207_],
					 (float) is_107_[i_208_],
					 ((Class167) class167).anInt2192);
			    }
			}
		    } else {
			for (int i_219_ = 0;
			     i_219_ < ((Class145) class145).aShort2010;
			     i_219_++) {
			    int i_220_ = i_219_ * 3;
			    int i_221_ = i_220_ + 1;
			    int i_222_ = i_221_ + 1;
			    int i_223_ = is[i_220_];
			    int i_224_ = is[i_221_];
			    int i_225_ = is[i_222_];
			    int i_226_ = is_106_[i_220_];
			    int i_227_ = is_106_[i_221_];
			    int i_228_ = is_106_[i_222_];
			    int i_229_ = (is_108_[i_220_] + is_108_[i_221_]
					  + is_108_[i_222_]);
			    if (((i_223_ - i_224_) * (i_228_ - i_227_)
				 - (i_226_ - i_227_) * (i_225_ - i_224_))
				> 0) {
				((Class109) class109).aBoolean1671
				    = (i_223_ < 0 || i_224_ < 0 || i_225_ < 0
				       || (i_223_
					   > ((Class109) class109).anInt1679)
				       || (i_224_
					   > ((Class109) class109).anInt1679)
				       || (i_225_
					   > ((Class109) class109).anInt1679));
				short i_230_ = (((Class145) class145)
						.aShortArray2008[i_219_]);
				if (i_229_ < 765) {
				    if (i_230_ != -1
					&& method3997(((TextureDefinition)
						       (((AbstractToolkit) aHa_Sub1_8217)
							    .aD4579.getTexture
							(i_230_, -6662)))
						      .aByte213))
					((Class109) class109).anInt1674
					    = -1694498816;
				    if (i_229_ > 0) {
					if (i_230_ != -1) {
					    int i_231_ = -16777216;
					    if (i_230_ != -1
						&& method3997(((TextureDefinition)
							       (((AbstractToolkit)
								 aHa_Sub1_8217)
								    .aD4579
								    .getTexture
								(i_230_,
								 -6662)))
							      .aByte213))
						i_231_ = -1694498816;
					    class109.method1024
						((float) i_226_,
						 (float) i_227_,
						 (float) i_228_,
						 (float) i_223_,
						 (float) i_224_,
						 (float) i_225_,
						 (float) is_107_[i_220_],
						 (float) is_107_[i_221_],
						 (float) is_107_[i_222_],
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_220_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_221_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2009
							   [i_222_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_220_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_221_])
						  / (float) (((s) this)
							     .anInt4592)),
						 ((float) (((Class145)
							    class145)
							   .aShortArray2002
							   [i_222_])
						  / (float) (((s) this)
							     .anInt4592)),
						 (i_231_
						  | ((((Class145) class145)
						      .anIntArray2001[i_220_])
						     & 0xffffff)),
						 (i_231_
						  | ((((Class145) class145)
						      .anIntArray2001[i_221_])
						     & 0xffffff)),
						 (i_231_
						  | ((((Class145) class145)
						      .anIntArray2001[i_222_])
						     & 0xffffff)),
						 (((Class167) class167)
						  .anInt2192),
						 is_108_[i_220_],
						 is_108_[i_221_],
						 is_108_[i_222_], i_230_);
					} else if (((((Class145) class145)
						     .anIntArray2001[i_220_])
						    & 0xffffff)
						   != 0) {
					    if (i_230_ != -1
						&& method3997(((TextureDefinition)
							       (((AbstractToolkit)
								 aHa_Sub1_8217)
								    .aD4579
								    .getTexture
								(i_230_,
								 -6662)))
							      .aByte213))
						((Class109) class109).anInt1674
						    = -1694498816;
					    class109.method1027
						((float) i_226_,
						 (float) i_227_,
						 (float) i_228_,
						 (float) i_223_,
						 (float) i_224_,
						 (float) i_225_,
						 (float) is_107_[i_220_],
						 (float) is_107_[i_221_],
						 (float) is_107_[i_222_],
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_220_]),
						   (is_108_[i_220_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)),
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_221_]),
						   (is_108_[i_221_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)),
						 (Class6.method206
						  ((((Class145) class145)
						    .anIntArray2001[i_222_]),
						   (is_108_[i_222_] << 24
						    | (((Class167) class167)
						       .anInt2192)),
						   255)));
					    ((Class109) class109).anInt1674
						= 0;
					}
				    } else if (i_230_ != -1) {
					int i_232_ = -16777216;
					if (i_230_ != -1
					    && (method3997
						(((TextureDefinition)
						  ((AbstractToolkit) aHa_Sub1_8217)
						      .aD4579
						      .getTexture(i_230_, -6662))
						 .aByte213)))
					    i_232_ = -1694498816;
					class109.method1024
					    ((float) i_226_, (float) i_227_,
					     (float) i_228_, (float) i_223_,
					     (float) i_224_, (float) i_225_,
					     (float) is_107_[i_220_],
					     (float) is_107_[i_221_],
					     (float) is_107_[i_222_],
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_220_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_221_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2009
						       [i_222_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_220_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_221_])
					      / (float) ((s) this).anInt4592),
					     ((float) (((Class145) class145)
						       .aShortArray2002
						       [i_222_])
					      / (float) ((s) this).anInt4592),
					     i_232_ | (((Class145) class145)
						       .anIntArray2001
						       [i_220_]) & 0xffffff,
					     i_232_ | (((Class145) class145)
						       .anIntArray2001
						       [i_221_]) & 0xffffff,
					     i_232_ | (((Class145) class145)
						       .anIntArray2001
						       [i_222_]) & 0xffffff,
					     0, 0, 0, 0, i_230_);
				    } else if (((((Class145) class145)
						 .anIntArray2001[i_220_])
						& 0xffffff)
					       != 0) {
					if (i_230_ != -1
					    && (method3997
						(((TextureDefinition)
						  ((AbstractToolkit) aHa_Sub1_8217)
						      .aD4579
						      .getTexture(i_230_, -6662))
						 .aByte213)))
					    ((Class109) class109).anInt1674
						= -1694498816;
					class109.method1027
					    ((float) i_226_, (float) i_227_,
					     (float) i_228_, (float) i_223_,
					     (float) i_224_, (float) i_225_,
					     (float) is_107_[i_220_],
					     (float) is_107_[i_221_],
					     (float) is_107_[i_222_],
					     (((Class145) class145)
					      .anIntArray2001[i_220_]),
					     (((Class145) class145)
					      .anIntArray2001[i_221_]),
					     (((Class145) class145)
					      .anIntArray2001[i_222_]));
					((Class109) class109).anInt1674 = 0;
				    }
				    ((Class109) class109).anInt1674 = 0;
				} else
				    class109.method1018
					((float) i_226_, (float) i_227_,
					 (float) i_228_, (float) i_223_,
					 (float) i_224_, (float) i_225_,
					 (float) is_107_[i_220_],
					 (float) is_107_[i_221_],
					 (float) is_107_[i_222_],
					 ((Class167) class167).anInt2192);
			    }
			}
		    }
		} else {
		    for (int i_233_ = 0;
			 i_233_ < ((Class145) class145).aShort2010; i_233_++) {
			int i_234_ = i_233_ * 3;
			int i_235_ = i_234_ + 1;
			int i_236_ = i_235_ + 1;
			int i_237_ = is[i_234_];
			int i_238_ = is[i_235_];
			int i_239_ = is[i_236_];
			int i_240_ = is_106_[i_234_];
			int i_241_ = is_106_[i_235_];
			int i_242_ = is_106_[i_236_];
			int i_243_ = (is_108_[i_234_] + is_108_[i_235_]
				      + is_108_[i_236_]);
			if (((i_237_ - i_238_) * (i_242_ - i_241_)
			     - (i_240_ - i_241_) * (i_239_ - i_238_))
			    > 0) {
			    ((Class109) class109).aBoolean1671
				= (i_237_ < 0 || i_238_ < 0 || i_239_ < 0
				   || i_237_ > ((Class109) class109).anInt1679
				   || i_238_ > ((Class109) class109).anInt1679
				   || (i_239_
				       > ((Class109) class109).anInt1679));
			    if (i_243_ < 765) {
				if (i_243_ > 0) {
				    if (((((Class145) class145).anIntArray2001
					  [i_234_])
					 & 0xffffff)
					!= 0)
					class109.method1027
					    ((float) i_240_, (float) i_241_,
					     (float) i_242_, (float) i_237_,
					     (float) i_238_, (float) i_239_,
					     (float) is_107_[i_234_],
					     (float) is_107_[i_235_],
					     (float) is_107_[i_236_],
					     (Class298.method2250
					      ((((Class145) class145)
						.anIntArray2001[i_234_]),
					       117, is_108_[i_234_],
					       (((Class167) class167)
						.anInt2192))),
					     (Class298.method2250
					      ((((Class145) class145)
						.anIntArray2001[i_235_]),
					       60, is_108_[i_235_],
					       (((Class167) class167)
						.anInt2192))),
					     (Class298.method2250
					      ((((Class145) class145)
						.anIntArray2001[i_236_]),
					       95, is_108_[i_236_],
					       (((Class167) class167)
						.anInt2192))));
				} else if (((((Class145) class145)
					     .anIntArray2001[i_234_])
					    & 0xffffff)
					   != 0)
				    class109.method1027
					((float) i_240_, (float) i_241_,
					 (float) i_242_, (float) i_237_,
					 (float) i_238_, (float) i_239_,
					 (float) is_107_[i_234_],
					 (float) is_107_[i_235_],
					 (float) is_107_[i_236_],
					 (((Class145) class145).anIntArray2001
					  [i_234_]),
					 (((Class145) class145).anIntArray2001
					  [i_235_]),
					 (((Class145) class145).anIntArray2001
					  [i_236_]));
			    } else
				class109.method1018((float) i_240_,
						    (float) i_241_,
						    (float) i_242_,
						    (float) i_237_,
						    (float) i_238_,
						    (float) i_239_,
						    (float) is_107_[i_234_],
						    (float) is_107_[i_235_],
						    (float) is_107_[i_236_],
						    (((Class167) class167)
						     .anInt2192));
			}
		    }
		}
	    }
	}
    }