diff options
author | Strangerke | 2014-04-28 07:20:24 +0200 |
---|---|---|
committer | Strangerke | 2014-04-28 07:20:24 +0200 |
commit | ff7f30af9906500a53747770d0343d0d9fd4c072 (patch) | |
tree | 895be7323aed4f69accc6030291ca55119da8946 | |
parent | 464627f0432d6038ee6afd6af632a8a34d1d89d8 (diff) | |
download | scummvm-rg350-ff7f30af9906500a53747770d0343d0d9fd4c072.tar.gz scummvm-rg350-ff7f30af9906500a53747770d0343d0d9fd4c072.tar.bz2 scummvm-rg350-ff7f30af9906500a53747770d0343d0d9fd4c072.zip |
MADS: Implement scene 387
-rw-r--r-- | engines/mads/nebular/nebular_scenes.cpp | 3 | ||||
-rw-r--r-- | engines/mads/nebular/nebular_scenes3.cpp | 27 | ||||
-rw-r--r-- | engines/mads/nebular/nebular_scenes3.h | 11 |
3 files changed, 40 insertions, 1 deletions
diff --git a/engines/mads/nebular/nebular_scenes.cpp b/engines/mads/nebular/nebular_scenes.cpp index 31d139d7e2..87a7a96d28 100644 --- a/engines/mads/nebular/nebular_scenes.cpp +++ b/engines/mads/nebular/nebular_scenes.cpp @@ -150,9 +150,10 @@ SceneLogic *SceneFactory::createScene(MADSEngine *vm) { return new Scene360(vm); case 361: return new Scene361(vm); - case 366: return new Scene366(vm); + case 387: + return new Scene387(vm); // Scene group #8 case 804: diff --git a/engines/mads/nebular/nebular_scenes3.cpp b/engines/mads/nebular/nebular_scenes3.cpp index 1d5867edfb..9558edb980 100644 --- a/engines/mads/nebular/nebular_scenes3.cpp +++ b/engines/mads/nebular/nebular_scenes3.cpp @@ -5217,5 +5217,32 @@ void Scene366::actions() { /*------------------------------------------------------------------------*/ +void Scene387::setup() { + setPlayerSpritesPrefix(); + setAAName(); +} + +void Scene387::enter() { + _scene->_userInterface.setup(kInputLimitedSentences); + _game._player._visible = false; + + sceneEntrySound(); +} + +void Scene387::actions() { + if (_action.isAction(0x2D5, 0x2D4)) + _scene->_nextSceneId = 313; + else if (_action.isAction(0xD3, 0x2D3)) + _vm->_dialogs->show(0x9736); + else if (_action.isAction(VERB_OPEN, 0x2D3)) + _vm->_dialogs->show(0x9737); + else + return; + + _action._inProgress = false; +} + +/*------------------------------------------------------------------------*/ + } // End of namespace Nebular } // End of namespace MADS diff --git a/engines/mads/nebular/nebular_scenes3.h b/engines/mads/nebular/nebular_scenes3.h index b2819d55f9..24b1aef82b 100644 --- a/engines/mads/nebular/nebular_scenes3.h +++ b/engines/mads/nebular/nebular_scenes3.h @@ -490,6 +490,17 @@ public: virtual void postActions() {}; }; +class Scene387: public Scene3xx { +public: + Scene387(MADSEngine *vm) : Scene3xx(vm) {} + + virtual void setup(); + virtual void enter(); + virtual void step() {}; + virtual void preActions() {} + virtual void actions(); + virtual void postActions() {}; +}; } // End of namespace Nebular } // End of namespace MADS |