From 38d787676fbf904069c88cd015ee6c47d451b14b Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 15 May 2011 21:56:07 +1000 Subject: TSAGE: Fixed saving problem and talking to Seeker in Scene #50 --- engines/tsage/ringworld_scenes1.cpp | 9 +++++++++ engines/tsage/ringworld_scenes1.h | 1 + engines/tsage/saveload.h | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) (limited to 'engines/tsage') diff --git a/engines/tsage/ringworld_scenes1.cpp b/engines/tsage/ringworld_scenes1.cpp index 3999d4c36d..aad4d5629c 100644 --- a/engines/tsage/ringworld_scenes1.cpp +++ b/engines/tsage/ringworld_scenes1.cpp @@ -1840,6 +1840,8 @@ void Scene50::signal() { } void Scene50::dispatch() { + Scene::dispatch(); + if ((_sceneMode != 55) && _doorwayRect.contains(_globals->_player._position)) { // Player in house doorway, start player moving to within _globals->_player.disableControl(); @@ -1850,6 +1852,13 @@ void Scene50::dispatch() { } } +void Scene50::synchronize(Serializer &s) { + Scene::synchronize(s); + + if (s.getVersion() >= 3) + _doorwayRect.synchronize(s); +} + /*-------------------------------------------------------------------------- * Scene 60 - Flycycle controls * diff --git a/engines/tsage/ringworld_scenes1.h b/engines/tsage/ringworld_scenes1.h index 18e1ef74bb..2daf902248 100644 --- a/engines/tsage/ringworld_scenes1.h +++ b/engines/tsage/ringworld_scenes1.h @@ -309,6 +309,7 @@ public: virtual void postInit(SceneObjectList *OwnerList = NULL); virtual void signal(); virtual void dispatch(); + virtual void synchronize(Serializer &s); }; class Scene60 : public Scene { diff --git a/engines/tsage/saveload.h b/engines/tsage/saveload.h index a04bba2773..51b7696590 100644 --- a/engines/tsage/saveload.h +++ b/engines/tsage/saveload.h @@ -33,7 +33,7 @@ namespace tSage { typedef void (*SaveNotifierFn)(bool postFlag); -#define TSAGE_SAVEGAME_VERSION 2 +#define TSAGE_SAVEGAME_VERSION 3 class SavedObject; -- cgit v1.2.3