diff options
author | Paul Gilbert | 2015-04-22 05:06:13 -0500 |
---|---|---|
committer | Paul Gilbert | 2015-04-22 05:06:13 -0500 |
commit | 0fc29972804c12ad9b051574a6e0588ff2b065ee (patch) | |
tree | adee9578ed4ebeccbae59c0d79dc5753305fe8b8 | |
parent | 27938653a5cd05856da88142f52de44f30e26eef (diff) | |
download | scummvm-rg350-0fc29972804c12ad9b051574a6e0588ff2b065ee.tar.gz scummvm-rg350-0fc29972804c12ad9b051574a6e0588ff2b065ee.tar.bz2 scummvm-rg350-0fc29972804c12ad9b051574a6e0588ff2b065ee.zip |
SHERLOCK: Fixes for saving and restoring games
-rw-r--r-- | engines/sherlock/events.cpp | 1 | ||||
-rw-r--r-- | engines/sherlock/scene.cpp | 6 |
2 files changed, 6 insertions, 1 deletions
diff --git a/engines/sherlock/events.cpp b/engines/sherlock/events.cpp index f7b473ff7a..f83219d7d2 100644 --- a/engines/sherlock/events.cpp +++ b/engines/sherlock/events.cpp @@ -54,6 +54,7 @@ void Events::loadCursors(const Common::String &filename) { delete _cursorImages; _cursorImages = new ImageFile(filename); + _cursorId = INVALID_CURSOR; } /** diff --git a/engines/sherlock/scene.cpp b/engines/sherlock/scene.cpp index 4671dbdade..316b8739b1 100644 --- a/engines/sherlock/scene.cpp +++ b/engines/sherlock/scene.cpp @@ -1463,7 +1463,11 @@ void Scene::synchronize(Common::Serializer &s) { s.syncAsSint16LE(_overPos.x); s.syncAsSint16LE(_overPos.y); s.syncAsSint16LE(_oldCharPoint); - s.syncAsSint16LE(_goToScene); + + if (s.isSaving()) + s.syncAsSint16LE(_currentScene); + else + s.syncAsSint16LE(_goToScene); for (int sceneNum = 0; sceneNum < SCENES_COUNT; ++sceneNum) { for (int flag = 0; flag < 65; ++flag) { |