aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorTravis Howell2006-10-30 01:53:19 +0000
committerTravis Howell2006-10-30 01:53:19 +0000
commit5d4543a59cc8b99a52bc7e3d7d5d217dd43c67c7 (patch)
tree26809b05967e3c1b7181526aa9a2890c8c410777 /engines
parent32f891f724834364666c1dc91f12cebbf608071b (diff)
downloadscummvm-rg350-5d4543a59cc8b99a52bc7e3d7d5d217dd43c67c7.tar.gz
scummvm-rg350-5d4543a59cc8b99a52bc7e3d7d5d217dd43c67c7.tar.bz2
scummvm-rg350-5d4543a59cc8b99a52bc7e3d7d5d217dd43c67c7.zip
Fix bug #771499 - ZAK: Lotto numbers never picked. The freezeCount isn't checked in runScriptNested(), when restarting script in SCUMM 1/2.
svn-id: r24575
Diffstat (limited to 'engines')
-rw-r--r--engines/scumm/script.cpp3
-rw-r--r--engines/scumm/script_v2.cpp8
2 files changed, 2 insertions, 9 deletions
diff --git a/engines/scumm/script.cpp b/engines/scumm/script.cpp
index 21511cf679..ea03509200 100644
--- a/engines/scumm/script.cpp
+++ b/engines/scumm/script.cpp
@@ -346,7 +346,8 @@ void ScummEngine::runScriptNested(int script) {
// stopped in the meantime, and if it did not already move on.
slot = &vm.slot[nest->slot];
if (slot->number == nest->number && slot->where == nest->where &&
- slot->status != ssDead && slot->freezeCount == 0) {
+ slot->status != ssDead && (slot->freezeCount == 0 ||
+ _game.version <= 2)) {
_currentScript = nest->slot;
getScriptBaseAddress();
getScriptEntryPoint();
diff --git a/engines/scumm/script_v2.cpp b/engines/scumm/script_v2.cpp
index dcbf7dc32c..77163b6580 100644
--- a/engines/scumm/script_v2.cpp
+++ b/engines/scumm/script_v2.cpp
@@ -1174,14 +1174,6 @@ void ScummEngine_v2::o2_stopScript() {
script = getVarOrDirectByte(PARAM_1);
- if (_game.id == GID_ZAK && _roomResource == 7 && vm.slot[_currentScript].number == 10001) {
- // FIXME: Nasty hack for bug #771499
- // Don't let the exit script for room 7 stop the buy script (24), when
- // switching to the number selection keypad (script 15)
- if ((script == 24) && isScriptRunning(15))
- return;
- }
-
if (_game.id == GID_MANIAC && _roomResource == 26 && vm.slot[_currentScript].number == 10001) {
// FIXME: Nasty hack for bug #915575
// Don't let the exit script for room 26 stop the script (116), when