3 static const int AGENT_THRESHOLD_ACTIVATE = 400;
4 static const int AGENT_THRESHOLD_DEACTIVATE = AGENT_THRESHOLD_ACTIVATE - 1;
5 static const int AGENT_THRESHOLD_FEVER = 250;
6 static const float DAMAGE_PER_SEC = -3;
17 override string GetDebugText()
19 return (
"Activate threshold: "+AGENT_THRESHOLD_ACTIVATE +
"| " +
"Deativate threshold: "+AGENT_THRESHOLD_DEACTIVATE);
22 override protected bool ActivateCondition(
PlayerBase player)
24 return ( player.GetSingleAgentCount(
eAgents.CHEMICAL_POISON) >= AGENT_THRESHOLD_ACTIVATE );
28 override protected void OnActivate(
PlayerBase player)
30 player.IncreaseDiseaseCount();
31 player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_VOMIT);
34 override protected void OnDeactivate(
PlayerBase player)
36 player.DecreaseDiseaseCount();
39 override protected bool DeactivateCondition(
PlayerBase player)
41 return !ActivateCondition(player);
44 override protected void OnTick(
PlayerBase player,
float deltaT)
46 if(
GetAttachedTime() > 4 && (!player.GetSymptomManager().GetCurrentPrimaryActiveSymptom() || (player.GetSymptomManager().GetCurrentPrimaryActiveSymptom() && player.GetSymptomManager().GetCurrentPrimaryActiveSymptom().GetType() != SymptomIDs.SYMPTOM_VOMIT)) )
48 player.AddHealth(
"",
"Shock", -100);
51 if (player.IsUnconscious())
53 player.AddHealth(
"",
"",DAMAGE_PER_SEC * deltaT);