aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/ringworld_logic.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/tsage/ringworld_logic.cpp')
-rw-r--r--engines/tsage/ringworld_logic.cpp40
1 files changed, 39 insertions, 1 deletions
diff --git a/engines/tsage/ringworld_logic.cpp b/engines/tsage/ringworld_logic.cpp
index 225922dab2..b479edbdc2 100644
--- a/engines/tsage/ringworld_logic.cpp
+++ b/engines/tsage/ringworld_logic.cpp
@@ -59,7 +59,8 @@ Scene *SceneFactory::createScene(int sceneNumber) {
/* Scene group 2 */
// Title screen
case 1000: return new Scene1000();
-
+ // Fleeing planet cutscene
+ case 1001: return new Scene1001();
default:
error("Unknown scene number - %d", sceneNumber);
@@ -200,6 +201,16 @@ SpeakerMText::SpeakerMText() {
/*--------------------------------------------------------------------------*/
+SpeakerCText::SpeakerCText() {
+ _speakerName = "CTEXT";
+ _colour1 = 4;
+ _textWidth = 240;
+ _textMode = ALIGN_CENTRE;
+ _hideObjects = false;
+}
+
+/*--------------------------------------------------------------------------*/
+
SpeakerQL::SpeakerQL(): AnimatedSpeaker() {
_speakerName = "QL";
_newSceneNumber = 2610;
@@ -335,4 +346,31 @@ void SpeakerQR::setText(const Common::String &msg) {
Speaker::setText(msg);
}
+/*--------------------------------------------------------------------------*/
+
+SpeakerCR::SpeakerCR() {
+ _speakerName = "CR";
+ _newSceneNumber = 9010;
+ _textPos = Common::Point(20, 40);
+ _colour1 = 4;
+}
+
+void SpeakerCR::setText(const Common::String &msg) {
+ _object1.postInit(&_objectList);
+ _object1.setVisage(9011);
+ _object1.setStrip2(2);
+ _object1.setPriority2(255);
+ _object1.setPosition(Common::Point(219, 168));
+ _object1.animate(ANIM_MODE_7, 0, NULL);
+
+ _object2.postInit(&_objectList);
+ _object2.setVisage(9011);
+ _object2.setStrip2(1);
+ _object2.setPriority2(255);
+ _object2.setPosition(Common::Point(232, 81));
+ _object2.setAction(&_speakerAction, NULL);
+
+ Speaker::setText(msg);
+}
+
} // End of namespace tSage