/// <summary> /// If an XML path has been populated, generates a list of hidden achievements. Excludes any files that start with an underscore (_). /// </summary> public List <HiddenAchievement> GetHiddenAchievementData() { XNamespace ns = this.HiddenAchievementsNamespace; var hiddenAchievements = new List <HiddenAchievement>(); if (!string.IsNullOrWhiteSpace(this.HiddenAchievementsXmlPath) && Directory.Exists(this.HiddenAchievementsXmlPath)) { var xmlDirectory = new DirectoryInfo(this.HiddenAchievementsXmlPath); var xmlFiles = xmlDirectory.GetFiles("*.xml").Where(f => !f.Name.StartsWith("_")); foreach (var xmlFile in xmlFiles) { var xml = XDocument.Load(xmlFile.FullName); var rootXml = xml.Element(ns + "XblAchievements"); var gameId = rootXml.Element(ns + "Game").Attribute("id").Value; var gameTitle = rootXml.Element(ns + "Game").Element(ns + "Title").Value; var achievements = rootXml.Elements(ns + "Achievement"); if (achievements.Count() > 0) { foreach (var achievement in achievements) { var hiddenAchievement = new HiddenAchievement(); hiddenAchievement.GameId = gameId; hiddenAchievement.GameTitle = gameTitle; hiddenAchievement.Id = achievement.Attribute("id").Value; hiddenAchievement.Title = achievement.Element(ns + "Title").Value; hiddenAchievement.Image = achievement.Element(ns + "Image").Value; hiddenAchievement.Description = achievement.Element(ns + "Description").Value; hiddenAchievements.Add(hiddenAchievement); } } } } return(hiddenAchievements); }
/// <summary> /// If an XML path has been populated, generates a list of hidden achievements. Excludes any files that start with an underscore (_). /// </summary> public List<HiddenAchievement> GetHiddenAchievementData() { XNamespace ns = this.HiddenAchievementsNamespace; var hiddenAchievements = new List<HiddenAchievement>(); if (!string.IsNullOrWhiteSpace(this.HiddenAchievementsXmlPath) && Directory.Exists(this.HiddenAchievementsXmlPath)) { var xmlDirectory = new DirectoryInfo(this.HiddenAchievementsXmlPath); var xmlFiles = xmlDirectory.GetFiles("*.xml").Where(f => !f.Name.StartsWith("_")); foreach (var xmlFile in xmlFiles) { var xml = XDocument.Load(xmlFile.FullName); var rootXml = xml.Element(ns + "XblAchievements"); var gameId = rootXml.Element(ns + "Game").Attribute("id").Value; var gameTitle = rootXml.Element(ns + "Game").Element(ns + "Title").Value; var achievements = rootXml.Elements(ns + "Achievement"); if (achievements.Count() > 0) { foreach (var achievement in achievements) { var hiddenAchievement = new HiddenAchievement(); hiddenAchievement.GameId = gameId; hiddenAchievement.GameTitle = gameTitle; hiddenAchievement.Id = achievement.Attribute("id").Value; hiddenAchievement.Title = achievement.Element(ns + "Title").Value; hiddenAchievement.Image = achievement.Element(ns + "Image").Value; hiddenAchievement.Description = achievement.Element(ns + "Description").Value; hiddenAchievements.Add(hiddenAchievement); } } } } return hiddenAchievements; }