diff options
author | Travis Howell | 2007-06-05 06:04:07 +0000 |
---|---|---|
committer | Travis Howell | 2007-06-05 06:04:07 +0000 |
commit | 27083f8fb43424a415d83469b211bc64f66588f2 (patch) | |
tree | dad05356cd755f18f5c5cc43a6965f8abda546ea /engines | |
parent | b23eb038eaeff19a97feb62d7ee14802501710ba (diff) | |
download | scummvm-rg350-27083f8fb43424a415d83469b211bc64f66588f2.tar.gz scummvm-rg350-27083f8fb43424a415d83469b211bc64f66588f2.tar.bz2 scummvm-rg350-27083f8fb43424a415d83469b211bc64f66588f2.zip |
Fix loading and saving game through the options screen in Amiga CD32 version of Simon the Sorcerer 1.
svn-id: r27097
Diffstat (limited to 'engines')
-rw-r--r-- | engines/agos/script.cpp | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/engines/agos/script.cpp b/engines/agos/script.cpp index 5e86766066..ed82fd5316 100644 --- a/engines/agos/script.cpp +++ b/engines/agos/script.cpp @@ -745,16 +745,32 @@ void AGOSEngine::o_setAdjNoun() { void AGOSEngine::o_saveUserGame() { // 132: save user game - _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true); - userGame(false); - _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, false); + if (getGameId() == GID_SIMON1CD32) { + // The Amiga CD32 version of Simon the Sorcerer 1uses a single slot + if (!saveGame(0, "Default Saved Game")) { + vc33_setMouseOn(); + fileError(_windowArray[5], true); + } + } else { + _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true); + userGame(false); + _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, false); + } } void AGOSEngine::o_loadUserGame() { // 133: load user game - _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true); - userGame(true); - _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, false); + if (getGameId() == GID_SIMON1CD32) { + // The Amiga CD32 version of Simon the Sorcerer 1 uses a single slot + if (!loadGame(genSaveName(0))) { + vc33_setMouseOn(); + fileError(_windowArray[5], false); + } + } else { + _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, true); + userGame(true); + _system->setFeatureState(OSystem::kFeatureVirtualKeyboard, false); + } } void AGOSEngine::o_copysf() { |