static void Main(string[] args) { var deck = new PlayingCardDeck(); var deckInOrder = deck.SetCards(); foreach (var card in deckInOrder) { Console.WriteLine(card); } }
public SuperDeck() { Cards = new List <GenericCard>(); var animalDeck = new AnimalDeck(); var playingCardDeck = new PlayingCardDeck(); foreach (var animalCard in animalDeck) { Cards.Add(animalCard); } foreach (var playingCard in playingCardDeck) { Cards.Add(playingCard); } }
public SuperDeck() { Cards = new List <Card>(); // This leverages the public card on Deck, a little naughty but hey ho //var animalDeck = new AnimalDeck(); //var playingCardDeck = new PlayingCardDeck(); //Cards = animalDeck.Cards; //Cards.AddRange(playingCardDeck.Cards); // This is a messy way of accessing the lengths on the deck. Would prefer to enumerate over /*for (int i = 0; i < animalDeck.GetCards().Length; i++) * { * var dealtAnimalCard = animalDeck.Deal(); * Cards.Add(dealtAnimalCard); * } * * for (int i = 0; i < playingCardDeck.GetCards().Length; i++) * { * var dealtPlayingCard = playingCardDeck.Deal(); * Cards.Add(dealtPlayingCard); * }*/ // Uses the enumerable interface on the deck var animalDeck = new AnimalDeck(); var playingCardDeck = new PlayingCardDeck(); foreach (var playingCard in playingCardDeck) { Cards.Add(playingCard); } foreach (var animalCard in animalDeck) { Cards.Add(animalCard); } }
private static void Main(string[] args) { // Playing Card Deck var playingCardDeck = new PlayingCardDeck(); var deckInOrder = playingCardDeck.CreateNewDeckOfPlayingCards(); foreach (var card in deckInOrder) { Console.WriteLine(card); } //// Playing Card Deck //var playingCardSnap = new Snap(new PlayingCardDeck()); //playingCardSnap.Play(); //// Animal Card Deck //var animalSnap = new Snap(new AnimalDeck()); //animalSnap.Play(); //// Super Deck //var superDeck = new Snap(new SuperDeck()); //superDeck.Play(); }