FoodPoisonAgent.c
class FoodPoisonAgent : AgentBase
{
override void Init()
{
m_Type = eAgents.FOOD_POISON;
m_Invasibility = 1.0;
m_TransferabilityIn = 1.0;
m_TransferabilityOut = 0.0;
m_AntibioticsResistance = 1.0; //deprecated, use m_DrugResistances to initialize this agents resistance to a given drug
m_MaxCount = 800;
m_Potency = EStatLevels.GREAT;
m_DieOffSpeed = 0.0;
m_Digestibility = 0.5;
}
override EStatLevels GetPotencyEx(PlayerBase player)
{
if (player.GetStomach().GetVolumeContainingAgent01(eAgents.FOOD_POISON) == 0.0)
return EStatLevels.LOW;
return super.GetPotencyEx(player);
}
override float GetInvasibilityEx(PlayerBase player)
{
return player.GetStomach().GetVolumeContainingAgent01(eAgents.FOOD_POISON);
}
override float GetDieOffSpeedEx(PlayerBase player)
{
if (player.GetModifiersManager().IsModifierActive(eModifiers.MDF_CHARCOAL))
return 0.5;
if (player.m_AgentPool.GetSingleAgentCount(eAgents.FOOD_POISON) <= PoisoningMdfr.AGENT_THRESHOLD_DEACTIVATE)
return 0.3;
return 0.0;
}
override float GetDigestibilityEx(PlayerBase player)
{
if (!player.GetModifiersManager().IsModifierActive(eModifiers.MDF_POISONING))
return 1.0;
return super.GetDigestibilityEx(player);
}
}