void LoadKerbalRecipe ()
		{
			var node = LoadRecipeNode ("EL_KerbalRecipe");
			if (node != null) {
				var recipe = new PartRecipe (node);
				ExRecipeDatabase.part_recipes["kerbalEVA"] = recipe;
			}
		}
        void LoadKerbalRecipe()
        {
            var node = LoadRecipeNode("EL_KerbalRecipe");

            if (node != null)
            {
                var recipe = new PartRecipe(node);
                ExRecipeDatabase.part_recipes["kerbalEVA"] = recipe;
            }
        }
        IEnumerator LoadPartRecipes()
        {
            //print ("[EL Recipes] LoadPartRecipes");
            var dbase          = GameDatabase.Instance;
            var configurls     = dbase.GetConfigs("PART");
            var module_recipes = ELRecipeDatabase.module_recipes;

            foreach (var c in configurls)
            {
                var    node = c.config;
                string name = node.GetValue("name");
                if (String.IsNullOrEmpty(name))
                {
                    print("[EL Recipes] skipping unnamed PART");
                    continue;
                }
                name = name.Replace('_', '.');
                //print("[EL Recipes] " + name);
                if (node.HasNode("EL_Recipe"))
                {
                    var recipe_node = node.GetNode("EL_Recipe");
                    //print($"[EL Recipes] {name} {recipe_node}");
                    var recipe = new PartRecipe(recipe_node);
                    ELRecipeDatabase.part_recipes[name] = recipe;
                }
                else
                {
                    var recipe  = new PartRecipe();
                    var modules = node.GetNodes("MODULE");
                    for (int i = 0; i < modules.Length; i++)
                    {
                        var mod_name = modules[i].GetValue("name");
                        if (String.IsNullOrEmpty(mod_name))
                        {
                            print("[EL Recipes] skipping unnamed MODULE");
                            continue;
                        }
                        if (module_recipes.ContainsKey(mod_name))
                        {
                            //print ("[EL Recipes] adding module " + mod_name);
                            var mod_ingredient = new Ingredient(mod_name, 1);
                            recipe.part_recipe.AddIngredient(mod_ingredient);
                        }
                    }
                    ELRecipeDatabase.part_recipes[name] = recipe;
                }
                yield return(null);
            }
        }
 IEnumerator LoadPartRecipes()
 {
     //print ("[EL Recipes] LoadPartRecipes");
     var dbase = GameDatabase.Instance;
     var configurls = dbase.GetConfigs("PART");
     var module_recipes = ExRecipeDatabase.module_recipes;
     foreach (var c in configurls) {
         var node = c.config;
         string name = node.GetValue("name");
         if (String.IsNullOrEmpty (name)) {
             print ("[EL Recipes] skipping unnamed PART");
             continue;
         }
         name = name.Replace('_', '.');
         //print("[EL Recipes] " + name);
         if (node.HasNode ("EL_Recipe")) {
             var recipe_node = node.GetNode ("EL_Recipe");
             var recipe = new PartRecipe (recipe_node);
             ExRecipeDatabase.part_recipes[name] = recipe;
         } else {
             var recipe = new PartRecipe ();
             var modules = node.GetNodes ("MODULE");
             for (int i = 0; i < modules.Length; i++) {
                 var mod_name = modules[i].GetValue ("name");
                 if (String.IsNullOrEmpty (mod_name)) {
                     print ("[EL Recipes] skipping unnamed MODULE");
                     continue;
                 }
                 if (module_recipes.ContainsKey (mod_name)) {
                     //print ("[EL Recipes] adding module " + mod_name);
                     var mod_ingredient = new Ingredient (mod_name, 1);
                     recipe.part_recipe.AddIngredient (mod_ingredient);
                 }
             }
             ExRecipeDatabase.part_recipes[name] = recipe;
         }
         yield return null;
     }
     done = true;
 }