Add checks around all use of bMercOpinion

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@2854 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
SpaceViking
2009-05-13 22:32:44 +00:00
parent c8c547eba9
commit bd74fac6cc
8 changed files with 47 additions and 12 deletions
+4 -2
View File
@@ -3949,8 +3949,10 @@ INT16 GetBonusTrainingPtsDueToInstructor( SOLDIERTYPE *pInstructor, SOLDIERTYPE
}
// factor in their mutual relationship
bOpinionFactor = gMercProfiles[ pStudent->ubProfile ].bMercOpinion[ pInstructor->ubProfile ];
bOpinionFactor += gMercProfiles[ pInstructor->ubProfile ].bMercOpinion[ pStudent->ubProfile ] / 2;
if (OKToCheckOpinion(pInstructor->ubProfile))
bOpinionFactor = gMercProfiles[ pStudent->ubProfile ].bMercOpinion[ pInstructor->ubProfile ];
if (OKToCheckOpinion(pStudent->ubProfile))
bOpinionFactor += gMercProfiles[ pInstructor->ubProfile ].bMercOpinion[ pStudent->ubProfile ] / 2;
}
+2 -1
View File
@@ -697,7 +697,8 @@ void QuickSetupOfMercProfileItems( UINT32 uiCount, UINT8 ubProfileIndex )
// TEMP!
// make carman's opinion of us high!
gMercProfiles[ 78 ].bMercOpinion[ ubProfileIndex ] = 25;
if (OKToCheckOpinion(ubProfileIndex))
gMercProfiles[ 78 ].bMercOpinion[ ubProfileIndex ] = 25;
}
else if ( uiCount == 1 )
+11 -3
View File
@@ -991,8 +991,10 @@ void UpdateBuddyAndHatedCounters( void )
else if (pProfile->bLearnToHateCount == 0)
{
// set as bHated[2];
if (OKToCheckOpinion(ubOtherProfileID)) {
pProfile->bHated[2] = pProfile->bLearnToHate;
pProfile->bMercOpinion[ubOtherProfileID] = HATED_OPINION;
}
if (pSoldier->ubWhatKindOfMercAmI == MERC_TYPE__MERC || (pSoldier->ubWhatKindOfMercAmI == MERC_TYPE__NPC && (pSoldier->ubProfile == DEVIN || pSoldier->ubProfile == SLAY || pSoldier->ubProfile == IGGY || pSoldier->ubProfile == CONRAD ) ) )
{
@@ -1012,9 +1014,11 @@ void UpdateBuddyAndHatedCounters( void )
if (pProfile->bLearnToHateCount < pProfile->bLearnToHateTime / 2)
{
// gradual opinion drop
if (OKToCheckOpinion(ubOtherProfileID)) {
pProfile->bMercOpinion[ubOtherProfileID] += (HATED_OPINION - pProfile->bMercOpinion[ubOtherProfileID]) / (pProfile->bLearnToHateCount + 1);
}
}
}
else
{
if ( !fUpdatedTimeTillNextHatedComplaint )
@@ -1045,13 +1049,17 @@ void UpdateBuddyAndHatedCounters( void )
if (pProfile->bLearnToLikeCount == 0)
{
// add to liked!
pProfile->bBuddy[2] = pProfile->bLearnToLike;
pProfile->bMercOpinion[ubOtherProfileID] = BUDDY_OPINION;
if (OKToCheckOpinion(ubOtherProfileID)) {
pProfile->bBuddy[2] = pProfile->bLearnToLike;
pProfile->bMercOpinion[ubOtherProfileID] = BUDDY_OPINION;
}
}
else if (pProfile->bLearnToLikeCount < pProfile->bLearnToLikeTime / 2)
{
// increase opinion of them!
pProfile->bMercOpinion[ubOtherProfileID] += (BUDDY_OPINION - pProfile->bMercOpinion[ubOtherProfileID]) / (pProfile->bLearnToLikeCount + 1);
if (OKToCheckOpinion(ubOtherProfileID)) {
pProfile->bMercOpinion[ubOtherProfileID] += (BUDDY_OPINION - pProfile->bMercOpinion[ubOtherProfileID]) / (pProfile->bLearnToLikeCount + 1);
}
break;
}
}