diff options
author | Martin Kiewitz | 2010-11-04 18:37:03 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-11-04 18:37:03 +0000 |
commit | bb716c23fa939c89790859a43c7f9a5327a8a9cc (patch) | |
tree | 317eaf9315ab8476bd5a51ce3700a332c29f9d58 /engines | |
parent | 92841e98320d57e23dc8777b06f9572df23faa27 (diff) | |
download | scummvm-rg350-bb716c23fa939c89790859a43c7f9a5327a8a9cc.tar.gz scummvm-rg350-bb716c23fa939c89790859a43c7f9a5327a8a9cc.tar.bz2 scummvm-rg350-bb716c23fa939c89790859a43c7f9a5327a8a9cc.zip |
SCI: adding force to memorial area for SQ3/intro
makes the view getting fully undithered
svn-id: r54068
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/graphics/picture.cpp | 9 | ||||
-rw-r--r-- | engines/sci/graphics/screen.cpp | 5 | ||||
-rw-r--r-- | engines/sci/graphics/screen.h | 1 |
3 files changed, 15 insertions, 0 deletions
diff --git a/engines/sci/graphics/picture.cpp b/engines/sci/graphics/picture.cpp index 39666b82cb..6f2ca9e26d 100644 --- a/engines/sci/graphics/picture.cpp +++ b/engines/sci/graphics/picture.cpp @@ -754,6 +754,15 @@ void GfxPicture::drawVectorData(byte *data, int dataSize) { // Dithering EGA pictures if (isEGA) { _screen->dither(_addToFlag); + switch (g_sci->getGameId()) { + case GID_SQ3: + switch (_resourceId) { + case 154: // SQ3: intro, ship gets sucked in + _screen->ditherForceMemorial(0xD0); + break; + } + break; + } } return; default: diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp index 7a10a6b749..f8dc3118b5 100644 --- a/engines/sci/graphics/screen.cpp +++ b/engines/sci/graphics/screen.cpp @@ -616,6 +616,11 @@ void GfxScreen::dither(bool addToFlag) { } } +// Force a color combination into memorial +void GfxScreen::ditherForceMemorial(byte color) { + _unditherMemorial[color] = 256; +} + void GfxScreen::debugUnditherSetState(bool flag) { _unditherState = flag; } diff --git a/engines/sci/graphics/screen.h b/engines/sci/graphics/screen.h index 97f5736289..44746ae00b 100644 --- a/engines/sci/graphics/screen.h +++ b/engines/sci/graphics/screen.h @@ -115,6 +115,7 @@ public: void adjustBackUpscaledCoordinates(int16 &y, int16 &x); void dither(bool addToFlag); + void ditherForceMemorial(byte color); void debugUnditherSetState(bool flag); int16 *unditherGetMemorial(); |