aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/scumm/script_v5.cpp11
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