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

Strangerke Strangerke at scummvm.org
Sat Dec 24 14:39:42 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:
ef35f1f69d TSAGE: R2R - Implement scene 3350


Commit: ef35f1f69d3c75c2ed6dbb0bb4fe6a5551750ec1
    https://github.com/scummvm/scummvm/commit/ef35f1f69d3c75c2ed6dbb0bb4fe6a5551750ec1
Author: Strangerke (strangerke at scummvm.org)
Date: 2011-12-24T05:39:22-08:00

Commit Message:
TSAGE: R2R - Implement scene 3350

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



diff --git a/engines/tsage/ringworld2/ringworld2_logic.cpp b/engines/tsage/ringworld2/ringworld2_logic.cpp
index e591436..30e7946 100644
--- a/engines/tsage/ringworld2/ringworld2_logic.cpp
+++ b/engines/tsage/ringworld2/ringworld2_logic.cpp
@@ -214,6 +214,8 @@ Scene *Ringworld2Game::createScene(int sceneNumber) {
 		// Hall
 		return new Scene3275();
 	case 3350:
+		// Cutscene - Ship landing
+		return new Scene3350();
 	case 3375:
 	case 3385:
 	case 3395:
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.cpp b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
index 1a219e7..ce08e96 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
@@ -1635,5 +1635,68 @@ void Scene3275::signal() {
 	}
 }
 
+/*--------------------------------------------------------------------------
+ * Scene 3350 - Cutscene - Ship landing
+ *
+ *--------------------------------------------------------------------------*/
+void Scene3350::postInit(SceneObjectList *OwnerList) {
+	loadScene(3350);
+	R2_GLOBALS._v58CE2 = 0;
+	SceneExt::postInit();
+	R2_GLOBALS._sound2.play(310);
+
+	_rotation = R2_GLOBALS._scenePalette.addRotation(176, 203, 1);
+	_rotation->setDelay(3);
+
+	R2_GLOBALS._player.postInit();
+	R2_GLOBALS._player.hide();
+	R2_GLOBALS._player.disableControl();
+
+	_actor1.postInit();
+	_actor1.hide();
+	_actor2.postInit();
+	_actor2.hide();
+	_actor3.postInit();
+	_actor3.hide();
+	_actor4.postInit();
+	_actor4.hide();
+	_actor9.postInit();
+	_actor9.hide();
+	_actor8.postInit();
+	_actor8.hide();
+	_actor5.postInit();
+	_actor5.hide();
+	_actor6.postInit();
+	_actor6.hide();
+	_actor7.postInit();
+	_actor7.hide();
+
+	_sceneMode = 3350;
+	setAction(&_sequenceManager, this, _sceneMode, &_actor5, &_actor6, &_actor7, NULL);
+}
+
+void Scene3350::remove() {
+	R2_GLOBALS._sound2.fadeOut2(NULL);
+	SceneExt::remove();
+}
+
+void Scene3350::signal() {
+	switch (_sceneMode) {
+	case 3350:
+		_sceneMode = 3351;
+		setAction(&_sequenceManager, this, 3351, &_actor4, &_actor9, &_actor8, NULL);
+		break;
+	case 3351:
+		_sceneMode = 3352;
+		setAction(&_sequenceManager, this, 3352, &_actor4, &R2_GLOBALS._player, &_actor1, &_actor2, &_actor3, NULL);
+	case 3352:
+		R2_GLOBALS._sceneManager.changeScene(3395);
+		break;
+	default:
+		R2_GLOBALS._player.enableControl();
+		break;
+	}
+}
+
 } // End of namespace Ringworld2
 } // End of namespace TsAGE
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.h b/engines/tsage/ringworld2/ringworld2_scenes3.h
index c82515c..ac14366 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.h
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.h
@@ -381,6 +381,25 @@ public:
 	virtual void signal();
 };
 
+class Scene3350 : public SceneExt {
+public:
+	SceneActor _actor1;
+	SceneActor _actor2;
+	SceneActor _actor3;
+	SceneActor _actor4;
+	SceneActor _actor5;
+	SceneActor _actor6;
+	SceneActor _actor7;
+	SceneActor _actor8;
+	SceneActor _actor9;
+	SequenceManager _sequenceManager;
+	PaletteRotation *_rotation;
+
+	virtual void postInit(SceneObjectList *OwnerList = NULL);
+	virtual void remove();
+	virtual void signal();
+};
+
 } // End of namespace Ringworld2
 } // End of namespace TsAGE
 






More information about the Scummvm-git-logs mailing list