aboutsummaryrefslogtreecommitdiff
path: root/scumm/script.cpp
diff options
context:
space:
mode:
authorJonathan Gray2002-11-03 10:33:50 +0000
committerJonathan Gray2002-11-03 10:33:50 +0000
commit418017cb2961781b3b49bc7988576c78a58a86da (patch)
treeb707735a9ba38c4749cf01ee1fe378c1c5410589 /scumm/script.cpp
parent50917288152199f9c92d9c0b89e47633b7c95a8f (diff)
downloadscummvm-rg350-418017cb2961781b3b49bc7988576c78a58a86da.tar.gz
scummvm-rg350-418017cb2961781b3b49bc7988576c78a58a86da.tar.bz2
scummvm-rg350-418017cb2961781b3b49bc7988576c78a58a86da.zip
hack around what seems to be an empty exit script in indy3 (besides the size and tag) for now, maybe we should be strictly not reading past the size defined in the header of the script?
svn-id: r5390
Diffstat (limited to 'scumm/script.cpp')
-rw-r--r--scumm/script.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/scumm/script.cpp b/scumm/script.cpp
index 3f82bc8f8e..f66b31c3f1 100644
--- a/scumm/script.cpp
+++ b/scumm/script.cpp
@@ -626,7 +626,14 @@ void Scumm::runExitScript()
vm.slot[slot].delayFrameCount = 0;
- runScriptNested(slot);
+ // FIXME: the exit script of room 7 in indy3 only seems to have a size and tag
+ // not actual data not even a 00 (stop code)
+ // maybe we should be limiting ourselves to strictly reading the size
+ // described in the header?
+ if ((_currentRoom == 7) && (_gameId == GID_INDY3_256))
+ printf("skipping specific exit script as its empty, fix properly!\n");
+ else
+ runScriptNested(slot);
}
if (_vars[VAR_EXIT_SCRIPT2])
runScript(_vars[VAR_EXIT_SCRIPT2], 0, 0, 0);