@@ -23,17 +23,30 @@ static final void method3174(int i, int i_0_, int i_1_, boolean bool, byte i_2_,
2323 int i_4_ = i_3_ - 334 ;
2424 if (i_4_ < 0 ) i_4_ = 0 ;
2525 else if (i_4_ > 100 ) i_4_ = 100 ;
26- int i_5_ = ((-Class110 .aShort1700 + Class168 .aShort2250 ) * i_4_ / 100 + Class110 .aShort1700 );
27- if (i_5_ < Class348_Sub42_Sub8 .aShort9555 ) i_5_ = Class348_Sub42_Sub8 .aShort9555 ;
28- else if (Class48 .aShort851 < i_5_ ) i_5_ = Class48 .aShort851 ;
29- int i_6_ = 512 * i_5_ * i_3_ / (i_1_ * 334 );
26+ int adjustedZoom = ((-Class110 .aShort1700 + Class168 .aShort2250 ) * i_4_ / 100 + Class110 .aShort1700 );
27+ int base = adjustedZoom ;
28+ if (Class320 .zoomStep != 0 ) adjustedZoom += Class320 .zoomStep ;
29+ int min = Class110 .aShort1700 * Loader .FOV_MIN_FACTOR_NUM / Loader .FOV_MIN_FACTOR_DEN ;
30+ int max = Class168 .aShort2250 * Loader .FOV_MAX_FACTOR_NUM / Loader .FOV_MAX_FACTOR_DEN ;
31+ if (min < Loader .FOV_MIN_ABS ) min = Loader .FOV_MIN_ABS ;
32+ if (min > max ) {
33+ int tmp = min ;
34+ min = max ;
35+ max = tmp ;
36+ }
37+ if (adjustedZoom < min ) adjustedZoom = min ;
38+ else if (adjustedZoom > max ) adjustedZoom = max ;
39+ if (Class320 .zoomStep != 0 ) Class320 .zoomStep = adjustedZoom - base ;
40+ if (adjustedZoom < Class348_Sub42_Sub8 .aShort9555 ) adjustedZoom = Class348_Sub42_Sub8 .aShort9555 ;
41+ else if (Class48 .aShort851 < adjustedZoom ) adjustedZoom = Class48 .aShort851 ;
42+ int i_6_ = 512 * adjustedZoom * i_3_ / (i_1_ * 334 );
3043 if (i_6_ >= Class367_Sub8 .aShort7355 ) {
3144 if (i_6_ > Class171 .aShort2269 ) {
3245 i_6_ = Class171 .aShort2269 ;
33- i_5_ = i_1_ * i_6_ * 334 / (i_3_ * 512 );
34- if (i_5_ < Class348_Sub42_Sub8 .aShort9555 ) {
35- i_5_ = Class348_Sub42_Sub8 .aShort9555 ;
36- int i_7_ = i_6_ * (i_1_ * 334 ) / (i_5_ * 512 );
46+ adjustedZoom = i_1_ * i_6_ * 334 / (i_3_ * 512 );
47+ if (adjustedZoom < Class348_Sub42_Sub8 .aShort9555 ) {
48+ adjustedZoom = Class348_Sub42_Sub8 .aShort9555 ;
49+ int i_7_ = i_6_ * (i_1_ * 334 ) / (adjustedZoom * 512 );
3750 int i_8_ = (-i_7_ + i_3_ ) / 2 ;
3851 if (bool ) {
3952 Class348_Sub8 .aHa6654 .la ();
@@ -46,10 +59,10 @@ static final void method3174(int i, int i_0_, int i_1_, boolean bool, byte i_2_,
4659 }
4760 } else {
4861 i_6_ = Class367_Sub8 .aShort7355 ;
49- i_5_ = i_6_ * (i_1_ * 334 ) / (i_3_ * 512 );
50- if (Class48 .aShort851 < i_5_ ) {
51- i_5_ = Class48 .aShort851 ;
52- int i_9_ = i_5_ * i_3_ * 512 / (334 * i_6_ );
62+ adjustedZoom = i_6_ * (i_1_ * 334 ) / (i_3_ * 512 );
63+ if (Class48 .aShort851 < adjustedZoom ) {
64+ adjustedZoom = Class48 .aShort851 ;
65+ int i_9_ = adjustedZoom * i_3_ * 512 / (334 * i_6_ );
5366 int i_10_ = (i_1_ + -i_9_ ) / 2 ;
5467 if (bool ) {
5568 Class348_Sub8 .aHa6654 .la ();
@@ -60,7 +73,7 @@ static final void method3174(int i, int i_0_, int i_1_, boolean bool, byte i_2_,
6073 i_1_ -= i_10_ * 2 ;
6174 }
6275 }
63- Class97 .anInt1550 = i_3_ * i_5_ / 334 ;
76+ Class97 .anInt1550 = i_3_ * adjustedZoom / 334 ;
6477 Class234 .anInt3047 = i_0_ ;
6578 Class280 .anInt3643 = (short ) i_3_ ;
6679 Class127 .anInt4656 = (short ) i_1_ ;
0 commit comments