diff options
author | Eugene Sandulenko | 2013-11-17 12:19:25 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2013-11-17 16:40:20 -0800 |
commit | fc107e000594bd4fc6a321f9c0bfb927297977e8 (patch) | |
tree | de83ff27c3b3c1b37569fe38dc9cfc8503c74cd0 /engines/fullpipe/motion.h | |
parent | 4e4a4bb005dd284d235a54a763727b1a2e061c8e (diff) | |
download | scummvm-rg350-fc107e000594bd4fc6a321f9c0bfb927297977e8.tar.gz scummvm-rg350-fc107e000594bd4fc6a321f9c0bfb927297977e8.tar.bz2 scummvm-rg350-fc107e000594bd4fc6a321f9c0bfb927297977e8.zip |
FULLPIPE: Complete implementation of MovGraph2::buildMovInfo1MessageQueue()
Diffstat (limited to 'engines/fullpipe/motion.h')
-rw-r--r-- | engines/fullpipe/motion.h | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h index 58c7f9cc73..bab0ffc8ca 100644 --- a/engines/fullpipe/motion.h +++ b/engines/fullpipe/motion.h @@ -78,7 +78,7 @@ public: class MctlCompoundArrayItem : public CObject { friend class MctlCompound; - protected: +protected: MotionController *_motionControllerObj; MovGraphReact *_movGraphReactObj; Common::Array<MctlConnectionPoint *> _connectionPoints; @@ -86,7 +86,7 @@ class MctlCompoundArrayItem : public CObject { int _field_24; int _field_28; - public: +public: MctlCompoundArrayItem() : _movGraphReactObj(0), _motionControllerObj(0), _field_20(0), _field_24(0), _field_28(0) {} }; @@ -134,6 +134,19 @@ struct MGMItem { 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; +}; class MGM : public CObject { public: @@ -144,6 +157,8 @@ public: void addItem(int objId); void rebuildTables(int objId); int getItemIndexById(int objId); + + MessageQueue *genMovement(MGMInfo *mgminfo); }; class MovGraphNode : public CObject { @@ -232,7 +247,7 @@ struct MovGraphItem { }; class MovGraph : public MotionController { - public: +public: ObList _nodes; ObList _links; int _field_44; @@ -240,7 +255,7 @@ class MovGraph : public MotionController { int (*_callback1)(int, int, int); MGM _mgm; - public: +public: MovGraph(); virtual bool load(MfcArchive &file); @@ -303,7 +318,7 @@ struct MovInfo1 { int flags; }; - struct MovGraph2Item { // 744 +struct MovGraph2Item { // 744 int _objectId; StaticANIObject *_obj; MovGraph2ItemSub _subItems[4]; // 184 @@ -336,6 +351,8 @@ public: MovGraphLink *findLink1(int x, int y, int idx, int fuzzyMatch); MovGraphLink *findLink2(int x, int y); double findMinPath(LinkInfo *linkInfoSource, LinkInfo *linkInfoDest, Common::Array<MovGraphLink *> *listObj); + + MessageQueue *genMovement(MovInfo1 *movinfo); }; class MctlConnectionPoint : public CObject { |