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_PassiveHitZoneRegenDamageEffect.c
Go to the documentation of this file.
1
class
SCR_PassiveHitZoneRegenDamageEffect
:
SCR_DotDamageEffect
2
{
3
protected
float
m_fDelayTimer
= 0;
4
protected
float
m_fLocalRegenDelayTime
;
5
protected
SCR_RegeneratingHitZone
m_HitZoneToRegen
;
6
7
//ALWAYS OVERRIDE LIKE THIS. ALWAYS OVERRIDE THIS FUNCTION
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
void
OnEffectAdded
(SCR_ExtendedDamageManagerComponent dmgManager)
17
{
18
super.OnEffectAdded(dmgManager);
19
20
m_HitZoneToRegen
=
SCR_RegeneratingHitZone
.Cast(GetAffectedHitZone());
21
if
(!
m_HitZoneToRegen
)
22
Terminate();
23
24
SCR_CharacterDamageManagerComponent
characterDmgManager =
SCR_CharacterDamageManagerComponent
.Cast(dmgManager);
25
if
(characterDmgManager && characterDmgManager.
s_HealthSettings
&& !
GetSkipRegenDelay
(dmgManager))
26
m_fLocalRegenDelayTime
= characterDmgManager.
s_HealthSettings
.GetRegenerationDelay();
27
28
if
(GetDPS() == -1)
29
SetDPS(-
m_HitZoneToRegen
.CalculatePassiveRegenDPS());
30
}
31
32
//------------------------------------------------------------------------------------------------
33
protected
override
void
EOnFrame
(
float
timeSlice, SCR_ExtendedDamageManagerComponent dmgManager)
34
{
35
m_fDelayTimer
+= timeSlice;
36
37
if
(
m_fDelayTimer
<
m_fLocalRegenDelayTime
)
38
return
;
39
40
DealDot(timeSlice, dmgManager);
41
42
//everything is fully healed
43
if
(
m_HitZoneToRegen
.GetHealthScaled() == 1)
44
dmgManager.TerminateDamageEffect(
this
);
45
}
46
}
DamageEffectEvaluator
Definition
DamageEffectEvaluator.c:2
SCR_CharacterDamageManagerComponent
Definition
SCR_CharacterDamageManagerComponent.c:19
SCR_CharacterDamageManagerComponent::s_HealthSettings
static SCR_GameModeHealthSettings s_HealthSettings
Definition
SCR_CharacterDamageManagerComponent.c:62
SCR_DotDamageEffect
Definition
SCR_DotDamageEffect.c:7
SCR_DotDamageEffect::GetSkipRegenDelay
bool GetSkipRegenDelay(SCR_ExtendedDamageManagerComponent dmgManager)
Definition
SCR_DotDamageEffect.c:68
SCR_PassiveHitZoneRegenDamageEffect
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:2
SCR_PassiveHitZoneRegenDamageEffect::m_fDelayTimer
float m_fDelayTimer
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:3
SCR_PassiveHitZoneRegenDamageEffect::m_fLocalRegenDelayTime
float m_fLocalRegenDelayTime
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:4
SCR_PassiveHitZoneRegenDamageEffect::HandleConsequences
override void HandleConsequences(SCR_ExtendedDamageManagerComponent dmgManager, DamageEffectEvaluator evaluator)
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:8
SCR_PassiveHitZoneRegenDamageEffect::OnEffectAdded
override void OnEffectAdded(SCR_ExtendedDamageManagerComponent dmgManager)
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:16
SCR_PassiveHitZoneRegenDamageEffect::m_HitZoneToRegen
SCR_RegeneratingHitZone m_HitZoneToRegen
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:5
SCR_PassiveHitZoneRegenDamageEffect::EOnFrame
override void EOnFrame(float timeSlice, SCR_ExtendedDamageManagerComponent dmgManager)
Definition
SCR_PassiveHitZoneRegenDamageEffect.c:33
SCR_RegeneratingHitZone
Definition
SCR_CharacterHitZone.c:67
scripts
Game
Damage
DamageEffects
CharacterDamageEffects
SCR_PassiveHitZoneRegenDamageEffect.c
Generated by
1.17.0