[Scummvm-cvs-logs] scummvm master -> 8a2500cd64afa063557014b3d0e9490abd6c1096

Strangerke Strangerke at scummvm.org
Wed Nov 23 10:53:26 CET 2011


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

Summary:
8a2500cd64 TSAGE: R2R - Replace oldSceneNumber by an array, as each character has its own


Commit: 8a2500cd64afa063557014b3d0e9490abd6c1096
    https://github.com/scummvm/scummvm/commit/8a2500cd64afa063557014b3d0e9490abd6c1096
Author: Strangerke (strangerke at scummvm.org)
Date: 2011-11-23T01:52:36-08:00

Commit Message:
TSAGE: R2R - Replace oldSceneNumber by an array, as each character has its own

Changed paths:
    engines/tsage/core.cpp
    engines/tsage/core.h
    engines/tsage/ringworld2/ringworld2_scenes0.cpp



diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp
index ff7b9e3..b991e46 100644
--- a/engines/tsage/core.cpp
+++ b/engines/tsage/core.cpp
@@ -2982,13 +2982,12 @@ Player::Player(): SceneObject() {
 
 	// Return to Ringworld specific fields
 	_characterIndex = 0;
-	_oldSceneNumber = 0;
-	_fieldBC = 0;
 
 	for (int i = 0; i < MAX_CHARACTERS; ++i) {
 		_characterScene[i] = 0;
 		_characterStrip[i] = 0;
 		_characterFrame[i] = 0;
+		_oldCharacterScene[i] = 0;
 	}
 }
 
@@ -3086,11 +3085,9 @@ void Player::synchronize(Serializer &s) {
 
 	if (g_vm->getGameID() == GType_Ringworld2) {
 		s.syncAsSint16LE(_characterIndex);
-		s.syncAsSint16LE(_oldSceneNumber);
-		s.syncAsSint16LE(_fieldBC);
-
 		for (int i = 0; i < MAX_CHARACTERS; ++i) {
 			s.syncAsSint16LE(_characterScene[i]);
+			s.syncAsSint16LE(_oldCharacterScene[i]);
 			s.syncAsSint16LE(_characterPos[i].x);
 			s.syncAsSint16LE(_characterPos[i].y);
 			s.syncAsSint16LE(_characterStrip[i]);
diff --git a/engines/tsage/core.h b/engines/tsage/core.h
index e4c7016..8a2e733 100644
--- a/engines/tsage/core.h
+++ b/engines/tsage/core.h
@@ -631,9 +631,8 @@ public:
 
 	// Return to Ringworld specific fields
 	int _characterIndex;
-	int _oldSceneNumber;
-	int _fieldBC;
 	int _characterScene[MAX_CHARACTERS];
+	int _oldCharacterScene[MAX_CHARACTERS];
 	Common::Point _characterPos[MAX_CHARACTERS];
 	int _characterStrip[MAX_CHARACTERS];
 	int _characterFrame[MAX_CHARACTERS];
diff --git a/engines/tsage/ringworld2/ringworld2_scenes0.cpp b/engines/tsage/ringworld2/ringworld2_scenes0.cpp
index 5db5ee0..53f47ce 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes0.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes0.cpp
@@ -579,7 +579,7 @@ bool Scene125::Item4::startAction(CursorType action, Event &event) {
 	Scene125 *scene = (Scene125 *)R2_GLOBALS._sceneManager._scene;
 	switch (action) {
 	case CURSOR_USE:
-		if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) == R2_GLOBALS._player._oldSceneNumber) {
+		if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) == R2_GLOBALS._player._oldCharacterScene[1]) {
 			R2_GLOBALS._player.disableControl();
 			scene->_sceneMode = 126;
 			scene->setAction(&scene->_sequenceManager, scene, 126, &scene->_object7, NULL);
@@ -621,13 +621,13 @@ void Scene125::postInit(SceneObjectList *OwnerList) {
 
 	if (R2_GLOBALS._sceneManager._previousScene != 125) 
 		// Save the prior scene to return to when the console is turned off
-		R2_GLOBALS._player._oldSceneNumber = R2_GLOBALS._sceneManager._previousScene;
+		R2_GLOBALS._player._oldCharacterScene[1] = R2_GLOBALS._sceneManager._previousScene;
 
 	R2_GLOBALS._player.postInit();
 	R2_GLOBALS._player.hide();
 	R2_GLOBALS._player.disableControl();
 
-	if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) == R2_GLOBALS._player._oldSceneNumber) {
+	if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) == R2_GLOBALS._player._oldCharacterScene[1]) {
 		_object7.postInit();
 		_object7.setup(160, 3, 5);
 		_object7.setPosition(Common::Point(47, 167));
@@ -783,7 +783,7 @@ void Scene125::signal() {
 		}
 		break;
 	case 125:
-		R2_INVENTORY.setObjectScene(R2_OPTO_DISK, R2_GLOBALS._player._oldSceneNumber);
+		R2_INVENTORY.setObjectScene(R2_OPTO_DISK, R2_GLOBALS._player._oldCharacterScene[1]);
 		break;
 	case 126:
 		R2_INVENTORY.setObjectScene(R2_OPTO_DISK, 1);
@@ -884,7 +884,7 @@ void Scene125::consoleAction(int id) {
 		_icon2.setIcon(23);
 		break;
 	case 6:
-		R2_GLOBALS._sceneManager.changeScene(R2_GLOBALS._player._oldSceneNumber);
+		R2_GLOBALS._sceneManager.changeScene(R2_GLOBALS._player._oldCharacterScene[1]);
 		break;
 	case 7:
 		if (_consoleMode == 11)
@@ -947,7 +947,7 @@ void Scene125::consoleAction(int id) {
 		break;
 	case 13:
 		consoleAction(2);
-		if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) != R2_GLOBALS._player._oldSceneNumber) {
+		if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) != R2_GLOBALS._player._oldCharacterScene[1]) {
 			SceneItem::display2(126, 17);
 		} else {
 			R2_GLOBALS._player.disableControl();
@@ -1852,7 +1852,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) {
 
 	case 3:
 		if (R2_GLOBALS._sceneManager._previousScene == 1500) {
-			R2_GLOBALS._player._fieldBC = 3150;
+			R2_GLOBALS._player._oldCharacterScene[3] = 3150;
 			R2_GLOBALS._player._characterScene[3] = 3150;
 			R2_GLOBALS._player._effect = 0;
 			R2_GLOBALS._player.setAction(NULL);






More information about the Scummvm-git-logs mailing list