aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v2.cpp
diff options
context:
space:
mode:
authorMax Horn2003-07-15 00:23:18 +0000
committerMax Horn2003-07-15 00:23:18 +0000
commitd0282843b5fd8f0f2558556a4b0a796b3a8bccba (patch)
tree0b780a241cfb988d076e9c1a5a89b6540471d5d9 /scumm/script_v2.cpp
parent6772b78f5f19d8a3e7095dbfa9ca0170ae2d8562 (diff)
downloadscummvm-rg350-d0282843b5fd8f0f2558556a4b0a796b3a8bccba.tar.gz
scummvm-rg350-d0282843b5fd8f0f2558556a4b0a796b3a8bccba.tar.bz2
scummvm-rg350-d0282843b5fd8f0f2558556a4b0a796b3a8bccba.zip
Patch #771154 (ZAK: yet another doSentence fix); this should fix bug #752293
svn-id: r9030
Diffstat (limited to 'scumm/script_v2.cpp')
-rw-r--r--scumm/script_v2.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 836af315b6..78b9a8aecd 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -824,7 +824,7 @@ void Scumm_v2::o2_verbOps() {
// V1 Maniac verbs are relative to the 'verb area' - under the sentence
if ((_gameId == GID_MANIAC) && (_version == 1))
- y+=9;
+ y+=8;
//printf("o2_verbOps: verb = %d, slot = %d, x = %d, y = %d, unk = %d, name = %s\n",
// verb, slot, x, y, unk, _scriptPointer);
@@ -905,14 +905,16 @@ void Scumm_v2::o2_doSentence() {
// Execute the sentence
_sentenceNum--;
- if (st->verb != 250 && st->verb != 253) {
+ if (st->verb == 254) {
+ stopObjectScript(st->objectA);
+ } else if (st->verb != 253 && st->verb != 250) {
VAR(VAR_ACTIVE_VERB) = st->verb;
VAR(VAR_ACTIVE_OBJECT1) = st->objectA;
VAR(VAR_ACTIVE_OBJECT2) = st->objectB;
runObjectScript(st->objectA, st->verb, false, false, NULL);
} else
- runObjectScript(st->objectA, 253, false, (st->verb == 250), NULL);
+ runObjectScript(st->objectA, 253, (st->verb == 250), true, NULL);
break;
case 2:
// Print the sentence