public void Generate_All_Files() { // TABS var salvageTab = new CustomCraftingTab { TabID = SalvageTabID, DisplayName = "Salvage and Recycling", ParentTabPath = PathToSalvageTab, SpriteItemID = TechType.Trashcans }; var tabList = new CustomCraftingTabList { salvageTab }; WriteFile(tabList, "EquipmentSalvage_Tabs.txt"); // Move the Metal Salvage into the new tab var moveMetalSalvage = new MovedRecipe { ItemID = TechType.Titanium.ToString(), OldPath = PathHelper.Fabricator.Resources.BasicMaterials.BasicMaterialsTab.GetCraftingPath.ToString(), NewPath = tabList[0].FullPath, Hidden = false, Copied = true }; var movedList = new MovedRecipeList { moveMetalSalvage }; WriteFile(movedList, "EquipmentSalvage_Moves.txt"); // RECIPES var leadSalvage = new AliasRecipe { ItemID = "LeadSalvage", DisplayName = "Salvage Lead", Tooltip = "Recover the useful lead from a radiation suit no longer in use", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.BasicMaterials, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.Lead, Ingredients = { new EmIngredient(TechType.RadiationSuit), new EmIngredient(TechType.RadiationHelmet), new EmIngredient(TechType.RadiationGloves) }, LinkedItemIDs = { TechType.Lead.ToString(), TechType.Lead.ToString() }, UnlockedBy = { TechType.RadiationSuit.ToString() } }; var copperSalvage = new AliasRecipe { ItemID = "CopperSalvage", DisplayName = "Salvage Copper", Tooltip = "Recover the precious copper from unneeded power cells", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.BasicMaterials, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.Copper, Ingredients = { new EmIngredient(TechType.PowerCell) }, LinkedItemIDs = { TechType.Copper.ToString(), TechType.Copper.ToString() }, UnlockedBy = { TechType.PowerCell.ToString() } }; var deepSalvage = new AliasRecipe { ItemID = "DeepSalvage", DisplayName = "Salvage Precious Metals", Tooltip = "Recover the lithium and magnetite from unneeded deep power cells", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.AdvancedMaterials, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.Magnetite, Ingredients = { new EmIngredient("DeepPowerCell") }, LinkedItemIDs = { TechType.Lithium.ToString(), TechType.Magnetite.ToString(), TechType.Lithium.ToString(), TechType.Magnetite.ToString() }, UnlockedBy = { "DeepPowerCell" } }; var ionSalvage = new AliasRecipe { ItemID = "IonCubeSalvage", DisplayName = "Salvage Ion Cubes", Tooltip = "Recover the precious ion cubes from unneeded ion power cells", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.AdvancedMaterials, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.PrecursorIonCrystal, Ingredients = { new EmIngredient(TechType.PrecursorIonPowerCell) }, LinkedItemIDs = { TechType.PrecursorIonCrystal.ToString(), TechType.PrecursorIonCrystal.ToString() }, UnlockedBy = { TechType.PrecursorIonPowerCell.ToString() } }; var diamondSalvage = new AliasRecipe { ItemID = "DiamondSalvage", DisplayName = "Salvage Diamonds", Tooltip = "Recover diamonds from retired laser cutters. Don't forget to remove the batteries first.", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.AdvancedMaterials, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.Diamond, Ingredients = { new EmIngredient(TechType.LaserCutter) }, LinkedItemIDs = { TechType.Diamond.ToString(), TechType.Diamond.ToString() }, UnlockedBy = { TechType.Diamond.ToString() } }; var wireSalvage = new AliasRecipe { ItemID = "WireSalvage", DisplayName = "Salvage Copper Wire", Tooltip = "Recover copper wire from retired seaglide. Don't forget to remove the batteries first.", Path = tabList[0].FullPath, ForceUnlockAtStart = !EnableUnlocking, PdaCategory = TechCategory.Electronics, PdaGroup = TechGroup.Resources, SpriteItemID = TechType.CopperWire, Ingredients = { new EmIngredient(TechType.Seaglide) }, LinkedItemIDs = { TechType.CopperWire.ToString(), }, UnlockedBy = { TechType.Seaglide.ToString() } }; var aliasList = new AliasRecipeList { leadSalvage, copperSalvage, deepSalvage, ionSalvage, diamondSalvage, wireSalvage }; WriteFile(aliasList, "EquipmentSalvage_Recipes.txt"); }
public void CreateFromClases_ThenTest_SampleMovedRecipes() { var moveTiIngot = new MovedRecipe { ItemID = TechType.TitaniumIngot.ToString(), OldPath = PathHelper.Fabricator.Resources.BasicMaterials.BasicMaterialsTab.GetCraftingPath.ToString(), NewPath = PathHelper.Fabricator.Resources.AdvancedMaterials.AdvancedMaterialsTab.GetCraftingPath.ToString(), }; var hideRifile = new MovedRecipe { ItemID = TechType.StasisRifle.ToString(), OldPath = PathHelper.Fabricator.Personal.Tools.ToolsTab.GetCraftingPath.ToString(), Hidden = true }; var copyUltraFins = new MovedRecipe { ItemID = TechType.UltraGlideFins.ToString(), NewPath = PathHelper.Fabricator.Personal.Tools.ToolsTab.GetCraftingPath.ToString(), Copied = true }; var origMovedRepList = new MovedRecipeList { moveTiIngot, hideRifile, copyUltraFins }; string serialized = origMovedRepList.PrettyPrint(); string samples2File = SampleFileDirectory + "MovedRecipes_Samples2.txt"; File.WriteAllText(samples2File, serialized); var readingSizesList = new MovedRecipeList(); string reserialized = File.ReadAllText(samples2File); bool success = readingSizesList.FromString(reserialized); Assert.IsTrue(success); Assert.AreEqual(origMovedRepList.Count, readingSizesList.Count); Assert.AreEqual(TechType.TitaniumIngot.ToString(), readingSizesList[0].ItemID); Assert.AreEqual(TechType.StasisRifle.ToString(), readingSizesList[1].ItemID); Assert.AreEqual(TechType.UltraGlideFins.ToString(), readingSizesList[2].ItemID); Assert.AreEqual(moveTiIngot.OldPath, readingSizesList[0].OldPath); Assert.AreEqual(moveTiIngot.NewPath, readingSizesList[0].NewPath); Assert.AreEqual(moveTiIngot.Hidden, readingSizesList[0].Hidden); Assert.AreEqual(moveTiIngot.Copied, readingSizesList[0].Copied); Assert.AreEqual(hideRifile.OldPath, readingSizesList[1].OldPath); Assert.AreEqual(hideRifile.NewPath, readingSizesList[1].NewPath); Assert.AreEqual(hideRifile.Hidden, readingSizesList[1].Hidden); Assert.AreEqual(hideRifile.Copied, readingSizesList[1].Copied); Assert.AreEqual(copyUltraFins.OldPath, readingSizesList[2].OldPath); Assert.AreEqual(copyUltraFins.NewPath, readingSizesList[2].NewPath); Assert.AreEqual(copyUltraFins.Hidden, readingSizesList[2].Hidden); Assert.AreEqual(copyUltraFins.Copied, readingSizesList[2].Copied); }