diff options
author | Sven Hesse | 2011-01-21 13:28:35 +0000 |
---|---|---|
committer | Sven Hesse | 2011-01-21 13:28:35 +0000 |
commit | 8b3f2955a458ea9c677491a4e41f9fc95c806b8d (patch) | |
tree | 9af49b2310a1858ed3c6ea90de613b2ee82e0da4 /engines/gob/save/saveload.h | |
parent | 398c95a331c408cad596e1d0e7aca2653495bea9 (diff) | |
download | scummvm-rg350-8b3f2955a458ea9c677491a4e41f9fc95c806b8d.tar.gz scummvm-rg350-8b3f2955a458ea9c677491a4e41f9fc95c806b8d.tar.bz2 scummvm-rg350-8b3f2955a458ea9c677491a4e41f9fc95c806b8d.zip |
GOB: Make the Cemetary/Lab screen work correctly
Saving there still won't work though
svn-id: r55374
Diffstat (limited to 'engines/gob/save/saveload.h')
-rw-r--r-- | engines/gob/save/saveload.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/engines/gob/save/saveload.h b/engines/gob/save/saveload.h index 89beafd9fc..af1c323723 100644 --- a/engines/gob/save/saveload.h +++ b/engines/gob/save/saveload.h @@ -64,6 +64,9 @@ public: /** Saves size bytes from the variables starting with data dataVar at offset. */ bool save(const char *fileName, int16 dataVar, int32 size, int32 offset); + /** Deletes the file. */ + bool deleteFile(const char *fileName); + protected: GobEngine *_vm; @@ -653,10 +656,29 @@ protected: File _file; }; + /** Handles the temporary saves. */ + class TempHandler : public SaveHandler { + public: + TempHandler(GobEngine *vm); + ~TempHandler(); + + int32 getSize(); + bool load(int16 dataVar, int32 size, int32 offset); + bool save(int16 dataVar, int32 size, int32 offset); + bool deleteFile(); + + private: + bool _empty; + + uint32 _size; + byte *_data; + }; + static SaveFile _saveFiles[]; GameHandler *_gameHandler; AutoHandler *_autoHandler; + TempHandler *_tmpHandler[2]; SaveHandler *getHandler(const char *fileName) const; const char *getDescription(const char *fileName) const; |