aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorBastien Bouclet2018-10-07 16:09:57 +0200
committerBastien Bouclet2018-10-07 16:12:22 +0200
commit2f851edfc2f620ab7aae01bda0b4228b1ed5d139 (patch)
tree25f9d5341952122666766c50e01e82399669332f /engines
parent48ece56bafbcf5e940de6dda759f63dfcab2b57c (diff)
downloadscummvm-rg350-2f851edfc2f620ab7aae01bda0b4228b1ed5d139.tar.gz
scummvm-rg350-2f851edfc2f620ab7aae01bda0b4228b1ed5d139.tar.bz2
scummvm-rg350-2f851edfc2f620ab7aae01bda0b4228b1ed5d139.zip
MOHAWK: Show the closed gate on the 3rd channelwood level
The original game scripts are missing a delay. Fixes #10727.
Diffstat (limited to 'engines')
-rw-r--r--engines/mohawk/myst_scripts.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/mohawk/myst_scripts.cpp b/engines/mohawk/myst_scripts.cpp
index fa5d3952eb..5cd4e817da 100644
--- a/engines/mohawk/myst_scripts.cpp
+++ b/engines/mohawk/myst_scripts.cpp
@@ -600,6 +600,15 @@ void MystScriptParser::o_copyBackBufferToScreen(uint16 var, const ArgumentsArray
debugC(kDebugScript, "\trect.bottom: %d", rect.bottom);
_vm->_gfx->copyBackBufferToScreen(rect);
+
+ // WORKAROUND: On Channelwood, wait for the sound to complete when
+ // closing the gate on the third level near the blue page.
+ // Fixes the gate not changing visual state despite the closing
+ // sound playing.
+ // There is one card id per side of the gate.
+ if (_vm->getCard()->getId() == 3481 || _vm->getCard()->getId() == 3522) {
+ soundWaitStop();
+ }
}
void MystScriptParser::o_copyImageToBackBuffer(uint16 var, const ArgumentsArray &args) {