public static GameObject CreateMoo(string id, string name, string desc, string anim_file, bool is_baby) { GameObject gameObject = BaseMooConfig.BaseMoo(id, name, CREATURES.SPECIES.MOO.DESC, "MooBaseTrait", anim_file, is_baby, null); EntityTemplates.ExtendEntityToWildCreature(gameObject, MooTuning.PEN_SIZE_PER_CREATURE, 75f); Trait trait = Db.Get().CreateTrait("MooBaseTrait", name, name, null, false, null, true, true); trait.Add(new AttributeModifier(Db.Get().Amounts.Calories.maxAttribute.Id, MooTuning.STANDARD_STOMACH_SIZE, name, false, false, true)); trait.Add(new AttributeModifier(Db.Get().Amounts.Calories.deltaAttribute.Id, (0f - MooTuning.STANDARD_CALORIES_PER_CYCLE) / 600f, name, false, false, true)); trait.Add(new AttributeModifier(Db.Get().Amounts.HitPoints.maxAttribute.Id, 25f, name, false, false, true)); trait.Add(new AttributeModifier(Db.Get().Amounts.Age.maxAttribute.Id, 75f, name, false, false, true)); HashSet <Tag> hashSet = new HashSet <Tag>(); hashSet.Add("GasGrass".ToTag()); Diet.Info[] infos = new Diet.Info[1] { new Diet.Info(hashSet, POOP_ELEMENT, CALORIES_PER_DAY_OF_PLANT_EATEN, KG_POOP_PER_DAY_OF_PLANT, null, 0f, false, false) }; Diet diet = new Diet(infos); CreatureCalorieMonitor.Def def = gameObject.AddOrGetDef <CreatureCalorieMonitor.Def>(); def.diet = diet; def.minPoopSizeInCalories = MIN_POOP_SIZE_IN_CALORIES; SolidConsumerMonitor.Def def2 = gameObject.AddOrGetDef <SolidConsumerMonitor.Def>(); def2.diet = diet; return(gameObject); }
public void OnSpawn(GameObject inst) { BaseMooConfig.OnSpawn(inst); }