diff options
author | Filippos Karapetis | 2013-10-05 14:41:02 +0300 |
---|---|---|
committer | Filippos Karapetis | 2013-10-05 14:41:02 +0300 |
commit | b963fcbfa8794c807d831ab3b117634ce7c8550e (patch) | |
tree | a2024869846082282df21c03530af2c57fe41e63 /engines/neverhood/modules/module1700.cpp | |
parent | 97153189325b375c8cd1ef18eb6cb20734d8a2f1 (diff) | |
download | scummvm-rg350-b963fcbfa8794c807d831ab3b117634ce7c8550e.tar.gz scummvm-rg350-b963fcbfa8794c807d831ab3b117634ce7c8550e.tar.bz2 scummvm-rg350-b963fcbfa8794c807d831ab3b117634ce7c8550e.zip |
NEVERHOOD: Split sprites from their scenes in modules 1700 and 1800
This also reduces inter-header dependencies
Diffstat (limited to 'engines/neverhood/modules/module1700.cpp')
-rw-r--r-- | engines/neverhood/modules/module1700.cpp | 44 |
1 files changed, 1 insertions, 43 deletions
diff --git a/engines/neverhood/modules/module1700.cpp b/engines/neverhood/modules/module1700.cpp index 2aeae466ff..4681e59026 100644 --- a/engines/neverhood/modules/module1700.cpp +++ b/engines/neverhood/modules/module1700.cpp @@ -21,6 +21,7 @@ */ #include "neverhood/modules/module1700.h" +#include "neverhood/modules/module1700_sprites.h" #include "neverhood/gamemodule.h" namespace Neverhood { @@ -126,8 +127,6 @@ void Module1700::updateScene() { } } -// Scene1705 - static const uint32 kScene1705FileHashes[] = { 0x910EA801, 0x920EA801, 0x940EA801, 0x980EA801, 0x800EA801, 0xB00EA801, @@ -135,47 +134,6 @@ static const uint32 kScene1705FileHashes[] = { 0xD10EA801, 0x110EA801, 0x910EA800 }; -SsScene1705WallSymbol::SsScene1705WallSymbol(NeverhoodEngine *vm, uint32 fileHash, int symbolIndex) - : StaticSprite(vm, fileHash, 100) { - - _x = _spriteResource.getPosition().x + symbolIndex * 30; - _y = _spriteResource.getPosition().y + 160; - updatePosition(); -} - -SsScene1705Tape::SsScene1705Tape(NeverhoodEngine *vm, Scene *parentScene, uint32 tapeIndex, int surfacePriority, int16 x, int16 y, uint32 fileHash) - : StaticSprite(vm, fileHash, surfacePriority, x - 24, y - 4), _parentScene(parentScene), _tapeIndex(tapeIndex) { - - if (!getSubVar(VA_HAS_TAPE, _tapeIndex) && !getSubVar(VA_IS_TAPE_INSERTED, _tapeIndex)) { - SetMessageHandler(&SsScene1705Tape::handleMessage); - } else { - setVisible(false); - SetMessageHandler(NULL); - } - _collisionBoundsOffset = _drawOffset; - _collisionBoundsOffset.x -= 4; - _collisionBoundsOffset.y -= 8; - _collisionBoundsOffset.width += 8; - _collisionBoundsOffset.height += 16; - Sprite::updateBounds(); -} - -uint32 SsScene1705Tape::handleMessage(int messageNum, const MessageParam ¶m, Entity *sender) { - uint32 messageResult = Sprite::handleMessage(messageNum, param, sender); - switch (messageNum) { - case 0x1011: - sendMessage(_parentScene, 0x4826, 0); - messageResult = 1; - break; - case 0x4806: - setSubVar(VA_HAS_TAPE, _tapeIndex, 1); - setVisible(false); - SetMessageHandler(NULL); - break; - } - return messageResult; -} - Scene1705::Scene1705(NeverhoodEngine *vm, Module *parentModule, int which) : Scene(vm, parentModule), _paletteArea(1) { |