示例#1
0
        public static TrickContext FromDto(TrickContextDto trickContextDto)
        {
            var trickContext = new TrickContext();

            foreach (var kvp in trickContextDto.CardsPlayed)
            {
                trickContext.CardsPlayed[kvp.Key] = kvp.Value;
            }

            trickContext.TrickNum    = trickContextDto.TrickNum;
            trickContext.Winner      = trickContextDto.Winner;
            trickContext.WinningCard = trickContextDto.WinningCard;

            return(trickContext);
        }
示例#2
0
        public void MakeTurnTest()
        {
            IWizardFrontend testFrontend = null;

            var roundNum = 4;
            var deck     = new Deck();

            deck.Shuffle();

            var aiPlayer     = new AIPlayer(testFrontend, "wizardAI");
            var humanPlayer1 = new HumanPlayer(testFrontend, "Connor");
            var humanPlayer2 = new HumanPlayer(testFrontend, "Diana");

            for (int i = 0; i < roundNum; i++)
            {
                aiPlayer.TakeCard(deck.PopTop());
                humanPlayer1.TakeCard(deck.PopTop());
                humanPlayer2.TakeCard(deck.PopTop());
            }

            var testPlayers = new List <Player>
            {
                aiPlayer,
                humanPlayer1,
                humanPlayer2
            };

            var testGameContext = new GameContext(testPlayers);

            var trumpCard = new Card(CardValue.EIGHT, CardSuite.DIAMONDS);
            var curRound  = new RoundContext(roundNum);

            curRound.TrumpCard = trumpCard;
            testPlayers.ForEach(player => curRound.Bids[player]    = 0);
            testPlayers.ForEach(player => curRound.Results[player] = 0);
            var trick1 = new TrickContext(1);

            trick1.CardsPlayed[0] = (new Card(CardValue.JACK, CardSuite.CLUBS));

            curRound.Tricks[0]        = (trick1);
            testGameContext.Rounds[0] = (curRound);

            aiPlayer.MakeTurn(testGameContext);
        }
示例#3
0
        public void MakeTurnTest()
        {
            var testFrontend = new ConsoleFrontend();

            var roundNum = 4;
            var deck     = new Deck();

            deck.Shuffle();

            var aiPlayer     = new AIPlayer(testFrontend, "wizardAI");
            var humanPlayer1 = new HumanPlayer(testFrontend, "Connor");
            var humanPlayer2 = new HumanPlayer(testFrontend, "Diana");

            for (int i = 0; i < roundNum; i++)
            {
                aiPlayer.TakeCard(deck.PopTop());
                humanPlayer1.TakeCard(deck.PopTop());
                humanPlayer2.TakeCard(deck.PopTop());
            }

            var testPlayers = new List <Player>
            {
                aiPlayer,
                humanPlayer1,
                humanPlayer2
            };
            var testGameContext = new GameContext(testPlayers);

            var curRound = new RoundContext(roundNum, CardSuite.DIAMONDS);
            var trick1   = new TrickContext(1);

            trick1.CardsPlayed.Add(new Card(CardValue.JACK, CardSuite.CLUBS));

            curRound.Tricks.Add(trick1);
            testGameContext.Rounds.Add(curRound);

            aiPlayer.MakeTurn(testGameContext);
        }