aboutsummaryrefslogtreecommitdiff
path: root/scumm/charset.cpp
diff options
context:
space:
mode:
authorMax Horn2003-06-26 21:41:53 +0000
committerMax Horn2003-06-26 21:41:53 +0000
commiteec095a72d290af44bc86a8fc8de35b9823e5ebb (patch)
tree48307412c154ff3427208c87ba304689ab221f29 /scumm/charset.cpp
parentb23b9ee7b3729680218a66db5b322e5d9b64cd9b (diff)
downloadscummvm-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/charset.cpp')
-rw-r--r--scumm/charset.cpp11
1 files changed, 5 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) {