mirror of
https://github.com/1dot13/source.git
synced 2026-09-02 14:36:06 +02:00
Use SoldierID
This commit is contained in:
@@ -163,7 +163,7 @@ BOOLEAN DisplayOrderGrid( UINT8 ubGridNumber, UINT8 ubMercID );
|
|||||||
INT8 GetNumberOfHireMercsStartingFromID( UINT8 ubStartMercID );
|
INT8 GetNumberOfHireMercsStartingFromID( UINT8 ubStartMercID );
|
||||||
//INT32 CalculateInsuranceCost( SOLDIERTYPE *pSoldier, BOOLEAN fHaveInsurance );
|
//INT32 CalculateInsuranceCost( SOLDIERTYPE *pSoldier, BOOLEAN fHaveInsurance );
|
||||||
void InsuranceContractUserTextFieldCallBack( UINT8 ubID, BOOLEAN fEntering );
|
void InsuranceContractUserTextFieldCallBack( UINT8 ubID, BOOLEAN fEntering );
|
||||||
INT8 CountInsurableMercs();
|
UINT16 CountInsurableMercs();
|
||||||
void DisableInsuranceContractNextPreviousbuttons();
|
void DisableInsuranceContractNextPreviousbuttons();
|
||||||
void CreateDestroyInsuranceContractFormButtons( BOOLEAN fCreate);
|
void CreateDestroyInsuranceContractFormButtons( BOOLEAN fCreate);
|
||||||
void HandleAcceptButton( SoldierID ubSoldierID, UINT8 ubFormID );
|
void HandleAcceptButton( SoldierID ubSoldierID, UINT8 ubFormID );
|
||||||
@@ -943,20 +943,17 @@ void SelectInsuranceContractRegionCallBack(MOUSE_REGION * pRegion, INT32 iReason
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
INT8 CountInsurableMercs()
|
UINT16 CountInsurableMercs()
|
||||||
{
|
{
|
||||||
UINT16 cnt;
|
UINT16 bCount = 0;
|
||||||
SOLDIERTYPE *pSoldier;
|
|
||||||
UINT16 bLastTeamID;
|
|
||||||
INT8 bCount=0;
|
|
||||||
|
|
||||||
// Set locator to first merc
|
// Set locator to first merc
|
||||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
SoldierID Soldier = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
||||||
bLastTeamID = gTacticalStatus.Team[ gbPlayerNum ].bLastID;
|
SoldierID bLastTeamID = gTacticalStatus.Team[ gbPlayerNum ].bLastID;
|
||||||
|
|
||||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= bLastTeamID; cnt++,pSoldier++)
|
for ( ; Soldier <= bLastTeamID; ++Soldier)
|
||||||
{
|
{
|
||||||
if (MercIsInsurable(pSoldier))
|
if (MercIsInsurable(Soldier))
|
||||||
{
|
{
|
||||||
bCount++;
|
bCount++;
|
||||||
}
|
}
|
||||||
@@ -1094,33 +1091,29 @@ void HandleAcceptButton( SoldierID ubSoldierID, UINT8 ubFormID )
|
|||||||
// determines if a merc will run out of their insurance contract
|
// determines if a merc will run out of their insurance contract
|
||||||
void DailyUpdateOfInsuredMercs()
|
void DailyUpdateOfInsuredMercs()
|
||||||
{
|
{
|
||||||
INT16 cnt;
|
SoldierID Soldier = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
INT16 bLastTeamID;
|
SoldierID bLastTeamID = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
SOLDIERTYPE *pSoldier;
|
|
||||||
|
|
||||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
for ( ; Soldier <= bLastTeamID; ++Soldier)
|
||||||
bLastTeamID = gTacticalStatus.Team[ gbPlayerNum ].bLastID;
|
|
||||||
|
|
||||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= bLastTeamID; cnt++,pSoldier++)
|
|
||||||
{
|
{
|
||||||
//if the soldier is in the team array
|
//if the soldier is in the team array
|
||||||
if( pSoldier->bActive )
|
if( Soldier->bActive )
|
||||||
{
|
{
|
||||||
//if the merc has life insurance
|
//if the merc has life insurance
|
||||||
if( pSoldier->usLifeInsurance )
|
if( Soldier->usLifeInsurance )
|
||||||
{
|
{
|
||||||
//if the merc wasn't just hired
|
//if the merc wasn't just hired
|
||||||
if( (INT16)GetWorldDay() != pSoldier->iStartOfInsuranceContract )
|
if( (INT16)GetWorldDay() != Soldier->iStartOfInsuranceContract )
|
||||||
{
|
{
|
||||||
//if the contract has run out of time
|
//if the contract has run out of time
|
||||||
if( GetTimeRemainingOnSoldiersInsuranceContract( pSoldier ) <= 0 )
|
if( GetTimeRemainingOnSoldiersInsuranceContract( Soldier ) <= 0 )
|
||||||
{
|
{
|
||||||
//if the soldier isn't dead
|
//if the soldier isn't dead
|
||||||
if( !IsMercDead( pSoldier->ubProfile ) )
|
if( !IsMercDead( Soldier->ubProfile ) )
|
||||||
{
|
{
|
||||||
pSoldier->usLifeInsurance = 0;
|
Soldier->usLifeInsurance = 0;
|
||||||
pSoldier->iTotalLengthOfInsuranceContract = 0;
|
Soldier->iTotalLengthOfInsuranceContract = 0;
|
||||||
pSoldier->iStartOfInsuranceContract = 0;
|
Soldier->iStartOfInsuranceContract = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1254,20 +1247,16 @@ void InsContractNoMercsPopupCallBack( UINT8 bExitValue )
|
|||||||
|
|
||||||
void BuildInsuranceArray()
|
void BuildInsuranceArray()
|
||||||
{
|
{
|
||||||
INT16 cnt;
|
SoldierID Soldier = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
SOLDIERTYPE *pSoldier;
|
SoldierID bLastTeamID = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
INT16 bLastTeamID;
|
|
||||||
|
|
||||||
cnt = gTacticalStatus.Team[ gbPlayerNum ].bFirstID;
|
|
||||||
bLastTeamID = gTacticalStatus.Team[ gbPlayerNum ].bLastID;
|
|
||||||
gsMaxPlayersOnTeam = 0;
|
gsMaxPlayersOnTeam = 0;
|
||||||
|
|
||||||
// store profile #s of all insurable mercs in an array
|
// store profile #s of all insurable mercs in an array
|
||||||
for ( pSoldier = MercPtrs[ cnt ]; cnt <= bLastTeamID; cnt++,pSoldier++)
|
for ( ; Soldier <= bLastTeamID; ++Soldier)
|
||||||
{
|
{
|
||||||
if( MercIsInsurable(pSoldier) )
|
if( MercIsInsurable(Soldier) )
|
||||||
{
|
{
|
||||||
gubInsuranceMercArray[ gsMaxPlayersOnTeam ] = pSoldier->ubProfile;
|
gubInsuranceMercArray[ gsMaxPlayersOnTeam ] = Soldier->ubProfile;
|
||||||
gsMaxPlayersOnTeam++;
|
gsMaxPlayersOnTeam++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1787,14 +1776,13 @@ INT32 CalcStartDayOfInsurance( SOLDIERTYPE *pSoldier )
|
|||||||
|
|
||||||
BOOLEAN AreAnyAimMercsOnTeam( )
|
BOOLEAN AreAnyAimMercsOnTeam( )
|
||||||
{
|
{
|
||||||
SOLDIERTYPE *pSoldier = NULL;
|
SoldierID Soldier = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
|
SoldierID bLastTeamID = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
|
|
||||||
for( int cnt = 0; cnt <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++cnt )
|
for( ; Soldier <= gTacticalStatus.Team[ gbPlayerNum ].bLastID; ++Soldier)
|
||||||
{
|
{
|
||||||
pSoldier = MercPtrs[cnt];
|
|
||||||
|
|
||||||
//check to see if any of the mercs are AIM mercs
|
//check to see if any of the mercs are AIM mercs
|
||||||
if( pSoldier->ubWhatKindOfMercAmI == MERC_TYPE__AIM_MERC )
|
if( Soldier->ubWhatKindOfMercAmI == MERC_TYPE__AIM_MERC )
|
||||||
{
|
{
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -6243,7 +6243,7 @@ void PrintNumberOnTeam( void )
|
|||||||
{
|
{
|
||||||
CHAR16 pString[ 32 ];
|
CHAR16 pString[ 32 ];
|
||||||
SOLDIERTYPE *pSoldier, *pTeamSoldier;
|
SOLDIERTYPE *pSoldier, *pTeamSoldier;
|
||||||
INT32 cnt=0;
|
SoldierID cnt = 0;
|
||||||
INT32 iCounter=0;
|
INT32 iCounter=0;
|
||||||
UINT16 usPosX, usPosY, usFontHeight, usStrLength;
|
UINT16 usPosX, usPosY, usFontHeight, usStrLength;
|
||||||
|
|
||||||
@@ -6256,9 +6256,9 @@ void PrintNumberOnTeam( void )
|
|||||||
// grab number on team
|
// grab number on team
|
||||||
pSoldier = MercPtrs[0];
|
pSoldier = MercPtrs[0];
|
||||||
|
|
||||||
for ( pTeamSoldier = MercPtrs[ cnt ]; cnt <= gTacticalStatus.Team[ pSoldier->bTeam ].bLastID; cnt++, pTeamSoldier++)
|
for ( ; cnt <= gTacticalStatus.Team[ pSoldier->bTeam ].bLastID; ++cnt )
|
||||||
{
|
{
|
||||||
pTeamSoldier = MercPtrs[ cnt ];
|
pTeamSoldier = cnt;
|
||||||
|
|
||||||
if( ( pTeamSoldier->bActive)&&( !( pTeamSoldier->flags.uiStatusFlags & SOLDIER_VEHICLE ) ) )
|
if( ( pTeamSoldier->bActive)&&( !( pTeamSoldier->flags.uiStatusFlags & SOLDIER_VEHICLE ) ) )
|
||||||
{
|
{
|
||||||
|
|||||||
+23
-28
@@ -340,13 +340,12 @@ BOOLEAN EnterMercCompareAnalyze()
|
|||||||
// We fill two dropdowns with all mercs on our team
|
// We fill two dropdowns with all mercs on our team
|
||||||
std::vector<std::pair<INT16, STR16> > mercvector;
|
std::vector<std::pair<INT16, STR16> > mercvector;
|
||||||
|
|
||||||
SOLDIERTYPE* pSoldier = NULL;
|
SoldierID id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
UINT16 id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
SoldierID lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
UINT16 lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
for ( ; id <= lastid; ++id)
|
||||||
for ( pSoldier = MercPtrs[id]; id <= lastid; ++id, pSoldier++ )
|
|
||||||
{
|
{
|
||||||
if ( pSoldier->bActive && pSoldier->ubProfile != NO_PROFILE )
|
if ( id->bActive && id->ubProfile != NO_PROFILE )
|
||||||
mercvector.push_back( std::make_pair( pSoldier->ubProfile, gMercProfiles[pSoldier->ubProfile].zNickname ) );
|
mercvector.push_back( std::make_pair( id->ubProfile, gMercProfiles[id->ubProfile].zNickname ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
DropDownTemplate<DROPDOWNNR_MERCCOMPARE1>::getInstance( ).SetEntries( mercvector );
|
DropDownTemplate<DROPDOWNNR_MERCCOMPARE1>::getInstance( ).SetEntries( mercvector );
|
||||||
@@ -976,17 +975,16 @@ BOOLEAN EnterMercCompareMatrix( )
|
|||||||
// create a map of all current squads with at least 2 members
|
// create a map of all current squads with at least 2 members
|
||||||
std::map<INT16, INT16> squadmap;
|
std::map<INT16, INT16> squadmap;
|
||||||
|
|
||||||
SOLDIERTYPE* pSoldier = NULL;
|
SoldierID id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
UINT16 id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
SoldierID lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
UINT16 lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
for ( ; id <= lastid; ++id )
|
||||||
for ( pSoldier = MercPtrs[id]; id <= lastid; ++id, pSoldier++ )
|
|
||||||
{
|
{
|
||||||
if ( pSoldier->bActive && pSoldier->ubProfile != NO_PROFILE && pSoldier->bAssignment < ON_DUTY )
|
if ( id->bActive && id->ubProfile != NO_PROFILE && id->bAssignment < ON_DUTY )
|
||||||
{
|
{
|
||||||
if ( squadmap.find( pSoldier->bAssignment ) == squadmap.end() )
|
if ( squadmap.find( id->bAssignment ) == squadmap.end() )
|
||||||
squadmap[pSoldier->bAssignment] = 1;
|
squadmap[id->bAssignment] = 1;
|
||||||
else
|
else
|
||||||
++squadmap[pSoldier->bAssignment];
|
++squadmap[id->bAssignment];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1079,15 +1077,14 @@ void RenderMercCompareMatrix( )
|
|||||||
|
|
||||||
// display a table with all squadmembers
|
// display a table with all squadmembers
|
||||||
std::vector<UINT8> squadvector;
|
std::vector<UINT8> squadvector;
|
||||||
SOLDIERTYPE* pSoldier = NULL;
|
SoldierID id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
||||||
UINT16 id = gTacticalStatus.Team[gbPlayerNum].bFirstID;
|
SoldierID lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
||||||
UINT16 lastid = gTacticalStatus.Team[gbPlayerNum].bLastID;
|
for ( ; id <= lastid; ++id )
|
||||||
for ( pSoldier = MercPtrs[id]; id <= lastid; ++id, pSoldier++ )
|
|
||||||
{
|
{
|
||||||
if ( pSoldier->bActive && pSoldier->ubProfile != NO_PROFILE && pSoldier->bAssignment == gSquadToShow )
|
if ( id->bActive && id->ubProfile != NO_PROFILE && id->bAssignment == gSquadToShow )
|
||||||
{
|
{
|
||||||
// remember squamember
|
// remember squamember
|
||||||
squadvector.push_back( pSoldier->ubProfile );
|
squadvector.push_back( id->ubProfile );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1117,13 +1114,12 @@ void RenderMercCompareMatrix( )
|
|||||||
|
|
||||||
for ( std::vector<UINT8>::iterator it = squadvector.begin(); it != itend; ++it )
|
for ( std::vector<UINT8>::iterator it = squadvector.begin(); it != itend; ++it )
|
||||||
{
|
{
|
||||||
INT16 idA = GetSoldierIDFromMercID( (*it) );
|
SoldierID idA = GetSoldierIDFromMercID( (*it) );
|
||||||
|
|
||||||
if ( idA < 0 )
|
if ( idA == NOBODY )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
SOLDIERTYPE* pSoldierA = MercPtrs[idA];
|
SOLDIERTYPE* pSoldierA = idA;
|
||||||
|
|
||||||
if ( !pSoldierA )
|
if ( !pSoldierA )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -1140,9 +1136,9 @@ void RenderMercCompareMatrix( )
|
|||||||
|
|
||||||
for ( std::vector<UINT8>::iterator it2 = squadvector.begin( ); it2 != itend; ++it2 )
|
for ( std::vector<UINT8>::iterator it2 = squadvector.begin( ); it2 != itend; ++it2 )
|
||||||
{
|
{
|
||||||
INT16 idB = GetSoldierIDFromMercID( (*it2) );
|
SoldierID idB = GetSoldierIDFromMercID( (*it2) );
|
||||||
|
|
||||||
if ( idB < 0 )
|
if ( idB == NOBODY )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if ( idA == idB )
|
if ( idA == idB )
|
||||||
@@ -1151,8 +1147,7 @@ void RenderMercCompareMatrix( )
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
SOLDIERTYPE* pSoldierB = MercPtrs[idB];
|
SOLDIERTYPE* pSoldierB = idB;
|
||||||
|
|
||||||
if ( !pSoldierB )
|
if ( !pSoldierB )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
@@ -558,10 +558,11 @@ void EnterPersonnel( void )
|
|||||||
// Fill in the current team list
|
// Fill in the current team list
|
||||||
maxCurrentTeamIndex = -1;
|
maxCurrentTeamIndex = -1;
|
||||||
SOLDIERTYPE *pTeamSoldier = MercPtrs[ 0 ];
|
SOLDIERTYPE *pTeamSoldier = MercPtrs[ 0 ];
|
||||||
for (int idx = gTacticalStatus.Team[ pTeamSoldier->bTeam ].bFirstID;
|
for (SoldierID idx = gTacticalStatus.Team[ pTeamSoldier->bTeam ].bFirstID;
|
||||||
idx <= gTacticalStatus.Team[ pTeamSoldier->bTeam ].bLastID;
|
idx <= gTacticalStatus.Team[ pTeamSoldier->bTeam ].bLastID;
|
||||||
++idx) {
|
++idx)
|
||||||
pTeamSoldier = MercPtrs[ idx ];
|
{
|
||||||
|
pTeamSoldier = idx;
|
||||||
|
|
||||||
// WANNE: Bugfix: Also show the roboter in ther personnel screen. This bug was introduced in revision 2498, when Many Mercenary was included.
|
// WANNE: Bugfix: Also show the roboter in ther personnel screen. This bug was introduced in revision 2498, when Many Mercenary was included.
|
||||||
//if ((pTeamSoldier->bActive) &&
|
//if ((pTeamSoldier->bActive) &&
|
||||||
|
|||||||
Reference in New Issue
Block a user