aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2018-04-02 21:36:36 -0400
committerPaul Gilbert2018-04-02 21:36:36 -0400
commit92b1cbbb7f4b118089e746e73a26563aad6417b0 (patch)
tree5eab899bd9883d6f3b7b50302985db1fcb8c3cb2 /engines
parentc8b9b7c8a246452339d678f9bbf6f67e23d0aca5 (diff)
downloadscummvm-rg350-92b1cbbb7f4b118089e746e73a26563aad6417b0.tar.gz
scummvm-rg350-92b1cbbb7f4b118089e746e73a26563aad6417b0.tar.bz2
scummvm-rg350-92b1cbbb7f4b118089e746e73a26563aad6417b0.zip
XEEN: Fix game state after restarting game
Diffstat (limited to 'engines')
-rw-r--r--engines/xeen/files.cpp1
-rw-r--r--engines/xeen/xeen.cpp1
2 files changed, 2 insertions, 0 deletions
diff --git a/engines/xeen/files.cpp b/engines/xeen/files.cpp
index 5cf38f3221..0fce5b3741 100644
--- a/engines/xeen/files.cpp
+++ b/engines/xeen/files.cpp
@@ -504,6 +504,7 @@ void SaveArchive::load(Common::SeekableReadStream &stream) {
void SaveArchive::reset(CCArchive *src) {
Common::MemoryWriteStreamDynamic saveFile(DisposeAfterUse::YES);
File fIn;
+ _newData.clear();
g_vm->_files->setGameCc(g_vm->getGameID() == GType_DarkSide ? 1 : 0);
const int RESOURCES[6] = { 0x2A0C, 0x2A1C, 0x2A2C, 0x2A3C, 0x284C, 0x2A5C };
diff --git a/engines/xeen/xeen.cpp b/engines/xeen/xeen.cpp
index 1d0e33d2b6..854ac87dc3 100644
--- a/engines/xeen/xeen.cpp
+++ b/engines/xeen/xeen.cpp
@@ -218,6 +218,7 @@ void XeenEngine::play() {
_party->_mazePosition.y = 21;
}
+ _map->clearMaze();
if (_loadSaveSlot >= 0) {
_saves->newGame();
_saves->loadGameState(_loadSaveSlot);