aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2016-08-27 12:10:56 +0200
committerEugene Sandulenko2016-08-27 12:10:56 +0200
commitea7076028b0382bf88b5f7f447f23e0bc7e28f7f (patch)
treea9d6e8faf1e0d2e4eb62d41877b9ac2633f93ef4
parent996811181063d1920454e0e09115b49e33bc8f5d (diff)
downloadscummvm-rg350-ea7076028b0382bf88b5f7f447f23e0bc7e28f7f.tar.gz
scummvm-rg350-ea7076028b0382bf88b5f7f447f23e0bc7e28f7f.tar.bz2
scummvm-rg350-ea7076028b0382bf88b5f7f447f23e0bc7e28f7f.zip
DIRECTOR: Implemented Transparent Ink
-rw-r--r--engines/director/frame.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/director/frame.cpp b/engines/director/frame.cpp
index bca54efc02..f88eb8260d 100644
--- a/engines/director/frame.cpp
+++ b/engines/director/frame.cpp
@@ -471,6 +471,10 @@ void Frame::renderSprites(Graphics::ManagedSurface &surface, bool renderTrail) {
case kInkTypeCopy:
surface.blitFrom(*img->getSurface(), Common::Point(x, y));
break;
+ case kInkTypeTransparent:
+ //FIXME: is it always white (last entry in pallette)?
+ surface.transBlitFrom(*img->getSurface(), Common::Point(x, y), _vm->getPaletteColorCount() - 1);
+ break;
case kInkTypeBackgndTrans:
drawBackgndTransSprite(surface, *img->getSurface(), drawRect);
break;
@@ -708,7 +712,7 @@ void Frame::drawReverseSprite(Graphics::ManagedSurface &target, const Graphics::
}
void Frame::drawMatteSprite(Graphics::ManagedSurface &target, const Graphics::Surface &sprite, Common::Rect &drawRect) {
- //Like background trans, but all white pixels NOT ENCLOSED by coloured pixels are transparent
+ // Like background trans, but all white pixels NOT ENCLOSED by coloured pixels are transparent
Graphics::Surface tmp;
tmp.copyFrom(sprite);