private static void ParseTraits(string traitFile, string outputFolder) { using (StreamReader reader = new StreamReader(traitFile)) { RawStoreTraits rawTraits = RawStoreTraits.FromJson(reader.ReadToEnd()); ProcessedStoreTraits processedVanillaTraits = new ProcessedStoreTraits(); ProcessedStoreTraits processedMagicTraits = new ProcessedStoreTraits(); foreach (RawTrait rawTrait in rawTraits.Traits) { if (!rawTrait.CanAdd) { continue; } ProcessedTrait processedTrait = ProcessedTrait.FromRawTrait(rawTrait); if (rawTrait.AddPrice == 4000) { processedMagicTraits.Traits.Add(processedTrait); } else { processedVanillaTraits.Traits.Add(processedTrait); } } string outputFileVanilla = Path.Combine(outputFolder, "StoreTraitsVanilla.json"); string outputFileMagic = Path.Combine(outputFolder, "StoreTraitsMagic.json"); GenerateTraitsOutput(processedVanillaTraits, outputFileVanilla); GenerateTraitsOutput(processedMagicTraits, outputFileMagic); } }
private static void GenerateTraitsOutput(ProcessedStoreTraits traits, string outputFile) { Directory.CreateDirectory(Path.GetDirectoryName(outputFile)); using (StreamWriter writer = new StreamWriter(outputFile)) { writer.WriteLine(traits.ToJson()); } }