mirror of
https://github.com/1dot13/source.git
synced 2026-07-29 13:52:17 +02:00
Use SoldierID
This commit is contained in:
+37
-29
@@ -5503,9 +5503,9 @@ BOOLEAN MakeSoldierTurn( SOLDIERTYPE *pSoldier, INT16 sXPos, INT16 sYPos )
|
||||
|
||||
UINT32 UIHandleLCLook( UI_EVENT *pUIEvent )
|
||||
{
|
||||
INT16 sXPos, sYPos;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
INT32 cnt;
|
||||
INT16 sXPos, sYPos;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID cnt;
|
||||
if ( !GetMouseXY( &sXPos, &sYPos ) )
|
||||
{
|
||||
return( GAME_SCREEN );
|
||||
@@ -5515,8 +5515,9 @@ UINT32 UIHandleLCLook( UI_EVENT *pUIEvent )
|
||||
{
|
||||
// OK, loop through all guys who are 'multi-selected' and
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -5820,10 +5821,10 @@ void GetGridNoScreenXY( INT32 sGridNo, INT16 *pScreenX, INT16 *pScreenY )
|
||||
|
||||
void EndMultiSoldierSelection( BOOLEAN fAcknowledge )
|
||||
{
|
||||
SOLDIERTYPE * pSoldier;
|
||||
INT32 cnt;
|
||||
SOLDIERTYPE *pFirstSoldier = NULL;
|
||||
BOOLEAN fSelectedSoldierInBatch = FALSE;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pFirstSoldier = NULL;
|
||||
BOOLEAN fSelectedSoldierInBatch = FALSE;
|
||||
|
||||
|
||||
gTacticalStatus.fAtLeastOneGuyOnMultiSelect = FALSE;
|
||||
@@ -5833,8 +5834,9 @@ void EndMultiSoldierSelection( BOOLEAN fAcknowledge )
|
||||
// check if our currently selected guy is among the
|
||||
// lucky few.. if not, change to a guy who is...
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -5879,15 +5881,16 @@ BOOLEAN StopRubberBandedMercFromMoving(void)
|
||||
}
|
||||
|
||||
SOLDIERTYPE *pSoldier;
|
||||
INT32 cnt;
|
||||
SoldierID cnt;
|
||||
BOOLEAN fFound = FALSE;
|
||||
|
||||
// OK, loop through all guys who are 'multi-selected' and
|
||||
// check if our currently selected guy is among the
|
||||
// lucky few.. if not, change to a guy who is...
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -5923,10 +5926,10 @@ void EndRubberBanding( )
|
||||
|
||||
BOOLEAN HandleMultiSelectionMove( INT32 sDestGridNo )
|
||||
{
|
||||
SOLDIERTYPE * pSoldier;
|
||||
INT32 cnt;
|
||||
BOOLEAN fAtLeastOneMultiSelect = FALSE;
|
||||
BOOLEAN fMoveFast = FALSE;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID cnt;
|
||||
BOOLEAN fAtLeastOneMultiSelect = FALSE;
|
||||
BOOLEAN fMoveFast = FALSE;
|
||||
|
||||
// OK, loop through all guys who are 'multi-selected' and
|
||||
// Make them move....
|
||||
@@ -5935,8 +5938,9 @@ BOOLEAN HandleMultiSelectionMove( INT32 sDestGridNo )
|
||||
gfGetNewPathThroughPeople = TRUE;
|
||||
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -5958,8 +5962,9 @@ BOOLEAN HandleMultiSelectionMove( INT32 sDestGridNo )
|
||||
INT32 highestY = 0;
|
||||
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -5978,8 +5983,9 @@ BOOLEAN HandleMultiSelectionMove( INT32 sDestGridNo )
|
||||
INT32 centerY = (highestY + lowestY)/2;
|
||||
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -6068,9 +6074,10 @@ void ResetMultiSelection( )
|
||||
{
|
||||
// OK, loop through all guys who are 'multi-selected' and
|
||||
// Make them move....
|
||||
INT32 cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for (SOLDIERTYPE* pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt, pSoldier++ )
|
||||
SoldierID cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = cnt;
|
||||
if ( pSoldier && pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
if ( pSoldier->flags.uiStatusFlags & SOLDIER_MULTI_SELECTED )
|
||||
@@ -6087,12 +6094,12 @@ void ResetMultiSelection( )
|
||||
|
||||
UINT32 UIHandleRubberBandOnTerrain( UI_EVENT *pUIEvent )
|
||||
{
|
||||
SOLDIERTYPE * pSoldier;
|
||||
INT32 cnt;
|
||||
INT16 sScreenX, sScreenY;
|
||||
INT32 iTemp;
|
||||
SGPRect aRect;
|
||||
BOOLEAN fAtLeastOne = FALSE;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID cnt;
|
||||
INT16 sScreenX, sScreenY;
|
||||
INT32 iTemp;
|
||||
SGPRect aRect;
|
||||
BOOLEAN fAtLeastOne = FALSE;
|
||||
|
||||
guiNewUICursor = NO_UICURSOR;
|
||||
//SetCurrentCursorFromDatabase( VIDEO_NO_CURSOR );
|
||||
@@ -6120,8 +6127,9 @@ UINT32 UIHandleRubberBandOnTerrain( UI_EVENT *pUIEvent )
|
||||
|
||||
// ATE:Check at least for one guy that's in point!
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// Check if this guy is OK to control....
|
||||
if ( OK_CONTROLLABLE_MERC( pSoldier ) && !( pSoldier->flags.uiStatusFlags & ( SOLDIER_VEHICLE | SOLDIER_PASSENGER | SOLDIER_DRIVER ) ) )
|
||||
{
|
||||
@@ -6148,9 +6156,9 @@ UINT32 UIHandleRubberBandOnTerrain( UI_EVENT *pUIEvent )
|
||||
|
||||
// ATE: Now loop through our guys and see if any fit!
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt, pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
|
||||
pSoldier = cnt;
|
||||
// Check if this guy is OK to control....
|
||||
if ( OK_CONTROLLABLE_MERC( pSoldier ) && !( pSoldier->flags.uiStatusFlags & ( SOLDIER_VEHICLE | SOLDIER_PASSENGER | SOLDIER_DRIVER ) ) )
|
||||
{
|
||||
|
||||
@@ -1818,16 +1818,16 @@ void HandleFactForNPCUnescorted( UINT8 ubNPC )
|
||||
|
||||
void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum )
|
||||
{
|
||||
INT32 cnt;
|
||||
SOLDIERTYPE *pSoldier, *pSoldier2;
|
||||
INT8 bNumDone = 0;
|
||||
INT32 sGridNo = NOWHERE, sAdjustedGridNo;
|
||||
INT8 bItemIn;
|
||||
UINT8 ubDesiredMercDir;
|
||||
EXITGRID ExitGrid;
|
||||
INT32 iRandom = 0;
|
||||
UINT8 ubMineIndex;
|
||||
INT16 sX, sY, sX2, sY2;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pSoldier, *pSoldier2;
|
||||
INT8 bNumDone = 0;
|
||||
INT32 sGridNo = NOWHERE, sAdjustedGridNo;
|
||||
INT8 bItemIn;
|
||||
UINT8 ubDesiredMercDir;
|
||||
EXITGRID ExitGrid;
|
||||
INT32 iRandom = 0;
|
||||
UINT8 ubMineIndex;
|
||||
INT16 sX, sY, sX2, sY2;
|
||||
|
||||
pSoldier2 = NULL;
|
||||
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, L"Handling %s, action %d at %ld", gMercProfiles[ ubTargetNPC ].zNickname, usActionCode, GetJA2Clock() );
|
||||
@@ -1880,8 +1880,9 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
// Squad here to search for...
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// Are we in this sector, On the current squad?
|
||||
if ( pSoldier->bActive && pSoldier->stats.bLife >= OKLIFE && pSoldier->bInSector && pSoldier->bAssignment == CurrentSquad( ) )
|
||||
{
|
||||
@@ -2170,8 +2171,9 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// Are we in this sector, On the current squad?
|
||||
if ( pSoldier->bActive && pSoldier->stats.bLife >= OKLIFE && pSoldier->bInSector )
|
||||
{
|
||||
@@ -3726,8 +3728,9 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
{
|
||||
//HOSPITAL_PATIENT_DISTANCE
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// Are we in this sector, On the current squad?
|
||||
if ( pSoldier->bActive && pSoldier->bInSector && pSoldier->stats.bLife > 0 && (pSoldier->stats.bLife < pSoldier->stats.bLifeMax || NumberOfDamagedStats(pSoldier) > 0) && pSoldier->bAssignment != ASSIGNMENT_HOSPITAL && PythSpacesAway( pSoldier->sGridNo, pSoldier2->sGridNo ) < HOSPITAL_PATIENT_DISTANCE )
|
||||
{
|
||||
@@ -4578,9 +4581,9 @@ UINT32 CalcMedicalCost( UINT8 ubId )
|
||||
|
||||
INT32 sGridNo = pNPC->sGridNo;
|
||||
|
||||
for ( UINT32 cnt = gTacticalStatus.Team[gbPlayerNum].bFirstID; cnt <= gTacticalStatus.Team[gbPlayerNum].bLastID; ++cnt )
|
||||
for ( SoldierID cnt = gTacticalStatus.Team[gbPlayerNum].bFirstID; cnt <= gTacticalStatus.Team[gbPlayerNum].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = MercPtrs[ cnt ];
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector && pSoldier->stats.bLife > 0 && pSoldier->bAssignment != ASSIGNMENT_HOSPITAL )
|
||||
{
|
||||
if ( pSoldier->stats.bLife < pSoldier->stats.bLifeMax || NumberOfDamagedStats(pSoldier) > 0)
|
||||
@@ -4850,13 +4853,14 @@ void DialogueMessageBoxCallBack( UINT8 ubExitValue )
|
||||
{
|
||||
// He tried to lie.....
|
||||
// Find the best conscious merc with a chance....
|
||||
UINT16 cnt;
|
||||
SOLDIERTYPE * pLier = NULL;
|
||||
SOLDIERTYPE * pSoldier;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pLier = NULL;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector && pSoldier->stats.bLife >= OKLIFE && pSoldier->bBreath >= OKBREATH )
|
||||
{
|
||||
if (!pLier || (EffectiveWisdom( pSoldier ) + EffectiveLeadership( pSoldier ) > EffectiveWisdom( pLier ) + EffectiveLeadership( pSoldier ) ) )
|
||||
@@ -5016,13 +5020,13 @@ void DoneFadeInActionBasement( )
|
||||
{
|
||||
// Start conversation, etc
|
||||
SOLDIERTYPE *pSoldier, *pNPCSoldier;
|
||||
INT32 cnt;
|
||||
|
||||
// Look for someone to talk to
|
||||
// look for all mercs on the same team,
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
SoldierID cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// Are we in this sector, On the current squad?
|
||||
if ( pSoldier->bActive && pSoldier->stats.bLife >= OKLIFE && pSoldier->bInSector && pSoldier->bAssignment == CurrentSquad( ) )
|
||||
{
|
||||
|
||||
@@ -591,7 +591,7 @@ void CheckForDisabledForGiveItem( )
|
||||
INT16 sDist;
|
||||
INT32 sDestGridNo;
|
||||
INT8 bDestLevel;
|
||||
INT32 cnt;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID ubSrcSoldier;
|
||||
|
||||
@@ -614,8 +614,9 @@ void CheckForDisabledForGiveItem( )
|
||||
{
|
||||
// Go through each merc and see if there is one closeby....
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->stats.bLife >= OKLIFE && !( pSoldier->flags.uiStatusFlags & SOLDIER_VEHICLE ) && !AM_A_ROBOT( pSoldier ) && pSoldier->bInSector && IsMercOnCurrentSquad( pSoldier ) )
|
||||
{
|
||||
sDist = PythSpacesAway( gpSMCurrentMerc->sGridNo, pSoldier->sGridNo );
|
||||
@@ -4511,9 +4512,9 @@ void BtnDropPackCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
if ( _KeyDown( SHIFT ) )
|
||||
{
|
||||
INT8 bAssignment = gpSMCurrentMerc->bAssignment;
|
||||
for( int x = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; x <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; x++ )
|
||||
for( SoldierID x = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; x <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; ++x )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[x];
|
||||
SOLDIERTYPE *pSoldier = x;
|
||||
/* Is DropPackFlag currently false and is there something in the backpack pocket? If so, we haven't
|
||||
dropped a pack yet and apparently want to*/
|
||||
if(pSoldier->bAssignment == bAssignment && pSoldier->inv[BPACKPOCKPOS].exists() == true && !pSoldier->flags.DropPackFlag)
|
||||
@@ -6437,13 +6438,12 @@ void CheckForFacePanelStartAnims( SOLDIERTYPE *pSoldier, INT16 sPanelX, INT16 sP
|
||||
void FinishAnySkullPanelAnimations( )
|
||||
{
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
INT32 cnt2;
|
||||
|
||||
cnt2 = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
SoldierID cnt2 = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
// run through list
|
||||
for ( pTeamSoldier = MercPtrs[ cnt2 ]; cnt2 <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt2++,pTeamSoldier++ )
|
||||
for ( ; cnt2 <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt2 )
|
||||
{
|
||||
pTeamSoldier = cnt2;
|
||||
if ( pTeamSoldier->bActive && pTeamSoldier->stats.bLife == 0 )
|
||||
{
|
||||
if ( pTeamSoldier->flags.fUIdeadMerc || pTeamSoldier->flags.fClosePanelToDie )
|
||||
@@ -6455,7 +6455,6 @@ void FinishAnySkullPanelAnimations( )
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void HandlePanelFaceAnimations( SOLDIERTYPE *pSoldier )
|
||||
|
||||
@@ -5209,7 +5209,6 @@ void UpdateEnemyUIBar( )
|
||||
void InitPlayerUIBar( BOOLEAN fInterrupt )
|
||||
{
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
INT32 cnt = 0;
|
||||
INT16 bNumOK = 0, bNumNotOK = 0;
|
||||
|
||||
if ( !gGameOptions.fTurnTimeLimit )
|
||||
@@ -5235,11 +5234,12 @@ void InitPlayerUIBar( BOOLEAN fInterrupt )
|
||||
gTacticalStatus.usTactialTurnLimitCounter = 0;
|
||||
|
||||
// IF IT'S THE SELECTED GUY, MAKE ANOTHER SELECTED!
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
// Are we active and in sector.....
|
||||
if ( pTeamSoldier->bActive && pTeamSoldier->bInSector )
|
||||
{
|
||||
|
||||
+4
-3
@@ -15332,10 +15332,11 @@ OBJECTTYPE* GetExternalFeedingObject(SOLDIERTYPE* pSoldier, OBJECTTYPE * pObject
|
||||
|
||||
// loop over other members of our team in this sector. This includes ourself, as our gun can be fed from a belt in our inventory
|
||||
SOLDIERTYPE* pTeamSoldier = NULL;
|
||||
INT32 cnt = gTacticalStatus.Team[ pSoldier->bTeam ].bFirstID;
|
||||
INT32 lastid = gTacticalStatus.Team[ pSoldier->bTeam ].bLastID;
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt < lastid; ++cnt, ++pTeamSoldier)
|
||||
SoldierID cnt = gTacticalStatus.Team[ pSoldier->bTeam ].bFirstID;
|
||||
SoldierID lastid = gTacticalStatus.Team[ pSoldier->bTeam ].bLastID;
|
||||
for ( ; cnt < lastid; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
// check if teamsoldier exists in this sector
|
||||
if ( !pTeamSoldier || !pTeamSoldier->bActive || !pTeamSoldier->bInSector || pTeamSoldier->stats.bLife < OKLIFE || pTeamSoldier->sSectorX != pSoldier->sSectorX || pTeamSoldier->sSectorY != pSoldier->sSectorY || pTeamSoldier->bSectorZ != pSoldier->bSectorZ )
|
||||
continue;
|
||||
|
||||
+27
-25
@@ -1390,11 +1390,11 @@ DOOR_STATUS *GetDoorStatus( INT32 sGridNo )
|
||||
|
||||
BOOLEAN AllMercsLookForDoor( INT32 sGridNo, BOOLEAN fUpdateValue )
|
||||
{
|
||||
INT32 cnt, cnt2;
|
||||
INT8 bDirs[ 8 ] = { NORTH, SOUTH, EAST, WEST, NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST };
|
||||
SOLDIERTYPE *pSoldier;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
INT32 usNewGridNo;
|
||||
INT32 cnt2;
|
||||
INT8 bDirs[ 8 ] = { NORTH, SOUTH, EAST, WEST, NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST };
|
||||
SOLDIERTYPE *pSoldier;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
INT32 usNewGridNo;
|
||||
|
||||
// Get door
|
||||
pDoorStatus = GetDoorStatus( sGridNo );
|
||||
@@ -1405,11 +1405,12 @@ BOOLEAN AllMercsLookForDoor( INT32 sGridNo, BOOLEAN fUpdateValue )
|
||||
}
|
||||
|
||||
// IF IT'S THE SELECTED GUY, MAKE ANOTHER SELECTED!
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
// ATE: Ok, lets check for some basic things here!
|
||||
if ( pSoldier->stats.bLife >= OKLIFE && !TileIsOutOfBounds(pSoldier->sGridNo) && pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
@@ -2070,11 +2071,10 @@ BOOLEAN LoadKeyTableFromSaveedGameFile( HWFILE hFile, UINT32 uiSaveGameVersion )
|
||||
|
||||
void ExamineDoorsOnEnteringSector( )
|
||||
{
|
||||
INT32 cnt;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
BOOLEAN fOK = FALSE;
|
||||
INT8 bTownId;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
BOOLEAN fOK = FALSE;
|
||||
INT8 bTownId;
|
||||
|
||||
// OK, only do this if conditions are met....
|
||||
// If this is any omerta tow, don't do it...
|
||||
@@ -2093,10 +2093,11 @@ void ExamineDoorsOnEnteringSector( )
|
||||
|
||||
// there is at least one human being in that sector.
|
||||
// check for civ
|
||||
cnt = gTacticalStatus.Team[ ENEMY_TEAM ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ ENEMY_TEAM ].bFirstID;
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ LAST_TEAM ].bLastID; cnt++ ,pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ LAST_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive )
|
||||
{
|
||||
if ( pSoldier->bInSector )
|
||||
@@ -2110,7 +2111,7 @@ void ExamineDoorsOnEnteringSector( )
|
||||
// Let's do it!
|
||||
if ( fOK )
|
||||
{
|
||||
for ( cnt = 0; cnt < gubNumDoorStatus; cnt++ )
|
||||
for ( UINT8 cnt = 0; cnt < gubNumDoorStatus; cnt++ )
|
||||
{
|
||||
pDoorStatus = &( gpDoorStatus[ cnt ] );
|
||||
|
||||
@@ -2126,12 +2127,11 @@ void ExamineDoorsOnEnteringSector( )
|
||||
|
||||
void HandleDoorsChangeWhenEnteringSectorCurrentlyLoaded( )
|
||||
{
|
||||
INT32 cnt;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
BOOLEAN fOK = FALSE;
|
||||
INT32 iNumNewMercs = 0;
|
||||
INT8 bTownId;
|
||||
DOOR_STATUS *pDoorStatus;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
BOOLEAN fOK = FALSE;
|
||||
INT32 iNumNewMercs = 0;
|
||||
INT8 bTownId;
|
||||
|
||||
// OK, only do this if conditions are met....
|
||||
|
||||
@@ -2145,7 +2145,7 @@ void HandleDoorsChangeWhenEnteringSectorCurrentlyLoaded( )
|
||||
|
||||
// 1 ) there is at least one human being in that sector.
|
||||
// check for civ
|
||||
cnt = gTacticalStatus.Team[ ENEMY_TEAM ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ ENEMY_TEAM ].bFirstID;
|
||||
|
||||
// Check time...
|
||||
if ( ( GetWorldTotalMin( ) - gTacticalStatus.uiTimeSinceLastInTactical ) < 30 )
|
||||
@@ -2154,8 +2154,9 @@ void HandleDoorsChangeWhenEnteringSectorCurrentlyLoaded( )
|
||||
}
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ LAST_TEAM ].bLastID; cnt++ ,pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ LAST_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector )
|
||||
{
|
||||
fOK = TRUE;
|
||||
@@ -2165,8 +2166,9 @@ void HandleDoorsChangeWhenEnteringSectorCurrentlyLoaded( )
|
||||
|
||||
// Loop through our team now....
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++ ,pSoldier++ )
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive && pSoldier->bInSector && gbMercIsNewInThisSector[ cnt ] )
|
||||
{
|
||||
iNumNewMercs++;
|
||||
@@ -2182,7 +2184,7 @@ void HandleDoorsChangeWhenEnteringSectorCurrentlyLoaded( )
|
||||
// Let's do it!
|
||||
if ( fOK )
|
||||
{
|
||||
for ( cnt = 0; cnt < gubNumDoorStatus; cnt++ )
|
||||
for ( UINT8 cnt = 0; cnt < gubNumDoorStatus; cnt++ )
|
||||
{
|
||||
pDoorStatus = &( gpDoorStatus[ cnt ] );
|
||||
|
||||
|
||||
+14
-13
@@ -673,10 +673,10 @@ BOOLEAN IsTheSoldierAliveAndConcious( SOLDIERTYPE *pSoldier )
|
||||
|
||||
UINT16 NumberOfMercsOnPlayerTeam()
|
||||
{
|
||||
UINT16 cnt;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
UINT16 bLastTeamID;
|
||||
UINT16 ubCount=0;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
SoldierID bLastTeamID;
|
||||
UINT16 ubCount=0;
|
||||
|
||||
// Set locator to first merc
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
@@ -685,8 +685,9 @@ UINT16 NumberOfMercsOnPlayerTeam()
|
||||
if (! MercPtrs[cnt])
|
||||
return 0;
|
||||
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= bLastTeamID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= bLastTeamID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
AssertNotNIL(pSoldier);
|
||||
|
||||
//if the is active, and is not a vehicle
|
||||
@@ -702,9 +703,9 @@ UINT16 NumberOfMercsOnPlayerTeam()
|
||||
|
||||
void HandleMercArrivesQuotes( SOLDIERTYPE *pSoldier )
|
||||
{
|
||||
UINT16 cnt, usLastTeamID;
|
||||
INT8 bHated;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
SoldierID cnt, usLastTeamID;
|
||||
INT8 bHated;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
#ifdef JA2UB
|
||||
//if we are at the begining of the game going through the initial heli scequence
|
||||
if( pSoldier->fWaitingToGetupFromJA25Start )
|
||||
@@ -730,8 +731,9 @@ void HandleMercArrivesQuotes( SOLDIERTYPE *pSoldier )
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
usLastTeamID = gTacticalStatus.Team[ gbPlayerNum ].bLastID;
|
||||
//loop though all the mercs
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= usLastTeamID; ++cnt, ++pTeamSoldier)
|
||||
for ( ; cnt <= usLastTeamID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( pTeamSoldier->bActive )
|
||||
{
|
||||
if ( pTeamSoldier->ubWhatKindOfMercAmI == MERC_TYPE__AIM_MERC )
|
||||
@@ -819,14 +821,13 @@ UINT32 GetMercArrivalTimeOfDay( )
|
||||
|
||||
void UpdateAnyInTransitMercsWithGlobalArrivalSector( )
|
||||
{
|
||||
INT32 cnt;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
// look for all mercs on the same team,
|
||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; cnt++,pSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
||||
{
|
||||
pSoldier = cnt;
|
||||
if ( pSoldier->bActive )
|
||||
{
|
||||
if ( pSoldier->bAssignment == IN_TRANSIT )
|
||||
|
||||
@@ -176,12 +176,11 @@ void ResetMilitia()
|
||||
void RemoveMilitiaFromTactical()
|
||||
{
|
||||
SOLDIERINITNODE *curr;
|
||||
INT32 i;
|
||||
for( i = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID; i <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; i++ )
|
||||
for( SoldierID id = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID; id <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++id )
|
||||
{
|
||||
if( MercPtrs[ i ]->bActive )
|
||||
if( id->bActive )
|
||||
{
|
||||
TacticalRemoveSoldier( MercPtrs[ i ]->ubID );
|
||||
TacticalRemoveSoldier( id );
|
||||
}
|
||||
}
|
||||
curr = gSoldierInitHead;
|
||||
@@ -327,7 +326,6 @@ void PrepareMilitiaForTactical( BOOLEAN fPrepareAll)
|
||||
|
||||
void HandleMilitiaPromotions( void )
|
||||
{
|
||||
UINT16 cnt;
|
||||
SOLDIERTYPE* pTeamSoldier;
|
||||
|
||||
gbGreenToElitePromotions = 0;
|
||||
@@ -335,10 +333,11 @@ void HandleMilitiaPromotions( void )
|
||||
gbRegToElitePromotions = 0;
|
||||
gbMilitiaPromotions = 0;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
SoldierID cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt, ++pTeamSoldier)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( pTeamSoldier->bActive && pTeamSoldier->bInSector && pTeamSoldier->stats.bLife > 0 )
|
||||
{
|
||||
// Flugente: take care of promotions and individual militia update
|
||||
@@ -1422,13 +1421,14 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_ATTACK ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1459,13 +1459,14 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_HOLD ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1495,14 +1496,15 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_RETREAT ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
INT16 sActionGridNo;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1558,15 +1560,16 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_COMETOME ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
UINT8 ubDirection;
|
||||
INT32 sActionGridNo, sGridNo, sAdjustedGridNo;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1615,14 +1618,15 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_SPREAD ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
INT32 sActionGridNo;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1668,13 +1672,14 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_GETDOWN ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1706,13 +1711,14 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_CROUCH ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt, ++pTeamSoldier)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
@@ -1744,15 +1750,16 @@ void MilitiaControlMenuBtnCallBack( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
case( MILCON_MENU_ALL_TAKE_COVER ):
|
||||
if (fAllowSectorOrder)
|
||||
{
|
||||
UINT16 cnt;
|
||||
SoldierID cnt;
|
||||
INT16 sActionGridNo;
|
||||
INT32 iDummy;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
|
||||
cnt = gTacticalStatus.Team[ MILITIA_TEAM ].bFirstID;
|
||||
|
||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; cnt++, pTeamSoldier++)
|
||||
for ( ; cnt <= gTacticalStatus.Team[ MILITIA_TEAM ].bLastID; ++cnt )
|
||||
{
|
||||
pTeamSoldier = cnt;
|
||||
if ( (pTeamSoldier->bActive) && (pTeamSoldier->bInSector) && (pTeamSoldier->stats.bLife >= OKLIFE) )
|
||||
{
|
||||
// sevenfm: stop any AI
|
||||
|
||||
+9
-8
@@ -253,12 +253,13 @@ void DecayStrategicMorale( SOLDIERTYPE * pSoldier )
|
||||
void DecayTacticalMoraleModifiers( void )
|
||||
{
|
||||
SOLDIERTYPE * pSoldier;
|
||||
UINT16 ubLoop, ubLoop2;
|
||||
SoldierID ubLoop, ubLoop2;
|
||||
BOOLEAN fHandleNervous;
|
||||
|
||||
ubLoop = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ ubLoop ]; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ubLoop++, pSoldier++ )
|
||||
for ( ; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++ubLoop )
|
||||
{
|
||||
pSoldier = ubLoop;
|
||||
//if the merc is active, in Arulco
|
||||
// CJC: decay modifiers while asleep! or POW!
|
||||
if ( pSoldier->bActive && pSoldier->ubProfile != NO_PROFILE &&
|
||||
@@ -313,10 +314,10 @@ void DecayTacticalMoraleModifiers( void )
|
||||
{
|
||||
// look for anyone else in same sector
|
||||
fHandleNervous = TRUE;
|
||||
for ( ubLoop2 = gTacticalStatus.Team[ gbPlayerNum ].bFirstID; ubLoop2 <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ubLoop2++ )
|
||||
for ( ubLoop2 = gTacticalStatus.Team[ gbPlayerNum ].bFirstID; ubLoop2 <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++ubLoop2 )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ubLoop2];
|
||||
if ( pSoldier != pSoldier && pSoldier->bActive && pSoldier->sSectorX == pSoldier->sSectorX && pSoldier->sSectorY == pSoldier->sSectorY && pSoldier->bSectorZ == pSoldier->bSectorZ )
|
||||
SOLDIERTYPE *pSoldier2 = ubLoop2;
|
||||
if ( pSoldier2 != pSoldier && pSoldier2->bActive && pSoldier2->sSectorX == pSoldier->sSectorX && pSoldier2->sSectorY == pSoldier->sSectorY && pSoldier2->bSectorZ == pSoldier->bSectorZ )
|
||||
{
|
||||
// found someone!
|
||||
fHandleNervous = FALSE;
|
||||
@@ -361,11 +362,11 @@ void DecayTacticalMoraleModifiers( void )
|
||||
void DecayStrategicMoraleModifiers( void )
|
||||
{
|
||||
SOLDIERTYPE * pSoldier;
|
||||
UINT16 ubLoop;
|
||||
SoldierID ubLoop = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
|
||||
ubLoop = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||
for ( pSoldier = MercPtrs[ ubLoop ]; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ubLoop++, pSoldier++ )
|
||||
for ( ; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++ubLoop )
|
||||
{
|
||||
pSoldier = ubLoop;
|
||||
//if the merc is active, in Arulco
|
||||
// CJC: decay modifiers while asleep! or POW!
|
||||
if ( pSoldier->bActive && pSoldier->ubProfile != NO_PROFILE &&
|
||||
|
||||
Reference in New Issue
Block a user