aboutsummaryrefslogtreecommitdiff
path: root/engines/prince/prince.h
diff options
context:
space:
mode:
authorlukaslw2014-07-13 18:27:13 +0200
committerlukaslw2014-07-13 18:27:13 +0200
commit7155db43049493fadc2f2e9779e5407ef3acc6eb (patch)
tree2076cdcd718b9e4d83495b401b8530aa7105cf77 /engines/prince/prince.h
parenteec9e4a84e5137930bcf8966fa7e65e2e27312f8 (diff)
downloadscummvm-rg350-7155db43049493fadc2f2e9779e5407ef3acc6eb.tar.gz
scummvm-rg350-7155db43049493fadc2f2e9779e5407ef3acc6eb.tar.bz2
scummvm-rg350-7155db43049493fadc2f2e9779e5407ef3acc6eb.zip
PRINCE: Pathfinding - bug fixing, approxPath()
Diffstat (limited to 'engines/prince/prince.h')
-rw-r--r--engines/prince/prince.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/prince/prince.h b/engines/prince/prince.h
index ece1c4b251..5dffaf6f73 100644
--- a/engines/prince/prince.h
+++ b/engines/prince/prince.h
@@ -449,11 +449,17 @@ public:
int _fpX1;
int _fpY1;
Direction _direction;
- int _coordsBufEnd;
+ byte *_coordsBufEnd;
byte *_coordsBuf; // optimal path
byte *_coords; // last path point adress from coordsBuf
+ byte *_coordsBuf2;
+ byte *_coords2;
+ byte *_coordsBuf3;
+ byte *_coords3;
int _traceLineLen;
int _traceLineFlag; // return value of plotTraceLine
+ bool _traceLineFirstPointFlag; // if plotTraceLine after first point
+ int _tracePointFlag; // return value of plotTracePoint
byte *_checkBitmapTemp; //esi
byte *_checkBitmap; // ebp
@@ -475,7 +481,7 @@ public:
} _fpResult;
bool loadPath(const char *resourceName);
- void makePath(int destX, int destY);
+ int makePath(int destX, int destY);
void findPoint(int x1, int y1, int x2, int y2);
int fpGetPixelAddr(int x, int y);
int fpGetPixel(int x, int y);
@@ -486,8 +492,15 @@ public:
Direction makeDirection(int x1, int y1, int x2, int y2);
void specialPlot(int x, int y);
void specialPlot2(int x, int y);
+ void allocCoords2();
+ void freeCoords2();
+ void freeCoords3();
+ static void plotTracePoint(int x, int y, int color, void *data);
+ void specialPlotInside2(int x, int y);
void approxPath();
+ void testDrawPath();
+
int leftDownDir();
int leftDir();
int leftUpDir();