diff --git a/Tactical/Handle UI.cpp b/Tactical/Handle UI.cpp index fcae5d59..f6ed976f 100644 --- a/Tactical/Handle UI.cpp +++ b/Tactical/Handle UI.cpp @@ -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 ) ) ) { diff --git a/Tactical/Interface Dialogue.cpp b/Tactical/Interface Dialogue.cpp index a47e6402..65fbf560 100644 --- a/Tactical/Interface Dialogue.cpp +++ b/Tactical/Interface Dialogue.cpp @@ -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( ) ) { diff --git a/Tactical/Interface Panels.cpp b/Tactical/Interface Panels.cpp index 8f039637..b723ab93 100644 --- a/Tactical/Interface Panels.cpp +++ b/Tactical/Interface Panels.cpp @@ -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 ) diff --git a/Tactical/Interface.cpp b/Tactical/Interface.cpp index 615cec5a..b25d4c7a 100644 --- a/Tactical/Interface.cpp +++ b/Tactical/Interface.cpp @@ -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 ) { diff --git a/Tactical/Items.cpp b/Tactical/Items.cpp index 70de1d87..c88fd215 100644 --- a/Tactical/Items.cpp +++ b/Tactical/Items.cpp @@ -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; diff --git a/Tactical/Keys.cpp b/Tactical/Keys.cpp index b8dc66e4..38171f5f 100644 --- a/Tactical/Keys.cpp +++ b/Tactical/Keys.cpp @@ -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 ] ); diff --git a/Tactical/Merc Hiring.cpp b/Tactical/Merc Hiring.cpp index 9cc5525b..a1db1e9d 100644 --- a/Tactical/Merc Hiring.cpp +++ b/Tactical/Merc Hiring.cpp @@ -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 ) diff --git a/Tactical/Militia Control.cpp b/Tactical/Militia Control.cpp index e5fad2d8..0986c867 100644 --- a/Tactical/Militia Control.cpp +++ b/Tactical/Militia Control.cpp @@ -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 diff --git a/Tactical/Morale.cpp b/Tactical/Morale.cpp index bd2924cb..6a3fcc85 100644 --- a/Tactical/Morale.cpp +++ b/Tactical/Morale.cpp @@ -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 &&