aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2017-01-16 22:28:10 -0500
committerPaul Gilbert2017-01-16 22:28:10 -0500
commitd64ea85de66bd73fbeb0ee63ef5da0766dd784cb (patch)
tree0e688b36a2409fbb9e6cec81323e67e2e525989c
parent817312b52d883682f1202fcce86fecede778ab53 (diff)
downloadscummvm-rg350-d64ea85de66bd73fbeb0ee63ef5da0766dd784cb.tar.gz
scummvm-rg350-d64ea85de66bd73fbeb0ee63ef5da0766dd784cb.tar.bz2
scummvm-rg350-d64ea85de66bd73fbeb0ee63ef5da0766dd784cb.zip
TITANIC: Fix showing all that pink during Prologue and in Parrot room
-rw-r--r--engines/titanic/support/video_surface.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/engines/titanic/support/video_surface.cpp b/engines/titanic/support/video_surface.cpp
index e24063188d..b886dc094c 100644
--- a/engines/titanic/support/video_surface.cpp
+++ b/engines/titanic/support/video_surface.cpp
@@ -206,6 +206,7 @@ void CVideoSurface::transBlitRect(const Rect &srcRect, const Rect &destRect, CVi
Graphics::ManagedSurface *srcSurface = src->_rawSurface;
Graphics::ManagedSurface *destSurface = _rawSurface;
Graphics::Surface destArea = destSurface->getSubArea(destRect);
+ uint transColor = getTransparencyColor();
const uint16 *srcPtr = (const uint16 *)srcSurface->getBasePtr(
srcRect.left, flipFlag ? srcRect.top : srcRect.bottom - 1);
@@ -223,7 +224,8 @@ void CVideoSurface::transBlitRect(const Rect &srcRect, const Rect &destRect, CVi
transSurface.setCol(srcRect.left);
for (int srcX = srcRect.left; srcX < srcRect.right; ++srcX) {
- copyPixel(lineDestP, lineSrcP, transSurface.getAlpha() >> 3, srcSurface->format, isAlpha);
+ if (*lineSrcP != transColor)
+ copyPixel(lineDestP, lineSrcP, transSurface.getAlpha() >> 3, srcSurface->format, isAlpha);
++lineSrcP;
++lineDestP;