Пример #1
0
        private void PillarPalette(int i)
        {
            const int ShadowPos = 28;
            const int ShadowEnd = 36;
            int       j, k, l;
            byte      c1, c2, c3, Base;

            Base = Buffers.Options.BackGrColor1;
            c1   = Palette [Base, 0] / 4; //Palette is a Unit used for manipulating any color in 256 color video mode
            c2   = Palette [Base, 1] / 4; //Going to need to use something to replace palette.
            c3   = Palette [Base, 2] / 4;
            i    = i % 60;
            j    = 0;
            k    = 1;
            while (k < 15)
            {
                for (l = j; l <= k; l++)
                {
                    Palettes.OutPalette(0xC0 + ((l + i) % 60), c1 + k, c2 + k, c3 + k);
                    Palettes.OutPalette(0xC0 + ((ShadowPos + i - l) % 60), c1 + k, c2 + k, c3 + k);
                }
                j = k;
                k = k + 1;
            }
            for (j = ShadowPos; j <= ShadowEnd; j++)
            {
                if (c1 > 0)
                {
                    c1--;
                }
                if (c2 > 0)
                {
                    c2--;
                }
                if (c3 > 0)
                {
                    c3--;
                }
                Palettes.OutPalette(0xC0 + ((j + i) % 60), c1, c2, c3);
            }
            Base = Buffers.Options.BackGrColor2;
            c1   = Palette [Base, 0] / 4;
            c2   = Palette [Base, 1] / 4;
            c3   = Palette [Base, 2] / 4;
            for (j = ShadowEnd + 1; j <= 59; j++)
            {
                Palettes.OutPalette(0xC0 + ((i + j) % 60), c1, c2, c3);
            }
        }