aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/script_v6.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/scumm/script_v6.cpp b/scumm/script_v6.cpp
index 610b28fd3f..077211d68e 100644
--- a/scumm/script_v6.cpp
+++ b/scumm/script_v6.cpp
@@ -815,6 +815,25 @@ void ScummEngine_v6::o6_startScript() {
getStackList(args, ARRAYSIZE(args));
script = pop();
flags = pop();
+
+ // WORKAROUND bug #903223: In Puerto Pollo, if you have Guybrush examine
+ // the church clock, he'll read out the current time. Nice touch, only that
+ // it sounds crap in the german version (and maybe others, too). It seems
+ // the original engine of the german version played just a simple fixed
+ // text in this spot, for the above reason. Since the data files are
+ // unchanged, it must have been an engine hack job. No idea how they did
+ // it exactly, but this here is how we do it :-)
+ if (_gameId == GID_CMI && script == 204 &&
+ _currentRoom == 15 && vm.slot[_currentScript].number == 421 &&
+ _language == Common::DE_DEU) {
+
+ _actorToPrintStrFor = 1;
+ _string[0].loadDefault();
+ actorTalk((const byte *)"/VDSO325/Whoa! Look at the time. Gotta scoot.");
+
+ return;
+ }
+
runScript(script, (flags & 1) != 0, (flags & 2) != 0, args);
}