From b243b969e3241fa3f6e1544f647b89a14acf556f Mon Sep 17 00:00:00 2001 From: morkt Date: Wed, 19 Dec 2018 03:17:21 +0400 Subject: [PATCH] (EDT): fixed 8bpp images reading. --- ArcFormats/ActiveSoft/ImageEDT.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ArcFormats/ActiveSoft/ImageEDT.cs b/ArcFormats/ActiveSoft/ImageEDT.cs index 497dcc6e..30462a89 100644 --- a/ArcFormats/ActiveSoft/ImageEDT.cs +++ b/ArcFormats/ActiveSoft/ImageEDT.cs @@ -294,8 +294,7 @@ namespace GameRes.Formats.AdPack public override ImageData Read (IBinaryStream stream, ImageMetaData info) { - var meta = (Ed8MetaData)info; - var reader = new Reader (stream.AsStream, meta); + var reader = new Reader (stream.AsStream, (Ed8MetaData)info); reader.Unpack(); var palette = new BitmapPalette (reader.Palette); return ImageData.Create (info, PixelFormats.Indexed8, palette, reader.Data, (int)info.Width); @@ -307,6 +306,7 @@ namespace GameRes.Formats.AdPack byte[] m_data; Color[] m_palette; int m_width; + int m_colors; public Color[] Palette { get { return m_palette; } } public byte[] Data { get { return m_data; } } @@ -323,12 +323,13 @@ namespace GameRes.Formats.AdPack m_width = (int)info.Width; m_input = file; m_data = new byte[info.Width * info.Height]; + m_colors = info.PaletteSize; } public void Unpack () { m_input.Position = 0x1A; - m_palette = ReadColorMap (m_input, 0x100, PaletteFormat.Bgr); + m_palette = ReadColorMap (m_input, m_colors, PaletteFormat.Bgr); int data_pos = 0; while (data_pos < m_data.Length) {