aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/gameloader.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2016-09-18 09:37:05 +0200
committerEugene Sandulenko2016-09-18 09:37:37 +0200
commita6d71c941d9ee2c63f7af6f447862c172544f843 (patch)
tree65e9f134ac71be2d22539e3c64bafd94a6f8000a /engines/fullpipe/gameloader.cpp
parentb413d01113d39d74639cb8f068efb0f14110d646 (diff)
downloadscummvm-rg350-a6d71c941d9ee2c63f7af6f447862c172544f843.tar.gz
scummvm-rg350-a6d71c941d9ee2c63f7af6f447862c172544f843.tar.bz2
scummvm-rg350-a6d71c941d9ee2c63f7af6f447862c172544f843.zip
FULLPIPE: Moved save-related functions to statesaver.cpp
Diffstat (limited to 'engines/fullpipe/gameloader.cpp')
-rw-r--r--engines/fullpipe/gameloader.cpp100
1 files changed, 0 insertions, 100 deletions
diff --git a/engines/fullpipe/gameloader.cpp b/engines/fullpipe/gameloader.cpp
index bbe99ab9f5..55db7fb8e3 100644
--- a/engines/fullpipe/gameloader.cpp
+++ b/engines/fullpipe/gameloader.cpp
@@ -21,7 +21,6 @@
*/
#include "fullpipe/fullpipe.h"
-#include "common/memstream.h"
#include "graphics/thumbnail.h"
#include "fullpipe/gameloader.h"
@@ -599,105 +598,6 @@ void GameLoader::updateSystems(int counterdiff) {
}
}
-void GameLoader::readSavegame(const char *fname) {
- warning("STUB: readSavegame(%s)", fname);
-}
-
-struct SaveHeader {
- int32 saveSize;
- char magic[32];
- int32 updateCounter;
- int32 unkField;
- int32 encSize;
-};
-
-void GameLoader::writeSavegame(Scene *sc, const char *fname) {
- GameVar *v = _gameVar->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME");
-
- if (!v) {
- v = _gameVar->getSubVarByName("OBJSTATES")->addSubVarAsInt("SAVEGAME", 0);
-
- if (!v) {
- warning("No state to save");
- return;
- }
- }
-
- SaveHeader header;
-
- v->setSubVarAsInt("Scene", sc->_sceneId);
-
- saveScenePicAniInfos(sc->_sceneId);
- memset(&header, 0, sizeof(header));
-
- header.saveSize = 48;
- strcpy(header.magic, "FullPipe Savegame");
- header.updateCounter = _updateCounter;
- header.unkField = 1;
-
- Common::MemoryWriteStreamDynamic stream;
-
- MfcArchive *archive = new MfcArchive(&stream);
-
- v = _gameVar->getSubVarByName("OBJSTATES");
-
- GameVar *nxt = 0;
- GameVar *prv = 0;
- GameVar *par;
- if (v) {
- nxt = v->_nextVarObj;
- prv = v->_prevVarObj;
- par = v->_parentVarObj;
- v->_parentVarObj = 0;
- v->_nextVarObj = 0;
- v->_prevVarObj = 0;
- }
-
- archive->writeObject(v);
-
- if (v) {
- v->_parentVarObj = par;
- v->_nextVarObj = nxt;
- v->_prevVarObj = prv;
- }
-
- getGameLoaderInventory()->savePartial(*archive);
-
- archive->writeUint32LE(_sc2array.size());
-
- for (uint i = 0; i < _sc2array.size(); i++) {
- archive->writeUint32LE(_sc2array[i]._picAniInfosCount);
-
- for (uint j = 0; j < _sc2array[i]._picAniInfosCount; j++) {
- _sc2array[i]._picAniInfos[j]->save(*archive);
- }
- }
-
- header.encSize = stream.size();
-
- // Now obfuscate the data
- for (uint i = 0; i < header.encSize; i++)
- stream.getData()[i] += i & 0x7f;
-
- if (_savegameCallback)
- _savegameCallback(archive, true);
-
- // Now dump it into save file
- Common::OutSaveFile *saveFile = g_system->getSavefileManager()->openForSaving(fname);
-
- saveFile->write(&header, sizeof(header));
-
- saveFile->write(stream.getData(), stream.size());
-
- saveFile->finalize();
-
- delete saveFile;
-}
-
-void GameLoader::writeObject(Common::WriteStream *stream, GameVar *) {
- warning("STUB: GameLoader::writeObject()");
-}
-
Sc2::Sc2() {
_sceneId = 0;
_field_2 = 0;