public static AbstractImage GetPalettedImage(bool is4bpp, string name, int width, int height, string fileName, int fileSize, Enum sector,
                                              PatcherLib.Iso.KnownPosition graphicsPosition, PatcherLib.Iso.KnownPosition palettePosition, bool isEffect = false, int effectIndex = 0)
 {
     if (is4bpp)
     {
         PalettedImage4bpp image = new PalettedImage4bpp(name, width, height, 32, Palette.ColorDepth._16bit, graphicsPosition, palettePosition);
         image.PaletteCount     = 16;
         image.DefaultPalette   = 0;
         image.CurrentPalette   = 0;
         image.OriginalFilename = fileName;
         image.Filesize         = fileSize;
         image.Sector           = sector;
         image.IsEffect         = isEffect;
         image.EffectIndex      = effectIndex;
         return(image);
     }
     else
     {
         PalettedImage8bpp image = new PalettedImage8bpp(name, width, height, 1, Palette.ColorDepth._16bit, graphicsPosition, palettePosition);
         image.PaletteCount     = 0;
         image.DefaultPalette   = 0;
         image.CurrentPalette   = 0;
         image.OriginalFilename = fileName;
         image.Filesize         = fileSize;
         image.Sector           = sector;
         image.IsEffect         = isEffect;
         image.EffectIndex      = effectIndex;
         return(image);
     }
 }
        public static PalettedImage4bpp ConstructFromXml(XmlNode node)
        {
            ImageInfo info   = GetImageInfo(node);
            var       palPos = GetPalettePositionFromImageNode(info.Sector, node);
            var       pos    = GetPositionFromImageNode(info.Sector, node);

            FFTPatcher.SpriteEditor.Palette.ColorDepth depth = Palette.ColorDepth._16bit;

            var cdNode = node.SelectSingleNode("ColorDepth");

            if (cdNode != null)
            {
                depth = (Palette.ColorDepth)Enum.Parse(typeof(Palette.ColorDepth), cdNode.InnerText);
            }

            PalettedImage4bpp image = new PalettedImage4bpp(info.Name, info.Width, info.Height, 1, depth, pos, palPos);

            image.PaletteCount     = info.PaletteCount;
            image.DefaultPalette   = info.DefaultPalette;
            image.CurrentPalette   = info.CurrentPalette;
            image.OriginalFilename = info.OriginalFilename;
            image.Filesize         = info.Filesize;
            image.Sector           = info.Sector;

            return(image);
        }
示例#3
0
        public static PalettedImage4bpp ConstructFromXml( XmlNode node )
        {
            ImageInfo info = GetImageInfo( node );
            var palPos = GetPalettePositionFromImageNode( info.Sector, node );
            var pos = GetPositionFromImageNode( info.Sector, node );
            FFTPatcher.SpriteEditor.Palette.ColorDepth depth = Palette.ColorDepth._16bit;

            var cdNode = node.SelectSingleNode( "ColorDepth" );
            if (cdNode != null)
            {
                depth = (Palette.ColorDepth)Enum.Parse( typeof( Palette.ColorDepth ), cdNode.InnerText );
            }

            PalettedImage4bpp image = new PalettedImage4bpp( info.Name, info.Width, info.Height, 1, depth, pos, palPos );
            image.PaletteCount = info.PaletteCount;
            image.DefaultPalette = info.DefaultPalette;
            image.CurrentPalette = info.CurrentPalette;
            image.OriginalFilename = info.OriginalFilename;
            image.Filesize = info.Filesize;
            image.Sector = info.Sector;

            return image;
        }