mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +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;
|
||||
}
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
|
||||
@@ -277,22 +277,6 @@ UINT8 DoReinforcementAsPendingEnemy( INT16 sMapX, INT16 sMapY )
|
||||
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 )
|
||||
{
|
||||
UINT16 pusMoveDir[4][3];
|
||||
@@ -310,7 +294,9 @@ UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank
|
||||
{
|
||||
*pubRank = 255;
|
||||
return 255;
|
||||
}else
|
||||
}
|
||||
else
|
||||
{
|
||||
for(;;)
|
||||
{
|
||||
ubIndex = Random(ubDirNumber);
|
||||
@@ -338,6 +324,7 @@ UINT8 DoReinforcementAsPendingMilitia( INT16 sMapX, INT16 sMapY, UINT8 *pubRank
|
||||
return (UINT8)pusMoveDir[ ubIndex ][ 2 ];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -369,7 +356,7 @@ void AddPossiblePendingMilitiaToBattle()
|
||||
)
|
||||
return;
|
||||
//gGameExternalOptions.guiMaxMilitiaSquadSize - CountAllMilitiaInSector( gWorldSectorX, gWorldSectorY );
|
||||
ubSlots = NumFreeMilitiaSlots();
|
||||
ubSlots = NumFreeSlots( MILITIA_TEAM );
|
||||
if(gGameExternalOptions.sMinDelayMilitiaReinforcements)//dnl ch68 090913
|
||||
{
|
||||
if(gTacticalStatus.Team[MILITIA_TEAM].bAwareOfOpposition == TRUE)
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "GameSettings.h"
|
||||
#include "Quests.h"
|
||||
#include "Interface.h" // added by Flugente for zBackground
|
||||
#include "Reinforcement.h" // added by Flugente for AddPossiblePendingMilitiaToBattle()
|
||||
#endif
|
||||
|
||||
#include "MilitiaSquads.h"
|
||||
@@ -3494,6 +3495,7 @@ void HandleArrivalOfReinforcements( GROUP *pGroup )
|
||||
ResetMortarsOnTeamCount();
|
||||
ResetNumSquadleadersInArmyGroup(); // added by SANDRO
|
||||
AddPossiblePendingEnemiesToBattle();
|
||||
AddPossiblePendingMilitiaToBattle( );
|
||||
}
|
||||
|
||||
//Update the known number of enemies in the sector.
|
||||
|
||||
Reference in New Issue
Block a user