diff options
author | Max Horn | 2003-06-26 21:41:53 +0000 |
---|---|---|
committer | Max Horn | 2003-06-26 21:41:53 +0000 |
commit | eec095a72d290af44bc86a8fc8de35b9823e5ebb (patch) | |
tree | 48307412c154ff3427208c87ba304689ab221f29 /scumm | |
parent | b23b9ee7b3729680218a66db5b322e5d9b64cd9b (diff) | |
download | scummvm-rg350-eec095a72d290af44bc86a8fc8de35b9823e5ebb.tar.gz scummvm-rg350-eec095a72d290af44bc86a8fc8de35b9823e5ebb.tar.bz2 scummvm-rg350-eec095a72d290af44bc86a8fc8de35b9823e5ebb.zip |
correct shadow color in Zak256
svn-id: r8659
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/charset.cpp | 11 | ||||
-rw-r--r-- | scumm/charset.h | 1 |
2 files changed, 6 insertions, 6 deletions
diff --git a/scumm/charset.cpp b/scumm/charset.cpp index 59b71028ec..0c76eb799a 100644 --- a/scumm/charset.cpp +++ b/scumm/charset.cpp @@ -927,6 +927,7 @@ int CharsetRendererV3::getCharWidth(byte chr) { void CharsetRendererV3::setColor(byte color) { _color = color; + _shadowColor = (_vm->_gameId == GID_ZAK256) ? 8 : 0; if (_vm->_gameId == GID_ZAK256) { _dropShadow = ((_color & 0x80) != 0); _color &= 0x7f; @@ -953,8 +954,6 @@ void CharsetRendererV3::printChar(int chr) { if (chr == '@') return; - _vm->_charsetColorMap[1] = _color; - if (_firstChar) { _str.left = _left; _str.top = _top; @@ -1186,11 +1185,11 @@ void CharsetRendererCommon::drawBits1(VirtScreen *vs, byte *dst, const byte *src bits = *src++; if ((bits & revBitMask[x % 8]) && y + drawTop >= 0) { if (_dropShadow) { - *(dst + 1) = 0; - *(dst + _vm->_screenWidth) = 0; - *(dst + _vm->_screenWidth + 1) = 0; + *(dst + 1) = _shadowColor; + *(dst + _vm->_screenWidth) = _shadowColor; + *(dst + _vm->_screenWidth + 1) = _shadowColor; } - *dst = _vm->_charsetColorMap[1]; + *dst = _color; if (useMask) { mask[maskpos] |= maskmask; if (_dropShadow) { diff --git a/scumm/charset.h b/scumm/charset.h index 21acf3497d..e464ede692 100644 --- a/scumm/charset.h +++ b/scumm/charset.h @@ -39,6 +39,7 @@ public: protected: byte _color; + byte _shadowColor; bool _dropShadow; public: |