From 13de2f177135b8f243d373c1aaa5367aaa9b1845 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 30 Sep 2019 18:19:59 -0700 Subject: GLK: QUEST: Fleshing out savegame code, hooking to GMM --- engines/glk/quest/quest.h | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'engines/glk/quest/quest.h') diff --git a/engines/glk/quest/quest.h b/engines/glk/quest/quest.h index cb0994db5e..ed8d60eb5f 100644 --- a/engines/glk/quest/quest.h +++ b/engines/glk/quest/quest.h @@ -25,6 +25,7 @@ #include "glk/glk_api.h" #include "glk/quest/string.h" +#include "glk/quest/geas_runner.h" namespace Glk { namespace Quest { @@ -35,6 +36,7 @@ namespace Quest { class Quest : public GlkAPI { private: int _saveSlot; + GeasRunner *_runner; public: String banner; private: @@ -71,24 +73,28 @@ public: } /** - * Savegames aren't supported for Quest games + * Returns true if a savegame can be loaded */ - virtual bool canLoadGameStateCurrently() override { return false; } + virtual bool canLoadGameStateCurrently() override { + return _runner != nullptr; + } /** - * Savegames aren't supported for Quest games + * Returns true if the game can be saved */ - virtual bool canSaveGameStateCurrently() override { return false; } + virtual bool canSaveGameStateCurrently() override { + return _runner != nullptr; + } /** * Savegames aren't supported for Quest games */ - virtual Common::Error readSaveData(Common::SeekableReadStream *rs) override { return Common::kUnknownError; } + virtual Common::Error readSaveData(Common::SeekableReadStream *rs) override; /** * Savegames aren't supported for Quest games */ - virtual Common::Error writeGameData(Common::WriteStream *ws) override { return Common::kUnknownError; } + virtual Common::Error writeGameData(Common::WriteStream *ws) override; }; extern Quest *g_vm; -- cgit v1.2.3