aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/statesaver.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2016-09-18 22:45:21 +0200
committerEugene Sandulenko2016-09-18 22:45:37 +0200
commit61d8ec8b7fae1bcd28084ddebf28ade67de3e20f (patch)
tree2c61a735bf7dbf4584b9179d3a121bea0e227a87 /engines/fullpipe/statesaver.cpp
parent8bdabc16bde7b5d197797a9f1f2ff474ff7e726b (diff)
downloadscummvm-rg350-61d8ec8b7fae1bcd28084ddebf28ade67de3e20f.tar.gz
scummvm-rg350-61d8ec8b7fae1bcd28084ddebf28ade67de3e20f.tar.bz2
scummvm-rg350-61d8ec8b7fae1bcd28084ddebf28ade67de3e20f.zip
FULLPIPE: Implemented savefile loading
Diffstat (limited to 'engines/fullpipe/statesaver.cpp')
-rw-r--r--engines/fullpipe/statesaver.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/fullpipe/statesaver.cpp b/engines/fullpipe/statesaver.cpp
index 8f4077877c..c63587a560 100644
--- a/engines/fullpipe/statesaver.cpp
+++ b/engines/fullpipe/statesaver.cpp
@@ -48,7 +48,7 @@ void GameLoader::writeSavegame(Scene *sc, const char *fname) {
saveScenePicAniInfos(sc->_sceneId);
memset(&header, 0, sizeof(header));
- header.saveSize = 48;
+ header.version = 48; // '0'
strcpy(header.magic, "FullPipe Savegame");
header.updateCounter = _updateCounter;
header.unkField = 1;
@@ -103,13 +103,18 @@ void GameLoader::writeSavegame(Scene *sc, const char *fname) {
// Now dump it into save file
Common::OutSaveFile *saveFile = g_system->getSavefileManager()->openForSaving(fname);
- saveFile->write(&header, sizeof(header));
+ saveFile->writeUint32LE(header.version);
+ saveFile->write(header.magic, 32);
+ saveFile->writeUint32LE(header.updateCounter);
+ saveFile->writeUint32LE(header.unkField);
+ saveFile->writeUint32LE(header.encSize);
saveFile->write(stream.getData(), stream.size());
saveFile->finalize();
delete saveFile;
+ delete archive;
}