diff options
author | Bastien Bouclet | 2018-09-01 06:27:56 +0200 |
---|---|---|
committer | Bastien Bouclet | 2018-09-01 06:27:56 +0200 |
commit | 3c8a0a3d2ea4cf67960a23b77460e6cf95c64d60 (patch) | |
tree | 214d5e3585401c1710a284b85a42ab5d2e49760a | |
parent | 33131554c13fbd7d99cc83ccd97193a6c220cc85 (diff) | |
download | scummvm-rg350-3c8a0a3d2ea4cf67960a23b77460e6cf95c64d60.tar.gz scummvm-rg350-3c8a0a3d2ea4cf67960a23b77460e6cf95c64d60.tar.bz2 scummvm-rg350-3c8a0a3d2ea4cf67960a23b77460e6cf95c64d60.zip |
MOHAWK: RIVEN: Wait for the sound track to end after the credit
-rw-r--r-- | engines/mohawk/riven_graphics.cpp | 2 | ||||
-rw-r--r-- | engines/mohawk/riven_stack.cpp | 17 |
2 files changed, 2 insertions, 17 deletions
diff --git a/engines/mohawk/riven_graphics.cpp b/engines/mohawk/riven_graphics.cpp index bc6ebfc382..084019df5e 100644 --- a/engines/mohawk/riven_graphics.cpp +++ b/engines/mohawk/riven_graphics.cpp @@ -682,7 +682,7 @@ void RivenGraphics::updateCredits() { runScheduledTransition(); } else { - // Otheriwse, we're scrolling + // Otherwise, we're scrolling // This is done by 1) moving the screen up one row and // 2) adding a new row at the bottom that is the current row of the current image or // not and it defaults to being empty (a black row). diff --git a/engines/mohawk/riven_stack.cpp b/engines/mohawk/riven_stack.cpp index abe7e5a903..17baf94595 100644 --- a/engines/mohawk/riven_stack.cpp +++ b/engines/mohawk/riven_stack.cpp @@ -237,7 +237,7 @@ void RivenStack::runCredits(uint16 video, uint32 delay, uint32 videoFrameCountOv frameCount = videoPtr->getFrameCount(); } - while (!_vm->hasGameEnded() && _vm->_gfx->getCurCreditsImage() <= kRivenCreditsLastImage) { + while (!_vm->hasGameEnded() && !videoPtr->endOfVideo()) { if (videoPtr->getCurFrame() >= frameCount - 1) { if (nextCreditsFrameStart == 0) { videoPtr->disable(); @@ -258,21 +258,6 @@ void RivenStack::runCredits(uint16 video, uint32 delay, uint32 videoFrameCountOv _vm->doFrame(); } - // Let the last frame of credits keep scrolling till black - uint currFrameTime = _vm->getTotalPlayTime(); - nextCreditsFrameStart = currFrameTime + 1000 / 60; - uint endFrameTime = currFrameTime + 8000; // 8 seconds - uint sleepTime = 0; - - while(currFrameTime < endFrameTime) { - if (sleepTime > 0) - _vm->delay(sleepTime); - nextCreditsFrameStart += 1000 / 60; - _vm->_gfx->updateCredits(); - _vm->doFrame(); - currFrameTime = _vm->getTotalPlayTime(); - sleepTime = nextCreditsFrameStart - currFrameTime; - } _vm->setGameEnded(); } |