aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/saveload.cpp
diff options
context:
space:
mode:
authorMax Horn2008-11-11 10:25:29 +0000
committerMax Horn2008-11-11 10:25:29 +0000
commit98e9333aabaf759b22451a3418e23142b2d1f94a (patch)
tree454428d1c0e9c74ae186732cb1fc7a54a9cb3401 /engines/scumm/saveload.cpp
parent2a71b897c69f303f5c1df14a0c9bc22911bef741 (diff)
downloadscummvm-rg350-98e9333aabaf759b22451a3418e23142b2d1f94a.tar.gz
scummvm-rg350-98e9333aabaf759b22451a3418e23142b2d1f94a.tar.bz2
scummvm-rg350-98e9333aabaf759b22451a3418e23142b2d1f94a.zip
SCUMM: Regulate save/load support in GMM based on VAR_MAINMENU_KEY - though I wonder whether we need it for loading at all...
svn-id: r35001
Diffstat (limited to 'engines/scumm/saveload.cpp')
-rw-r--r--engines/scumm/saveload.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index 069302482c..5fdd340fc9 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -81,8 +81,11 @@ Common::Error ScummEngine::loadGameState(int slot) {
}
bool ScummEngine::canLoadGameStateCurrently() {
- // FIXME: For now always allow loading
- return true;
+ // FIXME: For now always allow loading in V0-V3 games
+ // FIXME: Actually, we might wish to support loading in more places.
+ // As long as we are sure it won't cause any problems... Are we
+ // aware of *any* spots where loading is not supported?
+ return (VAR_MAINMENU_KEY == 0xFF || VAR(VAR_MAINMENU_KEY) != 0);
}
Common::Error ScummEngine::saveGameState(int slot, const char *desc) {
@@ -91,9 +94,11 @@ Common::Error ScummEngine::saveGameState(int slot, const char *desc) {
}
bool ScummEngine::canSaveGameStateCurrently() {
- // FIXME: For now always allow saving
- return true;
- return 0;
+ // FIXME: For now always allow loading in V0-V3 games
+ // TODO: Should we disallow saving in some more places,
+ // e.g. when a SAN movie is playing? Not sure whether the
+ // original EXE allowed this.
+ return (VAR_MAINMENU_KEY == 0xFF || VAR(VAR_MAINMENU_KEY) != 0);
}