예제 #1
0
        private void Add_TransparencyColor()
        {
            int index = Convertir.Remove_DuplicatedColors(ref this.paleta.pltt.palettes[0], ref this.tile.rahc.tileData.tiles);

            if (index == -1)
            {
                index = Convertir.Remove_NotUsedColors(ref this.paleta.pltt.palettes[0], ref this.tile.rahc.tileData.tiles);
            }
            this.paleta.pltt.palettes[0].colors[index] = this.paleta.pltt.palettes[0].colors[0];
            this.paleta.pltt.palettes[0].colors[0]     = Color.FromArgb(0xf8, 0, 0xf8);
            Convertir.Change_Color(ref this.tile.rahc.tileData.tiles, index, 0);
            string tempFileName = Path.GetTempFileName();

            NCLR.Escribir(this.paleta, tempFileName);
            string fileout = Path.GetTempFileName();

            NCGR.Write(this.tile, fileout);
            this.UpdateImage();
            this.checkTransparency.Checked = true;
        }
예제 #2
0
        private void Change_TransparencyColor(Color color)
        {
            int oldIndex = 0;

            for (int i = 0; i < this.paleta.pltt.palettes[0].colors.Length; i++)
            {
                if (this.paleta.pltt.palettes[0].colors[i] == color)
                {
                    this.paleta.pltt.palettes[0].colors[i] = this.paleta.pltt.palettes[0].colors[0];
                    this.paleta.pltt.palettes[0].colors[0] = color;
                    oldIndex = i;
                    break;
                }
            }
            string tempFileName = Path.GetTempFileName();

            NCLR.Escribir(this.paleta, tempFileName);
            Convertir.Change_Color(ref this.tile.rahc.tileData.tiles, oldIndex, 0);
            string fileout = Path.GetTempFileName();

            NCGR.Write(this.tile, fileout);
            this.UpdateImage();
            this.checkTransparency.Checked = true;
        }