deep-c-rsc/jcgo_Out/Scene.c

6435 lines
198 KiB
C

/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */
#ifdef JCGO_SEPARATED
#define JCGO_116
#include "jcgortl.h"
#include "Main.h"
#endif
#ifdef JCGO_116
#ifdef CHKALL_Scene
#include "jcgobchk.h"
#endif
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__clear__( package_Scene This )
{
{
jObject jcgo_rcvrL1;
JCGO_FIELD_NZACCESS(This, spriteCount)= 0;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, view), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__clear__(
(package_GameModel)jcgo_rcvrL1));
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__initialisePolygon3d__I( package_Scene This, jint i
)
{
{
package_Polygon polygon;
package_GameModel gameModel;
jintArr faceVertices;
jint face;
jint faceNumVertices;
jint faceCameraNormalScale;
jint vcx;
jint vcy;
jint vcz;
jint vcx1;
jint vcy1;
jint vcz1;
jint vcx2;
jint vcy2;
jint vcz2;
jint t1;
jint t2;
jint t3;
jint j4;
jint k4;
jint l4;
jint i5;
jint j5;
jint k5;
polygon= ((package_Polygon)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
visiblePolygons), i));
gameModel= JCGO_FIELD_ACCESS(package_Polygon, polygon, model);
face= JCGO_FIELD_NZACCESS(polygon, face);
faceVertices= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel, faceVertices), face));
faceNumVertices= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
faceNumVertices), face);
faceCameraNormalScale= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
normalScale), face);
vcx= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_IACCESS(faceVertices, 0));
vcy= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(faceVertices, 0));
vcz= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(faceVertices, 0));
vcx1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)1)) - vcx;
vcy1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)1)) - vcy;
vcz1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)1)) - vcz;
vcx2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)2)) - vcx;
vcy2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)2)) - vcy;
vcz2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(faceVertices, (jint)2)) - vcz;
t1= vcy1 * vcz2 - vcy2 * vcz1;
t2= vcz1 * vcx2 - vcz2 * vcx1;
t3= vcx1 * vcy2 - vcx2 * vcy1;
if (faceCameraNormalScale == (-(jint)1))
{
jdouble jcgo_rcvrD1;
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
faceCameraNormalScale= 0;
for (; t1 > (jint)25000 || t2 > (jint)25000 || t3 > (jint)25000 ||
t1 < (-(jint)25000) || t2 < (-(jint)25000) || t3 < (-(jint)25000);
t3= JCGO_SHR_F(t3, (jint)1))
{
faceCameraNormalScale++;
t1= JCGO_SHR_F(t1, (jint)1);
t2= JCGO_SHR_F(t2, (jint)1);
}
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, normalScale),
face)= faceCameraNormalScale;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(gameModel, normalMagnitude),
jcgo_rcvrI1= face, jcgo_rcvrI2= JCGO_JDOUBLE_TOJINT((jcgo_rcvrD1=
(jdouble)JCGO_FIELD_NZACCESS(This, normalMagnitude), jcgo_rcvrD1 *
(java_lang_Math__sqrt__D(
(jdouble)(t1 * t1 + t2 * t2 + t3 * t3))))), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
}
else
{
t1= JCGO_SHR_F(t1, faceCameraNormalScale);
t2= JCGO_SHR_F(t2, faceCameraNormalScale);
t3= JCGO_SHR_F(t3, faceCameraNormalScale);
}
JCGO_FIELD_NZACCESS(polygon, visibility)= vcx * t1 + vcy * t2 + vcz *
t3;
JCGO_FIELD_NZACCESS(polygon, normalX)= t1;
JCGO_FIELD_NZACCESS(polygon, normalY)= t2;
JCGO_FIELD_NZACCESS(polygon, normalZ)= t3;
j4= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(faceVertices, 0));
k4= j4;
l4= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(faceVertices, 0));
i5= l4;
j5= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_NZIACCESS(faceVertices, 0));
k5= j5;
{
jint l5;
l5= (jint)1;
for (; l5 < faceNumVertices; l5++)
{
jint i1;
i1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(faceVertices, l5));
if (i1 > k4)
{
k4= i1;
}
else
{
if (i1 < j4)
{
j4= i1;
}
}
i1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(faceVertices, l5));
if (i1 > i5)
{
i5= i1;
}
else
{
if (i1 < l4)
{
l4= i1;
}
}
i1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_NZIACCESS(faceVertices, l5));
if (i1 > k5)
{
k5= i1;
}
else
{
if (i1 < j5)
{
j5= i1;
}
}
}
}
JCGO_FIELD_NZACCESS(polygon, minZ)= j4;
JCGO_FIELD_NZACCESS(polygon, maxZ)= k4;
JCGO_FIELD_NZACCESS(polygon, minPlaneX)= l4;
JCGO_FIELD_NZACCESS(polygon, maxPlaneX)= i5;
JCGO_FIELD_NZACCESS(polygon, minPlaneY)= j5;
JCGO_FIELD_NZACCESS(polygon, maxPlaneY)= k5;
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__initialisePolygon2d__I( package_Scene This, jint i
)
{
{
package_Polygon polygon;
package_GameModel gameModel;
jintArr ai;
jint j;
jint l;
jint i1;
jint j1;
jint k1;
jint l1;
jint i2;
jint j2;
jint k2;
jint l2;
jint i3;
jint j3;
jint k3;
jint k;
polygon= ((package_Polygon)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
visiblePolygons), i));
gameModel= JCGO_FIELD_ACCESS(package_Polygon, polygon, model);
j= JCGO_FIELD_NZACCESS(polygon, face);
ai= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel, faceVertices), j));
l= 0;
i1= 0;
j1= (jint)1;
k1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_IACCESS(ai, 0));
l1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(ai, 0));
i2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai, 0));
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, normalMagnitude),
j)= (jint)1;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, normalScale), j)=
0;
JCGO_FIELD_NZACCESS(polygon, visibility)= k1 * l + l1 * i1 + i2 *
j1;
JCGO_FIELD_NZACCESS(polygon, normalX)= l;
JCGO_FIELD_NZACCESS(polygon, normalY)= i1;
JCGO_FIELD_NZACCESS(polygon, normalZ)= j1;
j2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai, 0));
k2= j2;
l2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(ai, 0));
i3= l2;
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(ai, (jint)1)) < l2)
{
l2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
}
else
{
i3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
}
j3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
k3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_NZIACCESS(ai, 0));
k= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
if (k > k2)
{
k2= k;
}
else
{
if (k < j2)
{
j2= k;
}
}
k= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
if (k > i3)
{
i3= k;
}
else
{
if (k < l2)
{
l2= k;
}
}
k= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_NZIACCESS(ai, (jint)1));
if (k > k3)
{
k3= k;
}
else
{
if (k < j3)
{
j3= k;
}
}
JCGO_FIELD_NZACCESS(polygon, minZ)= j2;
JCGO_FIELD_NZACCESS(polygon, maxZ)= k2;
JCGO_FIELD_NZACCESS(polygon, minPlaneX)= l2 - (jint)20;
JCGO_FIELD_NZACCESS(polygon, maxPlaneX)= i3 + (jint)20;
JCGO_FIELD_NZACCESS(polygon, minPlaneY)= j3;
JCGO_FIELD_NZACCESS(polygon, maxPlaneY)= k3;
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__polygonsIntersectSort__IL06628AI( package_Scene This,
jObjectArr polygons, jint step, jint count )
{
{
jint l;
{
jint i;
i= 0;
for (; i <= count; i++)
{
JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_LACCESS(polygons,
i)), skipSomething)= (jboolean)jfalse;
JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
i)), index)= i;
JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
i)), index2)= (-(jint)1);
}
}
l= 0;
do
{
package_Polygon polygon;
jint i1;
jint j1;
while (JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_LACCESS(polygons,
l)), skipSomething))
{
l++;
}
if (l == count)
{
return;
}
polygon= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, l));
JCGO_FIELD_ACCESS(package_Polygon, polygon, skipSomething)= (jboolean)jtrue;
i1= l;
j1= l + step;
if (j1 >= count)
{
j1= count - (jint)1;
}
{
jint k1;
k1= j1;
for (; k1 >= i1 + (jint)1; k1--)
{
package_Polygon other;
other= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, k1));
if (JCGO_FIELD_NZACCESS(polygon, minPlaneX) < JCGO_FIELD_ACCESS(package_Polygon,
other, maxPlaneX) && JCGO_FIELD_NZACCESS(other, minPlaneX) <
JCGO_FIELD_NZACCESS(polygon, maxPlaneX) && JCGO_FIELD_NZACCESS(polygon,
minPlaneY) < JCGO_FIELD_NZACCESS(other, maxPlaneY) && JCGO_FIELD_NZACCESS(other,
minPlaneY) < JCGO_FIELD_NZACCESS(polygon, maxPlaneY) && JCGO_FIELD_NZACCESS(polygon,
index) != JCGO_FIELD_NZACCESS(other, index2) && !(package_Scene__separatePolygon__L06628L06628(
This, polygon, other)) && (package_Scene__heuristicPolygon__L06628L06628(
This, other, polygon)))
{
(package_Scene__polygonsOrder__L06628AII(
This, polygons, i1, k1));
if (((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, k1)) !=
other)
{
k1++;
}
i1= JCGO_FIELD_NZACCESS(This, newStart);
JCGO_FIELD_NZACCESS(other, index2)= JCGO_FIELD_NZACCESS(polygon,
index);
}
}
}
}
while (jtrue);
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__generateScanlines__IIIIIIAIAIAL98u34I( package_Scene
This, jintArr ai, jintArr ai1, jintArr ai2, package_GameModel gameModel,
jint i, jint j, jint k, jint l, jint i1, jint pid )
{
{
if (i1 == (jint)3)
{
jint k1;
jint k2;
jint k3;
jint k4;
jint l5;
jint j7;
jint l8;
jint j10;
jint j11;
jint j12;
jint l12;
jint j13;
jint l13;
jint j14;
jint l14;
jint j15;
jint l15;
jint j16;
jint l16;
jint j17;
jint l17;
jint j18;
jint l18;
jint j19;
jint l19;
jint j20;
jint l20;
jint j21;
jint l21;
k1= JCGO_ARRAY_IACCESS(ai1, 0) + JCGO_FIELD_NZACCESS(This, baseY);
k2= JCGO_ARRAY_NZIACCESS(ai1, (jint)1) + JCGO_FIELD_NZACCESS(This,
baseY);
k3= JCGO_ARRAY_NZIACCESS(ai1, (jint)2) + JCGO_FIELD_NZACCESS(This,
baseY);
k4= JCGO_ARRAY_IACCESS(ai, 0);
l5= JCGO_ARRAY_NZIACCESS(ai, (jint)1);
j7= JCGO_ARRAY_NZIACCESS(ai, (jint)2);
l8= JCGO_ARRAY_IACCESS(ai2, 0);
j10= JCGO_ARRAY_NZIACCESS(ai2, (jint)1);
j11= JCGO_ARRAY_NZIACCESS(ai2, (jint)2);
j12= (JCGO_FIELD_NZACCESS(This, baseY) + JCGO_FIELD_NZACCESS(This,
clipY)) - (jint)1;
l12= 0;
j13= 0;
l13= 0;
j14= 0;
l14= package_World__colourTransparent;
j15= (jint)-12345678L;
if (k3 != k1)
{
j13= jcgo_div(JCGO_SHL_F(j7 - k4, (jint)8), (k3 - k1));
j14= jcgo_div(JCGO_SHL_F(j11 - l8, (jint)8), (k3 - k1));
if (k1 < k3)
{
l12= JCGO_SHL_F(k4, (jint)8);
l13= JCGO_SHL_F(l8, (jint)8);
l14= k1;
j15= k3;
}
else
{
l12= JCGO_SHL_F(j7, (jint)8);
l13= JCGO_SHL_F(j11, (jint)8);
l14= k3;
j15= k1;
}
if (l14 < 0)
{
l12-= j13 * l14;
l13-= j14 * l14;
l14= 0;
}
if (j15 > j12)
{
j15= j12;
}
}
l15= 0;
j16= 0;
l16= 0;
j17= 0;
l17= package_World__colourTransparent;
j18= (jint)-12345678L;
if (k2 != k1)
{
j16= jcgo_div(JCGO_SHL_F(l5 - k4, (jint)8), (k2 - k1));
j17= jcgo_div(JCGO_SHL_F(j10 - l8, (jint)8), (k2 - k1));
if (k1 < k2)
{
l15= JCGO_SHL_F(k4, (jint)8);
l16= JCGO_SHL_F(l8, (jint)8);
l17= k1;
j18= k2;
}
else
{
l15= JCGO_SHL_F(l5, (jint)8);
l16= JCGO_SHL_F(j10, (jint)8);
l17= k2;
j18= k1;
}
if (l17 < 0)
{
l15-= j16 * l17;
l16-= j17 * l17;
l17= 0;
}
if (j18 > j12)
{
j18= j12;
}
}
l18= 0;
j19= 0;
l19= 0;
j20= 0;
l20= package_World__colourTransparent;
j21= (jint)-12345678L;
if (k3 != k2)
{
j19= jcgo_div(JCGO_SHL_F(j7 - l5, (jint)8), (k3 - k2));
j20= jcgo_div(JCGO_SHL_F(j11 - j10, (jint)8), (k3 - k2));
if (k2 < k3)
{
l18= JCGO_SHL_F(l5, (jint)8);
l19= JCGO_SHL_F(j10, (jint)8);
l20= k2;
j21= k3;
}
else
{
l18= JCGO_SHL_F(j7, (jint)8);
l19= JCGO_SHL_F(j11, (jint)8);
l20= k3;
j21= k2;
}
if (l20 < 0)
{
l18-= j19 * l20;
l19-= j20 * l20;
l20= 0;
}
if (j21 > j12)
{
j21= j12;
}
}
JCGO_FIELD_NZACCESS(This, minY)= l14;
if (l17 < JCGO_FIELD_NZACCESS(This, minY))
{
JCGO_FIELD_NZACCESS(This, minY)= l17;
}
if (l20 < JCGO_FIELD_NZACCESS(This, minY))
{
JCGO_FIELD_NZACCESS(This, minY)= l20;
}
JCGO_FIELD_NZACCESS(This, maxY)= j15;
if (j18 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= j18;
}
if (j21 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= j21;
}
l21= 0;
for (k= JCGO_FIELD_NZACCESS(This, minY); k < JCGO_FIELD_NZACCESS(This,
maxY); k++)
{
package_Scanline scanline_6;
if (k >= l14 && k < j15)
{
i= j= l12;
l= l21= l13;
l12+= j13;
l13+= j14;
}
else
{
i= (jint)655360L;
j= (jint)-655360L;
}
if (k >= l17 && k < j18)
{
if (l15 < i)
{
i= l15;
l= l16;
}
if (l15 > j)
{
j= l15;
l21= l16;
}
l15+= j16;
l16+= j17;
}
if (k >= l20 && k < j21)
{
if (l18 < i)
{
i= l18;
l= l19;
}
if (l18 > j)
{
j= l18;
l21= l19;
}
l18+= j19;
l19+= j20;
}
scanline_6= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), k));
JCGO_FIELD_ACCESS(package_Scanline, scanline_6, startX)= i;
JCGO_FIELD_NZACCESS(scanline_6, endX)= j;
JCGO_FIELD_NZACCESS(scanline_6, startS)= l;
JCGO_FIELD_NZACCESS(scanline_6, endS)= l21;
}
if (JCGO_FIELD_NZACCESS(This, minY) < JCGO_FIELD_NZACCESS(This,
baseY) - JCGO_FIELD_NZACCESS(This, clipY))
{
JCGO_FIELD_NZACCESS(This, minY)= JCGO_FIELD_NZACCESS(This, baseY) -
JCGO_FIELD_NZACCESS(This, clipY);
}
}
else
{
if (i1 == (jint)4)
{
jint l1;
jint l2;
jint l3;
jint l4;
jint i6;
jint k7;
jint i9;
jint k10;
jint k11;
jint k12;
jint i13;
jint k13;
jint i14;
jint k14;
jint i15;
jint k15;
jint i16;
jint k16;
jint i17;
jint k17;
jint i18;
jint k18;
jint i19;
jint k19;
jint i20;
jint k20;
jint i21;
jint k21;
jint i22;
jint j22;
jint k22;
jint l22;
jint i23;
jint j23;
jint k23;
jint l23;
jint i24;
jint j24;
l1= JCGO_ARRAY_IACCESS(ai1, 0) + JCGO_FIELD_NZACCESS(This, baseY);
l2= JCGO_ARRAY_NZIACCESS(ai1, (jint)1) + JCGO_FIELD_NZACCESS(This,
baseY);
l3= JCGO_ARRAY_NZIACCESS(ai1, (jint)2) + JCGO_FIELD_NZACCESS(This,
baseY);
l4= JCGO_ARRAY_NZIACCESS(ai1, (jint)3) + JCGO_FIELD_NZACCESS(This,
baseY);
i6= JCGO_ARRAY_IACCESS(ai, 0);
k7= JCGO_ARRAY_NZIACCESS(ai, (jint)1);
i9= JCGO_ARRAY_NZIACCESS(ai, (jint)2);
k10= JCGO_ARRAY_NZIACCESS(ai, (jint)3);
k11= JCGO_ARRAY_IACCESS(ai2, 0);
k12= JCGO_ARRAY_NZIACCESS(ai2, (jint)1);
i13= JCGO_ARRAY_NZIACCESS(ai2, (jint)2);
k13= JCGO_ARRAY_NZIACCESS(ai2, (jint)3);
i14= (JCGO_FIELD_NZACCESS(This, baseY) + JCGO_FIELD_NZACCESS(This,
clipY)) - (jint)1;
k14= 0;
i15= 0;
k15= 0;
i16= 0;
k16= package_World__colourTransparent;
i17= (jint)-12345678L;
if (l4 != l1)
{
i15= jcgo_div(JCGO_SHL_F(k10 - i6, (jint)8), (l4 - l1));
i16= jcgo_div(JCGO_SHL_F(k13 - k11, (jint)8), (l4 - l1));
if (l1 < l4)
{
k14= JCGO_SHL_F(i6, (jint)8);
k15= JCGO_SHL_F(k11, (jint)8);
k16= l1;
i17= l4;
}
else
{
k14= JCGO_SHL_F(k10, (jint)8);
k15= JCGO_SHL_F(k13, (jint)8);
k16= l4;
i17= l1;
}
if (k16 < 0)
{
k14-= i15 * k16;
k15-= i16 * k16;
k16= 0;
}
if (i17 > i14)
{
i17= i14;
}
}
k17= 0;
i18= 0;
k18= 0;
i19= 0;
k19= package_World__colourTransparent;
i20= (jint)-12345678L;
if (l2 != l1)
{
i18= jcgo_div(JCGO_SHL_F(k7 - i6, (jint)8), (l2 - l1));
i19= jcgo_div(JCGO_SHL_F(k12 - k11, (jint)8), (l2 - l1));
if (l1 < l2)
{
k17= JCGO_SHL_F(i6, (jint)8);
k18= JCGO_SHL_F(k11, (jint)8);
k19= l1;
i20= l2;
}
else
{
k17= JCGO_SHL_F(k7, (jint)8);
k18= JCGO_SHL_F(k12, (jint)8);
k19= l2;
i20= l1;
}
if (k19 < 0)
{
k17-= i18 * k19;
k18-= i19 * k19;
k19= 0;
}
if (i20 > i14)
{
i20= i14;
}
}
k20= 0;
i21= 0;
k21= 0;
i22= 0;
j22= package_World__colourTransparent;
k22= (jint)-12345678L;
if (l3 != l2)
{
i21= jcgo_div(JCGO_SHL_F(i9 - k7, (jint)8), (l3 - l2));
i22= jcgo_div(JCGO_SHL_F(i13 - k12, (jint)8), (l3 - l2));
if (l2 < l3)
{
k20= JCGO_SHL_F(k7, (jint)8);
k21= JCGO_SHL_F(k12, (jint)8);
j22= l2;
k22= l3;
}
else
{
k20= JCGO_SHL_F(i9, (jint)8);
k21= JCGO_SHL_F(i13, (jint)8);
j22= l3;
k22= l2;
}
if (j22 < 0)
{
k20-= i21 * j22;
k21-= i22 * j22;
j22= 0;
}
if (k22 > i14)
{
k22= i14;
}
}
l22= 0;
i23= 0;
j23= 0;
k23= 0;
l23= package_World__colourTransparent;
i24= (jint)-12345678L;
if (l4 != l3)
{
i23= jcgo_div(JCGO_SHL_F(k10 - i9, (jint)8), (l4 - l3));
k23= jcgo_div(JCGO_SHL_F(k13 - i13, (jint)8), (l4 - l3));
if (l3 < l4)
{
l22= JCGO_SHL_F(i9, (jint)8);
j23= JCGO_SHL_F(i13, (jint)8);
l23= l3;
i24= l4;
}
else
{
l22= JCGO_SHL_F(k10, (jint)8);
j23= JCGO_SHL_F(k13, (jint)8);
l23= l4;
i24= l3;
}
if (l23 < 0)
{
l22-= i23 * l23;
j23-= k23 * l23;
l23= 0;
}
if (i24 > i14)
{
i24= i14;
}
}
JCGO_FIELD_NZACCESS(This, minY)= k16;
if (k19 < JCGO_FIELD_NZACCESS(This, minY))
{
JCGO_FIELD_NZACCESS(This, minY)= k19;
}
if (j22 < JCGO_FIELD_NZACCESS(This, minY))
{
JCGO_FIELD_NZACCESS(This, minY)= j22;
}
if (l23 < JCGO_FIELD_NZACCESS(This, minY))
{
JCGO_FIELD_NZACCESS(This, minY)= l23;
}
JCGO_FIELD_NZACCESS(This, maxY)= i17;
if (i20 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= i20;
}
if (k22 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= k22;
}
if (i24 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= i24;
}
j24= 0;
for (k= JCGO_FIELD_NZACCESS(This, minY); k < JCGO_FIELD_NZACCESS(This,
maxY); k++)
{
package_Scanline scanline_7;
if (k >= k16 && k < i17)
{
i= j= k14;
l= j24= k15;
k14+= i15;
k15+= i16;
}
else
{
i= (jint)655360L;
j= (jint)-655360L;
}
if (k >= k19 && k < i20)
{
if (k17 < i)
{
i= k17;
l= k18;
}
if (k17 > j)
{
j= k17;
j24= k18;
}
k17+= i18;
k18+= i19;
}
if (k >= j22 && k < k22)
{
if (k20 < i)
{
i= k20;
l= k21;
}
if (k20 > j)
{
j= k20;
j24= k21;
}
k20+= i21;
k21+= i22;
}
if (k >= l23 && k < i24)
{
if (l22 < i)
{
i= l22;
l= j23;
}
if (l22 > j)
{
j= l22;
j24= j23;
}
l22+= i23;
j23+= k23;
}
scanline_7= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), k));
JCGO_FIELD_ACCESS(package_Scanline, scanline_7, startX)= i;
JCGO_FIELD_NZACCESS(scanline_7, endX)= j;
JCGO_FIELD_NZACCESS(scanline_7, startS)= l;
JCGO_FIELD_NZACCESS(scanline_7, endS)= j24;
}
if (JCGO_FIELD_NZACCESS(This, minY) < JCGO_FIELD_NZACCESS(This,
baseY) - JCGO_FIELD_NZACCESS(This, clipY))
{
JCGO_FIELD_NZACCESS(This, minY)= JCGO_FIELD_NZACCESS(This, baseY) -
JCGO_FIELD_NZACCESS(This, clipY);
}
}
else
{
jint j2;
jint i3;
jint i4;
JCGO_FIELD_NZACCESS(This, maxY)= JCGO_FIELD_NZACCESS(This, minY)=
JCGO_ARRAY_IACCESS(ai1, 0)+= JCGO_FIELD_NZACCESS(This, baseY);
for (k= (jint)1; k < i1; k++)
{
jint i2;
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= (i2= JCGO_ARRAY_NZIACCESS(ai1, k)+= JCGO_FIELD_NZACCESS(This,
baseY)), jcgo_rcvrI1 < JCGO_FIELD_NZACCESS(This, minY)))
{
JCGO_FIELD_NZACCESS(This, minY)= i2;
}
else
{
if (i2 > JCGO_FIELD_NZACCESS(This, maxY))
{
JCGO_FIELD_NZACCESS(This, maxY)= i2;
}
}
}
if (JCGO_FIELD_NZACCESS(This, minY) < JCGO_FIELD_NZACCESS(This,
baseY) - JCGO_FIELD_NZACCESS(This, clipY))
{
JCGO_FIELD_NZACCESS(This, minY)= JCGO_FIELD_NZACCESS(This, baseY) -
JCGO_FIELD_NZACCESS(This, clipY);
}
if (JCGO_FIELD_NZACCESS(This, maxY) >= JCGO_FIELD_NZACCESS(This,
baseY) + JCGO_FIELD_NZACCESS(This, clipY))
{
JCGO_FIELD_NZACCESS(This, maxY)= (JCGO_FIELD_NZACCESS(This, baseY) +
JCGO_FIELD_NZACCESS(This, clipY)) - (jint)1;
}
if (JCGO_FIELD_NZACCESS(This, minY) >= JCGO_FIELD_NZACCESS(This,
maxY))
{
return;
}
for (k= JCGO_FIELD_NZACCESS(This, minY); k < JCGO_FIELD_NZACCESS(This,
maxY); k++)
{
package_Scanline scanline;
scanline= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), k));
JCGO_FIELD_ACCESS(package_Scanline, scanline, startX)= (jint)655360L;
JCGO_FIELD_NZACCESS(scanline, endX)= (jint)-655360L;
}
j2= i1 - (jint)1;
i3= JCGO_ARRAY_NZIACCESS(ai1, 0);
i4= JCGO_ARRAY_NZIACCESS(ai1, j2);
if (i3 < i4)
{
jint i5;
jint j6;
jint l7;
jint j9;
jint jcgo_rcvrI1;
i5= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai, 0), (jint)8);
j6= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai,
j2), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai, 0)), (jint)8), (i4 -
i3));
l7= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai2, 0), (jint)8);
j9= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2,
j2), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai2, 0)), (jint)8), (i4 -
i3));
if (i3 < 0)
{
i5-= j6 * i3;
l7-= j9 * i3;
i3= 0;
}
if (i4 > JCGO_FIELD_NZACCESS(This, maxY))
{
i4= JCGO_FIELD_NZACCESS(This, maxY);
}
for (k= i3; k <= i4; k++)
{
package_Scanline scanline_2;
jObject jcgo_rcvrL1;
scanline_2= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), k));
(jcgo_rcvrL1= (void*)&JCGO_FIELD_ACCESS(package_Scanline, scanline_2,
startX), *(jint*)jcgo_rcvrL1= JCGO_FIELD_ACCESS(package_Scanline,
scanline_2, endX)= i5);
JCGO_FIELD_NZACCESS(scanline_2, startS)= JCGO_FIELD_NZACCESS(scanline_2,
endS)= l7;
i5+= j6;
l7+= j9;
}
}
else
{
if (i3 > i4)
{
jint j5;
jint k6;
jint i8;
jint k9;
jint jcgo_rcvrI1;
j5= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai, j2), (jint)8);
k6= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai,
0), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai, j2)), (jint)8), (i3 -
i4));
i8= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai2, j2), (jint)8);
k9= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2,
0), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai2, j2)), (jint)8),
(i3 - i4));
if (i4 < 0)
{
j5-= k6 * i4;
i8-= k9 * i4;
i4= 0;
}
if (i3 > JCGO_FIELD_NZACCESS(This, maxY))
{
i3= JCGO_FIELD_NZACCESS(This, maxY);
}
for (k= i4; k <= i3; k++)
{
package_Scanline scanline_3;
jObject jcgo_rcvrL1;
scanline_3= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), k));
(jcgo_rcvrL1= (void*)&JCGO_FIELD_ACCESS(package_Scanline, scanline_3,
startX), *(jint*)jcgo_rcvrL1= JCGO_FIELD_ACCESS(package_Scanline,
scanline_3, endX)= j5);
JCGO_FIELD_NZACCESS(scanline_3, startS)= JCGO_FIELD_NZACCESS(scanline_3,
endS)= i8;
j5+= k6;
i8+= k9;
}
}
}
for (k= 0; k < j2; k++)
{
jint k5;
jint j3;
jint j4;
k5= k + (jint)1;
j3= JCGO_ARRAY_NZIACCESS(ai1, k);
j4= JCGO_ARRAY_NZIACCESS(ai1, k5);
if (j3 < j4)
{
jint l6;
jint j8;
jint l9;
jint l10;
jint jcgo_rcvrI1;
l6= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai, k), (jint)8);
j8= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai,
k5), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai, k)), (jint)8), (j4 -
j3));
l9= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai2, k), (jint)8);
l10= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2,
k5), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai2, k)), (jint)8),
(j4 - j3));
if (j3 < 0)
{
l6-= j8 * j3;
l9-= l10 * j3;
j3= 0;
}
if (j4 > JCGO_FIELD_NZACCESS(This, maxY))
{
j4= JCGO_FIELD_NZACCESS(This, maxY);
}
{
jint l11;
l11= j3;
for (; l11 <= j4; l11++)
{
package_Scanline scanline_4;
scanline_4= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), l11));
if (l6 < JCGO_FIELD_ACCESS(package_Scanline, scanline_4, startX))
{
JCGO_FIELD_NZACCESS(scanline_4, startX)= l6;
JCGO_FIELD_NZACCESS(scanline_4, startS)= l9;
}
if (l6 > JCGO_FIELD_NZACCESS(scanline_4, endX))
{
JCGO_FIELD_NZACCESS(scanline_4, endX)= l6;
JCGO_FIELD_NZACCESS(scanline_4, endS)= l9;
}
l6+= j8;
l9+= l10;
}
}
}
else
{
if (j3 > j4)
{
jint i7;
jint k8;
jint i10;
jint i11;
jint jcgo_rcvrI1;
i7= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai, k5), (jint)8);
k8= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai,
k), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai, k5)), (jint)8),
(j3 - j4));
i10= JCGO_SHL_F(JCGO_ARRAY_IACCESS(ai2, k5), (jint)8);
i11= jcgo_div(JCGO_SHL_F((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2,
k), jcgo_rcvrI1 - JCGO_ARRAY_NZIACCESS(ai2, k5)), (jint)8),
(j3 - j4));
if (j4 < 0)
{
i7-= k8 * j4;
i10-= i11 * j4;
j4= 0;
}
if (j3 > JCGO_FIELD_NZACCESS(This, maxY))
{
j3= JCGO_FIELD_NZACCESS(This, maxY);
}
{
jint i12;
i12= j4;
for (; i12 <= j3; i12++)
{
package_Scanline scanline_5;
scanline_5= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i12));
if (i7 < JCGO_FIELD_ACCESS(package_Scanline, scanline_5, startX))
{
JCGO_FIELD_NZACCESS(scanline_5, startX)= i7;
JCGO_FIELD_NZACCESS(scanline_5, startS)= i10;
}
if (i7 > JCGO_FIELD_NZACCESS(scanline_5, endX))
{
JCGO_FIELD_NZACCESS(scanline_5, endX)= i7;
JCGO_FIELD_NZACCESS(scanline_5, endS)= i10;
}
i7+= k8;
i10+= i11;
}
}
}
}
}
if (JCGO_FIELD_NZACCESS(This, minY) < JCGO_FIELD_NZACCESS(This,
baseY) - JCGO_FIELD_NZACCESS(This, clipY))
{
JCGO_FIELD_NZACCESS(This, minY)= JCGO_FIELD_NZACCESS(This, baseY) -
JCGO_FIELD_NZACCESS(This, clipY);
}
}
}
if (JCGO_FIELD_NZACCESS(This, mousePickingActive) && JCGO_FIELD_NZACCESS(This,
mousePickedCount) < JCGO_FIELD_NZACCESS(This, mousePickedMax) &&
JCGO_FIELD_NZACCESS(This, mouseY) >= JCGO_FIELD_NZACCESS(This, minY) &&
JCGO_FIELD_NZACCESS(This, mouseY) < JCGO_FIELD_NZACCESS(This, maxY))
{
package_Scanline scanline_1;
scanline_1= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), JCGO_FIELD_NZACCESS(This, mouseY)));
if (JCGO_FIELD_NZACCESS(This, mouseX) >= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline,
scanline_1, startX), (jint)8) && JCGO_FIELD_NZACCESS(This, mouseX) <=
JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_1, endX), (jint)8) && JCGO_FIELD_NZACCESS(scanline_1,
startX) <= JCGO_FIELD_NZACCESS(scanline_1, endX) && !JCGO_FIELD_ACCESS(package_GameModel,
gameModel, unpickable) && JCGO_ARRAY_BACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel, isLocalPlayer), pid) == 0)
{
*(package_GameModel*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
mousePickedModels), JCGO_FIELD_NZACCESS(This, mousePickedCount))=
gameModel;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, mousePickedFaces),
JCGO_FIELD_NZACCESS(This, mousePickedCount))= pid;
JCGO_FIELD_NZACCESS(This, mousePickedCount)++;
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureTranslucentScanline__IAIAIIIIIIIIIIII( jintArr
ai, jintArr ai1, jint i, jint j, jint k, jint l, jint i1, jint j1,
jint k1, jint l1, jint i2, jint j2, jint k2, jint l2 )
{
{
jint i3;
jint j3;
jint i4;
jint k3;
jint l3;
if (i2 <= 0)
{
return;
}
i3= 0;
j3= 0;
i4= 0;
if (i1 != 0)
{
i= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i < 0)
{
i= 0;
}
else
{
if (i > (jint)16256)
{
i= (jint)16256;
}
}
k+= j1;
l+= k1;
i1+= l1;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)16256)
{
i3= (jint)16256;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
{
jint j4;
j4= JCGO_SHR_F(i2, (jint)4);
for (; j4 > 0; j4--)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
i+= k2 & (jint)6291456L;
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i= i3;
j= j3;
k+= j1;
l+= k1;
i1+= l1;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)16256)
{
i3= (jint)16256;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
}
}
{
jint k4;
k4= 0;
for (; k4 < (i2 & (jint)15); k4++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
if ((k4 & (jint)3) == 0)
{
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
}
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (j & (jint)16256) + JCGO_SHR_F(i,
(jint)7)), i4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureScanline__IAIAIIIIIIIIIIII( jintArr ai, jintArr
ai1, jint i, jint j, jint k, jint l, jint i1, jint j1, jint k1, jint
l1, jint i2, jint j2, jint k2, jint l2 )
{
{
jint i3;
jint j3;
jint i4;
jint k3;
jint l3;
if (i2 <= 0)
{
return;
}
i3= 0;
j3= 0;
i4= 0;
if (i1 != 0)
{
i= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i < 0)
{
i= 0;
}
else
{
if (i > (jint)16256)
{
i= (jint)16256;
}
}
k+= j1;
l+= k1;
i1+= l1;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)16256)
{
i3= (jint)16256;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
{
jint j4;
j4= JCGO_SHR_F(i2, (jint)4);
for (; j4 > 0; j4--)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
i+= k2 & (jint)6291456L;
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i= i3;
j= j3;
k+= j1;
l+= k1;
i1+= l1;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)7);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)7);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)16256)
{
i3= (jint)16256;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
}
}
{
jint k4;
k4= 0;
for (; k4 < (i2 & (jint)15); k4++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
if ((k4 & (jint)3) == 0)
{
i= (i & (jint)16383) + (k2 & (jint)6291456L);
i4= JCGO_SHR_F(k2, (jint)23);
k2+= l2;
}
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1,
(j & (jint)16256) + JCGO_SHR_F(i, (jint)7)), i4), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureBackTranslucentScanline__IAIIIIAIIIIIIIIII(
jintArr ai, jintArr ai1, jint i, jint j, jint k, jint l, jint i1,
jint j1, jint k1, jint l1, jint i2, jint j2, jint k2, jint l2, jint
i3 )
{
{
jint j3;
jint k3;
if (j2 <= 0)
{
return;
}
j3= 0;
k3= 0;
i3= JCGO_SHL_F(i3, (jint)2);
if (j1 != 0)
{
j3= JCGO_SHL_F(jcgo_div(l, j1), (jint)7);
k3= JCGO_SHL_F(jcgo_div(i1, j1), (jint)7);
}
if (j3 < 0)
{
j3= 0;
}
else
{
if (j3 > (jint)16256)
{
j3= (jint)16256;
}
}
{
jint j4;
j4= j2;
for (; j4 > 0; j4-= (jint)16)
{
jint l3;
jint i4;
jint k4;
l+= k1;
i1+= l1;
j1+= i2;
j= j3;
k= k3;
if (j1 != 0)
{
j3= JCGO_SHL_F(jcgo_div(l, j1), (jint)7);
k3= JCGO_SHL_F(jcgo_div(i1, j1), (jint)7);
}
if (j3 < 0)
{
j3= 0;
}
else
{
if (j3 > (jint)16256)
{
j3= (jint)16256;
}
}
l3= JCGO_SHR_F(j3 - j, (jint)4);
i4= JCGO_SHR_F(k3 - k, (jint)4);
k4= JCGO_SHR_F(l2, (jint)23);
j+= l2 & (jint)6291456L;
l2+= i3;
if (j4 < (jint)16)
{
{
jint l4;
l4= 0;
for (; l4 < j4; l4++)
{
if ((i= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((l4 & (jint)3) == (jint)3)
{
j= (j & (jint)16383) + (l2 & (jint)6291456L);
k4= JCGO_SHR_F(l2, (jint)23);
l2+= i3;
}
}
}
}
else
{
if ((i= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)16383) + (l2 & (jint)6291456L);
k4= JCGO_SHR_F(l2, (jint)23);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)16383) + (l2 & (jint)6291456L);
k4= JCGO_SHR_F(l2, (jint)23);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)16383) + (l2 & (jint)6291456L);
k4= JCGO_SHR_F(l2, (jint)23);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)16256) +
JCGO_SHR_F(j, (jint)7)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureTranslucentScanline2__IAIAIIIIIIIIIIII( jintArr
ai, jintArr ai1, jint i, jint j, jint k, jint l, jint i1, jint j1,
jint k1, jint l1, jint i2, jint j2, jint k2, jint l2 )
{
{
jint i3;
jint j3;
if (i2 <= 0)
{
return;
}
i3= 0;
j3= 0;
l2= JCGO_SHL_F(l2, (jint)2);
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)6);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)6);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)4032)
{
i3= (jint)4032;
}
}
{
jint i4;
i4= i2;
for (; i4 > 0; i4-= (jint)16)
{
jint k3;
jint l3;
jint j4;
k+= j1;
l+= k1;
i1+= l1;
i= i3;
j= j3;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)6);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)6);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)4032)
{
i3= (jint)4032;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
j4= JCGO_SHR_F(k2, (jint)20);
i+= k2 & (jint)786432L;
k2+= l2;
if (i4 < (jint)16)
{
{
jint k4;
k4= 0;
for (; k4 < i4; k4++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
if ((k4 & (jint)3) == (jint)3)
{
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
}
}
}
}
else
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= (jcgo_rcvrI3=
JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (j & (jint)4032) + JCGO_SHR_F(i,
(jint)6)), j4), jcgo_rcvrI3 + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j2), (jint)1) & (jint)8355711L)), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureScanline2__IAIAIIIIIIIIIIII( jintArr ai, jintArr
ai1, jint i, jint j, jint k, jint l, jint i1, jint j1, jint k1, jint
l1, jint i2, jint j2, jint k2, jint l2 )
{
{
jint i3;
jint j3;
if (i2 <= 0)
{
return;
}
i3= 0;
j3= 0;
l2= JCGO_SHL_F(l2, (jint)2);
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)6);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)6);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)4032)
{
i3= (jint)4032;
}
}
{
jint i4;
i4= i2;
for (; i4 > 0; i4-= (jint)16)
{
jint k3;
jint l3;
jint j4;
k+= j1;
l+= k1;
i1+= l1;
i= i3;
j= j3;
if (i1 != 0)
{
i3= JCGO_SHL_F(jcgo_div(k, i1), (jint)6);
j3= JCGO_SHL_F(jcgo_div(l, i1), (jint)6);
}
if (i3 < 0)
{
i3= 0;
}
else
{
if (i3 > (jint)4032)
{
i3= (jint)4032;
}
}
k3= JCGO_SHR_F(i3 - i, (jint)4);
l3= JCGO_SHR_F(j3 - j, (jint)4);
j4= JCGO_SHR_F(k2, (jint)20);
i+= k2 & (jint)786432L;
k2+= l2;
if (i4 < (jint)16)
{
{
jint k4;
k4= 0;
for (; k4 < i4; k4++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
if ((k4 & (jint)3) == (jint)3)
{
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
}
}
}
}
else
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
i= (i & (jint)4095) + (k2 & (jint)786432L);
j4= JCGO_SHR_F(k2, (jint)20);
k2+= l2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
i+= k3;
j+= l3;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j2++, jcgo_rcvrI2= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1,
(j & (jint)4032) + JCGO_SHR_F(i, (jint)6)), j4), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureBackTranslucentScanline2__IAIIIIAIIIIIIIIII(
jintArr ai, jintArr ai1, jint i, jint j, jint k, jint l, jint i1,
jint j1, jint k1, jint l1, jint i2, jint j2, jint k2, jint l2, jint
i3 )
{
{
jint j3;
jint k3;
if (j2 <= 0)
{
return;
}
j3= 0;
k3= 0;
i3= JCGO_SHL_F(i3, (jint)2);
if (j1 != 0)
{
j3= JCGO_SHL_F(jcgo_div(l, j1), (jint)6);
k3= JCGO_SHL_F(jcgo_div(i1, j1), (jint)6);
}
if (j3 < 0)
{
j3= 0;
}
else
{
if (j3 > (jint)4032)
{
j3= (jint)4032;
}
}
{
jint j4;
j4= j2;
for (; j4 > 0; j4-= (jint)16)
{
jint l3;
jint i4;
jint k4;
l+= k1;
i1+= l1;
j1+= i2;
j= j3;
k= k3;
if (j1 != 0)
{
j3= JCGO_SHL_F(jcgo_div(l, j1), (jint)6);
k3= JCGO_SHL_F(jcgo_div(i1, j1), (jint)6);
}
if (j3 < 0)
{
j3= 0;
}
else
{
if (j3 > (jint)4032)
{
j3= (jint)4032;
}
}
l3= JCGO_SHR_F(j3 - j, (jint)4);
i4= JCGO_SHR_F(k3 - k, (jint)4);
k4= JCGO_SHR_F(l2, (jint)20);
j+= l2 & (jint)786432L;
l2+= i3;
if (j4 < (jint)16)
{
{
jint l4;
l4= 0;
for (; l4 < j4; l4++)
{
if ((i= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((l4 & (jint)3) == (jint)3)
{
j= (j & (jint)4095) + (l2 & (jint)786432L);
k4= JCGO_SHR_F(l2, (jint)20);
l2+= i3;
}
}
}
}
else
{
if ((i= JCGO_USHR_F(JCGO_ARRAY_IACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)4095) + (l2 & (jint)786432L);
k4= JCGO_SHR_F(l2, (jint)20);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)4095) + (l2 & (jint)786432L);
k4= JCGO_SHR_F(l2, (jint)20);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
j= (j & (jint)4095) + (l2 & (jint)786432L);
k4= JCGO_SHR_F(l2, (jint)20);
l2+= i3;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
j+= l3;
k+= i4;
if ((i= JCGO_USHR_F(JCGO_ARRAY_NZIACCESS(ai1, (k & (jint)4032) +
JCGO_SHR_F(j, (jint)6)), k4)) != 0)
{
JCGO_ARRAY_IACCESS(ai, k2)= i;
}
k2++;
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__textureGradientScanline__IAIIIIAII( jintArr ai, jintArr
ai1, jint i, jint j, jint k, jint l, jint i1 )
{
{
jint j1;
if (i >= 0)
{
return;
}
i1= JCGO_SHL_F(i1, (jint)2);
k= JCGO_ARRAY_IACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
j1= i / (jint)16;
{
jint k1;
k1= j1;
for (; k1 < 0; k1++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_NZIACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
}
}
j1= (-(i % (jint)16));
{
jint l1;
l1= 0;
for (; l1 < j1; l1++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)ai, jcgo_rcvrI1= j++, jcgo_rcvrI2= k + (JCGO_SHR_F(JCGO_ARRAY_IACCESS(ai,
j), (jint)1) & (jint)8355711L), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
if ((l1 & (jint)3) == (jint)3)
{
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
l+= i1;
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__gradientScanline__IAIIIIAII( jintArr ai, jintArr ai1,
jint i, jint j, jint k, jint l, jint i1 )
{
{
jint j1;
if (i >= 0)
{
return;
}
i1= JCGO_SHL_F(i1, (jint)1);
k= JCGO_ARRAY_IACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
j1= i / (jint)8;
{
jint k1;
k1= j1;
for (; k1 < 0; k1++)
{
JCGO_ARRAY_IACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
}
}
j1= (-(i % (jint)8));
{
jint l1;
l1= 0;
for (; l1 < j1; l1++)
{
JCGO_ARRAY_IACCESS(ai, j++)= k;
if ((l1 & (jint)1) == (jint)1)
{
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__gradientScanline2__IAIIIIAII( jintArr ai, jintArr ai1,
jint i, jint j, jint k, jint l, jint i1 )
{
{
jint j1;
if (i >= 0)
{
return;
}
i1= JCGO_SHL_F(i1, (jint)2);
k= JCGO_ARRAY_IACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
j1= i / (jint)16;
{
jint k1;
k1= j1;
for (; k1 < 0; k1++)
{
JCGO_ARRAY_IACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
JCGO_ARRAY_NZIACCESS(ai, j++)= k;
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
}
}
j1= (-(i % (jint)16));
{
jint l1;
l1= 0;
for (; l1 < j1; l1++)
{
JCGO_ARRAY_IACCESS(ai, j++)= k;
if ((l1 & (jint)3) == (jint)3)
{
k= JCGO_ARRAY_NZIACCESS(ai1, JCGO_SHR_F(l, (jint)8) & (jint)255);
l+= i1;
}
}
}
}
}
JCGO_NOSEP_INLINE void CFASTCALL
package_Scene__rasterize__IIIIAIAIAIL98u34( package_Scene This, jintArr
ai, jintArr ai1, jintArr ai2, package_GameModel gameModel, jint i,
jint j, jint k, jint l )
{
{
jint i2;
jint l2;
jbyte byte0;
if (l == (-(jint)2))
{
return;
}
if (l >= 0)
{
jint i1;
jint k1;
jint j2;
jint i3;
jint k3;
jint i4;
jint i6;
jint j7;
jint k8;
jint i10;
jint l10;
jint j11;
jint l11;
jint j12;
jint l12;
jint j13;
jint l13;
jint j14;
jint l14;
jint j15;
jint l15;
jint j16;
jint l16;
jint j17;
jbyte byte2;
if (l >= JCGO_FIELD_NZACCESS(This, textureCount))
{
l= 0;
}
(package_Scene__prepareTexture__I(
This, l));
i1= JCGO_ARRAY_IACCESS(ai, 0);
k1= JCGO_ARRAY_IACCESS(ai1, 0);
j2= JCGO_ARRAY_IACCESS(ai2, 0);
i3= i1 - JCGO_ARRAY_NZIACCESS(ai, (jint)1);
k3= k1 - JCGO_ARRAY_NZIACCESS(ai1, (jint)1);
i4= j2 - JCGO_ARRAY_NZIACCESS(ai2, (jint)1);
k--;
i6= JCGO_ARRAY_NZIACCESS(ai, k) - i1;
j7= JCGO_ARRAY_NZIACCESS(ai1, k) - k1;
k8= JCGO_ARRAY_NZIACCESS(ai2, k) - j2;
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
l) == (jint)1)
{
jint l9;
jint k10;
jint i11;
jint k11;
jint i12;
jint k12;
jint i13;
jint k13;
jint i14;
jint k14;
jint i15;
jint k15;
jint i16;
jint k16;
jint i17;
jbyte byte1;
l9= JCGO_SHL_F(i6 * k1 - j7 * i1, (jint)12);
k10= JCGO_SHL_F(j7 * j2 - k8 * k1, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)7 + (jint)4);
i11= JCGO_SHL_F(k8 * i1 - i6 * j2, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)7);
k11= JCGO_SHL_F(i3 * k1 - k3 * i1, (jint)12);
i12= JCGO_SHL_F(k3 * j2 - i4 * k1, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)7 + (jint)4);
k12= JCGO_SHL_F(i4 * i1 - i3 * j2, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)7);
i13= JCGO_SHL_F(k3 * i6 - i3 * j7, (jint)5);
k13= JCGO_SHL_F(i4 * j7 - k3 * k8, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)4);
i14= JCGO_SHR_F(i3 * k8 - i4 * i6, JCGO_FIELD_NZACCESS(This, viewDistance) -
(jint)5);
k14= JCGO_SHR_F(k10, (jint)4);
i15= JCGO_SHR_F(i12, (jint)4);
k15= JCGO_SHR_F(k13, (jint)4);
i16= JCGO_FIELD_NZACCESS(This, minY) - JCGO_FIELD_NZACCESS(This,
baseY);
k16= JCGO_FIELD_NZACCESS(This, width);
i17= JCGO_FIELD_NZACCESS(This, baseX) + JCGO_FIELD_NZACCESS(This,
minY) * k16;
byte1= (jbyte)(jint)1;
l9+= i11 * i16;
k11+= k12 * i16;
i13+= i14 * i16;
if (JCGO_FIELD_NZACCESS(This, interlace))
{
if ((JCGO_FIELD_NZACCESS(This, minY) & (jint)1) == (jint)1)
{
JCGO_FIELD_NZACCESS(This, minY)++;
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
i11= JCGO_SHL_F(i11, (jint)1);
k12= JCGO_SHL_F(k12, (jint)1);
i14= JCGO_SHL_F(i14, (jint)1);
k16= JCGO_SHL_F(k16, (jint)1);
byte1= (jbyte)(jint)2;
}
if (JCGO_FIELD_ACCESS(package_GameModel, gameModel, textureTranslucent))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte1)
{
package_Scanline scanline_3;
jint k17;
jint k20;
scanline_3= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_3,
startX), (jint)8);
k17= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_3, endX), (jint)8);
k20= k17 - j;
if (k20 <= 0)
{
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
else
{
jint i22;
jint k23;
jObject jcgo_rcvrL1;
i22= JCGO_FIELD_NZACCESS(scanline_3, startS);
k23= jcgo_div((JCGO_FIELD_NZACCESS(scanline_3, endS) - i22),
k20);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
i22+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * k23;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
k20= k17 - j;
}
if (k17 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint l17;
l17= JCGO_FIELD_NZACCESS(This, clipX);
k20= l17 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureTranslucentScanline__IAIAIIIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, l9 + k14 * j, k11 + i15 * j, i13 +
k15 * j, k10, i12, k13, k20, i17 + j, i22, JCGO_SHL_F(k23,
(jint)2)));
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
}
return;
}
if (!(JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(This, textureBackTransparent),
l)))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte1)
{
package_Scanline scanline_4;
jint i18;
jint l20;
scanline_4= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_4,
startX), (jint)8);
i18= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_4, endX), (jint)8);
l20= i18 - j;
if (l20 <= 0)
{
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
else
{
jint j22;
jint l23;
jObject jcgo_rcvrL1;
j22= JCGO_FIELD_NZACCESS(scanline_4, startS);
l23= jcgo_div((JCGO_FIELD_NZACCESS(scanline_4, endS) - j22),
l20);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
j22+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * l23;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
l20= i18 - j;
}
if (i18 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint j18;
j18= JCGO_FIELD_NZACCESS(This, clipX);
l20= j18 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureScanline__IAIAIIIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, l9 + k14 * j, k11 + i15 * j, i13 +
k15 * j, k10, i12, k13, l20, i17 + j, j22, JCGO_SHL_F(l23,
(jint)2)));
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
}
return;
}
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte1)
{
package_Scanline scanline_5;
jint k18;
jint i21;
scanline_5= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_5,
startX), (jint)8);
k18= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_5, endX), (jint)8);
i21= k18 - j;
if (i21 <= 0)
{
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
else
{
jint k22;
jint i24;
jObject jcgo_rcvrL1;
k22= JCGO_FIELD_NZACCESS(scanline_5, startS);
i24= jcgo_div((JCGO_FIELD_NZACCESS(scanline_5, endS) - k22),
i21);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
k22+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * i24;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
i21= k18 - j;
}
if (k18 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint l18;
l18= JCGO_FIELD_NZACCESS(This, clipX);
i21= l18 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureBackTranslucentScanline__IAIIIIAIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, 0, l9 + k14 * j, k11 + i15 * j, i13 +
k15 * j, k10, i12, k13, i21, i17 + j, k22, i24));
l9+= i11;
k11+= k12;
i13+= i14;
i17+= k16;
}
}
return;
}
i10= JCGO_SHL_F(i6 * k1 - j7 * i1, (jint)11);
l10= JCGO_SHL_F(j7 * j2 - k8 * k1, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)6 + (jint)4);
j11= JCGO_SHL_F(k8 * i1 - i6 * j2, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)6);
l11= JCGO_SHL_F(i3 * k1 - k3 * i1, (jint)11);
j12= JCGO_SHL_F(k3 * j2 - i4 * k1, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)6 + (jint)4);
l12= JCGO_SHL_F(i4 * i1 - i3 * j2, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)6);
j13= JCGO_SHL_F(k3 * i6 - i3 * j7, (jint)5);
l13= JCGO_SHL_F(i4 * j7 - k3 * k8, ((jint)5 - JCGO_FIELD_NZACCESS(This,
viewDistance)) + (jint)4);
j14= JCGO_SHR_F(i3 * k8 - i4 * i6, JCGO_FIELD_NZACCESS(This, viewDistance) -
(jint)5);
l14= JCGO_SHR_F(l10, (jint)4);
j15= JCGO_SHR_F(j12, (jint)4);
l15= JCGO_SHR_F(l13, (jint)4);
j16= JCGO_FIELD_NZACCESS(This, minY) - JCGO_FIELD_NZACCESS(This,
baseY);
l16= JCGO_FIELD_NZACCESS(This, width);
j17= JCGO_FIELD_NZACCESS(This, baseX) + JCGO_FIELD_NZACCESS(This,
minY) * l16;
byte2= (jbyte)(jint)1;
i10+= j11 * j16;
l11+= l12 * j16;
j13+= j14 * j16;
if (JCGO_FIELD_NZACCESS(This, interlace))
{
if ((JCGO_FIELD_NZACCESS(This, minY) & (jint)1) == (jint)1)
{
JCGO_FIELD_NZACCESS(This, minY)++;
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
j11= JCGO_SHL_F(j11, (jint)1);
l12= JCGO_SHL_F(l12, (jint)1);
j14= JCGO_SHL_F(j14, (jint)1);
l16= JCGO_SHL_F(l16, (jint)1);
byte2= (jbyte)(jint)2;
}
if (JCGO_FIELD_ACCESS(package_GameModel, gameModel, textureTranslucent))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte2)
{
package_Scanline scanline_6;
jint i19;
jint j21;
scanline_6= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_6,
startX), (jint)8);
i19= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_6, endX), (jint)8);
j21= i19 - j;
if (j21 <= 0)
{
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
else
{
jint l22;
jint j24;
jObject jcgo_rcvrL1;
l22= JCGO_FIELD_NZACCESS(scanline_6, startS);
j24= jcgo_div((JCGO_FIELD_NZACCESS(scanline_6, endS) - l22),
j21);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
l22+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * j24;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
j21= i19 - j;
}
if (i19 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint j19;
j19= JCGO_FIELD_NZACCESS(This, clipX);
j21= j19 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureTranslucentScanline2__IAIAIIIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, i10 + l14 * j, l11 + j15 * j, j13 +
l15 * j, l10, j12, l13, j21, j17 + j, l22, j24));
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
}
return;
}
if (!(JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(This, textureBackTransparent),
l)))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte2)
{
package_Scanline scanline_7;
jint k19;
jint k21;
scanline_7= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_7,
startX), (jint)8);
k19= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_7, endX), (jint)8);
k21= k19 - j;
if (k21 <= 0)
{
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
else
{
jint i23;
jint k24;
jObject jcgo_rcvrL1;
i23= JCGO_FIELD_NZACCESS(scanline_7, startS);
k24= jcgo_div((JCGO_FIELD_NZACCESS(scanline_7, endS) - i23),
k21);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
i23+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * k24;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
k21= k19 - j;
}
if (k19 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint l19;
l19= JCGO_FIELD_NZACCESS(This, clipX);
k21= l19 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureScanline2__IAIAIIIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, i10 + l14 * j, l11 + j15 * j, j13 +
l15 * j, l10, j12, l13, k21, j17 + j, i23, k24));
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
}
return;
}
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte2)
{
package_Scanline scanline;
jint i20;
jint l21;
scanline= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline, startX),
(jint)8);
i20= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline, endX), (jint)8);
l21= i20 - j;
if (l21 <= 0)
{
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
else
{
jint j23;
jint l24;
jObject jcgo_rcvrL1;
j23= JCGO_FIELD_NZACCESS(scanline, startS);
l24= jcgo_div((JCGO_FIELD_NZACCESS(scanline, endS) - j23), l21);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
j23+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * l24;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
l21= i20 - j;
}
if (i20 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint j20;
j20= JCGO_FIELD_NZACCESS(This, clipX);
l21= j20 - j;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, raster), package_Scene__textureBackTranslucentScanline2__IAIIIIAIIIIIIIIII(
(jintArr)jcgo_rcvrL1, ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), l)), 0, 0, 0, i10 + l14 * j, l11 + j15 * j, j13 +
l15 * j, l10, j12, l13, l21, j17 + j, j23, l24));
i10+= j11;
l11+= l12;
j13+= j14;
j17+= l16;
}
}
return;
}
{
jint j1;
j1= 0;
for (; j1 < JCGO_FIELD_NZACCESS(This, rampCount); j1++)
{
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, gradientBase),
j1) == l)
{
JCGO_FIELD_NZACCESS(This, anIntArray377)= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
gradientRamps), j1));
break;
}
if (j1 == JCGO_FIELD_NZACCESS(This, rampCount) - (jint)1)
{
jint l1;
jint k2;
jint j3;
jint l3;
jdouble jcgo_rcvrD1;
l1= JCGO_JDOUBLE_TOJINT((jcgo_rcvrD1= (java_lang_Math__random__()),
jcgo_rcvrD1 * (jdouble)JCGO_FIELD_NZACCESS(This, rampCount)));
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, gradientBase), l1)=
l;
l= (-(jint)1) - l;
k2= (JCGO_SHR_F(l, (jint)10) & (jint)31) * (jint)8;
j3= (JCGO_SHR_F(l, (jint)5) & (jint)31) * (jint)8;
l3= (l & (jint)31) * (jint)8;
{
jint j4;
j4= 0;
for (; j4 < (jint)256; j4++)
{
jint j6;
jint k7;
jint l8;
jint j10;
j6= j4 * j4;
k7= (k2 * j6) / (jint)65536L;
l8= (j3 * j6) / (jint)65536L;
j10= (l3 * j6) / (jint)65536L;
JCGO_ARRAY_IACCESS(((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
gradientRamps), l1)), (jint)255 - j4)= (JCGO_SHL_F(k7, (jint)16) +
JCGO_SHL_F(l8, (jint)8) + j10);
}
}
JCGO_FIELD_NZACCESS(This, anIntArray377)= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
gradientRamps), l1));
}
}
}
i2= JCGO_FIELD_NZACCESS(This, width);
l2= JCGO_FIELD_NZACCESS(This, baseX) + JCGO_FIELD_NZACCESS(This,
minY) * i2;
byte0= (jbyte)(jint)1;
if (JCGO_FIELD_NZACCESS(This, interlace))
{
if ((JCGO_FIELD_NZACCESS(This, minY) & (jint)1) == (jint)1)
{
JCGO_FIELD_NZACCESS(This, minY)++;
l2+= i2;
}
i2= JCGO_SHL_F(i2, (jint)1);
byte0= (jbyte)(jint)2;
}
if (JCGO_FIELD_ACCESS(package_GameModel, gameModel, transparent))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte0)
{
package_Scanline scanline;
jint k4;
jint k6;
scanline= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline, startX),
(jint)8);
k4= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline, endX), (jint)8);
k6= k4 - j;
if (k6 <= 0)
{
l2+= i2;
}
else
{
jint l7;
jint i9;
l7= JCGO_FIELD_NZACCESS(scanline, startS);
i9= jcgo_div((JCGO_FIELD_NZACCESS(scanline, endS) - l7), k6);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
l7+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * i9;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
k6= k4 - j;
}
if (k4 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint l4;
l4= JCGO_FIELD_NZACCESS(This, clipX);
k6= l4 - j;
}
(package_Scene__textureGradientScanline__IAIIIIAII(
JCGO_FIELD_NZACCESS(This, raster), JCGO_FIELD_NZACCESS(This,
anIntArray377), (-k6), l2 + j, 0, l7, i9));
l2+= i2;
}
}
return;
}
if (JCGO_FIELD_NZACCESS(This, wideBand))
{
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte0)
{
package_Scanline scanline_1;
jint i5;
jint l6;
scanline_1= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_1, startX),
(jint)8);
i5= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_1, endX), (jint)8);
l6= i5 - j;
if (l6 <= 0)
{
l2+= i2;
}
else
{
jint i8;
jint j9;
i8= JCGO_FIELD_NZACCESS(scanline_1, startS);
j9= jcgo_div((JCGO_FIELD_NZACCESS(scanline_1, endS) - i8), l6);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
i8+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * j9;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
l6= i5 - j;
}
if (i5 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint j5;
j5= JCGO_FIELD_NZACCESS(This, clipX);
l6= j5 - j;
}
(package_Scene__gradientScanline__IAIIIIAII(
JCGO_FIELD_NZACCESS(This, raster), JCGO_FIELD_NZACCESS(This,
anIntArray377), (-l6), l2 + j, 0, i8, j9));
l2+= i2;
}
}
return;
}
for (i= JCGO_FIELD_NZACCESS(This, minY); i < JCGO_FIELD_NZACCESS(This,
maxY); i+= (jint)byte0)
{
package_Scanline scanline_2;
jint k5;
jint i7;
scanline_2= ((package_Scanline)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
scanlines), i));
j= JCGO_SHR_F(JCGO_FIELD_ACCESS(package_Scanline, scanline_2, startX),
(jint)8);
k5= JCGO_SHR_F(JCGO_FIELD_NZACCESS(scanline_2, endX), (jint)8);
i7= k5 - j;
if (i7 <= 0)
{
l2+= i2;
}
else
{
jint j8;
jint k9;
j8= JCGO_FIELD_NZACCESS(scanline_2, startS);
k9= jcgo_div((JCGO_FIELD_NZACCESS(scanline_2, endS) - j8), i7);
if (j < (-JCGO_FIELD_NZACCESS(This, clipX)))
{
j8+= ((-JCGO_FIELD_NZACCESS(This, clipX)) - j) * k9;
j= (-JCGO_FIELD_NZACCESS(This, clipX));
i7= k5 - j;
}
if (k5 > JCGO_FIELD_NZACCESS(This, clipX))
{
jint l5;
l5= JCGO_FIELD_NZACCESS(This, clipX);
i7= l5 - j;
}
(package_Scene__gradientScanline2__IAIIIIAII(
JCGO_FIELD_NZACCESS(This, raster), JCGO_FIELD_NZACCESS(This, anIntArray377),
(-i7), l2 + j, 0, j8, k9));
l2+= i2;
}
}
}
}
JCGO_NOSEP_INLINE jboolean CFASTCALL
package_Scene__intersect__IAIAIAIA( package_Scene This, jintArr ai,
jintArr ai1, jintArr ai2, jintArr ai3 )
{
{
jint i;
jint j;
jint i20;
jint k20;
jint k;
jint j20;
jint l20;
jint i1;
jint l;
jint j1;
jint j6;
jint k10;
jint k15;
jbyte byte0;
jboolean flag;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i= JCGO_ARRAY_LENGTH(ai);
j= JCGO_ARRAY_LENGTH(ai2);
byte0= (jbyte)0;
k20= i20= JCGO_ARRAY_IACCESS(ai1, 0);
k= 0;
l20= j20= JCGO_ARRAY_IACCESS(ai3, 0);
i1= 0;
{
jint i21;
i21= (jint)1;
for (; i21 < i; i21++)
{
if (JCGO_ARRAY_NZIACCESS(ai1, i21) < i20)
{
i20= JCGO_ARRAY_NZIACCESS(ai1, i21);
k= i21;
}
else
{
if (JCGO_ARRAY_NZIACCESS(ai1, i21) > k20)
{
k20= JCGO_ARRAY_NZIACCESS(ai1, i21);
}
}
}
}
{
jint j21;
j21= (jint)1;
for (; j21 < j; j21++)
{
if (JCGO_ARRAY_NZIACCESS(ai3, j21) < j20)
{
j20= JCGO_ARRAY_NZIACCESS(ai3, j21);
i1= j21;
}
else
{
if (JCGO_ARRAY_NZIACCESS(ai3, j21) > l20)
{
l20= JCGO_ARRAY_NZIACCESS(ai3, j21);
}
}
}
}
if (j20 >= k20)
{
return (jboolean)jfalse;
}
if (i20 >= l20)
{
return (jboolean)jfalse;
}
;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
i1)))
{
jint k1;
jint k6;
jint l10;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
for (l= k; (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, l), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, i1)); l= jcgo_mod((l + (jint)1), i))
{
;
}
for (; (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, i1)); k= jcgo_mod(((k - (jint)1) + i),
i))
{
;
}
k1= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
k6= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
l10= JCGO_ARRAY_NZIACCESS(ai2, i1);
flag= (jboolean)((k1 < l10) | (k6 < l10));
if ((package_Scene__method308__IIIZ(
This, k1, k6, l10, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((i1 + (jint)1), j);
i1= jcgo_mod(((i1 - (jint)1) + j), j);
if (k == l)
{
byte0= (jbyte)(jint)1;
}
}
else
{
jint l1;
jint i11;
jint l15;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
for (j1= i1; (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, j1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai1, k)); j1= jcgo_mod((j1 + (jint)1), j))
{
;
}
for (; (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai1, k)); i1= jcgo_mod(((i1 - (jint)1) + j),
j))
{
;
}
l1= JCGO_ARRAY_NZIACCESS(ai, k);
i11= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3,
i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
l15= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
flag= (jboolean)((l1 < i11) | (l1 < l15));
if ((package_Scene__method308__IIIZ(
This, i11, l15, l1, (jboolean)(!flag))))
{
return (jboolean)jtrue;
}
l= jcgo_mod((k + (jint)1), i);
k= jcgo_mod(((k - (jint)1) + i), i);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
while (byte0 == 0)
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai1,
l)))
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
i1)))
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, j1)))
{
jint i2;
jint l6;
jint j11;
jint i16;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i2= JCGO_ARRAY_NZIACCESS(ai, k);
l6= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
j11= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
i16= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
if ((package_Scene__method307__IIIIZ(
This, i2, l6, j11, i16, (jboolean)flag)))
{
return (jboolean)jtrue;
}
k= jcgo_mod(((k - (jint)1) + i), i);
if (k == l)
{
byte0= (jbyte)(jint)1;
}
}
else
{
jint j2;
jint i7;
jint k11;
jint j16;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
j2= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
i7= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
k11= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
j16= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, j2, i7, k11, j16, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
}
else
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, j1)))
{
jint k2;
jint j7;
jint l11;
jint k16;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
k2= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
j7= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
l11= JCGO_ARRAY_NZIACCESS(ai2, i1);
k16= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
if ((package_Scene__method307__IIIIZ(
This, k2, j7, l11, k16, (jboolean)flag)))
{
return (jboolean)jtrue;
}
i1= jcgo_mod(((i1 - (jint)1) + j), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
else
{
jint l2;
jint k7;
jint i12;
jint l16;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
l2= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
k7= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
i12= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
l16= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, l2, k7, i12, l16, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
}
}
else
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, l), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
i1)))
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, l), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, j1)))
{
jint i3;
jint l7;
jint j12;
jint i17;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i3= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
l7= JCGO_ARRAY_NZIACCESS(ai, l);
j12= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
i17= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
if ((package_Scene__method307__IIIIZ(
This, i3, l7, j12, i17, (jboolean)flag)))
{
return (jboolean)jtrue;
}
l= jcgo_mod((l + (jint)1), i);
if (k == l)
{
byte0= (jbyte)(jint)1;
}
}
else
{
jint j3;
jint i8;
jint k12;
jint j17;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
j3= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
i8= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
k12= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
j17= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, j3, i8, k12, j17, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
}
else
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, j1)))
{
jint k3;
jint j8;
jint l12;
jint k17;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
k3= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
j8= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
l12= JCGO_ARRAY_NZIACCESS(ai2, i1);
k17= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
if ((package_Scene__method307__IIIIZ(
This, k3, j8, l12, k17, (jboolean)flag)))
{
return (jboolean)jtrue;
}
i1= jcgo_mod(((i1 - (jint)1) + j), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
else
{
jint l3;
jint k8;
jint i13;
jint l17;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
l3= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
k8= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
i13= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
l17= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, l3, k8, i13, l17, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)(jint)2;
}
}
}
}
}
while (byte0 == (jint)1)
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
i1)))
{
jint j4;
jint l8;
jint k13;
jint j18;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
j1)))
{
jint i4;
jint j13;
jint i18;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i4= JCGO_ARRAY_NZIACCESS(ai, k);
j13= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
i18= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
return (jboolean)(package_Scene__method308__IIIZ(
This, j13, i18, i4, (jboolean)(!flag)));
}
j4= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
l8= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
k13= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
j18= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, j4, l8, k13, j18, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)0;
}
}
else
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai3, j1)))
{
jint k4;
jint i9;
jint l13;
jint k18;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
k4= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
i9= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
l13= JCGO_ARRAY_NZIACCESS(ai2, i1);
k18= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
if ((package_Scene__method307__IIIIZ(
This, k4, i9, l13, k18, (jboolean)flag)))
{
return (jboolean)jtrue;
}
i1= jcgo_mod(((i1 - (jint)1) + j), j);
if (i1 == j1)
{
byte0= (jbyte)0;
}
}
else
{
jint l4;
jint j9;
jint i14;
jint l18;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
l4= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
j9= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
i14= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
j1)));
l18= JCGO_ARRAY_NZIACCESS(ai2, j1);
if ((package_Scene__method307__IIIIZ(
This, l4, j9, i14, l18, (jboolean)flag)))
{
return (jboolean)jtrue;
}
j1= jcgo_mod((j1 + (jint)1), j);
if (i1 == j1)
{
byte0= (jbyte)0;
}
}
}
}
while (byte0 == (jint)2)
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai1,
k)))
{
jint j5;
jint l9;
jint k14;
jint i19;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai3, i1), jcgo_rcvrI1 <
JCGO_ARRAY_NZIACCESS(ai1, l)))
{
jint i5;
jint k9;
jint j14;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i5= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
k9= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
j14= JCGO_ARRAY_NZIACCESS(ai2, i1);
return (jboolean)(package_Scene__method308__IIIZ(
This, i5, k9, j14, (jboolean)flag));
}
j5= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
l9= JCGO_ARRAY_NZIACCESS(ai, l);
k14= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
i19= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
if ((package_Scene__method307__IIIIZ(
This, j5, l9, k14, i19, (jboolean)flag)))
{
return (jboolean)jtrue;
}
l= jcgo_mod((l + (jint)1), i);
if (k == l)
{
byte0= (jbyte)0;
}
}
else
{
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai1,
l)))
{
jint k5;
jint i10;
jint l14;
jint j19;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
k5= JCGO_ARRAY_NZIACCESS(ai, k);
i10= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l -
(jint)1) + i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
l14= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
j19= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
if ((package_Scene__method307__IIIIZ(
This, k5, i10, l14, j19, (jboolean)flag)))
{
return (jboolean)jtrue;
}
k= jcgo_mod(((k - (jint)1) + i), i);
if (k == l)
{
byte0= (jbyte)0;
}
}
else
{
jint l5;
jint j10;
jint i15;
jint k19;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
l5= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
j10= JCGO_ARRAY_NZIACCESS(ai, l);
i15= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai3, i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
k19= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
l)));
if ((package_Scene__method307__IIIIZ(
This, l5, j10, i15, k19, (jboolean)flag)))
{
return (jboolean)jtrue;
}
l= jcgo_mod((l + (jint)1), i);
if (k == l)
{
byte0= (jbyte)0;
}
}
}
}
if ((jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai1, k), jcgo_rcvrI1 < JCGO_ARRAY_NZIACCESS(ai3,
i1)))
{
jint i6;
jint j15;
jint l19;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
i6= JCGO_ARRAY_NZIACCESS(ai, k);
j15= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod((i1 + (jint)1),
j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, i1), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3,
i1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
l19= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai2, jcgo_mod(((j1 - (jint)1) +
j), j)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai3, jcgo_mod(((j1 -
(jint)1) + j), j)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai2, j1),
jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai3, j1), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai1,
k)));
return (jboolean)(package_Scene__method308__IIIZ(
This, j15, l19, i6, (jboolean)(!flag)));
}
j6= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod((k + (jint)1),
i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, k), jcgo_rcvrI4= JCGO_ARRAY_NZIACCESS(ai1,
k), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
k10= (jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(ai, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI2= JCGO_ARRAY_NZIACCESS(ai1, jcgo_mod(((l - (jint)1) +
i), i)), jcgo_rcvrI3= JCGO_ARRAY_NZIACCESS(ai, l), jcgo_rcvrI4=
JCGO_ARRAY_NZIACCESS(ai1, l), package_Scene__method306__IIIII(
This, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3, jcgo_rcvrI4, JCGO_ARRAY_NZIACCESS(ai3,
i1)));
k15= JCGO_ARRAY_NZIACCESS(ai2, i1);
return (jboolean)(package_Scene__method308__IIIZ(
This, j6, k10, k15, (jboolean)flag));
}
}
JCGO_NOSEP_FRWINL jboolean CFASTCALL
package_Scene__heuristicPolygon__L06628L06628( package_Scene This,
package_Polygon polygon, package_Polygon polygon_1 )
{
{
package_GameModel gameModel;
package_GameModel gameModel_1;
jintArr ai;
jintArr ai1;
jint i;
jint j;
jint k;
jint l;
jint i2;
jint j2;
jint k2;
jint l2;
jint i3;
jint j3;
jint k3;
jint l3;
jboolean flag;
gameModel= JCGO_FIELD_ACCESS(package_Polygon, polygon, model);
gameModel_1= JCGO_FIELD_ACCESS(package_Polygon, polygon_1, model);
i= JCGO_FIELD_NZACCESS(polygon, face);
j= JCGO_FIELD_NZACCESS(polygon_1, face);
ai= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel, faceVertices), i));
ai1= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel_1, faceVertices), j));
k= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, faceNumVertices),
i);
l= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, faceNumVertices),
j);
i2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexX),
JCGO_ARRAY_IACCESS(ai1, 0));
j2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexY),
JCGO_ARRAY_NZIACCESS(ai1, 0));
k2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai1, 0));
l2= JCGO_FIELD_NZACCESS(polygon_1, normalX);
i3= JCGO_FIELD_NZACCESS(polygon_1, normalY);
j3= JCGO_FIELD_NZACCESS(polygon_1, normalZ);
k3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, normalMagnitude),
j);
l3= JCGO_FIELD_NZACCESS(polygon_1, visibility);
flag= jfalse;
{
jint i4;
i4= 0;
for (; i4 < k; i4++)
{
jint i1;
jint k1;
jint jcgo_rcvrI1;
i1= JCGO_ARRAY_IACCESS(ai, i4);
k1= (jcgo_rcvrI1= (jcgo_rcvrI1= (i2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexX), i1)) * l2, jcgo_rcvrI1 + (j2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexY), i1)) * i3), jcgo_rcvrI1 + (k2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexZ), i1)) * j3);
if ((k1 >= (-k3) || l3 >= 0) && (k1 <= k3 || l3 <= 0))
{
continue;
}
flag= (jboolean)jtrue;
break;
}
}
if (!flag)
{
return (jboolean)jtrue;
}
i2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_IACCESS(ai, 0));
j2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(ai, 0));
k2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai, 0));
l2= JCGO_FIELD_NZACCESS(polygon, normalX);
i3= JCGO_FIELD_NZACCESS(polygon, normalY);
j3= JCGO_FIELD_NZACCESS(polygon, normalZ);
k3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, normalMagnitude),
i);
l3= JCGO_FIELD_NZACCESS(polygon, visibility);
flag= (jboolean)jfalse;
{
jint j4;
j4= 0;
for (; j4 < l; j4++)
{
jint j1;
jint l1;
jint jcgo_rcvrI1;
j1= JCGO_ARRAY_NZIACCESS(ai1, j4);
l1= (jcgo_rcvrI1= (jcgo_rcvrI1= (i2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexX), j1)) * l2, jcgo_rcvrI1 + (j2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexY), j1)) * i3), jcgo_rcvrI1 + (k2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexZ), j1)) * j3);
if ((l1 >= (-k3) || l3 <= 0) && (l1 <= k3 || l3 >= 0))
{
continue;
}
flag= (jboolean)jtrue;
break;
}
}
return (jboolean)(!flag);
}
}
JCGO_NOSEP_INLINE package_Scene CFASTCALL
package_Scene__this__L0s0x4III( package_Scene This, package_Surface
surface, jint i, jint polygons, jint k )
{
{
jint jcgo_rcvrI1;
JCGO_FIELD_NZACCESS(This, rampCount)= (jint)50;
JCGO_FIELD_NZACCESS(This, gradientBase)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, JCGO_FIELD_NZACCESS(This, rampCount));
JCGO_FIELD_NZACCESS(This, gradientRamps)= (jcgo_rcvrI1= JCGO_FIELD_NZACCESS(This,
rampCount), jcgo_new4DArray(JCGO_CORECLASS_FOR(OBJT_jint), 2, 0,
jcgo_rcvrI1, (jint)256, 0, 0));
JCGO_FIELD_NZACCESS(This, clipNear)= (jint)5;
JCGO_FIELD_NZACCESS(This, clipFar3d)= (jint)1000;
JCGO_FIELD_NZACCESS(This, clipFar2d)= (jint)1000;
JCGO_FIELD_NZACCESS(This, fogZFalloff)= (jint)20;
JCGO_FIELD_NZACCESS(This, fogZDistance)= (jint)10;
JCGO_FIELD_NZACCESS(This, wideBand)= (jboolean)jfalse;
(void)(jdouble)1.1000000000000001;
(void)(jint)1;
JCGO_FIELD_NZACCESS(This, mousePickingActive)= (jboolean)jfalse;
JCGO_FIELD_NZACCESS(This, mousePickedMax)= (jint)100;
JCGO_FIELD_NZACCESS(This, mousePickedModels)= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(package_GameModel__class),
0, JCGO_FIELD_NZACCESS(This, mousePickedMax));
JCGO_FIELD_NZACCESS(This, mousePickedFaces)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, JCGO_FIELD_NZACCESS(This, mousePickedMax));
JCGO_FIELD_NZACCESS(This, width)= JCGO_FIELD_ACCESS(package_Surface,
surface, width1);
JCGO_FIELD_NZACCESS(This, clipX)= (jint)256;
JCGO_FIELD_NZACCESS(This, clipY)= (jint)192;
JCGO_FIELD_NZACCESS(This, baseX)= (jint)256;
JCGO_FIELD_NZACCESS(This, baseY)= (jint)256;
JCGO_FIELD_NZACCESS(This, viewDistance)= (jint)8;
JCGO_FIELD_NZACCESS(This, normalMagnitude)= (jint)4;
JCGO_FIELD_NZACCESS(This, planeX)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, planeY)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, vertexShade)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, vertexX)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, vertexY)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, vertexZ)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)40);
JCGO_FIELD_NZACCESS(This, interlace)= (jboolean)jfalse;
JCGO_FIELD_NZACCESS(This, surface)= surface;
JCGO_FIELD_NZACCESS(This, clipX)= JCGO_FIELD_NZACCESS(surface, width2) /
(jint)2;
JCGO_FIELD_NZACCESS(This, clipY)= JCGO_FIELD_NZACCESS(surface, height2) /
(jint)2;
JCGO_FIELD_NZACCESS(This, raster)= JCGO_FIELD_NZACCESS(surface, pixels);
JCGO_FIELD_NZACCESS(This, modelCount)= 0;
JCGO_FIELD_NZACCESS(This, maxModelCount)= i;
JCGO_FIELD_NZACCESS(This, models)= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(package_GameModel__class),
0, JCGO_FIELD_NZACCESS(This, maxModelCount));
JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)= 0;
JCGO_FIELD_NZACCESS(This, visiblePolygons)= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(package_Polygon__class),
0, polygons);
{
jint l;
l= 0;
for (; l < polygons; l++)
{
jObject jcgo_rcvrL1;
jObject jcgo_rcvrL2;
jint jcgo_rcvrI1;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, visiblePolygons),
jcgo_rcvrI1= l, jcgo_rcvrL2= (jObject)package_Polygon__new__(),
*(package_Polygon*)&JCGO_ARRAY_LACCESS((jObjectArr)jcgo_rcvrL1,
jcgo_rcvrI1)= (package_Polygon)jcgo_rcvrL2);
}
}
JCGO_FIELD_NZACCESS(This, spriteCount)= 0;
JCGO_FIELD_NZACCESS(This, view)= (package_GameModel__new__II(
k * (jint)2, k));
JCGO_FIELD_NZACCESS(This, spriteId)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteWidth)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteHeight)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteX)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteZ)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteY)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
JCGO_FIELD_NZACCESS(This, spriteTranslateX)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, k);
if (package_Scene__aByteArray434 == jnull)
{
package_Scene__aByteArray434= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte),
0, (jint)17691);
}
JCGO_FIELD_NZACCESS(This, cameraX)= 0;
JCGO_FIELD_NZACCESS(This, cameraY)= 0;
JCGO_FIELD_NZACCESS(This, cameraZ)= 0;
JCGO_FIELD_NZACCESS(This, cameraYaw)= 0;
JCGO_FIELD_NZACCESS(This, cameraPitch)= 0;
JCGO_FIELD_NZACCESS(This, cameraRoll)= 0;
{
jint i1;
i1= 0;
for (; i1 < (jint)256; i1++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)package_Scene__sin512Cache, jcgo_rcvrI1=
i1, jcgo_rcvrI2= JCGO_JDOUBLE_TOJINT(((java_lang_Math__sin__D(
(jdouble)i1 * (jdouble)0.02454369)) * (jdouble)32768.0)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)package_Scene__sin512Cache, jcgo_rcvrI1=
i1 + (jint)256, jcgo_rcvrI2= JCGO_JDOUBLE_TOJINT(((java_lang_Math__cos__D(
(jdouble)i1 * (jdouble)0.02454369)) * (jdouble)32768.0)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
}
}
{
jint j1;
j1= 0;
for (; j1 < (jint)1024; j1++)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
(jcgo_rcvrL1= (jObject)package_Scene__sin2048Cache, jcgo_rcvrI1=
j1, jcgo_rcvrI2= JCGO_JDOUBLE_TOJINT(((java_lang_Math__sin__D(
(jdouble)j1 * (jdouble)0.00613592315)) * (jdouble)32768.0)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
(jcgo_rcvrL1= (jObject)package_Scene__sin2048Cache, jcgo_rcvrI1=
j1 + (jint)1024, jcgo_rcvrI2= JCGO_JDOUBLE_TOJINT(((java_lang_Math__cos__D(
(jdouble)j1 * (jdouble)0.00613592315)) * (jdouble)32768.0)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrI2);
}
}
}
return This;
}
JCGO_NOSEP_FRWINL package_Scene CFASTCALL
package_Scene__new__L0s0x4III( package_Surface surface, jint i, jint
polygons, jint k )
{
JCGO_CLINIT_TRIG(package_Scene__class);
return package_Scene__this__L0s0x4III(
(package_Scene)jcgo_newObject((jvtable)&package_Scene_methods), surface,
i, polygons, k);
}
JCGO_NOSEP_STATIC jint CFASTCALL
package_Scene__rgb__III( jint i, jint j, jint k )
{
JCGO_CLINIT_TRIG(package_Scene__class);
{
return (-(jint)1) - (i / (jint)8) * (jint)1024 - (j / (jint)8) *
(jint)32 - k / (jint)8;
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__addModel__L98u34( package_Scene This, package_GameModel
model )
{
{
if (model == jnull)
{
(java_io_PrintStream__println__Ls(
JCGO_CLINIT_VARACC(java_lang_System__class, java_lang_System__out),
JCGO_STRREF_OF(jcgo_string2_Scene)));
}
if (JCGO_FIELD_NZACCESS(This, modelCount) < JCGO_FIELD_NZACCESS(This,
maxModelCount))
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, models), jcgo_rcvrI1=
JCGO_FIELD_NZACCESS(This, modelCount)++, *(package_GameModel*)&JCGO_ARRAY_LACCESS((jObjectArr)jcgo_rcvrL1,
jcgo_rcvrI1)= model);
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__removeModel__L98u34( package_Scene This, package_GameModel
gameModel )
{
{
{
jint i;
i= 0;
for (; i < JCGO_FIELD_NZACCESS(This, modelCount); i++)
{
if (((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), i)) == gameModel)
{
JCGO_FIELD_NZACCESS(This, modelCount)--;
{
jint j;
j= i;
for (; j < JCGO_FIELD_NZACCESS(This, modelCount); j++)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), j + (jint)1)), *(package_GameModel*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), j)= (package_GameModel)jcgo_rcvrL1);
}
}
}
}
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__dispose__( package_Scene This )
{
{
(package_Scene__clear__(
This));
{
jint i;
i= 0;
for (; i < JCGO_FIELD_NZACCESS(This, modelCount); i++)
{
*(package_GameModel*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), i)= (package_GameModel)jnull;
}
}
JCGO_FIELD_NZACCESS(This, modelCount)= 0;
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__reduceSprites__I( package_Scene This, jint i )
{
{
jObject jcgo_rcvrL1;
JCGO_FIELD_NZACCESS(This, spriteCount)-= i;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, view), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__reduce__II(
(package_GameModel)jcgo_rcvrL1, i, i * (jint)2));
if (JCGO_FIELD_NZACCESS(This, spriteCount) < 0)
{
JCGO_FIELD_NZACCESS(This, spriteCount)= 0;
}
}
}
JCGO_NOSEP_STATIC jint CFASTCALL
package_Scene__addSprite__IIIIIII( package_Scene This, jint n, jint
x, jint z, jint y, jint w, jint h, jint tag )
{
{
jintArr vs;
jint l1;
jint i2;
jObject jcgo_rcvrL1;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteId), JCGO_FIELD_NZACCESS(This,
spriteCount))= n;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteX), JCGO_FIELD_NZACCESS(This,
spriteCount))= x;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteZ), JCGO_FIELD_NZACCESS(This,
spriteCount))= z;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteY), JCGO_FIELD_NZACCESS(This,
spriteCount))= y;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteWidth), JCGO_FIELD_NZACCESS(This,
spriteCount))= w;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteHeight), JCGO_FIELD_NZACCESS(This,
spriteCount))= h;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteTranslateX), JCGO_FIELD_NZACCESS(This,
spriteCount))= 0;
l1= (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, view), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__createVertex__III(
(package_GameModel)jcgo_rcvrL1, x, z, y));
i2= (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, view), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__createVertex__III(
(package_GameModel)jcgo_rcvrL1, x, z - h, y));
vs= (jcgo_rcvrL1= jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0,
2),
JCGO_ARR_INTERNALACC(jint, (jintArr)jcgo_rcvrL1, 0)= l1,
JCGO_ARR_INTERNALACC(jint, (jintArr)jcgo_rcvrL1, 1)= i2,
(jintArr)jcgo_rcvrL1);
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, view), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__createFace__IIAII(
(package_GameModel)jcgo_rcvrL1, vs, (jint)2, 0, 0));
JCGO_ARRAY_IACCESS(JCGO_FIELD_ACCESS(package_GameModel, JCGO_FIELD_NZACCESS(This,
view), faceTag), JCGO_FIELD_NZACCESS(This, spriteCount))= tag;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_ACCESS(package_GameModel, JCGO_FIELD_NZACCESS(This,
view), isLocalPlayer), JCGO_ARRAY_BACCESS((jbyteArr)jcgo_rcvrL1,
JCGO_FIELD_NZACCESS(This, spriteCount)++)= (jbyte)0);
return JCGO_FIELD_NZACCESS(This, spriteCount) - (jint)1;
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setLocalPlayer__I( package_Scene This, jint i )
{
{
JCGO_ARRAY_BACCESS(JCGO_FIELD_ACCESS(package_GameModel, JCGO_FIELD_NZACCESS(This,
view), isLocalPlayer), i)= (jbyte)(jint)1;
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setSpriteTranslateX__II( package_Scene This, jint i,
jint n )
{
{
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, spriteTranslateX), i)=
n;
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setMouseLoc__II( package_Scene This, jint x, jint y
)
{
{
JCGO_FIELD_NZACCESS(This, mouseX)= x - JCGO_FIELD_NZACCESS(This,
baseX);
JCGO_FIELD_NZACCESS(This, mouseY)= y;
JCGO_FIELD_NZACCESS(This, mousePickedCount)= 0;
JCGO_FIELD_NZACCESS(This, mousePickingActive)= (jboolean)jtrue;
}
}
JCGO_NOSEP_FRWINL jint CFASTCALL
package_Scene__getMousePickedCount__( package_Scene This )
{
{
return JCGO_FIELD_NZACCESS(This, mousePickedCount);
}
}
JCGO_NOSEP_FRWINL jintArr CFASTCALL
package_Scene__getMousePickedFaces__( package_Scene This )
{
{
return JCGO_FIELD_NZACCESS(This, mousePickedFaces);
}
}
JCGO_NOSEP_FRWINL jObjectArr CFASTCALL
package_Scene__getMousePickedModels__( package_Scene This )
{
{
return JCGO_FIELD_NZACCESS(This, mousePickedModels);
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setBounds__IIIIII( package_Scene This, jint baseX,
jint baseY, jint clipX, jint clipY, jint width, jint viewDistance
)
{
{
JCGO_FIELD_NZACCESS(This, clipX)= clipX;
JCGO_FIELD_NZACCESS(This, clipY)= clipY;
JCGO_FIELD_NZACCESS(This, baseX)= baseX;
JCGO_FIELD_NZACCESS(This, baseY)= baseY;
JCGO_FIELD_NZACCESS(This, width)= width;
JCGO_FIELD_NZACCESS(This, viewDistance)= viewDistance;
JCGO_FIELD_NZACCESS(This, scanlines)= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(package_Scanline__class),
0, clipY + baseY);
{
jint k1;
k1= 0;
for (; k1 < clipY + baseY; k1++)
{
jObject jcgo_rcvrL1;
jObject jcgo_rcvrL2;
jint jcgo_rcvrI1;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, scanlines), jcgo_rcvrI1=
k1, jcgo_rcvrL2= (jObject)package_Scanline__new__(), *(package_Scanline*)&JCGO_ARRAY_LACCESS((jObjectArr)jcgo_rcvrL1,
jcgo_rcvrI1)= (package_Scanline)jcgo_rcvrL2);
}
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__polygonsQSort__L06628AII( package_Scene This, jObjectArr
polygons, jint low, jint high )
{
{
if (low < high)
{
package_Polygon polygon;
jint min_8bi;
jint max_7e1;
jint mid;
jint j1;
jObject jcgo_rcvrL1;
min_8bi= low - (jint)1;
max_7e1= high + (jint)1;
mid= (low + high) / (jint)2;
polygon= ((package_Polygon)JCGO_ARRAY_LACCESS(polygons, mid));
(jcgo_rcvrL1= (jObject)((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
low)), *(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, mid)=
(package_Polygon)jcgo_rcvrL1);
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, low)= polygon;
j1= JCGO_FIELD_ACCESS(package_Polygon, polygon, depth);
while (min_8bi < max_7e1)
{
do
{
max_7e1--;
}
while (JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
max_7e1)), depth) < j1);
do
{
min_8bi++;
}
while (JCGO_FIELD_ACCESS(package_Polygon, ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
min_8bi)), depth) > j1);
if (min_8bi < max_7e1)
{
package_Polygon polygon_1;
jObject jcgo_rcvrL1;
polygon_1= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, min_8bi));
(jcgo_rcvrL1= (jObject)((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons,
max_7e1)), *(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons,
min_8bi)= (package_Polygon)jcgo_rcvrL1);
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, max_7e1)= polygon_1;
}
}
(package_Scene__polygonsQSort__L06628AII(
This, polygons, low, max_7e1));
(package_Scene__polygonsQSort__L06628AII(
This, polygons, max_7e1 + (jint)1, high));
}
}
}
JCGO_NOSEP_STATIC jboolean CFASTCALL
package_Scene__polygonsOrder__L06628AII( package_Scene This, jObjectArr
polygons, jint start, jint end )
{
{
do
{
package_Polygon polygon;
package_Polygon polygon_2;
polygon= ((package_Polygon)JCGO_ARRAY_LACCESS(polygons, start));
{
jint k;
k= start + (jint)1;
for (; k <= end; k++)
{
package_Polygon polygon_1;
polygon_1= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, k));
if (!(package_Scene__separatePolygon__L06628L06628(
This, polygon_1, polygon)))
{
break;
}
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, start)= polygon_1;
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, k)= polygon;
start= k;
if (start == end)
{
JCGO_FIELD_NZACCESS(This, newStart)= start;
JCGO_FIELD_NZACCESS(This, newEnd)= start - (jint)1;
return (jboolean)jtrue;
}
}
}
polygon_2= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, end));
{
jint l;
l= end - (jint)1;
for (; l >= start; l--)
{
package_Polygon polygon_3;
polygon_3= ((package_Polygon)JCGO_ARRAY_NZLACCESS(polygons, l));
if (!(package_Scene__separatePolygon__L06628L06628(
This, polygon_2, polygon_3)))
{
break;
}
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, end)= polygon_3;
*(package_Polygon*)&JCGO_ARRAY_NZLACCESS(polygons, l)= polygon_2;
end= l;
if (start == end)
{
JCGO_FIELD_NZACCESS(This, newStart)= end + (jint)1;
JCGO_FIELD_NZACCESS(This, newEnd)= end;
return (jboolean)jtrue;
}
}
}
if (start + (jint)1 >= end)
{
JCGO_FIELD_NZACCESS(This, newStart)= start;
JCGO_FIELD_NZACCESS(This, newEnd)= end;
return (jboolean)jfalse;
}
if (!(package_Scene__polygonsOrder__L06628AII(
This, polygons, start + (jint)1, end)))
{
JCGO_FIELD_NZACCESS(This, newStart)= start;
return (jboolean)jfalse;
}
end= JCGO_FIELD_NZACCESS(This, newEnd);
}
while (jtrue);
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__setFrustum__III( package_Scene This, jint i, jint j,
jint k )
{
{
jint l;
jint i1;
jint j1;
l= ((-JCGO_FIELD_NZACCESS(This, cameraYaw)) + (jint)1024) & (jint)1023;
i1= ((-JCGO_FIELD_NZACCESS(This, cameraPitch)) + (jint)1024) & (jint)1023;
j1= ((-JCGO_FIELD_NZACCESS(This, cameraRoll)) + (jint)1024) & (jint)1023;
if (j1 != 0)
{
jint k1;
jint j2;
jint i3;
k1= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, j1);
j2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, j1 + (jint)1024);
i3= JCGO_SHR_F(j * k1 + i * j2, (jint)15);
j= JCGO_SHR_F(j * j2 - i * k1, (jint)15);
i= i3;
}
if (l != 0)
{
jint l1;
jint k2;
jint j3;
l1= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, l);
k2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, l + (jint)1024);
j3= JCGO_SHR_F(j * k2 - k * l1, (jint)15);
k= JCGO_SHR_F(j * l1 + k * k2, (jint)15);
j= j3;
}
if (i1 != 0)
{
jint i2;
jint l2;
jint k3;
i2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, i1);
l2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, i1 + (jint)1024);
k3= JCGO_SHR_F(k * i2 + i * l2, (jint)15);
k= JCGO_SHR_F(k * l2 - i * i2, (jint)15);
i= k3;
}
if (i < package_Scene__frustumMaxX)
{
package_Scene__frustumMaxX= i;
}
if (i > package_Scene__frustumMinX)
{
package_Scene__frustumMinX= i;
}
if (j < package_Scene__furstumMaxY)
{
package_Scene__furstumMaxY= j;
}
if (j > package_Scene__furstumMinY)
{
package_Scene__furstumMinY= j;
}
if (k < package_Scene__furstumFarZ)
{
package_Scene__furstumFarZ= k;
}
if (k > package_Scene__frustumNearZ)
{
package_Scene__frustumNearZ= k;
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__render__( package_Scene This )
{
{
package_GameModel model_2d;
jint i3;
jint j3;
jObject jcgo_rcvrL1;
JCGO_FIELD_NZACCESS(This, interlace)= (jboolean)JCGO_FIELD_ACCESS(package_Surface,
JCGO_FIELD_NZACCESS(This, surface), interlace);
i3= JCGO_SHR_F(JCGO_FIELD_NZACCESS(This, clipX) * JCGO_FIELD_NZACCESS(This,
clipFar3d), JCGO_FIELD_NZACCESS(This, viewDistance));
j3= JCGO_SHR_F(JCGO_FIELD_NZACCESS(This, clipY) * JCGO_FIELD_NZACCESS(This,
clipFar3d), JCGO_FIELD_NZACCESS(This, viewDistance));
package_Scene__frustumMaxX= 0;
package_Scene__frustumMinX= 0;
package_Scene__furstumMaxY= 0;
package_Scene__furstumMinY= 0;
package_Scene__furstumFarZ= 0;
package_Scene__frustumNearZ= 0;
(package_Scene__setFrustum__III(
This, (-i3), (-j3), JCGO_FIELD_NZACCESS(This, clipFar3d)));
(package_Scene__setFrustum__III(
This, (-i3), j3, JCGO_FIELD_NZACCESS(This, clipFar3d)));
(package_Scene__setFrustum__III(
This, i3, (-j3), JCGO_FIELD_NZACCESS(This, clipFar3d)));
(package_Scene__setFrustum__III(
This, i3, j3, JCGO_FIELD_NZACCESS(This, clipFar3d)));
(package_Scene__setFrustum__III(
This, (-JCGO_FIELD_NZACCESS(This, clipX)), (-JCGO_FIELD_NZACCESS(This,
clipY)), 0));
(package_Scene__setFrustum__III(
This, (-JCGO_FIELD_NZACCESS(This, clipX)), JCGO_FIELD_NZACCESS(This,
clipY), 0));
(package_Scene__setFrustum__III(
This, JCGO_FIELD_NZACCESS(This, clipX), (-JCGO_FIELD_NZACCESS(This,
clipY)), 0));
(package_Scene__setFrustum__III(
This, JCGO_FIELD_NZACCESS(This, clipX), JCGO_FIELD_NZACCESS(This,
clipY), 0));
package_Scene__frustumMaxX+= JCGO_FIELD_NZACCESS(This, cameraX);
package_Scene__frustumMinX+= JCGO_FIELD_NZACCESS(This, cameraX);
package_Scene__furstumMaxY+= JCGO_FIELD_NZACCESS(This, cameraY);
package_Scene__furstumMinY+= JCGO_FIELD_NZACCESS(This, cameraY);
package_Scene__furstumFarZ+= JCGO_FIELD_NZACCESS(This, cameraZ);
package_Scene__frustumNearZ+= JCGO_FIELD_NZACCESS(This, cameraZ);
*(package_GameModel*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), JCGO_FIELD_NZACCESS(This, modelCount))= JCGO_FIELD_NZACCESS(This,
view);
JCGO_FIELD_ACCESS(package_GameModel, JCGO_FIELD_NZACCESS(This, view),
transformState)= (jint)2;
{
jint i;
i= 0;
for (; i < JCGO_FIELD_NZACCESS(This, modelCount); i++)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), i)), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__project__IIIIIIII(
(package_GameModel)jcgo_rcvrL1, JCGO_FIELD_NZACCESS(This, cameraX),
JCGO_FIELD_NZACCESS(This, cameraY), JCGO_FIELD_NZACCESS(This,
cameraZ), JCGO_FIELD_NZACCESS(This, cameraYaw), JCGO_FIELD_NZACCESS(This,
cameraPitch), JCGO_FIELD_NZACCESS(This, cameraRoll), JCGO_FIELD_NZACCESS(This,
viewDistance), JCGO_FIELD_NZACCESS(This, clipNear)));
}
}
(jcgo_rcvrL1= (jObject)((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), JCGO_FIELD_NZACCESS(This, modelCount))), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__project__IIIIIIII(
(package_GameModel)jcgo_rcvrL1, JCGO_FIELD_NZACCESS(This, cameraX),
JCGO_FIELD_NZACCESS(This, cameraY), JCGO_FIELD_NZACCESS(This, cameraZ),
JCGO_FIELD_NZACCESS(This, cameraYaw), JCGO_FIELD_NZACCESS(This,
cameraPitch), JCGO_FIELD_NZACCESS(This, cameraRoll), JCGO_FIELD_NZACCESS(This,
viewDistance), JCGO_FIELD_NZACCESS(This, clipNear)));
JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)= 0;
{
jint count;
count= 0;
for (; count < JCGO_FIELD_NZACCESS(This, modelCount); count++)
{
package_GameModel gameModel;
gameModel= ((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), count));
if (JCGO_FIELD_ACCESS(package_GameModel, gameModel, visible))
{
{
jint face;
face= 0;
for (; face < JCGO_FIELD_NZACCESS(gameModel, numFaces); face++)
{
jintArr vertices;
jint num_vertices;
jboolean visible;
num_vertices= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
faceNumVertices), face);
vertices= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(gameModel,
faceVertices), face));
visible= jfalse;
{
jint vertex;
vertex= 0;
for (; vertex < num_vertices; vertex++)
{
jint z;
z= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_IACCESS(vertices, vertex));
if (z <= JCGO_FIELD_NZACCESS(This, clipNear) || z >= JCGO_FIELD_NZACCESS(This,
clipFar3d))
{
continue;
}
visible= (jboolean)jtrue;
break;
}
}
if (visible)
{
jint viewxcount;
viewxcount= 0;
{
jint vertex;
vertex= 0;
for (; vertex < num_vertices; vertex++)
{
jint x;
x= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewX),
JCGO_ARRAY_IACCESS(vertices, vertex));
if (x > (-JCGO_FIELD_NZACCESS(This, clipX)))
{
viewxcount|= (jint)1;
}
if (x < JCGO_FIELD_NZACCESS(This, clipX))
{
viewxcount|= (jint)2;
}
if (viewxcount == (jint)3)
{
break;
}
}
}
if (viewxcount == (jint)3)
{
jint viewycount;
viewycount= 0;
{
jint vertex;
vertex= 0;
for (; vertex < num_vertices; vertex++)
{
jint k1;
k1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, vertexViewY),
JCGO_ARRAY_IACCESS(vertices, vertex));
if (k1 > (-JCGO_FIELD_NZACCESS(This, clipY)))
{
viewycount|= (jint)1;
}
if (k1 < JCGO_FIELD_NZACCESS(This, clipY))
{
viewycount|= (jint)2;
}
if (viewycount == (jint)3)
{
break;
}
}
}
if (viewycount == (jint)3)
{
package_Polygon polygon_1;
jint facefill;
polygon_1= ((package_Polygon)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
visiblePolygons), JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)));
JCGO_FIELD_ACCESS(package_Polygon, polygon_1, model)= gameModel;
JCGO_FIELD_NZACCESS(polygon_1, face)= face;
(package_Scene__initialisePolygon3d__I(
This, JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)));
if (JCGO_FIELD_NZACCESS(polygon_1, visibility) < 0)
{
facefill= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
faceFillFront), face);
}
else
{
facefill= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
faceFillBack), face);
}
if (facefill != package_World__colourTransparent)
{
jint h;
h= 0;
{
jint vertex;
vertex= 0;
for (; vertex < num_vertices; vertex++)
{
h+= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexZ), JCGO_ARRAY_IACCESS(vertices, vertex));
}
}
JCGO_FIELD_NZACCESS(polygon_1, depth)= jcgo_div(h, num_vertices) +
JCGO_FIELD_NZACCESS(gameModel, depth);
JCGO_FIELD_NZACCESS(polygon_1, facefill)= facefill;
JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)++;
}
}
}
}
}
}
}
}
}
model_2d= JCGO_FIELD_NZACCESS(This, view);
if (JCGO_FIELD_ACCESS(package_GameModel, model_2d, visible))
{
{
jint face;
face= 0;
for (; face < JCGO_FIELD_NZACCESS(model_2d, numFaces); face++)
{
jintArr faceVertices;
jint vertex0;
jint vx;
jint vy;
jint vz;
faceVertices= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(model_2d,
faceVertices), face));
vertex0= JCGO_ARRAY_IACCESS(faceVertices, 0);
vx= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(model_2d, vertexViewX),
vertex0);
vy= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(model_2d, vertexViewY),
vertex0);
vz= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(model_2d, projectVertexZ),
vertex0);
if (vz > JCGO_FIELD_NZACCESS(This, clipNear) && vz < JCGO_FIELD_NZACCESS(This,
clipFar2d))
{
jint vw;
jint vh;
vw= jcgo_div(JCGO_SHL_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteWidth), face), JCGO_FIELD_NZACCESS(This, viewDistance)),
vz);
vh= jcgo_div(JCGO_SHL_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteHeight), face), JCGO_FIELD_NZACCESS(This, viewDistance)),
vz);
if (vx - vw / (jint)2 <= JCGO_FIELD_NZACCESS(This, clipX) &&
vx + vw / (jint)2 >= (-JCGO_FIELD_NZACCESS(This, clipX)) &&
vy - vh <= JCGO_FIELD_NZACCESS(This, clipY) && vy >= (-JCGO_FIELD_NZACCESS(This,
clipY)))
{
package_Polygon polygon_2;
polygon_2= ((package_Polygon)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
visiblePolygons), JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)));
JCGO_FIELD_ACCESS(package_Polygon, polygon_2, model)= model_2d;
JCGO_FIELD_NZACCESS(polygon_2, face)= face;
(package_Scene__initialisePolygon2d__I(
This, JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)));
JCGO_FIELD_NZACCESS(polygon_2, depth)= (vz + JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(model_2d,
projectVertexZ), JCGO_ARRAY_NZIACCESS(faceVertices, (jint)1))) /
(jint)2;
JCGO_FIELD_NZACCESS(This, visiblePolygonsCount)++;
}
}
}
}
}
if (JCGO_FIELD_NZACCESS(This, visiblePolygonsCount) == 0)
{
return;
}
(void)JCGO_FIELD_NZACCESS(This, visiblePolygonsCount);
(package_Scene__polygonsQSort__L06628AII(
This, JCGO_FIELD_NZACCESS(This, visiblePolygons), 0, JCGO_FIELD_NZACCESS(This,
visiblePolygonsCount) - (jint)1));
(package_Scene__polygonsIntersectSort__IL06628AI(
This, JCGO_FIELD_NZACCESS(This, visiblePolygons), (jint)100, JCGO_FIELD_NZACCESS(This,
visiblePolygonsCount)));
{
jint model;
model= 0;
for (; model < JCGO_FIELD_NZACCESS(This, visiblePolygonsCount);
model++)
{
package_Polygon polygon;
package_GameModel gameModel_2;
jint l;
polygon= ((package_Polygon)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
visiblePolygons), model));
gameModel_2= JCGO_FIELD_ACCESS(package_Polygon, polygon, model);
l= JCGO_FIELD_NZACCESS(polygon, face);
if (gameModel_2 == JCGO_FIELD_NZACCESS(This, view))
{
jintArr faceverts;
jint face_0;
jint vx;
jint vy;
jint vz;
jint w;
jint h;
jint tx;
jint x;
jint y;
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
jint jcgo_rcvrI3;
jint jcgo_rcvrI4;
jint jcgo_rcvrI5;
faceverts= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel_2, faceVertices), l));
face_0= JCGO_ARRAY_IACCESS(faceverts, 0);
vx= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, vertexViewX),
face_0);
vy= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, vertexViewY),
face_0);
vz= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, projectVertexZ),
face_0);
w= jcgo_div(JCGO_SHL_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteWidth), l), JCGO_FIELD_NZACCESS(This, viewDistance)), vz);
h= jcgo_div(JCGO_SHL_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteHeight), l), JCGO_FIELD_NZACCESS(This, viewDistance)),
vz);
tx= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, vertexViewX),
JCGO_ARRAY_NZIACCESS(faceverts, (jint)1)) - vx;
x= vx - w / (jint)2;
y= (JCGO_FIELD_NZACCESS(This, baseY) + vy) - h;
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, surface), jcgo_rcvrI1=
x + JCGO_FIELD_NZACCESS(This, baseX), jcgo_rcvrI2= y, jcgo_rcvrI3=
w, jcgo_rcvrI4= h, jcgo_rcvrI5= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteId), l), JCGO_CALL_VFUNC((package_Surface)jcgo_rcvrL1)->spriteClipping__IIIIIII(
(package_Surface)jcgo_rcvrL1, jcgo_rcvrI1, jcgo_rcvrI2, jcgo_rcvrI3,
jcgo_rcvrI4, jcgo_rcvrI5, tx, jcgo_div(JCGO_SHL_F((jint)256,
JCGO_FIELD_NZACCESS(This, viewDistance)), vz)));
if (JCGO_FIELD_NZACCESS(This, mousePickingActive) && JCGO_FIELD_NZACCESS(This,
mousePickedCount) < JCGO_FIELD_NZACCESS(This, mousePickedMax))
{
x+= jcgo_div(JCGO_SHL_F(JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
spriteTranslateX), l), JCGO_FIELD_NZACCESS(This, viewDistance)),
vz);
if (JCGO_FIELD_NZACCESS(This, mouseY) >= y && JCGO_FIELD_NZACCESS(This,
mouseY) <= y + h && JCGO_FIELD_NZACCESS(This, mouseX) >= x &&
JCGO_FIELD_NZACCESS(This, mouseX) <= x + w && !JCGO_FIELD_NZACCESS(gameModel_2,
unpickable) && JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
isLocalPlayer), l) == 0)
{
*(package_GameModel*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
mousePickedModels), JCGO_FIELD_NZACCESS(This, mousePickedCount))=
gameModel_2;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, mousePickedFaces),
JCGO_FIELD_NZACCESS(This, mousePickedCount))= l;
JCGO_FIELD_NZACCESS(This, mousePickedCount)++;
}
}
}
else
{
jintArr ai3;
jint k8;
jint j10;
jint l10;
k8= 0;
j10= 0;
l10= JCGO_ARRAY_IACCESS(JCGO_FIELD_ACCESS(package_GameModel, gameModel_2,
faceNumVertices), l);
ai3= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
faceVertices), l));
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, faceIntensity),
l) != package_World__colourTransparent)
{
if (JCGO_FIELD_NZACCESS(polygon, visibility) < 0)
{
j10= JCGO_FIELD_NZACCESS(gameModel_2, lightAmbience) - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
faceIntensity), l);
}
else
{
j10= JCGO_FIELD_NZACCESS(gameModel_2, lightAmbience) + JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
faceIntensity), l);
}
}
{
jint k11;
k11= 0;
for (; k11 < l10; k11++)
{
jint k2;
jint jcgo_rcvrI1;
k2= JCGO_ARRAY_IACCESS(ai3, k11);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k2), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexX), k11)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k2), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexY), k11)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexZ), k11)= jcgo_rcvrI1);
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, faceIntensity),
l) == package_World__colourTransparent)
{
if (JCGO_FIELD_NZACCESS(polygon, visibility) < 0)
{
jint jcgo_rcvrI1;
j10= (jcgo_rcvrI1= (JCGO_FIELD_NZACCESS(gameModel_2, lightAmbience) -
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, vertexIntensity),
k2)), jcgo_rcvrI1 + JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
vertexAmbience), k2));
}
else
{
jint jcgo_rcvrI1;
j10= (jcgo_rcvrI1= JCGO_FIELD_NZACCESS(gameModel_2, lightAmbience) +
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, vertexIntensity),
k2), jcgo_rcvrI1 + JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
vertexAmbience), k2));
}
}
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, projectVertexZ),
k2) >= JCGO_FIELD_NZACCESS(This, clipNear))
{
jint jcgo_rcvrI1;
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
vertexViewX), k2), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeX), k8)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
vertexViewY), k2), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeY), k8)= jcgo_rcvrI1);
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
k8)= j10;
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, projectVertexZ),
k2) > JCGO_FIELD_NZACCESS(This, fogZDistance))
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (void*)&JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexShade), k8), *(jint*)jcgo_rcvrL1+= jcgo_div((JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2) - JCGO_FIELD_NZACCESS(This, fogZDistance)),
JCGO_FIELD_NZACCESS(This, fogZFalloff)));
}
k8++;
}
else
{
jint k9;
if (k11 == 0)
{
k9= JCGO_ARRAY_NZIACCESS(ai3, l10 - (jint)1);
}
else
{
k9= JCGO_ARRAY_NZIACCESS(ai3, k11 - (jint)1);
}
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, projectVertexZ),
k9) >= JCGO_FIELD_NZACCESS(This, clipNear))
{
jint k7;
jint i5;
jint j6;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
k7= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2), jcgo_rcvrI1 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k9));
i5= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k2), jcgo_rcvrI1 - jcgo_div((jcgo_rcvrI2=
(jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k2), jcgo_rcvrI2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k9)), jcgo_rcvrI2 * (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2) - JCGO_FIELD_NZACCESS(This, clipNear))),
k7));
j6= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k2), jcgo_rcvrI1 - jcgo_div((jcgo_rcvrI2=
(jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k2), jcgo_rcvrI2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k9)), jcgo_rcvrI2 * (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2) - JCGO_FIELD_NZACCESS(This, clipNear))),
k7));
(jcgo_rcvrI1= jcgo_div(JCGO_SHL_F(i5, JCGO_FIELD_NZACCESS(This,
viewDistance)), JCGO_FIELD_NZACCESS(This, clipNear)), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeX), k8)= jcgo_rcvrI1);
(jcgo_rcvrI1= jcgo_div(JCGO_SHL_F(j6, JCGO_FIELD_NZACCESS(This,
viewDistance)), JCGO_FIELD_NZACCESS(This, clipNear)), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeY), k8)= jcgo_rcvrI1);
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
k8)= j10;
k8++;
}
if (k11 == l10 - (jint)1)
{
k9= JCGO_ARRAY_NZIACCESS(ai3, 0);
}
else
{
k9= JCGO_ARRAY_NZIACCESS(ai3, k11 + (jint)1);
}
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2, projectVertexZ),
k9) >= JCGO_FIELD_NZACCESS(This, clipNear))
{
jint l7;
jint j5;
jint k6;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
l7= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2), jcgo_rcvrI1 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k9));
j5= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k2), jcgo_rcvrI1 - jcgo_div((jcgo_rcvrI2=
(jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k2), jcgo_rcvrI2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexX), k9)), jcgo_rcvrI2 * (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2) - JCGO_FIELD_NZACCESS(This, clipNear))),
l7));
k6= (jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k2), jcgo_rcvrI1 - jcgo_div((jcgo_rcvrI2=
(jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k2), jcgo_rcvrI2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexY), k9)), jcgo_rcvrI2 * (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_2,
projectVertexZ), k2) - JCGO_FIELD_NZACCESS(This, clipNear))),
l7));
(jcgo_rcvrI1= jcgo_div(JCGO_SHL_F(j5, JCGO_FIELD_NZACCESS(This,
viewDistance)), JCGO_FIELD_NZACCESS(This, clipNear)), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeX), k8)= jcgo_rcvrI1);
(jcgo_rcvrI1= jcgo_div(JCGO_SHL_F(k6, JCGO_FIELD_NZACCESS(This,
viewDistance)), JCGO_FIELD_NZACCESS(This, clipNear)), JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
planeY), k8)= jcgo_rcvrI1);
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
k8)= j10;
k8++;
}
}
}
}
{
jint i12;
i12= 0;
for (; i12 < l10; i12++)
{
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
i12) < 0)
{
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
i12)= 0;
}
else
{
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
i12) > (jint)255)
{
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, vertexShade),
i12)= (jint)255;
}
}
if (JCGO_FIELD_NZACCESS(polygon, facefill) >= 0)
{
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
JCGO_FIELD_NZACCESS(polygon, facefill)) == (jint)1)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (void*)&JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexShade), i12), *(jint*)jcgo_rcvrL1= JCGO_SHL_F(*(jint*)jcgo_rcvrL1,
(jint)9));
}
else
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (void*)&JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This,
vertexShade), i12), *(jint*)jcgo_rcvrL1= JCGO_SHL_F(*(jint*)jcgo_rcvrL1,
(jint)6));
}
}
}
}
(package_Scene__generateScanlines__IIIIIIAIAIAL98u34I(
This, JCGO_FIELD_NZACCESS(This, planeX), JCGO_FIELD_NZACCESS(This,
planeY), JCGO_FIELD_NZACCESS(This, vertexShade), gameModel_2,
0, 0, 0, 0, k8, l));
if (JCGO_FIELD_NZACCESS(This, maxY) > JCGO_FIELD_NZACCESS(This,
minY))
{
(package_Scene__rasterize__IIIIAIAIAIL98u34(
This, JCGO_FIELD_NZACCESS(This, vertexX), JCGO_FIELD_NZACCESS(This,
vertexY), JCGO_FIELD_NZACCESS(This, vertexZ), gameModel_2, 0,
0, l10, JCGO_FIELD_NZACCESS(polygon, facefill)));
}
}
}
}
JCGO_FIELD_NZACCESS(This, mousePickingActive)= (jboolean)jfalse;
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__setCamera__IIIIIII( package_Scene This, jint x, jint
z, jint y, jint pitch, jint yaw, jint roll, jint distance )
{
{
jint l1;
jint i2;
jint j2;
pitch&= (jint)1023;
yaw&= (jint)1023;
roll&= (jint)1023;
JCGO_FIELD_NZACCESS(This, cameraYaw)= ((jint)1024 - pitch) & (jint)1023;
JCGO_FIELD_NZACCESS(This, cameraPitch)= ((jint)1024 - yaw) & (jint)1023;
JCGO_FIELD_NZACCESS(This, cameraRoll)= ((jint)1024 - roll) & (jint)1023;
l1= 0;
i2= 0;
j2= distance;
if (pitch != 0)
{
jint k2;
jint j3;
jint i4;
k2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, pitch);
j3= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, pitch + (jint)1024);
i4= JCGO_SHR_F(i2 * j3 - j2 * k2, (jint)15);
j2= JCGO_SHR_F(i2 * k2 + j2 * j3, (jint)15);
i2= i4;
}
if (yaw != 0)
{
jint l2;
jint k3;
jint j4;
l2= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, yaw);
k3= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, yaw + (jint)1024);
j4= JCGO_SHR_F(j2 * l2 + l1 * k3, (jint)15);
j2= JCGO_SHR_F(j2 * k3 - l1 * l2, (jint)15);
l1= j4;
}
if (roll != 0)
{
jint i3;
jint l3;
jint k4;
i3= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, roll);
l3= JCGO_ARRAY_IACCESS(package_Scene__sin2048Cache, roll + (jint)1024);
k4= JCGO_SHR_F(i2 * i3 + l1 * l3, (jint)15);
i2= JCGO_SHR_F(i2 * l3 - l1 * i3, (jint)15);
l1= k4;
}
JCGO_FIELD_NZACCESS(This, cameraX)= x - l1;
JCGO_FIELD_NZACCESS(This, cameraY)= z - i2;
JCGO_FIELD_NZACCESS(This, cameraZ)= y - j2;
}
}
JCGO_NOSEP_STATIC jboolean CFASTCALL
package_Scene__separatePolygon__L06628L06628( package_Scene This,
package_Polygon polygon, package_Polygon polygon_1 )
{
{
package_GameModel gameModel;
package_GameModel gameModel_1;
jintArr ai;
jintArr ai1;
jintArr ai2;
jintArr ai3;
jintArr ai4;
jintArr ai5;
jint i;
jint j;
jint k;
jint l;
jint k2;
jint l2;
jint i3;
jint j3;
jint k3;
jint l3;
jint i4;
jint j4;
jboolean flag;
jint jcgo_rcvrI1;
if ((jcgo_rcvrI1= JCGO_FIELD_ACCESS(package_Polygon, polygon, minPlaneX),
jcgo_rcvrI1 >= JCGO_FIELD_ACCESS(package_Polygon, polygon_1, maxPlaneX)))
{
return (jboolean)jtrue;
}
if (JCGO_FIELD_NZACCESS(polygon_1, minPlaneX) >= JCGO_FIELD_NZACCESS(polygon,
maxPlaneX))
{
return (jboolean)jtrue;
}
if (JCGO_FIELD_NZACCESS(polygon, minPlaneY) >= JCGO_FIELD_NZACCESS(polygon_1,
maxPlaneY))
{
return (jboolean)jtrue;
}
if (JCGO_FIELD_NZACCESS(polygon_1, minPlaneY) >= JCGO_FIELD_NZACCESS(polygon,
maxPlaneY))
{
return (jboolean)jtrue;
}
if (JCGO_FIELD_NZACCESS(polygon, minZ) >= JCGO_FIELD_NZACCESS(polygon_1,
maxZ))
{
return (jboolean)jtrue;
}
if (JCGO_FIELD_NZACCESS(polygon_1, minZ) > JCGO_FIELD_NZACCESS(polygon,
maxZ))
{
return (jboolean)jfalse;
}
gameModel= JCGO_FIELD_NZACCESS(polygon, model);
gameModel_1= JCGO_FIELD_NZACCESS(polygon_1, model);
i= JCGO_FIELD_NZACCESS(polygon, face);
j= JCGO_FIELD_NZACCESS(polygon_1, face);
ai= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel, faceVertices), i));
ai1= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_ACCESS(package_GameModel,
gameModel_1, faceVertices), j));
k= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, faceNumVertices),
i);
l= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, faceNumVertices),
j);
k2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexX),
JCGO_ARRAY_IACCESS(ai1, 0));
l2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexY),
JCGO_ARRAY_NZIACCESS(ai1, 0));
i3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai1, 0));
j3= JCGO_FIELD_NZACCESS(polygon_1, normalX);
k3= JCGO_FIELD_NZACCESS(polygon_1, normalY);
l3= JCGO_FIELD_NZACCESS(polygon_1, normalZ);
i4= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1, normalMagnitude),
j);
j4= JCGO_FIELD_NZACCESS(polygon_1, visibility);
flag= jfalse;
{
jint k4;
k4= 0;
for (; k4 < k; k4++)
{
jint i1;
jint i2;
jint jcgo_rcvrI1;
i1= JCGO_ARRAY_IACCESS(ai, k4);
i2= (jcgo_rcvrI1= (jcgo_rcvrI1= (k2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexX), i1)) * j3, jcgo_rcvrI1 + (l2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexY), i1)) * k3), jcgo_rcvrI1 + (i3 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
projectVertexZ), i1)) * l3);
if ((i2 >= (-i4) || j4 >= 0) && (i2 <= i4 || j4 <= 0))
{
continue;
}
flag= (jboolean)jtrue;
break;
}
}
if (!flag)
{
return (jboolean)jtrue;
}
k2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexX),
JCGO_ARRAY_IACCESS(ai, 0));
l2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexY),
JCGO_ARRAY_NZIACCESS(ai, 0));
i3= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, projectVertexZ),
JCGO_ARRAY_NZIACCESS(ai, 0));
j3= JCGO_FIELD_NZACCESS(polygon, normalX);
k3= JCGO_FIELD_NZACCESS(polygon, normalY);
l3= JCGO_FIELD_NZACCESS(polygon, normalZ);
i4= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel, normalMagnitude),
i);
j4= JCGO_FIELD_NZACCESS(polygon, visibility);
flag= (jboolean)jfalse;
{
jint l4;
l4= 0;
for (; l4 < l; l4++)
{
jint j1;
jint j2;
jint jcgo_rcvrI1;
j1= JCGO_ARRAY_NZIACCESS(ai1, l4);
j2= (jcgo_rcvrI1= (jcgo_rcvrI1= (k2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexX), j1)) * j3, jcgo_rcvrI1 + (l2 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexY), j1)) * k3), jcgo_rcvrI1 + (i3 - JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
projectVertexZ), j1)) * l3);
if ((j2 >= (-i4) || j4 <= 0) && (j2 <= i4 || j4 >= 0))
{
continue;
}
flag= (jboolean)jtrue;
break;
}
}
if (!flag)
{
return (jboolean)jtrue;
}
;
if (k == (jint)2)
{
jint i5;
jint k1;
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
ai2= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)4);
ai3= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)4);
i5= JCGO_ARRAY_NZIACCESS(ai, 0);
k1= JCGO_ARRAY_NZIACCESS(ai, (jint)1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewX), i5) - (jint)20, JCGO_ARRAY_NZIACCESS(ai2, 0)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewX), k1) - (jint)20, JCGO_ARRAY_NZIACCESS(ai2, (jint)1)=
jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewX), k1) + (jint)20, JCGO_ARRAY_NZIACCESS(ai2, (jint)2)=
jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewX), i5) + (jint)20, JCGO_ARRAY_NZIACCESS(ai2, (jint)3)=
jcgo_rcvrI1);
(jcgo_rcvrL1= (jObject)ai3, jcgo_rcvrI1= (jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewY), i5), JCGO_ARRAY_NZIACCESS(ai3, (jint)3)= jcgo_rcvrI2),
JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1, 0)= jcgo_rcvrI1);
(jcgo_rcvrL1= (jObject)ai3, jcgo_rcvrI1= (jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewY), k1), JCGO_ARRAY_NZIACCESS(ai3, (jint)2)= jcgo_rcvrI2),
JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1, (jint)1)= jcgo_rcvrI1);
}
else
{
ai2= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, k);
ai3= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, k);
{
jint j5;
j5= 0;
for (; j5 < k; j5++)
{
jint i6;
jint jcgo_rcvrI1;
i6= JCGO_ARRAY_NZIACCESS(ai, j5);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewX), i6), JCGO_ARRAY_NZIACCESS(ai2, j5)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel,
vertexViewY), i6), JCGO_ARRAY_NZIACCESS(ai3, j5)= jcgo_rcvrI1);
}
}
}
;
if (l == (jint)2)
{
jint k5;
jint l1;
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jint jcgo_rcvrI2;
ai4= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)4);
ai5= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)4);
k5= JCGO_ARRAY_NZIACCESS(ai1, 0);
l1= JCGO_ARRAY_NZIACCESS(ai1, (jint)1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewX), k5) - (jint)20, JCGO_ARRAY_NZIACCESS(ai4, 0)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewX), l1) - (jint)20, JCGO_ARRAY_NZIACCESS(ai4, (jint)1)=
jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewX), l1) + (jint)20, JCGO_ARRAY_NZIACCESS(ai4, (jint)2)=
jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewX), k5) + (jint)20, JCGO_ARRAY_NZIACCESS(ai4, (jint)3)=
jcgo_rcvrI1);
(jcgo_rcvrL1= (jObject)ai5, jcgo_rcvrI1= (jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewY), k5), JCGO_ARRAY_NZIACCESS(ai5, (jint)3)= jcgo_rcvrI2),
JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1, 0)= jcgo_rcvrI1);
(jcgo_rcvrL1= (jObject)ai5, jcgo_rcvrI1= (jcgo_rcvrI2= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewY), l1), JCGO_ARRAY_NZIACCESS(ai5, (jint)2)= jcgo_rcvrI2),
JCGO_ARRAY_NZIACCESS((jintArr)jcgo_rcvrL1, (jint)1)= jcgo_rcvrI1);
}
else
{
ai4= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, l);
ai5= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, l);
{
jint l5;
l5= 0;
for (; l5 < l; l5++)
{
jint j6;
jint jcgo_rcvrI1;
j6= JCGO_ARRAY_NZIACCESS(ai1, l5);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewX), j6), JCGO_ARRAY_NZIACCESS(ai4, l5)= jcgo_rcvrI1);
(jcgo_rcvrI1= JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(gameModel_1,
vertexViewY), j6), JCGO_ARRAY_NZIACCESS(ai5, l5)= jcgo_rcvrI1);
}
}
}
return (jboolean)(!(package_Scene__intersect__IAIAIAIA(
This, ai2, ai3, ai4, ai5)));
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__allocateTextures__III( package_Scene This, jint count,
jint something7, jint something11 )
{
{
JCGO_FIELD_NZACCESS(This, textureCount)= count;
JCGO_FIELD_NZACCESS(This, textureColoursUsed)= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte),
1, count);
JCGO_FIELD_NZACCESS(This, textureColourList)= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
1, count);
JCGO_FIELD_NZACCESS(This, textureDimension)= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, count);
JCGO_FIELD_NZACCESS(This, textureLoadedNumber)= (jlongArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jlong),
0, count);
JCGO_FIELD_NZACCESS(This, textureBackTransparent)= (jbooleanArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jboolean),
0, count);
JCGO_FIELD_NZACCESS(This, texturePixels)= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
1, count);
package_Scene__textureCountLoaded= JLONG_C(0);
JCGO_FIELD_NZACCESS(This, textureColours64)= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
1, something7);
JCGO_FIELD_NZACCESS(This, textureColours128)= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
1, something11);
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__defineTexture__IBAIAI( package_Scene This, jbyteArr
usedColours, jintArr colours, jint id, jint wide128 )
{
{
*(jbyteArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, textureColoursUsed),
id)= usedColours;
*(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, textureColourList),
id)= colours;
JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension), id)=
wide128;
JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, textureLoadedNumber),
id)= JLONG_C(0);
JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(This, textureBackTransparent),
id)= (jboolean)jfalse;
*(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
id)= (jintArr)jnull;
(package_Scene__prepareTexture__I(
This, id));
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__prepareTexture__I( package_Scene This, jint id )
{
{
jlong GIGALONG;
jint wat;
jlong jcgo_rcvrJ1;
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
if (id < 0)
{
return;
}
(jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, textureLoadedNumber),
jcgo_rcvrI1= id, jcgo_rcvrJ1= package_Scene__textureCountLoaded++,
JCGO_ARRAY_JACCESS((jlongArr)jcgo_rcvrL1, jcgo_rcvrI1)= jcgo_rcvrJ1);
if (((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
id)) != jnull)
{
return;
}
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
id) == 0)
{
jlong GIGALONG;
jint wut;
jObject jcgo_rcvrL1;
{
jint j;
j= 0;
for (; j < JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(This, textureColours64));
j++)
{
if (((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, textureColours64),
j)) == jnull)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)16384)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColours64), j)= (jintArr)jcgo_rcvrL1);
(jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColours64), j)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), id)= (jintArr)jcgo_rcvrL1);
(package_Scene__setTexturePixels__I(
This, id));
return;
}
}
}
GIGALONG= JLONG_C(0x40000000);
wut= 0;
{
jint k1;
k1= 0;
for (; k1 < JCGO_FIELD_NZACCESS(This, textureCount); k1++)
{
if (k1 != id && JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
k1) == 0 && ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), k1)) != jnull && JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This,
textureLoadedNumber), k1) < GIGALONG)
{
GIGALONG= JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, textureLoadedNumber),
k1);
wut= k1;
}
}
}
(jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), wut)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), id)= (jintArr)jcgo_rcvrL1);
*(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
wut)= (jintArr)jnull;
(package_Scene__setTexturePixels__I(
This, id));
return;
}
{
jint k;
k= 0;
for (; k < JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(This, textureColours128));
k++)
{
if (((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, textureColours128),
k)) == jnull)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)65536L)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColours128), k)= (jintArr)jcgo_rcvrL1);
(jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColours128), k)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), id)= (jintArr)jcgo_rcvrL1);
(package_Scene__setTexturePixels__I(
This, id));
return;
}
}
}
GIGALONG= JLONG_C(0x40000000);
wat= 0;
{
jint i2;
i2= 0;
for (; i2 < JCGO_FIELD_NZACCESS(This, textureCount); i2++)
{
if (i2 != id && JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
i2) == (jint)1 && ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), i2)) != jnull && JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This,
textureLoadedNumber), i2) < GIGALONG)
{
GIGALONG= JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, textureLoadedNumber),
i2);
wat= i2;
}
}
}
(jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), wat)), *(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), id)= (jintArr)jcgo_rcvrL1);
*(jintArr*)&JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
wat)= (jintArr)jnull;
(package_Scene__setTexturePixels__I(
This, id));
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__setTexturePixels__I( package_Scene This, jint id )
{
{
jintArr colours;
jint colourCount;
jchar textureWidth;
if (JCGO_ARRAY_IACCESS(JCGO_FIELD_NZACCESS(This, textureDimension),
id) == 0)
{
textureWidth= (jchar)(jint)64;
}
else
{
textureWidth= (jchar)(jint)128;
}
colours= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
id));
colourCount= 0;
{
jint x;
x= 0;
for (; x < (jint)textureWidth; x++)
{
{
jint y;
y= 0;
for (; y < (jint)textureWidth; y++)
{
jint colour;
jObject jcgo_rcvrL1;
colour= (jcgo_rcvrL1= (jObject)((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColourList), id)), JCGO_ARRAY_IACCESS((jintArr)jcgo_rcvrL1,
(jint)((unsigned char)(JCGO_ARRAY_BACCESS(((jbyteArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
textureColoursUsed), id)), y + x * textureWidth)))));
colour&= (jint)16316671L;
if (colour == 0)
{
colour= (jint)1;
}
else
{
if (colour == (jint)16253183L)
{
colour= 0;
JCGO_ARRAY_ZACCESS(JCGO_FIELD_NZACCESS(This, textureBackTransparent),
id)= (jboolean)jtrue;
}
}
JCGO_ARRAY_IACCESS(colours, colourCount++)= colour;
}
}
}
}
{
jint i1;
i1= 0;
for (; i1 < colourCount; i1++)
{
jint colour;
colour= JCGO_ARRAY_IACCESS(colours, i1);
JCGO_ARRAY_NZIACCESS(colours, colourCount + i1)= ((colour - JCGO_USHR_F(colour,
(jint)3)) & (jint)16316671L);
JCGO_ARRAY_NZIACCESS(colours, colourCount * (jint)2 + i1)= ((colour -
JCGO_USHR_F(colour, (jint)2)) & (jint)16316671L);
JCGO_ARRAY_NZIACCESS(colours, colourCount * (jint)3 + i1)= ((colour -
JCGO_USHR_F(colour, (jint)2) - JCGO_USHR_F(colour, (jint)3)) &
(jint)16316671L);
}
}
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__doSOemthingWithTheFuckinFountainFuck__I( package_Scene
This, jint id )
{
{
jintArr colours;
jchar c;
if (((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
id)) == jnull)
{
return;
}
colours= ((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This, texturePixels),
id));
{
jint i;
i= 0;
for (; i < (jint)64; i++)
{
jint k;
jint l;
k= i + (jint)4032;
l= JCGO_ARRAY_IACCESS(colours, k);
{
jint j1;
j1= 0;
for (; j1 < (jint)63; j1++)
{
jint jcgo_rcvrI1;
(jcgo_rcvrI1= JCGO_ARRAY_NZIACCESS(colours, k - (jint)64), JCGO_ARRAY_NZIACCESS(colours,
k)= jcgo_rcvrI1);
k-= (jint)64;
}
}
JCGO_ARRAY_IACCESS(((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), id)), k)= l;
}
}
c= (jchar)(jint)4096;
{
jint i1;
i1= 0;
for (; i1 < (jint)c; i1++)
{
jint k1;
k1= JCGO_ARRAY_IACCESS(colours, i1);
JCGO_ARRAY_NZIACCESS(colours, c + i1)= ((k1 - JCGO_USHR_F(k1, (jint)3)) &
(jint)16316671L);
JCGO_ARRAY_NZIACCESS(colours, c * (jint)2 + i1)= ((k1 - JCGO_USHR_F(k1,
(jint)2)) & (jint)16316671L);
JCGO_ARRAY_NZIACCESS(colours, c * (jint)3 + i1)= ((k1 - JCGO_USHR_F(k1,
(jint)2) - JCGO_USHR_F(k1, (jint)3)) & (jint)16316671L);
}
}
}
}
JCGO_NOSEP_STATIC jint CFASTCALL
package_Scene__method302__I( package_Scene This, jint i )
{
{
if (i == package_World__colourTransparent)
{
return 0;
}
(package_Scene__prepareTexture__I(
This, i));
if (i >= 0)
{
return JCGO_ARRAY_IACCESS(((jintArr)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
texturePixels), i)), 0);
}
if (i < 0)
{
jint j;
jint k;
jint l;
i= (-(i + (jint)1));
j= JCGO_SHR_F(i, (jint)10) & (jint)31;
k= JCGO_SHR_F(i, (jint)5) & (jint)31;
l= i & (jint)31;
return JCGO_SHL_F(j, (jint)19) + JCGO_SHL_F(k, (jint)11) + JCGO_SHL_F(l,
(jint)3);
}
else
{
return 0;
}
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setLight__III( package_Scene This, jint i, jint j,
jint k )
{
{
if (i == 0 && j == 0 && k == 0)
{
i= (jint)32;
}
{
jint l;
l= 0;
for (; l < JCGO_FIELD_NZACCESS(This, modelCount); l++)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), l)), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__setLight__III(
(package_GameModel)jcgo_rcvrL1, i, j, k));
}
}
}
}
JCGO_NOSEP_FRWINL void CFASTCALL
package_Scene__setLight__IIIII( package_Scene This, jint i, jint j,
jint k, jint l, jint i1 )
{
{
if (k == 0 && l == 0 && i1 == 0)
{
k= (jint)32;
}
{
jint j1;
j1= 0;
for (; j1 < JCGO_FIELD_NZACCESS(This, modelCount); j1++)
{
jObject jcgo_rcvrL1;
(jcgo_rcvrL1= (jObject)((package_GameModel)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
models), j1)), JCGO_CALL_FINALF((package_GameModel)jcgo_rcvrL1)
package_GameModel__setLight__IIIII(
(package_GameModel)jcgo_rcvrL1, i, j, k, l, i1));
}
}
}
}
JCGO_NOSEP_STATIC jint CFASTCALL
package_Scene__method306__IIIII( package_Scene This, jint i, jint
j, jint k, jint l, jint i1 )
{
{
if (l == j)
{
return i;
}
else
{
return i + jcgo_div(((k - i) * (i1 - j)), (l - j));
}
}
}
JCGO_NOSEP_STATIC jboolean CFASTCALL
package_Scene__method307__IIIIZ( package_Scene This, jint i, jint
j, jint k, jint l, jboolean flag )
{
{
if ((flag && i <= k) || i < k)
{
if (i > l)
{
return (jboolean)jtrue;
}
if (j > k)
{
return (jboolean)jtrue;
}
if (j > l)
{
return (jboolean)jtrue;
}
return (jboolean)(!flag);
}
if (i < l)
{
return (jboolean)jtrue;
}
if (j < k)
{
return (jboolean)jtrue;
}
if (j < l)
{
return (jboolean)jtrue;
}
else
{
return (jboolean)flag;
}
}
}
JCGO_NOSEP_STATIC jboolean CFASTCALL
package_Scene__method308__IIIZ( package_Scene This, jint i, jint j,
jint k, jboolean flag )
{
{
if ((flag && i <= k) || i < k)
{
if (j > k)
{
return (jboolean)jtrue;
}
return (jboolean)(!flag);
}
if (j < k)
{
return (jboolean)jtrue;
}
else
{
return (jboolean)flag;
}
}
}
JCGO_NOSEP_STATIC void CFASTCALL
package_Scene__class__0( void )
{
JCGO_CLINIT_BEGIN(package_Scene__class);
package_Scene__sin2048Cache= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)2048);
package_Scene__sin512Cache= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint),
0, (jint)512);
JCGO_CLINIT_DONE(package_Scene__class);
}
JCGO_NOSEP_DATA CONST struct package_Scene_methods_s package_Scene_methods=
{
JCGO_CLASSREF_OF(package_Scene__class),
JCGO_GCJDESCR_INIT(package_Scene_s, spriteTranslateX)
OBJT_package_Scene,
(JCGO_OBJSIZE_T)sizeof(struct package_Scene_s),
NULL,
JCGO_CLINIT_INIT(package_Scene__class__0)
0,
java_lang_Object__equals__Lo,
java_lang_Object__hashCode__,
java_lang_Object__toString__,
java_lang_Object__finalize__
};
JCGO_NOSEP_DATA struct package_Scene_class_s package_Scene__class
ATTRIBNONGC=
{
{
&java_lang_Class_methods,
JCGO_MON_INIT
JCGO_OBJREF_OF(*(java_lang_Object)&package_Scene_methods),
JCGO_STRREF_OF(jcgo_string1_Scene),
JCGO_CLASSREF_OF(java_lang_Object__class),
((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
0x1c1
}
};
JCGO_NOSEP_GCDATA jintArr package_Scene__sin2048Cache ATTRIBGCBSS=
jnull;
JCGO_NOSEP_GCDATA jintArr package_Scene__sin512Cache ATTRIBGCBSS=
jnull;
JCGO_NOSEP_GCDATA jbyteArr package_Scene__aByteArray434 ATTRIBGCBSS=
jnull;
JCGO_NOSEP_DATA jlong package_Scene__textureCountLoaded= (jlong)0;
JCGO_NOSEP_DATA jint package_Scene__frustumMaxX= (jint)0;
JCGO_NOSEP_DATA jint package_Scene__frustumMinX= (jint)0;
JCGO_NOSEP_DATA jint package_Scene__furstumMaxY= (jint)0;
JCGO_NOSEP_DATA jint package_Scene__furstumMinY= (jint)0;
JCGO_NOSEP_DATA jint package_Scene__furstumFarZ= (jint)0;
JCGO_NOSEP_DATA jint package_Scene__frustumNearZ= (jint)0;
JCGO_NOSEP_DATA CONST jcgo_arrtype30_Object jcgo_array3_Scene=
{
(jvtable)&jbyteArr_methods,
JCGO_MON_INIT
5,
{
(jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)99/*'c'*/, (jbyte)(jchar)101/*'e'*/,
(jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)101/*'e'*/
}
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_Scene
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array3_Scene),
0, 5, (jint)0x4c0286cL
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string2_Scene
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array9_String6D),
0, 33, (jint)0xdd19a613L
};
#ifdef CHKALL_Scene
#include "jcgochke.h"
#endif
#endif