diff options
author | Walter van Niftrik | 2016-03-04 16:30:40 +0100 |
---|---|---|
committer | Walter van Niftrik | 2016-03-09 10:03:13 +0100 |
commit | 115e4cab0d3bd18b0e189c7c304e32f122836f75 (patch) | |
tree | 6f1e859b3af7f347c5e814554f7b3467d068e1c9 /engines | |
parent | 4f7e5da4dad61f11553e5f51f00d33506b9ef342 (diff) | |
download | scummvm-rg350-115e4cab0d3bd18b0e189c7c304e32f122836f75.tar.gz scummvm-rg350-115e4cab0d3bd18b0e189c7c304e32f122836f75.tar.bz2 scummvm-rg350-115e4cab0d3bd18b0e189c7c304e32f122836f75.zip |
ADL: Fix restoring on restart prompt
Diffstat (limited to 'engines')
-rw-r--r-- | engines/adl/adl.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/adl/adl.cpp b/engines/adl/adl.cpp index 90a9a0db06..d2d8492a23 100644 --- a/engines/adl/adl.cpp +++ b/engines/adl/adl.cpp @@ -291,7 +291,11 @@ void AdlEngine::doActions(const Command &command, byte noun, byte offset) { case IDO_ACT_LOAD: loadGameState(0); ++offset; - // Original engine continues processing here (?) + // Original engine does not jump out of the loop, + // so we don't either. + // We reset the restore flag, as the restore game + // process is complete + _isRestoring = false; break; case IDO_ACT_RESTART: { _display->printString(_strings[IDI_STR_PLAY_AGAIN]); @@ -301,6 +305,7 @@ void AdlEngine::doActions(const Command &command, byte noun, byte offset) { Common::String input = inputString(); _canRestoreNow = false; + // If the user restored with the GMM, we break off the restart if (_isRestoring) return; @@ -661,6 +666,7 @@ Common::Error AdlEngine::loadGameState(int slot) { setTotalPlayTime(playTime); + _isRestoring = true; return Common::kNoError; } |