aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scumm/script_v1.cpp')
-rw-r--r--scumm/script_v1.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/scumm/script_v1.cpp b/scumm/script_v1.cpp
index 4058958725..92a1a41873 100644
--- a/scumm/script_v1.cpp
+++ b/scumm/script_v1.cpp
@@ -680,7 +680,6 @@ void Scumm::o5_delay()
delay |= fetchScriptByte() << 16;
vm.slot[_currentScript].delay = delay;
vm.slot[_currentScript].status = 1;
-
o5_breakHere();
}
@@ -1929,8 +1928,17 @@ void Scumm::o5_soundKludge()
int16 items[15];
int i;
- if (_features & GF_SMALL_HEADER) // Is dummy function in
- return; // SCUMM V3
+ if (_features & GF_SMALL_HEADER) { // Is WaitForSentence in SCUMM V3
+ if (_sentenceNum) {
+ if (_sentence[_sentenceNum - 1].unk && !isScriptInUse(_vars[VAR_SENTENCE_SCRIPT]))
+ return;
+ } else if (!isScriptInUse(_vars[VAR_SENTENCE_SCRIPT])) {
+ return;
+ }
+
+ _scriptPointer--;
+ o5_breakHere();
+ }
for (i = 0; i < 15; i++)
items[i] = 0;