aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/detection.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/engines/sci/detection.cpp b/engines/sci/detection.cpp
index 272e3320b4..fa89aad404 100644
--- a/engines/sci/detection.cpp
+++ b/engines/sci/detection.cpp
@@ -22,6 +22,7 @@
#include "engines/advancedDetector.h"
#include "base/plugins.h"
+#include "common/config-manager.h"
#include "common/file.h"
#include "common/ptr.h"
#include "common/savefile.h"
@@ -883,13 +884,13 @@ Common::Error SciEngine::saveGameState(int slot, const Common::String &desc) {
bool SciEngine::canLoadGameStateCurrently() {
#ifdef ENABLE_SCI32
+ const Common::String &guiOptions = ConfMan.get("guioptions");
if (getSciVersion() >= SCI_VERSION_2) {
- switch (getGameId()) {
- case GID_PHANTASMAGORIA:
- case GID_HOYLE5:
+ if (ConfMan.getBool("originalsaveload") ||
+ !Common::checkGameGUIOption(GAMEOPTION_ORIGINAL_SAVELOAD, guiOptions) ||
+ Common::checkGameGUIOption(GUIO_NOLAUNCHLOAD, guiOptions)) {
+
return false;
- default:
- break;
}
}
#endif