aboutsummaryrefslogtreecommitdiff
path: root/engines/neverhood/modules/module1700.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2013-10-05 14:41:02 +0300
committerFilippos Karapetis2013-10-05 14:41:02 +0300
commitb963fcbfa8794c807d831ab3b117634ce7c8550e (patch)
treea2024869846082282df21c03530af2c57fe41e63 /engines/neverhood/modules/module1700.cpp
parent97153189325b375c8cd1ef18eb6cb20734d8a2f1 (diff)
downloadscummvm-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.cpp44
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 &param, 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) {