private void OnSicknessTrigger(GameObject target, TriggerInfo trigger) { int num = UnityEngine.Random.Range(0, trigger.sickness_ids.Length); string text = trigger.sickness_ids[num]; Sickness sickness = null; Database.Sicknesses sicknesses = Db.Get().Sicknesses; for (int i = 0; i < sicknesses.Count; i++) { if (sicknesses[i].Id == text) { sickness = sicknesses[i]; break; } } if (sickness != null) { string infection_source_info = trigger.sourceCallback(base.gameObject, target); SicknessExposureInfo exposure_info = new SicknessExposureInfo(sickness.Id, infection_source_info); Klei.AI.Sicknesses sicknesses2 = target.GetComponent <MinionModifiers>().sicknesses; sicknesses2.Infect(exposure_info); } else { DebugUtil.DevLogErrorFormat(base.gameObject, "Couldn't find sickness with id [{0}]", text); } }
protected override void OnPrefabInit() { base.OnPrefabInit(); amounts = new Amounts(base.gameObject); sicknesses = new Sicknesses(base.gameObject); attributes = new Attributes(base.gameObject); foreach (string initialAmount in initialAmounts) { amounts.Add(new AmountInstance(Db.Get().Amounts.Get(initialAmount), base.gameObject)); } Traits component = GetComponent <Traits>(); if (initialTraits != null) { string[] array = initialTraits; foreach (string id in array) { Trait trait = Db.Get().traits.Get(id); component.Add(trait); } } }