diff options
Diffstat (limited to 'engines/fullpipe/gameloader.h')
-rw-r--r-- | engines/fullpipe/gameloader.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/engines/fullpipe/gameloader.h b/engines/fullpipe/gameloader.h index a79c0e11b4..772cc51130 100644 --- a/engines/fullpipe/gameloader.h +++ b/engines/fullpipe/gameloader.h @@ -29,6 +29,8 @@ namespace Fullpipe { +#define FULLPIPE_SAVEGAME_VERSION 1 + class SceneTag; class MctlCompound; class InputController; @@ -72,6 +74,12 @@ class PreloadItems : public Common::Array<PreloadItem *>, public CObject { virtual bool load(MfcArchive &file); }; +struct FullpipeSavegameHeader { + uint8 version; + Common::String saveName; + Graphics::Surface *thumbnail; +}; + class GameLoader : public CObject { public: GameLoader(); @@ -89,6 +97,11 @@ class GameLoader : public CObject { void applyPicAniInfos(Scene *sc, PicAniInfo **picAniInfo, int picAniInfoCount); void saveScenePicAniInfos(int sceneId); + void readSavegame(const char *fname); + void writeSavegame(Scene *sc, const char *fname); + + void restoreDefPicAniInfos(); + GameProject *_gameProject; InteractionController *_interactionController; InputController *_inputController; @@ -108,6 +121,9 @@ class GameLoader : public CObject { int _preloadEntranceId; }; +const char *getSavegameFile(int saveGameIdx); +bool readSavegameHeader(Common::InSaveFile *in, FullpipeSavegameHeader &header); + Inventory2 *getGameLoaderInventory(); InteractionController *getGameLoaderInteractionController(); MctlCompound *getSc2MctlCompoundBySceneId(int16 sceneId); |