aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/phantom/phantom_scenes1.h
diff options
context:
space:
mode:
authorStrangerke2015-10-16 15:44:35 +0200
committerStrangerke2015-10-16 15:44:35 +0200
commit2c59f4932efa4338c45bf4e3824a6b5cbd0ff4d1 (patch)
tree065eb0b6eb3b97f0a961ccf857ddefd5b2cdfda0 /engines/mads/phantom/phantom_scenes1.h
parent1d4e56c455a15f1fa2ae6a927cd272f04a042be3 (diff)
downloadscummvm-rg350-2c59f4932efa4338c45bf4e3824a6b5cbd0ff4d1.tar.gz
scummvm-rg350-2c59f4932efa4338c45bf4e3824a6b5cbd0ff4d1.tar.bz2
scummvm-rg350-2c59f4932efa4338c45bf4e3824a6b5cbd0ff4d1.zip
MADS: Phantom: Implement logic for scene 104
Diffstat (limited to 'engines/mads/phantom/phantom_scenes1.h')
-rw-r--r--engines/mads/phantom/phantom_scenes1.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/engines/mads/phantom/phantom_scenes1.h b/engines/mads/phantom/phantom_scenes1.h
index 173f6c5271..cd9f6aea20 100644
--- a/engines/mads/phantom/phantom_scenes1.h
+++ b/engines/mads/phantom/phantom_scenes1.h
@@ -150,6 +150,48 @@ public:
virtual void actions();
};
+class Scene104 : public Scene1xx {
+private:
+ bool _anim0ActvFl;
+ bool _anim1ActvFl;
+ bool _anim2ActvFl;
+ bool _needToGetUp;
+ bool _needToStandUp;
+ bool _needToTalk;
+ bool _sittingUp;
+ bool _beforeSheLeaves;
+ bool _beforeHeLeaves;
+
+ int _walkStatus;
+ int _walkFrame;
+ int _coupleStatus;
+ int _coupleFrame;
+ int _richStatus;
+ int _richFrame;
+ int _manTalkCount;
+ int _womanTalkCount;
+ int _lookCount;
+ int _richTalkCount;
+ int _lastPlayerFrame;
+
+ void cleanInventory();
+ void processConversations();
+ void handleWalkAnimation();
+ void handleCoupleAnimations();
+ void handleRichAnimations();
+ void handlePlayerWalk();
+
+public:
+ Scene104(MADSEngine *vm);
+ 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