diff options
Diffstat (limited to 'engines/tsage/saveload.cpp')
-rw-r--r-- | engines/tsage/saveload.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/tsage/saveload.cpp b/engines/tsage/saveload.cpp index 8b07767f22..b1c66f944c 100644 --- a/engines/tsage/saveload.cpp +++ b/engines/tsage/saveload.cpp @@ -177,6 +177,13 @@ Common::Error Saver::restore(int slot) { // Loop through each registered object to load in the data for (SynchronisedList<SavedObject *>::iterator i = _objList.begin(); i != _objList.end(); ++i) { + // Saved games can contain PlayerMover objects, but these aren't synchronized. + // Fixes loading in scene 5000. + // TODO/FIXME: Add a more proper handling for these objects + if ((*i)->getClassName() == "PlayerMover") { + warning("HACK: PlayerMover object found, skipping synchronization"); + continue; + } serialiser.validate((*i)->getClassName()); (*i)->synchronise(serialiser); } |