Example #1
0
        private static void RunBridgeGame()
        {
            var set = new BridgeSet();

            var game = new BridgeGame(PlayerPosition.East);

            var players = Enumerable.Range(0, 4).Select(n =>
            {
                var position = (PlayerPosition)n;
                return new Player(position, set.Cards[position]);
            }).ToArray();

            var table = new ConsoleBridgeTable();

            table.ShowTable(set);
            Console.WriteLine();
            Console.WriteLine("Game Started:");
            Console.WriteLine(string.Empty.PadLeft(Console.BufferWidth, '*'));
            while (!game.Finished)
            {
                Console.Write(game.TurnStarter.ToString()[0] + ": ");
                for (int i = 0; i < 4; i++)
                {
                    var player = players.First(p => p.Position == game.Next);
                    var card = player.Play(game);
                    game.RecordOutCard(card);

                    table.ShowCard(card);
                }
                Console.WriteLine();
                Console.ReadLine();
            }
        }