From 4aac2579368104870dd410995d34c7e020cb1583 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Wed, 18 Sep 2013 22:21:50 -0400 Subject: [PATCH] TSAGE: Generalised saving of R2R walk regions resource --- engines/tsage/ringworld2/ringworld2_logic.cpp | 1 + engines/tsage/ringworld2/ringworld2_scenes2.cpp | 6 ------ engines/tsage/scenes.cpp | 8 ++++++++ 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/engines/tsage/ringworld2/ringworld2_logic.cpp b/engines/tsage/ringworld2/ringworld2_logic.cpp index a607ebe6a4d6..6f5dbd04eb2a 100644 --- a/engines/tsage/ringworld2/ringworld2_logic.cpp +++ b/engines/tsage/ringworld2/ringworld2_logic.cpp @@ -162,6 +162,7 @@ Scene *Ringworld2Game::createScene(int sceneNumber) { // Spill Mountains Elevator Exit return new Scene1900(); case 1925: + // Spill Mountains Elevator Shaft return new Scene1925(); case 1945: return new Scene1945(); diff --git a/engines/tsage/ringworld2/ringworld2_scenes2.cpp b/engines/tsage/ringworld2/ringworld2_scenes2.cpp index cc50de0cf509..9fa64b3ec17f 100644 --- a/engines/tsage/ringworld2/ringworld2_scenes2.cpp +++ b/engines/tsage/ringworld2/ringworld2_scenes2.cpp @@ -1030,12 +1030,6 @@ void Scene2000::process(Event &event) { void Scene2000::synchronize(Serializer &s) { SceneExt::synchronize(s); - // Synchronise active walk regions - int regionsId = R2_GLOBALS._walkRegions._resNum; - s.syncAsUint16LE(regionsId); - if (s.isLoading()) - R2_GLOBALS._walkRegions.load(regionsId); - s.syncAsByte(_exitingFlag); s.syncAsSint16LE(_mazePlayerMode); } diff --git a/engines/tsage/scenes.cpp b/engines/tsage/scenes.cpp index 774a5277dc49..23623b1900a0 100644 --- a/engines/tsage/scenes.cpp +++ b/engines/tsage/scenes.cpp @@ -247,6 +247,14 @@ void SceneManager::listenerSynchronize(Serializer &s) { } } + // Walk regions loading + if (g_vm->getGameID() == GType_Ringworld2) { + int walkRegionsId = GLOBALS._walkRegions._resNum; + s.syncAsSint16LE(walkRegionsId); + if (s.isLoading()) + GLOBALS._walkRegions.load(walkRegionsId); + } + g_globals->_sceneManager._scrollerRect.synchronize(s); SYNC_POINTER(g_globals->_scrollFollower); s.syncAsSint16LE(_loadMode);