/// <summary> /// Creates necessary information for the Update-PacketParser /// </summary> public static void CreatePacketParserInfo(string wowFile, string outputFile) { WoWFile file = new WoWFile(wowFile); var fields = UpdateFieldExtractor.Extract(file); using (var writer = new StreamWriter(outputFile)) { for (UpdateFieldGroup g = UpdateFieldGroup.Object; g < UpdateFieldGroup.Count; g++) { foreach (var field in s_updateFieldsByGroup[(int)g]) { var size = field.Size; if (size > 1) { writer.WriteLine("SetType({0}, {1}, {2});", field.FullTypeName, field.FullName, field.Size); } else { writer.WriteLine("FieldTypes[{0}] = {1};", field.FullName, field.FullTypeName); } } } } }
public static void SetWowDir(string dir) { _wowFile = new WoWFile(dir); _extractor = new UpdateFieldExtractor(_wowFile); }