mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
More buddies/foes (by anv)
- Currently MercProfiles.xml contains 5 records for buddies and 5 for foes + 1 per "learn to", but in code only 2 first + "learn to" are handled. I changed it so all possible buddies and foes can be used, and it's possible to add their specific like/dislike quotes to quote .edts. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6538 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+77
-3
@@ -102,7 +102,7 @@
|
||||
#define SIZE_MERC_ADDITIONAL_INFO 160 * 2
|
||||
|
||||
#define MERC_ANNOYED_WONT_CONTACT_TIME_MINUTES 6 * 60
|
||||
#define NUMBER_HATED_MERCS_ONTEAM 3
|
||||
#define NUMBER_HATED_MERCS_ONTEAM 6
|
||||
|
||||
#define STATS_X IMAGE_OFFSET_X + 121
|
||||
#define STATS_Y IMAGE_OFFSET_Y + 66
|
||||
@@ -3350,7 +3350,17 @@ BOOLEAN CanMercBeHired()
|
||||
for(i=0; i< NUMBER_HATED_MERCS_ONTEAM; i++)
|
||||
{
|
||||
//see if someone the merc hates is on the team
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bHated[i];
|
||||
if( i< NUMBER_HATED_MERCS_ONTEAM - 1 )
|
||||
{
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bHated[i];
|
||||
}
|
||||
else
|
||||
{
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bLearnToHate;
|
||||
// ignore learn to hate, if he's not a foe yet
|
||||
if( gMercProfiles[ gbCurrentSoldier ].bLearnToHateCount > 0 )
|
||||
continue;
|
||||
}
|
||||
|
||||
if( bMercID < 0 )
|
||||
continue;
|
||||
@@ -3368,7 +3378,17 @@ BOOLEAN CanMercBeHired()
|
||||
for(j=0; j< NUMBER_HATED_MERCS_ONTEAM; j++)
|
||||
{
|
||||
//if a buddy is on the team, the merc will join
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bBuddy[j];
|
||||
if( i< NUMBER_HATED_MERCS_ONTEAM - 1 )
|
||||
{
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bBuddy[j];
|
||||
}
|
||||
else
|
||||
{
|
||||
bMercID = gMercProfiles[ gbCurrentSoldier ].bLearnToLike;
|
||||
// ignore learn to like, if he's not a buddy yet
|
||||
if( gMercProfiles[ gbCurrentSoldier ].bLearnToLikeCount > 0 )
|
||||
continue;
|
||||
}
|
||||
|
||||
if( bMercID < 0 )
|
||||
continue;
|
||||
@@ -3383,6 +3403,18 @@ BOOLEAN CanMercBeHired()
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_JOINING_CAUSE_BUDDY_2_ON_TEAM);
|
||||
}
|
||||
else if(j == 2 )
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_JOINING_CAUSE_BUDDY_3_ON_TEAM);
|
||||
}
|
||||
else if(j == 3 )
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_JOINING_CAUSE_BUDDY_4_ON_TEAM);
|
||||
}
|
||||
else if(j == 4 )
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_JOINING_CAUSE_BUDDY_5_ON_TEAM);
|
||||
}
|
||||
else
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_JOINING_CAUSE_LEARNED_TO_LIKE_BUDDY_ON_TEAM);
|
||||
@@ -3423,6 +3455,48 @@ BOOLEAN CanMercBeHired()
|
||||
fRetVal = TRUE;
|
||||
}
|
||||
}
|
||||
else if( i == 2)
|
||||
{
|
||||
if( gMercProfiles[ gbCurrentSoldier ].bHatedTime[ i ] < 24 )
|
||||
{
|
||||
WaitForMercToFinishTalkingOrUserToClick();
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_HATE_MERC_3_ON_TEAM);
|
||||
fRetVal = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_PERSONALITY_BIAS_WITH_MERC_3);
|
||||
fRetVal = TRUE;
|
||||
}
|
||||
}
|
||||
else if( i == 3)
|
||||
{
|
||||
if( gMercProfiles[ gbCurrentSoldier ].bHatedTime[ i ] < 24 )
|
||||
{
|
||||
WaitForMercToFinishTalkingOrUserToClick();
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_HATE_MERC_4_ON_TEAM);
|
||||
fRetVal = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_PERSONALITY_BIAS_WITH_MERC_4);
|
||||
fRetVal = TRUE;
|
||||
}
|
||||
}
|
||||
else if( i == 4)
|
||||
{
|
||||
if( gMercProfiles[ gbCurrentSoldier ].bHatedTime[ i ] < 24 )
|
||||
{
|
||||
WaitForMercToFinishTalkingOrUserToClick();
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_HATE_MERC_5_ON_TEAM);
|
||||
fRetVal = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
InitVideoFaceTalking(gbCurrentSoldier, QUOTE_PERSONALITY_BIAS_WITH_MERC_5);
|
||||
fRetVal = TRUE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
WaitForMercToFinishTalkingOrUserToClick();
|
||||
|
||||
Reference in New Issue
Block a user