diff options
author | Paul Gilbert | 2017-08-18 22:42:21 -0400 |
---|---|---|
committer | Paul Gilbert | 2017-08-18 22:42:21 -0400 |
commit | d9d325ac6c97cb53be64639cf5d6b8a2038c9d0f (patch) | |
tree | 7d6513efb986551dc653a118b6dfc0b91b3a2e9a | |
parent | 8308341a98991ff0809ee9b38121e3d4a73a39f3 (diff) | |
download | scummvm-rg350-d9d325ac6c97cb53be64639cf5d6b8a2038c9d0f.tar.gz scummvm-rg350-d9d325ac6c97cb53be64639cf5d6b8a2038c9d0f.tar.bz2 scummvm-rg350-d9d325ac6c97cb53be64639cf5d6b8a2038c9d0f.zip |
TITANIC: Allow GMM/F7 loading in prologue before player gets the PET
-rw-r--r-- | engines/titanic/titanic.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/engines/titanic/titanic.cpp b/engines/titanic/titanic.cpp index 5fd72371eb..9b1b9d66d3 100644 --- a/engines/titanic/titanic.cpp +++ b/engines/titanic/titanic.cpp @@ -181,23 +181,30 @@ bool TitanicEngine::canLoadGameStateCurrently() { CGameManager *gameManager = _window->_gameManager; CScreenManager *screenMan = CScreenManager::_screenManagerPtr; - if (!_window->_inputAllowed || !gameManager->_gameState._petActive) + if (!_window->_inputAllowed) return false; if (screenMan && screenMan->_inputHandler->isLocked()) return false; CProjectItem *project = gameManager->_project; if (project) { - CPetControl *pet = project->getPetControl(); - if (pet && !pet->isAreaUnlocked()) - return false; + if (gameManager->_gameState._petActive) { + CPetControl *pet = project->getPetControl(); + if (pet && !pet->isAreaUnlocked()) + return false; + } + } else { + return false; } return true; } bool TitanicEngine::canSaveGameStateCurrently() { - return canLoadGameStateCurrently(); + CGameManager *gameManager = _window->_gameManager; + + return gameManager->_gameState._petActive && + canLoadGameStateCurrently(); } Common::Error TitanicEngine::loadGameState(int slot) { |