aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/myst_stacks/myst.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mohawk/myst_stacks/myst.cpp')
-rw-r--r--engines/mohawk/myst_stacks/myst.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/engines/mohawk/myst_stacks/myst.cpp b/engines/mohawk/myst_stacks/myst.cpp
index 02f899e419..3bcc83527b 100644
--- a/engines/mohawk/myst_stacks/myst.cpp
+++ b/engines/mohawk/myst_stacks/myst.cpp
@@ -3230,9 +3230,25 @@ void MystScriptParser_Myst::libraryBookcaseTransform_run(void) {
_libraryBookcaseChanged = false;
_libraryBookcaseMoving = false;
+ _vm->_cursor->hideCursor();
+
// Play transform sound and video
_vm->_sound->replaceSoundMyst(_libraryBookcaseSoundId);
_libraryBookcaseMovie->playMovie();
+
+ if (_state.libraryBookcaseDoor) {
+ _vm->_gfx->copyImageSectionToBackBuffer(11179, Common::Rect(0, 0, 106, 81), Common::Rect(0, 72, 106, 153));
+ _vm->_gfx->runTransition(6, Common::Rect(0, 72, 106, 153), 5, 10);
+ _vm->_sound->playSoundBlocking(7348);
+ _vm->_sound->replaceBackgroundMyst(4348, 16384);
+ } else {
+ _vm->_gfx->copyImageSectionToBackBuffer(11178, Common::Rect(0, 0, 107, 67), Common::Rect(437, 84, 544, 151));
+ _vm->_gfx->copyBackBufferToScreen(Common::Rect(437, 84, 544, 151));
+ _vm->_sound->playSoundBlocking(7348);
+ _vm->_sound->replaceBackgroundMyst(4334, 16384);
+ }
+
+ _vm->_cursor->showCursor();
}
}