TSAGE: Generalised saving of R2R walk regions resource

This commit is contained in:
Paul Gilbert 2013-09-18 22:21:50 -04:00
parent f9f4f4eb17
commit 4aac257936
3 changed files with 9 additions and 6 deletions

View File

@ -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();

View File

@ -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);
}

View File

@ -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);