diff options
Diffstat (limited to 'saga/saveload.cpp')
-rw-r--r-- | saga/saveload.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/saga/saveload.cpp b/saga/saveload.cpp index a2c07fdde2..8560f4f10e 100644 --- a/saga/saveload.cpp +++ b/saga/saveload.cpp @@ -178,6 +178,12 @@ void SagaEngine::save(const char *fileName, const char *saveName) { // Inset scene out->writeSint32LE(_scene->currentSceneNumber()); + if (getGameType() != GType_ITE) { + out->writeUint32LE(_globalFlags); + for (int i = 0; i < ARRAYSIZE(_ethicsPoints); i++) + out->writeByte(_ethicsPoints[i]); + } + _interface->saveState(out); _actor->saveState(out); @@ -217,6 +223,12 @@ void SagaEngine::load(const char *fileName) { // Inset scene insetSceneNumber = in->readSint32LE(); + if (getGameType() != GType_ITE) { + _globalFlags = in->readUint32LE(); + for (int i = 0; i < ARRAYSIZE(_ethicsPoints); i++) + _ethicsPoints[i] = in->readByte(); + } + _interface->loadState(in); _actor->loadState(in); |