diff options
author | Eugene Sandulenko | 2005-03-21 23:51:48 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2005-03-21 23:51:48 +0000 |
commit | 0bcb0ac2579faf061ec677e0b4ac8e37697d6dc7 (patch) | |
tree | 83eabb9bb748ae9b72430bf409968fae4cf25f37 /scumm/script_v2.cpp | |
parent | 11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d (diff) | |
download | scummvm-rg350-0bcb0ac2579faf061ec677e0b4ac8e37697d6dc7.tar.gz scummvm-rg350-0bcb0ac2579faf061ec677e0b4ac8e37697d6dc7.tar.bz2 scummvm-rg350-0bcb0ac2579faf061ec677e0b4ac8e37697d6dc7.zip |
Many MM NES fixes/improvements from Quietust:
o Doesn't crash when going upstairs. Now game is playable up to
the green tentacle
o Proper subtitles colors
o Room mask is decoded but doesn't affect sprites yet
o Inventory draw issues fixed
o Fix actors position when they're facing right
svn-id: r17191
Diffstat (limited to 'scumm/script_v2.cpp')
-rw-r--r-- | scumm/script_v2.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp index bcc58c7417..c3397982e7 100644 --- a/scumm/script_v2.cpp +++ b/scumm/script_v2.cpp @@ -818,8 +818,10 @@ void ScummEngine_v2::o2_verbOps() { slot = getVarOrDirectByte(PARAM_1) + 1; int prep = fetchScriptByte(); // Only used in V1? // V1 Maniac verbs are relative to the 'verb area' - under the sentence - if (_features & GF_NES) + if (_features & GF_NES) { y -= 16; + x -= 8; + } else if ((_gameId == GID_MANIAC) && (_version == 1)) y += 8; @@ -831,7 +833,11 @@ void ScummEngine_v2::o2_verbOps() { vs = &_verbs[slot]; vs->verbid = verb; - if (_version == 1) { + if (_features & GF_NES) { + vs->color = 1; + vs->hicolor = 1; + vs->dimcolor = 1; + } else if (_version == 1) { vs->color = (_gameId == GID_MANIAC && _demoMode) ? 16 : 5; vs->hicolor = 7; vs->dimcolor = 11; @@ -851,7 +857,7 @@ void ScummEngine_v2::o2_verbOps() { vs->curRect.left = x; vs->curRect.top = y; - + // FIXME: again, this map depends on the language of the game. // E.g. a german keyboard has 'z' and 'y' swapped, while a french // keyboard starts with "awert", etc. @@ -1029,7 +1035,9 @@ void ScummEngine_v2::o2_drawSentence() { _string[2].charset = 1; _string[2].ypos = virtscr[2].topline; _string[2].xpos = 0; - if (_version == 1) + if (_features & GF_NES) + _string[2].color = 0; + else if (_version == 1) _string[2].color = 16; else _string[2].color = 13; |