aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2004-09-03 02:08:32 +0000
committerTravis Howell2004-09-03 02:08:32 +0000
commit6bada66d16026428d05d59d8dbf32d51704bbdd7 (patch)
tree3fcad9988e02c210391d13eace8f33cbf77a6f0e /scumm
parent077d977834f00758d7484e2e146cad39b2e64a65 (diff)
downloadscummvm-rg350-6bada66d16026428d05d59d8dbf32d51704bbdd7.tar.gz
scummvm-rg350-6bada66d16026428d05d59d8dbf32d51704bbdd7.tar.bz2
scummvm-rg350-6bada66d16026428d05d59d8dbf32d51704bbdd7.zip
Revert verb draw order change.
Fix recent verb regressions. svn-id: r14870
Diffstat (limited to 'scumm')
-rw-r--r--scumm/scumm.cpp5
-rw-r--r--scumm/verbs.cpp8
2 files changed, 4 insertions, 9 deletions
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index f14c630cff..171af4e8e9 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -1736,7 +1736,7 @@ load_game:
processDrawQue();
// Full Throttle always redraws verbs and draws verbs before actors
- if (_gameId == GID_FT)
+ if (_version >= 7)
redrawVerbs();
setActorRedrawFlags();
@@ -1754,9 +1754,6 @@ load_game:
if (_version >= 4 && _heversion <= 60)
cyclePalette();
palManipulate();
- if (_gameId == GID_DIG || _gameId == GID_CMI)
- redrawVerbs();
-
if (_doEffect) {
_doEffect = false;
fadeIn(_newEffect);
diff --git a/scumm/verbs.cpp b/scumm/verbs.cpp
index 042524dc19..fd9203c2ac 100644
--- a/scumm/verbs.cpp
+++ b/scumm/verbs.cpp
@@ -268,7 +268,7 @@ void ScummEngine::redrawVerbs() {
if (_cursor.state > 0)
verb = checkMouseOver(_mouse.x, _mouse.y);
- for (i = 0; i < _numVerbs; i++) {
+ for (i = _numVerbs-1; i >= 0; i--) {
if (i == verb && _verbs[verb].hicolor)
drawVerb(i, 1);
else
@@ -413,7 +413,7 @@ void ScummEngine::drawVerb(int verb, int mode) {
vs->curRect.bottom = _charset->_str.bottom;
vs->oldRect = _charset->_str;
_charset->_str.left = _charset->_str.right;
- } else if (_version < 7) {
+ } else if (_gameId != GID_FT) {
restoreVerbBG(verb);
}
}
@@ -424,9 +424,7 @@ void ScummEngine::restoreVerbBG(int verb) {
vs = &_verbs[verb];
- if (_version == 8) {
- // Do nothing
- } else if (_version >= 7) {
+ if (_gameId == GID_FT) {
restoreBG(vs->curRect, vs->bkcolor);
} else if (vs->oldRect.left != -1) {
restoreBG(vs->oldRect, vs->bkcolor);