mirror of
https://github.com/1dot13/source.git
synced 2026-08-05 14:00:23 +02:00
added opinion event OPINIONEVENT_CIV_ATTACKER, used when injuring a non-hostile civilian/militia
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7891 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -1200,6 +1200,7 @@ void AddOpinionEvent( UINT8 usProfileA, UINT8 usProfileB, UINT8 usEvent, BOOLEAN
|
||||
case OPINIONEVENT_FRAGTHIEF: gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] |= OPINIONFLAG_STAGE1_FRAGTHIEF; break;
|
||||
case OPINIONEVENT_BATTLE_ASSIST: gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] |= OPINIONFLAG_STAGE1_BATTLE_ASSIST; break;
|
||||
case OPINIONEVENT_BATTLE_TOOK_PRISONER: gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] |= OPINIONFLAG_STAGE1_BATTLE_TOOK_PRISONER; break;
|
||||
case OPINIONEVENT_CIV_ATTACKER: gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] |= OPINIONFLAG_STAGE1_CIV_ATTACKER; break;
|
||||
|
||||
default: break;
|
||||
}
|
||||
@@ -1566,6 +1567,13 @@ INT8 GetDynamicOpinion( UINT8 usProfileA, UINT8 usProfileB, UINT8 usEvent )
|
||||
if ( gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] & OPINIONFLAG_STAGE4_BATTLE_TOOK_PRISONER ) ++numflags;
|
||||
break;
|
||||
|
||||
case OPINIONEVENT_CIV_ATTACKER:
|
||||
if ( gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] & OPINIONFLAG_STAGE1_CIV_ATTACKER ) ++numflags;
|
||||
if ( gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] & OPINIONFLAG_STAGE2_CIV_ATTACKER ) ++numflags;
|
||||
if ( gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] & OPINIONFLAG_STAGE3_CIV_ATTACKER ) ++numflags;
|
||||
if ( gMercProfiles[usProfileA].usDynamicOpinionFlagmask[usProfileB][4] & OPINIONFLAG_STAGE4_CIV_ATTACKER ) ++numflags;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -2077,6 +2085,7 @@ void HandleDynamicOpinionChange( SOLDIERTYPE* pSoldier, UINT8 usEvent, BOOLEAN f
|
||||
case OPINIONEVENT_BATTLE_TOOK_PRISONER:
|
||||
case OPINIONEVENT_FRAGTHIEF:
|
||||
case OPINIONEVENT_BATTLE_ASSIST:
|
||||
case OPINIONEVENT_CIV_ATTACKER:
|
||||
break;
|
||||
|
||||
case OPINIONEVENT_SLOWSUSDOWN:
|
||||
@@ -2287,6 +2296,14 @@ void HandleDynamicOpinionChange( SOLDIERTYPE* pSoldier, UINT8 usEvent, BOOLEAN f
|
||||
continue;
|
||||
break;
|
||||
|
||||
case OPINIONEVENT_CIV_ATTACKER:
|
||||
// psychos or malicious characters dont care
|
||||
if ( gMercProfiles[pTeamSoldier->ubProfile].bCharacterTrait == CHAR_TRAIT_MALICIOUS ||
|
||||
gMercProfiles[pTeamSoldier->ubProfile].bDisability == PSYCHO ||
|
||||
MercUnderTheInfluence( pTeamSoldier, DRUG_TYPE_PSYCHO ) )
|
||||
continue;
|
||||
break;
|
||||
|
||||
default:
|
||||
// either unknown event, or event is handled elsewhere - exit
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user