Ejemplo n.º 1
0
        protected void InitializeElemExposureArray(ref ElemExposureInfo[] infoArray, ElemExposureInfo default_value)
        {
            List <Element> elements = ElementLoader.elements;

            infoArray = new ElemExposureInfo[elements.Count];
            for (int i = 0; i < elements.Count; i++)
            {
                infoArray[i] = default_value;
            }
        }
Ejemplo n.º 2
0
    public static float CalculateDelta(int disease_count, int element_idx, float mass, int environment_cell, float temperature, float tags_multiplier_base, Disease disease, float dt)
    {
        float          num            = 0f;
        ElemGrowthInfo elemGrowthInfo = disease.elemGrowthInfo[element_idx];

        num += elemGrowthInfo.CalculateDiseaseCountDelta(disease_count, mass, dt);
        float half_life_in_seconds = Disease.CalculateRangeHalfLife(temperature, ref disease.temperatureRange, ref disease.temperatureHalfLives);
        float num2 = Disease.HalfLifeToGrowthRate(half_life_in_seconds, dt);

        num += (float)disease_count * num2 - (float)disease_count;
        float num3 = Mathf.Pow(tags_multiplier_base, dt);

        num += (float)disease_count * num3 - (float)disease_count;
        if (Grid.IsValidCell(environment_cell))
        {
            byte             b = Grid.ElementIdx[environment_cell];
            ElemExposureInfo elemExposureInfo = disease.elemExposureInfo[b];
            num += elemExposureInfo.CalculateExposureDiseaseCountDelta(disease_count, dt);
        }
        return(num);
    }