public List <Card> CollectCards(string gameId, string setId) { var cards = new List <Card>(); var setDefinition = XDocument.Parse(File.ReadAllText(OctgnPaths.SetDefinitionPath(gameId, setId))); if (setDefinition.Root != null) { foreach (var card in setDefinition.Root.Descendants("card")) { cards.Add(new Card { Id = card.Attribute("id").Value, Name = card.Attribute("name").Value }); } } return(cards); }
public List <Set> CollectSets(string gameId) { var sets = new List <Set>(); var di = new DirectoryInfo(OctgnPaths.SetsDirectory(gameId)); foreach (var setDirectory in di.EnumerateDirectories()) { var setDefinition = XDocument.Parse(File.ReadAllText(setDirectory.FullName + @"\" + "set.xml")); if (setDefinition.Root != null) { sets.Add(new Set { Id = setDefinition.Root.Attribute("id").Value, Name = setDefinition.Root.Attribute("name").Value, ImagesNeeded = true }); } } sets.ForEach(s => s.Cards.AddRange(_cardCollector.CollectCards(gameId, s.Id))); return(sets); }