3 |
* |
* |
4 |
* @see IsoTileWalker |
* @see IsoTileWalker |
5 |
* |
* |
|
* Revision History: |
|
|
* v1.1 (June 6) - Optimized the class for square maps. |
|
|
* Removed the different function pointers. |
|
|
* Removed the map type accessor and modifier. |
|
|
* Removed the walker function pointer definition. |
|
|
* |
|
6 |
* @author <A href="mailto:vovansim@hotmail.com">Vovansim (aka Scorpion)</A> |
* @author <A href="mailto:vovansim@hotmail.com">Vovansim (aka Scorpion)</A> |
7 |
* @version 1.1 |
* @version 1.0 |
8 |
* @date June 6, 2003 |
* @date May 20, 2003 |
9 |
*/ |
*/ |
10 |
|
|
11 |
#ifndef ISO_TILE_WALKER_H |
#ifndef ISO_TILE_WALKER_H |
13 |
|
|
14 |
#include "IsoDefinitions.h" |
#include "IsoDefinitions.h" |
15 |
|
|
16 |
|
/** typedef for a function pointer to a tilewalker function */ |
17 |
|
typedef POINT (*ISOTILEWALKERFN)(POINT start, ISODIRECTION direction); |
18 |
|
|
19 |
/** |
/** |
20 |
* Class IsoTileWalker: This class wraps up the map walking nicely for |
* Class IsoTileWalker: This class wraps up the map walking nicely for |
21 |
* any kind of map. Basically, once it is initialized, no matter what |
* any kind of map. Basically, once it is initialized, no matter what |
23 |
* of a point, and specifying the direction of movement will spit out |
* of a point, and specifying the direction of movement will spit out |
24 |
* the correct coordinates. |
* the correct coordinates. |
25 |
* |
* |
|
* Revision History: |
|
|
* v1.1 (June 6) - Optimized the class for square maps. |
|
|
* Removed the map type accessor and modifier. |
|
|
* Removed the map type and walker function member variables. |
|
|
* |
|
26 |
* @author <A href="mailto:vovansim@hotmail.com">Vovansim (aka Scorpion)</A> |
* @author <A href="mailto:vovansim@hotmail.com">Vovansim (aka Scorpion)</A> |
27 |
* @version 1.1 |
* @version 1.0 |
28 |
* @date June 6, 2003 |
* @date May 20, 2003 |
29 |
*/ |
*/ |
30 |
class IsoTileWalker { |
class IsoTileWalker { |
31 |
public: |
public: |
45 |
*/ |
*/ |
46 |
POINT walkTile(POINT start, ISODIRECTION direction); |
POINT walkTile(POINT start, ISODIRECTION direction); |
47 |
|
|
48 |
|
|
49 |
|
|
50 |
|
////////////////////////// Accessors / Modifiers ////////////////////////// |
51 |
|
|
52 |
|
/** Map type accessor */ |
53 |
|
ISOMAPTYPE getMapType(); |
54 |
|
/** Map type modifier */ |
55 |
|
void setMapType(ISOMAPTYPE newMapType); |
56 |
|
|
57 |
|
//////////////////////// End Accessors / Modifiers //////////////////////// |
58 |
|
|
59 |
private: |
private: |
60 |
//No variables to keep track of... |
/** The map type to walk */ |
61 |
|
ISOMAPTYPE isoMapType; |
62 |
|
|
63 |
|
/** The tile walker function. */ |
64 |
|
ISOTILEWALKERFN walkerFunction; |
65 |
}; |
}; |
66 |
|
|
67 |
#endif//ISO_TILE_WALKER_H |
#endif//ISO_TILE_WALKER_H |