25 #include "ngi/anihandler.h" 29 class MctlConnectionPoint;
35 int startWalkTo(
int objId,
int objKey,
int x,
int y,
int a5);
36 bool doSomeAnimation(
int objId,
int objKey,
int a3);
37 bool doSomeAnimation2(
int objId,
int objKey);
48 virtual void methodC() {}
49 virtual void method10() {}
50 virtual void deactivate() { _isEnabled =
false; }
51 virtual void activate() { _isEnabled =
true; }
54 virtual void detachAllObjects() {}
56 virtual bool setPosImmediate(
StaticANIObject *obj,
int x,
int y) {
return false; }
57 virtual int method30() {
return 0; }
60 virtual bool resetPosition(
StaticANIObject *ani,
int flag) {
return 0; }
61 virtual int method40() {
return 0; }
62 virtual bool canDropInventory(
StaticANIObject *ani,
int x,
int y) {
return false; }
63 virtual int method48() {
return -1; }
66 void enableLinks(
const char *linkName,
bool enable);
75 virtual void setCenter(
int x1,
int y1,
int x2,
int y2) {}
76 virtual void createRegion() {}
77 virtual bool pointInRegion(
int x,
int y);
90 MctlItem() : _field_20(0), _field_24(0), _field_28(0) {}
106 void detachAllObjects()
override;
110 void initMctlGraph();
111 MctlConnectionPoint *findClosestConnectionPoint(
int ox,
int oy,
int destIndex,
int connectionX,
int connectionY,
int sourceIndex,
double *minDistancePtr);
112 void replaceNodeX(
int from,
int to);
114 uint getMotionControllerCount() {
return _motionControllers.
size(); }
115 MotionController *getMotionController(
int num) {
return _motionControllers[num]->_motionControllerObj.get(); }
138 int _ladder_field_14;
141 int _ladder_field_20;
142 int _ladder_field_24;
153 void detachAllObjects()
override;
173 MovGraphNode() : _x(0), _y(0), _z(0), _field_10(0), _field_14(0) { _objtype = kObjTypeMovGraphNode; }
190 void setCenter(
int x1,
int y1,
int x2,
int y2)
override;
191 void createRegion()
override;
204 void setCenter(
int x1,
int y1,
int x2,
int y2)
override;
205 void createRegion()
override;
288 static int messageHandler(
ExCommand *cmd);
294 void detachAllObjects()
override;
305 void recalcLinkParams();
310 void findAllPaths(
MovGraphLink *lnk,
MovGraphLink *lnk2, MovGraphLinkList &tempObList1, MovGraphLinkList &tempObList2);
313 bool getHitPoint(
int idx,
int x,
int y,
MovArr *arr,
int a6);
376 void detachAllObjects()
override;
380 int getObjIndex(
int objectId);
381 int getDirByStatics(
int index,
int staticsId);
382 int getDirByMovement(
int index,
int movId);
392 MovGraphNode *getHitNode(
int x,
int y,
int strictMatch);
393 MovGraphLink *getHitLink(
int x,
int y,
int idx,
int fuzzyMatch);
395 double iterate(
LinkInfo *linkInfoSource,
LinkInfo *linkInfoDest, MovGraphLinkList *listObj);
408 int _motionControllerObj;
Definition: statics.h:107
Definition: messages.h:108
Definition: anihandler.h:91
size_type size() const
Definition: array.h:315
Definition: statics.h:172
Definition: messages.h:59
Definition: anihandler.h:25
Common::Array< MctlItem * > _motionControllers
Definition: motion.h:97