diff options
author | Dmitry Iskrich | 2016-06-10 13:35:46 +0300 |
---|---|---|
committer | Eugene Sandulenko | 2016-08-03 23:40:36 +0200 |
commit | 2b57a711f6275d0a9b6b09caebbfda7c8cc89d4c (patch) | |
tree | ca579ce2658230590c823084f71ddfcab555004b /engines/director | |
parent | 8064274d3b80e853feb54eb7552d1a5f35e5d4fe (diff) | |
download | scummvm-rg350-2b57a711f6275d0a9b6b09caebbfda7c8cc89d4c.tar.gz scummvm-rg350-2b57a711f6275d0a9b6b09caebbfda7c8cc89d4c.tar.bz2 scummvm-rg350-2b57a711f6275d0a9b6b09caebbfda7c8cc89d4c.zip |
DIRECTOR: Fix palette loading
Diffstat (limited to 'engines/director')
-rw-r--r-- | engines/director/dib.cpp | 2 | ||||
-rw-r--r-- | engines/director/score.cpp | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/engines/director/dib.cpp b/engines/director/dib.cpp index 4e2a21dd38..912f083569 100644 --- a/engines/director/dib.cpp +++ b/engines/director/dib.cpp @@ -61,8 +61,8 @@ void DIBDecoder::destroy() { void DIBDecoder::loadPalette(Common::SeekableReadStream &stream) { uint16 steps = stream.size()/6; uint16 index = (steps * 3) - 1; + _paletteColorCount = steps; _palette = new byte[index]; - for (uint8 i = 0; i < steps; i++) { _palette[index - 2] = stream.readByte(); stream.readByte(); diff --git a/engines/director/score.cpp b/engines/director/score.cpp index 55b37405ee..b3494b644d 100644 --- a/engines/director/score.cpp +++ b/engines/director/score.cpp @@ -91,7 +91,8 @@ Score::Score(Archive &movie, Lingo &lingo) { Common::SeekableReadStream *pal = _movieArchive->getResource(MKTAG('C', 'L', 'U', 'T'), clutList[0]); palette.loadPalette(*pal); - g_system->getPaletteManager()->setPalette(palette.getPalette(), 0, 255); + g_system->getPaletteManager()->setPalette(palette.getPalette(), 0, palette.getPaletteColorCount()); + } void Score::loadFrames(Common::SeekableReadStream &stream) { |