aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2014-02-01 18:08:07 -0500
committerPaul Gilbert2014-02-01 18:08:07 -0500
commit24e40281742877f88b235838a25e6a1e2ba70f33 (patch)
treee12b2367e29cadd9676e1f4013302bbf8e6da02b
parente1eddb5ecb541a9ea57734b379616e5fa61fe64b (diff)
downloadscummvm-rg350-24e40281742877f88b235838a25e6a1e2ba70f33.tar.gz
scummvm-rg350-24e40281742877f88b235838a25e6a1e2ba70f33.tar.bz2
scummvm-rg350-24e40281742877f88b235838a25e6a1e2ba70f33.zip
VOYEUR: Improvements for savegame support
-rw-r--r--engines/voyeur/files_threads.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/voyeur/files_threads.cpp b/engines/voyeur/files_threads.cpp
index 0b4cdd2f99..94ef0f63ef 100644
--- a/engines/voyeur/files_threads.cpp
+++ b/engines/voyeur/files_threads.cpp
@@ -349,7 +349,6 @@ void ThreadResource::parsePlayCommands() {
_vm->_voy._audioHotspotTimes.reset();
_vm->_voy._evidenceHotspotTimes.reset();
Common::fill(&_vm->_voy._roomHotspotsEnabled[0], &_vm->_voy._roomHotspotsEnabled[20], false);
-
byte *dataP = _playCommandsPtr;
int v2, v3;
PictureResource *pic;
@@ -1749,6 +1748,14 @@ void ThreadResource::doAptAnim(int mode) {
void ThreadResource::synchronize(Common::Serializer &s) {
s.syncAsSint16LE(_aptPos.x);
s.syncAsSint16LE(_aptPos.y);
+
+ int sceneId = _threadId;
+ int stackId = _controlIndex;
+ s.syncAsSint16LE(sceneId);
+ s.syncAsSint16LE(stackId);
+
+ if (s.isLoading() && (sceneId != _threadId || stackId != _controlIndex))
+ goToState(stackId, sceneId);
}
} // End of namespace Voyeur