aboutsummaryrefslogtreecommitdiff
path: root/scumm/script.cpp
diff options
context:
space:
mode:
authorMax Horn2005-03-25 00:40:58 +0000
committerMax Horn2005-03-25 00:40:58 +0000
commit3497e9afa41010cb3c9afa9700a2c8648a9ffa08 (patch)
treeb712794c7034ac92048a2b76f2686a84c23bd3f3 /scumm/script.cpp
parent980576a4b63444d56744ec2e96496d296813196f (diff)
downloadscummvm-rg350-3497e9afa41010cb3c9afa9700a2c8648a9ffa08.tar.gz
scummvm-rg350-3497e9afa41010cb3c9afa9700a2c8648a9ffa08.tar.bz2
scummvm-rg350-3497e9afa41010cb3c9afa9700a2c8648a9ffa08.zip
cleanup
svn-id: r17222
Diffstat (limited to 'scumm/script.cpp')
-rw-r--r--scumm/script.cpp25
1 files changed, 12 insertions, 13 deletions
diff --git a/scumm/script.cpp b/scumm/script.cpp
index 8684016d9e..17f35a3ff1 100644
--- a/scumm/script.cpp
+++ b/scumm/script.cpp
@@ -1122,12 +1122,12 @@ void ScummEngine::endCutscene() {
ScriptSlot *ss = &vm.slot[_currentScript];
int args[16];
- memset(args, 0, sizeof(args));
-
if (ss->cutsceneOverride > 0) // Only terminate if active
ss->cutsceneOverride--;
+ memset(args, 0, sizeof(args));
args[0] = vm.cutSceneData[vm.cutSceneStackPointer];
+
VAR(VAR_OVERRIDE) = 0;
if (vm.cutScenePtr[vm.cutSceneStackPointer] && (ss->cutsceneOverride > 0)) // Only terminate if active
@@ -1142,9 +1142,12 @@ void ScummEngine::endCutscene() {
}
void ScummEngine::abortCutscene() {
- uint32 offs = vm.cutScenePtr[vm.cutSceneStackPointer];
+ const int idx = vm.cutSceneStackPointer;
+ assert(0 <= idx && idx < 5);
+
+ uint32 offs = vm.cutScenePtr[idx];
if (offs) {
- ScriptSlot *ss = &vm.slot[vm.cutSceneScript[vm.cutSceneStackPointer]];
+ ScriptSlot *ss = &vm.slot[vm.cutSceneScript[idx]];
ss->offs = offs;
ss->status = ssRunning;
ss->freezeCount = 0;
@@ -1153,7 +1156,7 @@ void ScummEngine::abortCutscene() {
ss->cutsceneOverride--;
VAR(VAR_OVERRIDE) = 1;
- vm.cutScenePtr[vm.cutSceneStackPointer] = 0;
+ vm.cutScenePtr[idx] = 0;
// HACK to fix issues with SMUSH and the way it does keyboard handling.
// In particular, normally abortCutscene() is being called while no
@@ -1169,10 +1172,8 @@ void ScummEngine::abortCutscene() {
}
void ScummEngine::beginOverride() {
- int idx;
-
- idx = vm.cutSceneStackPointer;
- assert(idx < 5);
+ const int idx = vm.cutSceneStackPointer;
+ assert(0 <= idx && idx < 5);
vm.cutScenePtr[idx] = _scriptPointer - _scriptOrgPointer;
vm.cutSceneScript[idx] = _currentScript;
@@ -1188,10 +1189,8 @@ void ScummEngine::beginOverride() {
}
void ScummEngine::endOverride() {
- int idx;
-
- idx = vm.cutSceneStackPointer;
- assert(idx < 5);
+ const int idx = vm.cutSceneStackPointer;
+ assert(0 <= idx && idx < 5);
vm.cutScenePtr[idx] = 0;
vm.cutSceneScript[idx] = 0;