diff options
author | Bastien Bouclet | 2016-07-10 20:43:34 +0200 |
---|---|---|
committer | Bastien Bouclet | 2016-07-10 22:01:03 +0200 |
commit | f78bb08b1850b349f28b3cb5f1357fdebd5b8e00 (patch) | |
tree | 96e71ba196dd3bc5e69f5a29476dc1dd5b7292bb /engines/mohawk/riven_saveload.h | |
parent | 792548f28fd0529077f01a56a026892dfcdcb7b0 (diff) | |
download | scummvm-rg350-f78bb08b1850b349f28b3cb5f1357fdebd5b8e00.tar.gz scummvm-rg350-f78bb08b1850b349f28b3cb5f1357fdebd5b8e00.tar.bz2 scummvm-rg350-f78bb08b1850b349f28b3cb5f1357fdebd5b8e00.zip |
MOHAWK: Save ScummVM specific metadata in the Riven saves
- Thumbnail
- Save date
- Save description
- Total play time
Diffstat (limited to 'engines/mohawk/riven_saveload.h')
-rw-r--r-- | engines/mohawk/riven_saveload.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/engines/mohawk/riven_saveload.h b/engines/mohawk/riven_saveload.h index a6ddce5713..2ef4326439 100644 --- a/engines/mohawk/riven_saveload.h +++ b/engines/mohawk/riven_saveload.h @@ -23,10 +23,13 @@ #ifndef MOHAWK_SAVELOAD_H #define MOHAWK_SAVELOAD_H +#include "common/serializer.h" #include "common/savefile.h" #include "common/str.h" #include "common/memstream.h" +#include "engines/savestate.h" + namespace Mohawk { class MohawkEngine_Riven; @@ -36,6 +39,22 @@ enum { kDVDSaveGameVersion = 0x00010100 }; +struct RivenSaveMetadata { + uint8 saveDay; + uint8 saveMonth; + uint16 saveYear; + + uint8 saveHour; + uint8 saveMinute; + + uint32 totalPlayTime; + + Common::String saveDescription; + + RivenSaveMetadata(); + bool sync(Common::Serializer &s); +}; + class RivenSaveLoad { public: RivenSaveLoad(MohawkEngine_Riven*, Common::SaveFileManager*); @@ -46,13 +65,18 @@ public: Common::Error saveGame(Common::String); void deleteSave(Common::String); + static SaveStateDescriptor querySaveMetaInfos(const Common::String &filename); + static Common::String querySaveDescription(const Common::String &filename); + private: MohawkEngine_Riven *_vm; Common::SaveFileManager *_saveFileMan; - Common::MemoryWriteStreamDynamic *genVERSSection(); Common::MemoryWriteStreamDynamic *genNAMESection(); + Common::MemoryWriteStreamDynamic *genMETASection(const Common::String &desc) const; + Common::MemoryWriteStreamDynamic *genTHMBSection() const; Common::MemoryWriteStreamDynamic *genVARSSection(); + Common::MemoryWriteStreamDynamic *genVERSSection(); Common::MemoryWriteStreamDynamic *genZIPSSection(); }; |