diff options
Diffstat (limited to 'engines/groovie/groovie.cpp')
-rw-r--r-- | engines/groovie/groovie.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp index 291e3a1fde..672c440e44 100644 --- a/engines/groovie/groovie.cpp +++ b/engines/groovie/groovie.cpp @@ -350,6 +350,7 @@ Common::Platform GroovieEngine::getPlatform() const { bool GroovieEngine::hasFeature(EngineFeature f) const { return (f == kSupportsRTL) || + (f == kSupportsSavingDuringRuntime) || (f == kSupportsLoadingDuringRuntime); } @@ -372,7 +373,18 @@ void GroovieEngine::syncSoundSettings() { bool GroovieEngine::canLoadGameStateCurrently() { // TODO: verify the engine has been initialized - return true; + if (_script) + return true; + else + return false; +} + +bool GroovieEngine::canSaveGameStateCurrently() { + // TODO: verify the engine has been initialized + if (_script) + return true; + else + return false; } Common::Error GroovieEngine::loadGameState(int slot) { @@ -382,6 +394,13 @@ Common::Error GroovieEngine::loadGameState(int slot) { return Common::kNoError; } +Common::Error GroovieEngine::saveGameState(int slot, const Common::String &desc) { + _script->directGameSave(slot,desc); + + // TODO: Use specific error codes + return Common::kNoError; +} + void GroovieEngine::waitForInput() { _waitingForInput = true; } |