コード例 #1
0
 internal void DisableMe()
 {
     YellowCard.Remove();
     BlueCard.Remove();
     RedCard.Remove();
     OffCard.Remove();
 }
コード例 #2
0
        internal void ChangeDrawCard()
        {
            switch (ActiveCard)
            {
            case Cards.BlueCard:
                BlueCard.Remove();
                RedCard.Add();
                ActiveCard = Cards.RedCard;
                break;

            case Cards.RedCard:
                RedCard.Remove();
                YellowCard.Add();
                ActiveCard = Cards.GoldCard;
                break;

            case Cards.GoldCard:
                YellowCard.Remove();
                OffCard.Add();
                ActiveCard = Cards.OffCard;
                break;

            case Cards.OffCard:
                OffCard.Remove();
                BlueCard.Add();
                ActiveCard = Cards.BlueCard;
                break;
            }
        }
コード例 #3
0
        public void ShouldNotEquate_Blue_White()
        {
            //assign
            ICard blueCard  = new BlueCard();
            ICard whiteCard = new WhiteCard();
            //act
            bool matches = blueCard.Matches(whiteCard);

            //assert
            matches.Should().BeFalse();
        }
コード例 #4
0
        public void ShouldNotEquate_Blue_Red()
        {
            //assign
            ICard blueCard = new BlueCard();
            ICard redCard  = new RedCard();
            //act
            bool matches = blueCard.Matches(redCard);

            //assert
            matches.Should().BeFalse();
        }
コード例 #5
0
        public void ShouldNotEquate_Blue_Green()
        {
            //assign
            ICard blueCard  = new BlueCard();
            ICard greenCard = new GreenCard();
            //act
            bool matches = blueCard.Matches(greenCard);

            //assert
            matches.Should().BeFalse();
        }
コード例 #6
0
        public void ShouldEquate_BlueCards()
        {
            //assign
            ICard card1 = new BlueCard();
            ICard card2 = new BlueCard();
            //act
            bool matches = card1.Matches(card2);

            //assert
            matches.Should().BeTrue();
        }
コード例 #7
0
        private void InitializeCards()
        {
            BlueCards = new BlueCard[11];
            RedCards  = new RedCard[11];

            InitCards(0, "geezard", Elements.NONE, 1, 4, 1, 5);
            InitCards(1, "funguar", Elements.NONE, 5, 1, 1, 3);
            InitCards(2, "bitebug", Elements.NONE, 1, 3, 3, 5);
            InitCards(3, "redbat", Elements.NONE, 6, 1, 1, 2);
            InitCards(4, "blobra", Elements.NONE, 2, 3, 1, 5);
            InitCards(5, "gayla", Elements.THUNDER, 2, 1, 4, 4);
            InitCards(6, "gesper", Elements.NONE, 1, 5, 4, 1);
            InitCards(7, "fastitocalonf", Elements.EARTH, 3, 5, 2, 1);
            InitCards(8, "bloodsoul", Elements.NONE, 2, 1, 6, 1);
            InitCards(9, "caterchipillar", Elements.NONE, 4, 2, 4, 3);
            InitCards(10, "cockatrice", Elements.THUNDER, 2, 1, 2, 6);
        }
コード例 #8
0
 private void InitCards(int id, string name, Elements element, int top, int right, int bottom, int left)
 {
     BlueCards[id] = new BlueCard(id, name, element, top, right, bottom, left);
     RedCards[id]  = new RedCard(id, name, element, top, right, bottom, left);
 }
コード例 #9
0
ファイル: Program.cs プロジェクト: FrejThorsen34/Semester4
        static void Main(string[] args)
        {
            //Generate cards
            List <ICard> myCards = new List <ICard>();

            for (int i = 1; i < 9; i++)
            {
                for (int j = 1; j < 6; j++)
                {
                    switch (j)
                    {
                    case 1:
                        var red = new RedCard(i);
                        myCards.Add(red);
                        break;

                    case 2:
                        var blue = new BlueCard(i);
                        myCards.Add(blue);
                        break;

                    case 3:
                        var green = new GreenCard(i);
                        myCards.Add(green);
                        break;

                    case 4:
                        var yellow = new YellowCard(i);
                        myCards.Add(yellow);
                        break;

                    case 5:
                        var gold = new GoldCard(i);
                        myCards.Add(gold);
                        break;

                    default:
                        throw new InvalidOperationException("Suit is undefined!");
                    }
                }
            }

            Deck  myDeck = new Deck(myCards);
            IGame myGame = new GameLowWin(myDeck);

            IPlayer player1 = new Player("player1");
            IPlayer player2 = new Player("player2");
            IPlayer player3 = new Player("player3");
            IPlayer player4 = new PlayerWeak("player4");
            IPlayer player5 = new PlayerWeak("player5");

            myGame.AddPlayer(player1);
            myGame.AddPlayer(player2);
            myGame.AddPlayer(player3);
            myGame.AddPlayer(player4);
            myGame.AddPlayer(player5);

            myGame.DealAllPlayers(5);

            List <ICard> hand1 = player1.ShowHand();
            List <ICard> hand2 = player2.ShowHand();
            List <ICard> hand3 = player3.ShowHand();
            List <ICard> hand4 = player4.ShowHand();
            List <ICard> hand5 = player5.ShowHand();

            Console.WriteLine("Hand for PLayer 1: ");

            foreach (var card in hand1)
            {
                Console.WriteLine($"{card.Suit} {card.Number}");
            }

            Console.WriteLine("Hand for PLayer 2: ");

            foreach (var card in hand2)
            {
                Console.WriteLine($"{card.Suit} {card.Number}");
            }

            Console.WriteLine("Hand for PLayer 3: ");

            foreach (var card in hand3)
            {
                Console.WriteLine($"{card.Suit} {card.Number}");
            }

            Console.WriteLine("Hand for PLayer 4: ");

            foreach (var card in hand4)
            {
                Console.WriteLine($"{card.Suit} {card.Number}");
            }

            Console.WriteLine("Hand for PLayer 5: ");

            foreach (var card in hand5)
            {
                Console.WriteLine($"{card.Suit} {card.Number}");
            }

            Console.WriteLine("--------------------------------------------");

            foreach (var player in myGame.Players)
            {
                Console.WriteLine($"Total value of {player.Name}'s hand is {player.TotalValue()}.");
            }

            Console.WriteLine("The winner(s):");

            foreach (var winner in myGame.Winner())
            {
                Console.Write($"{winner.Name}, ");
            }
        }
コード例 #10
0
 internal void ActivateMe()
 {
     ActiveCard = Cards.BlueCard;
     BlueCard.Add();
 }