Example #1
0
        public void ApplyLevelPalette(System.Drawing.Bitmap image)
        {
            System.Drawing.Imaging.ColorPalette bitmapPalette = image.Palette; // Get brush paletteIndex

            NesPalette bgPalette     = Level.BgPalette;                        // Get ROM palettes
            NesPalette spritePalette = Level.SpritePalette;

            bgPalette.ApplyTable(bitmapPalette.Entries); // Apply to brush paletteIndex
            bgPalette.ApplyTable(bitmapPalette.Entries, 16);
            spritePalette.ApplyTable(bitmapPalette.Entries, 32);
            spritePalette.ApplyTable(bitmapPalette.Entries, 48);

            image.Palette = bitmapPalette; // Apply back to brush paletteIndex
        }
Example #2
0
		//public void SetPalette(NesPalette pal, int paltable) {
		//    ColorPalette p = tiles.Palette;

		//    pal.ApplyTable(p.Entries, 0, paltable * 4, 4);
		//}
		public void SetPalette(NesPalette pal) {
			ColorPalette p = tiles.Palette;
			pal.ApplyTable(p.Entries);
			tiles.Palette = p;

			this.DoubleBuffered = true;
		}
Example #3
0
            public void LoadLevel(Level lvl)
            {
                levelData  = lvl;
                Patterns   = (Bitmap)lvl.Patterns.PatternImage.Clone();
                Palette    = lvl.BgPalette;
                altPalette = lvl.BgAltPalette;

                var buffpal = buffer.Palette;

                Palette.ApplyTable(buffpal.Entries);
                altPalette.ApplyTable(buffpal.Entries, 16);
                Palette.ApplyTable(buffpal.Entries, 32, 0, 16, invertColor);
                altPalette.ApplyTable(buffpal.Entries, 48, 0, 16, invertColor);
                buffer.Palette = buffpal;

                readyToRender = true;
            }
Example #4
0
        public void LoadColors(NesPalette palette, int palIndex)
        {
            Color[] palColors = new Color[16];
            palette.ApplyTable(palColors);

            Color[] pal4 = new Color[4];
            pal4[0] = palColors[4 * palIndex];
            pal4[1] = palColors[4 * palIndex + 1];
            pal4[2] = palColors[4 * palIndex + 2];
            pal4[3] = palColors[4 * palIndex + 3];
            Palette = pal4;
        }
Example #5
0
        public void SetPalette(NesPalette pal, int table)
        {
            if (Image == null)
            {
                queuedPalette = pal;
                queuedTable   = table;
                return;
            }

            ColorPalette p = Image.Palette;

            pal.ApplyTable(p.Entries, 0, table * 4, 4);
            Image.Palette = p;
            Invalidate();
        }