aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/nebular/nebular_scenes2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mads/nebular/nebular_scenes2.cpp')
-rw-r--r--engines/mads/nebular/nebular_scenes2.cpp60
1 files changed, 60 insertions, 0 deletions
diff --git a/engines/mads/nebular/nebular_scenes2.cpp b/engines/mads/nebular/nebular_scenes2.cpp
index 44fac5a4df..9b36dbb156 100644
--- a/engines/mads/nebular/nebular_scenes2.cpp
+++ b/engines/mads/nebular/nebular_scenes2.cpp
@@ -4588,6 +4588,66 @@ void Scene212::actions() {
/*------------------------------------------------------------------------*/
+void Scene213::setup() {
+ _game._player._spritesPrefix = "";
+
+ // The original is calling Scene2xx::setAAName()
+ _game._aaName = Resources::formatAAName(2);
+}
+
+void Scene213::enter() {
+ if (_globals[kMeteorologistWatch] != 0)
+ _handSpriteId = _scene->_sprites.addSprites("*METHAND", false);
+ else if (_globals[kSexOfRex] == REX_MALE)
+ _handSpriteId = _scene->_sprites.addSprites("*REXHAND", false);
+ else
+ _handSpriteId = _scene->_sprites.addSprites("*ROXHAND", false);
+
+ teleporterEnter();
+
+ // The original is calling Scene2xx::sceneEntrySound()
+ if (_vm->_musicFlag) {
+ if (_globals[kMeteorologistWatch] == 0)
+ _vm->_sound->command(1);
+ else
+ _vm->_sound->command(9);
+ } else
+ _vm->_sound->command(2);
+}
+
+void Scene213::step() {
+ teleporterStep();
+}
+
+void Scene213::actions() {
+ if (teleporterActions()) {
+ _action._inProgress = false;
+ return;
+ }
+
+ if (_action.isAction(VERB_LOOK, 0x59))
+ _vm->_dialogs->show(21301);
+ else if (_action.isAction(VERB_LOOK, 0xC4) || _action.isAction (0xB7, 0xC4))
+ _vm->_dialogs->show(21302);
+ else if (_action.isAction(VERB_LOOK, 0x1CC))
+ _vm->_dialogs->show(21303);
+ else if (_action.isAction(VERB_LOOK, 0x181) || _action.isAction(0x103, 0x181))
+ _vm->_dialogs->show(21304);
+ else if (_action.isAction(VERB_LOOK, 0x1CF))
+ _vm->_dialogs->show(21305);
+ else if (_action.isAction(VERB_LOOK, 0x1D0) || _action.isAction(VERB_LOOK, 0x1D1)
+ || _action.isAction(VERB_LOOK, 0x1D2) || _action.isAction(VERB_LOOK, 0x1D3)
+ || _action.isAction(VERB_LOOK, 0x1D4) || _action.isAction(VERB_LOOK, 0x1D5)
+ || _action.isAction(VERB_LOOK, 0x1D6) || _action.isAction(VERB_LOOK, 0x1D7)
+ || _action.isAction(VERB_LOOK, 0x1D8) || _action.isAction(VERB_LOOK, 0x1D9)
+ || _action.isAction(VERB_LOOK, 0x1DB) || _action.isAction(VERB_LOOK, 0x7A)
+ || _action.isAction(VERB_LOOK, 0x1DA))
+ _vm->_dialogs->show(21306);
+ else
+ return;
+
+ _action._inProgress = false;
+}
/*------------------------------------------------------------------------*/