diff options
-rw-r--r-- | engines/mohawk/riven.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/mohawk/riven.cpp b/engines/mohawk/riven.cpp index 77d52f9aa5..1f19b080de 100644 --- a/engines/mohawk/riven.cpp +++ b/engines/mohawk/riven.cpp @@ -369,6 +369,12 @@ void MohawkEngine_Riven::pauseEngineIntern(bool pause) { _video->pauseVideos(); } else { _video->resumeVideos(); + + if (_stack) { + // The mouse may have moved while the game was paused, + // the mouse cursor needs to be updated. + _stack->onMouseMove(_eventMan->getMousePos()); + } } } @@ -444,6 +450,10 @@ void MohawkEngine_Riven::changeToStack(uint16 stackId) { delete _stack; _stack = constructStackById(stackId); + + // Set the mouse position to the correct value so the mouse + // cursor can be computed accurately when loading a card. + _stack->onMouseMove(getEventManager()->getMousePos()); } const char **MohawkEngine_Riven::listExpectedDatafiles() const { |