Exemplo n.º 1
0
        public void method279(int i, int j, int k, int l, int i1, int j1, int k1,
				int l1, int i2, int j2, int k2, int l2, int i3, int j3,
				int k3, int l3, int i4, int j4, int k4, int l4)
        {
            if (l == 0)
            {
                Class43 class43 = new Class43(k2, l2, i3, j3, -1, k4, false);
                for (int i5 = i; i5 >= 0; i5--)
                    if (groundArray[i5][j][k] == null)
                        groundArray[i5][j][k] = new Ground(i5, j, k);

                groundArray[i][j][k].aClass43_1311 = class43;
                return;
            }
            if (l == 1)
            {
                Class43 class43_1 = new Class43(k3, l3, i4, j4, j1, l4, k1 == l1 && k1 == i2 && k1 == j2);
                for (int j5 = i; j5 >= 0; j5--)
                    if (groundArray[j5][j][k] == null)
                        groundArray[j5][j][k] = new Ground(j5, j, k);

                groundArray[i][j][k].aClass43_1311 = class43_1;
                return;
            }
            Class40 class40 = new Class40(k, k3, j3, i2, j1, i4, i1, k2, k4, i3, j2, l1, k1, l, j4, l3, l2, j, l4);
            for (int k5 = i; k5 >= 0; k5--)
                if (groundArray[k5][j][k] == null)
                    groundArray[k5][j][k] = new Ground(k5, j, k);

            groundArray[i][j][k].aClass40_1312 = class40;
        }
Exemplo n.º 2
0
        private void method315(Class43 class43, int i, int j, int k, int l, int i1, int j1,
				int k1)
        {
            int l1;
            int i2 = l1 = (j1 << 7) - anInt455;
            int j2;
            int k2 = j2 = (k1 << 7) - anInt457;
            int l2;
            int i3 = l2 = i2 + 128;
            int j3;
            int k3 = j3 = k2 + 128;
            int l3 = anIntArrayArrayArray440[i][j1][k1] - anInt456;
            int i4 = anIntArrayArrayArray440[i][j1 + 1][k1] - anInt456;
            int j4 = anIntArrayArrayArray440[i][j1 + 1][k1 + 1] - anInt456;
            int k4 = anIntArrayArrayArray440[i][j1][k1 + 1] - anInt456;
            int l4 = k2 * l + i2 * i1 >> 16;
            k2 = k2 * i1 - i2 * l >> 16;
            i2 = l4;
            l4 = l3 * k - k2 * j >> 16;
            k2 = l3 * j + k2 * k >> 16;
            l3 = l4;
            if (k2 < 50)
                return;
            l4 = j2 * l + i3 * i1 >> 16;
            j2 = j2 * i1 - i3 * l >> 16;
            i3 = l4;
            l4 = i4 * k - j2 * j >> 16;
            j2 = i4 * j + j2 * k >> 16;
            i4 = l4;
            if (j2 < 50)
                return;
            l4 = k3 * l + l2 * i1 >> 16;
            k3 = k3 * i1 - l2 * l >> 16;
            l2 = l4;
            l4 = j4 * k - k3 * j >> 16;
            k3 = j4 * j + k3 * k >> 16;
            j4 = l4;
            if (k3 < 50)
                return;
            l4 = j3 * l + l1 * i1 >> 16;
            j3 = j3 * i1 - l1 * l >> 16;
            l1 = l4;
            l4 = k4 * k - j3 * j >> 16;
            j3 = k4 * j + j3 * k >> 16;
            k4 = l4;
            if (j3 < 50)
                return;
            int i5 = Rasterizer.center_x + (i2 << 9) / k2;
            int j5 = Rasterizer.center_y + (l3 << 9) / k2;
            int k5 = Rasterizer.center_x + (i3 << 9) / j2;
            int l5 = Rasterizer.center_y + (i4 << 9) / j2;
            int i6 = Rasterizer.center_x + (l2 << 9) / k3;
            int j6 = Rasterizer.center_y + (j4 << 9) / k3;
            int k6 = Rasterizer.center_x + (l1 << 9) / j3;
            int l6 = Rasterizer.center_y + (k4 << 9) / j3;
            Rasterizer.alpha = 0;
            if ((i6 - k6) * (l5 - l6) - (j6 - l6) * (k5 - k6) > 0)
            {
                Rasterizer.aBoolean1462 = i6 < 0 || k6 < 0 || k5 < 0 || i6 > DrawingArea.centerX || k6 > DrawingArea.centerX || k5 > DrawingArea.centerX;
                if (aBoolean467 && method318(anInt468, anInt469, j6, l6, l5, i6, k6, k5))
                {
                    anInt470 = j1;
                    anInt471 = k1;
                }
                if (class43.anInt720 == -1)
                {
                    if (class43.anInt718 != 0xbc614e)
                        Rasterizer.DrawShadedTriangle(j6, l6, l5, i6, k6, k5, class43.anInt718, class43.anInt719, class43.anInt717);
                }
                else
                    if (!lowMem)
                    {
                        if (class43.aBoolean721)
                            Rasterizer.DrawTexturedTriangle(j6, l6, l5, i6, k6, k5, class43.anInt718, class43.anInt719, class43.anInt717, i2, i3, l1, l3, i4, k4, k2, j2, j3, class43.anInt720);
                        else
                            Rasterizer.DrawTexturedTriangle(j6, l6, l5, i6, k6, k5, class43.anInt718, class43.anInt719, class43.anInt717, l2, l1, i3, j4, k4, i4, k3, j3, j2, class43.anInt720);
                    }
                    else
                    {
                        int i7 = anIntArray485[class43.anInt720];
                        Rasterizer.DrawShadedTriangle(j6, l6, l5, i6, k6, k5, method317(i7, class43.anInt718), method317(i7, class43.anInt719), method317(i7, class43.anInt717));
                    }
            }
            if ((i5 - k5) * (l6 - l5) - (j5 - l5) * (k6 - k5) > 0)
            {
                Rasterizer.aBoolean1462 = i5 < 0 || k5 < 0 || k6 < 0 || i5 > DrawingArea.centerX || k5 > DrawingArea.centerX || k6 > DrawingArea.centerX;
                if (aBoolean467 && method318(anInt468, anInt469, j5, l5, l6, i5, k5, k6))
                {
                    anInt470 = j1;
                    anInt471 = k1;
                }
                if (class43.anInt720 == -1)
                {
                    if (class43.anInt716 != 0xbc614e)
                    {
                        Rasterizer.DrawShadedTriangle(j5, l5, l6, i5, k5, k6, class43.anInt716, class43.anInt717, class43.anInt719);
                    }
                }
                else
                {
                    if (!lowMem)
                    {
                        Rasterizer.DrawTexturedTriangle(j5, l5, l6, i5, k5, k6, class43.anInt716, class43.anInt717, class43.anInt719, i2, i3, l1, l3, i4, k4, k2, j2, j3, class43.anInt720);
                        return;
                    }
                    int j7 = anIntArray485[class43.anInt720];
                    Rasterizer.DrawShadedTriangle(j5, l5, l6, i5, k5, k6, method317(j7, class43.anInt716), method317(j7, class43.anInt717), method317(j7, class43.anInt719));
                }
            }
        }