Fix for Dynamic Opinions feature not respecting ini setting and not allowing it to be disabled easily (by Shadooow).

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9002 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Sevenfm
2021-05-05 03:40:57 +00:00
parent c2ccc871fc
commit b7cc3bbcf8
18 changed files with 148 additions and 64 deletions
+11 -5
View File
@@ -326,15 +326,18 @@ void DecayTacticalMoraleModifiers( void )
else
{
// alone, no recovery... in fact, if tact morale is high, decay
if ( !(pSoldier->usQuoteSaidFlags & SOLDIER_QUOTE_SAID_PERSONALITY) )
if (!(pSoldier->usQuoteSaidFlags & SOLDIER_QUOTE_SAID_PERSONALITY))
{
TacticalCharacterDialogue( pSoldier, QUOTE_PERSONALITY_TRAIT );
TacticalCharacterDialogue(pSoldier, QUOTE_PERSONALITY_TRAIT);
pSoldier->usQuoteSaidFlags |= SOLDIER_QUOTE_SAID_PERSONALITY;
}
HandleMoraleEvent( pSoldier, MORALE_NERVOUS_ALONE, pSoldier->sSectorX, pSoldier->sSectorY, pSoldier->bSectorZ );
HandleMoraleEvent(pSoldier, MORALE_NERVOUS_ALONE, pSoldier->sSectorX, pSoldier->sSectorY, pSoldier->bSectorZ);
// Flugente: dynamic opinions
HandleDynamicOpinionChange( pSoldier, OPINIONEVENT_ANNOYINGDISABILITY, TRUE, TRUE );
if (gGameExternalOptions.fDynamicOpinions)
{
HandleDynamicOpinionChange(pSoldier, OPINIONEVENT_ANNOYINGDISABILITY, TRUE, TRUE);
}
}
}
}
@@ -1528,7 +1531,10 @@ void HandleSnitchesReports( std::vector<SnitchEvent>& aVec )
event2.ubEventType = NUM_SNITCH_EVENTS;
// Flugente: dynamic opinions
AddOpinionEvent( event2.ubTargetProfile, pSnitch->ubProfile, OPINIONEVENT_SNITCHSOLDMEOUT );
if (gGameExternalOptions.fDynamicOpinions)
{
AddOpinionEvent(event2.ubTargetProfile, pSnitch->ubProfile, OPINIONEVENT_SNITCHSOLDMEOUT);
}
}
}