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

Strangerke Strangerke at scummvm.org
Tue Jan 3 16:04:31 CET 2012


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:
bda4e9ba9e TSAGE: Add _field8A to SceneObject, use it in R2R scene 3600


Commit: bda4e9ba9eed4d440661a321f527389d4d78bda7
    https://github.com/scummvm/scummvm/commit/bda4e9ba9eed4d440661a321f527389d4d78bda7
Author: Strangerke (strangerke at scummvm.org)
Date: 2012-01-03T07:04:10-08:00

Commit Message:
TSAGE: Add _field8A to SceneObject, use it in R2R scene 3600

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



diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp
index 7cbcb86..331cac6 100644
--- a/engines/tsage/core.cpp
+++ b/engines/tsage/core.cpp
@@ -2022,6 +2022,8 @@ SceneObject::SceneObject() : SceneHotspot() {
 	_frame = 0;
 	_effect = 0;
 	_shade = 0;
+
+	_field8A = Common::Point(0, 0);
 }
 
 SceneObject::SceneObject(const SceneObject &so) : SceneHotspot() {
@@ -2396,6 +2398,10 @@ void SceneObject::synchronize(Serializer &s) {
 	SYNC_POINTER(_mover);
 	s.syncAsSint16LE(_moveDiff.x); s.syncAsSint16LE(_moveDiff.y);
 	s.syncAsSint32LE(_moveRate);
+	if (g_vm->getGameID() == GType_Ringworld2) {
+		s.syncAsSint16LE(_field8A.x);
+		s.syncAsSint16LE(_field8A.y);
+	}
 	SYNC_POINTER(_endAction);
 	s.syncAsUint32LE(_regionBitList);
 
diff --git a/engines/tsage/core.h b/engines/tsage/core.h
index 98606dc..755964c 100644
--- a/engines/tsage/core.h
+++ b/engines/tsage/core.h
@@ -540,6 +540,7 @@ public:
 	EventHandler *_mover;
 	Common::Point _moveDiff;
 	int _moveRate;
+	Common::Point _field8A;
 	Action *_endAction;
 	uint32 _regionBitList;
 
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.cpp b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
index a819f27..31723c6 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
@@ -2961,17 +2961,14 @@ void Scene3600::Action2::signal() {
 		R2_GLOBALS._events.proc1();
 		R2_GLOBALS._player.enableControl();
 		_actionIndex = 3619;
-		scene->_sequenceManager1._action = NULL;
-		warning("CHECKME: use of scene->_sequenceManager1._action");
+		scene->_actor13._state = 0;
 	// No break on purpose
 	case 3619: {
 		++_actionIndex;
 		scene->_actor13.setup(3127, 2, 1);
 		scene->_actor13.animate(ANIM_MODE_1, NULL);
-		Common::Point pt(226, 152);
-		warning("TODO: Fix use of SceneActor::_field8A and SceneActor::_field8C");
 		NpcMover *mover = new NpcMover();
-		scene->_actor13.addMover(mover, &scene->_actor13._position, scene);
+		scene->_actor13.addMover(mover, &scene->_actor13._field8A, scene);
 		}
 		break;
 	default:
@@ -3193,7 +3190,7 @@ void Scene3600::postInit(SceneObjectList *OwnerList) {
 		if (!R2_GLOBALS.getFlag(71)) {
 			_actor13.postInit();
 			_actor13._state = 0;
-			warning("TODO: Fix use of SceneActor::_field8A and SceneActor::_field8C in postInit()");
+			_actor13._field8A = Common::Point(226, 152);
 			_actor13._moveDiff = Common::Point(3, 2);
 			_actor13.setPosition(Common::Point(284, 152));
 			_actor13.setup(3127, 2, 1);
@@ -3367,8 +3364,7 @@ void Scene3600::signal() {
 
 		_actor13.postInit();
 		_actor13._state = 0;
-		warning("_actor13._field8A = 226");
-		warning("_actor13._field8C = 152");
+		_actor13._field8A = Common::Point(226, 152);
 		_actor13._moveDiff = Common::Point(5, 3);
 		_actor13.setup(3403, 7, 1);
 		_actor13.setPosition(Common::Point(405, 155));






More information about the Scummvm-git-logs mailing list