diff options
author | johndoe123 | 2011-07-27 18:02:30 +0000 |
---|---|---|
committer | Willem Jan Palenstijn | 2013-05-08 20:39:34 +0200 |
commit | d7dd4b43563b3d0ad5b16ff1fb384ab1382b3848 (patch) | |
tree | bd999ffbf43b6b5ec85258f26b7e3175dd40f716 /engines/neverhood/module1400.h | |
parent | bfd71cff6e73c0be6b2d66f7f71921094f42ca09 (diff) | |
download | scummvm-rg350-d7dd4b43563b3d0ad5b16ff1fb384ab1382b3848.tar.gz scummvm-rg350-d7dd4b43563b3d0ad5b16ff1fb384ab1382b3848.tar.bz2 scummvm-rg350-d7dd4b43563b3d0ad5b16ff1fb384ab1382b3848.zip |
NEVERHOOD: Implement Scene1403, Scene1404 and Scene1405 (memory minigame)
- Move GameModule::startup call into engine instead of the game module constructor
- Reduce debug output
Diffstat (limited to 'engines/neverhood/module1400.h')
-rw-r--r-- | engines/neverhood/module1400.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/engines/neverhood/module1400.h b/engines/neverhood/module1400.h index 433dc413f5..72afb4f15a 100644 --- a/engines/neverhood/module1400.h +++ b/engines/neverhood/module1400.h @@ -26,6 +26,7 @@ #include "neverhood/neverhood.h" #include "neverhood/module.h" #include "neverhood/scene.h" +#include "neverhood/module1200.h" namespace Neverhood { @@ -237,6 +238,71 @@ protected: uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); }; +// Scene1403 + +class Scene1403 : public Scene { +public: + Scene1403(NeverhoodEngine *vm, Module *parentModule, int which); +protected: + Sprite *_class401_1; + Sprite *_class401_2; + Sprite *_class401_3; + AsScene1201Tape *_asTape1; + AsScene1201Tape *_asTape2; + Sprite *_class489; + bool _flag; + uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); +}; + +// Scene1404 + +class Scene1404 : public Scene { +public: + Scene1404(NeverhoodEngine *vm, Module *parentModule, int which); + virtual ~Scene1404(); +protected: + Sprite *_sprite1; + Sprite *_asTape; + Sprite *_class489; + Sprite *_class545; + uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); +}; + +// Scene1405 + +class Scene1405; + +class AsScene1405Tile : public AnimatedSprite { +public: + AsScene1405Tile(NeverhoodEngine *vm, Scene1405 *parentScene, uint32 index); + void show(); + void hide(); +protected: + Scene1405 *_parentScene; + SoundResource _soundResource; + bool _flag; + uint32 _index; + int _countdown; + void update(); + uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); +}; + +class Scene1405 : public Scene { +public: + Scene1405(NeverhoodEngine *vm, Module *parentModule, int which); + int getCountdown() const { return _countdown; } +protected: + SoundResource _soundResource; + bool _selectFirstTile; + int _firstTileIndex; + int _secondTileIndex; + int _tilesLeft; + int _countdown; + AsScene1405Tile *_tiles[48]; + void update(); + uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); +}; + } // End of namespace Neverhood #endif /* NEVERHOOD_MODULE1400_H */ |