diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/scumm/script_v5.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp index 917baa8930..0932958abb 100644 --- a/engines/scumm/script_v5.cpp +++ b/engines/scumm/script_v5.cpp @@ -2290,10 +2290,21 @@ void ScummEngine_v5::o5_stopObjectScript() { } void ScummEngine_v5::o5_stopScript() { + const byte *oldaddr = _scriptPointer - 1; int script; script = getVarOrDirectByte(PARAM_1); + if (_gameId == GID_INDY4 && script == 164 && + _roomResource == 50 && vm.slot[_currentScript].number == 213 && VAR(VAR_HAVE_MSG)) { + // WORKAROUND bug #1308033: Due to a script bug, a line of text is skipped + // which Indy is supposed to speak when he finds Orichalcum in some old + // bones in the caves below Crete. + _scriptPointer = oldaddr; + o5_breakHere(); + return; + } + if (!script) stopObjectCode(); else |