diff options
author | James Brown | 2002-11-10 12:22:22 +0000 |
---|---|---|
committer | James Brown | 2002-11-10 12:22:22 +0000 |
commit | 5e966f88e97af937e71b8da0c33fddc5ed874eee (patch) | |
tree | bffb09a714d86d1978f2071e3711ba8ac2a63d71 | |
parent | 18506e771464649ef853f34f8ae85604b1681ab3 (diff) | |
download | scummvm-rg350-5e966f88e97af937e71b8da0c33fddc5ed874eee.tar.gz scummvm-rg350-5e966f88e97af937e71b8da0c33fddc5ed874eee.tar.bz2 scummvm-rg350-5e966f88e97af937e71b8da0c33fddc5ed874eee.zip |
Implement Indy3 opcode - this fixes the 'walking to car' portion of the first section of the game
svn-id: r5482
-rw-r--r-- | scumm/script_v1.cpp | 14 |
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; |