diff options
author | Max Horn | 2008-01-11 22:13:34 +0000 |
---|---|---|
committer | Max Horn | 2008-01-11 22:13:34 +0000 |
commit | 6bc4a9a35ee0a4ba9d14d2477071dfd1715cc07f (patch) | |
tree | 2ea9dd826e05bad1a2e2583b6c807afc7c114464 | |
parent | 3e980392d5d137e17a2524a2871af61f4335ef8e (diff) | |
download | scummvm-rg350-6bc4a9a35ee0a4ba9d14d2477071dfd1715cc07f.tar.gz scummvm-rg350-6bc4a9a35ee0a4ba9d14d2477071dfd1715cc07f.tar.bz2 scummvm-rg350-6bc4a9a35ee0a4ba9d14d2477071dfd1715cc07f.zip |
The SCUMM timer fix makes the workaround for bug #1324106 obsolete
svn-id: r30419
-rw-r--r-- | engines/scumm/imuse/imuse.cpp | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/engines/scumm/imuse/imuse.cpp b/engines/scumm/imuse/imuse.cpp index 1da6bdf627..0e21e9a24b 100644 --- a/engines/scumm/imuse/imuse.cpp +++ b/engines/scumm/imuse/imuse.cpp @@ -962,8 +962,6 @@ void IMuseInternal::handle_marker(uint id, byte data) { _trigger_count--; _queue_cleared = false; do { - bool skip_cmd = false; - pos = (pos + 1) % ARRAYSIZE(_cmd_queue); if (_queue_pos == pos) break; @@ -972,29 +970,7 @@ void IMuseInternal::handle_marker(uint id, byte data) { break; _queue_end = pos; - // WORKAROUND for bug #1324106. When playing the "flourishes" - // as Rapp's body appears from his ashes, MI2 sets up a trigger - // to pause the music, in case the animation plays too slowly, - // and then the music is manually unpaused for the next part of - // the animation. - // - // However, with ScummVM the animation finishes slightly too - // quickly instead, and the pause command is run *after* the - // unpause, so the whole thing is thrown out of sync. I think - // we can assume that any platform running ScummVM is fast - // enough to keep up with the animation here, so ignore the - // pause command. - // - // Since setting up a trigger is a multi-step operation (first - // the trigger, and then the commands), it's probably easiest - // to catch it here. - - if (_game_id == GID_MONKEY2 && p[0] == 262 && p[1] == 183 && p[2] == 0) { - skip_cmd = true; - } - - if (!skip_cmd) - doCommand_internal(p[0], p[1], p[2], p[3], p[4], p[5], p[6], 0); + doCommand_internal(p[0], p[1], p[2], p[3], p[4], p[5], p[6], 0); if (_queue_cleared) return; |