Expanded feature: Militia Strategic Movement is turned on with ALLOW_MILITIA_STRATEGIC_COMMAND set to TRUE and allows plotting paths for the militia just like for merc squads.

GameDir >= r2204 is recommended.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7727 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2015-02-08 22:11:16 +00:00
parent c94ac421ae
commit c9bcf90966
47 changed files with 3156 additions and 1322 deletions
+22 -4
View File
@@ -87,6 +87,12 @@ void PlotPathForHelicopter( INT16 sX, INT16 sY );
// the temp path, where the helicopter could go
void PlotATemporaryPathForHelicopter( INT16 sX, INT16 sY );
// plot path for helicopter
void PlotPathForMilitia( INT16 sX, INT16 sY );
// the temp path, where the helicopter could go
void PlotATemporaryPathForMilitia( INT16 sX, INT16 sY );
// trace a route for a passed path...doesn't require dest char - most more general
BOOLEAN TracePathRoute( BOOLEAN fCheckFlag, BOOLEAN fForceUpDate, PathStPtr pPath );
@@ -108,6 +114,8 @@ void DisplaySoldierPath( SOLDIERTYPE *pCharacter );
void DisplaySoldierTempPath( SOLDIERTYPE *pCharacter );
void DisplayHelicopterPath( void );
void DisplayHelicopterTempPath( void );
void DisplayMilitiaPath( void );
void DisplayMilitiaTempPath( void );
// clear path after this sector
@@ -118,12 +126,18 @@ void CancelPathForCharacter( SOLDIERTYPE *pCharacter );
void CancelPathForVehicle( VEHICLETYPE *pVehicle, BOOLEAN fAlreadyReversed );
void CancelPathForGroup( GROUP *pGroup );
void CancelPathForMilitiaGroup( UINT8 uGroupId );
// check if we have waited long enought object update temp path
void DisplayThePotentialPathForHelicopter(INT16 sMapX, INT16 sMapY );
void DisplayThePotentialPathForMilitia( INT16 sMapX, INT16 sMapY );
// clear out helicopter list after this sector
UINT32 ClearPathAfterThisSectorForHelicopter( INT16 sX, INT16 sY );
UINT32 ClearPathAfterThisSectorForMilitia( INT16 sX, INT16 sY );
// check to see if sector is highlightable
BOOLEAN IsTheCursorAllowedToHighLightThisSector( INT16 sSectorX, INT16 sSectorY );
@@ -150,6 +164,8 @@ void ShowMilitiaInMotion( INT16 sX, INT16 sY); // added by Flugente
// last sector in helicopter's path
INT16 GetLastSectorOfHelicoptersPath( void );
INT16 GetLastSectorOfMilitiaPath( void );
// display info about helicopter path
void DisplayDistancesForHelicopter( void );
@@ -169,10 +185,6 @@ void RemoveMilitiaPopUpBox( void );
// check if anyone left behind, if not, move selected cursor along with movement group
//void CheckIfAnyoneLeftInSector( INT16 sX, INT16 sY, INT16 sNewX, INT16 sNewY, INT8 bZ );
// grab the total number of militia in sector
INT32 GetNumberOfMilitiaInSector( INT16 sSectorX, INT16 sSectorY, INT8 bSectorZ );
// create destroy
void CreateDestroyMilitiaPopUPRegions( void );
@@ -332,6 +344,8 @@ extern SGPRect MapScreenRect;
// draw temp path
extern BOOLEAN fDrawTempHeliPath;
extern BOOLEAN fDrawTempMilitiaPath;
// selected destination char
extern INT8 bSelectedDestChar;
@@ -384,4 +398,8 @@ extern POINT pTownPoints[ MAX_TOWNS ];
extern void SetUpValidCampaignSectors( void );
#endif
void CreateMilitiaGroupBox( );
void DestroyMilitiaGroupBox( );
void DisplayMilitiaGroupBox( );
#endif