aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/phantom/phantom_scenes5.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mads/phantom/phantom_scenes5.h')
-rw-r--r--engines/mads/phantom/phantom_scenes5.h49
1 files changed, 47 insertions, 2 deletions
diff --git a/engines/mads/phantom/phantom_scenes5.h b/engines/mads/phantom/phantom_scenes5.h
index 9b07e92e06..c98817ddcf 100644
--- a/engines/mads/phantom/phantom_scenes5.h
+++ b/engines/mads/phantom/phantom_scenes5.h
@@ -55,8 +55,8 @@ public:
class Scene501 : public Scene5xx {
private:
- bool _anim_0_running;
- bool _prevent_2;
+ bool _anim0ActvFl;
+ bool _skipFl;
public:
Scene501(MADSEngine *vm);
@@ -69,6 +69,51 @@ public:
virtual void actions();
};
+class Scene502 : public Scene5xx {
+private:
+ bool _fire1ActiveFl;
+ bool _fire2ActiveFl;
+ bool _fire3ActiveFl;
+ bool _fire4ActiveFl;
+ bool _panelTurningFl;
+ bool _trapDoorHotspotEnabled;
+ bool _acceleratedFireActivationFl;
+
+ int _panelPushedNum;
+ int _puzzlePictures[16];
+ int _puzzleSprites[16];
+ int _puzzleSequences[16];
+ int _messageLevel;
+ int _cycleStage;
+
+ Common::Point _nextPos;
+
+ uint32 _lastFrameTime;
+ uint32 _timer;
+ uint32 _deathTimer;
+
+ byte *_cyclePointer;
+
+ void room_502_initialize_panels();
+ void loadCyclingInfo();
+ void animateFireBursts();
+ void setPaletteCycle();
+ void handlePanelAnimation();
+ void getPanelInfo(Common::Point *walkToPos, int *panel, Common::Point mousePos, Common::Point *interimPos);
+
+public:
+ Scene502(MADSEngine *vm);
+ ~Scene502();
+
+ virtual void synchronize(Common::Serializer &s);
+
+ virtual void setup();
+ virtual void enter();
+ virtual void step();
+ virtual void preActions();
+ virtual void actions();
+};
+
} // End of namespace Phantom
} // End of namespace MADS