35 enum RelativeDirection {
38 kRelDirLeft = (1 << 0),
40 kRelDirRight = (1 << 2),
41 kRelDirDown = (1 << 3),
43 kRelDirLeftUp = kRelDirLeft | kRelDirUp,
44 kRelDirLeftDown = kRelDirLeft | kRelDirDown,
45 kRelDirRightUp = kRelDirRight | kRelDirUp,
46 kRelDirRightDown = kRelDirRight | kRelDirDown
77 int16 _nearestWayPoint;
85 bool _usesObliqueCoordinates;
93 uint8 getVersion()
const;
95 int16 getMapWidth()
const;
96 int16 getMapHeight()
const;
98 int16 getScreenWidth()
const;
99 int16 getScreenHeight()
const;
101 int16 getTilesWidth()
const;
102 int16 getTilesHeight()
const;
104 bool hasBigTiles()
const;
106 int8 getPass(
int x,
int y,
int width = -1)
const;
107 void setPass(
int x,
int y, int8 pass,
int width = -1);
109 const WayPoint &getWayPoint(
int n)
const;
111 void findNearestWalkable(int16 &gobDestX, int16 &gobDestY,
112 int16 mouseX, int16 mouseY);
114 int16 getItem(
int x,
int y)
const;
115 void setItem(
int x,
int y, int16 item);
116 void placeItem(int16 x, int16 y, int16
id);
118 Direction getDirection(int16 x0, int16 y0, int16 x1, int16 y1);
121 int16 y0, int16 x1, int16 y1);
122 int16 checkLongPath(int16 x0, int16 y0,
123 int16 x1, int16 y1, int16 i0, int16 i1);
125 void loadMapsInitGobs();
127 virtual void loadMapObjects(
const char *avjFile) = 0;
153 int16 _wayPointCount;
158 int16 findNearestWayPoint(int16 x, int16 y);
162 void moveDirection(Direction dir, int16 &x, int16 &y);
167 void loadMapObjects(
const char *avjFile)
override;
185 void loadMapObjects(
const char *avjFile)
override;