- bug fix: Space selects next squad: next merc was not selected when in interrupt

- changed scope ranges to be % of base visible range



git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@170 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
lalien
2006-06-05 01:03:17 +00:00
parent d0ea612fb3
commit 7da7984951
5 changed files with 46 additions and 45 deletions
+20 -22
View File
@@ -5354,41 +5354,39 @@ UINT8 FindNextMercInTeamPanel( SOLDIERTYPE *pSoldier, BOOLEAN fGoodForLessOKLife
}
}
if ( !gGameSettings.fOptions[ TOPTION_SPACE_SELECTS_NEXT_SQUAD ] )
// none found,
// Now loop back
for ( cnt = 0; cnt < bFirstID; cnt++ )
{
// none found,
// Now loop back
for ( cnt = 0; cnt < bFirstID; cnt++ )
if ( gTeamPanel[ cnt ].fOccupied )
{
if ( gTeamPanel[ cnt ].fOccupied )
pTeamSoldier = MercPtrs[ gTeamPanel[ cnt ].ubID ];
if ( fOnlyRegularMercs )
{
pTeamSoldier = MercPtrs[ gTeamPanel[ cnt ].ubID ];
if ( fOnlyRegularMercs )
if ( pTeamSoldier->bActive && ( AM_AN_EPC( pTeamSoldier ) || AM_A_ROBOT( pTeamSoldier ) ) )
{
if ( pTeamSoldier->bActive && ( AM_AN_EPC( pTeamSoldier ) || AM_A_ROBOT( pTeamSoldier ) ) )
{
continue;
}
continue;
}
}
if ( fGoodForLessOKLife )
if ( fGoodForLessOKLife )
{
if ( pTeamSoldier->bLife > 0 && pTeamSoldier->bActive && pTeamSoldier->bInSector && pTeamSoldier->bTeam == gbPlayerNum && pTeamSoldier->bAssignment < ON_DUTY && OK_INTERRUPT_MERC( pTeamSoldier ) && pSoldier->bAssignment == pTeamSoldier->bAssignment )
{
if ( pTeamSoldier->bLife > 0 && pTeamSoldier->bActive && pTeamSoldier->bInSector && pTeamSoldier->bTeam == gbPlayerNum && pTeamSoldier->bAssignment < ON_DUTY && OK_INTERRUPT_MERC( pTeamSoldier ) && pSoldier->bAssignment == pTeamSoldier->bAssignment )
{
return( (UINT8)gTeamPanel[ cnt ].ubID );
}
return( (UINT8)gTeamPanel[ cnt ].ubID );
}
else
}
else
{
if ( OK_CONTROLLABLE_MERC( pTeamSoldier) && OK_INTERRUPT_MERC( pTeamSoldier ) && pSoldier->bAssignment == pTeamSoldier->bAssignment )
{
if ( OK_CONTROLLABLE_MERC( pTeamSoldier) && OK_INTERRUPT_MERC( pTeamSoldier ) && pSoldier->bAssignment == pTeamSoldier->bAssignment )
{
return( (UINT8)gTeamPanel[ cnt ].ubID );
}
return( (UINT8)gTeamPanel[ cnt ].ubID );
}
}
}
}
// IF we are here, keep as we always were!
return( pSoldier->ubID );
}