Use SoldierID

This commit is contained in:
Asdow
2024-12-01 18:23:52 +02:00
parent e59d915e58
commit bfb724eab9
36 changed files with 1165 additions and 1162 deletions
+16 -16
View File
@@ -3283,13 +3283,12 @@ void BillyBlocksDoorCallback( void )
BOOLEAN HookerInRoom( UINT16 usRoom )
{
//DBrot: More Rooms
UINT16 ubLoop;//, ubTempRoom;
UINT16 usTempRoom;
SOLDIERTYPE * pSoldier;
for ( ubLoop = gTacticalStatus.Team[ CIV_TEAM ].bFirstID; ubLoop <= gTacticalStatus.Team[ CIV_TEAM ].bLastID; ubLoop++ )
for ( SoldierID ubLoop = gTacticalStatus.Team[ CIV_TEAM ].bFirstID; ubLoop <= gTacticalStatus.Team[ CIV_TEAM ].bLastID; ++ubLoop )
{
pSoldier = MercPtrs[ ubLoop ];
pSoldier = ubLoop;
if ( pSoldier->bActive && pSoldier->bInSector && pSoldier->stats.bLife >= OKLIFE && pSoldier->aiData.bNeutral && pSoldier->ubBodyType == MINICIV )
{
@@ -4292,7 +4291,7 @@ void HandleExplosionQueue( void )
if (gfExplosionQueueMayHaveChangedSight)
{
UINT16 ubLoop;
SoldierID ubLoop;
SOLDIERTYPE * pTeamSoldier;
// set variable so we may at least have someone to resolve interrupts vs
@@ -4301,8 +4300,9 @@ void HandleExplosionQueue( void )
// call fov code
ubLoop = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
for ( pTeamSoldier = MercPtrs[ ubLoop ]; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ubLoop++, pTeamSoldier++ )
for ( ; ubLoop <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++ubLoop )
{
pTeamSoldier = ubLoop;
if ( pTeamSoldier->bActive && pTeamSoldier->bInSector )
{
RevealRoofsAndItems( pTeamSoldier, TRUE, FALSE, pTeamSoldier->pathing.bLevel, FALSE );
@@ -4442,17 +4442,17 @@ void HandleExplosionWarningAnimations( )
// soldiers
if (!fShow)
{
for (UINT32 ubID = gTacticalStatus.Team[OUR_TEAM].bFirstID; ubID <= gTacticalStatus.Team[CIV_TEAM].bLastID; ++ubID)
for ( SoldierID ubID = gTacticalStatus.Team[OUR_TEAM].bFirstID; ubID <= gTacticalStatus.Team[CIV_TEAM].bLastID; ++ubID)
{
if (ubID != pSoldier->ubID &&
MercPtrs[ubID] &&
MercPtrs[ubID]->sGridNo == sSpot &&
MercPtrs[ubID]->bVisible == TRUE &&
MercPtrs[ubID]->pathing.bLevel == bLevel &&
gAnimControl[MercPtrs[ubID]->usAnimState].ubEndHeight == ANIM_PRONE &&
!Water(MercPtrs[ubID]->sGridNo, MercPtrs[ubID]->pathing.bLevel) &&
ubID != NOBODY &&
ubID->sGridNo == sSpot &&
ubID->bVisible == TRUE &&
ubID->pathing.bLevel == bLevel &&
gAnimControl[ubID->usAnimState].ubEndHeight == ANIM_PRONE &&
!Water(ubID->sGridNo, ubID->pathing.bLevel) &&
pSoldier->ubBodyType <= REGFEMALE &&
(MercPtrs[ubID]->bTeam == pSoldier->bTeam || MercPtrs[ubID]->IsUnconscious() || MercPtrs[ubID]->stats.bLife < OKLIFE))
(ubID->bTeam == pSoldier->bTeam || ubID->IsUnconscious() || ubID->stats.bLife < OKLIFE))
{
fShow = TRUE;
}
@@ -5308,7 +5308,6 @@ void UpdateSAMDoneRepair( INT16 sSectorX, INT16 sSectorY, INT16 sSectorZ )
void HandleBuldingDestruction( INT32 sGridNo, SoldierID ubOwner )
{
SOLDIERTYPE * pSoldier;
UINT16 cnt;
if ( ubOwner == NOBODY )
{
@@ -5324,9 +5323,10 @@ void HandleBuldingDestruction( INT32 sGridNo, SoldierID ubOwner )
if ( sGridNo == NOWHERE || !InARoom( sGridNo, NULL ) )
return;
cnt = gTacticalStatus.Team[ CIV_TEAM ].bFirstID;
for ( pSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ CIV_TEAM ].bLastID; cnt++ ,pSoldier++ )
SoldierID cnt = gTacticalStatus.Team[ CIV_TEAM ].bFirstID;
for ( ; cnt <= gTacticalStatus.Team[ CIV_TEAM ].bLastID; ++cnt )
{
pSoldier = cnt;
if ( pSoldier->bActive && pSoldier->bInSector && pSoldier->stats.bLife && pSoldier->aiData.bNeutral )
{
if ( pSoldier->ubProfile != NO_PROFILE )
+4 -3
View File
@@ -1336,10 +1336,11 @@ INT32 RandomGridNo()
BOOLEAN GridNoNearPlayerMercs( INT32 sGridNo, INT16 sRadius )
{
SOLDIERTYPE* pTeamSoldier = NULL;
INT32 cnt = gTacticalStatus.Team[ OUR_TEAM ].bFirstID;
INT32 lastid = gTacticalStatus.Team[ OUR_TEAM ].bLastID;
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt < lastid; ++cnt, ++pTeamSoldier)
SoldierID cnt = gTacticalStatus.Team[ OUR_TEAM ].bFirstID;
SoldierID lastid = gTacticalStatus.Team[ OUR_TEAM ].bLastID;
for ( ; cnt < lastid; ++cnt )
{
pTeamSoldier = cnt;
if ( pTeamSoldier && pTeamSoldier->bActive && pTeamSoldier->bInSector )
{
if ( PythSpacesAway(sGridNo, pTeamSoldier->sGridNo) < sRadius )
+7 -7
View File
@@ -227,7 +227,7 @@ void InitTacticalPlacementGUI()
{
islocked=0;//hayden
VOBJECT_DESC VObjectDesc;
INT32 i, xp, yp;
INT32 xp, yp;
UINT8 ubFaceIndex;
gfTacticalPlacementGUIActive = TRUE;
gfTacticalPlacementGUIDirty = TRUE;
@@ -325,9 +325,9 @@ void InitTacticalPlacementGUI()
//First pass: Count the number of mercs that are going to be placed by the player.
// This determines the size of the array we will allocate.
giPlacements = 0;
for( i = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; i <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; ++i )
for( SoldierID i = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; i <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; ++i )
{
SOLDIERTYPE *pSoldier = MercPtrs[i];
SOLDIERTYPE *pSoldier = i;
if( pSoldier->bActive && !pSoldier->flags.fBetweenSectors &&
CurrentBattleSectorIs( pSoldier->sSectorX, pSoldier->sSectorY, pSoldier->bSectorZ ) &&
!( pSoldier->flags.uiStatusFlags & ( SOLDIER_VEHICLE ) ) && // ATE Ignore vehicles
@@ -345,9 +345,9 @@ void InitTacticalPlacementGUI()
Assert( gMercPlacement );
//Second pass: Assign the mercs to their respective slots.
giPlacements = 0;
for( i = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; i <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; ++i )
for( SoldierID i = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; i <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; ++i )
{
SOLDIERTYPE *pSoldier = MercPtrs[i];
SOLDIERTYPE *pSoldier = i;
if( pSoldier->bActive && pSoldier->stats.bLife && !pSoldier->flags.fBetweenSectors &&
CurrentBattleSectorIs( pSoldier->sSectorX, pSoldier->sSectorY, pSoldier->bSectorZ ) &&
pSoldier->bAssignment != ASSIGNMENT_POW &&
@@ -426,7 +426,7 @@ void InitTacticalPlacementGUI()
}
//add all the faces now
for( i = 0; i < giPlacements; ++i )
for( INT32 i = 0; i < giPlacements; ++i )
{
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMFILE;
@@ -483,7 +483,7 @@ void InitTacticalPlacementGUI()
{
ButtonList[ iTPButtons[ GROUP_BUTTON ] ]->uiFlags |= BUTTON_CLICKED_ON;
for( i = 0; i < giPlacements; ++i )
for( INT32 i = 0; i < giPlacements; ++i )
{ //go from the currently selected soldier to the end
if( !gMercPlacement[ i ].fPlaced )
{ //Found an unplaced merc. Select him.