Esempio n. 1
0
        public GameBuilder SetBoard(int size, BoardStrategy boardStrat)
        {
            if (size % 2 == 1)
            {
                Board = new Board(size);
                switch (boardStrat)
                {
                case BoardStrategy.Standard:
                    GameScenario.FillBoardStandard(Board);
                    break;

                case BoardStrategy.BallRandom:
                    GameScenario.FillBoardBallRandom(Board);
                    break;

                case BoardStrategy.EnemyAmongUs:
                    GameScenario.FillBoardEnemyAmongUs(Board);
                    break;
                }
                return(this);
            }
            else
            {
                // lever une exception pour taille de board incorrect
                throw new ArgumentException("La taille du Board doit être impaire");
            }
        }
Esempio n. 2
0
        public void DoMoveBallTest3()
        {
            BoardStrategy strat = BoardStrategy.Standard;

            g           = new GameBuilder().SetBoard(5, strat).SetPlayer0("Clément", "vert").SetPlayer1("Pierre", "orange").Build();
            commandMove = new MoveBall(0, 2, 0, 1);
            //Console.Write(g.Board.ToString());
            //Console.Write(commandMove.ToString());

            commandMove.Do(g);
            //Console.Write(g.Board.ToString());
            TileTypes[,] expectedTilesSize5 = { { TileTypes.PiecePlayer0, TileTypes.BallPlayer0,  TileTypes.PiecePlayer0, TileTypes.PiecePlayer0, TileTypes.PiecePlayer0 },
                                                { TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default      },
                                                { TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default      },
                                                { TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default,      TileTypes.Default      },
                                                { TileTypes.PiecePlayer1, TileTypes.PiecePlayer1, TileTypes.BallPlayer1,  TileTypes.PiecePlayer1, TileTypes.PiecePlayer1 } };

            for (int i = 0; i < g.Board.BoardSize; i++)
            {
                for (int j = 0; j < g.Board.BoardSize; j++)
                {
                    Assert.IsTrue(g.Board.Tiles[i, j] == expectedTilesSize5[i, j]);
                }
            }
        }
Esempio n. 3
0
        public void InitMovePieceTests()
        {
            BoardStrategy strat = BoardStrategy.Standard;

            g           = new GameBuilder().SetBoard(3, strat).SetPlayer0("Clément", "vert").SetPlayer1("Pierre", "orange").Build();
            commandMove = new MoveBall(0, 1, 0, 0);
        }
Esempio n. 4
0
        public void TestStandardBuilder()
        {
            BoardStrategy strat = BoardStrategy.Standard;

            game = new GameBuilder().SetBoard(3, strat).SetPlayer0(pl0).SetPlayer1(plIA).Build();

            TileTypes[,] tiles = { { TileTypes.PiecePlayer0, TileTypes.BallPlayer0, TileTypes.PiecePlayer0 },
                                   { TileTypes.Default,      TileTypes.Default,     TileTypes.Default      },
                                   { TileTypes.PiecePlayer1, TileTypes.BallPlayer1, TileTypes.PiecePlayer1 } };

            Assert.AreEqual(3, game.Board.BoardSize);
            Assert.IsTrue(game.GameHasIA);
            Assert.IsFalse(game.Finished);
            Assert.IsTrue(game.CurrentPlayer == 0 || game.CurrentPlayer == 1);
            Assert.AreEqual(pl0, game.Players[0]);
            Assert.AreEqual(plIA, game.Players[1]);


            for (int i = 0; i < (int)Math.Sqrt(game.Board.Tiles.Length); i++)
            {
                for (int j = 0; j < (int)Math.Sqrt(game.Board.Tiles.Length); j++)
                {
                    Assert.AreEqual(tiles[i, j], game.Board.Tiles[i, j]);
                }
            }
        }
Esempio n. 5
0
        public void TestEndTurnInitialize()
        {
            //build
            BoardStrategy strat = BoardStrategy.Standard;

            game = new GameBuilder().SetBoard(7, strat).SetPlayer0("Clément", "vert").SetPlayer1("Pierre", "orange").Build();

            previousPlayer = game.CurrentPlayer;
            endTurn        = new EndTurn();
        }
Esempio n. 6
0
        public void TestBallRandomBuilderWithIA()
        {
            BoardStrategy strat = BoardStrategy.BallRandom;

            game = new GameBuilder().SetBoard(3, strat).SetPlayer0(pl0).SetPlayer1(plIA).Build();

            Assert.AreEqual(3, game.Board.BoardSize);
            Assert.IsTrue(game.GameHasIA);
            Assert.IsFalse(game.Finished);
            Assert.IsTrue(game.CurrentPlayer == 0 || game.CurrentPlayer == 1);
            Assert.AreEqual(pl0, game.Players[0]);
            Assert.AreEqual(plIA, game.Players[1]);
        }