SCI: adding force to memorial area for SQ3/intro

makes the view getting fully undithered

svn-id: r54068
This commit is contained in:
Martin Kiewitz 2010-11-04 18:37:03 +00:00
parent 92841e9832
commit bb716c23fa
3 changed files with 15 additions and 0 deletions

View file

@ -754,6 +754,15 @@ void GfxPicture::drawVectorData(byte *data, int dataSize) {
// Dithering EGA pictures // Dithering EGA pictures
if (isEGA) { if (isEGA) {
_screen->dither(_addToFlag); _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; return;
default: default:

View file

@ -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) { void GfxScreen::debugUnditherSetState(bool flag) {
_unditherState = flag; _unditherState = flag;
} }

View file

@ -115,6 +115,7 @@ public:
void adjustBackUpscaledCoordinates(int16 &y, int16 &x); void adjustBackUpscaledCoordinates(int16 &y, int16 &x);
void dither(bool addToFlag); void dither(bool addToFlag);
void ditherForceMemorial(byte color);
void debugUnditherSetState(bool flag); void debugUnditherSetState(bool flag);
int16 *unditherGetMemorial(); int16 *unditherGetMemorial();