internal static void PerformCraft() { for (int i = Crafts.Count - 1; i > -1; i--) { var craft = Crafts[i]; if (craft.TechType != TechType.None && craft.Manager != null) { if (!craft.IsCraftable) { continue; } var techData = DSSHelpers.CheckIfTechDataAvailable(craft, out var pass); if (pass) { if (craft.Manager.RemoveItems(techData.Ingredients)) { foreach (TechType item in techData.LinkedItems) { craft.Manager.AddItemToContainer(item.ToInventoryItem()); } for (int j = 0; j < techData.craftAmount; j++) { craft.Manager.AddItemToContainer(craft.TechType.ToInventoryItem()); } } } } } }
public static void PerformCraft(FCSOperation craft) { var techData = DSSHelpers.CheckIfTechDataAvailable(craft, out var pass); if (pass) { if (craft.Manager.RemoveItems(techData.Ingredients)) { foreach (TechType item in techData.LinkedItems) { craft.Manager.AddItemToContainer(item.ToInventoryItem()); } for (int j = 0; j < techData.craftAmount; j++) { craft.Manager.AddItemToContainer(craft.TechType.ToInventoryItem()); } } } }