Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
heatbuffer.c
Go to the documentation of this file.
1
class
HeatBufferMdfr
:
ModifierBase
2
{
3
const
int
NUMBER_OF_STAGES
= 4;
4
const
float
STAGE_THRESHOLDS
[
NUMBER_OF_STAGES
] = {0.0, 0.60, 0.85, 1.0};
5
6
protected
int
m_Stage
;
7
protected
int
m_StageLast
;
8
9
protected
float
m_Value
;
10
11
override
void
Init
()
12
{
13
m_TrackActivatedTime
=
false
;
14
m_AnalyticsStatsEnabled
=
true
;
15
m_ID
=
eModifiers
.MDF_HEATBUFFER;
16
m_TickIntervalInactive
= 1;
17
m_TickIntervalActive
=
DEFAULT_TICK_TIME_ACTIVE
;
18
}
19
20
override
bool
ActivateCondition
(
PlayerBase
player)
21
{
22
PlayerStat<float>
heatBufferStat = player.GetStatHeatBuffer();
23
m_Value
= heatBufferStat.Get() / heatBufferStat.GetMax();
24
return
m_Value
>
STAGE_THRESHOLDS
[0];
25
}
26
27
override
bool
DeactivateCondition
(
PlayerBase
player)
28
{
29
PlayerStat<float>
heatBufferStat = player.GetStatHeatBuffer();
30
m_Value
= heatBufferStat.Get() / heatBufferStat.GetMax();;
31
return
m_Value
<=
STAGE_THRESHOLDS
[0];
32
}
33
34
override
void
OnActivate
(
PlayerBase
player)
35
{
36
player.ToggleHeatBufferVisibility(
GetHeatBufferStage
());
37
}
38
39
override
void
OnDeactivate
(
PlayerBase
player)
40
{
41
player.ToggleHeatBufferVisibility(
GetHeatBufferStage
());
42
//Protection against influenza with duration
43
if
(player.GetTemporaryResistanceToAgent(
eAgents
.INFLUENZA) < 300)
44
player.SetTemporaryResistanceToAgent(
eAgents
.INFLUENZA, 300);
45
}
46
47
override
void
Tick
(
float
delta_time)
48
{
49
super.Tick(delta_time);
50
51
m_Value
=
m_Player
.GetStatHeatBuffer().Get() /
m_Player
.GetStatHeatBuffer().GetMax();
52
m_Stage
=
GetHeatBufferStage
();
53
54
if
(
m_Stage
!=
m_StageLast
)
55
{
56
m_Player
.ToggleHeatBufferVisibility(
m_Stage
);
57
m_StageLast
=
m_Stage
;
58
}
59
}
60
61
protected
int
GetHeatBufferStage
()
62
{
63
if
(
m_Value
>
STAGE_THRESHOLDS
[0] &&
m_Value
<
STAGE_THRESHOLDS
[1])
64
return
1;
65
else
if
(
m_Value
>=
STAGE_THRESHOLDS
[1] &&
m_Value
<
STAGE_THRESHOLDS
[2])
66
return
2;
67
else
if
(
m_Value
>=
STAGE_THRESHOLDS
[2])
68
return
3;
69
70
return
0;
71
}
72
74
protected
const
float
HEATBUFFER_SHOW
= 25.0;
75
protected
const
float
HEATBUFFER_HIDE
= 20.0;
76
}
m_Player
map m_Player
HeatBufferMdfr
Definition
heatbuffer.c:2
HeatBufferMdfr::DeactivateCondition
override bool DeactivateCondition(PlayerBase player)
Definition
heatbuffer.c:27
HeatBufferMdfr::OnActivate
override void OnActivate(PlayerBase player)
Definition
heatbuffer.c:34
HeatBufferMdfr::Tick
override void Tick(float delta_time)
Definition
heatbuffer.c:47
HeatBufferMdfr::GetHeatBufferStage
int GetHeatBufferStage()
Definition
heatbuffer.c:61
HeatBufferMdfr::STAGE_THRESHOLDS
const float STAGE_THRESHOLDS[NUMBER_OF_STAGES]
Definition
heatbuffer.c:4
HeatBufferMdfr::m_StageLast
int m_StageLast
Definition
heatbuffer.c:7
HeatBufferMdfr::Init
override void Init()
Definition
heatbuffer.c:11
HeatBufferMdfr::HEATBUFFER_SHOW
const float HEATBUFFER_SHOW
DEPRECATED.
Definition
heatbuffer.c:74
HeatBufferMdfr::HEATBUFFER_HIDE
const float HEATBUFFER_HIDE
Definition
heatbuffer.c:75
HeatBufferMdfr::NUMBER_OF_STAGES
const int NUMBER_OF_STAGES
Definition
heatbuffer.c:3
HeatBufferMdfr::ActivateCondition
override bool ActivateCondition(PlayerBase player)
Definition
heatbuffer.c:20
HeatBufferMdfr::m_Stage
int m_Stage
Definition
heatbuffer.c:6
HeatBufferMdfr::OnDeactivate
override void OnDeactivate(PlayerBase player)
Definition
heatbuffer.c:39
HeatBufferMdfr::m_Value
float m_Value
Definition
heatbuffer.c:9
ModifierBase
Definition
breathvapourmdfr.c:4
PlayerBase
Definition
playerbaseclient.c:2
eAgents
eAgents
Definition
eagents.c:3
m_ID
int m_ID
ID of effect, given by SEffectManager when registered (automatically done when playing through it).
Definition
effect.c:51
eModifiers
eModifiers
Definition
emodifiers.c:2
m_TrackActivatedTime
bool m_TrackActivatedTime
overall time this modifier was active
Definition
modifierbase.c:14
m_AnalyticsStatsEnabled
bool m_AnalyticsStatsEnabled
Definition
modifierbase.c:31
m_TickIntervalActive
float m_TickIntervalActive
Definition
modifierbase.c:18
m_TickIntervalInactive
float m_TickIntervalInactive
Definition
modifierbase.c:17
DEFAULT_TICK_TIME_ACTIVE
enum eModifierSyncIDs DEFAULT_TICK_TIME_ACTIVE
PlayerStat
void PlayerStat(T min, T max, T init, string label, int flags)
Definition
playerstatbase.c:43
Games
Dayz
scripts
4_world
classes
playermodifiers
modifiers
conditions
heatbuffer.c
Generated by
1.17.0