aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/nebular/nebular_scenes.h
diff options
context:
space:
mode:
authorStrangerke2014-05-04 19:21:38 +0200
committerStrangerke2014-05-04 19:22:31 +0200
commitf894b3f1269203793214a750cbd5a9ae022d2d8c (patch)
treece08de46397261333a963a9a22043abdff683e2b /engines/mads/nebular/nebular_scenes.h
parent9966afbb8f215b1ba8dfaf752355060b1d7b1092 (diff)
downloadscummvm-rg350-f894b3f1269203793214a750cbd5a9ae022d2d8c.tar.gz
scummvm-rg350-f894b3f1269203793214a750cbd5a9ae022d2d8c.tar.bz2
scummvm-rg350-f894b3f1269203793214a750cbd5a9ae022d2d8c.zip
MADS: Implement scene 409, first try of Teleporter implementation
Diffstat (limited to 'engines/mads/nebular/nebular_scenes.h')
-rw-r--r--engines/mads/nebular/nebular_scenes.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/engines/mads/nebular/nebular_scenes.h b/engines/mads/nebular/nebular_scenes.h
index 85b24050d6..2a47af61d3 100644
--- a/engines/mads/nebular/nebular_scenes.h
+++ b/engines/mads/nebular/nebular_scenes.h
@@ -125,7 +125,7 @@ protected:
Common::String formAnimName(char sepChar, int suffixNum);
/**
- * Plays appropriate sound for entering varous rooms
+ * Plays appropriate sound for entering various rooms
*/
void lowRoomsEntrySound();
public:
@@ -150,6 +150,34 @@ protected:
SceneInfoNebular(MADSEngine *vm) : SceneInfo(vm) {}
};
+class SceneTeleporter : public NebularScene {
+protected:
+ int _buttonTyped;
+ int _curCode;
+ int _digitCount;
+ int _curMessageId;
+ int _handSpriteId;
+ int _handSequenceId;
+ int _finishedCodeCounter;
+ int _meteorologistNextPlace;
+ int _meteorologistCurPlace;
+ int _teleporterSceneId;
+ Common::String _msgText;
+
+ int teleporterAddress(int code, bool working);
+
+ void teleporterHandleKey();
+ Common::Point teleporterComputeLocation();
+ void teleporterEnter();
+ bool teleporterActions();
+ void teleporterStep();
+
+protected:
+ /**
+ * Constructor
+ */
+ SceneTeleporter(MADSEngine *vm) : NebularScene(vm) {}
+};
} // End of namespace Nebular
} // End of namespace MADS