new feature: soldier profiles allows defining individual names/bodytypes/hair/skin/traits of soldiers and militia. The game will choose randomly from this pool.

WARNING: GameDir revision >= 1672 is required.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6071 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2013-05-10 23:30:42 +00:00
parent 576866b63e
commit ee416f72bc
18 changed files with 394 additions and 11 deletions
+38
View File
@@ -10151,3 +10151,41 @@ BOOLEAN AllowedToStealFromTeamMate( UINT8 ubID, UINT8 ubTargetID )
return FALSE;
}
// Flugente: is a soldier profile already used?
BOOLEAN IsProfileInUse(UINT8 usTeam, INT8 aType, UINT16 aNr)
{
if ( aType < 0 || aType > 5 )
return FALSE;
UINT8 searchedclass = SOLDIER_CLASS_ADMINISTRATOR;
switch( aType )
{
case 1:
searchedclass = SOLDIER_CLASS_ARMY;
break;
case 2:
searchedclass = SOLDIER_CLASS_ELITE;
break;
case 3:
searchedclass = SOLDIER_CLASS_GREEN_MILITIA;
break;
case 4:
searchedclass = SOLDIER_CLASS_REG_MILITIA;
break;
case 5:
searchedclass = SOLDIER_CLASS_ELITE_MILITIA;
break;
}
SOLDIERTYPE* pSoldier = NULL;
for( INT32 i = gTacticalStatus.Team[ usTeam ].bFirstID; i <= gTacticalStatus.Team[ usTeam ].bLastID; ++i )
{
pSoldier = MercPtrs[ i ];
if ( pSoldier && pSoldier->ubSoldierClass == searchedclass && pSoldier->usSoldierProfile == aNr )
return TRUE;
}
return FALSE;
}