Add wet condition and disease aftereffect (phase 84).

This commit is contained in:
Leonid Pershin
2026-08-21 20:22:10 +03:00
parent 3e52a8cac5
commit b3e52e5faa
15 changed files with 455 additions and 19 deletions
@@ -15,6 +15,8 @@ public class DiseaseDefTests
Assert.True(catalog.Diseases.ContainsKey("Influenza"));
Assert.True(catalog.Diseases.ContainsKey("StomachBug"));
Assert.True(catalog.Diseases.ContainsKey("Otitis"));
Assert.True(catalog.Diseases.ContainsKey(DiseaseFamilies.WetDefName));
Assert.True(catalog.Diseases.ContainsKey(DiseaseFamilies.AftereffectDefName));
var cold = catalog.Diseases["CommonCold"];
Assert.Equal(DiseaseFamilies.Respiratory, cold.Family);
@@ -22,6 +24,9 @@ public class DiseaseDefTests
Assert.True(cold.Stages.Count >= 2);
Assert.Equal(0.5f, cold.IncubationDays);
Assert.Equal(14f, cold.ImmunityDays);
Assert.Equal(0.07f, cold.WetChancePerDay);
Assert.Equal(0.55f, catalog.Diseases["Influenza"].AftereffectMinSeverity);
Assert.Equal(DiseaseFamilies.Condition, catalog.Diseases[DiseaseFamilies.WetDefName].Family);
Assert.Equal(0.55f, cold.NodeContagionChancePerDay);
Assert.Equal(0.25f, cold.ClassContagionChancePerDay);
Assert.True(cold.ContagiousDuringIncubation);
@@ -30,7 +35,11 @@ public class DiseaseDefTests
Assert.Equal("ОРВИ", catalog.Label("ru", cold));
Assert.Equal("Common cold", catalog.Label("en", cold));
Assert.Equal("Мокрый", catalog.Label("ru", catalog.Diseases[DiseaseFamilies.WetDefName]));
Assert.Equal("Wet", catalog.Label("en", catalog.Diseases[DiseaseFamilies.WetDefName]));
Assert.Equal(1f, catalog.BehaviorRules!.DiseaseVectorScale);
Assert.Equal(0.75f, catalog.BehaviorRules.WetRainChance);
Assert.Equal(0.85f, catalog.BehaviorRules.WetSnowChance);
Assert.Equal(3, catalog.BehaviorRules.DiseaseOutbreakMinNewCases);
Assert.True(catalog.Events.ContainsKey("DiseaseOutbreak"));
Assert.Equal(EventTriggers.DiseaseOutbreak, catalog.Events["DiseaseOutbreak"].Trigger);