3 const int AGENT_THRESHOLD_ACTIVATE = 1150;
4 const int AGENT_THRESHOLD_DEACTIVATE = 1100;
6 const float STAMINA_DEPLETION_MULTIPLIER = 1.3;
7 const float STAMINA_RECOVERY_MULTIPLIER = 0.5;
9 const float HEALTH_LOSS_PNEUMONIA = 0.1;
11 private const int TEMPORARY_RESISTANCE_TIME = 600;
22 override string GetDebugText()
37 player.IncreaseDiseaseCount();
45 player.DecreaseDiseaseCount();
50 player.SetTemporaryResistanceToAgent(
eAgents.INFLUENZA, TEMPORARY_RESISTANCE_TIME);
55 return (player.GetSingleAgentCount(
eAgents.INFLUENZA) <= AGENT_THRESHOLD_DEACTIVATE);
60 float healthLoss = HEALTH_LOSS_PNEUMONIA * deltaT;
62 player.AddHealth(-healthLoss);
64 float heavyBreathChance = player.GetSingleAgentCountNormalized(
eAgents.INFLUENZA);
66 if (
Math.RandomFloat01() < heavyBreathChance /
Math.RandomInt(1,15) )
68 player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_GASP);
bool ActivateCondition(PlayerBase player)
void OnActivate(PlayerBase player)
bool DeactivateCondition(PlayerBase player)
void OnTick(PlayerBase player, float deltaT)
void OnDeactivate(PlayerBase player)
int m_ID
ID of effect, given by SEffectManager when registered (automatically done when playing through it)
bool m_TrackActivatedTime
overall time this modifier was active
bool m_AnalyticsStatsEnabled
float m_TickIntervalActive
float m_TickIntervalInactive
const int DEFAULT_TICK_TIME_INACTIVE
enum eModifierSyncIDs DEFAULT_TICK_TIME_ACTIVE