From d5687eb22274bf0eb2b737239738862500249390 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 25 Dec 2019 02:12:55 +0100 Subject: DIRECTOR: Simplify palette transformations --- engines/director/cast.cpp | 4 ++-- engines/director/director.h | 2 -- engines/director/frame.cpp | 4 ++-- engines/director/graphics.cpp | 6 +----- 4 files changed, 5 insertions(+), 11 deletions(-) diff --git a/engines/director/cast.cpp b/engines/director/cast.cpp index b5fab8c1fa..804bd58a8a 100644 --- a/engines/director/cast.cpp +++ b/engines/director/cast.cpp @@ -257,8 +257,8 @@ ShapeCast::ShapeCast(Common::ReadStreamEndian &stream, uint16 version) { _shapeType = static_cast(stream.readByte()); _initialRect = Score::readRect(stream); _pattern = stream.readUint16BE(); - _fgCol = paletteTrans((128 + stream.readByte()) & 0xff); // -128 -> 0, 127 -> 256 - _bgCol = paletteTrans((128 + stream.readByte()) & 0xff); + _fgCol = (127 - stream.readByte()) & 0xff; // -128 -> 0, 127 -> 256 + _bgCol = (127 - stream.readByte()) & 0xff; _fillType = stream.readByte(); _lineThickness = stream.readByte(); _lineDirection = stream.readByte(); diff --git a/engines/director/director.h b/engines/director/director.h index b880f56439..aa2d797644 100644 --- a/engines/director/director.h +++ b/engines/director/director.h @@ -180,8 +180,6 @@ private: void testFonts(); }; -byte paletteTrans(byte c); - extern DirectorEngine *g_director; } // End of namespace Director diff --git a/engines/director/frame.cpp b/engines/director/frame.cpp index cccc2c06b3..8bd1f45535 100644 --- a/engines/director/frame.cpp +++ b/engines/director/frame.cpp @@ -197,8 +197,8 @@ void Frame::readChannels(Common::ReadStreamEndian *stream) { sprite._scriptId = stream->readByte(); sprite._spriteType = stream->readByte(); sprite._enabled = sprite._spriteType != 0; - sprite._foreColor = paletteTrans((128 + stream->readByte()) & 0xff); // -128 -> 0, 127 -> 256 - sprite._backColor = paletteTrans((128 + stream->readByte()) & 0xff); + sprite._foreColor = (127 - stream->readByte()) & 0xff; // -128 -> 0, 127 -> 256 + sprite._backColor = (127 - stream->readByte()) & 0xff; sprite._flags = stream->readUint16(); sprite._ink = static_cast(sprite._flags & 0x3f); diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp index 25c6bea87c..b1030d09ce 100644 --- a/engines/director/graphics.cpp +++ b/engines/director/graphics.cpp @@ -288,7 +288,7 @@ void DirectorEngine::testFontScaling() { for (x = x1; x < x1 + 6; x++) for (y = y1; y < y1 + 6; y++) - *((byte *)surface.getBasePtr(x, y)) = paletteTrans(i * 16 + j); + *((byte *)surface.getBasePtr(x, y)) = 255 - (i * 16 + j); } } @@ -329,8 +329,4 @@ void DirectorEngine::testFonts() { delete fontFile; } -byte paletteTrans(byte c) { - return (0xf - (c & 0xf)) | (0xf0 - (c & 0xf0)); -} - } -- cgit v1.2.3