diff options
author | Strangerke | 2015-12-13 23:22:34 +0100 |
---|---|---|
committer | Willem Jan Palenstijn | 2015-12-23 21:34:03 +0100 |
commit | a784e2bd5cb17e3abbc2bfd47e65b63ef13ec2fc (patch) | |
tree | 023b9526733bcf9f7e4807bbef2319cfd19e0d94 /engines/lab/lab.h | |
parent | 974740d3076984535f941afb18e0adfa7132aab7 (diff) | |
download | scummvm-rg350-a784e2bd5cb17e3abbc2bfd47e65b63ef13ec2fc.tar.gz scummvm-rg350-a784e2bd5cb17e3abbc2bfd47e65b63ef13ec2fc.tar.bz2 scummvm-rg350-a784e2bd5cb17e3abbc2bfd47e65b63ef13ec2fc.zip |
LAB: Finally get rid of g_lab
Diffstat (limited to 'engines/lab/lab.h')
-rw-r--r-- | engines/lab/lab.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/lab/lab.h b/engines/lab/lab.h index d968c18013..756f6e1a36 100644 --- a/engines/lab/lab.h +++ b/engines/lab/lab.h @@ -34,8 +34,9 @@ #include "common/system.h" #include "common/random.h" #include "common/rect.h" - +#include "common/savefile.h" #include "engines/engine.h" +#include "engines/savestate.h" #include "lab/image.h" @@ -64,6 +65,13 @@ class Resource; class TilePuzzle; class Utils; +struct SaveGameHeader { + byte _version; + SaveStateDescriptor _descr; + uint16 _roomNumber; + uint16 _direction; +}; + enum GameFeatures { GF_LOWRES = 1 << 0, GF_WINDOWS_TRIAL = 1 << 1 @@ -244,9 +252,14 @@ private: void setCurrentClose(Common::Point pos, CloseDataPtr *closePtrList, bool useAbsoluteCoords); bool takeItem(uint16 x, uint16 y, CloseDataPtr *closePtrList); void turnPage(bool fromLeft); + +private: + bool saveGame(int slot, Common::String desc); + bool loadGame(int slot); + void writeSaveGameHeader(Common::OutSaveFile *out, const Common::String &saveName); }; -extern LabEngine *g_lab; +bool readSaveGameHeader(Common::InSaveFile *in, SaveGameHeader &header); } // End of namespace Lab |