Exemple #1
0
        protected void RebuildPaletteData()
        {
            if (this.Palette.Length != 60)
            {
                paletteData = new byte[this.Palette.Length * 2];
            }
            else
            {
                paletteData = new byte[this.Palette.Length * 2 + 4];
                // F652 7603
                paletteData[120] = 0xF6;
                paletteData[121] = 0x52;
                paletteData[122] = 0x76;
                paletteData[123] = 0x03;
            }
            this.PaletteDataLength = (ushort)paletteData.Length;

            for (int i = 0; i < this.Palette.Length; i++)
            {
                var bytes = SpriteUtilities.GetBytesFromColor(this.Palette[i]);
                paletteData[i * 2]     = bytes[0];
                paletteData[i * 2 + 1] = bytes[1];
            }

            if (this.Palette.Length == 62 && this.Palette[60] == Color.Black)
            {
                paletteData[120] = 0xF6;
                paletteData[121] = 0x52;
                paletteData[122] = 0x76;
                paletteData[123] = 0x03;
            }
        }
Exemple #2
0
        void UpdateRawFromPalette()
        {
            this.rawPalette = new byte[this.palette.Length * 2];

            for (int i = 0; i < this.palette.Length; i++)
            {
                var rawBytes = SpriteUtilities.GetBytesFromColor(this.palette[i]);

                this.rawPalette[i * 2]     = rawBytes[0];
                this.rawPalette[i * 2 + 1] = rawBytes[1];
            }
        }