public static void Compress(XmlReader xml, SanmaYonmaBundleWriter writer) { string?queuedDraw = null; while (!xml.EOF) { xml.Read(); if (xml.NodeType != XmlNodeType.Element) { continue; } var name = xml.LocalName; if (queuedDraw != null && (name[1..] != queuedDraw[1..] || queuedDraw[0] - 'T' != name[0] - 'D'))
public static void Convert() { using var bundleWriter = new SanmaYonmaBundleWriter(_sanmaDirectory, _yonmaDirectory, 1000); var count = 0; var xmlReaderSettings = new XmlReaderSettings { NameTable = null }; foreach (var fileName in Directory.EnumerateFiles(_sourceDirectory)) { using var xmlReader = XmlReader.Create(fileName, xmlReaderSettings); ReplayConverter.Compress(xmlReader, bundleWriter); count += 1; if (count % 1000 == 0) { Console.WriteLine(count); } } }