Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
woundinfection.c
Go to the documentation of this file.
2{
3 static const int AGENT_THRESHOLD_ACTIVATE = 100;
4 static const int AGENT_THRESHOLD_DEACTIVATE = 20;
5
7 {
8 Error("[ERROR] :: WoundInfectionMdfr is deprecated.");
9 }
10}
11
12class WoundInfectStage1Mdfr : ModifierBase
13{
14 static const int AGENT_THRESHOLD_ACTIVATE = 1;
15 static const int AGENT_THRESHOLD_DEACTIVATE = 250;
16 static const int AGENT_THRESHOLD_FEVER = 250;
17
18 static const int PAIN_EVENT_INTERVAL_MIN = 18;
19 static const int PAIN_EVENT_INTERVAL_MAX = 26;
20
21 protected float m_NextEvent;
22 protected float m_Time;
23
24 override void Init()
25 {
28 m_ID = eModifiers.MDF_WOUND_INFECTION1;
31 m_SyncID = eModifierSyncIDs.MODIFIER_SYNC_WOUND_INFECT_1;
32 }
33
34 override string GetDebugText()
35 {
36 return ("Activate threshold: "+AGENT_THRESHOLD_ACTIVATE + "| " +"Deativate threshold: "+AGENT_THRESHOLD_DEACTIVATE);
37 }
38
39 override protected bool ActivateCondition(PlayerBase player)
40 {
41 return (player.GetSingleAgentCount(eAgents.WOUND_AGENT) >= AGENT_THRESHOLD_ACTIVATE && !player.GetModifiersManager().IsModifierActive(eModifiers.MDF_WOUND_INFECTION2));
42 }
43
44 override protected void OnActivate(PlayerBase player)
45 {
46 player.IncreaseDiseaseCount();
47 player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_PAIN_LIGHT);
48
50 }
51
52 override protected void OnDeactivate(PlayerBase player)
53 {
54 player.DecreaseDiseaseCount();
55 }
56
57 override protected bool DeactivateCondition(PlayerBase player)
58 {
59 return !ActivateCondition(player);
60 }
61
62 override protected void OnTick(PlayerBase player, float deltaT)
63 {
64 m_Time += deltaT;
65
66 if (m_Time >= m_NextEvent)
67 {
68 player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_PAIN_LIGHT);
69 m_Time = 0;
71 }
72 }
73}
Definition enmath.c:7
override bool DeactivateCondition(PlayerBase player)
override string GetDebugText()
override void OnTick(PlayerBase player, float deltaT)
override void Init()
override bool ActivateCondition(PlayerBase player)
static const int AGENT_THRESHOLD_ACTIVATE
static const int AGENT_THRESHOLD_DEACTIVATE
eAgents
Definition eagents.c:3
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
float m_Time
Definition environment.c:59
void Error(string err)
Messagebox with error message.
Definition endebug.c:90
static float RandomFloatInclusive(float min, float max)
Returns a random float number between and min [inclusive] and max [inclusive].
Definition enmath.c:106
HeavyMetalMdfr AGENT_THRESHOLD_ACTIVATE
static const int AGENT_THRESHOLD_DEACTIVATE
Definition heavymetal.c:43
bool m_TrackActivatedTime
overall time this modifier was active
bool m_AnalyticsStatsEnabled
eModifierSyncIDs m_SyncID
float m_TickIntervalActive
float m_TickIntervalInactive
void OnDeactivate(PlayerBase player)
Definition heavymetal.c:211
eModifierSyncIDs
const int DEFAULT_TICK_TIME_INACTIVE
enum eModifierSyncIDs DEFAULT_TICK_TIME_ACTIVE
void OnActivate()
float m_NextEvent
static const int PAIN_EVENT_INTERVAL_MIN
static const int PAIN_EVENT_INTERVAL_MAX
static const int AGENT_THRESHOLD_FEVER