1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-06 09:09:40 +02:00

Our changes.

Restructured instances classes.
Still very instable.
This commit is contained in:
Michał W. Urbańczyk
2007-10-27 19:38:48 +00:00
parent c18e4573f1
commit 4f316cd7e6
22 changed files with 888 additions and 525 deletions

View File

@@ -4,6 +4,7 @@
#include <queue>
#include <vector>
class CHeroInstance;
class CGHeroInstance;
struct CPathNode
{
bool accesible; //true if a hero can be on this node
@@ -29,7 +30,7 @@ class CPathfinder
private:
std::vector< std::vector<CPathNode *> > graph;
public:
CPath * getPath(int3 src, int3 dest, const CHeroInstance * hero, unsigned char type=0); //calculates path between src and dest; returns pointer to CPath or NULL if path does not exists; type - type of calculation: 0 - positions are normal positions of hero; 1 - given places are tiles blocked by hero
CPath * getPath(int3 src, int3 dest, const CGHeroInstance * hero, unsigned char type=0); //calculates path between src and dest; returns pointer to CPath or NULL if path does not exists; type - type of calculation: 0 - positions are normal positions of hero; 1 - given places are tiles blocked by hero
CPath * getPath(const int3 & src, const int3 & dest, const CHeroInstance * hero, int (*getDist)(int3 & a, int3 & b), unsigned char type=0); //calculates path between src and dest; returns pointer to CPath or NULL if path does not exists; uses getDist to calculate distance; type - type of calculation: 0 - positions are normal positions of hero; 1 - given places are tiles blocked by hero
static void convertPath(CPath * path, unsigned int mode); //mode=0 -> from 'manifest' to 'object'