Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
70 lines
1.1 KiB
C++
70 lines
1.1 KiB
C++
#ifndef __MOVEHPP__
|
|
#define __MOVEHPP__
|
|
|
|
#include <stack>
|
|
#include <queue>
|
|
|
|
|
|
#include "movezone.hpp"
|
|
#include "movecell.hpp"
|
|
|
|
struct PATHELEMENT
|
|
{
|
|
PATHZONEELEMENT cell;
|
|
CCellPath *cellpath;
|
|
|
|
PATHELEMENT (const PATHZONEELEMENT& ncell,CCellPath *npath) {cell = ncell;cellpath = npath;}
|
|
// ~PATHELEMENT (void)
|
|
// { delete cellpath; cellpath = NULL; }
|
|
};
|
|
|
|
|
|
void DoPathTick (void);
|
|
|
|
bool CalcPath (std::stack<PATHELEMENT> *dest,CPoint start,CPoint end,int depth,bool followshort);
|
|
void InitMoveData (void);
|
|
|
|
struct PATHQUEUEELEMENT
|
|
{
|
|
int sx,sy;
|
|
int dx,dy;
|
|
CPerson *who;
|
|
bool cell;
|
|
|
|
PATHQUEUEELEMENT (void)
|
|
{
|
|
sx = sy = dx = dy = -1;
|
|
cell = false;
|
|
who = NULL;
|
|
}
|
|
PATHQUEUEELEMENT (int p1,int p2,int p3,int p4,CPerson *p5,bool p6)
|
|
{
|
|
sx = p1;
|
|
sy = p2;
|
|
dx = p3;
|
|
dy = p4;
|
|
who = p5;
|
|
cell = p6;
|
|
}
|
|
~PATHQUEUEELEMENT (void)
|
|
{
|
|
sx = sy = dx = dy = -1;
|
|
who = NULL;
|
|
}
|
|
void operator= (PATHQUEUEELEMENT& rhs)
|
|
{
|
|
sx = rhs.sx;
|
|
sy = rhs.sy;
|
|
dx = rhs.dx;
|
|
dy = rhs.dy;
|
|
who = rhs.who;
|
|
cell = rhs.cell;
|
|
}
|
|
};
|
|
|
|
extern std::queue<PATHQUEUEELEMENT> g_PathQueue;
|
|
|
|
|
|
#endif
|
|
|