//+ DIET CONTROL // Fixes the Diets for the slimes internal static void FixDiets() { foreach (SlimeDefinition def in GameContext.Instance.SlimeDefinitions.Slimes) { if (Identifiable.IsLargo(def.IdentifiableId) && !IdentifiableHandler.IsSynergy(def.IdentifiableId)) { InjectKookadobaDiet(def.BaseSlimes[0].IdentifiableId, def.Diet); InjectKookadobaDiet(def.BaseSlimes[1].IdentifiableId, def.Diet); InjectSpicyDiet(def.BaseSlimes[0].IdentifiableId, def.Diet); InjectSpicyDiet(def.BaseSlimes[1].IdentifiableId, def.Diet); InjectFavoriteDiet(def.BaseSlimes[0].IdentifiableId, def.Diet, def.BaseSlimes[1].IdentifiableId); InjectFavoriteDiet(def.BaseSlimes[1].IdentifiableId, def.Diet, def.BaseSlimes[0].IdentifiableId); InjectSuperDiet(def.BaseSlimes[0].IdentifiableId, def.Diet, def.BaseSlimes[1].IdentifiableId); InjectSuperDiet(def.BaseSlimes[1].IdentifiableId, def.Diet, def.BaseSlimes[0].IdentifiableId); } else { InjectKookadobaDiet(def.IdentifiableId, def.Diet); InjectSpicyDiet(def.IdentifiableId, def.Diet); InjectFavoriteDiet(def.IdentifiableId, def.Diet); InjectSuperDiet(def.IdentifiableId, def.Diet); InjectSpecLargoDiet(def.IdentifiableId, def.Diet); } } ClearMemory(); }
// Registers all Identifiables internal static void RegisterAll() { // Register all RegistryUtils.RegisterAll <IdentifiableItem>(PRIORITIES, (item) => { Items.Add(item.ID, item is IPediaRegistry registry ? item.Register().AddPediaMapping(registry.PediaID) : item.Register()); IdentifiableHandler.SetupIdentifiable(item.ID); }); }