Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
fever.c
Go to the documentation of this file.
2{
3 private float m_Time;
4 private float m_NextEvent;
5
6 static const float EVENT_INTERVAL_MIN = 12;
7 static const float EVENT_INTERVAL_MAX = 18;
8
9
19 override bool ActivateCondition(PlayerBase player)
20 {
21 return (player.GetModifiersManager().IsModifierActive(eModifiers.MDF_CHOLERA) || player.GetModifiersManager().IsModifierActive(eModifiers.MDF_INFLUENZA) || player.GetModifiersManager().IsModifierActive(eModifiers.MDF_WOUND_INFECTION2));
22 }
23
24 override void OnActivate(PlayerBase player)
25 {
26 if( player.m_NotifiersManager )
27 player.m_NotifiersManager.ActivateByType(eNotifiers.NTF_FEVERISH);
28
29 player.GetSymptomManager().QueueUpSecondarySymptom(SymptomIDs.SYMPTOM_FEVERBLUR);
30 }
31
32 override void OnReconnect(PlayerBase player)
33 {
34 this.OnActivate(player);
35 }
36
37
38 override void OnDeactivate(PlayerBase player)
39 {
40 if( player.m_NotifiersManager )
41 player.m_NotifiersManager.DeactivateByType(eNotifiers.NTF_FEVERISH);
42 player.GetSymptomManager().RemoveSecondarySymptom(SymptomIDs.SYMPTOM_FEVERBLUR);
43 }
44
45
46 override bool DeactivateCondition(PlayerBase player)
47 {
48 return !ActivateCondition(player);
49 }
50
51 override void OnTick(PlayerBase player, float deltaT)
52 {
53 float water_loss = deltaT * PlayerConstants.WATER_LOSS_FEVER;
54 player.GetStatWater().Add(-water_loss);
55
56 m_Time += deltaT;
57
58 if ( m_Time >= m_NextEvent )
59 {
60 m_Time = 0;
62
63 player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_HOT);
64 }
65 }
66};
float m_NextEvent
Definition fever.c:4
override bool DeactivateCondition(PlayerBase player)
Definition fever.c:46
override void OnReconnect(PlayerBase player)
Definition fever.c:32
override void OnActivate(PlayerBase player)
Definition fever.c:24
float m_Time
Definition fever.c:3
static const float EVENT_INTERVAL_MIN
Definition fever.c:6
override void OnTick(PlayerBase player, float deltaT)
Definition fever.c:51
override void Init()
Definition fever.c:10
override bool ActivateCondition(PlayerBase player)
Definition fever.c:19
override void OnDeactivate(PlayerBase player)
Definition fever.c:38
static const float EVENT_INTERVAL_MAX
Definition fever.c:7
Definition enmath.c:7
static const float WATER_LOSS_FEVER
int m_ID
ID of effect, given by SEffectManager when registered (automatically done when playing through it).
Definition effect.c:51
eModifiers
Definition emodifiers.c:2
static float RandomFloatInclusive(float min, float max)
Returns a random float number between and min [inclusive] and max [inclusive].
Definition enmath.c:106
bool m_TrackActivatedTime
overall time this modifier was active
bool m_AnalyticsStatsEnabled
eModifierSyncIDs m_SyncID
float m_TickIntervalActive
float m_TickIntervalInactive
eModifierSyncIDs
const int DEFAULT_TICK_TIME_INACTIVE
const int DEFAULT_TICK_TIME_ACTIVE_SHORT
eNotifiers
void OnActivate()