예제 #1
0
        public static void Save(SpellCardDeck deck)
        {
            string deckName = deck.DeckName.Replace(" ", "_");

            XElement xml = new XElement("PlayerDeck", deck.Select(x => new XElement("Card",
                                                new XAttribute("CardID", x.CardId))));

            using (XmlWriter writer = XmlWriter.Create(Path.Combine(DeckIOProperties.DECK_SAVE_LOCATION, deckName + ".xml")))
            {
                xml.Save(writer);
            }
        }
예제 #2
0
        public CardData(SpellCardDeck deckToGenerate)
        {
            ClassSpellDeck = deckToGenerate;

            Proportions = new List<ProportionValue<SpellCard>>();
            CardsUsedByID = new Dictionary<string, int>();

            foreach(SpellCard card in ClassSpellDeck)
            {
                Proportions.Add(card.Proportion);

                CardsUsedByID.Add(card.CardId, card.MaxCopiesOfCard);
            }
        }
예제 #3
0
        public SpellDeckCardGenerator(SpellCardDeck deckToGenerate)
        {
            random = new Random();

            Data = new CardData(deckToGenerate);

            GeneratedDeck = new SpellCardDeck();
            TotalCardsGenerated = 0;
            AverageCost = 0;
            HighestCost = 0;

            InitilizeCurrentCardsUsedById();

            GenerateDeck();
        }