From eb97c05cccc78f0dc314034ee813c06f5fa3ea74 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Mon, 8 Feb 2016 00:16:38 +0200 Subject: [PATCH] LAB: Merge all the different scene restoring code after saving/loading --- engines/lab/lab.cpp | 6 ------ engines/lab/savegame.cpp | 21 ++++++++++++++++----- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/engines/lab/lab.cpp b/engines/lab/lab.cpp index 0a4cf4ec500..45b895d358e 100644 --- a/engines/lab/lab.cpp +++ b/engines/lab/lab.cpp @@ -214,12 +214,6 @@ void LabEngine::updateEvents() { Common::Error LabEngine::loadGameState(int slot) { bool result = loadGame(slot); - _curFileName = " "; - _closeDataPtr = nullptr; - _mainDisplay = true; - _followingCrumbs = false; - _event->simulateEvent(); - _graphics->_longWinInFront = false; return (result) ? Common::kNoError : Common::kUserCanceled; } diff --git a/engines/lab/savegame.cpp b/engines/lab/savegame.cpp index 16c40448399..656595e3e55 100644 --- a/engines/lab/savegame.cpp +++ b/engines/lab/savegame.cpp @@ -157,6 +157,11 @@ bool LabEngine::saveGame(int slot, const Common::String desc) { file->finalize(); delete file; + _mainDisplay = true; + _alternate = false; + _event->simulateEvent(); + _graphics->screenUpdate(); + return true; } @@ -202,6 +207,17 @@ bool LabEngine::loadGame(int slot) { delete file; + _curFileName = " "; + _closeDataPtr = nullptr; + _followingCrumbs = false; + _graphics->_longWinInFront = false; + _event->initMouse(); + + _mainDisplay = true; + _alternate = false; + _event->simulateEvent(); + _graphics->screenUpdate(); + return true; } @@ -238,11 +254,6 @@ bool LabEngine::saveRestoreGame() { delete dialog; } - _alternate = false; - _mainDisplay = true; - _event->initMouse(); - _graphics->screenUpdate(); - return isOK; }