Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_BandageDamageEffect.c
Go to the documentation of this file.
1
class
SCR_BandageDamageEffect
:
SCR_InstantDamageEffect
2
{
3
//------------------------------------------------------------------------------------------------
4
override
void
OnEffectAdded(SCR_ExtendedDamageManagerComponent dmgManager)
5
{
6
super.OnEffectAdded(dmgManager);
7
8
SCR_CharacterDamageManagerComponent
damageMgr =
SCR_CharacterDamageManagerComponent
.Cast(dmgManager);
9
if
(!damageMgr)
10
return
;
11
12
// if cast fails, HZ is probably virtual
13
SCR_CharacterHitZone charHZ = SCR_CharacterHitZone.Cast(GetAffectedHitZone());
14
if
(!charHZ)
15
return
;
16
17
ECharacterHitZoneGroup
hzGroup;
18
array<HitZone> hitZones = {};
19
20
damageMgr.GetHitZonesOfGroup(charHZ.GetHitZoneGroup(), hitZones);
21
if
(hitZones.IsEmpty())
22
{
23
hzGroup = damageMgr.
GetCharMostDOTHitzoneGroup
(
EDamageType
.BLEEDING);
24
}
25
else
26
{
27
HitZone
targetHitZone = hitZones.Get(0);
28
if
(!targetHitZone)
29
return
;
30
31
SCR_CharacterHitZone charHitZone = SCR_CharacterHitZone.Cast(targetHitZone);
32
if
(!charHitZone)
33
return
;
34
35
hzGroup = charHitZone.GetHitZoneGroup();
36
}
37
38
if
(hzGroup ==
ECharacterHitZoneGroup
.VIRTUAL)
39
return
;
40
41
damageMgr.
RemoveGroupBleeding
(hzGroup);
42
}
43
44
//------------------------------------------------------------------------------------------------
45
protected
override
void
HandleConsequences
(SCR_ExtendedDamageManagerComponent dmgManager,
DamageEffectEvaluator
evaluator)
46
{
47
super.HandleConsequences(dmgManager, evaluator);
48
49
evaluator.HandleEffectConsequences(
this
, dmgManager);
50
}
51
}
ECharacterHitZoneGroup
ECharacterHitZoneGroup
Definition
SCR_CharacterDamageManagerComponent.c:2
DamageEffectEvaluator
Definition
DamageEffectEvaluator.c:2
HitZone
Definition
HitZone.c:13
SCR_BandageDamageEffect
Definition
SCR_BandageDamageEffect.c:2
SCR_BandageDamageEffect::HandleConsequences
override void HandleConsequences(SCR_ExtendedDamageManagerComponent dmgManager, DamageEffectEvaluator evaluator)
Definition
SCR_BandageDamageEffect.c:45
SCR_CharacterDamageManagerComponent
Definition
SCR_CharacterDamageManagerComponent.c:19
SCR_CharacterDamageManagerComponent::GetCharMostDOTHitzoneGroup
ECharacterHitZoneGroup GetCharMostDOTHitzoneGroup(EDamageType damageType, bool onlyExtremities=false, bool ignoreTQdHitZones=false, bool ignoreIfBeingTreated=false)
Definition
SCR_CharacterDamageManagerComponent.c:1461
SCR_CharacterDamageManagerComponent::RemoveGroupBleeding
void RemoveGroupBleeding(ECharacterHitZoneGroup charHZGroup)
Terminate all bleeding effects on every hitZone of a group.
Definition
SCR_CharacterDamageManagerComponent.c:1057
SCR_InstantDamageEffect
Definition
SCR_InstantDamageEffect.c:7
EDamageType
EDamageType
Definition
EDamageType.c:13
scripts
Game
Damage
DamageEffects
CharacterDamageEffects
SCR_BandageDamageEffect.c
Generated by
1.17.0