22 #ifndef TOLTECS_SEGMAP_H 23 #define TOLTECS_SEGMAP_H 25 #include "common/array.h" 27 #include "toltecs/screen.h" 51 void load(byte *source);
53 int16 findPathRectAtPoint(int16 x, int16 y);
54 void adjustPathPoint(int16 &x, int16 &y);
56 void findPath(int16 *pointsArray, int16 destX, int16 destY, int16 sourceX, int16 sourceY);
58 int8 getScalingAtPoint(int16 x, int16 y);
59 void getRgbModifiertAtPoint(int16 x, int16 y, int16
id, byte &r, byte &g, byte &b);
61 void addMasksToRenderQueue();
75 inline bool isPointInside(int16 px, int16 py) {
76 return py >= y && py <= y + height && px >= x && px <= x + width;
92 SegmapMaskRectArray _maskRects;
95 SegmapPathRectArray _pathRects;
96 SegmapInfoRectArray _infoRects;
98 int16 _deadEndPathRects[1000];
99 uint _deadEndPathRectsCount;
101 int16 _closedPathRects[1000];
102 uint _closedPathRectsCount;
105 int16 _pathNodesCount;
107 int16 findNextPathRect(int16 srcRectIndex, int16 destX, int16 destY);
109 void loadSegmapMaskRectSurface(byte *maskData,
SegmapMaskRect &maskRect);
110 void freeSegmapMaskRectSurfaces();
Definition: animation.h:28