[Scummvm-cvs-logs] scummvm master -> d50c6277e41a5280e5fe02015d497d2d29603aa9

dreammaster dreammaster at scummvm.org
Fri May 27 11:40:40 CEST 2011


This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
fb4bdae4c7 TSAGE: Bugfix for using lift after restoring a savegame in scene #2320
6072f97641 TSAGE: Bugfix for saving game in scene #4025
d50c6277e4 TSAGE: Bugfix for loading savegames directly from the launcher


Commit: fb4bdae4c7e0b49dabd08cd281a5542292032bbe
    https://github.com/scummvm/scummvm/commit/fb4bdae4c7e0b49dabd08cd281a5542292032bbe
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2011-05-27T02:08:36-07:00

Commit Message:
TSAGE: Bugfix for using lift after restoring a savegame in scene #2320

Changed paths:
    engines/tsage/ringworld_scenes3.cpp



diff --git a/engines/tsage/ringworld_scenes3.cpp b/engines/tsage/ringworld_scenes3.cpp
index 8a1e103..4d2225e 100644
--- a/engines/tsage/ringworld_scenes3.cpp
+++ b/engines/tsage/ringworld_scenes3.cpp
@@ -5770,6 +5770,14 @@ Scene2320::Scene2320() :
 		_hotspot4(0, CURSOR_LOOK, 2320, 14, LIST_END),
 		_hotspot13(0, CURSOR_LOOK, 2320, 12, LIST_END)
 {
+	_area1.setup(2153, 2, 1, 2100);
+	_area1._pt = Common::Point(200, 31);
+	_area2.setup(2153, 3, 1, 2150);
+	_area2._pt = Common::Point(200, 50);
+	_area3.setup(2153, 4, 1, 2320);
+	_area3._pt = Common::Point(200, 75);
+	_area4.setup(2153, 1, 1, 10);
+	_area4._pt = Common::Point(237, 77);
 }
 
 void Scene2320::postInit(SceneObjectList *OwnerList) {
@@ -5822,15 +5830,6 @@ void Scene2320::postInit(SceneObjectList *OwnerList) {
 		_globals->_sceneItems.push_back(&_hotspot8);
 	}
 
-	_area1.setup(2153, 2, 1, 2100);
-	_area1._pt = Common::Point(200, 31);
-	_area2.setup(2153, 3, 1, 2150);
-	_area2._pt = Common::Point(200, 50);
-	_area3.setup(2153, 4, 1, 2320);
-	_area3._pt = Common::Point(200, 75);
-	_area4.setup(2153, 1, 1, 10);
-	_area4._pt = Common::Point(237, 77);
-
 	if (_globals->getFlag(43)) {
 		_hotspot11.postInit();
 		_hotspot11.setVisage(2705);


Commit: 6072f976413428d4ee9f72d0a23c8ef302a2fb99
    https://github.com/scummvm/scummvm/commit/6072f976413428d4ee9f72d0a23c8ef302a2fb99
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2011-05-27T02:14:04-07:00

Commit Message:
TSAGE: Bugfix for saving game in scene #4025

Changed paths:
    engines/tsage/ringworld_scenes5.cpp



diff --git a/engines/tsage/ringworld_scenes5.cpp b/engines/tsage/ringworld_scenes5.cpp
index fc7362c..afab920 100644
--- a/engines/tsage/ringworld_scenes5.cpp
+++ b/engines/tsage/ringworld_scenes5.cpp
@@ -1458,7 +1458,7 @@ void Scene4025::Hole::doAction(int action) {
 void Scene4025::Peg::synchronize(Serializer &s) {
 	SceneObject::synchronize(s);
 	s.syncAsSint16LE(_field88);
-	SYNC_POINTER(_armStrip);
+	s.syncAsSint16LE(_armStrip);
 }
 
 void Scene4025::Peg::doAction(int action) {


Commit: d50c6277e41a5280e5fe02015d497d2d29603aa9
    https://github.com/scummvm/scummvm/commit/d50c6277e41a5280e5fe02015d497d2d29603aa9
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2011-05-27T02:28:31-07:00

Commit Message:
TSAGE: Bugfix for loading savegames directly from the launcher

Changed paths:
    engines/tsage/core.cpp
    engines/tsage/ringworld_logic.cpp
    engines/tsage/scenes.cpp



diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp
index 7534abd..8c1bd2f 100644
--- a/engines/tsage/core.cpp
+++ b/engines/tsage/core.cpp
@@ -21,6 +21,7 @@
  */
 
 #include "common/system.h"
+#include "common/config-manager.h"
 #include "engines/engine.h"
 #include "graphics/palette.h"
 #include "tsage/tsage.h"
diff --git a/engines/tsage/ringworld_logic.cpp b/engines/tsage/ringworld_logic.cpp
index 2141fcc..3f68e46 100644
--- a/engines/tsage/ringworld_logic.cpp
+++ b/engines/tsage/ringworld_logic.cpp
@@ -1334,8 +1334,12 @@ void RingworldGame::start() {
 	RING_INVENTORY._scanner._sceneNumber = 1;
 	RING_INVENTORY._ring._sceneNumber = 1;
 
-	// Switch to the title screen
-	_globals->_sceneManager.setNewScene(1000);
+
+	if (ConfMan.hasKey("save_slot"))
+		_globals->_sceneHandler._loadGameSlot = ConfMan.getInt("save_slot");
+	else
+		// Switch to the title screen
+		_globals->_sceneManager.setNewScene(1000);
 
 	_globals->_events.showCursor();
 }
diff --git a/engines/tsage/scenes.cpp b/engines/tsage/scenes.cpp
index 11308e6..d9a983c 100644
--- a/engines/tsage/scenes.cpp
+++ b/engines/tsage/scenes.cpp
@@ -227,6 +227,11 @@ void SceneManager::setBgOffset(const Common::Point &pt, int loadCount) {
 void SceneManager::listenerSynchronize(Serializer &s) {
 	s.validate("SceneManager");
 
+	if (s.isLoading() && !_globals->_sceneManager._scene)
+		// Loading a savegame straight from the launcher, so instantiate a blank placeholder scene
+		// in order for the savegame loading to work correctly
+		_globals->_sceneManager._scene = new Scene();
+
 	_altSceneObjects.synchronize(s);
 	s.syncAsSint32LE(_sceneNumber);
 	s.syncAsUint16LE(_globals->_sceneManager._scene->_activeScreenNumber);






More information about the Scummvm-git-logs mailing list