private static void ExportSkills() { var dc = DCT.DataCenter; var dcObjects = dc.Root.ChildrenByName("StrSheet_UserSkill").SelectMany(x => x.ChildrenByName("String")); var skills = dcObjects .Select(data => new { Id = data.Attribute <int>("id"), Race = data.Attribute <string>("race"), Gender = data.Attribute <string>("gender"), Class = PlayerClassHelper.Parse(data.Attribute <string>("class")), Name = data.Attribute <string>("name") }) .Where(x => !string.IsNullOrEmpty(x.Name)) .OrderBy(x => x.Class.ToString()) .ThenBy(x => x.Id); var lines = skills.Select(x => string.Join(" ", x.Id, x.Race, x.Gender, x.Class, x.Name)); File.WriteAllLines(Utils.GetOutput("user_skills.txt"), lines); }
private static void ExportSkills() { var dc = DCT.DataCenter; var dcObjects = dc.Root.ChildrenByName("StrSheet_UserSkill").SelectMany(x => x.ChildrenByName("String")); var skills = dcObjects .Select(data => new { id = NullCommon(data.Attribute <int>("id")), race = NullCommon(data.Attribute <string>("race")), gender = NullCommon(data.Attribute <string>("gender")), @class = NullCommon(PlayerClassHelper.Parse(data.Attribute <string>("class"))), name = NullCommon(data.Attribute <string>("name")) }) .Where(x => !string.IsNullOrEmpty(x.name)) .OrderBy(x => x.@class) .ThenBy(x => x.id); var lines = skills.Select(o => JsonConvert.SerializeObject(o, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore })); File.WriteAllLines(Utils.GetOutput("user_skills.json"), lines); }
public RaceGenderClass(string race, string gender, string @class) { Race = (Race)Enum.Parse(typeof(Race), race, true); Gender = (Gender)Enum.Parse(typeof(Gender), gender); Class = PlayerClassHelper.Parse(@class); }