aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/ringworld2/ringworld2_speakers.cpp
diff options
context:
space:
mode:
authorStrangerke2012-01-20 23:39:37 +0100
committerStrangerke2012-01-20 23:39:37 +0100
commit1c84ef47381fff19c45fb2f9f9a186d16b21b4ab (patch)
tree817736803a590ae18f62cc31d45beacc37705a82 /engines/tsage/ringworld2/ringworld2_speakers.cpp
parent0f6750945651b6213fd47a7a84e3afc8e65b2afd (diff)
downloadscummvm-rg350-1c84ef47381fff19c45fb2f9f9a186d16b21b4ab.tar.gz
scummvm-rg350-1c84ef47381fff19c45fb2f9f9a186d16b21b4ab.tar.bz2
scummvm-rg350-1c84ef47381fff19c45fb2f9f9a186d16b21b4ab.zip
TSAGE: R2R - Implement scene 1900
Diffstat (limited to 'engines/tsage/ringworld2/ringworld2_speakers.cpp')
-rw-r--r--engines/tsage/ringworld2/ringworld2_speakers.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/engines/tsage/ringworld2/ringworld2_speakers.cpp b/engines/tsage/ringworld2/ringworld2_speakers.cpp
index d86429493a..01db39de2f 100644
--- a/engines/tsage/ringworld2/ringworld2_speakers.cpp
+++ b/engines/tsage/ringworld2/ringworld2_speakers.cpp
@@ -1947,6 +1947,36 @@ void SpeakerSeeker1100::proc15() {
}
}
+void SpeakerSeeker1900::proc15() {
+ int v = _fieldF6;
+
+ if (!_object2) {
+ if (R2_GLOBALS._player._characterIndex == 2) {
+ _object2 = &R2_GLOBALS._player;
+ } else {
+ Scene1900 *scene = (Scene1900 *)R2_GLOBALS._sceneManager._scene;
+ _object2 = &scene->_actor1;
+ }
+
+ _object2->hide();
+ _object1.postInit();
+ _object1.setPosition(_object2->_position);
+ _object1._numFrames = 7;
+
+ if (_object2->_mover)
+ _object2->addMover(NULL);
+ }
+
+ if (v == 0) {
+ _object1.animate(ANIM_MODE_2, NULL);
+ } else if (v == 1) {
+ _object1.setup(4032, 1, 1);
+ _object1.animate(ANIM_MODE_5, this);
+ } else {
+ signal();
+ }
+}
+
void SpeakerSeeker2435::proc15() {
int v = _fieldF6;