diff options
author | Eugene Sandulenko | 2014-06-26 19:05:15 +0300 |
---|---|---|
committer | Eugene Sandulenko | 2014-06-27 19:05:43 +0300 |
commit | 96ba19099f9a1eb46b79b8502b07ec023b1b0be5 (patch) | |
tree | 1f8182819ccd72246535e9d39d673b6a657eeb8d /engines/fullpipe/motion.h | |
parent | ec0d06e269eb2489a38ea92f0f88d9ada21bef0b (diff) | |
download | scummvm-rg350-96ba19099f9a1eb46b79b8502b07ec023b1b0be5.tar.gz scummvm-rg350-96ba19099f9a1eb46b79b8502b07ec023b1b0be5.tar.bz2 scummvm-rg350-96ba19099f9a1eb46b79b8502b07ec023b1b0be5.zip |
FULLPIPE: Split out MGM code into separate file
Diffstat (limited to 'engines/fullpipe/motion.h')
-rw-r--r-- | engines/fullpipe/motion.h | 66 |
1 files changed, 2 insertions, 64 deletions
diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h index 3c0a05bbe7..c488039e22 100644 --- a/engines/fullpipe/motion.h +++ b/engines/fullpipe/motion.h @@ -23,14 +23,13 @@ #ifndef FULLPIPE_MOTION_H #define FULLPIPE_MOTION_H +#include "fullpipe/mgm.h" + namespace Fullpipe { -class Statics; -class Movement; class MctlConnectionPoint; class MovGraphLink; class MessageQueue; -class ExCommand2; struct MovArr; struct MovItem; @@ -124,67 +123,6 @@ public: MotionController *getMotionController(int num) { return _motionControllers[num]->_motionControllerObj; } }; -struct MGMSubItem { - Movement *movement; - int staticsIndex; - int field_8; - int field_C; - int x; - int y; - - MGMSubItem(); -}; - -struct MGMItem { - int16 objId; - Common::Array<MGMSubItem *> subItems; - Common::Array<Statics *> statics; - Common::Array<Movement *> movements1; - Common::Array<int> movements2; - - MGMItem(); -}; - -struct MGMInfo { - StaticANIObject *ani; - int staticsId1; - int staticsId2; - int movementId; - int field_10; - int x1; - int y1; - int field_1C; - int x2; - int y2; - int flags; - - MGMInfo() { memset(this, 0, sizeof(MGMInfo)); } -}; - -class MGM : public CObject { -public: - Common::Array<MGMItem *> _items; - -public: - void clear(); - void addItem(int objId); - void rebuildTables(int objId); - int getItemIndexById(int objId); - - MessageQueue *genMovement(MGMInfo *mgminfo); - void updateAnimStatics(StaticANIObject *ani, int staticsId); - Common::Point *getPoint(Common::Point *point, int aniId, int staticsId1, int staticsId2); - int getStaticsIndexById(int idx, int16 id); - int getStaticsIndex(int idx, Statics *st); - void clearMovements2(int idx); - int recalcOffsets(int idx, int st1idx, int st2idx, bool flip, bool flop); - Common::Point *calcLength(Common::Point *point, Movement *mov, int x, int y, int *mult, int *len, int flag); - ExCommand2 *buildExCommand2(Movement *mov, int objId, int x1, int y1, Common::Point *x2, Common::Point *y2, int len); - MessageQueue *genMQ(StaticANIObject *ani, int staticsIndex, int staticsId, int *resStatId, Common::Point **pointArr); - int countPhases(int idx, int subIdx, int subOffset, int flag); - int refreshOffsets(int objectId, int idx1, int idx2); -}; - struct MctlLadderMovementVars { int varUpGo; int varDownGo; |