diff options
author | Filippos Karapetis | 2008-11-18 16:31:55 +0000 |
---|---|---|
committer | Filippos Karapetis | 2008-11-18 16:31:55 +0000 |
commit | 7650b61d27aa848d0f22f59c43d23787c04a65b7 (patch) | |
tree | 4edfb32d3d705c345308dbda6352c8244ea9d51c /engines/sword1/control.h | |
parent | bdbae740a60cdf153a1ab082329afa92f56ffd22 (diff) | |
download | scummvm-rg350-7650b61d27aa848d0f22f59c43d23787c04a65b7.tar.gz scummvm-rg350-7650b61d27aa848d0f22f59c43d23787c04a65b7.tar.bz2 scummvm-rg350-7650b61d27aa848d0f22f59c43d23787c04a65b7.zip |
Applied a slightly modified version of my patch #2307224 - "BS1: Save/load overhaul"
svn-id: r35111
Diffstat (limited to 'engines/sword1/control.h')
-rw-r--r-- | engines/sword1/control.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/engines/sword1/control.h b/engines/sword1/control.h index 926db757b9..1fbc7fdeba 100644 --- a/engines/sword1/control.h +++ b/engines/sword1/control.h @@ -43,6 +43,11 @@ class Mouse; class Music; class Sound; +#define SAVEGAME_HEADER MKID_BE('BS_1') +#define SAVEGAME_VERSION 1 +#define HAS_THUMBNAIL 1 +#define NO_THUMBNAIL 0 + #define MAX_BUTTONS 16 #define CONTROL_NOTHING_DONE 0 @@ -87,13 +92,19 @@ public: void doRestore(void); void askForCd(void); bool savegamesExist(void); + void readSavegameDescriptions(void); + void saveGameToFile(uint8 slot); bool restoreGameFromFile(uint8 slot); + void checkForOldSaveGames(); + + void setSaveDescription(int slot, const char *desc) { + _saveNames[slot] = desc; + } + private: int displayMessage(const char *altButton, const char *message, ...); - void saveGameToFile(uint8 slot); - void readSavegameDescriptions(void); - void writeSavegameDescriptions(void); + bool convertSaveGame(uint8 slot, char* desc); void showSavegameNames(void); void deselectSaveslots(void); uint8 *_restoreBuf; @@ -101,8 +112,8 @@ private: uint8 _numSaves; uint8 _saveScrollPos; uint8 _selectedSavegame; - uint8 _saveNames[64][32]; - uint8 _oldName[32]; + Common::StringList _saveNames; + Common::String _oldName; uint8 _cursorTick; bool _cursorVisible; |