Fix: various individual militia issues

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8477 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2017-09-21 18:38:22 +00:00
parent f30482d939
commit c20604f16a
5 changed files with 59 additions and 89 deletions
+5 -10
View File
@@ -136,15 +136,10 @@ MilitiaPersonalDataTableFireConfirmationCallback( UINT8 val )
militia.Fire();
UpdateMilitia( militia );
INT8 type = SoldierClassToMilitiaRank( militia.soldierclass);
if ( type > -1 )
{
StrategicRemoveMilitiaFromSector( SECTORX( militia.sector ), SECTORY( militia.sector ), (UINT8)type, 1 );
StrategicRemoveMilitiaFromSector( SECTORX( militia.sector ), SECTORY( militia.sector ), militia.militiarank, 1 );
ResetMilitia();
}
ResetMilitia();
militiaindividualmainwidget.SetRefresh();
}
@@ -245,9 +240,9 @@ MilitiaPersonalDataTable::Display( )
{
UINT8 vest = GREENVEST;
UINT8 pants = BEIGEPANTS;
if ( militia.soldierclass == SOLDIER_CLASS_REG_MILITIA )
if ( militia.militiarank == REGULAR_MILITIA)
vest = JEANVEST;
else if ( militia.soldierclass == SOLDIER_CLASS_ELITE_MILITIA )
else if ( militia.militiarank == ELITE_MILITIA)
vest = BLUEVEST;
// show background first
+6 -6
View File
@@ -233,9 +233,9 @@ void FilterIndividualMilitia( InidivualMilitiaLifeState aLifeState, InidivualMil
|| (aLifeState != IMLS_FIRED && aLifeState != IMLS_ALL && ((*it).flagmask & MILITIAFLAG_FIRED)) )
continue;
if ( (aRankState == IMRS_GREEN && (*it).soldierclass != SOLDIER_CLASS_GREEN_MILITIA ) ||
(aRankState == IMRS_REGULAR && (*it).soldierclass != SOLDIER_CLASS_REG_MILITIA) ||
(aRankState == IMRS_ELITE && (*it).soldierclass != SOLDIER_CLASS_ELITE_MILITIA) )
if ( (aRankState == IMRS_GREEN && (*it).militiarank != GREEN_MILITIA) ||
(aRankState == IMRS_REGULAR && (*it).militiarank != REGULAR_MILITIA) ||
(aRankState == IMRS_ELITE && (*it).militiarank != ELITE_MILITIA) )
continue;
if ( (aOriginState == IMOS_ARULCO && (*it).origin != MO_ARULCO) ||
@@ -545,11 +545,11 @@ void GetFaceData( UINT32 aMilitiaId, UINT32& arImageLib, UINT16& arImage )
{
if ( militia.flagmask & MILITIAFLAG_DEAD )
arImage = HUMAN_SKULL;
else if ( militia.soldierclass == SOLDIER_CLASS_GREEN_MILITIA )
else if ( militia.militiarank == GREEN_MILITIA)
arImage = militia.bodytype == REGFEMALE ? MILITIA1F_FACE : MILITIA1_FACE;
else if ( militia.soldierclass == SOLDIER_CLASS_REG_MILITIA )
else if ( militia.militiarank == REGULAR_MILITIA)
arImage = militia.bodytype == REGFEMALE ? MILITIA2F_FACE : MILITIA2_FACE;
else if ( militia.soldierclass == SOLDIER_CLASS_ELITE_MILITIA )
else if ( militia.militiarank == ELITE_MILITIA)
arImage = militia.bodytype == REGFEMALE ? MILITIA3F_FACE : MILITIA3_FACE;
}
}