diff --git a/engines/mohawk/myst_stacks/menu.cpp b/engines/mohawk/myst_stacks/menu.cpp index 45c5fdf1c79..3e97104481f 100644 --- a/engines/mohawk/myst_stacks/menu.cpp +++ b/engines/mohawk/myst_stacks/menu.cpp @@ -108,7 +108,7 @@ uint16 Menu::getVar(uint16 var) { } void Menu::o_menuInit(uint16 var, const ArgumentsArray &args) { - _vm->pauseEngine(true); + _pauseToken = _vm->pauseEngine(); if (_inGame) { _wasCursorVisible = CursorMan.isVisible(); @@ -330,7 +330,7 @@ void Menu::o_menuExit(uint16 var, const ArgumentsArray &args) { CursorMan.showMouse(_wasCursorVisible); - _vm->pauseEngine(false); + _pauseToken.clear(); } void Menu::o_playIntroMovies(uint16 var, const ArgumentsArray &args) { diff --git a/engines/mohawk/myst_stacks/menu.h b/engines/mohawk/myst_stacks/menu.h index 449a8bd97b5..75140b41f48 100644 --- a/engines/mohawk/myst_stacks/menu.h +++ b/engines/mohawk/myst_stacks/menu.h @@ -89,6 +89,8 @@ private: const char **getButtonCaptions() const; void resetButtons(); + PauseToken _pauseToken; + }; } // End of namespace MystStacks