Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_MorphineDamageEffect.c
Go to the documentation of this file.
2{
3 float m_fDurationPerHitZone;
4 float m_fAccurateTimeSlice;
5 protected ref array<HitZone> m_aPhysicalHitZones = {};
6
7 //------------------------------------------------------------------------------------------------
8 protected override void HandleConsequences(SCR_ExtendedDamageManagerComponent dmgManager, DamageEffectEvaluator evaluator)
9 {
10 super.HandleConsequences(dmgManager, evaluator);
11
12 evaluator.HandleEffectConsequences(this, dmgManager);
13 }
14
15 //------------------------------------------------------------------------------------------------
16 override bool HijackDamageEffect(SCR_ExtendedDamageManagerComponent dmgManager)
17 {
18 SetAffectedHitZone(dmgManager.GetDefaultHitZone());
19 return false;
20 }
21
22 //------------------------------------------------------------------------------------------------
23 override void OnEffectAdded(SCR_ExtendedDamageManagerComponent dmgManager)
24 {
25 super.OnEffectAdded(dmgManager);
26
27 dmgManager.GetPhysicalHitZones(m_aPhysicalHitZones);
28 }
29
30 //------------------------------------------------------------------------------------------------
31 protected override void EOnFrame(float timeSlice, SCR_ExtendedDamageManagerComponent dmgManager)
32 {
33 m_fAccurateTimeSlice = GetAccurateTimeSlice(timeSlice);
34
35 float damageAmount = GetDPS() * m_fAccurateTimeSlice;
36
37 DotDamageEffectTimerToken token = UpdateTimer(m_fAccurateTimeSlice, dmgManager);
38
39 foreach(HitZone hz : m_aPhysicalHitZones)
40 {
41 DealCustomDot(hz, damageAmount, token, dmgManager);
42 }
43 }
44
45 //------------------------------------------------------------------------------------------------
47 {
48 return EDamageType.HEALING;
49 }
50}
ref array< HitZone > m_aPhysicalHitZones
override void OnEffectAdded(SCR_ExtendedDamageManagerComponent dmgManager)
override void HandleConsequences(SCR_ExtendedDamageManagerComponent dmgManager, DamageEffectEvaluator evaluator)
override bool HijackDamageEffect(SCR_ExtendedDamageManagerComponent dmgManager)
override void EOnFrame(float timeSlice, SCR_ExtendedDamageManagerComponent dmgManager)
override EDamageType GetDefaultDamageType()
EDamageType
Definition EDamageType.c:13