From 4519e56e5c018459c408e20e7469d35b6ac7ed44 Mon Sep 17 00:00:00 2001 From: Tobias Gunkel Date: Tue, 17 Jan 2012 21:51:39 +0100 Subject: SCUMM: shorten delay for dungeon door closing action Escaping with only one kid should not be possible anymore. --- engines/scumm/script_v2.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'engines/scumm/script_v2.cpp') diff --git a/engines/scumm/script_v2.cpp b/engines/scumm/script_v2.cpp index 6f6138d411..c35ddea64d 100644 --- a/engines/scumm/script_v2.cpp +++ b/engines/scumm/script_v2.cpp @@ -1433,6 +1433,17 @@ void ScummEngine_v2::o2_delay() { delay |= fetchScriptByte() << 16; delay = 0xFFFFFF - delay; + // WORKAROUND: walking speed in the original v0/v1 interpreter + // is sometimes slower (e.g. during scrolling) than in ScummVM. + // Hence, the delay for the door-closing action in the dungeon + // is to long, so a single kid is able to escape -> shorten delay. + int script = vm.slot[_currentScript].number; + if ((_game.version == 0 && script == 132) || + (_game.version == 1 && script == 137)) { + if (delay == 180) + delay = 120; + } + vm.slot[_currentScript].delay = delay; vm.slot[_currentScript].status = ssPaused; o5_breakHere(); -- cgit v1.2.3