1234567891011121314151617181920212223242526272829303132333435363738 |
- #ifndef __EXIT_GRIDS_H
- #define __EXIT_GRIDS_H
- #include "Fileman.h"
- #include "Worlddef.h"
- typedef struct //for exit grids (object level)
- { //if an item pool is also in same gridno, then this would be a separate levelnode
- //in the object level list
- UINT16 usGridNo; //sweet spot for placing mercs in new sector.
- UINT8 ubGotoSectorX;
- UINT8 ubGotoSectorY;
- UINT8 ubGotoSectorZ;
- }EXITGRID;
- BOOLEAN ExitGridAtGridNo( UINT16 usMapIndex );
- BOOLEAN GetExitGridLevelNode( UINT16 usMapIndex, LEVELNODE **ppLevelNode );
- BOOLEAN GetExitGrid( UINT16 usMapIndex, EXITGRID *pExitGrid );
- void AddExitGridToWorld( INT32 iMapIndex, EXITGRID *pExitGrid );
- void RemoveExitGridFromWorld( INT32 iMapIndex );
- void SaveExitGrids( HWFILE fp, UINT16 usNumExitGrids );
- void LoadExitGrids( INT8 **hBuffer );
- void AttemptToChangeFloorLevel( INT8 bRelativeZLevel );
- extern EXITGRID gExitGrid;
- extern BOOLEAN gfOverrideInsertionWithExitGrid;
- // Finds closest ExitGrid of same type as is at gridno, within a radius. Checks
- // valid paths, destinations, etc.
- UINT16 FindGridNoFromSweetSpotCloseToExitGrid( SOLDIERTYPE *pSoldier, INT16 sSweetGridNo, INT8 ubRadius, UINT8 *pubDirection );
- UINT16 FindClosestExitGrid( SOLDIERTYPE *pSoldier, INT16 sGridNo, INT8 ubRadius );
- #endif
|