mirror of
https://github.com/1dot13/source.git
synced 2026-09-02 14:36:06 +02:00
- removed UINT8 NumFreeMilitiaSlots()
- militia groups can reinforce battles in neighbouring sectors git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7711 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -548,6 +548,12 @@ UINT8 NumFreeSlots( UINT8 ubTeam )
|
|||||||
++ubNumFreeSlots;
|
++ubNumFreeSlots;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// the militia team size can be restricted by the ini
|
||||||
|
if ( ubTeam == MILITIA_TEAM )
|
||||||
|
{
|
||||||
|
ubNumFreeSlots = (UINT8)max( 0, (INT8)ubNumFreeSlots - (INT8)(gGameExternalOptions.ubGameMaximumNumberOfRebels - gGameExternalOptions.iMaxMilitiaPerSector) );
|
||||||
|
}
|
||||||
|
|
||||||
return ubNumFreeSlots;
|
return ubNumFreeSlots;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -277,22 +277,6 @@ UINT8 DoReinforcementAsPendingEnemy( INT16 sMapX, INT16 sMapY )
|
|||||||
return 255;
|
return 255;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
UINT8 NumFreeMilitiaSlots()
|
|
||||||
{
|
|
||||||
UINT8 ubNumFreeSlots = 0;
|
|
||||||
INT32 i;
|
|
||||||
SOLDIERTYPE *pSoldier;
|
|
||||||
//Count the number of free militia slots. It is possible to have multiple groups exceed the maximum.
|
|
||||||
for( i = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID; i <= gTacticalStatus.Team[ MILITIA_TEAM].bLastID; i++ )
|
|
||||||
{
|
|
||||||
pSoldier = &Menptr[ i ];
|
|
||||||
if( !pSoldier->bActive )
|
|
||||||
ubNumFreeSlots++;
|
|
||||||
}
|
|
||||||
return max( 0 , ubNumFreeSlots - ( gGameExternalOptions.ubGameMaximumNumberOfRebels - gGameExternalOptions.iMaxMilitiaPerSector ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank )
|
UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank )
|
||||||
{
|
{
|
||||||
UINT16 pusMoveDir[4][3];
|
UINT16 pusMoveDir[4][3];
|
||||||
@@ -310,7 +294,9 @@ UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank
|
|||||||
{
|
{
|
||||||
*pubRank = 255;
|
*pubRank = 255;
|
||||||
return 255;
|
return 255;
|
||||||
}else
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
for(;;)
|
for(;;)
|
||||||
{
|
{
|
||||||
ubIndex = Random(ubDirNumber);
|
ubIndex = Random(ubDirNumber);
|
||||||
@@ -338,6 +324,7 @@ UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank
|
|||||||
return (UINT8)pusMoveDir[ ubIndex ][ 2 ];
|
return (UINT8)pusMoveDir[ ubIndex ][ 2 ];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -369,7 +356,7 @@ void AddPossiblePendingMilitiaToBattle()
|
|||||||
)
|
)
|
||||||
return;
|
return;
|
||||||
//gGameExternalOptions.guiMaxMilitiaSquadSize - CountAllMilitiaInSector( gWorldSectorX, gWorldSectorY );
|
//gGameExternalOptions.guiMaxMilitiaSquadSize - CountAllMilitiaInSector( gWorldSectorX, gWorldSectorY );
|
||||||
ubSlots = NumFreeMilitiaSlots();
|
ubSlots = NumFreeSlots( MILITIA_TEAM );
|
||||||
if(gGameExternalOptions.sMinDelayMilitiaReinforcements)//dnl ch68 090913
|
if(gGameExternalOptions.sMinDelayMilitiaReinforcements)//dnl ch68 090913
|
||||||
{
|
{
|
||||||
if(gTacticalStatus.Team[MILITIA_TEAM].bAwareOfOpposition == TRUE)
|
if(gTacticalStatus.Team[MILITIA_TEAM].bAwareOfOpposition == TRUE)
|
||||||
|
|||||||
@@ -48,6 +48,7 @@
|
|||||||
#include "GameSettings.h"
|
#include "GameSettings.h"
|
||||||
#include "Quests.h"
|
#include "Quests.h"
|
||||||
#include "Interface.h" // added by Flugente for zBackground
|
#include "Interface.h" // added by Flugente for zBackground
|
||||||
|
#include "Reinforcement.h" // added by Flugente for AddPossiblePendingMilitiaToBattle()
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "MilitiaSquads.h"
|
#include "MilitiaSquads.h"
|
||||||
@@ -3494,6 +3495,7 @@ void HandleArrivalOfReinforcements( GROUP *pGroup )
|
|||||||
ResetMortarsOnTeamCount();
|
ResetMortarsOnTeamCount();
|
||||||
ResetNumSquadleadersInArmyGroup(); // added by SANDRO
|
ResetNumSquadleadersInArmyGroup(); // added by SANDRO
|
||||||
AddPossiblePendingEnemiesToBattle();
|
AddPossiblePendingEnemiesToBattle();
|
||||||
|
AddPossiblePendingMilitiaToBattle( );
|
||||||
}
|
}
|
||||||
|
|
||||||
//Update the known number of enemies in the sector.
|
//Update the known number of enemies in the sector.
|
||||||
|
|||||||
Reference in New Issue
Block a user