aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v2.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2005-03-21 23:51:48 +0000
committerEugene Sandulenko2005-03-21 23:51:48 +0000
commit0bcb0ac2579faf061ec677e0b4ac8e37697d6dc7 (patch)
tree83eabb9bb748ae9b72430bf409968fae4cf25f37 /scumm/script_v2.cpp
parent11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d (diff)
downloadscummvm-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.cpp16
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;