Example #1
0
        public override IEnumerable <RecipeDef> GetAllRecipes()
        {
            HashSet <RecipeDef> recipes = new HashSet <RecipeDef>();
            // Imports recipes from modextension and recipes tag
            AssemblerDefModExtension extension = def.GetModExtension <AssemblerDefModExtension>();

            if ((extension?.importRecipesFrom?.Count ?? 0) > 0)
            {
                foreach (RecipeDef r in extension.importRecipesFrom.SelectMany(t => t.AllRecipes))
                {
                    if (!recipes.Contains(r) && base.SatisfiesSkillRequirements(r))
                    {
                        recipes.Add(r);
                        yield return(r);
                    }
                }
            }
            if (def.recipes != null)
            {
                foreach (RecipeDef r in def.recipes)
                {
                    yield return(r);
                }
            }
        }
        public override IEnumerable <RecipeDef> GetAllRecipes()
        {
            // Imports recipes from modextension and recipes tag
            AssemblerDefModExtension extension = def.GetModExtension <AssemblerDefModExtension>();

            if (extension?.importRecipesFrom != null)
            {
                foreach (RecipeDef r in extension.importRecipesFrom.AllRecipes)
                {
                    yield return(r);
                }
            }
            if (def.recipes != null)
            {
                foreach (RecipeDef r in def.recipes)
                {
                    yield return(r);
                }
            }
        }